私は非常に高解像度の画像(フラクタル)を生成するC++プログラムを作成しました。 私はfstreamを使ってすべてのデータを.ppmファイルに保存します。大量のppmファイルをJPEG/JPG/PNGに変換しますか?
すべてうまく動作しますが、実際に高解像度(38400x21600)になると、ppmファイルは〜8ギガバイトになります。 しかし、私の16ギガバイトのRAMでは、まだその画像を変換することができません。私はコンバータのカップルをダウンロードしましたが、彼らはそれを処理することができませんでした。私が "export as ..."しようとすると、Gimpでもクラッシュしました。
本当に大きなppmファイルを処理できる優れたコンバータを知っている人はいますか?実際には、100ギガバイトを超えたいと思っています。私はそれが遅い場合は気にしない、それはちょうどうまくいくはずです。
このようなコンバータがない場合:より良い方法でstd :: ofstreamに移行する方法はありますか?多分、PNGファイルを自動的に生成するライブラリはありますか?
ありがとうございました!
編集:また、これらの大きな画像を保存するのに最適な形式は何かを尋ねました。私は研究し、JPEGは非常にきれいに見える(小さなサイズ、まだ良い品質)。しかし、より良いフォーマットがあるかもしれませんか?お知らせ下さい。ありがとう
「.ppm」は非常に非効率的である。 C++コードのlibpngまたはlibjpegを使用して、目的の出力形式に直接書き込むことができます。 – Thomas
ImageMagickから 'convert'ユーティリティを試しましたか?そのバンドルは一般的にかなり強力です。 – Thomas
いいえ、私はそれをチェックします。助けてくれてありがとう –