Rumah >pembangunan bahagian belakang >Tutorial Python >\'Ralat: (-215) !empty() dalam function detectMultiScale: Mengapa Pengesanan Wajah Saya Gagal dan Bagaimana Saya Boleh Membetulkannya?\'
Pengendalian Ralat: Menyelesaikan "ralat: (-215) !empty() dalam fungsi detectMultiScale" dalam OpenCV
Apabila cuba menggunakan detectMultiScale() untuk mengesan wajah dalam imej, anda mungkin menghadapi ralat "ralat: (-215) !empty() dalam fungsi detectMultiScale." Ralat ini biasanya timbul apabila pengelas lata muka, komponen penting untuk pengesanan muka, tidak dimuatkan dengan betul.
Untuk menyelesaikan isu ini, adalah penting untuk memastikan bahawa laluan yang diberikan kepada fail XML lata Haar adalah sah . Dalam coretan kod yang disediakan, pengelas lata sedang dimuatkan dengan laluan berkod keras, yang mungkin tidak tepat untuk sistem anda. Sebaliknya, OpenCV menyediakan sifat yang mudah untuk mengesan fail ini secara automatik.
Kod yang dikemas kini di bawah menunjukkan cara untuk membetulkan isu menggunakan sifat OpenCV:
<code class="python">import cv2 # Use OpenCV's property to locate the Haar cascade XML files face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml') eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml') # Proceed with face detection img = cv2.imread('2015-05-27-191152.jpg') gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) faces = face_cascade.detectMultiScale(gray, 1.3, 5) for (x, y, w, h) in faces: img = cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 2)</code>
Dengan menggunakan harta OpenCV, anda boleh memastikan bahawa pengelas lata muka dimuatkan dengan betul, menyelesaikan isu "ralat: (-215) !empty() dalam function detectMultiScale".
Atas ialah kandungan terperinci \'Ralat: (-215) !empty() dalam function detectMultiScale: Mengapa Pengesanan Wajah Saya Gagal dan Bagaimana Saya Boleh Membetulkannya?\'. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!