OpenCV Java Yüz Tespiti – Haar Cascade Classifier

OpenCV Yüz Tanıma – Haar cascade classifier (Proje kaynak kodunu indirmek için tıklayın) OpenCV Nesne Tespiti(Yüz ve Göz Tespiti Örneği) Opencv kurulumu ve bazı örnekleri daha önce yapmıştık aynı kategorideki (Opencv) diğer yazılara göz atabilirsiniz. Bu yazıda opencv ve java kullanarak bir resim üzerindeki insan yüzlerini nasıl tespit edebileceğimizi göreceğiz.İki farklı şekilde çalışabilmektedir ilk olarak web kamera üzerinden alınan fotoğrafdaki insan yüzlerini tespit edebiliyor yada yolunu verdiğiniz bir resim üzerindeki yüzleri tespit edebilmektedir.Tanımlanan yüz bir kare içerisine alınarak yeni bir resim dosyası olarak çalışma dizinine kaydedilmektedir. 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.highgui.Highgui; import org.opencv.highgui.VideoCapture; import org.opencv.objdetect.CascadeClassifier; //genereted by mesut-pc public class FaceDetector{ public static void main(String[] args) { System.loadLibrary(Core.NATIVE_LIBRARY_NAME); //bu xml ile ilgili detaylı bilgiyi dosya içerisinde okuyabilirsiniz CascadeClassifier faceDetector = new CascadeClassifier(FaceDetector.class.getResource(“Face.xml”).getPath()); //Bir resim dosyası üzerindeki yüzleri yakalamak için Mat image = Highgui.imread(FaceDetector.class.getResource(“kemalsunal.jpg”).getPath()); /* //Web kamerası ile yüzleri yakalamak için VideoCapture kullanılabilir //0 varsayılan kameradır 1,2,3,4 … sistemdeki diğer kameralardır * Mat image=new Mat(); *VideoCapture videoCapture=new VideoCapture(0); *videoCapture.read(image); */ MatOfRect faceDetections = new MatOfRect(); //image nesnemiz taranacak resmimizdir faceDetector.detectMultiScale(image, faceDetections); //faceDetections yakalanan yüzleri barındırmaktadır bunu array olarak aldığımızda kaç adet yüz belirlenmiş bulabiliriz System.out.println(String.format(“Sahnede %s yüz tespit edildi”, faceDetections.toArray().length)); //Yakalanan yüzler içerisinde döner for