投稿

6月, 2021の投稿を表示しています

RPi定点カメラ (実践編)

イメージ
 次は、野外設置用のボックスを作りました。なくてもいいですがカメラ位置を調整しやすく、また携帯用バッテリーと定点カメラ用RPiを収納するボックスです。 カメラボックス 上の写真の白い箱がそうです。 低いところは、3脚の上に置き、高いところは支柱を立てて設置しています。高いところに設置するのが意外と面倒で難しかったです。 この箱にRPiカメラとバッテリーを入れてセットします。カメラボックスはなくてもいいですが、落としたりすると困りますし、雨が降ってきても困ります。 まず、ちゃんと写真が撮れているか確認します。 pingでネットが動いているか確認: pi@jpnfan:~ $  ping 192.168.1.71   PING 192.168.1.71 (192.168.1.71) 56(84) bytes of data. 64 bytes from 192.168.1.71: icmp_seq=1 ttl=64 time=52.1 ms 64 bytes from 192.168.1.71: icmp_seq=2 ttl=64 time=280 ms 64 bytes from 192.168.1.71: icmp_seq=3 ttl=64 time=200 ms 64 bytes from 192.168.1.71: icmp_seq=4 ttl=64 time=17.5 ms 64 bytes from 192.168.1.71: icmp_seq=5 ttl=64 time=41.3 ms 64 bytes from 192.168.1.71: icmp_seq=6 ttl=64 time=62.3 ms 64 bytes from 192.168.1.71: icmp_seq=7 ttl=64 time=110 ms 64 bytes from 192.168.1.71: icmp_seq=8 ttl=64 time=108 ms 64 bytes from 192.168.1.71: icmp_seq=9 ttl=64 time=130 ms 64 bytes from 192.168.1.71: icmp_seq=10 ttl=64 time=50.4 ms ^C --- 192.168.1.71 ping statistic...

RPi定点カメラ撮影 (準備編)

イメージ
定点カメラ撮影を準備と実際の撮影・タイムラプス写真の編集の2回に分けて書きます。 定点カメラ撮影用RPiボックスの構築 上の写真はカメラとwifiのついたRPiを携帯バッテリーで起動したところです。 定点カメラの取り付け RPi用のカメラをRPiボードに取り付けます。CSIコネクターの黒のカバーを引き上げるとカメラ装填用の隙間ができます。ここにカメラのリボンケーブルをしっかり差し込みまたカバーを押し下げきっちりセットします。ケーブルの裏表を間違えないように。ピンがならんでいる方をCSIコネクターのピンが並んでいる面に合わせます。 野外で使いますので定点カメラ用RPiはヘッドレスにします。RPiボードをケースに入れただけの状態で使います。KB、マウス、モニターもなしです。 ヘッドレスRPi このヘッドレスRPiはWifiで繋ぎ、sshかVNCで制御します。でも最初からヘッドレスだとなにもできませんのでwifiとsshだけはオンにしてからヘッドレスにします。 sudo raspi-config で設定が画面を呼び出します。 1 System Options>S1 Wireless LAN Wifi の設定 SSID(ステーションID)、パスワードを入力します 1 System Options>S5 Boot/Auto Login コマンドラインモードでの起動を選択します(私のRPi遅いので) 3 Interface Options>P1 Camera   カメラを使用可に設定 3 Interface Options>P2 SSH     セキュアシェルを 使用可に設定 3 Interface Options>P3 VNC     virtual network computing 使用可に設定。 その他、sshとvncでもできましたが、撮影した写真のやりとりがメインなのでカメラRPiに 使い慣れた ftpサーバをインストールしました(proftpdです。proftpdのインストールは省略します)。また RPiのIPアドレスを固定にしました。 ヘッドレスRPiカメラとの接続確認 pi@jpnfan:~ $ ping 192.168.1.71 ping 192.168.1.71  PIN...

ffmpegコマンドでタイムラプス・ビデオの作成 

 前定点カメラで撮影しておいた57個のサボテンの開花ファイルからタイムラプス・ビデオを作成します。使うのはffmpegコマンドです。 タイムラプスをつくるツールはいろいろありそうですが−ネットで調べるとffmpegの他、mencoder, kdenlive, openshot, blenderなどがありました−最終的にffmepegを採用しました。ffmpegを直接使うことはあまりないのですが、vlcなどいろいろなパッケージソフトのベース・ライブライとして使われてます。openshotでやれたらと思いましたがバージョンが古いとか、timelapseに関してバグが多いとか、kdenliveは以前使ったがプロジェクトの保存できないとかあって、いろいろ迷った末、コマンドラインでちょっと難しいが ネット情報 を頼りにffmpegを使いました。 ffmpeg -framerate 24 -pattern_type glob -i "./*.jpg" -s:v 1920x1080 -c:v libx264 -crf 17 -pix_fmt yuv420p my-timelapse.mp4 ffmpegの詳しいオプションの説明は先程のネット情報に譲りますが、 画像をフレームレイトを1秒間に30フレームで画像をmp4形式のビデオに変換します。 ちょっと長めですが数秒で変換できました。

