Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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_Opencv - Fatal编程技术网

Python 在我的相机中检测到物体后,我如何采取适当的行动?

Python 在我的相机中检测到物体后,我如何采取适当的行动?,python,opencv,Python,Opencv,我想运行一个使用对象检测的普通软件,我可以用openCV检测对象或颜色,但之后我不能采取任何行动。就像我想在相机检测到任何颜色或物体时按下按钮一样 有了这段代码,我可以检测到任何黄色的物体,但之后我不能采取任何行动 import cv2 import numpy as np cap = cv2.VideoCapture(0) while True: _, frame = cap.read() hsv_frame = cv2.cvtColor(frame, cv2.COLOR

我想运行一个使用对象检测的普通软件,我可以用openCV检测对象或颜色,但之后我不能采取任何行动。就像我想在相机检测到任何颜色或物体时按下按钮一样

有了这段代码,我可以检测到任何黄色的物体,但之后我不能采取任何行动

import cv2
import numpy as np

cap = cv2.VideoCapture(0)

while True:
    _, frame = cap.read()

    hsv_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)

    #yellow color

    low_yellow = np.array([20,60,200])
    high_yellow = np.array([60,255,255])
    yellow_mask = cv2.inRange(hsv_frame, low_yellow, high_yellow)
    yellow = cv2.bitwise_and(frame, frame, mask=yellow_mask)

    cv2.imshow("OUR FRAME", frame)
    cv2.imshow("YELLOW FRAME" , yellow)

    key =cv2.waitKey(1)
    if key ==27:
        break

在我看来,你还没有真正检测到物体,你正在拍摄相机看到的任何图像,并对其应用黄色滤镜。但如果没有黄色物体,屏幕仍会显示

为了得到你想要的东西,我建议研究斑点检测,这可能是最简单的物体检测形式。一旦你能检测到斑点,我建议你为大小设置一个阈值,并根据这个阈值决定一个物体是否值得做出反应