投稿

ラベル(GIMP)が付いた投稿を表示しています

[調べ中] GIMPのScript-Fuでテキストファイルに数値データを書き出す方法

イメージ
GIMPのScript-Fuで少しばかりプログラムを組めるようにはなって来たんですが、細かいところで引っかかって、調べようにもまだ調べ方がよく分かってない段階です。まぁ三日坊主の壁は越えたと思うので、やり散らかして放置するよりは前進しています。やったね👍 調べ方が分からないというのは、だいたいはScript-Fuの言語であるTinySchemeの文法やどんな関数があるのかが分かってないってのが多いです。TinyじゃないSchemeの方はドキュメントがあるんですけどね。いやそっちのSchemeの方もドキュメントのどこに何があるのかがまだ見通せていないわけですが😋 まぁ寄り道に脱線した話はさておき、タイトルにある本題 「GIMPのScript-Fuでテキストファイルに数値データを書き出す方法」 について調べた範囲の内容をまとめることにします。 まず、GIMPでScript-Fuを実行するときに変数の値を追ってみたい場合、「gimp-message」という関数が使えます。 (gimp-message "なんか文字列") 変数のような数値を書き出す場合は (gimp-message (number->string x)) と、一端文字列変換を噛まして関数にわたせばOK👌。 gimp-messageが実行されると、ダイアログに渡した文字列が表示されます。  上のスクリーンショットはScript-Fuのコンソールを開いて実行したものですが、サイドパネルにエラーコンソールを出しておくとこのようにそこに渡した文字列が表示されます。場合に寄ってはGIMPのウィンドウの一番下のラインにひっそり表示されたり、ダイアログウィンドウが開いたりするみたいです。 ただこのgimp-messageを使ってもこんなようにダイアログに表示されるだけなので、その出力をテキストファイルに落とそうとすると違った方法を取らなければなりません、たぶん。 (ダイアログからコピペしてテキストファイルに貼り付けるとかいう力技は、数百、数千という出力に対しては無力なので却下です🙅。エラーコンソールのテキストファイルアウトプットを使えば少しマシですが、こっちも余計な文字が入るので却下🙅) で少し調べていたのですが、どうやら「open-o...

[メモ] 画像ファイルのヒストグラムを得る方法について思考中

イメージ
ちょっと画像ファイルの統計情報であるヒストグラムを得ようといろいろ調べ中。 得たいヒストグラムが一つだけならGIMPでもImageMagickでもいいのだけど、いくつも画像ファイルがある場合にヒストグラム取得の自動化を行ないたい。 例えば以下の画像ファイル これをGIMPでヒストグラム作成するとこんな感じになる。 簡単にいうと暗い色から明るい色にかけての分布が分かる。ただ今回欲しいのはグラフの方ではない。じゃあ何かと言えば現段階で何かの素材に使えそうと思ってにらんでいるのが、そのヒストグラムの下にある「Mean」だの「Std dev」だのという統計情報の方。 (そういや単色のピクセル数の入手もしたいなとも思ってるけど、それは別の話) コマンドラインからではImageMagickのツールであるidentifyに-verboseオプションを指定すると統計情報が取得出来る。 $ identify -verbose test.jpg ここから得たい結果だけ抜き出すのがちと手間かもだけど、grepコマンドを組み合わせればいいかなと。 ImageMagickではその他にconvertコマンドを用いる方法もあるみたいだけど、これはちょっと自分が得たい情報とは違う。 File Handling #histogram -- IM v6 Examples 変わったところとしてはffmpegで動画をヒストグラムに変換するというもの。ただこれは結果が動画として描画されるため、データ数値の入手には向いていないと思われる。 FFmpeg Filters Documentation #histogram $ ffplay -vf histogram test.mp4 一応、GIMPのscript-fuで取得する方法も途中までは作ったのだけど、シェルスクリプトだけで済みそうなidentifyの方が楽かなぁと現在思考中。 追記 2018年10月11日 とりあえずシェルスクリプトで取得しようとするとこんな感じ。 $ identify -verbose test.jpg | grep 'Image statistics' -A 8  | tail +5| awk -F: '{print $2}' ...

スポンサーリンク