フォルダーの全部のファイルをナンバリングする

イメージ
 タイムラプスの定点観測した写真をストップモーション・ビデオに変換するにあたって全部のファイルを一挙にレネームしたい。複数のファイルを一緒にリネームするrenameコマンドなどあるが、順番にナンバリングはできなそうだ それではやっぱりunixのコマンドとパイプを使った−私にはちょっと難しいが−やり方でやってみました。 まずはリネームしたいファイルを一個のディレクトリーに全部いれておきます。端末コンソールを開き、そのファルダ−に入り、次のコマンドを実行します。 ls -v|cat -n|while read n f;do mv -n "$f" `printf "%04d.jpg" $n`;done コマンドの説明をメモがわりにちょっと: 上のコマンドラインの左から ls -v 自然な順番でファイル名をリストします cat -n lsコマンドの出力をもらって(パイプライン)それをナンバリングして出力します whileからdoneまではcatの行番号つきのファイル一覧を順番にもらってmvコマンドでファイルをリネームします。それを全部のファイルについて 繰り返します mv -n "$f" `printf "%04d.jpg" $n` がそれで元のファイル名を書式付き連番のファイル名で置き換えます。-nオプションは連番つきのファイルがあったら上書きしない指定です。 上の図がリネームする前で下がリネーム後です。57個のファイルがリネームできました。 awk コマンド でも同様の処理ができますが、コマンドのパイプ処理の方私にはがわかりやすいです。

フロリダでマンションが崩壊? ええ! こんなの聞いたことない

