Opencv学習ノート(三)--画像圧縮と保存
4060 ワード
1.画像圧縮
1.1一般的な画像フォーマット
1.2圧縮ケース
2.関連関数
imwrite
CV_EXPORTS_W bool imwrite( const String& filename, InputArray img,
const std::vector<int>& params = std::vector<int>());
注意:
1.この関数で画像を保存する場合は、ファイルを保存する親ディレクトリを事前に作成しておく必要があります.この関数は自動的に親ディレクトリを確立しません.親ディレクトリが存在しない場合、ファイル保存操作は失敗します.
2.関数の3番目のパラメータが空の場合.ただし、画像圧縮率を正確に指定するには、圧縮パラメータを指定する必要があります.圧縮パラメータの設定は、以下のコードインスタンスを参照してください.
3.コードインスタンス
#include
using namespace std;
#include "cv.h"
#include "opencv2\opencv.hpp"
using namespace cv;
#if _DEBUG
#pragma comment(lib,"opencv_world340d.lib")
#else
#pragma comment(lib,"opencv_world340.lib")
#endif
int main()
{
Mat src = imread("D:\\OpencvTest\\test1.bmp");
if (src.data != NULL)
{
vector<int>compression_params;
compression_params.push_back(CV_IMWRITE_JPEG_QUALITY);
compression_params.push_back(90); // , 0-100, ,
bool bRet=imwrite("D:\\OpencvTest\\test2.jpg", src, compression_params);
if (bRet)
{
cout << " " << endl;
}
else
{
cout << " " << endl;
}
}
else
{
cout << " , !" << endl;
}
waitKey(0);
getchar();
return 0;
}
コラムナビゲーション前編:Opencv学習ノート(二)-最初のOpencvエンジニアリング-画像の読み込みと表示次編:Opencv学習ノート(四)-画像の拡大と縮小