300 likes | 437 Views
ANALYSIS OF PET STUDIES. DEMONSTRATION Turku PET Centre 2001-05-08 Vesa Oikonen. BLOOD PUMP Datafiles. Datafiles are found in paths /data/plasma/ecat/*_blo.lis (ECAT) and /data/plasma/ge/patient/*.bld (GE Advance). Datafiles are not calibrated or decay corrected, and they
E N D
ANALYSIS OF PET STUDIES DEMONSTRATION Turku PET Centre 2001-05-08 Vesa Oikonen
BLOOD PUMPDatafiles Datafiles are found in paths /data/plasma/ecat/*_blo.lis (ECAT) and /data/plasma/ge/patient/*.bld (GE Advance) Datafiles are not calibrated or decay corrected, and they contain all the raw data collected by the detectors: zelda{vesa}40: more /data/plasma/ecat/s04697_blo.lis # Scanditronics Automated Blood Measurement System # Protocol: 400 1 # Start Interv 1st detector pair 2nd detector pair AUX # time time coinc singl1 singl2 coinc singl1 singl2 counts # 2000-12-08 10:29:33 976264173.0 0.0 1.0 0 11 20 1 61 30 0 976264174.0 1.0 1.0 0 14 23 0 76 37 0 976264175.0 2.0 1.0 1 11 29 1 58 32 0 976264176.0 3.0 1.0 0 40 79 0 169 45 0 976264177.0 4.0 1.0 1 190 330 1 426 179 0 976264178.0 5.0 1.0 3 479 798 2 855 323 0 976264179.0 6.0 1.0 2 648 1027 5 1104 445 0 976264180.0 7.0 1.0 4 841 1369 3 1383 615 0 976264181.0 8.0 1.0 7 982 1658 6 1558 697 0 976264182.0 9.0 1.0 5 1070 1800 2 1954 820 0 976264183.0 10.0 1.0 5 1327 1855 7 2002 887 0 976264184.0 11.0 1.0 2 1372 1908 5 1982 899 0 976264185.0 12.0 1.0 5 1364 1955 7 2113 984 0
BLOOD PUMPPrograms for Processing Data ge_dyn_corr ge_fcft_input ge_fdopa_input ge_flb_input ge_input_correction ge_mpa_input ge_nk1_input ge_rp_input ... ecat_dyn_corr ecat_fcft_input ecat_fdopa_input ecat_flb_input ...
MANUAL SAMPLESDatafiles • Datafiles are found in path /data/plasma • Files are decay corrected and calibrated to kBq/mL • Filenames: • *ap.kbq = arterial plasma, • *ab.kbq = arterial blood, • *vp.kbq = venous plasma, • *bp.dat = blood/plasma ratio • -Example: # Injection time: 04.10.2000 11:08:25 # Isotope: F-18 # Calibration coefficient: 0.002980 # Activity units: kBq/mL # Time units: min 0.467 0.000 0.650 20.353 0.833 134.116 1.017 183.610 1.200 186.274 1.367 139.035 1.583 111.311 1.767 91.686 1.933 76.551 ...
PLASMA DATACorrection for Metabolites #1 The fractions of authentic tracer are written in file: 01.00 10.96 20.89 50.78 100.65 150.5 200.32 300.13 500.04
PLASMA DATACorrection for Metabolites #2 A function can be fitted to the fraction data:
PLASMA DATACorrection for Metabolites #3 Metabolite corrected plasma curve is calculated with program subtrmet (or fdmet or fthamet): zelda{vesa}42: cd /data/test /data/test zelda{vesa}43: subtrmet t00001ap.dat t00001ap.rat Writing file t00001ap.pure.dat... Writing file t00001ap.met.dat... zelda{vesa}45: subtrmet t00001ap.dat t00001ap.rat.fit subtrmet: Warning: fraction outside fit range. Writing file t00001ap.pure.dat... Writing file t00001ap.met.dat... either using fraction file as such or function fitted to the fraction data
PET RAW DATA”Sinogram” or ”Scan file”, *.scn -File format: ECAT 931 version 6.3 scan file -If needed, GE Advance sinograms should be asked for -ECAT sinograms can be retrieved from DAT tapes; then also *.nrm and *.atn file should be restored
PET IMAGE DATA*.img -File format: ECAT 931 version 6.3 image file -If needed, GE Advance images should be asked for -ECAT images can be reconstructed from sinograms (also *.atn and *.nrm files are required) [18F]FDG frame 30-60 s frame 2-3 min frame 15-20 min frame 35-40 min frame 50-55 min
HEADERS”Main header” in Image and Scan Files Main header contains: -start time of scanning -patient name; do not distribute! -calibration unit -number of planes and frames zelda{vesa}105: lmhdr ut1101dy1.img original_file_name = '' data_type = 2 (short int) file_type = 2 (image) scan start = 07.03.2000 11:17:24 isotope_code = 'O-15 ' isotope_halflife = 122.2 radiopharmaceutical = 'H2O -- water' gantry_tilt = 6.5 gantry_rotation = 0 bed_elevation = 0 axial_fov = 15 transaxial_fov = 55 calibration_factor = 1 calibration_units = 10 (kBq/mL) study_name = '' patient_id = '' patient_name = 'Oikonen Vesa' sex= age= height=173 weigth=74 dexterity= physician_name = neuro operator_name = thk study_description = aktivaatio 200MBq 35 planes 1 frames 1 gates 1 bed_pos init_bed_position = 0 plane_separation = 0.425 user_process_code = ge2cti
HEADERS”Subheader” in Image Files One subheader for each frame and plane Subheaders contain: -start time and duration of the frame -calibration factor -voxel size (cm) zelda{vesa}107: lshdr ut1101dy1.img 1 8 File ut1101dy1.img plane 8 frame 1 gate 1 bed 0 data_type = 2 dimension = 128x128 x_origin = 0 y_origin = 0 recon_scale = 2.00276 quant_scale = 0.000421882 image_min = -7417 image_max = 32766 slice_width = 0.425 pixel_size = 0.234375 frame_start_time = 45 frame_duration = 90 sec reconstruction start = 00.00.0000 00:00:00 filter_code = 0 image_rotation = 0 intrinsic_tilt = 0 plane_eff_corr_fctr= 0 decay_corr_fctr= 1.64817 loss_corr_fctr= 1 quant_units = 10 (kBq/mL) ecat_calibration_fctr = 1 well_counter_cal_fctr = 1 annotation = ''
MATRIX LISTof Image and Scan Files zelda{vesa}108: lmlist ut1101dy1.img matrix pl fr gate bed 1 16842753 1 1 1 0 2 16908289 2 1 1 0 3 16973825 3 1 1 0 4 17039361 4 1 1 0 5 17104897 5 1 1 0 6 17170433 6 1 1 0 7 17235969 7 1 1 0 8 17301505 8 1 1 0 9 17367041 9 1 1 0 10 17432577 10 1 1 0 11 17498113 11 1 1 0 12 17563649 12 1 1 0 13 17629185 13 1 1 0 14 17694721 14 1 1 0 15 17760257 15 1 1 0 To check which planes and frames really exist in the image or sinogram:
”SUM” IMAGESCalculation Integration: zelda{vesa}121: cti_int t00001dy1.img 1800 3000 t00001integral.img integrating............... zelda{vesa}122: avgframe t00001dy1.img 12 17 t00001avg.img integrating............... Averaging (can be multiplied by time later):
ARITHMETICSwith Image and Scan Files Program calcimg Addition, Subtraction, Multiplication, Division between images (or sinograms) or between image (or sinogram) and a constant
CUTTING AND JOININGImage and Scan Files Program ctisplit for extracting specified frames and planes into a new file Program cticat for joining images together, e.g. for combining early and late scans
REGIONS OF INTEREST*.roi zelda{vesa}138: more t00316dy1_10.roi */data/test/t00316dy1sum.img 3.000000 2.450000 17432577 3 -279691264 330 313 0 0 0 1 put dx///0 16 0 0 -15 -9 -16 -9 -17 -11 -27 0 -37 18 -43 39 -49 64 -50 77 -44 80 -31 65 -17 46 -5 28 2 10 4 6 0 0 */data/test/t00316dy1sum.img 3.000000 2.450000 17432577 3 0 449 327 0 0 0 2 put sin// /0 16 0 0 18 -5 20 -5 21 -8 29 0 37 22 42 43 45 67 45 81 39 83 27 66 16 48 6 28 0 10 -1 6 0 0 */data/test/t00316dy1sum.img 3.000000 2.450000 17432577 3 1152 545 503 0 0 0 3 temp s in///0 12 0 0 20 17 21 21 11 35 0 49 -17 72 -31 84 -45 55 -32 44 -20 31 0 1 0 0 */data/test/t00316dy1sum.img 3.000000 2.450000 17432577 3 -65536 222 490 0 0 0 4 temp dx///0 12 0 0 -17 13 -20 17 -12 33 -3 49 4 73 16 89 37 64 24 49 15 34 1 1 0 0 */data/test/t00316dy1sum.img 3.000000 2.450000 17432577 0 -279691264 336 557 22 88 0 1 vis dx///0 5 */data/test/t00316dy1sum.img 3.000000 2.450000 17432577 3 -279691264 427 567 0 0 0 2 vis sin///0 5 0 0 -19 -1 -38 81 -17 86 0 0 Example of a ROI file:
REGIONS OF INTERESTCalculation of TACs zelda{vesa}141: img2kbq t00316dy1.img t00316dy1*.roi t00361.roi.kbq calculated put dx Pl10 calculated put sin Pl10 calculated put dx Pl11 calculated put sin Pl11 calculated temp sin Pl11 calculated temp dx Pl11 calculated vis dx Pl11 calculated vis sin Pl11 calculated cer dx Pl14 calculated cer sin Pl14 calculated cer dx Pl15 calculated cer sin Pl15 Data of 12 ROIs saved in file t00361.roi.kbq After drawing ROIs, the time-activity curves (average radioactivity concentration inside ROIs) can be calculated with program img2kbq For parametric images, use option -p and give the result filename with extension *.txt to save results in an easily printable format
REGIONAL TACsFile Format Files are in ASCII text format. They can be read into Excel, Origin etc. Example of a TAC file: DFT1 tumor1 12-lih 13-lih 14-lih lihavg uo0372 . . . . . kBq/ml Pl17 Pl12 Pl13 Pl14 . Time (min) 1.051e+03 5.626e+03 5.626e+03 5.626e+03 5.626e+03 0.25000 9.520e-01 1.687e-01 1.174e-01 2.647e-01 1.836e-01 0.75000 6.104e+00 8.800e-01 1.113e+00 1.240e+00 1.078e+00 1.25000 1.384e+01 2.557e+00 2.609e+00 3.455e+00 2.874e+00 1.75000 1.542e+01 3.377e+00 3.928e+00 3.647e+00 3.650e+00 2.50000 1.461e+01 3.938e+00 3.757e+00 4.587e+00 4.094e+00 3.50000 1.713e+01 4.168e+00 4.582e+00 5.023e+00 4.591e+00 4.50000 1.718e+01 4.969e+00 5.104e+00 5.527e+00 5.200e+00 6.50000 1.502e+01 6.080e+00 6.011e+00 6.492e+00 6.194e+00 9.50000 1.515e+01 6.959e+00 6.851e+00 6.876e+00 6.895e+00 12.50000 1.617e+01 7.141e+00 7.377e+00 7.515e+00 7.344e+00 ...
REGIONAL GJEDDE-PATLAKCommand Line Version zelda{vesa}212: fit_ki t01205vp.kbq t01205.roi.kbq none 15 60 t01205ki.res ROI kLoss Ki Ic Time r cer dx All 0.000e+00 4.040e-02 8.65e-01 52 0.9980 cer sin All 0.000e+00 3.984e-02 8.54e-01 52 0.9981 fro dx All 0.000e+00 4.086e-02 6.95e-01 52 0.9994 fro sin All 0.000e+00 4.127e-02 6.85e-01 52 0.9973 hipp dx All 0.000e+00 2.342e-02 6.03e-01 52 0.9881 hipp sin All 0.000e+00 2.116e-02 6.51e-01 52 0.9951 mfro dx All 0.000e+00 2.898e-02 5.39e-01 52 0.9885 mfro sin All 0.000e+00 3.302e-02 5.90e-01 52 0.9965 put dx All 0.000e+00 4.083e-02 7.65e-01 52 0.9950 put sin All 0.000e+00 3.999e-02 6.79e-01 52 0.9980 sensmo dx All 0.000e+00 3.338e-02 6.08e-01 52 0.9978 sensmo sin All 0.000e+00 3.426e-02 6.34e-01 52 0.9983 zelda{vesa}213:
REGIONAL GJEDDE-PATLAKwith kLOSS zelda{vesa}213: fit_kil t01205vp.kbq t01205.roi.kbq none 15 60 t01205ki.res ROI kLoss Ki Ic Time r cer dx All 9.592e-03 5.487e-02 6.21e-01 52 0.9997 cer sin All 9.117e-03 5.330e-02 6.26e-01 52 0.9996 fro dx All 5.446e-03 4.867e-02 5.60e-01 52 0.9999 fro sin All 1.062e-02 5.789e-02 4.06e-01 52 0.9994 hipp dx All 0.000e+00 2.342e-02 6.03e-01 52 0.9881 hipp sin All 1.102e-02 3.005e-02 5.02e-01 52 0.9974 mfro dx All 0.000e+00 2.898e-02 5.39e-01 52 0.9885 mfro sin All 8.489e-03 4.332e-02 4.15e-01 52 0.9978 put dx All 9.974e-03 5.612e-02 5.07e-01 52 0.9969 put sin All 3.772e-03 4.516e-02 5.90e-01 52 0.9983 sensmo dx All 6.971e-03 4.173e-02 4.65e-01 52 0.9987 sensmo sin All 8.050e-03 4.433e-02 4.63e-01 52 0.9995 temp dx All 8.628e-03 4.922e-02 5.06e-01 52 0.9999 temp sin All 7.121e-03 5.020e-02 5.28e-01 52 0.9995
REGIONAL LOGAN PLOTPlasma Input zelda{vesa}220: logan rp0096.roi.kbq rp0096ap.pure.kbq 15 60 logan.res ROI Plane DV SE IC SE r caudx All 1.15e+00 1.42e-02 -1.43e+01 6.13e-01 1.000 causin All 1.15e+00 7.32e-03 -1.43e+01 3.16e-01 1.000 cer All 3.32e-01 8.02e-04 -4.23e+00 1.30e-01 1.000 putdx All 1.31e+00 5.57e-03 -1.51e+01 2.11e-01 1.000 putsin All 1.30e+00 1.01e-02 -1.51e+01 3.84e-01 1.000 thadx All 4.82e-01 3.02e-03 -6.73e+00 3.31e-01 1.000 thasin All 4.92e-01 3.98e-03 -6.28e+00 4.20e-01 1.000 cau All 1.15e+00 6.96e-03 -1.43e+01 3.00e-01 1.000 put All 1.31e+00 5.04e-03 -1.52e+01 1.92e-01 1.000 tha All 4.87e-01 2.22e-03 -6.55e+00 2.39e-01 1.000
REGIONAL LOGAN PLOTReference Region Input zelda{vesa}221: logan rp0096.roi.kbq cer 15 60 logan.res ROI Plane DVR SE IC SE r caudx All 3.41e+00 3.03e-02 -9.63e+00 4.01e-01 1.000 causin All 3.40e+00 1.16e-02 -9.63e+00 1.54e-01 1.000 putdx All 3.86e+00 1.34e-02 -1.03e+01 1.56e-01 1.000 putsin All 3.85e+00 1.68e-02 -1.03e+01 1.97e-01 1.000 thadx All 1.45e+00 5.80e-03 -2.77e+00 1.95e-01 1.000 thasin All 1.48e+00 5.69e-03 -2.23e+00 1.85e-01 1.000 cau All 3.40e+00 1.41e-02 -9.64e+00 1.87e-01 1.000 put All 3.86e+00 7.91e-03 -1.03e+01 9.23e-02 1.000 tha All 1.47e+00 3.47e-03 -2.52e+00 1.15e-01 1.000
REGIONAL BINDING POTENTIAL zelda{vesa}224: fitbp rp0096.roi.kbq cer fitbp.res ROI Plane R1 k2 BP Time SS/n caudx All 0.8054 2.329e-01 2.4796 48 6.29e-01 causin All 0.7622 2.361e-01 2.4646 48 3.32e-01 putdx All 0.9161 2.458e-01 2.9638 48 2.77e-01 putsin All 0.9199 2.451e-01 2.9514 48 3.19e-01 thadx All 0.8152 1.705e-01 0.4506 48 2.22e-01 thasin All 0.7650 2.046e-01 0.4855 48 3.07e-01 cau All 0.7837 2.345e-01 2.4720 48 4.38e-01 put All 0.9180 2.454e-01 2.9576 48 2.81e-01 tha All 0.7874 1.892e-01 0.4671 48 2.51e-01
PARAMETRIC IMAGESLogan Analysis DV or DVR can be calculated pixel-by-pixel, but better quality would be achieved by calculating from sinogram and reconstructing after that zelda{vesa}234: ctilogan rp1057dy1.mrp.img rp1057cer.kbq 0 15 0 logan.img plane 01 plane 02 plane 03 plane 04 plane 05 plane 06 plane 07 ...