簡體   English   中英

人臉檢測中的cv2錯誤

[英]cv2 error in face detection

我編寫了一個程序,該程序將導入用於面部識別和分析的圖像,但是,我收到此錯誤

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    cv2.error: /home/piwheels/opencv-
    python/opencv/modules/imgproc/src/color.cpp:10638: error: (-215) scn == 3 || scn == 4 in function cvtColor

這是代碼的主要部分,它將導入圖像:

frame = vs.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.equalizeHist(gray)
faces = faceDetector(gray, 0)

for (i, face) in enumerate(faces):

    facialLandmarks = facialLandmarkPredictor(gray, face)
    facialLandmarks = face_utils.shape_to_np(facialLandmarks)

    (x, y, w, h) = face_utils.rect_to_bb(face)
    cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
    cv2.putText(frame, '#{}'.format(i+1), (x, y-10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)

    landmarksArray = realTimeFacialLandmarks.getDistance(facialLandmarks)
    realTimeFacialLandmarks.facialPointJson(t,landmarksArray)

    for (a, b) in facialLandmarks:
        cv2.circle(frame, (a, b), 1, (0, 0, 255), -1)

我無法糾正此文件中的錯誤,有人可以指出這個錯誤嗎?

實際上可能是從視頻源捕獲幀的問題。 您很可能向cv2.cvtColor發送了錯誤或空白的圖像。 我建議研究一下發生了什么其他信息,例如檢查vs.isOpened()的返回值(如果成功打開vs.isOpened() true),以及返回的幀的圖像屬性,例如frame.shape ,其外觀應類似於(640, 480, 3)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM