XNAT and Advanced Knowledge Vanderbilt University 2013-08-20 Benjamin Yvernault, Bennett Landman, Brian Boyd 1 Requirements At this point, you should know how to : – – – – – – Register and Log in to XNAT See your projects and join projects Manage access permissions Browse data and view image previews Search for projects, subjects, and data Download imaging data, processed, and stored metadata 2 After this short course, you will be able to: • • • • • Create project / sharing data Delete scans / sessions / projects Use the Pre-Archive Upload scans through DicomBrowser Quality Assurance – Mark scans as usable / questionable / etc. – Mark processing status – View QA results in RedCAP • Use Basic XNAT tools on ACCRE 3 Creating a project / sharing Data You can create new projects on XNAT if you want to store sessions in a different project than your PI project. You can also share the data from the PI project to your project. The processed results and transcodings will be created in your project and not in the main project. Rules about the project abbreviation: 1) Don’t use only the PI name for a project name (it already exists) 2) Only one word, you can use ‘_’. No spaces. 3) Use PI_project . E.G : ZALD_TTS 4 Create a project Project Accessibility: Protected: Any users can see the project but not access it or the data. (Use this one by default) Private: Nobody can see the project except the members Public: Project accessible by all users 5 Sharing Data You can not share a project, a scan or an assessor to an other project You can only share a full subject or a full experiment 6 Why sharing Data? All scans coming from VUIIS scanners are automatically added to the Pre-Archive under the PI name. PI projects are automatically created on XNAT. All scans for a PI should be archive into the PI name project but one PI can have several projects Sharing the data allows you to use the data into different projects and organize your sessions. E.G: ZALD project is sharing data with ZALD_TTS and ZALD_TTS_PILOT 7 Delete A lot of different ways to delete scans, assessors, sessions, subjects, or Projects on XNAT You need to be an owner to delete Data If a project has Data shared from an other project, you need to be an owner of the main project (the one sharing the data) Be careful when deleting, it’s permanent. It might take some time to delete. Be patient. 8 Delete Project From “delete” link in project, you can manage what you want to delete in the whole project. 9 Delete Subject You can not delete a subject with this link when you have processes in the sessions 10 Delete Sessions 11 Delete Assessors 12 Delete Resources / Files 13 VUIIS scans For VUIIS : Scans are automatically sent to the prearchive with the project name equal to the PI name. E.G : LANDMAN This project name can be changed using an option in the pre-archive (slide 16) What happens if there is an error? How do you fix it? What about scans outside VUIIS? 14 Pre-Archive One Session Actions Filter/se arch Multi-session Actions 15 Different Actions ARCHIVE: transfer the session(s) chosen from the prearchive into the archive CHANGE PROJECTS: Change the project on the session DELETE: Delete the session from the prearchive RESET : Check if there are files missing. If you see any files missing, you should use RESET. If they don’t appear after RESET, you might need to request to resent the session(s) to XNAT. 16 Pre-Archive : One session at a time Archive only one session allows you to check the scans in the sessions XNAT will not archive the session if a scan doesn’t have a type. Set it with a space to set it to nothing. 17 Pre-Archive several sessions 18 Errors in the session Common errors: Session already exists -> ERROR status Scans missing in a session Session set to ERROR (error during the process of sending the data to XNAT) Reset (action to reset the scans on XNAT) can fix the two last errors. Send an email to the administrator to request session be resent Step 1 : Delete the sessions (WARNING: Sending the session again will fail if the session is still in the prearchive) Step 2 : Ask administrator vuiis-cci@googlegroups.com to send again the session to pre-archive 19 Outside VUIIS Scans from VUIIS are automatically sent to the Pre-Archive. What about scans, sessions, or DICOMs coming from outside the VUIIS scanner? XNAT can receive scans from different sources. XNAT provides a DICOM server. You can send scans (DICOM) to XNAT using specific tools (DicomBrowser, dcm4che …) 20 No Protected Health Information into XNAT 18 HIPAA (Health Insurance Portability and Accountability Act) identifiers to avoid putting into XNAT: http://cphs.berkeley.edu/hipaa/hipaa18.html 1. Names 10. Account numbers 2. All geographical subdivisions smaller than a State 11. Certificate/license numbers 3. All elements of dates (except year) 12. Vehicle identifiers and serial numbers, including license plate numbers 4. Phone numbers 13. Device identifiers and serial numbers 5. Fax numbers 14. Web Universal Resource Locators (URLs) 6. Electronic mail addresses 15. Internet Protocol (IP) address numbers 7. Social Security numbers 16. Biometric identifiers, including finger and voice prints 8. Medical record numbers 17. Full face photographic images and any comparable image 9. Health plan beneficiary numbers 18. Any other unique identifying number, characteristic, or code (note this does not mean the unique code assigned by investigator to code the data) the 21 XNAT and DICOM XNAT provides a DicomServer: Read information from the header Add the Dicom to the PreArchive with the right project/subject/session XNAT uses tags from DICOM to identify where it should be: Usually tag (0010,4000) Patient Comments Need to be: “Project:ProjectIDXNAT;Subject:SubjectIDXNAT;Session:SessionIDXNAT” E.G: Project:VUSTP;Subject:VUSTP4;Session:VUSTP4a Check this link to know the tags: http://mindhive.mit.edu/node/1352 22 Change the Tag in DICOM To modify DICOM header (remove PHI for example), you can use DicomBrowser (http://nrg.wustl.edu/software/dicom-browser/ ) 23 Sending DICOM to XNAT Host: xnat.vanderbilt.edu Port: 8104 Remote AE title: VandyXNAT Local AE title: VandyXNAT 24 Quality Assurance (1) Using XNAT and RedCap All assessors have a status. Standard job Status : NEED_INPUTS NEED_TO_RUN JOB_RUNNING JOB_FAILED READY_TO_UPLOAD UPLOADING READY_TO_COMPLETE COMPLETE 25 Quality Assurance (2) All assessors have also a QA status. Standard QA Status : Job Pending Failed Passed Needs QA RERUN When an assessor has a job status set to COMPLETE, you can check the QA and set the QA status of the assessor to the value that fit you. RERUN means that the script that launch jobs will rerun your QA process on this assessor. Sync the status between XNAT and REDCap 26 Check QA on XNAT Click on + to see the preview Click the link to download the pdf Click on it to see it on a new page 27 Edit Scan Usability 28 Edit Assessors Status on XNAT Click on Edit Change the variables you want to edit. Click to access the Change theassessor QA status that you to Failed orwant Passed or to edit an other status that fit your analysis. 29 REDcap REDCap is a secure, web-based application for building and managing online surveys and databases. Why REDCap? You can store Protected Health Information (PHI) in REDCap. NEVER STORE ANY PHI INTO XNAT. Right now, four QA scripts send data from XNAT to REDCap keeping the same labels: fMRIQA, VBMQA, DTIQA and FreeSurfer 30 Check QA on REDCap (1) Redcap : https://redcap.vanderbilt.edu Home page with all your projects 31 Check QA on REDCap (2) 1) 2) 32 Check Records with Record Status Dashboard Using REDcap, you can access Record and check the stats. If the libraries have a lot of data, it will be slow, so be patient. Record Status Dashboard Add/Edit Records 33 Record Status Dashboard Different libraries (instruments in REDcap vocabulary) Record with quality Green shows where there are data. Yellow tag for quality status. By default, yellow to unverified. 34 Add/Edit Records Select complete or incomplete record Click on the instruments you need 35 Change status on REDcap At the bottom of the Main Instrument record, there is a box to change the status of a record to complete /Incomplete / Unverified (default value) 36 Data Export Tool Faster way to check big data instruments Be patient when exporting the Data (several minutes for big project) You can open the csv file with Excel 37 Basic XNAT Tools Masimatlab NITRC repository has different useful XNAT command tools : Xnatreport Xnatquery Xnatdownload Xnatupload Xnatcheck XnatSwitchProcessStatus Check the masimatlab/trunk/xnatspiders/Xnat_tools folder or on the wiki (link below). Tutorial on http://xnat.vanderbilt.edu 38 Set up your computer Xnatsetup (basic) will on your computer : Install Python package to run the command tools : Instructions on the wiki Install lxml and httplib2 using easy_install or pip Install Pyxnat from a git version : git clone git://github.com/sburns/PyCap.git PyCap cd PyCap python setup.py install Set up your .bashrc or .profile : Set up the XNAT variables : export XNAT_USER = bob (your xnat username) export XNAT_PASS = bob (your xnat password) export XNAT_HOST = http://xnat.vanderbilt.edu/xnat Add the tools to PATH : export PATH=/PathToMasimatlab/trunk/xnatspiders/Xnat_tools:$PATH 39 Interactive Assignment • Join the project “VUSTP” • Download from subject VUSTP4 session VUSTP4a scan 1 the DICOM • Create a new project • Download DicomBrowser : http://nrg.wustl.edu/software/dicom-browser/ • Change the header with DicomBrowser to match your new project, gives a subject and session name • Send the DICOM to XNAT using DicomBrowser • Check the Pre-Archive • Archive the session • Delete the project • Go on Redcap and look at VUSTP project using the account – Username: vuiisdem – Password: seminar_demo1 40 Next time • Upload / download data from XNAT using command tools • Dcm4chee to send DICOM backend • Use XNAT tools • Project miroring XNAT->XNAT / full 41