Top Ad unit 728 × 90

Latest news

recent

Biên dịch OPENCV cho ARM trên Linux



Trong bài viết này, tôi sẽ hướng dẫn biên dịch thư viện OpenCV với môi trường ARM Linux nhằm tạo ra thư viện phục vụ các ứng dụng viết cho các hệ thống nhúng dùng CPU kiến trúc ARM. 

Chúng ta sẽ giả sử đã có một máy ảo chạy Ubuntu Server cài đặt sẵn Samba, SSH server như  hướng dẫn trong bài viết trước đây. Chúng ta sẽ làm việc trong thư mục /home/bioz/workdir/ theo các bước cụ thể như sau, các câu lệnh được gõ bằng cửa sổ console của xshell kết nối với máy ảo qua ssh hay dùng trực tiếp trên giao diện console của hệ điều hành Ubuntu.

$ cd /home/bioz/workdir/

- Cài đặt môi trường phát triển

$ sudo apt-get install build-essential

- Cài đặt CMake, công cụ quản lý make file, tập tin cấu hình cho biên dịch

$ sudo apt-get install cmake

- Cài đặt GIT để tải mã nguồn từ các hệ thống quản lý mã nguồn GIT

$ sudo apt-get install git

- Cài đặt GNU ARM tool-chain:

$ sudo apt-get install gcc-arm-linux-gnueabi
$ sudo apt-get install g++-arm-linux-gnueabi

- Tải mã nguồn OpenCV từ GIT

$ git clone https://github.com/Itseez/opencv.git

- Kiểm tra version của g++ và gcc mới cài đặt bằng cách gỏ lệnh

$ ls /usr/bin

bạn sẽ thấy các tập tin arm-linux-gnueabi-g++-4.7arm-linux-gnueabi-gcc-4.7 trong đó 4.7 là version của trình biên dịch

- Sửa tập tin cấu hình biên dịch của OpenCV

mở file cấu hình biên dịch cho môi trường arm trong mã nguồn opencv vừa tải về 

./opencv/platforms/linux/arm-gnueabi.toolchain.cmake

thay đổi giá trị GCC_COMPILER_VERSION về con số thích hợp, ở đây là 4.7.

- Tạo thư mục và tiến hành tạo make file

$ cd opencv
$ mkdir build
$ cd build

và dùng cmake tạo make file:

$ cmake -DSOFTFP=ON -DCMAKE_TOOLCHAIN_FILE=../platforms/linux/arm-gnueabi.toolchain.cmake ..

- Muốn biên dịch thư viện OpenCV dưới hình thức static library, ta thêm tùy chọn -DBUILD_SHARED_LIBS=OFF, bật / tắt CUDA, ví dụ test ta thêm các tùy chọn -DWITH_CUDA=ON/OFF -DBUILD_TESTS=ON/OFF -DBUILD_PERF_TESTS=ON/OFF vào câu lệnh cmake.

- Biên dịch và chép kết quả

chạy ‘make’ để biên dịch và ‘make install' để chép các thư việc vào thư mục con 'install':

$ make 
$ make install
- Trong tình huống bạn gọi lại cmake để tạo mới cấu hình biên dịch, đôi khi cần $ make clean để đảm bảo mọi thứ được biên dịch lại từ đầu.


Như vậy là quá trình biên dịch OpenCV đã xong, kết quả cuối cùng là bạn có một tập các thư viện *.so (shared library) hay *.a (static library), các tập tin header mà có thể được dùng trong ứng dụng viết cho môi trường ARM cần sử dụng OPEN CV.



Binh Nguyen - Bioz
Biên dịch OPENCV cho ARM trên Linux Reviewed by Bioz Nguyen on 12:33:00 AM Rating: 5
All Rights Reserved by IEEV © 2009 - 2016
Powered By Blogger, Designed by Sweetheme

Contact Form

Name

Email *

Message *

Powered by Blogger.