Sparse Perfusion Deconvolution for Permeability
License
ruogufang/SPD-Patlak
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
README for Sparse High-dose Induced Patlak (shd-Patlak) Package Ruogu Fang Advanced Multimedia Laboratory Department of Electrical and Computer Engineering Cornell University July 12, 2014 Sparse High-dose Induced Patlak (shd-Patlak) package uses a sparse representation and maximum a posterior optimization to robustly estimate the blood-brain-barrier permeability in low-dose CT perfusion, as described in the following paper. We provide a MATLAB implementation of the Patlak model in the pct package included in the Utilities folder. CITATION: -------------- Please cite the following papers if you use code in this SPD package. Ruogu Fang, Kolbeinn Karlsson, Tsuhan Chen, Pina C. Sanelli. Improving Low-Dose Blood-Brain Barrier Permeability Quantification Using Sparse High-Dose Induced Prior for Patlak Model. Medical Image Analysis, Volume 18, Issue 6, Pages 866-880, 2014. BIBTEX: ----------------- @incollection{fang2012dictionary @article{fang2014improving, title={Improving low-dose blood--brain barrier permeability quantification using sparse high-dose induced prior for Patlak model}, author={Fang, Ruogu and Karlsson, Kolbeinn and Chen, Tsuhan and Sanelli, Pina C}, journal={Medical image analysis}, volume={18}, number={6}, pages={866--880}, year={2014}, publisher={Elsevier} } FILES ORGANIZATION: ---------------------------------- Code: Main_shdPatlak.m: main file to run the demo. It tests two algorithms: Patlak model and shd-Patlalk model. bplasso_map: Maximum A Posterior algorithm calls bplasso_map_prior and bplasso_map_sd. bplasso_map_prior: Estimate the prior image using the learned dictionary using omp solver. bplasso_map_sd: Estimate the low-dose perfusion map image using steepest descent based on the prior image and temporal convolution model. Exp_profile: Experiment code for showing the two vertical profiles of a BBBP map. Exp_Zoomed: Experiment code for showing the zoomed-in regions of the BBBP map. Exp_3ROI: Experiment code for showing the whole BBBP map with 3 ROIs and compute the corresponding metric values. Exp_Corr_P15: Experiment code to show and compute the correlation between high-dose and low-dose BBBP maps using Patlak or shd-Patlak models. Exp_ImageandROI: Experiment code for showing the BBBP map with ROI. DATA: (in the Data folder, .mat files) IRB_015: A subject's CTP data of spatial-temporal reconstructed CT images P15_15mA: BBBP maps of high-dose (190 mA), low-dose using Patlak model and low-dose using shd-Patlak model (15mA). BBBP_001, BBBP_002: Training CTP data for dictionary learning. 20ROI_15: 20 ROI locations with x and y position for subject 15 INSTALLATION: -------------------------- 1. Unzip the package. 2. Compile Utility packages. The binaries for Mac OS 10.9 is already included in the package. For different platforms, a. Go to ompbox10 folder, follow the readme.txt file to make files in MATLAB. b. Go to spams-matlab folder and compile following the instructions in HOW_TO_INSTALL.txt. * Note that for newer version of Mac OS (10.7+) or gcc (XCode), issues may arise when running compile.m. Please follow the notes at the end of this README file for possible solutions. 3. Run Main_shdPatlak.m for the demo. 4. You may change the noise level and other parameters at the beginning of Main_shdPatlak.m file. You may also use your own simulated or real low-dose image by loading different DICOM or MAT files as Vn (the low-dose CTP data [T x X x Y]). TOOLBOX INCLUDED: ------------------------------- This package already includes the utility software packages downloaded from other website. Please properly cite the related papers if you use these packages. a. metrix-mux http://foulard.ece.cornell.edu/gaubatz/metrix_mux/ b. ompbox10 http://www.cs.technion.ac.il/~ronrubin/software.html c. spams-matlab v2.3 http://spams-devel.gforge.inria.fr ========================================================================================================= NOTES for Issues at Compilation of SPAMS-MATLAB package. ------------------- 1. Issue may occur when compiling spams_matlab package. When compile.m is run, the error occurs: /Applications/MATLAB_R2013a.app/extern/include/tmwtypes.h:819:9: error: unknown type name 'char16_t' typedef char16_t CHAR16_T; Reason: The problem is due to the update of OS system and gcc (or XCode), which changes the version number and system parameters, but MATLAB does not know it. Solution: In /Applications/MATLAB_R2013a.app/bin/mexopts.sh On Line 150: Add -std=c++11 to CXXFLAGS in your current mexopts.sh. Re-run mex -setup to have MATLAB reconfigure it for you and it works. When it is not possible to use C++11 via CXXFLAGS, either due to compiler limitation or because the file must be C only, the possible workarounds: Add before #include "mex.h" in .c file: #include <stdint.h> #define char16_t UINT16_T 2. Issue: mex: link of ' "./build//mexTrainDL.mexmaci64"' failed. Solution: Change the use_multithread to false in compile.m file Please contact rf294@cornell.edu or ruogu.fang@gmail.com if you have issues or suggestions for this shd-Patlak model package.
About
Sparse Perfusion Deconvolution for Permeability
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published