OpenCV学习之基础知识

OpenCV基础知识

命名规则

  1. 通用函数名cvActionTargetMod(…)

    • Action表示核心函数,如:Set、Creat等
    • target表示目标区域,如:轮廓、多边形
    • Mod表示可选变种,如:变量类型
  2. 通用矩阵数据类型CV_(bit_depth)(S|U|F)C(number_of_channels)

    • S表示带符号整数
    • U表示无符号整数
    • F表示浮点数
    • number_of_channels表示通道数
  3. 通用图像数据类型IPL_DEPTH_(bit_depth)(S|U|F),如IPL_DEPTH_8U表示8位无符号整数图像

  4. 头文件:cv.h、cvaux.h、highgui.h、cxcore.h

基本数据结构

  1. 图像结构IplImage
  2. 矩阵向量结构CvArr ,如:IplImage 、CvMat 、CvSeq
  3. 其他数据结构
(1)点的表示
    CvPoint p = cvPoint(int x,int y);
    CvPoint2D32f p = ...;
    CvPoitn3D32f p = ...;
    p.x=5.0;
    p.y=5.0;
(2)长方形维数的表示
    表示长方形维数的数据结构及用法:
    CvSize r = cvSize(int width, int height);
    CvSizeD32f r = ...;
(3)有偏移量的长方形表示
    CvRect r = cvRect(int x,int y,int width,int height);

矩阵的使用与操作

  • 分配与释放矩阵
(1)分配矩阵
    CvMat * M = cvCreateMat(int rows,int cols,int type);
    其中,type为矩阵类型:CV_(bit_depth)(S|U|F)C(number_of_channels)
(2)释放矩阵
    cvReleaseMat(&M);
(3)复制矩阵
    M2 = cvCloneMat(M1);
(4)初始化矩阵
    CvMat Ma;
    cvinitMatHeader(&Ma,3,4,CV_64FC1,a);
(5)初始化单位矩阵
    CvMat* M = cvCreateMat(4,4,CV_32FC1);
    cvSetIdentity(M);
  • 访问矩阵元素
(1)直接访问
    cvmSet(M,i,j,2.0);
    t = cvmGet(M,i,j);
(2)已知对齐方式直接访问
    CvMat* M = cvCreateMat(4,4,CV_32FC1);
    int n = M->cols;
    float* data = M->data.fl;
    data[i*n+j
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值