概要
"1.USBカメラを使う"で USB Microscope から画像が取れる事が分かったので、それを使って今回こそタイムラプスを行います。
USB Microscope
以前購入したUSB Microscope 7inch Digital Microscope 。7” LCDに被写体の拡大図が写されるデジタル顕微鏡。
単体では若干画像が暗いのですが、レンズの回りと両サイドのライトを使えばかなり明るく写ります。 Raspberry PIとカメラをUSBでつなぎ、カメラをメニューから "ウェブカメラ"に設定すれば前回のタイムラプスアプリで 画像が取得出来ます。
ライトの扱い
綺麗な画像を撮る為に撮影時のライトは必須。カメラに付いているライトのオンオフは本体のボタンを使って手動で行う仕様になっています。 このままではタイムラプス中、常にライトをオンしないと明るい画像が取れません。撮影はほんの一瞬で終わるのにライトを常時点けておくのは 不経済です。そこでカメラのライトを諦めてRaspberry PIで管理出来るライトを作って見ました。
以前秋月通商さんから買ったLEDユニット白色LEDユニット(ホワイト)OSMW03C12GP-White 32mmΦ これをを使う事にしました。
裏面の "+"、"ー" パッドに12Vを繋げば12個のLEDが光る仕組みになっていて簡単にRaspberry PIで制御出来ます。 また非常に偶然だったのが
- このLEDユニットの外径とカメラのレンズ部の筒の外径が同じ。
- ユニットの中心に有る小さな穴がレンズに対して良いフィルターになる。
レンズの先にこのユニットを取り付ける(セロハンテープで外径を貼った)だけて明るい画像が撮れました。
このLEDユニットとリレーユニット 、 三端子レギュレーター を使って下記の制御回路を製作。
- 回路では12Vの電池になっていますがここにACアダプタ12Vを接続
- DC12Vから7805でリレー駆動用電源DC5Vを作成
- リレー制御端子にRaspberry PIのGPIO16を接続。
- リレーのレベルホートリガをHにショート。これで信号がHighになった時にリレーがつながる。
- スイッチ"A" は機器の電源用。 "B" は手動LEDオンオフ用。
- Raspberry PIでLEDを制御する時は必ずスイッチ"B" をオフにして下さい。
プログラムのダウンロードと実行
前回のインストール を行った後にRaspberry PIのホームフォルダで下記を実行して下さい。
ホームフォルダに "lapes_micro" というフォルダが製作されます。
必要配線を済ませ、作業用フォルダに移動し(cd lapes_micro) python3 lapes_micro.py でコードが実行します。
モニタに上記が表示されたらブラウザを上げて、"http://bbb.local:5000"と入力して下さい。 下記のHPが表示されます。
使い方
"前回の使い方" に加えて "LED関係” が追加されています。
- チェックボックス:LEDを使用する
- これをチェックすると静止画撮影前にLEDが点灯し、撮影後消灯します。
- "LED"ボタン
- 手動でLEDのオンオフを行います。
カメラを ”ウェブカメラ” に設定して ブラウザの "検索" ボタンで検索するとこの顕微鏡は下記の様に認識されました
下記は同じ被写体をLEDのオンオフで撮影した結果。
タイムラプスの例
このMicroscopeを使ってタイムラプスして見ました。対象は”大豆”。水に浸したティッシュの上に大豆を3粒置き、 1時間の間隔で2日位撮影しました。撮影された写真は”data"フォルダに保存されます。 これらのファイルから "ffmpeg" を使って動画を作成するのですが、保存されたファイルの名前が日付になっているので 動画作成にひと手間必要です。Raspberry PIの画像データをPCに移動し、そこで下記(make_list.py)を実行して下さい。
このコードをモニタで python3 make_list.py と実行すると "images.txt" というファイルが作成されます。 これを使って ffmpeg -f concat -safe 0 -i images.txt -c:v libx264 -pix_fmt yuv420p output.mp4 を実行すると "output.mp4" という動画ファイルが出来ます。 今回のタイムラプスをlapes_micor に保存しました。これは3粒の丸い大豆が水にふやけて枝豆状になり小さい芽が出てるまでのタイムラプス(動画)です。
次回は
題材が見つからなかった前回のUSBカメラですが、この大豆の発芽後の成長が良い題材になるかもしれません。
次回はカメラとしてネットカメラ(ペットや赤ちゃん又は防犯カメラ)を使ったタイムラプスをやってみたいと思います。