zoukankan      html  css  js  c++  java
  • 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(50,50,100,100);
        cvSetImageROI(s1,rect);
        cvSetImageROI(s2,rect);
    
        cvAddWeighted(s1,0.3,s2,0.7,10,s1);
        cvResetImageROI(s1);
    
        cvNamedWindow("w1");
        cvShowImage("w1",s1);
        cvWaitKey();
    
        return 0;
    }

    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 —— 图像上输出文本

  • 相关阅读:
    51Nod 1352 集合计数(扩展欧几里德)
    莫比乌斯函数
    Codefroces 919D Substring(拓扑排序+DP)
    Codeforces 918C The Monster(括号匹配+思维)
    平面分割类问题总结
    01字典树(待更新)
    进程同步和互斥??
    进程间的八种通信方式----共享内存是最快的 IPC 方式??
    super() 函数??
    HTTP协议详解??
  • 原文地址:https://www.cnblogs.com/sprint1989/p/3805016.html
Copyright © 2011-2022 走看看