"Đi học thoai": Phần 3 - Time-lapse cuối ngày xem lại những gì đã xảy ra trong ngày

Mô tả dự án: 

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:

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/

lên
15 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Internet của Vạn Vật ở Việt Nam và hướng phát triển cho cộng đồng Arduino

Đây là bài dẫn nhập cho các bạn giới thiệu về Internet của Vạn Vật (IW) và đề xuất cho cộng đồng Arduino của chúng ta

lên
24 thành viên đã đánh giá bài viết này hữu ích.

"Fiat Lux - Hãy có ánh sáng": (Phần 2) Viết code BLINK thần thánh cho neopixel WS2812

Đây là phần 2 cho tutorial hướng dẫn cách lập trình LED 3 màu neopixel WS2812. Vì mỗi module LED là 1 mạch IC nên cách sử dụng hơi rắc rối hơn so với LED thông thường. Các bạn chú ý nha!

lên
19 thành viên đã đánh giá bài viết này hữu ích.