2016年2月11日木曜日

【メモ】画像をカラー、グレースケール、モノクロに分類する方法の考察

書籍を自炊してpdf化する際に、モノクロやグレースケールを分けて
最適のフォーマットで保存しなおせば、
最終的なファイルサイズを小さく出来るだろう。

という事でいろいろ考えてみた。

保存されているカラーフォーマットごとに分ける方法。

Windows7以降は、エクスプローラーの詳細表示に、
「ビットの深さ」という項目を追加することが出来る。
(メニューの[表示]にある[詳細表示]からか、
詳細表示で上にある「名前」やらのとこで右クリックしてでる「その他」を選択)

そのビット深さによりフィイルの色のフォーマットが判別できる。
1→モノクロ2階調
8→8bitグレースケール
16→16bitグレースケール
24→8bitカラー
48→16bitカラー

それでソートすれば手作業でも余裕で分類可能。


他に、photoshopの自動処理にある、条件付モード変更を使うと、
色々出来る気がした。
さらにphotoshopのスクリプトを使えば、さらにさらに色々できそうではある。
でも、上記のエクスプローラーで分ける方法が一番楽。

中身の画像がカラーかグレースケールか、モノクロ2階調かを調べる方法

グレースケールも、モノクロ2階調も、8bitカラーなどで保存可能だし、
モノクロ2階調は8bitグレースケールなんかでも保存可能。

そんなのがあると、ファイルサイズが増えるのでよろしくない。
個人的に何とかしたいのはこちらのパティーン。

やり方その1。
上記のフォーマットで分類した後、サムネを見ながら手動で分ける。
大変だけれどまぁ出来ない事もない。

やり方その2.
photoshopのバッチ処理で分ける。
下記のようなアクションを作る。
1.レイヤーを複製
  (元の画像が複製される)
2.レイヤーを複製
  (複製されたものをまた複製)
3.一番上のレイヤーを、分類したい色数の画像にする。
  (モノクロ画像かを判別したいのであれば、2階調化
   グレースケール画像かを判別したいのであれば、彩度を下げるなど。)
4.一番上のレイヤーを、差の絶対値に変更
  (2階調化画像なら2階調化されても、画像はもとのまま変わらないため、
   下のレイヤーとの差はゼロ。つまり、真っ黒になるはず。
   逆に、何かが残っているなら、分けたい目的の画像ではない。)
5.下のレイヤーと結合
  (差の絶対値で比較した内容を固定化する。)
6.自動選択ツールの許容値1で、左上近辺を適当に選択。
  (真っ黒になっていれば全てが選択される)
7.選択範囲を反転する。
  (真っ黒になっていれば、選択範囲がなくなる。)
8.「選択範囲を変更」など選択範囲がないと使えないコマンドを使う。
  (真っ黒になっていたらエラーがでて、そこでファイルの処理が止まる)
9.複製されたレイヤーを削除
  (元に戻す)
10.保存
  (分類すべきでないファイルだけが保存される)
11.エラーログやら保存の日付などを見ながら分類(手動)

こんな感じ。
9と10を変えれば色々出来そう。

でも、考えただけで、結局のところ自分はこの方法を試していないw

ScanTailorの上でちゃんと設定してやれば、グレースケールはグレースケールで、
2階調は2階調のフォーマットで出力されてたので。

まぁ将来的に何かの役に立つかもとメモしておく。

例によって元のファイルはコピーして残しておこう。

0 件のコメント:

コメントを投稿