イメージ
 BBCニュースを見てびっくり仰天! いままで立ってた住居マンションが突如崩壊。ニュースのコンテンツをパクるつもりはありません。ただただあまりの衝撃にこの事件に私的なブログを書くだけです。 こんな立派な、古いとはいえマンションが、まだ日本でいうマンションの法定耐久年数60年にも達していない、マンションが、ある日突然崩壊する!? 聞いたことないし、ありえない!。。。プールの向こう側の部分が崩落、それも夜中に! (すいませんこれは私的なブログでニュースの詳細を伝えているものではありません。ただニュースを見て思わず書かずにいられないことを綴ったものです。 なんでマンションが崩落? 倒壊のようにバッタンではありません。上から崩れるように崩壊です 層崩壊の可能性ありで調査中だそうです。このBBCニュースでいっていたようにパンケーキが潰れるようにだそうです。または9.11のNYでのテロ事件=ツインタワービルの崩壊を思い出した人も多いでしょう。私もそうでした。 え!なんで崩壊? だってマンション、タワーマンションって空からみると鉛筆が立ってるようなもんでしょ。地球は引力があって、− 強風や地震は別にして− まっすぐ立ってれば問題ない? でも12階のマンションなら1階には11階分の重みがかかっている。マンションの構造上、1階にはエントランスホールがあって壁で重さを支えるものが少ない。だから強度計算してして、柱が何本、鉄柱が何本って計算してるんでしょうが。。。 でも層崩壊っていう現象があるそうです。フロリダのこのケースでは潮風やなんらかの影響である特定の階だけ押し潰されることがあるのかな。そうした弱い層ができたら、ヤバイ。

画像処理ソフトmirage

イメージ
 linuxで簡単な画像処理ができるソフトは? これがなかなかない。windowsを使っていたときは問題なかったが、linuxではなかなか適当なのがない。 やっと探してなんとか満足している画像処理ソフトがmirageだ。mirageは軽くて簡単に画像処理ができる。 画像を開いたときのスナップが次です: 簡単な画像処理って、画像をリサイズしたり、クロップしたり、画像を回転したりだ。これらはmirageで全部できる。defaultの画像閲覧ソフトイメージビュワー(gpicview)だが、画像の回転くらいでクロップ(画像の切出し)などができない。帯に短し襷に長しである。 私の場合だいたい簡単な処理ですんでしまうが、ときどき画像に文字を入れたりすることもある。この場合mirageの中からgimpを呼び出すことができる。edit>custom action>open in gimp順にmirageのメニューから呼び出せる。これは助かる。 mirageはその他スライドショーで画像を閲覧する機能やサチュレーションで色合いを調整する機能やサムネイルをつくる機能もあり、mirageで十分満足してます。 画像処理には多機能のものから単純機能のもの(機能が多ければ多いほどだいたい重たい)までいろいろある。以前はshotwellなども使っていたが、いまは使っていない。画像処理ソフトで検索するとランキングが出てきたり、有料・無料の区別まででてくる。だがそれは参考になるがやっぱり実際使ってみてガッテンして選びましょう。

お気に入りの写真をスクリーン・セーバーでディスプレーする

イメージ
 Xウィンドウのdefaultのスクリーン・セーバーはxscreensaverです。幾何学的な画像や無機質なものもいいですが、やっぱり家族の写真とか気に入った写真がスクリーン・セーバーで出せるといいですよね。 これをするには、xscreensaverの代わりをするものを作ります。シェル・スクリプトがgithubにありました。 screensaver.sh です。 このシェルを使うには2つのパッケージが必要です。その一つがお気に入りの画像をフルスクリーンで表示する軽くてXウィンドウで動き、スライド/ショーしてくれるのが以前紹介したfehです。もう一つがコンピュータがアイドルになったときそれを知らせてくれるものxprintidleです。 前提: お気に入りの画像をいつでも追加・変更でき、 コンピュータがアイドル状態になったら画像が見れるデジタルの写真立てなようなものをイメージします。 もちろん、コンピュータを使うときはお気に入り写真のスライドショーは中断し、またコンピュータが空いたらまた写真が出てくるようにします。 お客様が同席する営業現場のような場面では宣伝用の写真をいれておけばTVの大画面に表示されるデジタル広告としても利用できますね。(セキュリティーのため一旦ログアウトして)コンピュータがアイドルになるとスライドショーが始まりますね。 (1)お気に入りの写真はUSBドライブのPicturesホルダーに入れて置くことにします。写真はこのPicuresフォルダーのトップディレクトリとその下のサブフォルダーにも入れることができるものとします。 先程のscreensaver.shをダウンロードしてこのシェルスクリプトも画像と同じフォルダーのドップディレクトリーにいれます。screensaver.shに実行権限をつけておきます。 (2)fehとxprintidleをインストールします インストールの詳細は省略します。aptやsynapticパッケージマネージャーで簡単にインストールできるでしょう。なお fehとxprintidleも 標準で用意されているパッケージです。 (3)次はscreensaver.shを起動するシェルスクリプトをつくります。 #!/bin/sh bash /media/pi/757F-222E/Pictures/screensaver.sh ...

失意泰然、得意淡然

 この言葉なかなか記憶できません。失意淡然、得意泰然だったか?  いや失意泰然、得意淡然です。仕事、恋愛に失敗したとき、目の前真っ暗です、とても失意泰然としていられません。でも失意のときでも、泰然としていろと教えています。この言葉を知っていてもそんなことできません。 得意なとき、有頂天にならずに淡然としていろともいっています。Every dog has his own daysというように、誰にでも得意絶頂のときはあるものです。そんときも淡然としていろという意味ですね。 凡人にはできません。失意のときは目先真っ暗、得意のときは有頂天になるのが世の常だし、それでいいです。できないからこの言葉があるんでしょうね: 「失意泰然、得意淡然」

feh 軽くてコマンドラインで起動するイメージ・ビュワー/スライドショー Xウィンドウ用linux

イメージ
 fehでXウィンドウ用、軽いイメージ・ビュワーが使えます。 起動は簡単です: feh -Y -x -q -D 1.5  -B black -F -Z -z -r /home/pi/Picures オプションがたくさんありますがなくても動きます。まずはなしでやってみてください。リストの最初の画像が表示されます。コマンドラインI/FなのでGUIはありませんが、画像を右クリックするとメニューが現れ追加の操作ができます。終了はESCキーです。 次にオプションの説明です。この例で使ったオプションの順に、 -Y ポインターを隠す、 -x 境界なしで表示する、 -q エラーレポートしない、-D 1.5秒毎にスライドショーする、 -B 画像の背景色、 -F フルスクリーン表示、 - Z 自動ズーム、-z ランダム表示、-r リカーシブ検索 これでPicuresフォルダーの全画像がスライドショーの形でフル画面でランダム表示されます。 -rオプションがあるのでPicturesのサブフォルダーも検索されます。 インストールやその他の使い方は省略します。まずは試してガッテン!

mogrify、awkコマンドで画像を一括編集

画像の後処理で画像サイズを変えたりするのはファイルがたくさんあるとうんざりする作業だ。そこでディレクトリーにあるファイルを全部一発で変換でるコマンドがmogrifyだ。  例えば.jpgファイル全部を一斉に50%に縮小するには  cd 作業ディレクトリーして mogrify -resize 50% *.jpg mogrifyはimagemagicパッケージの一つのコマンドなので、imagemagicを先にインストールしておく。 このコマンドはファイルを指定通りに作り直してしまうので、実行前には2,3個試しにやってみてから一斉に実行したほうが安全だ。またオリジナルのファイル全体はバックアップしておいた方がよいだろう。いつオリジナルファイルに戻って処理するかもしれない。 imagemagicには画像処理関係のコマンドが一通り用意されている。よく使われmogrifyと似ているのがconvertコマンドだ: convert rose.jpg -resize 50% rose.png これでrose.jpgの画像サイズを50%にしてjpgからpngに画像フォーマットを変更している。 またファイル名を一括renameしたりするにはawkコマンドが便利だ。 ls | awk '{ printf "mv %s image-%04d.jpg\n". $0, NR}' | sh 上の例は一つのディレクトリーに画像ファイルを集めておき、全画像をlsの表示順にimage-0001.jpgから順番にrenameする例だ。

scrotでプリントスクリーン ショートカットキーは? プルダウンメニューはどうとる?

イメージ
 raspbian環境でのスクリーンショットは、scrotコマンドでとれます。 プリントスクリーンキーを押すだけです。scrotコマンドは標準でインストールされており撮られた画像はホームディレクトリーに撮影日付つきpngフォーマットで保存されます。 メニューからコマンド入力を選んでもよいのですが、ALT+F2キーで入力メニューを直接起動できます。 なにも指定しないと画面全体がスクリーンショットされます。 プルダウンメニューなどスクリーンショットしたい場合はscrot -d 6 のようにスクリーンショットを撮るまでの時間を遅延させます。 -d 6 は6秒後にスクリーンショットを撮る指定です。 次がプルダウンメニューのスクリーンショットです。6秒遅延指定してその間ににプルダウンメニューを出しておきます。 指定したウィンドウだけのスクリーンショットをとるには-sオプションをつけます。左クリックするとその指定したウィンドウのスクリーンショットがとられます。左マウスで矩形を指定すると(マウスを離さずドラッグして矩形指定)矩形領域のスクリーンショットが撮れます。 scrotはコマンド入力ですがGUIインターフェイスのスクリーンショットもあります。 最後にCTRL+ALT+F2でXのGUIモードを抜けてコマンドライン(コンソール)に移行します。再度Xに戻るときはALT+F7です。似ているので気をつけましょう。

mp3音楽ファイルの連結と分割 mp3wrapとmp3splt 

イメージ
 お気に入りの音楽ってずっと聞いていたいですよね。お気に入りの曲がいくつもあるとき一個のつながった曲に連結しておくと便利です。 *以下RASPI OS(ArmアーキテクチャのLinux OS)におけるmp3音楽ファイルの連結と分割の紹介です(紹介するプログラムはクロス・プラットフォームなのでウィンドウズやMacの場合でもインストールの方法や起動方法が少し異なりますがプログラムは共通です) mp3ファイルの連結と分割は簡単にできます。まずは音楽ファイルmp3の連結から mp3連結プログラム(mp3wrap)を準備します sudo apt install mp3wrap で簡単にインストールできます。 *最新版をインストールできるようにインストール前にシステムの更新があれば更新しておきます(詳細は省きます。aptに詳しくない人はaptによるシステムの維持・更新を調べてね) mp3ファイルを連結します mp3wrap out file1.mp3 file2.mp3 ... コマンドで起動します。連結の結果出力されるファイルはout_MP3WRAP.mp3のファイル名でmp3ファイルがつくられます。 ディレクトリーをつくり連結したいmp3ファイルを入れておきます $ mp3wrap out *,mp3 これは全部のファイルを連結する例です 連結されるファイルの順番は昇順(lsコマンドの表示順)となります。連結する前にlsコマンドで確認されるとよいでしょう。 $ mp3wrap out [01-05]*.mp3 連結される順番が気に入らなければ、楽曲にトラック番号、例えば01,02,03のようなプレフィックス番号をmp3ファイルの先頭につけrenameしておきます これはトラックナンバー01から05までのファイルを連結する例です その他の例 連結したmp3ファイル内容を確認する mp3wrap -l out_MP3WRAP.mp3 -lオプションで何の曲がどういう順番で連結されているか見れます 連結したmp3ファイルに後からさらに別の曲を最後に追加する mp3wrap -a out_MP3WRAP.mp3 new.mp3 -aオプションで一度連結した曲の最後に別の曲を追加できます 複数の曲の追加もできます 最後はmp3ファイルの分割です(mp3splt) 一番簡単な例...