关闭

ConvertScale,cvConvert , cvScale

标签: opencv
943人阅读 评论(0) 收藏 举报
分类:

ConvertScale

使用线性变换转换数组

void cvConvertScale( const CvArr* src, CvArr* dst, double scale=1, double shift=0 );

#define cvCvtScale cvConvertScale

#define cvScale cvConvertScale

#define cvConvert( src, dst ) cvConvertScale( (src), (dst), 1, 0 )

src

输入数组.

dst

输出数组

scale

比例因子.

shift

该加数被加到输入数组元素按比例缩放后得到的元素上

函数 cvConvertScale 有多个不同的目的因此就有多个同义函数(如上面的#define所示)。该函数首先对输入数组的

元素进行比例缩放,然后将shift加到比例缩放后得到的各元素上,即: dst(I)=src(I)*scale + (shift,shift,...),最后可

选的类型转换将结果拷贝到输出数组。


多通道的数组对各个通道是独立处理的。

类型转换主要用舍入和溢出截断来完成。也就是如果缩放+转换后的结果值不能用输出数组元素类型值精确表达,就

设置成在输出数组数据轴上最接近该数的值。


如果 scale=1, shift=0 就不会进行比例缩放. 这是一个特殊的优化,相当于该函数的同义函数名:cvConvert

如果原来数组和输出数组的类型相同,这是另一种特殊情形,可以被用于比例缩放和平移矩阵或图像,此时相当于该

函数的同义函数名:cvScale。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:279365次
    • 积分:3844
    • 等级:
    • 排名:第8285名
    • 原创:83篇
    • 转载:182篇
    • 译文:0篇
    • 评论:9条
    文章分类
    最新评论