cvlib

Younghwan Cha·2022년 10월 9일
0

OpenCV

목록 보기
6/10

cvlib?

마스크 착용 검출기를 만들려고 보니 얼굴 인식 라이브러리에 관해 알게되어 정리해보려 한다.
cvlib 은 파이썬 오픈소스 컴퓨터 비전 라이브러리이다.
[GitHub Page]
https://github.com/arunponnusamy/cvlib

Face Detection

detect_face() 함수를 사용하면 검출된 얼굴들에

  • bounding box corners
  • corresponding confidence
    위 두가지를 얻을 수 있다. 코드가 정말 간단하다.
import cvlib as cv
faces, confidences = cv.detect_face(image)

...정말 간단하다.
cvlib 은 얼굴 인식을 위해서 OpenCV 의 dnn 모듈과 pre-trained caffemodel 을 사용한다.

Seriously, that's all it takes to do face detection with cvlib. Underneath it is using OpenCV's dnn module with a pre-trained caffemodel to detect faces.

한번 실행해보도록 하자.

직접 한번 사용해 보도록 하자.

cvlibTest.py

코드는 다음과 같이 간단하다

import cv2
import cvlib as cv

img = cv2.imread('img.jpg')
faces, confis = detect_face(img)

for face, confi in zip(faces, confis):
	startX, startY = face[0], face[1]
    endX, endY = face[2], face[3]
    textX, textY = endX + 5, startY
    
    cv2.rectangle(img, (startX, startY), (endX, endY), (0, 255, 0), 2)
	cv2.putText(img, "face, {:.3f}".format(confi), 
    				(textX, textY), cv2.FONT_HERSHEY_COMPLEX, 1, (0, 255, 0), 2, cv2.LINE_AA)

cv2.imshow("cvlibTest", img)
cv2.waitKey()
cv2.imwrite("./static/cvlibTestResult.jpg", img)
cv2.destroyAllWindows()

그렇다면 우리의 진짜 목적인 마스크를 착용한 얼굴도 잘 인식하는지 한번 테스트 해보자.

다른 요소에 의해서 가려지지 않으면 잘 인식한다!
이제 이걸 활용해서 마스크 디텍션 프로그램을 만들어보자.

profile
개발 기록

0개의 댓글