monsieurvechai gửi vào
- 40702 lượt xem
Bài này tui hướng dẫn các bạn chụp hình lại bằng Raspberry Pi rồi ghép chúng lại với nhau thành 1 file .gif. Sẽ rất là vui đó.
Nguyên lý
Chúng ta dùng hàm sleep() của Python ra lệnh cho Raspberry Pi chụp hình lại mỗi 60 giây và gộp chúng lại thành 1 file với dạng .gif
Chuẩn bị
Đơn giản tới mức không thể đơn giản hơn:
- 1 Raspberry Pi hay Pizero
- Raspberry Pi Camera Module
- Cắm camera vào Raspberry.
Trên Raspberry Pi
Tải package ImageMagick để chuyển định dạng sang .gif:
sudo apt-get update sudo apt-get install imagemagick -y
Chép đoạn code sau và lưu lại với tên di_hoc_thoi_3.py:
from picamera import PiCamera from os import system from time import sleep camera = PiCamera() camera.resolution = (1024, 768) for i in range(60*10): camera.capture('image{0:04d}.jpg'.format(i)) sleep(60) system('convert -delay 10 -loop 0 image*.jpg animation.gif')
Lưu code lại. Mở terminal trong thư mục bạn lưu file python và nhập lệnh:
python di_hoc_thoi_3.py
Lưu ý
- Code trên sẽ chạy trong 10 tiếng đồng hồ. Bạn có thể sửa lại số giờ trong phần for() loop nha
- Bạn có thể tham khảo thêm các hiệu ứng như chống rung, quay ngoài trời, etc trong trang https://www.raspberrypi.org/documentation/raspbian/applications/camera.md
Nâng cao
- Bạn đã thấy module time của Python lợi hại thế nào rồi đó. Với module này, bạn có thể chỉnh sửa chế độ chụp, tần số chụp, etc theo thời điểm trong ngày.
- Đếm số người trong nhà với MAC address theo như bài http://arduino.vn/bai-viet/981-di-hoc-dzia-kiem-tra-nguoi-dung-co-dang-o-nha-hay-khong và tăng tần số chụp hình lên (sleep ngắn lại).
Đây là phần tui dịch lại từ trang https://www.raspberrypi.org/learning/timelapse-setup/worksheet/