The Floating Point Engine/jp
RawTherapeeは全ての演算を32ビット浮動小数点の精度で行っています(対照的にdcrawやその他多くのコンバーター、バージョン3.0以前のRawTherapeeは16ビット整数演算です)。
一般的なコンバーターは16ビット整数で演算を行っています。16ビット精度ではピクセル一つが0から65535の値を有します(通常、カメラの精度は12ビットから14ビットですが、コンバーターは乗数を使ってこれを16ビットに上げています)。整数演算なのでデータ値に小数点以下はありません。ですから、例えば102と103という値の間には他の値は存在しません。対照的に浮動小数点演算は小数点以下6~7桁まで含む非常に幅の広い数値を使って演算を行います。この特性は、特にハイライト部分の復元で力を発揮します。画像処理過程で、一時的に露出過多、或いは露出不足になってもピクセルの情報が失われません。小数点以下の値があることで、色の変化も滑らかになり、カラーバンディングを避けることにも役立ちます。
浮動小数点演算の短所は、小数点以下を保持するためにRAMの使用量が大きいことで、16ビット整数演算のちょうど2倍の容量を必要とします。デジタルカメラの解像度がかつてないほど大きくなったこともあり、32ビットのオペレーションシステムでは簡単にメモリー不足に陥り、RawTherapeeがクラッシュする原因にもなります。従って、安定的にプログラムを使用するには、64ビットのオペレーションシステムを使うことを強く奨めます。
私たちは、2017年2月にリリースした5.0-r1をもって、公式に32ビットバージョンのサポートを終了しました。従って、32ビットシステムで発生したバグの報告は受け入れていません。
それでも、32ビットシステムを使わざるを得ないユーザーの場合は、以下に説明されている工夫を行って下さい:
- OSがWindows ならば、4ギガバイトチューニングを行います。Microsoft ライブラリーに、"4ギガバイトチューニング:BCDEdit and Boot.ini"についての説明があります。どの様に設定するかは、"How to set the /3GB Startup Switch in Windows XP and Vista"を参考にして下さい。
- RawTherapee を使用する時は他のプログラムを閉じます。
- 編集には、シングル編集タブを使います。
- バッチ処理の“自動スタート”はOFFにします。バッチ処理への画像追加は通常通りに行います。処理を始める準備が整ったら、RawTherapeeを再起動しRAMを空にします(この時に編集タブに画像はありません)、それからバッチ処理を開始します。
- RawTherapeeにダークフレームやフラットフィールドの画像は読み込ませないようにします(それらを使用しないのであれば)。
- 1つのフォルダーに数百枚以上の画像を保存しないようにします。各画像に(サムネイル、埋め込まれたICCプロフィルの処理、などに)、RAMを使用する必要があるからです。
必要なメモリー
RawTherapee5.6の編集タブで画像を開くには、凡そ次に示すRAM(バイト表示)が必要です:
- raw以外の画像
- 8-ビット: (幅x高さx3) + (幅x高さx4) + (プレビューの幅xプレビューの高さx28)
- 16-ビット: (幅x高さx3x2) + (幅x高さx4) + (プレビューの幅xプレビューの高さx28)
- 32-ビット: (幅x高さx3x4) + (幅x高さx4) + (プレビューの幅xプレビューの高さx28)
- raw画像
- (幅x高さx4) + (幅x高さx12) + (プレビューの幅xプレビューの高さx28)
更に諸々の処理のため、追加的にメモリーが使われます、例えば開いた画像フォルダーに入っている他の画像のサムネイルを生成するためにもメモリーが必要です。 処理や保存に必要なメモリーは使用した機能と上記に示した操作次第で著しく変わります。