美文网首页
013-Opencv笔记-图像金字塔

013-Opencv笔记-图像金字塔

作者: 赌二八定律 | 来源:发表于2020-03-19 10:45 被阅读0次
图像金字塔概念 – 高斯金字塔

高斯金子塔是从底向上,逐层降采样得到。
降采样之后图像大小是原图像MxN的M/2 x N/2 ,就是对原图像删除偶数行与列,即得到降采样之后上一层的图片。
高斯金子塔的生成过程分为两步:
- 对当前层进行高斯模糊
- 删除当前层的偶数行与列
即可得到上一层的图像,这样上一层跟下一层相比,都只有它的1/4大小。

高斯不同(Difference of Gaussian-DOG)

定义:就是把同一张图像在不同的参数下做高斯模糊之后的结果相减,得到的输出图像。称为高斯不同(DOG)
高斯不同是图像的内在特征,在灰度图像增强、角点检测中经常用到。

上采样(cv::pyrUp) – zoom in 放大
降采样 (cv::pyrDown) – zoom out 缩小

pyrUp(Mat src, Mat dst, Size(src.cols2, src.rows2))
生成的图像是原图在宽与高各放大两倍
pyrDown(Mat src, Mat dst, Size(src.cols/2, src.rows/2))
生成的图像是原图在宽与高各缩小1/2

#include "pch.h"
#include <opencv2/opencv.hpp>
#include <iostream>
#include "math.h"

using namespace cv;
int main(int agrc, char** argv) {
    Mat src, dst;
    src = imread("D:/11.jpg");
    if (!src.data) {
        printf("could not load image...");
        return -1;
    }

    char INPUT_WIN[] = "input image";
    char OUTPUT_WIN[] = "sample up";
    namedWindow(INPUT_WIN, CV_WINDOW_AUTOSIZE);
    namedWindow(OUTPUT_WIN, CV_WINDOW_AUTOSIZE);
    imshow(INPUT_WIN, src);

    // 上采样
    pyrUp(src, dst, Size(src.cols*2, src.rows * 2));
    imshow(OUTPUT_WIN, dst);

    // 降采样
    Mat s_down;
    pyrDown(src, s_down, Size(src.cols / 2, src.rows / 2));
    imshow("sample down", s_down);

    // DOG
    //两次高斯结果相减,得到高斯去除掉的部分
    Mat gray_src, g1, g2, dogImg;
    cvtColor(src, gray_src, CV_BGR2GRAY);//灰度图
    GaussianBlur(gray_src, g1, Size(5, 5), 0, 0);//高斯滤波,去除噪声
    GaussianBlur(g1, g2, Size(5, 5), 0, 0);//高斯滤波,去除噪声
    subtract(g1, g2, dogImg, Mat());//相减

    // 归一化显示 内容颜色太浅需要重新规定范围
    normalize(dogImg, dogImg, 255, 0, NORM_MINMAX);//规定取值范围
    imshow("DOG Image", dogImg);
    imshow("result g1", g1);
    imshow("result g2", g2);

    waitKey(0);
    return 0;
}
效果一
效果二

相关文章

  • 013-Opencv笔记-图像金字塔

    图像金字塔概念 – 高斯金字塔 高斯金子塔是从底向上,逐层降采样得到。降采样之后图像大小是原图像MxN的M/2 x...

  • 图像金字塔入门

    图像金字塔 图像金字塔在图像处理领域应用比较多,上课的时候只记得老师讲的一个大概的概念:图像金字塔和普通金字塔一样...

  • 图像金字塔

    概述 图像金字塔其实说白了就是披着金字塔外衣的图像缩放,在OpenCV中,有关图像金字塔的操作有pyrup()和p...

  • 1.14 openCV-python 图像金字塔

    图像金字塔

  • 高斯金字塔和拉普拉斯金字塔

    图像金字塔 作用:以多分辨率解释图像图像金字塔 底部是待处理的图像(高分辨率),顶部是低分辨率的近似 两种金字塔:...

  • OpenCV系列 --- 图像金字塔

    大家好,今天学习的时候遇到了图像金字塔的问题,那么今天就聊聊图像金字塔的话题吧! 其实图像金字塔也没有那么高大上,...

  • pyrDown(图像降采样)

    概念 图像降采样其实就是对图像进行缩小,这里涉及到图像金字塔的概念,高斯金字塔和拉普拉斯金字塔使我们经常遇到的。●...

  • pyrUp(图像升采样)

    概念 图像升采样其实就是对图像进行放大,这里涉及到图像金字塔的概念,高斯金字塔和拉普拉斯金字塔使我们经常遇到的。●...

  • OpenCV-Python学习(十二):图像金字塔

    目录: 1.图像金字塔1)高斯金字塔2)拉普拉斯金字塔 使用图像金字塔创建一个新的水果,“Orapple” 一、图...

  • 【图像处理】如何对一幅图像进行放大放小

    【图像处理】OpenCV系列十五 --- 对一幅图像进行放大、放小 上一篇我们学习了图像金字塔,图像金字塔有两种实...

网友评论

      本文标题:013-Opencv笔记-图像金字塔

      本文链接:https://www.haomeiwen.com/subject/ammcshtx.html