Sau khi cấp nguồn, hệ thống sẽ tự động boot vào hệ điều hành wheezy đang có trong thẻ nhớ, mặc định bạn đăng nhập hệ thống sử dụng username và password: pi/raspberry. Tiếp theo, bạn chạy giao diện LXDE được cài sẵn bằng lệnh: startx
Đây là giao diện LXDE mặc định. (24/11/2013: Cái màn hình của mình cùi quá nên ko muốn chụp hình lại, copy tạm giao diện lượm được trên google.)
Chúng ta sẽ bắt đầu tiến hành cài đặt Python-OpenCV bằng terminal.
Đầu tiên mở LXTerminal lên. (Chính là phần mềm cuối cùng trong danh sách mà bạn có thể nhìn thầy ở desktop trên kia.)
(Ảnh minh họa, ảnh thật cũng giống thế. )
Wheezy sử dụng hệ thống quản lý phần mềm APT, đầu tiên bạn cần đó là cập nhật dữ liệu repository, đại loại bạn có thể hiểu là cập nhật danh sách các ứng dụng.
Để cập nhật, bạn chạy lệnh:
Hệ thống sẽ tự động cập nhật danh sách các ứng dụng mới nhất.Mã:sudo apt-get update
Tiếp theo, bạn cài đặt Opencv:
Hệ thống sẽ thông báo cho bạn dung lượng cần có để cài đặt gói opencv này, nhấn Y + Enter để đồng ý và chờ đợi quá trình cài đặt hoàn tất.Mã:sudo apt-get install python-opencv
2. Viết một chương trình đơn giản để hiển thị hình ảnh từ webcam
Bây giờ chúng ta sẽ viết một chương trình hiển thị hình ảnh từ webcam lên trên màn hình sử dụng OpenCV và lập trình bằng Python. Wheezy mặc định đã được cài đặt sẵn Python, bạn cũng có thể thấy một số ứng dụng python, thậm chí là cả game.
Nếu bạn đã làm việc với IDLE, bạn có thể viết chương trình trực tiếp từ đó, không thì bạn có thể tạo một file face.py trên máy tính, soạn chương trình sau và copy vào usb, sau đó copy lại vào Desktop của LXDE.
Đây là đoạn mã Python:
Mã:
import cv cv.NamedWindow("w1", cv.CV_WINDOW_AUTOSIZE) camera_index = 0 capture = cv.CaptureFromCAM(camera_index) def repeat(): global capture global camera_index frame = cv.QueryFrame(capture) cv.ShowImage("w1", frame) c = cv.WaitKey(10) if(c=="n"): #in "n" key is pressed while the popup window is in focus camera_index += 1 #try the next camera index capture = cv.CaptureFromCAM(camera_index) if not capture: camera_index = 0 capture = cv.CaptureFromCAM(camera_index) while True: repeat()
Mã:
cd Desktop
Mã:
python face.py
Rất đơn giản, như vậy chúng ta đã có thể hiển thị được hình ảnh từ webcam lên. Một số chú ý cần quan tâm đó là:
- Không phải webcam nào Wheezy cũng có thể nhận được driver cho nó, thực tế thì mình chưa gặp cái nào không nhận được, nhưng theo mình nên chọn những loại webcam cũ, độ phân giải thấp một chút.
Danh sách các webcam hỗ trợ bạn có thể xem ở đây:
Linux UVC driver
- Nếu bạn copy đoạn code python qua usb, khi cắp usb vào Raspberry Pi, có thể có hiện tượng khởi động lại. Mình cũng chưa rõ nguyên nhân là do nguồn hay hệ điều hành. Hiện tượng này không xảy ra đối với bàn phím, webcam và chuột.
- Bạn cần có một bộ nguồn usb khoảng 700mA tới 1000mA để đảm bảo hệ thống chạy ổn định.
No comments:
Post a Comment