gpt4 book ai didi

python - 查找在OpenCV Python中屏幕上是否可见绘制的矩形

转载 作者:行者123 更新时间:2023-12-02 16:30:05 30 4
gpt4 key购买 nike

我有一些代码,将根据其他参数使用cv2.rectangle函数绘制一个矩形。这是面部检测程序的一部分。使用imshow在图像中的屏幕上显示矩形。但是,由于矩形尺寸的可变性,在某些情况下矩形不可见。在绘制图像中矩形的代码行之后,如何检测矩形是否可见。我想要这样做,以便可以在未检测到脸部时找到。这是我的代码:

import numpy as np
import cv2

# multiple cascades: https://github.com/Itseez/opencv/tree/master/data/haarcascades

# https://github.com/Itseez/opencv/blob/master/data/haarcascades/haarcascade_frontalface_default.xml
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# https://github.com/Itseez/opencv/blob/master/data/haarcascades/haarcascade_eye.xml
eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml')

cap = cv2.VideoCapture(0)

while 1:
ret, img = cap.read()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.3, 5)

for (x,y,w,h) in faces:
cv2.rectangle(img,(x + (w / 4), y + (h / 4)),(x+(3 * w / 4),y + (3 * h / 4)),(255,0,0),2)

cv2.imshow('img',img)
k = cv2.waitKey(30) & 0xff
if k == 27:
break

cap.release()
cv2.destroyAllWindows()

谢谢!

最佳答案

在while循环中添加print len(faces)。如果其值为零,则表示没有人脸。没有矩形。

关于python - 查找在OpenCV Python中屏幕上是否可见绘制的矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46010541/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com