1. Dlib là gì?

Dlib là thư viện phần mêm mã nguồn mở chạy được trên nhiều nền tảng được viết bằng ngôn ngữ C++ bởi Davis King. Dlib hỗ trợ nhiều công việc khác nhau như threading, networking, numerical operations, machine learning, computer vision, compression.

Trong lĩnh vực computer vision, dlib có các api giúp chúng ta thực hiện các công việc như:

  • Facial landmark detection
  • Correlation tracking
  • Deep metric learning

2. Các bước cài đặt dlib

2.1. Cập nhật hệ điều hành Ubuntu
$ sudo apt-get update
$ sudo apt-get upgrade
2.2. Cài đặt các thư viện yêu cầu bởi dlib

dlib yêu cầu bốn thư viện chính:

  • Boost: là tập hợp các thư viện C++ giúp lập trình viên không phải đau đầu vật lộn với các tác vụ cơ bản nhưng khá khó khăn để code từ đầu như đại số tuyến tính, xử lý đa luồng, xử lý ảnh cơ bản hay kiểm thử unit
  • Boost.Python: cung cấp khả năng tương tác giữa ngôn ngữ C++ và ngôn ngữ Python
  • CMake: là một bộ công cụ mã nguồn mở dùng để biên dịch, kiểm thử và đóng gói phần mềm.
  • X11/XQuartx: cung cấp một framework cơ bản phát triển GUI rất phổ biến trên các hệ điều hành giống Unix

Để cài đặt CMake, Boost, Boost.Python và X11, chúng ta sử dụng apt-get như sau:

$ sudo apt-get install build-essential cmake
$ sudo apt-get install libgtk-3-dev
$ sudo apt-get install libboost-all-dev

Nếu như chưa cài pip (công cụ để cài đặt, quản lý các package của Python), chúng ta có thể cài pip bằng cách sau:

$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py
2.3. Cài đặt virtualenv và virtualenvwrapper.

Hai package này giúp chúng ta phân tách các môi trường phát triển độc lập cho từng project.

$ sudo pip install virtualenv virtualenvwrapper
$ sudo rm -rf ~/.cache/pip

Sau khi đã cài đặt hai package này, chúng ta cần cập nhật file .bashrc

# virtualenv and virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

Để những thay đổi trong file .bashrc có hiệu lực, chúng ta có thể thực hiện một trong các cách sau:

  • Logout rồi login lại
  • Đóng terminal rồi mở lại
  • Thực hiện câu lệnh: $ source ~/.bashrc
2.4. Tạo và đăng nhập vào môi trường riêng

Đầu tiên, chúng ta tạo môi trường phát triển riêng cho việc cài đặt dlib (ví dụ môi trường dl)

  • Đối với Python 2
$ mkvirtualenv dl
  • Đối với Python 3
$ mkvirtualenv dl -p python3

Sau đó, đăng nhập vào môi trường dl này bằng câu lệnh:

$ workon dl
2.5. Cài đặt dlib với Python bindings

Để hoạt động, dlib không yêu cầu các thư viện Python, tuy nhiên nếu chúng ta sử dụng dlib trong công việc liên quan đến xử lý ảnh, computer vision thì nên cài đặt thêm các thư viện Numpy, SciPy, Scikit-image. Các thư viện này được cài đặt một cách dễ dàng bằng pip

$ pip install numpy
$ pip install scipy
$ pip install scikit-image

Sau đó, chúng ta cài đặt dlib cũng bằng pip

$ pip install dlib

Tất nhiên, chúng ta hoàn toàn có thể cài đặt dlib bằng việc biên dịch mã nguồn trực tiếp (tham khảo tại đây).
Câu lệnh này sẽ tải dlib package từ PyPI, tự động config thông qua CMake và biên dịch, cài đặt dlib trên hệ thống.

2.6. Kiểm tra dlib đã cài đặt

Để kiểm tra dlib cài đặt ok hay chưa, chúng ta chỉ việc mở Python shell và thử import dlib như sau:

$ python
>>> import dlib

3. Kết luận

Thông quan bài viết này chúng ta đã nắm được cách cài đặt dlib trên hệ điều hành Ubuntu. Cách cài đặt vô cùng đơn giản, bất cứ ai với kiến thức cơ bản sử dụng hệ điều hành Linux (Ubuntu) cũng đều có thể thực hiện được. Trong bài viết sau, chúng ta sẽ sử dụng dlib để thực hiện các tác vụ thú vị trong lĩnh vực computer vision. Hẹn gặp lại :)

4. Tài liệu tham khảo