文末有代码链接!!!!!

修改 2023-03-14

偷空写个帖子。
在处理全病理切片(WSI)的时候,经常会碰到一个问题。就是整个WSI很大,其中有很多空白的地方,深度学习或者传统的图像处理都不需要处理的,如何把这些空白区域去掉。

用的最多的是传统的灰度图OTSU分割,简单的说就是:

import cv2
import numpy as npimport skimage
import skimage.morphology
#删除小空洞,可以看我另一片文章。
def remove_small_hole(mask, h_size=10):"""remove the small holeArgs:mask (_type_): a binary mask, can be 0-1 or 0-255h_size (int, optional): min_size of the holeReturns:mask"""value = np.unique(mask)if len(value)>2:return Nonepre_mask_rever = mask<=0pre_mask_rever = skimage.morphology.remove_small_objects(pre_mask_rever, \min_size=h_size)mask[pre_mask_rever<=0] = np.max(mask)return maskgray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Remove noise using a Gaussian filter
gray = cv2.GaussianBlur(gray, (35,35), 0)
# Otsu thresholding and mask generation
ret, thresh_otsu = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)# 删除小的组织区域thresh_otsu = remove_small_hole(thresh_otsu, min_size*4)thresh_otsu = 255-thresh_otsu# 删除小的空白区域thresh_otsu = remove_small_hole(thresh_otsu, min_size)

可以得到类似下列的效果:

但这种方式只能按照灰度值来提取组织区域,无法去除一些污染。比如说下面的:

类似的污染是由于临床医生为了方便查看,用马克笔画上去的。还有很多制片,扫描时导致的污染,在WSI处理的时候都非常普遍,用灰度的阈值很难去除。
那就有第二种方法。这个是来源于 Anant Madabhushi团队开发的工具,叫HistoQC。论文题目如下:
HistoQC: An Open-Source Quality Control Tool for Digital Pathology Slides
github上有开源的代码:
代码
其主要原理是利用图像的一些传统特征,比如说灰度直方图,熵值啥的对像素进行分类,从而判别是组织区域还是污染或者空白,论文中的效果如下:

这个工具在一些质量较好的片子上效果还是很不错的,而且速度还是比较快的。但我在别的肿瘤上用的时候效果就很让我失望,会删掉不少组织区域。

可以看到不少组织区域都被剔除了。
然后最近我用了第三种方法。
我自己挑了不少组织区域,空白和一些污染区域的图像,一共3万个patch左右,训练了一个分类模型。只分两类,一类是背景(包括空白和污染),另一类是组织。用的是resner34网络,训了10个epoches,大概10分钟吧(用的3090,所以比较快),就能得到一个很不错的分割结果。

现在的分割结果是锯齿形边缘,看着不太舒服,我们再结合文章一开始说到的阈值分割,就能得到一个更加好看的分割结果:

制片时的污渍都被很好的剔除了。

我自己的代码链接:Github。

