【OpenCV】OpenCV实战从入门到精通之 -- 基本图像绘制

OpenCV基本图像绘制函数写法

目录

1、DrawEllipse()函数的写法

2、DrawFilledCircle()函数的写法

3、DrawPolygon()函数的写法

4、DrawLine()函数的写法

基本绘制图形代码:

moveWindow函数


基本图像绘制涉及到的绘制函数如下:

  • 用于绘制直线的line函数
  • 用于绘制椭圆的ellipse函数
  • 用于绘制矩形的rectangle函数
  • 用于绘制圆的circle函数
  • 用于绘制填充的多变形的fillPoly函数

下边代码WINDOW_WIDTH有如下的宏定义:

# define WINDOW_WIDTH 600   //定义窗口大小的宏


1、DrawEllipse()函数的写法

//-------------------------------【DrawEllipse( )函数】--------------------------------
//		描述:自定义的绘制函数,实现了绘制不同角度、相同尺寸的椭圆
//-----------------------------------------------------------------------------------------
void DrawEllipse( Mat img, double angle )
{
	int thickness = 2;
	int lineType = 8;

    //调用OpenCV中ellipse函数
	ellipse( img,
		Point( WINDOW_WIDTH/2, WINDOW_WIDTH/2 ),
		Size( WINDOW_WIDTH/4, WINDOW_WIDTH/16 ),
		angle,
		0,
		360,
		Scalar( 255, 129, 0 ),
		thickness,
		lineType );
}

 上述代码,调用了OpenCV中ellipse函数:

  • 椭圆绘制在img上
  • 椭圆中心点为( WINDOW_WIDTH/2, WINDOW_WIDTH/2 )
  • 大小位于矩形( WINDOW_WIDTH/4, WINDOW_WIDTH/16 )内
  • 椭圆旋转角度为angle,扩展的弧度从0度到360度。从水平方向逆时针为正,顺时针为负
  • 图色为Scalar(255, 129, 0)代表的蓝色
  • 线宽(thickness)为2
  • 线型(lineType)为8(8联通线型)

2、DrawFilledCircle()函数的写法

//-----------------------------------【DrawFilledCircle( )函数】---------------------------
//		描述:自定义的绘制函数,实现了实心圆的绘制
//-----------------------------------------------------------------------------------------
void DrawFilledCircle( Mat img, Point center )
{
	int thickness = -1;
	int lineType = 8;

	circle( img,
		center,
		WINDOW_WIDTH/32,
		Scalar( 0, 0, 255 ),
		thickness,
		lineType );
}

&nb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值