スキップしてメイン コンテンツに移動

投稿

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

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でのテロ事件=ツインタワービルの崩壊を思い出した人も多いでしょう。私もそうでした。  層崩壊てきいて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なども使っていたが、いまは使っていない。画像処理ソフトで検索するとランキングが出てきたり、有料・無料の区別まででてくる。だがそれは参考になるがやっぱり実際使ってみてガッテンして選びましょう。

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

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

失意泰然、得意淡然

 この言葉なかなか記憶できません。失意淡然、得意泰然だったか?  いや失意泰然、得意淡然です。仕事、恋愛に失敗したとき、目の前真っ暗です、とても失意泰然としていられません。でも失意のときでも、泰然としていろと教えています。この言葉を知っていてもそんなことできません。 得意なとき、有頂天にならずに淡然としていろともいっています。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) 一番簡単な例...