如何使眼睛的 ROI 成为单个矩形

问题描述

嗨,我需要帮助确定眼睛 roi 的边界,因为它在左边,所以要在中间。很多眼睛的例子都是分开的和/或呈圆形的。

img = cv2.imread('man1.png')
newImg = cv2.resize(img,(600,600))
#gray = cv2.cvtColor(newImg,cv2.COLOR_BGR2GRAY)
#gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)

faces = faceCascade.detectMultiScale(newImg,scaleFactor=1.1,minNeighbors=5,#minSize=(60,60),flags=cv2.CASCADE_SCALE_IMAGE)
for (x,y,w,h) in faces:
    cv2.rectangle(newImg,(x,y),(x + w,y + h),(0,0),1)
    faceROI = newImg[y:y+h,x:x+w]
    #cv2.imwrite(str(w) + str(h) + '_faces.jpg',faceROI)
    
    #roi_gray = gray[y:y + h,x:x + w] 
    #roi_color = frame[y:y + h,x:x + w]
    
    eyes = eyeCascade.detectMultiScale(faceROI)
    smiles = mouthCascade.detectMultiScale(faceROI,scaleFactor=1.6,minNeighbors=5)
   
    for (ex,ey,ew,eh) in eyes:
        cv2.rectangle(faceROI,(ex+w,y+eh),-1)
  

    # display the resulting frame
cv2.imshow('Image',newImg)
if cv2.waitKey(1) & 0xFF == ord('q'):
    break

last = cv2.imwrite('faces_detected.png',faceROI)
cv2.destroyAllWindows()

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)