How to process Dicom Images for CNN?
-
20-10-2020 - |
문제
I am building a disease classifier. I have Dicom scans for many patients. The scans have different slice thickness, and different scans have different number of slices. However, the slice thickness for a single patient's scan has the same thickness for all slices.
For example:
Patient1's scan : 100 slices of 2mm thickness
Patient2's scan : 500 slices of 1mm thichness
The number of pixels for each slice is 512 x 512, so currently the shape of nd array containing the information for
Patient1 is 100*512*512
Patient2 is 500*512*512
I want to pass all patients information into a CNN. Do I need to resample the slices and make it uniform for all patients (like 512*512*n). If yes, how to do it, and what should be the value of 'n'?
해결책
Can you use zero padding? It's a pre-processing technique for CNNs, it consists in creating a frame of zeros around the image, so that all input image will have the same size.
The CNN will then learn autonomously to ignore the zeros. It's a common technique, Keras layers already have padding built-in arguments.