-
Notifications
You must be signed in to change notification settings - Fork 0
hpcnpatel/Fortran_Image_Processing
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
#============================================================================# This is a collection of programs for processing, manipulating, and filtering CT scan data. A CT scan data could be binary RAW data or VTK data. All the source code is in the ./source_files directory. Important files to be looked at while building & executing the program are, --> ./parameter.dat --> ./source_files/image_process.f90 #============================================================================# How to Build >> make -C object_files #============================================================================# How to Execute >> ./inter parameter.dat In the parameter.dat file, one should specify the name of the CT data file along with the size of the filter. Here are the values that can pass to binary executable via parameter.dat file. The parameter.dat will look like this, 1 kernel_X=5 2 kernel_Y=5 3 kernel_Z=5 4 fpath=./vtk/ 5 fname=file_name_of_CT_data 6 fext=vtk 7 np=24 kernel_X,_Y,&_Z can be used to pass the length/size of the filter in each x,y, & z-direction. fpath=> file path name fname=> file name without extention fext=> file extension (for example, vtk or raw) #============================================================================# Main available filters or manipulation tools (in form of subroutines) are, => ADAPTIVE_MEDIAN => ADAPTIVE_QR => GRADIENT => MEAN => MEDIAN => QR => data Extrapolation filter subroutine => VTK data read & write subroutine => RAW data read subroutine => sorting subroutines #============================================================================# How to use the Adaptive filters (QR or median) on CT data to extract the best possible smoothed filtered results? Please remember, the aim is to extract a smooth geometry of the human artery from the patient-specific CT scan data. In the source_files/image_process.f90 file, one must call a subroutine called, adaptive_median or adaptive_qr subroutine, like below CALL ADAPTIVE_MEDIAN(CT_NEW,KSIZE,np) or CALL ADAPTIVE_QR(CT_NEW,KSIZE,np) Adaptive filters will find the gradient of each pixel, and based on the intensity of the gradient value, the median or QR filter will be used multiple times. The intensity value is predefined, 0,25,50 and Max of Gradient. A maximum of 4 times a median or QR filter will be applied on a pixel based on the norm of the gradient. Keep in mind the size of the kernel/filter being used. In the parameter file, one must specify this. The typical values are 3,3,3 or 5,5,5. #============================================================================# How to use the pure QR or median filter on CT data to extract the best possible smoothed filtered results? Please remember, the aim is to extract a smooth geometry of the human artery from the patient-specific CT scan data. In the source_files/image_process.f90 file, one must call a subroutine called, median or QR subroutine, like below CALL MEDIAN(CT_NEW,KSIZE,np) or CALL QR(CT_NEW,KSIZE,np) If you want to process the median /qr filter on each pixel for more number of times, you can do this, CALL MEDIAN(CT_NEW,KSIZE,np) CALL MEDIAN(CT_NEW,KSIZE,np) CALL MEDIAN(CT_NEW,KSIZE,np) CALL MEDIAN(CT_NEW,KSIZE,np) In the above example, four times a median filter will be applied on each pixel/voxel without taking gradient into considerations.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published