pyrDown

高斯金字塔:金字塔从i层生成第i+1层,我们要先用高斯核对Gi进行卷积,然后,删除所有偶数行和偶数列。这样,新得到的图像面积会变为源图像的四分之一。循环上述过程,即可产生整个金字塔。

头文件:opencv2/imgproc/imgproc.hpp

作用: 进行图像降采样,其实就是对图像进行缩小,每次面积变为原来的四分之一(内部高斯金字塔)

函数原型:

void pyrDown( InputArray src, OutputArray dst,
                           const Size& dstsize = Size(), int borderType = BORDER_DEFAULT )
  • 参数1 src:源图像Mat对象
  • 参数2 dst:目标图像Mat对象
  • 参数3 dstsize :目标图像的大小,经测试只能输入为源图像的1/2,如想继续缩小可在缩小的基础上进行
  • 参数4 borderType :边缘类型,默认不填即可

示例:

#include<opencv2/highgui/highgui.hpp>
#include<opencv2/imgproc/imgproc.hpp>
#include<bits/stdc++.h>
using namespace std;
int main() {
    cv::Mat image=cv::imread("C:\\Users\\Administrator\\Desktop\\2-1.jpg", 0);;
    cv::namedWindow("Example1",cv::WINDOW_AUTOSIZE);
    cv::namedWindow("Example2",cv::WINDOW_AUTOSIZE);
    cv::imshow("Example1", image);
    cv::Mat image1;
    cv::pyrDown(image, image1);    //降采样
    cv::imshow("Example2", image1);
    cv::waitKey(0);
}
Last modification:August 10th, 2020 at 02:55 pm