OpenCV4入门教程059:图像绘制(文字)
索引地址:系列索引
一般添加噪声是添加水印,也就是将文字写到图片上面。
本文介绍OpenCV在图片上绘制图像的方法。
基本图像绘制
文字
函数原型:
1 |
|
测试代码:
1 |
|
测试效果如下:
可以通过getTextSize
函数来获取指定字体字号的文字的文本框的宽和高。
直线
函数原型:
1 |
|
参数:
- img: 要绘制线段的图像。
- pt1: 线段的起点。
- pt2: 线段的终点。
- color: 线段的颜色,通过一个Scalar对象定义。
- thickness: 线条的宽度。
- lineType: 线段的类型。可以取值8, 4, 和CV_AA, 分别代表8邻接连接线,4邻接连接线和反锯齿连接线。默认值为8邻接。为了获得更好地效果可以选用CV_AA(采用了高斯滤波)。
- shift: 坐标点小数点位数。
测试代码:
1 |
|
测试结果:
圆
函数原型:
1 |
|
参数说明:
- img为源图像
- center为画圆的圆心坐标
- radius为圆的半径
- color为设定圆的颜色,规则根据B(蓝)G(绿)R(红)
- thickness 如果是正数,表示组成圆的线条的粗细程度。否则,表示圆是否被填充
- line_type 线条的类型。默认是8
- shift 圆心坐标点和半径值的小数点位数
测试代码:
1 |
|
测试结果如下:
椭圆圆弧和椭圆扇形
1 |
|
参数说明:
- img:图像。
- center:椭圆圆心坐标。
- axes:轴的长度。
- angle:偏转的角度。
- start_angle:圆弧起始角的角度。.
- end_angle:圆弧终结角的角度。
- color:线条的颜色。
- thickness:线条的粗细程度。
- line_type:线条的类型,见CVLINE的描述。
- shift:圆心坐标点和数轴的精度。
函数ellipse用来绘制或者填充一个简单的椭圆弧或椭圆扇形。圆弧被ROI矩形所忽略。反走样弧线和粗弧线使用线性分段近似值。所有的角都是以角度的形式给定的。图片下面要解释参数的含义。
测试代码:
1 |
|
测试效果:
绘制多边形
函数说明:
1 |
|
参数说明:
- img 图像。
- pts 折线的顶点指针数组。
- npts 折线的定点个数数组。也可以认为是pts指针数组的大小
- contours 折线的线段数量。
- is_closed 指出多边形是否封闭。如果封闭,函数将起始点和结束点连线。
- color 折线的颜色。
- thickness 线条的粗细程度。
- line_type 线段的类型。参见cvLine。
- shift 顶点的小数点位数。
测试代码:
1 |
|
测试效果如图:
矩形
函数原型为:
1 |
|
参数说明:
- img 图像
- pt1 矩形的一个顶点。
- pt2 矩形对角线上的另一个顶点 color 线条颜色 (RGB) 或亮度(灰度图像 )(grayscale image)。
- thickness 组成矩形的线条的粗细程度。取负值时(如 CV_FILLED)函数绘制填充了色彩的矩形。
- line_type 线条的类型。见cv::line的描述
- shift 坐标点的小数点位数。
测试代码:
1 |
|
测试效果:
OpenCV4入门教程059:图像绘制(文字)
https://blog.jackeylea.com/opencv/opencv-draw-image-and-text/