Mbirn: Multi
N. Aucoin March 30, 2005 Update to the Freesurfer QA module:
- Remember to hit return after changing any text box entries, otherwise they will not take effect
- To remove the outlines of the aseg, you'll need to set the labelmap volume to None (let me know if you want this default changed)
- I fixed a bug that led to the list of subjects not resetting if you read in a new .csh file
- I added a button to review the QA history in the current subjects directory. It pops up a new window with all the log file info from the subjects in that directory. For the record, I switched around the order of information from the log file to the display, as it seemed that certain info should be at the start of the lines - let me know if you want another order.
- The new window has buttons that will create new .csh files in your subjects_dir/scripts directory: it will make a time stamped subjectsEval-timestamp.csh with the subjects who's last evaluations were the selected one. Each subject is only listed once, even if multiple volumes were marked with the evaluation (the volumes are in the comment field of the new .csh file). For now, that will be fine, as the defaults are aseg and norm and you'll probably want to review in the same manner.
Here's an updated tar file, expand it in the slicer2 directory and it will put the updated tcl file in the right place (Modules/vtkFreeSurferReaders/tcl/): Updated tcl file with reviewing
N. Aucoin March 18, 2005 The Freesurfer QA module in Slicer is ready for testing now. Notes:
- Scroll down to see options in the QA pane
- Press the g key to toggle between foreground and background volumes (it's a bit useless right now, as I set the opacity to 0.5 so there's no toggle difference)
- You can load a subjects.csh file from the command line with --load-freesurfer-qa /path/to/subjects.csh
- I've erred on the side of popping up more windows, so there's one note taking window for each volume and then another window with a button to press to go onto the next subject.
- Type in your notes for all the volumes and press a button to rate them before stopping QA - stopping QA kicks off writing the top level file and it has to have the strings from each volume or it won't write anything.
- If you want better interaction in the manual view, check to see if the Start/Running... button is on Running... - click it again and it'll stop the procedure that checks to see if it needs to automatically scan to the next slice.
- Make sure you've got write access to the subject and subjects_dir directories so that you can output the log files, I check but currently don't recover gracefully if they're not writable.
- Let me know if you want the output changed in the QA log files.
- Let me know if you want the defaults changed in the GUI.
- Let me known if I missed anything.
Integrated distributions:
For the Mac one, I reset the pointer to gunzip so you can uncompress .mgz files, but for the linux one you'll need to reset it every time you open slicer unless you let me know where the executable is located and I can update your file.
Alternately you can grab one of the 2.4 releases from here (has windows and solaris as well): Slicer 2.4 (no QA) and then grab this file: Additional files and expand it in the slicer2 directory to update the distribution to be QA compatible.
NA Mon Mar 14, 2005
- MGH reading works now in cvs copy of Slicer
- moving all slices when moving the mouse in one: hold down the shift key
NA's notes second demo Fri Mar 11
- talked with Tosa, cleared up MGH format confusion a bit more. Will work on it on Monday/Tues with Steve P.
- may need to do variable substitution on .csh files, but will hope to avoid it
- need to find out why linux is plagued with slow refresh rates in the viewer window - windows and solaris are fine
- added a start slice for both COR and SAG scanning
- need to check for a program to uncompress .mgz files on windows (tbd later) and mac
- added option to turn editing on when loading volumes
- added entry field to add to the list of volumes to load (so can unclick aseg button and add aseg2) - there may be unexpected behaviour if have an aseg lebel map and an aseg2 label map trying to be loaded, the last one loaded will overlay the next opened volumes
- added writing out to file, with notes and some data provenance info
- the problem now is interacting with the notes window while the volumes are up and scanning or in manual mode
NA's responses
- not a problem to switch between formats for each volume
- will load the mgz file instead of the COR file if both exist for a type of volume
- showing norm with aseg overlay now
CFN's additional comments March 10, 2005 We can talk about these tomorrow (Fri) when we meet at 10am, just thought I should mention a couple things we talked about today.
- File type: Brad and I realized today that the file types for the segmentation and norm will always be .mgz, however:
- previous volumes (e.g., stripped brain) may still be in COR format. Will this be a problem to switch back and forth when chosing which volumes we would like to view?
- on occasion, there may be both COR and .mgz files within the same directory, though I'm not certain how prevalant this is. In those cases, the .mgz files will be the newer version that we'd want to look at. Will this be a problem, essentially that .mgz wins if it exists, and if not then COR files will be expected?
- if the latter case is a problem, we can likely find a workaround to that.
- Normlization processes and resulting volumes: subcortical segmentation uses the norm.mgz file for the normalization processes (more subtle normalization akin to N3), whereas the T1 volume is related to the cortical processing stream (more aggressive) per BF
- For overlay, we'd like to do the aseg volume over the norm volume, given the above information.
Nicole's rough notes on the QA process meeting at MGH. March 9/05.
- I realised that had a problem with the file close update proc in freesurfer, no volume id's are left by the time I get to them.
- just do a series of info commands with star and get stuff that way - done
- get a hold of Doug G's script for data prov issues - got it
- Questions I started with:
- list types of files to QA (only COR right now) - need mgz
- what view, zoom, orientation
- subject dir from .csh
- need to interact with the volumes? Yes
- show average as comparison with some fade?
- see all T1s and then all brains, or each subject?
- the latter
- ref on Pubmed: Fox NC papers on longitudinal MRI studies
- accept versus reject scans
- change popup to be yes/no, write to file with data prov info
- pause button for when scanning through the slices automatically
- mapped out view steps for reconall, but that's for cortical segmentation
- steps needed for sub-cortical segmentation, which is all we're interested in for this project
- linear registration to the MNI305-T
- correlation has to be at about 0.06, greater than 0.08 is bad, lower is better
- if bad, do the registration with the skull stripped volume
- view registered volume against the talaraich average if we create a new volume from the output transform
- N3
- intensity correction "nu" volume ("T1" is the more aggressively corrected one)
- skull stripping
- view "brain" versus "T1" volume, see fly through slices in COR
- do we need to edit to erase extra - the erased voxels need to be set to a fixed value < 5
- if edit, have to save it out, and get it back into the pipeline
- make editing enabled an option
- aseg with an atlas
- dataprov: version of the program and atlas are only held in the script right now
- view the aseg volume overlaid on the brain or T1
- Laurance has an automatic failure detection process that does a comparison of volumes of structures to some database (we could create models in slicer as well)
- linear registration to the MNI305-T
- think about parsing the output qa log file for further review
- Heidi will write perl scripts to do it
- Demo feedback/notes
- load colours only the first time get an aseg - set flag
- Christine needs a linux version
- sort the subjects in the box
- find a better selection method in the box
- take out vol reader errors - fixed
- email Heidi re subjects.csh validation and set up for qa (one for each data set)
- view label map and volume for aseg, with volume set a 50% (? - option) opacity
- close the scene after each subject, avoid flashing to a different view
- no flash volume, add nu - done
- for the 4x512 view, no 3d letters, no slice window text
- record exclude/approve/resegment/re-review for each subject (saved a list in QAResultsList)
- new version on Friday March 11/05, demo at 10am at MGH
- need to read mgz
- find them in subjectdir/mri/aseg.mgz
- delete new file after uncompress
- load the mgz preferentially over the mri/aseg/COR-.info
- add an other button for files to load and give it a pattern to look for %s.mgz, %s.mgh.gz, %s/COR-.info, pop up a browser
- command line load of subjects.csh
- X took over the desktop when exited (think it was the freesurfer file close...)
- key to toggle between label map on/off
- email Chris how to have the other 2 slices adjust when click in 1
- hold down the shift key and either move the mouse or use the arrow keys (new, may not be supported in all versions)
- slice animation default 2s
- option to edit - done
- have to be able to write to the subject dir
- open an error window if can't write, so can copy and paste
- UCSD data in in the BIRN portal, Heidi knows where the staging area is - sent email
- default to aseg and norm (the intensity normalisation for sub-cortical parcellation), don't make it an option to reset the default, but if change it, don't reset it between subjects.
- New Demo should support
- set the aseg overlaid on the norm volume - done
- read in mgh files instead of cor files - done
- auto scroll view of COR files, settable gap 2 seconds, settable step 1 slice, in 1x512 - done
- auto scroll view of SAG files ditto - done
- switch to 4x512 manual mode - done
- query -> update the tab - done
- be able to take notes while in manual mode - done
- write to qa log for subj, include timestamp in appended text - done
- close the subject volumes - done
- continue onto next subject - done
- when done all subj write session qa log named with a timestamp: $SUBJECT_DIR/QA.log.timestamp - done
- workflow notes
- append to the qa log file for each subject, include a time stamp
- write a qa log file (named with a time stamp) at the subjects dir level with what did that day
- need a parser to make new subjects.csh
- display a table generated from the last entry in $SUBJECT_DIR/subjectname/mri/qa.log so that you can then select "Run subjects flagged for review", "Run subjects that are accepted" etc. This will create a new file qa_timestamp_subjects.csh and run the qa process from it with just the subjects written.