Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

imagemagick

有線LANポートつき小型SBC「Nano Pi Neo 2」であそぶ その5:監視カメラ的なのをつくる

ただ撮るだけじゃなく、差分があれば通知するようなのを 実際のところ 導入 前回の流用なのでfswebcamで撮影。 imagemagickが必要。 $ sudo apt install imagemagick 何も考えずに差分 ImageMagickで有り無し判定 - Bye Bye Moore での知見を活かして $ comp…

imagemagickで画像に電子透かしみたいなのをやる

フォトストックなんかである、画像に電子透かしを入れる奴をimagemagickでやる 実際のところ imagemagcikのロゴに convert -size 140x80 xc:none -fill grey \ -gravity NorthWest -draw "text 10,10 'Copyright'" \ -gravity SouthEast -draw "text 5,15 'C…

ImageMagickで有り無し判定

shuzo-kino.hateblo.jp では色の判定を使いましたが……元画像との差分のあり。 比較画像 まず基礎となる何もない部分。微妙な木目があり、しかもカメラに対して斜め 対象となるアリ判定の画像 カギが端っこにおかれています ナシ判定用の素の画像 動かしてこ…

imagemagickのopaqueオプションではrgb値設定も使える

imagemacikのopaqueオプションは色領域とその周辺を抽出する機能を提供してくれます その指定はいろんなサンプルですと、以下のような感じで色リストから選ぶものが多いです ImageMagick – Color Namesとはいえ、ある状況ではベースの色が分かっている事もあ…

tputでCLIな端末をキレイにしたり動的に変わる画面を作ったりする

tputは端末に特殊文字を出すときに使ったりするコマンドです 色付けをしたりするのが有名どころかと これに仕込まれている特殊変数をつかって、疑似的に動的画面を作成できます ……なんか遠い昔、大学図書館のUNIX系の本でこれをつかったCLI画面テトリスを見…

ImageMagickのDeleteオプション

