La classe CascadeClassifier est utilisée pour charger des fichiers de classificateur et détecter les objets requis dans les images.
La méthode detectMultiScale() de cette classe peut détecter plusieurs objets de différentes tailles. Cette méthode accepte un objet de classe Mat −
pour enregistrer l'image d'entrée.
Un objet de classe MatOfRect utilisé pour stocker les visages détectés.
Pour obtenir le nombre de visages dans l'image −
Utilisez la classe CascadeClassifier pour charger le fichier lbpcascade_frontalface.xml.
Appelez la méthode detectMultiScale().
Convertissez l'objet MatOfRect en tableau.
La longueur du tableau correspond au nombre de visages dans l'image.
import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.MatOfRect; import org.opencv.core.Point; import org.opencv.core.Rect; import org.opencv.core.Scalar; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; import org.opencv.objdetect.CascadeClassifier; public class FaceDetection { public static void main (String[] args) { //Loading the OpenCV core library System.loadLibrary( Core.NATIVE_LIBRARY_NAME ); //Reading the Image from the file String file ="D:\Images\faces.jpg"; Mat src = Imgcodecs.imread(file); //Instantiating the CascadeClassifier String xmlFile = "lbpcascade_frontalface.xml"; CascadeClassifier classifier = new CascadeClassifier(xmlFile); //Detecting the face in the snap MatOfRect faceDetections = new MatOfRect(); classifier.detectMultiScale(src, faceDetections); System.out.println(String.format("Detected %s faces", faceDetections.toArray().length)); //Drawing boxes for (Rect rect : faceDetections.toArray()) { Imgproc.rectangle( src, new Point(rect.x, rect.y), new Point(rect.x + rect.width, rect.y + rect.height), new Scalar(0, 0, 255), 3 ); } //Writing the image Imgcodecs.imwrite("D:\Images\face_Detection.jpg", src); System.out.println("Image Processed"); } }
No of faces detected: 3
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!