zoukankan      html  css  js  c++  java
  • 高斯图像金字塔

    上采样:将图像放大

    下采样:将图像缩小

    高斯金字塔就是从下向上进行下采样,具体分为以下两个步骤

    1.对图像进行高斯模糊

    2.删除偶数行列

    高斯不同:同一张图片在不同参数(σ)下做的高斯模糊之后相减的结果

    高斯不同是图像的内在特征,在灰度图像增强和角点检测中经常用到。

    上采样

    pyrUp(src,dst,Size(src.cols*2,src.rows*2));

    下采样

    pyrDown(src,dst,Size(src.cols/2,src.rows/2));

    代码

    #include<iostream>
    #include<opencv2/opencv.hpp>
    
    using namespace std;
    using namespace cv;
    
    int main(int argc,char **argv)
    {
        Mat src, dst1,dst2;
        src = imread("b.jpg");
        if (src.empty())
        {
            cout << "load img failed" << endl;
            return -1;
        }
    
        imshow("input img", src);
    
        pyrUp(src, dst1, Size(src.cols * 2, src.rows * 2));
        pyrDown(src, dst2, Size(src.cols / 2, src.rows / 2));
    
        Mat gray_src,g1, g2,DOG;
    
        cvtColor(src, gray_src, CV_BGR2GRAY);
        GaussianBlur(gray_src, g1, Size(3, 3), 0, 0);
        GaussianBlur(gray_src, g2, Size(5,5), 0,0);
        subtract(g1, g2, DOG, Mat());
    
        normalize(DOG, DOG, 255, 0, NORM_MINMAX);//归一化,将数据拉到0~255范围
        imshow("DOG", DOG);
        imshow("upsample", dst1);
        imshow("downsample", dst2);
        waitKey(0);
        return 0;
    }

    屏幕太小了下采样放不下了

     

    高斯不同

     用不同大小的滤波器也会得到不同的效果,注意一点,以下两种方法得到的高斯不同一样

    有点类似于GoogleNet那个inception block的感觉,用两个连续的小卷积核代替一个大卷积核

    将滤波器尺寸变大得到的效果

  • 相关阅读:
    SVG ViewBox
    svg中改变class调用的线条颜色
    SVG 箭头线绘制
    Spring3中的mvc:interceptors标签配置拦截器
    MyBatis入门学习
    MyBatis 配置sql语句输出
    使用iBATIS3.0完成增删改查
    iBatis简单入门教程
    SpringMVC常用注解,返回方式,路径匹配形式,验证
    springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
  • 原文地址:https://www.cnblogs.com/wangtianning1223/p/12066532.html
Copyright © 2011-2022 走看看