0

我正在编写访问我的相机的代码,将输出转换为灰度,应用高斯模糊找到最亮的区域/像素并将其圈出。除了画圆部分之外的所有东西都可以正常工作。我尝试使用的命令对我没有任何作用。有人有想法吗?我正在使用 opencv、python 2.7 和 Windows 计算机!

这是代码:

import cv2
import numpy as np

cv2.namedWindow("spot")
cam = cv2.VideoCapture(0)

if cam.isOpened(): 
    rval, frame = cam.read()
else:
    rval = False

while rval:

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    gray = cv2.GaussianBlur(gray,(21,21), 0)
    (minVal, maxVal, minLoc, maxLoc) = cv2.minMaxLoc(gray)

    cv2.imshow("spot", gray)
    rval, frame = cam.read()
    key = cv2.waitKey(20)

    if key == 27: 
        break
    cv2.destroyWindow("spot")

这是我到目前为止一直试图添加的行:

cv2.circle(gray, maxLoc, 21, (255, 0, 0), 2)
4

1 回答 1

0

您正在尝试在灰色图像上绘制一个彩色圆圈,而不是您可以在原始彩色框架上制作圆圈

cv2.circle(frame, maxLoc, 10, (255, 0, 0) )
cv2.imshow("spot",frame)
于 2016-08-11T14:22:16.857 回答