Cài đặt OpenCV cho Raspberry PI

Trong lĩnh vực lập trình nhúng thì Raspberry PI (gọi tắt là PI) là thiết bị đa năng bởi thiết kế như PC. Có nhiều cổng kết nối, xuất tín hiệu như Arduino và chạy được Linux. Những ưu điểm đó làm cho PI khá phổ biến trong giới lập trình nhúng chỉ sau Arduino.

Với cấu hình tương đương 1 điện thoại tầm trung, PI có thể xử lý được công việc nhẹ. Các vấn đề đơn giản có thể xử lý bằng PI cho gọn nhẹ, tiết kiệm điện & chi phí đầu tư. Bài viết này hướng dẫn cách cài đặt OpenCV lên PI bằng ngôn ngữ Python. Bài viết này không compile source code Opencv mà sử dụng bản built sẵn.

PI là thiết bị yếu do đó bạn không nên compile source OpenCV vì rất chậm mà dễ bị lỗi. Hãy sử dụng OpenCV đã built sẵn sẽ giúp bạn cài đặt nhanh chóng, ít trục trặc và ổn định. Cũng do yếu nên khó debug trên PI, bạn nên code hoàn chỉnh trên PC rồi deploy lên PI.

Giới thiệu

Pi3_Breakout_Feb_29_2016

Thiết bị mình sử dụng là Raspberry PI 3, model B có các đặc điểm nổi bật:
– 4 cổng USB 2.0, 1 cổng LAN, 1 HDMI, 1 cổng loa
– 2 socket kết nối màn hình và camera
– Hàng chân pin để xuất tín hiệu
– CPU 4 nhân 1.4GHz và 1GB RAM
– Có wifi, bluetooth
– Sử dụng nguồn 5V 2.5A, công suất max là 12.5W khi sử dụng màn hình, webcam. Thông thường chỉ tầm 5W là thoải mái, bạn có thể sử dụng pin dự phòng để cấp nguồn.

Do là máy tính nhúng nên OS được cài đặt lên thẻ nhớ, các bạn nên chọn thẻ nhớ tốc độ cao. Đừng mua thẻ nhớ rẻ mà làm gián đoạn hoặc làm chậm quá trình học. Nên mua thẻ của hãng lớn như SanDisk hoặc Samsung.

Nếu không lập trình nhúng thì có thể sử dụng làm thiết bị giải trí. Lướt web, nghe nhạc, xem youtube thoải mái (mặc dù hơi delay một chút).

Cài đặt OS

Các bạn nên chuẩn bị thẻ nhớ 32GB để cài đặt OS và các tool cần thiết (tối thiểu 16GB). Giá thị trường tầm 150k cho thẻ nhớ 32GB.

Mình download phiên bản Raspbian Stretch with desktop vì phiên bản này tiện lợi nhất. Download rồi giải nén được file 2018-11-13-raspbian-stretch.img (3.17GB) Sau đó dùng phần mềm Etcher để cài đặt OS lên thẻ.

steps-8006dca57323756b1b84fb9408742409

Các bước cài hệ điều hành lên thẻ rất đơn giản chỉ gồm 3 bước: chọn file *.IMG vừa tải -> chọn thẻ nhớ cần cài -> FLash là xong. Gắn thẻ nhớ vào là có thể boot được hệ điều hành.

Raspbian được phát triển từ Ubuntu nên các câu lệnh tương đối giống như apt-get

Cài đặt OpenCV

Mặc định thì Python 2 và 3 đã được cài đặt sẵn, do đó chỉ cần gõ lệnh là cài được OpenCV. Từ bài viết này trở đi Python 3 được recommend sử dụng, Python 2 cũ rồi. Để tránh bị nhầm giữa Python 2 và 3 thì luôn thêm số 3 vào các câu lệnh.

Các bạn có thể sử dụng Terminal có sẵn hoặc SSH để cài. Tài khoản user default là pi, password là raspberry nên cần có sudo mỗi câu lệnh.

Lệnh cài opencv-python
sudo pip3 install opencv-python

Pip sẽ cài đặt OpenCV và Numpy, tuy nhiên còn thiếu 1 số lib nên cần cài thêm:
sudo apt install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev libjasper-dev libatlas-base-dev
sudo apt install libqt4-test libqtgui4

Test cài đặt thành công bằng cách gọi Python 3 command:
sudo python3

Trong Python 3 command gõ:

Nếu in ra version của OpenCV là đúng

Sau đó có thể copy code sample Python trong OpenCV vào USB để chạy thử.

Tham khảo thêm:
https://pypi.org/project/opencv-python/

Leave a Reply