Difference between revisions of "User talk:Ecr33"

From YalePETWiki
Jump to navigationJump to search
(Replaced content with '= =')
Line 1: Line 1:
= Documentation on HRRT MCCOD =
+
=  =
 
 
=== HRRT Version<br>  ===
 
 
 
All the codes can be found in:&nbsp;'''/home1/ecr33/Project/MCCOD/hrrt/Codes/'''
 
 
 
This pipeline is written by Chen Sun and is ran on Matlab platform.
 
 
 
The user can open as many Matlab programs as possible or desired and run the pipeline to process several patients at the same time.&nbsp;
 
 
 
<br> '''Pipeline Name:&nbsp;'''whole_processing_pipe.m
 
 
 
'''Input: '''CSV file containing the following information:
 
 
 
<br>
 
 
 
'''1. Patient ID'''
 
 
 
&nbsp; &nbsp; &nbsp;- will not affect the final result
 
 
 
&nbsp; &nbsp; &nbsp;- it should not be repeated for the same subject
 
 
 
&nbsp; &nbsp; &nbsp;- example: ec950_fdg, ec950_app311
 
 
 
'''2. fn_listmode&nbsp;'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in linux format
 
 
 
&nbsp; &nbsp; &nbsp;- example:&nbsp;/data2/hrrthome/Recons/ecr33/simulation/4D/HRRT/FDG/AF120/Frame001/AF120-Human-2016.11.28.10.19.0_EM-sim.l64<br>
 
 
 
'''3. fn_qimage&nbsp;'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in linux format
 
 
 
&nbsp; &nbsp; &nbsp;- example:&nbsp;/home1/cs2679/HRRT/testdata/HRRT_systemQ.hdr<br>
 
 
 
&nbsp; &nbsp; &nbsp;- currently only using 1 qimage which is the example above
 
 
 
'''4.&nbsp;fn_mr/mu_image'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in windows format
 
 
 
&nbsp; &nbsp; &nbsp;- this is using MR mask
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;Y:/mct/Yihuan/For_Enette/simulation/phantom_hrrt/af120_18270/af120_18270_labelmap<br>
 
 
 
&nbsp; &nbsp; &nbsp;- note that the user need not put ".raw" at the end, this is taken care of in the pipeline
 
 
 
&nbsp; &nbsp; &nbsp;- IMPORTANT NOTE: normally, when a user simply copies the address of the folder, it looks like this:&nbsp;Y:\mct\Yihuan\For_Enette\simulation\phantom_hrrt\af120_18270\af120_18270_labelmap. It always uses the backslash but for this particular pipeline, the user needs to use the '''FORWARD SLASH''' for this parameter. Otherwise, the pipeline will give the user an error. It will not read the labelmap properly.
 
 
 
'''5.&nbsp;fn_vc'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in linux format
 
 
 
&nbsp; &nbsp; &nbsp;- example:&nbsp;/data4/mct/Yihuan/For_Enette/simulation/Results/FDG/af120_18270/VC_files/AF120_20161128_100602_PETstart_0ms.vc<br>
 
 
 
'''6.&nbsp;output_location'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in linux format
 
 
 
&nbsp; &nbsp; &nbsp;- example:&nbsp;/home1/ecr33/Project/MCCOD/hrrt/FDG_sim/af120_18270/<br>
 
 
 
&nbsp; &nbsp; &nbsp;- note that the user needs to put "/" at the end
 
 
 
'''7.&nbsp;new_mask_destination'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in linux format
 
 
 
&nbsp; &nbsp; &nbsp;- basically output_location and new_mask_destination are the SAME
 
 
 
'''8.&nbsp;comment'''
 
 
 
&nbsp; &nbsp; &nbsp;- this will be attached at the end of the result's filename
 
 
 
'''9.&nbsp;time_start_ms'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in millisecond
 
 
 
'''10.&nbsp;time_duration_ms'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in millisecond
 
 
 
&nbsp; &nbsp; &nbsp;- note that this is not the end time, only the duration
 
 
 
'''11.&nbsp;cod_enable'''
 
 
 
&nbsp; &nbsp; &nbsp;- choices: 0 or 1
 
 
 
&nbsp; &nbsp; &nbsp;- if 1, COD will be generated
 
 
 
&nbsp; &nbsp; &nbsp;- if 0, COD will not be generated
 
 
 
'''12.&nbsp;CODti'''
 
 
 
&nbsp; &nbsp; &nbsp;- COD time interval
 
 
 
&nbsp; &nbsp; &nbsp;- should be in millisecond
 
 
 
&nbsp; &nbsp; &nbsp;- default time interval: 1000 (1 sec)
 
 
 
'''13.&nbsp;cloud_enable'''
 
 
 
&nbsp; &nbsp; &nbsp;- choices: 0 or 1
 
 
 
&nbsp; &nbsp; &nbsp;- if 1, cloud will be generated
 
 
 
&nbsp; &nbsp; &nbsp;- if 0, cloud will not be generated
 
 
 
&nbsp; &nbsp; &nbsp;- if 0, cloud_interval_enable, down_sample_enable, cloudinterval_ms and down_sample_ratio will NOT be used
 
 
 
'''14.&nbsp;cloud_interval_enable'''
 
 
 
&nbsp; &nbsp; &nbsp;- choices: 0 or 1
 
 
 
&nbsp; &nbsp; &nbsp;- if 1,&nbsp;cloud will be generated depending on the input value in the cloudinterval_ms
 
 
 
