人臉檢測是人工智慧最常見的應用之一。從智慧手機的攝像頭應用到Facebook的標籤建議(Tag Suggestions),人臉檢測的應用每天都在增加。
人臉檢測是計算機程式在數字影像中識別和定位人臉的能力。
隨著應用對人臉檢測功能的需求越來越大,每個人都希望在自己的應用中使用人臉檢測,這樣他們就不會在競爭中落後。
在這篇文章中,我將教你如何在3分鐘內為自己建立一個人臉檢測程式。
你需要安裝以下python庫:
opencv-python
cvlib
下面是匯入所需python庫、從儲存中讀取影像並顯示它的程式碼。
# 匯入必要的庫
import cv2
import matplotlib.pyplot as plt
import cvlib as cv
image_path = 'couple-4445670_640.jpg'
im = cv2.imread(image_path)
plt.imshow(im)
plt.show()
在載入的影像中檢測人臉,在檢測到的人臉周圍繪製一個邊界框,顯示最終檢測到的人臉影像的程式碼如下。
faces, confidences = cv.detect_face(im)
# 迴圈遍歷檢測到的人臉並新增邊界框
for face in faces:
(startX,startY) = face[0],face[1]
(endX,endY) = face[2],face[3]
# 在人臉上繪製矩形邊界框
cv2.rectangle(im, (startX,startY), (endX,endY), (0,255,0), 2)
# 顯示結果
plt.imshow(im)
plt.show()
是的,人臉檢測的程式到此就完成了!
要了解更多關於cvlib庫的資訊,可以訪問下面的連結。
- cvlib[1]
為了理解人臉檢測是如何工作的,這裡有一些進一步的閱讀材料:
- FaceNet:用於人臉識別和聚類的統一嵌入[2]
- 卷積神經網路課程[3]
- 深度學習計算機視覺:CNN, OpenCV, YOLO, SSD & GANs[4]
[1]: https://www.cvlib.net
[2]: https://arxiv.org/abs/1503.03832
[3]: https://www.coursera.org/learn/convolutional-neural-networks
[4]: https://www.udemy.com/master-deep-learning-computer-visiontm-cnn-ssd-yolo-gans/