OpenCV核心功能---基本绘图

理论

它表示由其图像坐标x和y指定的2D点。 我们可以将其定义为:

标量

  • 表示4元素向量。 Scalar类型在OpenCV中广泛用于传递像素值。
  • 在本教程中,我们将广泛使用它来表示BGR颜色值(3个参数)。 如果不使用它,则没有必要定义最后一个参数。
  • 让我们看一个例子,如果我们被要求提供颜色参数,我们将定义BGR颜色,例如:Blue = a,Green = b和Red = c。

代码

此代码位于OpenCV示例文件夹中,本处不再提供。

解释

1.由于我们计划绘制两个例子(一个原子和一个车),我们必须创建02个图像和两个窗口来显示它们。

2.我们创建了绘制不同几何形状的函数。 例如,要绘制原子,我们使用MyEllipse和MyFilledCircle:

3.为了绘制车,我们使用了MyLine,矩形和MyPolygon:

4.让我们查看每个函数内部的内容:

我们可以看到,MyLine只调用函数cv :: line,它执行以下操作:

  • 从Point start到Point end绘制一条线
  • 该行显示在图像img中
  • 线颜色由标量(0,0,0)定义,标量是与黑色对应的RGB值
  • 线条粗细设置为厚度(在这种情况下为2)
  • 该线的连接模式是8(lineType = 8)

从上面的代码中,我们可以观察到函数cv :: ellipse绘制一个椭圆:

  • 椭圆显示在图像img中
  • 椭圆中心位于(w / 2.0,w / 2.0),并包含在一个大小为(w / 4.0,w / 16.0)的盒子中
  • 椭圆旋转角度
  • 椭圆在0到360度之间延伸
  • 图的颜色将是标量(255,0,0),这意味着RGB值为蓝色。
  • 椭圆的线宽为2。

与椭圆函数类似,我们可以观察到圆圈作为参数接收:

  • 将显示圆圈的图像(img)
  • 圆心表示为点中心
  • 圆的半径:w / 32.0
  • 圆的颜色:标量(0,0,255),表示BGR中的红色
  • 由于厚度= -1,因此圆圈将被填充。

要绘制填充多边形,我们使用函数cv :: fillPoly。 我们注意到:

  • 多边形将在img上绘制
  • 多边形的顶点是ppt中的点集
  • 要绘制的顶点总数是npt
  • 要绘制的多边形数量仅为1
  • 多边形的颜色由标量(255,255,255)定义,它是白色的BGR值

我们使用Opencv自带的绘制函数,我们注意到:

  • 矩形将在rook_image上绘制
  • 矩形的两个相对顶点由点(0,7 * w / 8.0)和点(w,w)定义
  • 矩形的颜色由标量(0,255,255)给出,它是黄色的BGR值
  • 由于厚度值由** - 1 **给出,因此矩形将被填充。

运行结果

猜你喜欢

转载自blog.csdn.net/LYKymy/article/details/83119670