Image processing 具有不同模态和光度解释的CNN图像的适当DICOM图像预处理

Image processing 具有不同模态和光度解释的CNN图像的适当DICOM图像预处理,image-processing,deep-learning,conv-neural-network,x-ray,medical-imaging,Image Processing,Deep Learning,Conv Neural Network,X Ray,Medical Imaging,我目前正在从事一个深度学习项目,涉及DICOMimages。长话短说,在这个项目中,我有人类骨盆的X光图像,我试图预测髋关节是否有一些病理变化(例如:囊肿、骨赘、硬化等) 我的一个问题是,数据是从不同的医院收集的,并且具有不同的属性(分布)。我的注意力主要集中在: 检查仪-我接受了计算机X射线摄影(CR)和数字X射线摄影(DX)检查 光度判读-我的X射线保存在RGB、单色1和单色2 我有3组主要的图像: 如果我理解正确,我真的无法使用成像仪做任何事情,但是在光度学解释的情况下,我将RGBX

我目前正在从事一个深度学习项目,涉及
DICOM
images。长话短说,在这个项目中,我有人类骨盆的X光图像,我试图预测髋关节是否有一些病理变化(例如:囊肿、骨赘、硬化等)

我的一个问题是,数据是从不同的医院收集的,并且具有不同的属性(分布)。我的注意力主要集中在:

  • 检查仪
    -我接受了计算机X射线摄影(
    CR
    )和数字X射线摄影(
    DX
    )检查
  • 光度判读
    -我的X射线保存在
    RGB
    单色1
    单色2
我有3组主要的图像:

如果我理解正确,我真的无法使用
成像仪
做任何事情,但是在
光度学解释
的情况下,我将
RGB
X射线更改为
灰度
,对所有图像进行单位化,并反转
单色差1
像素值:

pixel_data = dicom.pixel_array
pi = dicom['PhotometricInterpretation'].value
if pi == 'RGB':
    pixel_data = rgb2gray(pixel_data)
pixel_data = (pixel_data - pixel_data.min()) / (pixel_data.max() - pixel_data.min())
if pi == 'MONOCHROME1':
    pixel_data = np.abs(1 - pixel_data)
在那之后,我将CLAHE算法应用于每一个。预处理前后的3个样本图像(CR-RGB、DX-MONO2、CX-MONO1)如下所示:

建模之前的最后一步是从X光片上切下髋关节,因为我试图预测的所有变化都位于一个小区域,因此我不需要整个X光片(我计划建立定位模型,以找到髋关节的边界框,并为其上的变化建立分类模型)。切割后的3个样本髋关节(CR-RGB、DX-MONO2、CX-MONO1)如下所示:

我的问题是:

  • 我的预处理步骤有什么问题吗
  • 我是否应该在预处理中添加一些内容

  • 这是我第一次使用DICOM,如有任何帮助,我将不胜感激。

    我认为您应该使用阈值技术之一,我建议尝试“Otsu”,然后检测需要尝试“canny”的边缘。您还可以使用连接组件标签来找到您想要检查囊肿、骨赘生物的感兴趣区域。

    我认为您应该使用阈值技术之一,我建议尝试“Otsu”,然后检测需要尝试“canny”的边缘。您还可以使用连接组件标签来找到您想要检查囊肿、骨赘的感兴趣区域。

    除非OP知道“otsu”和“canny”等术语的含义,否则答案将毫无帮助。因此,为了让答案有帮助,请提供更多关于术语的详细信息,以及它们如何链接到OP提到的术语/代码/主题。提供您使用的术语的参考也很有帮助。除非OP知道“otsu”和“canny”等术语的含义,否则答案将毫无帮助。因此,为了让答案有帮助,请提供更多关于术语的详细信息,以及它们如何链接到OP提到的术语/代码/主题。提供对您使用的术语的引用也很有帮助。因为您不想详细处理整个图像,所以不要使用clahe,您所做的调整(使用min和max)就足够了。然后,如果你有很多图像,进行深度学习,如果你没有,自由形式注册是将异常与地面真实进行比较的最佳方法。因为你不想详细处理整个图像,所以不要使用clahe,你所做的调整(使用最小值和最大值)就足够了。然后,如果你有很多图像,进行深度学习,如果你没有,自由形式的注册是比较异常和基本事实的最佳方法。