使用深度 CNN 和完全连接的分类器转换分割掩码 numpy 数组以进行图像分割

Posted

技术标签:

【中文标题】使用深度 CNN 和完全连接的分类器转换分割掩码 numpy 数组以进行图像分割【英文标题】:converting segmentation mask numpy arrays for image segmentation using a deep CNN and a fully connected classifier 【发布时间】:2020-11-11 22:58:23 【问题描述】:

我正在根据 Pereira 等人的一篇论文构建一个模型,用于医学图像分割,他们使用卷积网络输入全连接分类器。 我想从正常组织中分割出肿瘤。

我目前有一个 numpy 数组,其中包含预先分割的图像 [0]= 背景 [1]= 肿瘤,形状为 443、443、1 作为“目标”,形状为 443、443、1 的图像作为输入。

如何让模型对原始图像的补丁进行分类,然后在最后重建整个图像以生成分割图?

谢谢!

【问题讨论】:

如果您有特定的编程相关问题,您应该提供一些代码并尽量具体,以便更容易获得好的答案。 【参考方案1】:

如果您参考论文“Brain Tumor Segmentation Using ConvolutionalNeural Networks in MRI Images”,他们会从原始 MRI 扫描中提取大小为 33x33 像素的斑块,并将每个斑块分类为 5 类之一(正常组织、坏死、水肿、非增强或增强肿瘤)使用中间像素的类别作为ground truth。

最后,您对一张 MRI 图像中的每个补丁进行单独分类,并跟踪它们的坐标以构建分割图。

【讨论】:

您好,谢谢您的回答!我知道他们提取了补丁我只是不确定如何在 python 中执行它。我没有原始图像数据,而是一个 .pkl 文件,其中包含需要放入补丁的大小为 850 448 448 1 的 numpy 数组(图像数、高度、宽度、通道数)。有没有最好的方法来做到这一点? 假设您喜欢纸张中大小为 33 的补丁,只需裁剪或填充您的图像,这样如果您将大小除以 33,您将得到一个整数,例如裁剪到 429 或填充到 462。然后使用 numpy 的 reshape 方法:np.reshape(data,(33,33,1,-1)) 为每个图像。

以上是关于使用深度 CNN 和完全连接的分类器转换分割掩码 numpy 数组以进行图像分割的主要内容,如果未能解决你的问题,请参考以下文章

自然和医学图像的深度语义分割:网络结构

第五天 综述笔记2 10大类基于深度学习的segmentation model

如何使用 bagging 集成 SVM 和 CNN 分类器?

深度学习方法下图像分割的记录和理解

R-CNN和Mask R-CNN在图像分割中的应用史

VGG