Chuẩn bị môi trường phát triển ứng dụng xử lý ảnh sử dụng thư viện OpenCV trên nền tảng máy tính Linux. Bài viết này hướng dẫn:
– Cài đặt thư viện OpenCV trên máy tính Linux
– Viết ứng dụng Qt sử dụng thư viện OpenCV biên dịch chạy trên máy tính Linux
Mục lục
Bắt đầu nhanh
Build core modules
# Install minimal prerequisites (Ubuntu 18.04 as reference)
sudo apt update && sudo apt install -y cmake g++ wget unzip
# Download and unpack sources
wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip
unzip opencv.zip
# Create build directory
mkdir -p build && cd build
# Configure
cmake ../opencv-master
# Build
cmake --build .
Build with opencv_contrib
# Install minimal prerequisites (Ubuntu 18.04 as reference)
sudo apt update && sudo apt install -y cmake g++ wget unzip
# Download and unpack sources
wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/master.zip
unzip opencv.zip
unzip opencv_contrib.zip
# Create build directory and switch into it
mkdir -p build && cd build
# Configure
cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-master/modules ../opencv-master
# Build
cmake --build .
Quy trình chi tiết
Cài đặt compiler và build tools
Để biên dịch OpenCV, bạn sẽ cần một trình biên dịch C++. Thông thường chúng ta thường dùng G++/GCC hoặc Clang/LLVM:
- Install GCC: sudo apt install -y g++
- Hoặc Clang: sudo apt install -y clang
- OpenCV dùng CMake build configuration tool: sudo apt install -y cmake
- CMake có thể tạo các tập lệnh cho các hệ thống xây dựng khác nhau: ví dụ make, ninja:
- Install Make: sudo apt install -y make
- Hoặc Ninja: sudo apt install -y ninja-build
- Install công cụ getting and unpacking sources:
- wget and unzip: sudo apt install -y wget unzip
- Hoặc git: sudo apt install -y git
Download sources
Có hai cách lấy OpenCV sources:
- Download trực tiếp qua trình duyệt hoặc bất kì công cụ download nào:
wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip
unzip opencv.zip
mv opencv-master opencv - Clone repository từ máy local sử dụng git:
git clone https://github.com/opencv/opencv.git
git -C opencv checkout master
Link GitHub và official download page.
Configure and build
- Tạo thư mục build:
mkdir -p build && cd build - Định cấu hình – tạo các build scripts cho preferred build system:
For make…
cmake ../opencv
or for ninja:
cmake -GNinja ../opencv - Xây dựng – chạy quy trình biên dịch thực tế:
Using make…
make -j4
or ninja:
ninja
Kiểm tra kết quả xây dựng
Sau khi build thành công, bạn sẽ tìm thấy các thư viện trong thư mục build/lib
và các tệp thực thi (test, samples, apps) trong thư mục build/bin
:
ls bin
ls lib
Các tệp CMake package sẽ nằm trong build root:
ls OpenCVConfig * .cmake
ls OpenCVModules.cmake
Install
Quá trình cài đặt chỉ sao chép các tập tin đến các vị trí được xác định trước và thực hiện vá lỗi. Thư viện được cài đặt bằng phương pháp này không được tích hợp vào system package registry và không thể tự động gỡ cài đặt. Không khuyến nghị cài đặt trên toàn hệ thống cho người dùng thông thường do có thể xảy ra xung đột với các package hệ thống.
Theo mặc định OpenCV sẽ được cài đặt vào thư mục /usr/local
, tất cả các tệp sẽ được sao chép vào các vị trí sau:
/usr/local/bin
– Các tập tin thực thi/usr/local/lib
– libraries (.so)/usr/local/cmake/opencv4
– cmake package/usr/local/include/opencv4
– header/usr/local/share/opencv4
– các tệp khác (ví dụ: định dạng XML)
Vì /usr/local
được truy cập bởi root user, cài đặt phải được thực hiện với các quyền nâng cao ( sudo
):
sudo make install
hoặc
sudo ninja install