예제에서는 picamera2를 사용했지만, 해당 라이브러리를 사용하면 이미지가 완전히 깨진 형태로 변환됬다. 따라서, 대신 opencv 라이브러리를 이용해서 카메라 찍기 기능을 구현해봤다.
동작은 매우 간단한데, 버튼을 누르면 사진을 찍는 것으로 구성되어 있다.
import cv2
from datetime import datetime
from gpiozero import Button
from signal import pause
# 카메라 초기화
cap = cv2.VideoCapture(-1)
cap.set(3, 640)
cap.set(4, 480)
def take():
ret, frame = cap.read()
filename = datetime.now().strftime("%Y-%m-%d|%H:%M:%S") + ".jpg"
cv2.imwrite(filename, frame)
button = Button(18)
button.when_activated = take
pause()
cap.release()
cv2.destroyAllWindows()
'IoT' 카테고리의 다른 글
MQTT(Message Queueing Telemetry Transport) (0) | 2024.07.24 |
---|---|
[라즈베리 파이] cpu 온도 측정 + 웹 환경에서 보기 (0) | 2024.07.17 |
[라즈베리 파이] opencv 카메라 버퍼 (0) | 2024.07.12 |
[라즈베리파이] DS18B20을 이용한 온도 측정 (0) | 2024.07.10 |
Modbus (0) | 2024.06.26 |