获取图像轮廓

轮廓曲线

void findContours(InputOutPutArray image,
				 OutputArrayOfArrays contours, 
				 OutputArray hierarchy, 
			 	 int mode, 
				 int method, 
				 Point offset = Point());

参数详解:

  • 第一个参数:
  • 第二个参数:
  • 第三个参数:
  • 第四个参数:
  • 第五个参数:
  • 第六个参数:
  • 第七个参数:
void drawContours(InputOutPutArray image,
				 OutputArrayOfArrays contours, 
				 int contourIdx,
				 const Scalar& color,
				 int thickness = 1,
				 int lineType = 8,
				 InputArray hierarchy = noArray(), intmaxLevel = INT_MAX, Point offset = Point()
			 	);

参数详解:

  • 第一个参数:
  • 第二个参数:
  • 第三个参数:
  • 第四个参数:
  • 第五个参数:
  • 第六个参数:
  • 第七个参数:
  • 第八个参数:
  • 第九个参数:

寻找凸包

凸包:将对象最外层的点连接起来构成的凸多边形。
凸缺陷

void

程序示例

使用多边形将轮廓包围

  1. 正矩形边界
Rect boundingRect(InputArray points);
  1. 最小包围矩形
RotatedRect minAreaRect(InputArray points);
  1. 最小包围圆形
void minEnclosingCircle(InputArray points, 
						Point2f& center,
						float& radius);
  1. 椭圆拟合
RotatedRect fitEllipse(InputArray points);
  1. 逼近多边形曲线
void approxPolyDP(InputArray curve,
				  OutputArray approxCurve,
				  double epsilon,
				  bool closed);

分水岭算法

基本思想:把图像的灰度值当做海拔高度,局部极小值称为盆地,盆地的边缘形成分水岭。

void watershed(InputArray image,
			   InputOutputArray markers);

程序示例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值