2016-08-20 8 views
0

私は、それぞれが16進数の色を得るために必要な約10kのイメージを持っています。私は明らかにPSや他のツールでこれを手動で行うことができますが、私は理想的には解決策を探しています:イメージからファイルへの16進数の色を抽出する

  1. JPGイメージでいっぱいのフォルダに対して実行します。
  2. 画像の死点から六角形を抽出します。
  3. 結果をテキストファイル(理想的にはCSV)に出力し、ファイル名とその結果の16進コードを各行に含めます。

誰でも私の健全性を保存するものをお勧めしますか?乾杯!

+0

WindowsまたはOSXをお使いですか?ファイルはすべて1つのディレクトリにあるのですか、複数のディレクトリにまたがっていますか? –

答えて

1

ImageMagickほとんどのLinuxディストリビューションにインストールされ、OSX(homebrew経由)とWindowsで利用可能です。

それでは、コマンドラインで、JPG画像の完全なディレクトリに、あなたはこれを実行することができます:

convert *.jpg -gravity center -crop 1x1+0+0 -format "%f,%[fx:int(mean.r*255)],%[fx:int(mean.g*255)],%[fx:int(mean.b*255)]\n" info: 

サンプル出力

a.png,127,0,128 
b.jpg,127,0,129 
b.png,255,0,0 

ノート:

あなたのシェルがグロブできるディレクトリより多くのファイルがある場合は、ImageMagickの内部グロブではなくて、シェルを使用して行います。

convert '*.jpg' ... 

ファイルが大きい場合は、ループ内を1つずつやってではなく、メモリにそれらすべてをロードしたほうが良い場合があります。

for f in *.jpg; do convert "$f" ....... ; done 
+0

あなたは伝説です。ありがとうございました :)。 – d1ch0t0my

+0

私の喜び - あなたのプロジェクトに幸運。 –

関連する問題