実際のところ 0からはじまるので、ためしに0番、2番、4番を消してみます $ convert -size 30x30 xc:black -fill white -draw 'circle 15,15 5,15' \( +clone -shade 110x90 -normalize -negate -alpha Off \) \( +clone -clone -2 -compose Plus -composi…

Imagemagickのappendオプションで画像を連結する

appendは"+"で横、"-"で縦につなぎます 実際のところ "+"のとき $ convert -size 30x30 xc:black -fill white -draw 'circle 15,15 5,15' \ \( +clone -shade 110x90 -normalize -negate -alpha Off \) \ \( +clone -clone -2 -compose Plus -composite \) \…

imagemagickで画像のハッシュを出す

一ビットだけ違うとかだと目視では違いが分からんですが……ハッシュ値があると別ファイルと区別できます。 実際のところ 実際、同じセッティングのUSBカメラの撮影結果をつないでも、バラバラな数字がでてきます。構文はfomatオプションに"%#" $ fswebcam -c …

imagemagickで台形変換

カメラが傾いている等々で台形になってしまった時 四隅の点座標がわかれば変換ができる 実際のところ distort オプションで四隅の点を指定 convert mandrill_blin.jpg -matte -virtual-pixel black \ -distort BilinearReverse \ '26,0 0,0 114,23 128,0 128…

imagemagickでcropを使って画像を切り抜く

実際のところ こんなのがあったとします $ fswebcam -c fswebcam_1.conf - | imvr -領域をきめる $ fswebcam -c fswebcam_1.conf - | convert - -fill 'rgba(255,0,0, 0.2)' -draw "rectangle 100,100 400,400" - | imvr -大体アタリつけたら、そこを切り抜…

imagemagickのdefineオプションを使う その3:

. 参考もと ImageMagick – Defines

imagemagickのdefineオプションを使う その2:領域を描く

このまんまだと可視化できないので、先ほど得られた重心に赤い半透明の四角を書きます convert sample.png -fill 'rgba(255,0,0, 0.7)' -draw 'rectangle 244,230 254,240' - | imvr - convert sample.png -fill 'rgba(255,0,0, 0.7)' -draw 'rectangle 184,…

imagemagickのdefineオプションを使う その1:オブジェクトIDをふる

実際のところ $ fswebcam -c fswebcam_1.conf sample.png $ convert sample.png -alpha off -colorspace gray -negate -threshold 10% \ -define connected-components:verbose=true \ -define connected-components:area-threshold=100 \ -connected-compon…

imagemagickのフォーマット構文で特定領域の色情報を出力

cropして構文を指定し、infoで出力。 今書いてまs

imagemagickのフォーマット構文からファイル名を取得する

imagemagickではprintfのようにレポート出力用の構文が用意されています。 実際のところ ファイル名を取得するのは"%[basename]"です。 $ convert img001.png -format "%[basename] is fine\r\n" info: img001 is fine

ImageMagickで減色する

画像処理等で、色数が減ったほうが処理が早くて助かるケースもあります。 今回は、そんなとき、どう色を落とすかについて。 実際のところ ここに、255色ある画像があります magick base.png -format "(%f) -> %g %C %k\n" info: (base.png) -> 800x1712+0+0 …

ImageMagickで画像情報を取得

"fomat"オプションでprintf構文な感じでサイズだとか画素情報だとかを取得可能 実際のところ ファイル名、サイズ、圧縮形式、色の数を参照 $ magick base.png -format "(%f) -> %g %C %k\n" info: (base.png) -> 800x1712+0+0 Zip 255色数については指定範囲…

ImageMagickでモザイク化(pixelate)する

モザイク化する方法、考えてみりゃその通りなのですが……縮小して拡大すればピクセルになりますね 実際のところ $ magick convert ruby.png -scale 10% -scale 1000% newruby.png 参考もと stackoverflow.com

ImageMagickの色分離 その2:複数の色も指定できる

実際のところ カラー画像ならお目当ての色名でいける magick convert uiui0.png -channel Cyan -separate uiui99.png果ては、CMYKとRGBの混合……いいのかそれは magick convert uiui0.png -channel Cyan,Blue -separate uiui99.png 参考もと Color Basics and…

ImageMagickでゴマ塩ノイズを消すとき

深度カメラなんかだと、変なとこに細々とした点が残ったりします。 とりあえずカタマリが分かればいいとき、このゴミが色々邪魔になったりします。 実際のところ morphologyオプションをつかうと、消したり拡大出来たりします。 Erodeは「侵食する」といた意…

Imagemagickで輪郭抽出する

実際のところ 以下のようにやると、アルファ背景の画像を白黒化し、輪郭を抽出できます convert foo.png -colorspace gray -alpha remove -edge 4 bar.png これだと反対なので、白黒をひっくり返します convert foo.png -colorspace gray -alpha remove -edg…

ImageMagickでバケツツールっぽいこと その2:つかわない部分の透明化

,ある特定の領域が明らかに不要な場合……たとえば、水平線より上とか、グリーンバックとか。RGBA化して $ convert input.png -alpha set -background none -channel RGBA -fill '#00000000' -fuzz 20% -draw 'matte 1,1 floodfill' output.png前回の塗りつぶ…

convert のlogをつける

convertコマンドの動作ログをとるのにオプションがついてますが……なんだか情報が少ないので自分用にメモ。 実際のところ 参考もと ImageMagick - Command-line Options

Imagemagickで領域を縁取りっぽい事をする

基本はバケツツール風と同じですが、今度は色でなく画像パターンでやる感じです 実際のところ まずは公式サンプルから。二値化した三角形を10ピクセル分、ブラー色つきバーを生成。これが領域図示でつかう二つの画像を合成。 convert -size 100x100 xc: -dra…

ImageMagickで色ありなしの判定

グレースケールの分離と、それの色付きで特徴が変わるか否か。 実際のところ shuzo-kino.hateblo.jpPSNRで色ピークをみます、 まずは全く変えてない場合。 $ compare -metric PSNR tmp_M.png tmp_M_coloded.png NULL: > log0000 .log infinfとでて、何も違い…

ImageMagickで回転やる

実際のところ $ convert foobar.png -background green -virtual-pixel background +distort ScaleRotateTranslate -135 foobar_spin.png 参考もと Distorting -- IM v6 Examples

ImageMagickで画像のトリミングをやる

ImageMagickで画像のトリミング/回転をやる 実際のところ cropオプションを使います。サイズと座標指定はImageMagick独特のアレ。 この例では、xに1000、yに200ピクセルを起点に120x120ピクセルを切り出します。 $ convert source.jpg -crop 120x120+1000+20…

ImageMagickでバケツツールみたいなことをする。

お絵描きツールでいうところのバケツツールみたいなのができるというお話。 実際のところ 前の記事でマゼンタフィルタをしました。 この白領域はマゼンタ系という事なので、こいつを赤(RGBの)にぬりつぶしてみます。"floodfill"でポイントと、対象の色を指…

ImageMagickでCMYKの色分離をする

shuzo-kino.hateblo.jp で企んでいたことが目途がある程度たってきたので、メモ。ちょっと前にOpenCVでやってみましたが、 方向転換して伝統と実績のImageMagickをつかって、色判定をやっていこうと思います。まずは色分離から。 実際のところ 機体はRasPi 3…

ImageMagickをつかって連番PDFからGIF画像をつくる

世の中パワーポイントをつかってスライドをMPEG4動画化する方法もあるようですが…… どうせなら軽い、早い、柔軟の三拍子そろったImageMagickをつかいます(血走った目 実際のところ すごいファイル001(1).pdf ~ すごいファイル097(1).pdf ……とい…