Opencv函数总结

用到的一些函数,今后方便查询。(本文将不断更新)

 

cvPyrDown函数:缩放图像为源图像的一半

void cvPyrDown(const CvArr*src,CvArr*dst,int filter=CV_GAUSSIAN_5x5);
参数:
src 输入图像。
dst 输出图像,其宽度和高度应是输入图像的一半。
filter 卷积滤波器类型,目前仅支持CV_GAUSSIAN_5x5。
-------------------------------------------------------------
CV_MAT_ELEM 宏:从矩阵中取出元素
参数1:待提取的矩阵
参数2:元素类型
参数3:矩阵的行
参数4:矩阵的列
类似函数(宏):CV_MAT_ELEM_PTR  返回的是指针,使用前需要转换成需要的指针
-------------------------------------------------------------
cvPtr1D函数:从矩阵中取出元素所在的指针() //有函数族:cvPtr*D
如果只是取出元素的数据,可以使用cvGet*D
浮点型的单通道矩阵,可以使用cvmSet或者cvmGet函数,很简单
-------------------------------------------------------------
矩阵和图像的基本操作的函数

1、cvAddS:计算数量和数组的和

void cvAddS( const CvArr* src, CvScalar value, CvArr* dst, const CvArr*
mask=NULL );
src原数组.
value被加入数量
dst输出数组
mask操作的覆盖面(8-bit 单通道数组)  ;只有覆盖面指定的输出数组被修改
函数cvAddS 用数量值与原数组src1 的每个元素想加并存贮结果到
dst(I)=src(I)+value if mask(I)!=0
除覆盖面外所有数组都必须有相同的类型,相同的大小(或ROI 大小)
 

2、cvAbsDiff 计算两个数组差的绝对值的函数。

void cvAbsDiff( const CvArr* src1, const CvArr* src2, CvArr* dst );
src1  第一个原数组
src2  第二个原数组
dst  输出数组
dst(I)c = abs(src1(I)c - src2(I)c).
所有数组必须有相同的数据类型相同的大小(或ROI大小)
 

3、cvAbsDiffS 计算数组元素与数量之间差的绝对值

void cvAbsDiffS( const CvArr* src, CvArr* dst, CvScalar value );
src原数组.
dst输出数组
value数量.
dst(I)c = abs(src(I)c - valuec).
所有数组必须有相同的数据类型相同的大小(或ROI大小)

4、cvAdd()  两个数组元素级的加运算
5、vAddWeighted(  const  CvArr* src1,  double  alpha,  
               const  CvArr* src2,  double  beta,  
               double  gamma, CvArr* dst );  
src1    第一个原数组.   
alpha    第一个数组元素的权值   
src2    第二个原数组   
beta    第二个数组元素的权值   
dst    输出数组   
gamma    添加的常数项。   
函数功能: cvAddWeighted 计算两数组的加权值的和:   
dst(I)=src1(I)*alpha+src2(I)*beta+gamma   
所有的数组必须有相同的类型相同的大小(或ROI大小)
6、cvAvg 计算两个数组的平均值
7、cvAvgSdv  计算矩阵的平均值和标准差
8、cvCmp  两个矩阵进行比较运算
void cvCmp(const CvArr* src1, constCvArr* src2, CvArr* dst, int cmp_op);//两矩阵比较运算
如果判断为假,dst设为0,如果判断为真,dst设为0xff
cvCmpS  数组与标量进行的比较运算,(输入数组只能是单通道)
9、cvConvertScale 使用线性变换(缩放)转换数组 
void cvConvertScale( const CvArr* src, CvArr* dst, double scale=1, double shift=0 );
src 输入数组. 
dst 输出数组 
scale 比例因子. 
shift 该加数被加到输入数组元素按比例缩放后得到的元素上 
10、cvConvertScaleAbs  使用线性变换转换输入数组元素成8位无符号整型
void cvConvertScaleAbs( const CvArr* src, CvArr* dst, double scale=1, double shift=0 );
其中参数含义:
src : 原数组
dst :输出数组 (深度为 8u).
scale :比例因子.
shift :原数组元素按比例缩放后添加的值。
函数 cvConvertScaleAbs 与前一函数是相同的,但它是存贮变换结果的绝对值:
dst(I)=abs(src(I)*scale + (shift,shift,...))
11、cvCountNonZero //计算数组中非0元素的个数
12、cvDet  计算方阵的行列式
13、cvDiv  用另外的数组对原数组进行元素级的除法运算
14、cvFlip  沿着某个轴旋转
更多函数:
Opencv函数总结

Opencv函数总结

Opencv函数总结

Opencv函数总结

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值