0

画像処理の科学的アプリケーションを開発しています。画像を格納するための独自の単純なデータ型 (ピクセル データ、チャネル数など) を使用します。私が必要としているのは、一般的な形式 (bmp、jpeg、png、その他の形式) の画像を読み取り、内部形式に変換し、処理後に一般的な形式の 1 つにエクスポートする機能です。

このアプリをできるだけ軽量にしたいので、この目的のためだけに OpenCV や ImageMagick などの「重い」ライブラリを含めたくありません。

一般的な形式の画像をエンコードおよびデコードするためだけの、シンプルで軽量で効率的な c++ ライブラリはありますか? または、フォーマットごとに libjpeg や libpng などの個別のライブラリを使用するしかありませんか?

4

2 に答える 2

2

一般的な形式を開くには、2 つの方法があります。個別のライブラリを使用するか、場合によってはオペレーティング システムを使用します (たとえば、Windows API を使用して JPEG を開くことができます)。

ImageMagick/OpenCV を使用しても問題ありません...非常に軽いです。また、分離されたライブラリを使用することを軽量化することを検討したとしても、各ライブラリの出力からデータを取得するために共通のビットマップ形式を実装する必要があります (信じてください、ここにはトリックがあります: チャンネル数、チャンネルの順序、ピクセル)順序 [左上から右下へ] など)... そうですね、大変な作業です!

では、ImageMagick/OpenCV のように既に実装されているものを使用してみませんか? この作業はすべて完了しています。これは本当に良い選択だと思います!

于 2013-10-04T04:59:09.307 に答える