translationalneuromodeling / tapas

TAPAS - Translational Algorithms for Psychiatry-Advancing Science
https://translationalneuromodeling.github.io/tapas/
GNU General Public License v3.0
219 stars 90 forks source link

using physIO for Philips ASL logfiles #254

Open mzamyadi opened 10 months ago

mzamyadi commented 10 months ago

Dear Tapas team,

I am interested in using physIO to extract respiratory and cardiac data from Philips ASL logfiles. I was able to successfully run philips_ppu3t_matlab_script.m on the example log file provided but I am now wondering which of the following parameters I have to change in the script in order to run it on my ASL data?

_physio.save_dir = {'physio_out'}; physio.log_files.vendor = 'Philips'; physio.log_files.cardiac = {'SCANPHYSLOG20160305100728.log'}; physio.log_files.respiration = {'SCANPHYSLOG20160305100728.log'}; physio.log_files.relative_start_acquisition = 0; physio.log_files.align_scan = 'last'; physio.scan_timing.sqpar.Nslices = 18; physio.scan_timing.sqpar.TR = 10; physio.scan_timing.sqpar.Ndummies = 0; physio.scan_timing.sqpar.Nscans = 3; physio.scan_timing.sqpar.onset_slice = 17; physio.scan_timing.sync.method = 'gradient_log'; physio.scan_timing.sync.grad_direction = 'y'; physio.scan_timing.sync.zero = 700; physio.scan_timing.sync.slice = 1800; physio.preproc.cardiac.modality = 'PPU'; physio.preproc.cardiac.filter.include = false; physio.preproc.cardiac.filter.type = 'butter'; physio.preproc.cardiac.filter.passband = [0.3 9]; physio.preproc.cardiac.initial_cpulse_select.method = 'auto_matched'; physio.preproc.cardiac.initial_cpulse_select.max_heart_rate_bpm = 90; physio.preproc.cardiac.initial_cpulse_select.file = 'initial_cpulse_kRpeakfile.mat'; physio.preproc.cardiac.initial_cpulse_select.min = 0.4; physio.preproc.cardiac.posthoc_cpulse_select.method = 'off'; physio.preproc.cardiac.posthoc_cpulse_select.percentile = 80; physio.preproc.cardiac.posthoc_cpulse_select.upper_thresh = 60; physio.preproc.cardiac.posthoc_cpulse_select.lower_thresh = 60; physio.preproc.respiratory.filter.passband = [0.01 2]; physio.preproc.respiratory.despike = false; physio.model.orthogonalise = 'none'; physio.model.censor_unreliable_recording_intervals = false; physio.model.output_multiple_regressors = 'multiple_regressors.txt'; physio.model.output_physio = 'physio.mat'; physio.model.retroicor.include = true; physio.model.retroicor.order.c = 3; physio.model.retroicor.order.r = 4; physio.model.retroicor.order.cr = 1; physio.model.rvt.include = true; physio.model.rvt.method = 'hilbert'; physio.model.rvt.delays = 0; physio.model.hrv.include = true; physio.model.hrv.delays = 0; physio.model.noise_rois.include = false; physio.model.noise_rois.thresholds = 0.9; physio.model.noise_rois.n_voxel_crop = 0; physio.model.noise_rois.n_components = 1; physio.model.noise_rois.force_coregister = 1; physio.model.movement.include = false; physio.model.movement.order = 6; physio.model.movement.censoring_threshold = 0.5; physio.model.movement.censoring_method = 'FD'; physio.model.other.include = false; physio.verbose.level = 2; physio.verbose.process_log = cell(0, 1); physio.verbose.fig_handles = zeros(1, 0); physio.verbose.fig_output_file = 'PhysIO_output_level2.jpg'; physio.verbose.use_tabs = false; physio.verbose.show_figs = true; physio.verbose.save_figs = false; physio.verbose.close_figs = false; physio.ons_secs.c_scaling = 1; physio.ons_secs.rscaling = 1; physio.version = 'R2022a-v8.1.0';

Thanks a lot for your help!