【问题标题】:Finding contours and midpoints of color squares in an image查找图像中颜色方块的轮廓和中点
【发布时间】:2019-09-14 22:02:54
【问题描述】:

我有一张带有彩色方块的图片:

我正在尝试查找颜色方块的轮廓,以及颜色方块的中点以查找像素值。

【问题讨论】:

  • 到目前为止你有什么尝试?
  • 我能找到这条带,我的意思是整个带的轮廓。但是一直在寻找正方形的轮廓
  • 如果它们的空间和大小均匀,您可以偏移到第一个正方形,然后以相等的间隔裁剪。

标签: python opencv image-processing scikit-image


【解决方案1】:

您可以使用HSV colour space,但您必须手动选择颜色范围。

根据颜色更改H 的值,并为SV 保留0-255 的整个范围,或者您也可以限制这些以更具体。

然后您可以使用轮廓在检测到的轮廓周围绘制一个边界框并找到中心。

这是代码

import cv2
import numpy as np
from matplotlib import pyplot as plt

img = cv2.imread('UQjNf.jpg')

hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

bi = np.zeros((hsv.shape[:2]),np.uint8)

bi[np.where((((hsv <= [20,255,255]) & (hsv >= [20,0,0])) | (hsv <= [21,255,255]) & (hsv >= [21,0,0]) | ((hsv <= [22,255,255]) & (hsv >= [22,0,0])) ).all(axis = 2))] = [255]

plt.imshow(bi)
plt.xticks([]), plt.yticks([])  # to hide tick values on X and Y axis
plt.show()

这是一种很好的颜色

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2017-12-19
    • 2013-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-22
    • 2021-01-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多