1. 程式人生 > >用opencv C++完成了一個影象壓縮的例程

用opencv C++完成了一個影象壓縮的例程

這裡用的是openCV3.4.1和VS2017版本,引用了一個opencv的庫函式。具體看下面的程式碼把。

#include <iostream>
using namespace std;

#include "cv.h"
#include "opencv2\opencv.hpp"
using namespace cv;

#if _DEBUG
#pragma comment(lib,"opencv_world341d.lib")
#else
#pragma comment(lib,"opencv_world341.lib")
#endif

int main()
{
    Mat src = imread("D:/tupian/zelong11.jpg"
); if (src.data != NULL) { vector<int>compression_params; compression_params.push_back(CV_IMWRITE_JPEG_QUALITY); compression_params.push_back(80); //影象壓縮引數,該引數取值範圍為0-100,數值越高,影象質量越高 bool bRet = imwrite("D:/tupian/zelong4.jpg", src, compression_params); if
(bRet) { cout << "影象儲存成功" << endl; } else { cout << "影象儲存失敗" << endl; } } else { cout << "圖片載入失敗,請檢查檔案是否存在!" << endl; } waitKey(0); getchar(); return 0; }

下面是實現效果
原圖18.0kb


壓縮後
7.05kb