【问题标题】:How to identify nearby pixels with similar intensities in image?如何识别图像中具有相似强度的附近像素?
【发布时间】:2020-06-19 14:07:57
【问题描述】:

我有一个如下所示的图像,并且我已经为该图像创建了蒙版(红点是从蒙版生成的)。理想情况下,蒙版中的点应覆盖图像上的整个黑点,但由于每个黑块只有一个坐标,因此生成的图像如下所示。

如何识别周围的像素(灰色和浅黑色)并同时标记它们?有什么方法或方法我可以查找和实现。

【问题讨论】:

  • 你似乎想用洪水填充相邻的灰色区域,也许吧?

标签: python image image-processing graphics deep-learning


【解决方案1】:

如果我对您的理解正确,您希望将所有周围的灰色和深色像素转换为红色。如果是这样,这是使用OpenCV 的方法。思路是加载图像,转换为grayscale,然后Otsu's threshold,得到1通道二值图像。这将为我们提供一个蒙版,我们可以在其中使用np.where 将蒙版上有白色像素的像素着色为红色。结果如下:

二进制掩码

结果

import cv2
import numpy as np

# Load image, grayscale, Otsu's threshold
image = cv2.imread('1.png')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
thresh = cv2.threshold(gray, 200, 255, cv2.THRESH_BINARY_INV)[1]

# Color pixels red where there are white pixels on the mask
image[np.where(thresh==255)] = [0,0,255]

# Display
cv2.imshow('thresh', thresh)
cv2.imshow('image', image)
cv2.waitKey()

【讨论】:

    猜你喜欢
    • 2021-04-12
    • 1970-01-01
    • 2020-10-23
    • 1970-01-01
    • 2014-11-30
    • 1970-01-01
    • 2015-03-17
    • 2013-05-18
    • 2011-02-19
    相关资源
    最近更新 更多