ラズパイでタイムラプス撮影やってみた その1
お久しぶりのらずべりーです。
仕事が忙しくて長らく放置してましたが、やっとこさタイムラプス撮影できた、、、色々紆余曲折ありました。
図書館でLinuxの入門書(ブルーバックスの本)を借りられたので、それを参考に。
入門者のLinux-素朴な疑問を解消しながら学ぶ-ブルーバックス
はじめはPythonでやろうと思って調べていたのですが、上記の本を読んで、シェルスクリプトで意外といけるんじゃないかと思い始め、えいやっ!!とやってみました。
以下、記録。(ただの日記)
撮影以外のところで色々、脱線。
1. カメラモジュールの設置
純正のv1カメラモジュールです。取り付け方がわからなくて焦りましたが、旦那ちゃんのアシストによりなんとか設置完了、、、
ストッパーみたいなのを爪で外して、ケーブルを差し込んでからストッパーを再度止める、といった作り。(文章で書いてもなんのこっちゃですが。)
電源を落とすのを忘れて作業しはじめようとしたので、旦那ちゃんにめちゃくちゃ怒られた(>人<;)
感電の危険があるので気をつけよう、、、
2. プレビューの表示
これはPythonでやりました。(シェルでのプレビュー表示のやりかたがわからなかった、、、)
まず、python-picameraのインストール
$ sudo apt-get install python-picamera
>> #picameraのインポート
>> import picamera
>>
>> #PiCameraのインスタンス生成
>> camera=picamera.PiCamera()
>>
>> #プレビューの開始
>> #フルスクリーンでなくウィンドウでプレビューを表示できるように設定
>> camera.start_preview(fullscreen=False, window=(0, 0, 640, 480))
PiCameraのチュートリアルやら以下のページを参考に。
3. Quick Start — Picamera 1.10 documentation
3. お試しで撮影
普通にLXTerminalからraspistillで。
$ sudo raspistill -w 600 -h 600 -o image.jpg
Pythonのコードだと以下の通り。
(プレビュー表示開始5秒後に撮影)
>> #timeとpicameraのインポート
>> import time
>> import picamera
>>
>> #PiCameraのインスタンス生成
>> with picamera.PiCamera() as camera
>>
>>#カメラ解像度の設定
>>camera.resolution = (1024,768)
>>
>>#プレビューの開始〜5秒間待機
>>camera.start_preview()
>>time.sleep(5)
>>
>>#カメラ撮影〜プレビュー停止&カメラの停止
>>camera.capture(\"test001.jpeg\")
>>camera.stop_preview()
>>camera.close()
Pythonのコードは、主にPiCameraのチュートリアルを参考にしました。
4. sshでリモート操作
完全に脱線です。
MacBook(古い)からリモート操作したくなって、ssh接続を試みました。
慣れたノートPCのほうがキーボード操作がストレスフリー( ´∀`)
このあたりのページを参考に。
ufwでファイアウォール設定してたので、MacBookからのアクセスを許可するように変更しました。(省略)
のつもりがはねられて、なんで!?となりましたが、ラズパイの設定のところでSSHをenableにしてなかっただけだったのですぐに解決。
sshでリモート接続したのは初めてだったので、できたときはちょっと興奮!
ついでにファイル共有のため、sambaでラズパイをファイルサーバー化。
このあたりのページを参考に。
こちらはスムーズに完了し、いよいよタイムラプスの準備に入りました。
前置きが長くなりすぎた、、、
次回に続きます。
<補足>
Pythonコードの実行(青字)は、前回のブログ時にダウンロードした
Jupyter Notebookで行いました。めちゃ便利!
Jupyter notebookのインストール - plant-raspberrypi3のブログ
<補足2>
省略していたufw周りについて、2017/11/18の記事にて言及しました。
plant-raspberrypi3.hatenablog.com