OpenCV 手册(用于速记)——持续更新完善

 

OpenCV数据类型

cv::Mat

原型:cv::Mat(int rows, int cols, int type)、cv::Mat(cv::Size sz, int type)、cv::Mat(int ndims,const int* sies,int type)

作用:任意维度的稠密数组

参数:指定数据类型的二维数组、指定数据类型的二维数组、指定数据类型的多维数组

操作:cv::Mat(const Mat&mat,const cv::Range&rows,const cv::Range&cols)  从指定的行列中复制数据的复制构造函数

           cv::Mat::zeros(rows,clos,type) 构造一个指定类型的矩阵

           M.at<int>(pt)   整形矩阵M中处于(pt.x ,pt.y)的元素

           m.row(i)  m中的i行数组

           m.rowRange(i0,i1)   m中第i0行到的i1-1行所构成的数组

           m.diag(d)   m中偏移为d的对角线所组成的数组

           m(cv::Rect(i0,j0,w,h)) m中从点(i0,j0)到点(i0+w-1,j0+h-1)所包含数据组成的数组

cv::saturate_cast<>()

作用:饱和转换防溢出

cv::SparesMat

原型:cv::SparesMat sm(3,zs,CV_32F)

作用:稀疏矩阵(在非0元素非常少的情况下使用)

参数:创建一个由sz指定维度大小的三通道稀疏浮点矩阵

操作:cv::SparseMat::ptr()、cv::SparseMat::ref()、cv::SparseMat::value()、cv::SparseMat::find()

cv::Vec<>

原型:cv::Vec{2,3,4,6}{b,w,s,i,f,d}

作用:固定向量类

参数:cv::Vec2i、cv::Vec3i、cv::Vec4d (分别对应2个元素的整型向量、3和元素的整型向量和4个元素的双精度浮点向量):

操作:v3f.cross(u3f)向量叉乘

cv::Matx<>

原型:cv::Matx{1,2,3,4,6}{1,2,3,4,6}{f,d}

作用:固定矩阵类

参数:与Vec<>类似;运算效率高、消耗动态内存分配操作

操作:Matx33f::all(x)、Matx23d::zeros()、Matx16f::ones()、Matx33f::eye()、m1.dot(m2) 点积

cv::Point

原型:cv::Point{2,3}{i,f}

作用:点类

参数:cv::Point2i、cv::Point3i

操作:p1.dot(p2) 点乘、p1.cross(p2) 叉乘、p.inside(r) 判断一个点p是否在矩形r内

cv::Scalar

原型:cv::Scalar(x0,x1,x2,x3)

作用:四维点类(四维双精度向量的快速表示)

参数:

操作:s1.mul(s2) 元素相乘、s.conj() (四元素)共轭、s.isReal() (四元素)真值测试

cv::Size

原型:cv::Size(w,h)

作用:获取width和height,size类在实际操作是与Point类相似,而且可以与Point类相互转换

参数:cv::Size、cv::Size2i、cv::Size2f

操作:sz.area() 计算面积

cv::Rect

原型:cv::Rect(x,y,w,h) 、cv::Rect(p,sz)、cv::Rect(p1,p2) 

作用:矩形类Rect包含Point类的成员x和y(矩形左上角)和size类的成员with和heigh

参数:起始点和大小、起始点和大小、两个对角

操作:r.area() 计算面积、r.tl() 提取左上角、r.br() 提取右下角、r.contains(p) 判断点p是否在矩形r内

          r3=r1&r2 矩形交集区域、r3=r1|r2 矩形共同区域、rx=r+x 平移x个数量、rs=r+s 扩大size大小、r1==r2 矩形是否相等

cv::RotatedRect

原型:cv::RotatedRect(p,sz,theta)

作用:包含一个中心点cv::Point2f、一个大小cv::Size2f和一个额外的角度float的容器

参数:中心点、大小和角度

操作:

cv::Complex

原型:cv::Complexf(re0)、cv::Complexd(re0,im1)

作用:基础类型 复数类

参数:单精度复数、双精度复数

操作:z1.conj() 复共轭

cv::Range

原型:cv::Range(int start, int end)

作用:cv::Range用来确定一个连续的整数序列

参数:范围包含初始值start,但不包含终止值

操作:rng.size() 获取元素数量、rng.empty() 是否含有元素

工具函数

cv::alignPtr()        对齐指针到给定字节数

cv::alignSize()      将缓存区大小与给定的字节数对齐

cv::allocate()        分配一个C风格的数组对象

cvCeil()                  近似一个浮点数x到不小于x的最近的整数(向上取整)

cv::cubeRoot        计算一个数的立方根

cv::CV_Assert()    如果给定的条件不为真,则抛出异常

cv::deallocate()     释放一个c风格的数组对象         

cv::fastAtan2()      向量的二维角度的计算

cv::fastFree()         释放一个内存缓存区

cv::fastMalloc()     分配一个对其的内存缓存区    

cvFloor()                近似一个浮点数x到不大于x的最近的整数(向下取整数)

cv::format()            以sprintf类似格式创建一个STL字符串

cvIsInf()                  判断一个浮点数x是否无穷

cvIsNaN()               判断一个浮点数x是否不是一个数

cvRound()              近似一个浮点数x到最近的整数


​​​​​OpenCV矩阵操作


​​​​​OpenCV绘图和注释


​​​​​OpenCV函数子


​​​​​OpenCV图像、视频与数据文件

 

 

 


 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值