OpenCV —— 矩阵和图像操作
cvAbs , cvAbsDiff , cvAbsDiffS
cvAdd , cvAddS , cvAddWeighted(可添加权重)
#include <cv.h>
#include <highgui.h> int main(int argc,char** argv)
{
IplImage *s1,*s2;
s1=cvLoadImage("wukong.jpg",CV_LOAD_IMAGE_COLOR);
s2=cvLoadImage("test.jpg",CV_LOAD_IMAGE_COLOR); CvRect rect=cvRect(,,,);
cvSetImageROI(s1,rect);
cvSetImageROI(s2,rect); cvAddWeighted(s1,0.3,s2,0.7,,s1);
cvResetImageROI(s1); cvNamedWindow("w1");
cvShowImage("w1",s1);
cvWaitKey(); return ;
}
cvAvg —— 数组平均值
cvAvgSdv —— 计算像素的标准差
cvCalcCovarMatrix —— 假定这些向量表示的点是高斯分布,计算这些点的均值和协方差矩阵 !! PCA
cvCmp , cvCmpS —— 智能应用于单通道的图像
cvConvertScale —— 将源图像的数据类型转变成目标图像的数据类型;或者,对图像数据执行线性变换(scale shift)
cvConvertScaleAbs —— 先缩放和平移,然后计算出绝对值,最后进行数据类型的转换
cvCopy
cvCountNonZero
cvCrossProduct —— src1和src2都必须是单道数组
cvCvtColor
cvDet —— 计算方阵的行列式,单通道 (若已知矩阵对称正定,可通过奇异值分解的策略来解决)
cvDiv —— src2 除以 src1 中对应的元素,最终的结果存到dst中
cvDotProduct —— 点积,单通道
cvEigenVV —— 计算矩阵的特征值和相应的特征向量 (若已知矩阵对称正定,最好通过奇异值分解的策略来解决) ,小于10*10
cvFlip —— 将图像绕X或Y轴旋转
cvGEMM —— 广义矩阵乘法
cvGetCol cvGetCols —— 提取矩阵中的某一列,以向量的形式返回
cvGetDiag —— 从矩阵中选择某一条对角线并将其作为向量返回
cvGetDims cvGetDimSize —— 对于矩阵和图像,由cvGetDims 返回的sizes的次序总是先是行数然后是列数
cvGetRow cvGetRows
cvGetSubRect —— 与其他选择数组子区域的函数一样,仅仅返回一个被函数填充的头(指向期望子矩阵数据),不涉及内存的分配和数据的复制
cvInRange cvInRangeS —— 检查图像中像素的灰度是否属于某一指定的范围 (src可以是任意类型,若是多通道,每个通道都分别处理)
cvInvert —— 矩阵的逆 CV_LU CV_SVD CV_SVD_SYM
cvMahalonobis —— Mahalonobis 距离(一点和高斯分布中心之间的向量距离)
cvMax cvMaxS
cvMerge —— cvSplit 的逆运算,4个数组将被合并到数组dst中
cvMin cvMinS
cvMinMaxLoc —— 找出数组arr中的最大值和最小值,返回他们的地址
cvMul —— 简单乘法,对应元素相乘 —— 元素之间的乘法(vs cvGEMM矩阵乘法)
cvNot
cvNorm —— 范数,相对距离
cvNormalize
cvOr cvOrS
cvReduce —— 对输入的矩阵的每一行或每一列进行系统的转换,使之成为向量dst
cvRepeat —— 将src的内容复制到dst,重复多次,直到dst没有多余的空间
cvScale == cvConvertScale
cvSet cvSetZero
cvSetIdentity —— 除了行数与列数相等以外的所有元素的值都设置为0,行数与列数相等的元素值都设置为1
cvSolve —— 求解线性方程组 (可用来解决超定的线性方程组,使用SVD方法找到的方程组的最小二乘解)
cvSplit —— 分别复制每个通道到多个单通道图像
cvSub cvSubS cvSubRS
cvSum
cvSVD —— 奇异值分解
cvTrace —— 矩阵的迹是对角线元素的总和,输入的数组不需要是方阵
cvTranspose cvT —— 矩阵转置,不支持多通道数组
cvXor cvXorS
cvZero
cvLine 绘制直线
cvRectangle
cvCircle cvEllipse cvEllipseBox(椭圆的外接矩形)
cvFillPoly cvFillConvexPoly cvPolyLine —— 多边形
cvPutTex —— 图像上输出文本
OpenCV —— 矩阵和图像操作的更多相关文章
- 《学习opencv》笔记——矩阵和图像操作——cvCalcCovarMatrix,cvCmp and cvCmpS
矩阵和图像的操作 (1)cvCalcCovarMatrix函数 其结构 void cvCalcCovarMatrix(计算给定点的均值和协方差矩阵 const CvArr** vects,//给定向量 ...
- 《学习opencv》笔记——矩阵和图像操作——cvSetIdentity,cvSolve,cvSplit,cvSub,cvSubS and cvSubRS
矩阵和图像的操作 (1)cvSetIdentity函数 其结构 void cvSetIdentity(//将矩阵行与列相等的元素置为1.其余元素置为0 CvArr* arr//目标矩阵 ); 实例代码 ...
- 《学习opencv》笔记——矩阵和图像操作——cvAnd、cvAndS、cvAvg and cvAvgSdv
矩阵和图像的操作 (1)cvAnd函数 其结构 void cvAnd( //将src1和src2按像素点取"位与运算" const CvArr* src1,//第一个矩阵 cons ...
- 《学习opencv》笔记——矩阵和图像操作——cvAbs,cvAbsDiff and cvAbsDiffS
矩阵和图像的操作 (1)cvAbs,cvAbsdiff,cvAbsDiffS 它们的结构为: void cvAbs( //取src中元素的绝对值,写到dst中 const CvArr* src, co ...
- 《学习opencv》笔记——矩阵和图像操作——cvInRange,cvInRangeS,cvInvert and cvMahalonobis
矩阵和图像的操作 (1)cvInRange函数 其结构 void cvInRange(//提取图像中在阈值中间的部分 const CvArr* src,//目标图像 const CvArr* lowe ...
- 《学习opencv》笔记——矩阵和图像操作——cvCrossProduct and cvCvtColor
矩阵和图像的操作 (1)cvCrossProduct函数 其结构 void cvCrossProdust(//计算两个三维向量的叉积 const CvArr* src1, const CvArr* s ...
- 《学习opencv》笔记——矩阵和图像操作——cvConvertScale,cvConvertScaleAbs,cvCopy and cvCountNonZero
矩阵和图像的操作 (1)cvConvertScale函数 其结构: void cvConvertScale( //进行线性变换,将src乘scale加上shift保存到dst const CvArr* ...
- openCV 矩阵(图像)操作函数
有很多函数有mask,代表掩码,如果某位mask是0,那么对应的src的那一位就不计算,mask要和矩阵/ROI/的大小相等.大多数函数支持ROI,如果图像ROI被设置,那么只处理ROI部分 少部分函 ...
- python进阶—OpenCV之常用图像操作函数说明(转)
文章目录cv2.thresholdcv2.bitwise_andcv2.bitwise_orcv2.bitwise_notcv2.inRangecv2.resizecv2.adaptiveThresh ...
随机推荐
- jqueryEasyui重新渲染
转载: jQuery EasyUI parser 的使用场景 | WebUI框架使用参考+http://www.easyui.info/archives/216.html parser,故名意思,就是 ...
- plt.rcParams[]
plt.rcParams[] pylot使用rc配置文件来自定义图形的各种默认属性,称之为rc配置或rc参数.通过rc参数可以修改默认的属性,包括窗体大小.每英寸的点数.线条宽度.颜色.样式.坐标轴. ...
- yii2.0 数据生成 XML 格式。
return 部分的数组就是你要生成 xml 的数据. 生成的格式如下: yii2.0 中使用 xml 就是这么简单!
- Hexo 与 Git 集成
git初始化项目 登录Github,初始化GitHub Pages项目.即是添加一个Git Project. 点击New repository创建一个新的Project.需要填写选项如下: - ...
- linux Cenos-7.0下安装jdk搭建环境变量
搭建linux系统的java环境本人目前所知有两种方式: 第一种是从oracle官网下载linux系统的jdk版本: 第二种是使用yum命令的方式下载安装,咱们今天讲的是第一种方式. 一.工具准备: ...
- docker常用命令,学习笔记
- 常用命令 https://docs.docker.com images > docker images # 查看本地镜像 > docker images -a # 查看所(含中间镜像层 ...
- malloc()和free()的原理及实现
在C语言中只能通过malloc()和其派生的函数进行动态的申请内存,而实现的根本是通过系统调用实现的(在linux下是通过sbrk()系统调用实现). malloc()到底从哪里得到了内存空间?答案是 ...
- quick 3.3载入Spine问题
近期项目要升级到Quick 3.3, 而且使用了Spine作为动画编辑器, 在此把升级过程中.有关quick 3.3 载入Spine遇到的坑在此记录一下. 1.Spine版本号问题 首先Quick 3 ...
- 荣耀A55高调上市仅仅为孤独求败?
坦白说.华为近年来在手机市场上确实取得了一些成绩.比方之前P6的出现就凭借超薄的设计.突出的性价比让大家看到了国产手机的新希望.按理说.在手机市场上尝到甜头的华为应该继续坚持低价.亲民的路线, ...
- Windows 7: Update is not applicable to your computer
https://www.sevenforums.com/windows-updates-activation/119088-update-not-applicable-your-computer.ht ...