一、预定义
CT值的单位是Hounsfield,简称为Hu,范围是 -1024-3071。用于衡量人体组织对X射线的吸收率,设定水的吸收率为0Hu。
在DICOM图像读取的过程中,我们会发现图像的像素值有可能不是这个范围,通常是0-4096,这个值就是我们常见到的像素值或者灰度值。一般我们所处理的图象是经过量化后的灰度图象,标准的CT 灰度图象为12 位灰度图象。
8bite,16bites,32bites,64bites 对应每个像素值变量类型为char、short、int、long
using InputPixelType = unsigned char;//无符号八位,一般取signed short,unsigned short得到的是2^16大小的数据-1024,而使用signed short得到的数据才为正常
using OutputPixelType = unsigned char;
using InputImageType = itk::Image<InputPixelType, 2>;//二维
using OutputImageType = itk::Image<OutputPixelType, 2>;
typedef itk::ImageSeriesReader<InputImageType> ReaderType;//ImageFileReader也可
typedef itk::GDCMImageIO ImageIOType;
ReaderType::Pointer reader = ReaderType::New();
reader->SetFileNames(filenamesOut);
//reader->SetFileName(argv[1]);//调试中的命令参数名字
ImageIOType::Pointer gdcmIO = ImageIOType::New();
reader->SetImageIO(gdcmIO);
reader->Update();
Mat S_OrgImg = itk::OpenCVImageBridge::ITKImageToCVMat< OutputImageType >(reader