(病理图像质控)分割病理图像(whole slide images,WSI)中包含组织的区域,去掉空白区域相关推荐

  1. 图像语义分割_图像语义分割(9)-DeepLabV3: 再次思考用于图像语义分割的空洞卷积...

    论文地址 :Rethinking Atrous Convolution for Semantic Image Segmentation 论文代码:Github链接 1. 摘要 文章主要的工作: 使用空 ...

  2. matlab 图像语义分割,笔记︱图像语义分割(FCN、CRF、MRF)、论文延伸(Pixel Objectness、)...

    图像语义分割的意思就是机器自动分割并识别出图像中的内容,我的理解是抠图- 之前在Faster R-CNN中借用了RPN(region proposal network)选择候选框,但是仅仅是候选框,那 ...

  3. 图像语义分割python_图像语义分割出的json文件和原图,用plt绘制图像mask

    1.弱监督 由于公司最近准备开个新项目,用深度学习训练个能够自动标注的模型,但模型要求的训练集比较麻烦,,要先用ffmpeg从视频中截取一段视频,在用opencv抽帧得到图片,所以本人只能先用语义分割 ...

  4. 图像语义分割python_图像语义分割 —利用Deeplab v3+训练VOC2012数据集

    原标题:图像语义分割 -利用Deeplab v3+训练VOC2012数据集 前言: 配置:windows10 + Tensorflow1.6.0 + Python3.6.4(笔记本无GPU) 源码: ...

  5. 图像语义分割python_图像语义分割ICNET_飞桨-源于产业实践的开源深度学习平台...

    图像语义分割-ICNET 类别 智能视觉(PaddleCV) 应用 自动驾驶 室内导航 医学图像诊断 穿戴设备 虚拟现实与增强现实 无人机 模型概述 ICNet 主要用于图像实时语义分割,能够兼顾速度 ...

  6. 图像阈值分割matlab,图像阈值分割Matlab版 | 学步园

    图像阈值分割是一个非常简单的 而现在遇到的阈值分割却需要完成如下的多个功能: 1.基本的阈值分割: 大于阈值,则认为是目标:小于,则认为是背景 2.像素值较低才被认为是目标,即要把不等号反向 对图像像 ...

  7. 笔记:基于DCNN的图像语义分割综述

    写在前面:一篇魏云超博士的综述论文,完整题目为<基于DCNN的图像语义分割综述>,在这里选择性摘抄和理解,以加深自己印象,同时达到对近年来图像语义分割历史学习和了解的目的,博古才能通今!感 ...

  8. 从特斯拉到计算机视觉之「图像语义分割」

    说起特斯拉,大家可能立马会想到今年5月份发生在特斯拉Model S自动驾驶上的一宗夺命车祸.初步的调查表明,在强烈的日照条件下,驾驶员和自动驾驶系统都未能注意到牵引式挂车的白色车身,因此未能及时启动刹 ...

  9. 深度学习-Tensorflow2.2-图像处理{10}-图像语义分割-23

    图像语义分割简介 图像语义分割网络结构-FCN 上采样 代码实现 import tensorflow as tf import matplotlib.pyplot as plt %matplotlib ...

最新文章

  1. 刷新记录,算法开源!字节跳动获人体姿态估计竞赛双冠 | CVPR 2019
  2. Gtk+2 Hello World:从源码到打包发布
  3. Tarjan的求双连通分量算法
  4. 【数据结构与算法】之深入解析“课程表III”的求解思路与算法示例
  5. 电脑知识:电脑如何连接电视,在电视上显示?
  6. java犀牛是什么意思_深入浅出Rhino:Java与JS互操作
  7. 真正的OKR是什么?
  8. 使用JDBC来连接数据库
  9. 注解形式控制器配置(3)
  10. 详细分析GitLab CE 已遭在野利用漏洞 (CVE-2021-22205)
  11. Codevs 1215 迷宫
  12. php import mdf,excel表格怎么导入数据库数据格式转换-已有excel表格导入sql server生成*.mdf *.ldf文件......
  13. setsockopt()改善socket网络程序的健壮性
  14. 银河麒麟高级服务器操作系统V10下载安装及安装docker
  15. “二清”是电商行业在支付清算领域中普遍存在的现实状况?
  16. @Valid注解的使用---SpringMvc中的校验框架@valid和@validation的概念及相关使用
  17. dann的alpha torch_pytorch BiLSTM+CRF代码详解
  18. 阿里云服务器+腾讯域名进行域名解析
  19. 江敏:数据中台驱动下的企业创新升级
  20. 不限流量 全网CDN图床 图床API_聚合图床

热门文章

  1. 5G基站基带架构设计之总体篇
  2. 本科计算机论文代码量,毕业设计的代码量
  3. 华为HCNP认证考过了
  4. 考一个华为认证HCIP需要学习那些东西?
  5. 传智播客支持中国制造2025人才培养工程
  6. WMS出库作业流程简介
  7. matlab中liccode函数,基于matlab车牌识别系统设计与实现(最终版)
  8. 【转载】凹凸贴图、法线贴图、置换贴图
  9. 转-超声系统的信号链设计注意事项
  10. 《天地图电子地图符号与注记说明2015》线宽及字体单位转换