TIFF 16bitカラー画像を8bitカラーにバッチ処理する ― 2013年06月13日 00時00分00秒
ちょっと早いのだが、明日の分を更新。アサブロにもcocolog-niftyみたいに予約投稿があるといいんだけどなぁ。さて、いつもフィルムをスキャンするときは画像はまず16bit(48bit)でスキャンしてTIFFで保存している。ブログに載せるものはその16bit TIFF画像を8bitのJPEGに変換してリサイズしたものである。また、日常閲覧する画像ホルダーにも8bit(24bit)JPEG画像(長辺3200ピクセルぐらい)にして保存している。
Windows XP Professional SP3を使っていたときは、16bit(48bit)のTIFFを8bit(24bit)のTIFFにするのに、Nikon Capture4のバッチ処理を使っていた。ところがSONYのICレコーダーをUSB端子に挿したまま再起動したところOSが破壊されてしまった(SONY ICレコーダーをUSBポートに刺したまま再起動したらWindowsが起動しなくなった ― 2013年01月04日)ので、結局ハードウェアは同じままOSをWindows 7 Professional SP1 64bitにして今日に至っている(DELL VOSTRO 430にWindows7 PRO SP1 64bitをインストールした ― 2013年01月05日)。
ところが、Nikon Capture4はWindows7にインストールできないのであった。Photoshop Elementsでも16bit(48bit)のTIFFを8bit(24bit)のTIFFにすることは可能なのだが、1枚1枚手動でしか変換できない。Photoshop Elementsの「複数ファイルをバッチ処理」の対象ファイルは8bit(24bit)に限られていて、これは最新版でも同じということだ。Photoshop CSとの差異化なのだろう。
それでNikon Capture4の後継であるCapture NX2なら16bit(48bit)のTIFFを8bit(24bit)のTIFFにバッチ処理できるのか調べようと思ったら、うちに入れてあるCapture NX2のトライアル版は試用期間が過ぎていて試せない。一か八かで買うのも値段を考えるとどうかと思う。もう1台のPCにCapture NX2のトライアル版を入れて試すことも考えたがそれも面倒だ(使わないソフトをインストールするとPCの起動・終了が遅くなるので嫌だ)。
検索すると、ImageJというアメリカ国立衛生研究所 (NIH) で開発されたオープンソースでパブリックドメインの画像処理ソフトウェアを使うと16bit(48bit)のTIFFを8bit(24bit)のTIFFにバッチ処理できるらしい。
16 bit-TIFF→8 bit-TIFF自動変換(研究者のためのコンピュータフォーラム)
さっそく http://rsbweb.nih.gov/ij/ からダウンロードしてImageJをインストールした。ところが先のページに書いてあるマクロを実行すると48bitカラーのTIFFが8bitのグレースケール画像に変換されてしまう。しかも明暗が反転している。要するにモノクロネガ状態になってしまう。
調べてみるとマクロの中で指定されているコマンドの「8-bit」というのは、8bitグレースケールで反転してしまう処理のことらしい。
さらに調べると「RGB Color」というコマンドが自分のやりたい16bitカラーTIFF画像を8bitカラーTIFF画像に変換するコマンドのようだった。
ImageJマニュアル:Image(画像)メニュー参照。
それで、マクロを以下のように書き換えた。
macro toRGBColorconv { setBatchMode(true); dir = getDirectory("Choose a Directory "); dirRGBColor = dir + "/RGBColor/"; File.makeDirectory(dirRGBColor); list = getFileList(dir); myListLength = lengthOf(list); for (i = 0; i < myListLength; i++) { if (endsWith(list[i], "/")){ } else { open(dir + list[i]); run("RGB Color"); print(list[i]); save(dirRGBColor + list[i]); close(); } } showMessage("DONE") setBatchMode(false); }
上記をテキストエディタにコピーして名前を付けて保存する(私は24bitHenkan.txtにした)。
その後、ImageJのPluginsからMacrosの中のRun...を選択、保存したテキストファイルを選択してください。 そうすると、もう一度フォルダ選択になりますので、16ビットのtifファイルをまとめたフォルダを選択してください。
http://www.kenkyuu2.net/cgi-comp/compforum.cgi?mode=view;Code=435
そうすると指定したTIFFファイルのあるフォルダ(ディレクトリ)に「RGBColor」というフォルダができていてそこに8bitカラーのTIFF画像ができている。もとの16bitカラーのTIFF画像はそのまま残っている。
バッチ処理でJPEGにするには、この8bitカラーのTIFF画像フォルダを対象にPhotoshop Elementsで「複数ファイルをバッチ処理」すればよい。ああすっきり。
最近のコメント