作者:翟天保Steven
著作權宣告:著作權歸作者所有,商業轉載請聯系作者獲得授權,非商業轉載請注明出處
函式原型
// 向上采樣
void pyrUp( InputArray src, OutputArray dst,
const Size& dstsize = Size(), int borderType = BORDER_DEFAULT );
// 向下采樣
void pyrDown( InputArray src, OutputArray dst,
const Size& dstsize = Size(), int borderType = BORDER_DEFAULT );
引數說明
- InputArray型別的src,輸入影像,
- OutputArray型別的dst,輸出影像,
- const Size&型別的dstsize,輸出影像尺寸,一般默認即可,
- int型別的borderType,推斷影像邊緣像素的邊界模式,
測驗代碼
#include <iostream>
#include "opencv2/core.hpp"
#include "opencv2/highgui.hpp"
#include "opencv2/imgproc.hpp"
using namespace cv;
using namespace std;
int main()
{
cv::Mat src = imread("test.jpg",0);
cv::Mat th1,th2;
int row = src.rows;
int col = src.cols;
// 向下采樣,高斯平滑+縮小尺寸
pyrDown(src, th1, Size(0, 0), 4);
// 向上采樣,放大尺寸+高斯平滑
pyrUp(th1, th2, Size(0, 0), 4);
imshow("original", src);
imshow("pyrDown", th1);
imshow("pyrUp", th2);
waitKey(0);
return 0;
}
測驗效果
向下采樣會先高斯平滑再縮小尺寸,對向下采樣后的圖進行向上采樣,恢復到原來大小,但是因為經歷了兩次高斯模糊,所以采樣后的圖必然相較原圖有微小程度的失真~
如果文章幫助到你了,可以點個贊讓我知道,我會很快樂~加油!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/310680.html
標籤:其他
