OpenCV改变图像大小的操作,resize与图像金字塔方法
来源:互联网 发布:淘宝上新产品如何运营 编辑:程序博客网 时间:2024/05/22 05:01
原文链接:http://blog.csdn.net/xiaoshengforever/article/details/12191303
OpenCV改变图像大小的操作有两类:resize与图像金字塔,但是这两类操作差别还是比较大的。
一、resize
函数原型
void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR )
各个参数的意义比较直观,但是需要注意的是dsize与fx和fy必须不能同时为零,也就是说要么dsize不为零而fx与fy同时可以为0,要么dsize为0而fx与fy不同时为0;resize函数的目标大小可以是任意的大小,可以不保持长宽比率,删除的像素或者新增的像素值通过interpolation控制;
二、图像金字塔
pyrDown与pyrUp分别表示向下降采样与向上升采样,但是二者并不是互为逆操作;
void pyrDown(InputArray src, OutputArray dst, const Size& dstsize=Size(), int border-
Type=BORDER_DEFAULT )
void pyrUp(InputArray src, OutputArray dst, const Size& dstsize=Size(), int border-
Type=BORDER_DEFAULT )
这两个操作实现图像金字塔的经典操作,他们仅仅是分别代表一次采样操作,也就是说,向下(或者向上)进行相邻层次的金字塔采样,调用一次pyrDown函数只能降低到原图像尺寸的1/2;反之,调用pyrUp目标图像则为原图像尺寸的2倍。因为它们内部都给定了一次采样尺寸的约束。也就是说采样之后,长宽比基本是不变的。
例子:
void ResizeDemo()
{
//将原图像变为32*32,长宽比被改变了
}
void PyrDown()
{
//金字塔向下或者向上采样操作 ,基本不改变图像长宽比率
}
总结:resize可以一次性将原图像变为任意不为0的尺寸,适合用来做归一化图像操作;而pyrDown与pyrUp适合做长宽比率不变得操作,且调用一次只能变为1/2或者2倍~~~
- OpenCV改变图像大小的操作,resize与图像金字塔方法
- OpenCV改变图像大小的操作,resize与图像金字塔方法
- OpenCV resize函数改变图像的大小
- opencv中用Resize和图像金字塔改变尺寸的区别
- opencv改变图像大小cvResize和resize
- OpenCV改变图像大小的操作
- OpenCV改变图像大小的操作
- OpenCV改变图像大小的操作
- 改变图像大小(Resize)
- opencv图像resize(改变图片大小)
- opencv图像的金字塔
- OPENCV入门教程八:resize改变图像尺寸
- OpenCV:resize()重新调整图像大小
- OpenCV--图像的缩放-resize()
- 9基于opencv的图像金字塔_高斯金字塔_拉普拉斯金字塔与图片尺寸缩放
- 改变图像的大小
- opencv resize一张图像
- opencv 金字塔图像分割
- 适配器模式
- 学习笔记2015-11-16
- Objective-C编码规范
- Android 通过JitPack 发布开源项目到jcenter
- Java内部类的使用小结
- OpenCV改变图像大小的操作,resize与图像金字塔方法
- 字符识别opencv c++版
- 在onMeasure中获取已测量的子控件的宽高
- Notification (API14) 创建过程
- 263. Ugly Number
- Archive上传包出现错误ERROR ITMS-90005?
- c++类的操作符重载
- 数据库的优化-敏感信息的查询
- 图片64编码和解码