opencv 基本数据类型 cvPoint cvSize cvScalar cvRect


points,size,rectangles和scalar三元组的结构

结构

成员

意义

CvPoint

Int x, y

图像中的点

CvPoint2D32f

Float x, y

二维空间中的点

CvPoint3D32f

Float x, y, z

三维空间中的点

CvSize

Int width, height

图像的尺寸

CvRect

Int x, y, width, height

图像的部分区域

CvScalar

Double val[4]

RGBA值


CvSize 有变体类型:CvSize2D32f 浮点类型


假设要在(5, 10)和(20, 30)之间画上一个白色矩形,只需简单调用:

cvRectangle(

myImg,

cvPoint(5, 10),

cvPoint(20, 30),

cvScalar(255, 255, 255)

);

函数功能: 通过对角线上的两个顶点绘制简单、指定粗细或者带填充的矩形

函数原型:void cvRectangle( CvArr* img, CvPoint pt1, CvPoint pt2, CvScalar color,int thickness=1, int line_type=8, int shift=0);

img -- 图像.

pt1 -- 矩形的一个顶点。

pt2 -- 矩形对角线上的另一个顶点

color -- 线条颜色 (RGB) 或亮度(灰度图像 )(grayscale image)。

thickness -- 组成矩形的线条的粗细程度。取负值时(如 CV_FILLED)函数绘制填充了色彩的矩形。

line_type -- 线条的类型。见cvLine的描述

shift -- 坐标点的小数点位数。


cvScalar 是一个特殊的例子,它有三个构造函数:

第一个是cvScalar(),它需要一个、两个、三个或四个参数并将这些参数传递给数组val[]中的相应元素,

第二个构造函数是cvRealScalar(),它需要一个参数,被传递给val[0],而val[0]数组别的值被赋为0,

最后一个有所变化的是cvScalarAll(),它需要一个参数并且val[]中的4个元素都会设置为这个参数



你可能感兴趣的:(opencv)