複数の画像TIFFファイルをバッチ方式でJPEGファイルに変換するにはどうすればよいですか?
アップデート1:Linux上でconvert
( ImageMagick の一部)、MissCellanieとglallenが提案しました。それは簡単でした。 Kubuntu 9.1 のネットブックバージョンのISOイメージをダウンロードし、DVDに書き込んで再起動し、コマンドラインウィンドウを起動し、現在のディレクトリをinter2.tifがあった場所に変更して入力しました。
convert -separate inter2.tif new_inter2.jpeg
これにより、new_inter2-0.jpeg、new_inter2-1.jpeg、new_inter2-2.jpegの3つの予想される画像が作成されました。いくつかのエラーメッセージが表示されました:
convert: incorrect count for field "DateTime" (21, expecting 20); tag trimmed. `inter2.tif' @ tiff.c/TIFFWarnings/526.
convert: inter2.tif: unknown field with tag 317 (0x13d) encountered. `TIFFReadDirectory' @ tiff.c/TIFFWarnings/526.
convert: inter2.tif: unknown field with tag 33628 (0x835c) encountered. `TIFFReadDirectory' @ tiff.c/TIFFWarnings/526.
私はたくさん持っています 細胞の顕微鏡画像 。それらは [〜#〜] tiff [〜#〜] 形式で、サンプル/セル画像ごとに1つのTIFFファイル、各TIFFファイル(3つの異なる光波長)に3つのチャネル/画像があります。
TIFFファイルはバッチ方式でJPEGファイルに変換する必要があり(ユーザーの介入は必要ありません)、TIFFファイルごとに3つのJPEGファイル(3つの波長に対応)。
LibTIFF に含まれているコマンドラインツール tiffsplit を使用して、元のTIFFから3つの新しいTIFFファイルに3つの画像を抽出する最初のステップを実行しようとしました。しかし、私が持っているTIFFファイルでクラッシュします(Windows XP 64ビット、DEPが有効)の場合)。エラーメッセージは次のとおりです。
Unhandled exception at 0x6fd853d1 in tiffsplit.exe: 0xC0000005: Access violation writing location 0x6fdc8ddb
別の解決策を知っていますか? WindowsまたはLinuxのいずれか。
これが サンプルTIFFファイル (3.8MB)です。合成画像(MSペイントにインポートしてJPEGとして保存することで作成された単一のJPEGファイル)は、それが何であるかの印象を与えます。
おそらくもう少しエレガントな方法がありますが、これでうまくいくはずです。
for FILE in $(ls *.tif); do \
for I in R G B; do \
convert -channel $I -separate -format jpg $FILE $FILE-$I.jpg ; \
done ; \
done ; \
rename s/\.tif\-/\-/ *.jpg
IrfanView は優れたバッチ処理能力を備えています。
IrfanViewはコマンドライン操作もサポートしています
i_view32.exe c:\myimages\*.tif /convert=c:\images\*.jpg
これが コマンドラインマニュアル へのリンクです
ImageMagickを使用してconvert
またはmogrify
を試してください。 buntuforums.orgからの詳細な説明
ImageMagickとは別の優れたツールに加えて、 img2img と呼ばれるこの単純なコマンドラインツールもあります。このツールには、ImageMagick変換コンポーネントがバンドルされています。多数のフォーマットをサポートし、入力フォーマットを自動検出できます。このようにバッチ変換できます(すべての.tiffファイルがあるディレクトリでこれを実行してください)。
for /f "delims=." %x in ('dir /b *.tiff') do img2img "%x.tiff" "%x.jpeg"