Bilgisayar
OKUDUĞUNUZ KONU
Python Opencv İle Resimdeki Yüzleri Tespit Etme
0

Python Opencv İle Resimdeki Yüzleri Tespit Etme

Yazar : Utkan Subaşı6 Ağustos 2020

Merhaba, bugün sizlerle cv2 ve haarcascade kütüphanelerini kullanarak herhangi bir resimdeki yüzleri bulmaya çalışacağız.OpenCV (Açık Kaynak Bilgisayarlı Görüş Kütüphanesi), açık kaynaklı bir bilgisayar görüş ve makine öğrenimi yazılım kütüphanesidir. OpenCV, bilgisayarla görüş uygulamaları için ortak bir altyapı sağlamak ve ticari ürünlerde makine algısının kullanımını hızlandırmak için inşa edilmiştir. BSD lisanslı bir ürün olan OpenCV, işletmelerin kodu kullanmasını ve değiştirmesini kolaylaştırır. Kütüphane, hem klasik hem de son teknoloji bilgisayar görüş ve makine öğrenme algoritmalarının kapsamlı bir setini içeren 2500’den fazla optimize algoritmaya sahiptir.

Bu algoritmalar yüzleri algılamak ve tanımak, nesneleri tanımlamak, videolardaki insan eylemlerini sınıflandırmak, kamera hareketlerini izlemek, hareketli nesneleri izlemek, nesnelerin 3B modellerini çıkarmak, stereo kameralardan 3B nokta bulutları oluşturmak, yüksek çözünürlük üretmek için görüntüleri birleştirmek için kullanılabilir tüm sahnenin görüntüsü, bir görüntü veritabanından benzer görüntüler bulmak, flaş kullanarak çekilen görüntülerden kırmızı gözleri kaldırmak, göz hareketlerini takip etmek, sahne tanımak ve artırılmış gerçeklik, üzerine bindirmek için belirteçler oluşturmak vb işlemleri yapabilir.

OpenCV de 47 binden fazla kullanıcı vardır ve tahmini indirme sayısı 18 milyonu aştı. Kütüphane şirketler, araştırma grupları ve devlet kurumları tarafından yaygın olarak kullanılmaktadır.

İlk olarak önceden uzun uğraşlar sonucu yazılmış 30000 satırlık haarcascadefrontalface.xml kütüphanesini indirmemiz gerek.

kutuphaneyi buradan indirebilirsiniz

Kütüphaneyi indirdikten sonra bir de cv2 kütüphanesini kurmamız gerek ben bunun nasıl yapılacağını aşağıdaki videoda PyCharm için anlattım.

 

Kodda satırları elimden geldiğince detaylandırdım

NOT: indirdiğiniz resim projenin dosya konumda olmalıdır ve ismini ornek1 yaparsanız kodda hata çıkmayacaktır

NOT2 : videoda belirmeyi unutmuşum pycharm üzerinden projenin dosyasına sağ tık yapıp “new file > new python file” yaparak kod yazma alanı oluşturbilirsiniz.

 

KOD:

import cv2 #kütüphane ekleme işlemi

yuzprogramı = cv2.CascadeClassifier("kutuphane.xml") #kullanacağmız hazır yüz bulma programı

resim = cv2.imread("ornek1.jpg") #resmimizi belirtme

griresim = cv2.cvtColor(resim,cv2.COLOR_BGR2GRAY)#resmimizi griye donuştürme

program = yuzprogramı.detectMultiScale(griresim,1.3,3)#programı çalıştırma (taranacak resim,büyütme oranı,kontrol sayısı)



for (a,b,c,d) in program :
    cv2.rectangle(resim,(a,b),(a+c,b+d),(255,0,0),2) #burada bulduğumuz insan yüzlerini kare içide alma işlemini yapıyoruz
    #(yüzlerin gösterileceği resim,(köşe ayarlama)(köşe ayarlama),(karenin rengi),karenin kalınlığı)

cv2.imshow("kapatmak için herhangi bir tuşa basınız",resim) #resmin son halini gösterme

cv2.waitKey(0)
cv2.destroyAllWindows() #herhangi bir tuşa basınca kapatmak için

 

 

SİZCE NASIL OLMUŞ?
Beğendim
100%
İlginç
0%
Eh İşte
0%
Anlamadım
0%
Kötü
0%
Berbat
0%
YAZAR HAKKINDA
Utkan Subaşı
Utkan Subaşı
Arduino'ya 11 yaşında başladım. Çok sevdim. Devam ettim. Tübitak Ortaokullar Arası Yapılan Yarışmada 3. Oldum. ARDUİNO'YA DEVAMM...
YORUMLAR

YORUM YAP