Eyvallah hocam ellerine sağlık Lider doğru işleri yapar; Ynetici işleri doğru yapar;

ilgilenen arkadaşlar haartraning'i araştırsınlar bunun sayesinde aynen nasıl yüz tanıyorsa aynı şekilde objede tanımayı gretebiliyorsunuz. Mühendis kahveyi projeye dnüştüren bir insan evladıdır.

Python ile OpenCV kütüphanesini kullanarak yüz bulma ve bulunan yüz üzerinde basitçe ağız, gz ve kaş hareketlerini izleme, ağızda, gzde ve kaşta oluşan değişimleri belirli değerler vererek dndürmektedir. Çok basitçe kısa bi zaman içerisinde yazdığım için program ilk çalıştığında bi kalibrasyon gerektirir, ilgilenenlerin işine yarayabilir. #!/usr/bin/pythonimport os, sysimport cv2. cv as cvimport randomcv. NamedWindow("FaceWindow", 1) # OpenCV icin Pencere aciliyor. capture = cv. CreateCameraCapture(0) # Kameradan kayit aliniyor. cascade_face = cv. Load cascade_eyepair = cv. Load cascade_mouth = cv. Load storage = cv. CreateMemStorage (0)image_scale = 1def detect : ft1 = mt1 = (0,0) by = 30 gray = cv. CreateImage , 8, 1) cv. CvtColor(img, gray, cv. CV_BGR2GRAY) cv. EqualizeHist faces = cv. HaarDetectObjects(gray, cascade_face, storage, 1.1, 2, 1, (50, 50)) width = 300 height = 300 rp1 = /2, /2) rp2 = /2+width, /2+height) cv. Rectangle(img, rp1, rp2, cv. RGB(255, 255, 0), 2, 8, 0) if faces: , n) = faces ft1 = ft2 = color = cv. RGB(255, 0, 0) if rp1 < ft1 and rp1 < ft1 and rp2 > ft2 and rp2 > ft2 : color = cv. RGB(0, 255, 0) cv. Rectangle(img, ft1, ft2, color, 2, 8, 0) eyeroi = (x, int(y+(h/5.5)), w, int(h/3.0)) mouthroi = (x, int(y+(h/1.5)), w, int(h/2.5)) browroi = (x, int(y+(h/7.0)), w, int(h/6.0)) cv. SetImageROI eyes = cv. HaarDetectObjects(gray, cascade_eyepair, storage, 1.15, 3, 0, (25, 15)) cv. SetImageROI cnt_img = cv. CreateImage , 8, 1) contours = cv. FindContours(gray, storage, cv. CV_RETR_LIST, cv. CV_CHAIN_APPROX_SIMPLE, (0,0)) y = by = max if contours: cv. DrawContours (gray, contours, (255,0,0), (0,255,0), 0, 1, cv. CV_AA, (0, 0)) #cv. ShowImage # Resim Pencere icinde gosteriliyor. cv. SetImageROI mouths = cv. HaarDetectObjects(gray, cascade_mouth, storage, 1.15, 3, 0, (30, 30)) cv. ResetImageROI if eyes: for , n) in eyes: pt1 = (x + eyeroi , y + eyeroi ) pt2 = (x + w + eyeroi , y + h + eyeroi ) cv. Rectangle(img, pt1, pt2, cv. RGB(0, 255, 0), 2, 8, 0) if mouths: for , n) in mouths: mt1 = (x + mouthroi , y + mouthroi ) mt2 = (x + w + mouthroi , y + h + mouthroi ) cv. Rectangle(img, mt1, mt2, cv. RGB(0, 255, 0), 2, 8, 0) return ft1, mt1, byif name " main ": counter = 25 fth = 0 mth = 0 oldb = 0 sumval = 0 aval = 0 f = 5 while True: img = cv. QueryFrame # Kayittan her bir kare icin resim olusturuluyor. font = cv. InitFont(cv. CV_FONT_HERSHEY_SIMPLEX, 1, 1, 0, 2, 3) face, mouth, brow = detect if counter > 0: cv. PutText(img,"Get your position for calibrate. %d" % , (0,25), font, (0,255,0)) counter -= 1 fth = face mth = mouth oldb = brow else: counter = 0 if (mouth -mth > face -fth): val = (mouth -mth)-(face -fth) sumval += val f -= 1 if f 0: f = 5 aval = sumval/f sumval = 0 cv. PutText(img,"Rank of mouth: %d" % (aval/5), (0,25), font, (0,0,150)) if abs > 7: cv. PutText(img,"Brow motion detected.", (0,50), font, (0,0,200)) cv. ShowImage # Resim Pencere icinde gosteriliyor. if cv. WaitKey(10) 27: # ESC tusunu bekliyor. break windowsta derlemedim hiç, source olarak bu şekilde duruyor, haarcascade'leri opencv'nin sample klasrü altında bulabilirsiniz. Bizim olduğumuz her yerde herşey bizim yüzümüzden olmuştur. Ben benim amk bana bişey olmasın!