我对图像金字塔的理解及OpenCV下的实现代码
图像处理开发需求、图像处理接私活挣零花钱,请加微信/QQ 2487872782
图像处理开发资料、图像处理技术交流请加QQ群,群号 271891601
图像金字塔算法表现出来的效果就是对图像进行缩放嘛!但它同resize函数(关于resize函数的博文http://blog.csdn.net/wenhao_ir/article/details/51461286)又有所不同,具体的不同如下:
①resize函数是你想得到多大的目标图像就得到多大的目标图像,但是图像金字塔里的图像的大小是四分之一或四倍的关系,比如是放大,就是四倍,如果是缩小,就是四分之一,比如若对图像对缩小处理,那么当前层的图的大小依次为前一层图像大小的四分之一。
②resize函数进行图像缩放的原理是插值,而图像金字塔是利用滤波器实现图像的缩放。
③以后再补充吧...
具体的关于图像金字塔及resize的介绍,可以参看博文OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放_wunghao8的专栏-CSDN博客_opencv图像金字塔
代码如下
//OpenCV版本2.4.9
//图像处理开发需求、图像处理接私活挣零花钱,请加微信/QQ 2487872782
//图像处理开发资料、图像处理技术交流请加QQ群,群号 271891601#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <iostream>
// 图像金子塔采样操作
void Pyramid(cv::Mat srcImage)
{// 根据图像源尺寸判断是否需要缩放if(srcImage.rows > 400 && srcImage.cols > 400)cv::resize(srcImage, srcImage, cv::Size(), 0.5,0.5);elsecv::resize(srcImage, srcImage, cv::Size(), 1,1);cv::imshow("srcImage", srcImage);cv::Mat pyrDownImage, pyrUpImage;// 下采样过程pyrDown(srcImage, pyrDownImage, cv::Size(srcImage.cols/2, srcImage.rows/2));cv::imshow("pyrDown", pyrDownImage);// 上采样过程pyrUp(srcImage, pyrUpImage, cv::Size(srcImage.cols*2, srcImage.rows*2));cv::imshow("pyrUp", pyrUpImage);// 对下采样过程重构cv::Mat pyrBuildImage;pyrUp(pyrDownImage, pyrBuildImage, cv::Size(pyrDownImage.cols*2, pyrDownImage.rows*2));cv::imshow("pyrBuildImage", pyrBuildImage);// 比较重构性能cv::Mat diffImage;cv::absdiff(srcImage, pyrBuildImage, diffImage);//计算两个数组差的绝对值的函数cv::imshow("diffImage", diffImage);cv::waitKey(0);
}
int main()
{ cv::Mat srcImage=cv::imread("flower3.jpg");if( !srcImage.data )return -1; Pyramid(srcImage);return 0;
}
图像处理开发需求、图像处理接私活挣零花钱,请加微信/QQ 2487872782
图像处理开发资料、图像处理技术交流请加QQ群,群号 271891601
我对图像金字塔的理解及OpenCV下的实现代码相关推荐
- OpenCV图像金字塔pyrDown和pyrUp的实例(附完整代码)
OpenCV图像金字塔pyrDown和pyrUp的实例 OpenCV图像金字塔pyrDown和pyrUp的实例 OpenCV图像金字塔pyrDown和pyrUp的实例 #include "i ...
- OpenCV下肤色检测代码
先贴代码 void cvSkinSegment(IplImage* img, IplImage* mask){ CvSize imageSize = cvSize(img->width, img ...
- opencv进阶学习笔记10:图像金字塔和图像梯度
基础版笔记传送门: python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录链接: python+opencv进阶版学习笔记目录(适合有一定基础) 图像金字塔 变小 变大 原理 ...
- 图像金字塔:概念及实现
文章目录 图像金字塔:概念和实现 1. 图像金字塔的概念 2. 图像金字塔的实现方式 3. 基于OpenCV的图像金字塔实现 参考资料 图像金字塔:概念和实现 首先补充一下分辨率的概念:图像分辨率指图 ...
- 跟我学Python图像处理丨关于图像金字塔的图像向下取样和向上取样
摘要:本文讲述图像金字塔知识,了解专门用于图像向上采样和向下采样的pyrUp()和pyrDown()函数. 本文分享自华为云社区<[Python图像处理] 二十一.图像金字塔之图像向下取样和向上 ...
- OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔总结
我们经常会将某种尺寸的图像转换为其他尺寸的图像,如果放大或者缩小图片的尺寸,笼统来说的话,可以使用OpenCV为我们提供的如下两种方式: <1> resize函数.这是最直接的方式, &l ...
- OpenCV精进之路(四):图像处理——图片的缩放和图像金字塔
前言 对图像进行缩放的最简单方法当然是调用resize函数啦! resize函数可以将源图像精确地转化为指定尺寸的目标图像. 要缩小图像,一般推荐使用CV_INETR_AREA来插值:若要放大图像,推 ...
- 【OpenCV新手教程之十三】OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放...
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/26157633 作者:毛星云(浅墨) ...
- 【OpenCV入门教程之十三】OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/26157633 作者:毛星云(浅墨) ...
最新文章
- CTO让我研究中台(一):阿里的“数据+业务”双中台架构
- 配置hadoop集群,完全分布式模式
- 【OpenCV学习笔记4】OpenCV GUI 之VCWin32+OpenCV 实现细胞计数
- C语言:画一个爱心 送女票
- mysql自增字段不连续_MySQL中自增主键不连续之解决方案。(20131109)
- C#用WebBrowser与WIN API辅助模拟获取网站完整Cookie
- NHibernate 学习总结 开篇
- [eslint-plugin-vue] [vue/no-unused-vars] 'scope' is defined but never used.
- mysql通过局域网访问数据库_MySQL数据库之局域网内访问同一个mysql数据库
- Mybatis源码之与Spring集成包
- C宏的一个技巧:可变参数
- Java读书笔记(8)-单例模式
- Oracle使用NLSSORT函数实现汉字的排序
- 【全网世界区划最全整理输出之第三部分】全世界所有国家的行政区划整理,省市信息,已按照国家,省,市排好序,可直接复制使用,第三部分到12722行,总条数:21088
- cs1.6正版僵尸服务器ip,cs1.6僵尸服务器
- 《Python程序设计基础 》课堂笔记整理
- 成为高薪的AI人工智能工程师的条件
- 什么是信息增益(Information Gain)?
- SQLmap 扫描工具的使用
- C#深入学习--委托
热门文章
- 基于python的界面自动化测试-基于python的接口自动化测试+ddt数据驱动
- python基础30个常用代码大全-Python3列表内置方法大全及示例代码小结
- python各个解释器的用途-python的解释器是什么?
- python面向对象编程的优点-Python面向对象编程——总结面向对象的优点
- python游戏程序-Python游戏趣味编程
- python基础语法手册format-Python format 格式化函数
- python脚本实例手机端-Python脚本实现自动化Android手机apk安装实例
- 网页版python叫什么-python脚本和网页有何区别
- python哪里下载import包-python 如何找到import的包
- 计算机综合应用能力实总结,计算机综合应用能力实训报告总结.doc