Piカメラでコマ撮り撮影に挑戦! → Scratchでアニメ化

【Raspberry Pi】Piカメラでコマ撮りアニメ

こちらの作例を元に、LEGOのコマ撮りアニメを作成してみました

https://www.raspberrypi.org/learning/push-button-stop-motion/

必要なソフト

  • GPIO Zero for Python 3
  • libav-tools

パッケージのリストを入手&パッケージをアップグレードします

sudo apt-get update
sudo apt-get upgrade

GPIO Zero for Python 3

インストールされているかもしれません。僕の環境ではインストール済みでした
これ↓を実行して、エラーが出なければインストール済みです

python3 -c "import gpiozero"

エラーが出る場合はインストールします

sudo apt-get install python3-gpiozero

libav-tools

このコマンドでインストールできます

sudo apt-get install libav-tools

必要なパーツ

  • Piカメラモジュール
  • ブレッドボード
  • ジャンパーワイヤー(オス-メス) 2本
  • タクトスイッチ 1つ

電子回路を作成

公式サイトの図です

【Raspberry Pi】Piカメラでコマ撮りアニメ

実際の接続はこのようになります

【Raspberry Pi】Piカメラでコマ撮りアニメ

作業エリアの準備

/home/piに「animation」というフォルダーを作成します

Pythonのプログラム

Python 3(IDLE)を実行して、以下のプログラムを入力します

from picamera import PiCamera
from time import sleep
from gpiozero import Button

button = Button(17)
camera = PiCamera()

camera.start_preview()
frame = 1
while True: 
    try:
        button.wait_for_press()
        camera.capture('/home/pi/animation/frame%03d.jpg' % frame)
        frame += 1
    except KeyboardInterrupt:
        camera.stop_preview()
        break

フルスクリーンのプレビューが嫌な場合は、プレビューのサイズを変更することができます。プレビューと実際に撮影されるエリアが異なる場合があるので、自分で納得いくサイズに変更してください。僕は640×480でプレビューするようにしてみました。これだと撮影される画像と同じサイズと同じでした

from picamera import PiCamera
from time import sleep
from gpiozero import Button

button = Button(17)
camera = PiCamera()

camera.resolution = (640, 480)
camera.start_preview(fullscreen=False, window = (500, 400, 640, 480))
frame = 1
while True: 
    try:
        button.wait_for_press()
        camera.capture('/home/pi/animation/frame%03d.jpg' % frame)
        frame += 1
    except KeyboardInterrupt:
        camera.stop_preview()
        break

いざ、撮影!

Pythonのプログラムを実行します
タクトスイッチを押すごとに作業エリア(/home/pi/animation)に画像が連番で保存されます

LEGOで撮影スタジオを作ってみました

【Raspberry Pi】Piカメラでコマ撮りアニメ

カメラは以前作ったLEGOケースに入れています。カメラをLEGOで固定できるのでLEGOのコマ撮りと相性がいいです

【Raspberry Pi】LEGOでPiカメラのケースを作ったよ
Raspberry Piのカメラモジュール「Piカメラ V2」のケースをLEGOで作りました 一眼レフっぽくしました。ミニフィグはカメラマンのつもり こんな感じで、角度調節できます カメラの基盤がLEGOのプレートの高さとほぼ同じなので、プ...

画像を削除して欠番ができてしまうと最後の動画作成でエラーが出るのでご注意ください

画像を動画にする

撮影が終わったら、動画を生成します

/home/piで以下のコマンドを実行します

avconv -r 10 -i animation/frame%03d.jpg -qscale 2 animation.mp4

-r 10は1秒間に10フレームという意味。再生スピードを遅くしたい場合は数値を小さくします

動画を再生

このコマンドを実行すれば、動画が再生されます・・・が動画が短すぎる場合うまく再生されないようです

omxplayer animation.mp4

chromiumに動画ファイルをドラッグするのが一番手っ取り早く見られると思います

完成品です。コマ撮りは大変ですね・・・

娘が作った作品です

Scratchに読み込む

Scrachの背景として読み込んでみました。背景を切り替えればアニメーションします

【Raspberry Pi】Piカメラでコマ撮りアニメ

セリフを言わせたり、音を鳴らしたりとScratchなら自由自在です。動画編集より手軽かもしれませんね

クリエイティブ・コモンズ・ライセンス
この 作品 は クリエイティブ・コモンズ 表示 – 継承 4.0 国際 ライセンスの下に提供されています。

タイトルとURLをコピーしました