&nbsp; &nbsp; &nbsp;- if 0,&nbsp;cloud is generated only for one scan for the time period chosen by the user
 
 
 
&nbsp; &nbsp; &nbsp;- example:&nbsp;if duration is 50000 and cloudinterval_ms is 2000, there will be 25 clouds<br>
 
 
 
'''15.&nbsp;down_sample_enable'''
 
 
 
&nbsp; &nbsp; &nbsp;- choices: 0 or 1
 
 
 
&nbsp; &nbsp; &nbsp;- if 1, the size of the cloud will decrease
 
 
 
&nbsp; &nbsp; &nbsp;- if 0,&nbsp;the size of the cloud will remain the same (original size)
 
 
 
'''16.&nbsp;cloudinterval_ms'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in millisecond
 
 
 
'''17.&nbsp;down_sample_ratio'''
 
 
 
&nbsp; &nbsp; &nbsp;- ratio of downsampling
 
 
 
&nbsp; &nbsp; &nbsp;- example:&nbsp;original size (256*256*207) and down_sample_ratio is 4, then the new size will be 64*64*51
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;NOTE: some voxels will be discarded if the down sampling is enabled
 
 
 
'''18.&nbsp;weight_enable'''
 
 
 
&nbsp; &nbsp; &nbsp;- weight scheme
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;according to cs2679, this part will not make a noticeable different so this is '''always chosen to be 0'''
 
 
 
'''19.&nbsp;median_interval_ms'''
 
 
 
&nbsp; &nbsp; &nbsp;- should be in millisecond
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;this is for the new mask generation phase
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;the mask will make sure that the patient is always inside the FOV
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;1000 is just good enough for nearly all the cases according to cs2679
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;this means that 1000 ms (1 sec), the code will pick the median within that 1 sec (in VC file, every line interval is 30 ms) and use that as the representative for that particular second. If this value is 5000 ms, then the value to be chosen is within the 5 seconds of the VC file
 
 
 
'''20.&nbsp;data_format'''
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;for HRRT, always: PETLINK_64DP_HRRT
 
 
 
'''21.&nbsp;server_name'''
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;user can choose a server in which to run the code
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;according to cs2679, he normally uses: '''Ursa, Virgo, Taurus, Pisces'''
 
 
 
'''22.&nbsp;crop_enable'''
 
 
 
&nbsp; &nbsp; &nbsp;- choices: 0 or 1
 
 
 
&nbsp; &nbsp; &nbsp;- if 1, cropping will happen
 
 
 
&nbsp; &nbsp; &nbsp;- if 0, cropping will not happen
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;because of the use of mask, areas outside the mask have 0 value and those areas will be cropped in the output cloud to save disk space
 
 
 
'''23. status'''
 
 
 
&nbsp; &nbsp; &nbsp;- if 0, not processed yet
 
 
 
&nbsp; &nbsp; &nbsp;- if 1, processing
 
 
 
&nbsp; &nbsp; &nbsp;- if 100, finished processing
 
 
 
&nbsp; &nbsp; &nbsp;- if -1, failed
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;for new users and new cases, '''always put 0''' &nbsp; &nbsp;
 
 
 
&nbsp; &nbsp; &nbsp;- Note: Whenever the user clicks start and an error appeared, normally the status will automatically change to 1. So the user needs to change it back to 0 to be able to run it again otherwise the pipeline will skip it and go to the next patient with "0" status.&nbsp;
 
 
 
'''24.&nbsp;list_com'''
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;this is for plotting the COM curve of a specific ROI the user wants to see
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;if this is not needed, put "no"
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;if the user wants to look at several ROIs, make sure to use the '''FS LABEL''' and include space in between the ROIs
 
 
 
&nbsp; &nbsp; &nbsp;-&nbsp;example: 17 1032 1033 2033
 
 
 
<br>
 
 
 
**Quick note: If parameter #13 is chosen to be 0, remember that parameters #14,15,16 and 17 will NOT be used no matter what the user puts there.
 
 
 
**'''Another note: The pipeline above can only work when the user chooses to use <u>MR mask</u> and not the MU mask.'''
 
 
 
<br>
 
 
 
Another worth noting is that the user can choose to use the MR mask or the MU mask.&nbsp;
 
 
 
1. Currently, the inputs above work only when you use the MR MASK.&nbsp;
 
 
 
2. If the user decides to use the MU mask, another pipeline should be used called&nbsp;<u>'''HRRT_cod_cloud_MU.m'''</u>
 
 
 
3. There CSV file input is basically the same except for another input column (the last column).
 
 
 
'''4.&nbsp;bUseMU'''<br>
 
 
 
&nbsp; &nbsp; &nbsp;- choices: 0 or 1
 
 
 
&nbsp; &nbsp; &nbsp;- if 1, the Mu mask will be used instead of MR mask
 
 
 
&nbsp; &nbsp; &nbsp;- if 0, the MR mask will be used
 
 
 
5. In short, the user can choose to use the MU PIPELINE both for MR and MU mask because this particular pipeline takes care of the issue.<br>
 
 
 
<br>
 
 
 
**Some results/examples can be found in&nbsp;/home1/ecr33/Project/MCCOD/hrrt/
 
 
 
**Example of the CSV input file can be found in&nbsp;/home1/ecr33/Project/MCCOD/hrrt/Codes/For_MIC_MU.csv or&nbsp; /home1/ecr33/Project/MCCOD/hrrt/Codes/For_MIC_mr.csv
 

Revision as of 03:36, 5 July 2019