Skip to content

Instantly share code, notes, and snippets.

@sugarflower
Created July 5, 2019 16:23
Show Gist options
  • Save sugarflower/5360d61c0a4a2127c253186abad4a329 to your computer and use it in GitHub Desktop.
Save sugarflower/5360d61c0a4a2127c253186abad4a329 to your computer and use it in GitHub Desktop.

Raspberry Pi Camera Boardを使う

pyg併用で。

cam.py

#!/usr/bin/python3
from pyg import *
import pygame.camera as camera

camera.init()
cams = camera.list_cameras()
cam = camera.Camera(cams[0])
cam.start()

setSize((320,240),(320,240))

def loop():
	img = cam.get_image()
	putImage(img,(0,0))

run()

Raspberry Pi A+ (256)にカメラモジュールを繋いで動作させた。

REPLでカメラの動作だけ見てみる。

>>> import pygame.camera
>>> pygame.camera.init()
>>> pygame.camera.start()
>>> cams = pygame.camera.list_cameras()
>>> cams
['/dev/video0', '/dev/video10', '/dev/video11', '/dev/video12']

なんだか4つもデバイスが認識している。

ひょっとするとカメラのモードごとに別のデバイスとして認識しているのかもしれないのでそれを探る。

>>> cam = pygame.camera.Camera(cams[0])
>>> cam.get_size()
(640, 480)
>>> cam.get_controls()
(False, False, 0)
>>> cam = pygame.camera.Camera(cams[1])
>>> cam.get_size()
(640, 480)
>>> cam.get_controls()
(False, False, 0)
>>> cam = pygame.camera.Camera(cams[2])
>>> cam.get_size()
(640, 480)
>>> cam.get_controls()
(False, False, 0)
>>> cam = pygame.camera.Camera(cams[3])
>>> cam.get_size()
(640, 480)
>>> cam.get_controls()
(False, False, 0)

全部一緒だった。 ちょっとよくわからないけどひとまず利用は可能ということで。

@sugarflower
Copy link
Author

Raspberry Pi A+でpygが遅い理由は font8x8.pyだった。
処理内容は実際重いので使い方ガイドが必要だと思う。
そのための修正などすることにします。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment