logo

Опенцв Питхон програм за препознавање лица

Циљ датог програма је да детектује објекат од интереса (лице) у реалном времену и да настави да прати исти објекат. Ово је једноставан пример како детектовати лице у Питхон-у. Можете покушати да користите узорке за обуку било ког другог објекта по вашем избору да бисте били откривени обучавањем класификатора на траженим објектима. Ево корака за преузимање захтева у наставку.

Кораци:

  1. Преузмите Питхон 2.7.к верзију нумпи и верзију Опенцв 2.7.к. Проверите да ли је ваш Виндовс 32-битни или 64-битни компатибилан и инсталирајте у складу са тим.
  2. Уверите се да је нумпи покренут у вашем Питхон-у, а затим покушајте да инсталирате опенцв.
  3. Ставите датотеке хаарцасцаде_еие.кмл & хаарцасцаде_фронталфаце_дефаулт.кмл у исти фолдер (везе дате у коду испод).

Имплементација



Python
# OpenCV program to detect face in real time # import libraries of python OpenCV  # where its functionality resides import cv2 # load the required trained XML classifiers # https://github.com/opencv/opencv/tree/master # data/haarcascades/haarcascade_frontalface_default.xml # Trained XML classifiers describes some features of some # object we want to detect a cascade function is trained # from a lot of positive(faces) and negative(non-faces) # images. face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') # https://github.com/opencv/opencv/tree/master # /data/haarcascades/haarcascade_eye.xml # Trained XML file for detecting eyes eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml') # capture frames from a camera cap = cv2.VideoCapture(0) # loop runs if capturing has been initialized. while 1: # reads frames from a camera ret img = cap.read() # convert to gray scale of each frames gray = cv2.cvtColor(img cv2.COLOR_BGR2GRAY) # Detects faces of different sizes in the input image faces = face_cascade.detectMultiScale(gray 1.3 5) for (xywh) in faces: # To draw a rectangle in a face  cv2.rectangle(img(xy)(x+wy+h)(2552550)2) roi_gray = gray[y:y+h x:x+w] roi_color = img[y:y+h x:x+w] # Detects eyes of different sizes in the input image eyes = eye_cascade.detectMultiScale(roi_gray) #To draw a rectangle in eyes for (exeyeweh) in eyes: cv2.rectangle(roi_color(exey)(ex+ewey+eh)(0127255)2) # Display an image in a window cv2.imshow('img'img) # Wait for Esc key to stop k = cv2.waitKey(30) & 0xff if k == 27: break # Close the window cap.release() # De-allocate any associated memory usage cv2.destroyAllWindows() 

Излаз:

излаз' title=

Следећи чланак:

Опенцв Ц++ програм за детекцију лица Креирај квиз