6

私の投稿を読んでくれてありがとう。

私は順調に進んでいる小さなプロジェクトに取り組んでいますが、最適化の演習として、出力している JPEG の一部のサイズを縮小したいと考えています。現時点では、約 80kb の 600 x 400 の .jpg があります。

BGR と YUV の色空間に加えて、32 ビット、8 ビットの画像が符号付き、符号なし、float および char の画像について読んだことがありますが、どれがサイズに最も影響を与える要因であるかはわかりません。

このファイルサイズを縮小し始める場所を誰か提案できますか?

もちろん、ファイル サイズのバランスに適した画質を見つけるために、いろいろ試して独自のテストを実施します。

よろしくお願いします、ケイ

4

1 に答える 1

15

ディスクに書き込むときに、画像を圧縮したいようです。

これがjpegの場合です:

std::vector<int> params;
params.push_back(CV_IMWRITE_JPEG_QUALITY);
params.push_back(100);   // that's percent, so 100 == no compression, 1 == full 
cv::imwrite("my.jpg",image,params);

そしてここにpngがあります:

std::vector<int> params;
params.push_back(CV_IMWRITE_PNG_COMPRESSION);
params.push_back(9);   // that's compression level, 9 == full , 0 == none
cv::imwrite("my.png",image,params);
于 2013-03-06T19:20:41.223 に答える