Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-查找管状结构,填充孔,并生成用于下游图像处理的二进制掩码_Python_Image_Scikit Image - Fatal编程技术网

Python-查找管状结构,填充孔,并生成用于下游图像处理的二进制掩码

Python-查找管状结构,填充孔,并生成用于下游图像处理的二进制掩码,python,image,scikit-image,Python,Image,Scikit Image,第一次在这里发布 我正在为一个生物工程项目进行图像处理,我正在使用Python,主要是Skipage软件包,对我们拍摄的图像进行批处理。每个图像中有6-8个试管,细胞在其中流动。在每个时间点,我们都拍摄了正常的亮场图像和荧光图像。我试图根据亮场图像识别管子,将管子与背景分开,并给它们贴上标签。遮罩/标记图像将用于荧光图像的下游处理,在那里我们识别细胞并获得其形状度量 tl;dr:Python;撇渣;图像处理;在明亮的视场图像中将管状结构与背景分离 我将用一个例子来说明我所做的。我想包括所有的中间

第一次在这里发布

我正在为一个生物工程项目进行图像处理,我正在使用Python,主要是Skipage软件包,对我们拍摄的图像进行批处理。每个图像中有6-8个试管,细胞在其中流动。在每个时间点,我们都拍摄了正常的亮场图像和荧光图像。我试图根据亮场图像识别管子,将管子与背景分开,并给它们贴上标签。遮罩/标记图像将用于荧光图像的下游处理,在那里我们识别细胞并获得其形状度量

tl;dr:Python;撇渣;图像处理;在明亮的视场图像中将管状结构与背景分离

我将用一个例子来说明我所做的。我想包括所有的中间图像,但我没有任何信誉点张贴两个以上的图像。因此,我将显示第一个和最后一个图像

  • 我首先裁剪了比例尺,得到了一个灰度图像,这是结果图像

  • 我使用sobel_h过滤器来查找水平边

    bf_sobel = sobel_h(bf_cropped)
    io.imshow(bf_sobel)
    
  • 然后我尝试了所有的阈值,选择了一个对我来说很好的阈值算法(大津)

  • 然后我应用了关闭函数并移除了小对象

    bf_closed = closing(bf_thresholded)
    bf_small_removed = remove_small_objects(bf_closed, 50)
    io.imshow(bf_small_removed)
    


  • 这就是我被卡住的地方。我正在尝试填充管边缘之间的间隙,并为各个管创建遮罩,以将它们与背景分开。有什么建议吗?谢谢

    你找到解决这个问题的好办法了吗?
    bf_closed = closing(bf_thresholded)
    bf_small_removed = remove_small_objects(bf_closed, 50)
    io.imshow(bf_small_removed)