[ Prev ] [ Index ] [ Next ]

Chương 10 - Đọc hình ảnh từ webcam

Created Friday 27 June 2014

http://www.raspberrypi.org/learning/webcam-timelapse-setup/ (dùng webcam chụp hình timelapse)


http://www.instructables.com/id/Raspberry-Pi-remote-webcam/

http://unixetc.co.uk/2014/01/20/simple-webcam-on-raspberry-pi/

http://elinux.org/RPi_USB_Webcams

Cần lấy webcam để test

Linh kiện

- USB webcam

Nội dung


Dẫn nhập (1 trang)

- mục tiêu học ở chương này
- các linh kiện cần thiết
- ý nghĩa của bài học này, có thể phát triển ra những ứng dụng nào
Trong chương này, ta sẽ khai thác một tính năng nổi trội của RPi so với các dòng vi điều khiển thông thường. Với các cổng USB host cùng các driver hỗ trợ kết nối USB plug-and-play có sẵn trong Linux, RPi có thể được bổ sung thêm tính năng bằng cách gắn các thiết bị ngoại vi vào cổng USB, giống như đối với máy vi tính bình thường. Chẳng hạn ta có thể gắn ổ cứng ngoài, đầu đọc thẻ nhớ, đặc biệt hữu dụng là USB webcam. Do bo mạch Raspi và USB webcam nhỏ gọn, chúng có thể được mang đi cùng với nhau để làm nên những camera-tự-động, với Raspi mang theo chương trình điều khiển và USB webcam đóng vai trò quay phim hoặc chụp ảnh. Cơ cấu phối hợp đó đặc biệt phát huy tác dụng trong việc "chụp ảnh thời gian" (time lapse), bằng cách lập trình cho Raspi ra lệnh điều khiển cho USB webcam chụp ảnh với thời gian giãn cách, ví dụ 1 phút một lần, sau đó ghép những bức ảnh với nhau thành đoạn phim tua nhanh những gì đã diễn ra, ví dụ cảnh bông hoa nở, mây trôi trên trời trong một ngày... Trước đây khi chưa có những thiết bị lập trình nhúng như Raspi, người ta cần dùng các camera rất đắt tiền mới có thể ghi được những đoạn phim thời gian như vậy. Với Raspi, việc lập trình điều khiển thời gian rất dễ dàng, vấn đề còn lại là giao tiếp được với USB webcam để ra lệnh điều khiển và nhận lại dữ liệu hình ảnh.

Chương này sẽ giới thiệu cách lập trình Python dựa trên thư viện OpenCV để giao tiếp và điều khiển USB webcam. Nếu bạn đọc muốn tìm hiểu thêm về xử lý ảnh, thư viện OpenCV cũng cung cấp rất nhiều thuật toán để phân tích hình ảnh, giúp phát triển tiếp thành những dự án về nhận diện hình ảnh. Lưu ý rằng có loại thiết bị chụp ảnh chuyên dụng cho RPi, tên là PiCamera, nó được kết nối với RPi qua một cổng dành riêng và trên trang chủ của RPi có mã nguồn hướng dẫn sử dụng PiCamera để chụp ảnh hoặc quay phim. Thư viện mã lệnh dùng để điều khiển PiCamera khác với thư viện dành cho USB webcam, tuy nhiên bạn vẫn có thể dùng thư viện OpenCV để xử lý nhận diện hình ảnh sau khi chụp được qua PiCamera. Trong chương này chúng tôi chọn giới thiệu USB webcam vì nó phổ biến, có thể được sử dụng với các loại máy tính khác, và có giá rẻ hơn nhiều so với PiCamera.

Kết nối mạch điện tử (1 trang - hình ảnh)

- hình sơ đồ nối dây, minh họa mạch kiểu phim âm bản (lấy từ trang web project của nước ngoài như Adafruit)
- hình chụp mạch & breadboard đã kết nối
- coi như khi có sơ đồ nối dây là người ta làm theo được, không cần hướng dẫn từng bước


Chuẩn bị phần mềm (1 trang)

- quy trình từ lúc bật power đến khi sẵn sàng nhập lệnh:
- liệt kê các bước bằng text
- chụp hình màn hình khi chọn menu để vào môi trường nhập lệnh (console)


Code mẫu (1 trang)

- nhập code và xem kết quả:

- nhập các lệnh cấu hình phần cứng
- nhập các lệnh điều khiển


Giải thích các lệnh (3 trang )

- sẽ đưa các lệnh vào file Python để giải thích bằng chế độ comment đằng sau code
- thêm một phần giải thích việc nhập code kiểu interactive (nhập, gõ enter, thấy kết quả ngay, không có biên dịch hay phải nạp vào chip)
- (dự kiến khối lệnh ở mỗi bài trong vòng 20 - 40 dòng)


Bài thực hành thêm (1 trang)

- thêm một số gợi ý để người học tự thực hành (ví dụ: bài học bật tắt 1 LED, thêm bài tập bật tắt tuần tự 2 LED)



Số lượt truy cập: