Có nhiều thư viện nhận diện khuôn mặt khác nhau, nhưng face_recognition nhận diện khá chính xác & dễ sử dụng. Bài viết này giới thiệu cách cài đặt, sử dụng lib face_recognition trên Windows. Tên lib này không có 1 thương hiệu nào mà đặt tên bằng từ khóa chung, nên mình sẽ viết tắt là FR.
Bài viết này chỉ tập trung vào việc sử dụng lib, còn việc build lib sẽ viết ở bài khác.
Tổng quan
Đây là dự án mã nguồn mở viết bằng Python, sử dụng Dlib để nhận dạng khuôn mặt. Tuy nhiên hiện nay cài đặt bằng lệnh ở trang chủ của lib thì bị lỗi, do đó mình sẽ cung cấp cách cài đặt khác.
Vấn đề nằm ở chỗ dlib và FR versoin mới nhất không tương thích với nhau. Do đó cần chỉ định version phù hợp để cài đặt được.
Cài đặt
Bài viết này sử dụng Python 3.6.5 amd64 để test (Windows x86-64 executable installer).
Các bạn copy nội dung bên dưới rồi save thành file requirement.txt
cmake
Pillow==5.2.0
https://pypi.python.org/packages/da/06/bd3e241c4eb0a662914b3b4875fc52dd176a9db0d4a2c915ac2ad8800e9e/dlib-19.7.0-cp36-cp36m-win_amd64.whl#md5=b7330a5b2d46420343fbed5df69e6a3f
face_recognition==1.2.3
numpy==1.17.2
Sau đó gõ lệnh bên dưới để cài đặt các package được chỉ định trong file requirement.txt
pip3 install -r requirements.txt
Chờ cài xong các package là xong.
Test thử
Bạn có thể download các file example ở repo github để chạy thử: https://github.com/ageitgey/face_recognition/tree/master/examples
Trong đó có các sẵn file example khá dễ hiểu:
– face_distance.py tìm sự khác biệt giữa 2 khuôn mặt, con số càng nhỏ là càng giống
– find_facial_features_in_picture.py tìm đặc trưng trên khuôn mặt
– recognize_faces_in_pictures.py load hình ảnh ông Obama và Biden, sau đó lấy 1 ảnh khác của ông Obama để so sánh
….
Download
Github: https://github.com/ageitgey/face_recognition
Trang chủ: https://pypi.org/project/face_recognition/
Các lỗi xảy ra
01. Crash khi encoding ảnh bên dưới