圖像縮放:resize( )


學OpenCV

=========================================================

原書代碼有問題,這里我改了下。

=========================================================

 1 #include <iostream>
 2 #include <opencv2/opencv.hpp>
 3 
 4 using namespace std;
 5 using namespace cv;
 6 
 7 int Test1()
 8 {
 9     Mat img = imread(R"(C:\testNoGit\learnOpenCV4-master\data\lena.png)"/*,IMREAD_GRAYSCALE*/);
10     if (img.empty())
11     {
12         cout << "bad file" << endl;
13         return 1;
14     }
15 
16     Mat imgSmall, imgBig1, imgBig2, imgBig3;    
17     
18     int rows = img.rows;
19     int cols = img.cols;
20     resize(img, imgSmall, Size(cols/2,rows/2), 0, 0, INTER_AREA);//變為原圖的1/2*1/2=1/4大小
21     imshow("imgSmall", imgSmall);
22 
23     resize(img, imgBig1, Size(), 3.0, 3.0, INTER_NEAREST);//顆粒感
24     imshow("imgBig1", imgBig1);
25 
26     resize(img, imgBig2, Size(), 3.0, 3.0, INTER_LINEAR);//模糊,虛,看着暈
27     imshow("imgBig2", imgBig2);
28 
29     resize(img, imgBig3, Size(), 3.0, 3.0, INTER_CUBIC);//效果好
30     imshow("imgBig3", imgBig3);
31 
32     return 0;
33 }
34 
35 int main()
36 {
37     Test1();
38     waitKey(0);
39 
40     return 0;
41 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM