Sr_*_*_33 1 python opencv image-processing python-3.x opencv3.0
我想获取图像中蓝点的像素坐标。为了得到它,我首先将其转换为灰度并使用阈值函数。
import numpy as np
import cv2
img = cv2.imread("dot.jpg")
img_g = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
ret1,th1 = cv2.threshold(img_g,127,255,cv2.THRESH_BINARY_INV)
Run Code Online (Sandbox Code Playgroud)
如果我想获得强度为 255 的像素位置,下一步该怎么做?请告诉是否有一些更简单的方法可以做到这一点。
小智 5
我不认为这会像你期望的那样工作。通常,为了在具有特定颜色的形状上获得稳定的跟踪,您可以在 RGB/HSV/HSL 平面中执行此操作,您可以从在照明方面更稳健的HSV开始。
1-转换为 HSV 使用 cv2.cvtColor()
2-cv2.inRagne(blue_lower, blue_upper)用于“过滤”所有不需要的颜色。
现在您有一个漂亮的二值图像,其中只有蓝色(假设您有静态背景或应添加更多过滤器)。
3-现在如果你想检测点(通常超过一个像素),你可以尝试cv2.findContours
4-您可以像这样使用多种方法(取决于您要检测的形状)获得轮廓的 x,y 像素 cv2.boundingRect()
| 归档时间: |
|
| 查看次数: |
777 次 |
| 最近记录: |