如何通过OpenCV实现形状检测的实战技巧?
- 内容介绍
- 文章标签
- 相关推荐
本文共计936个文字,预计阅读时间需要4分钟。
目录+前言+一、图像预处理+二、形状识别+三、源码+四、结果展示+总结+前言+本案例通过使用OpenCV中的approxPolyDP函数进行多边形近似,进而进行基础形状识别(圆形、三角形、矩形、星形)。
目录
- 前言
- 一、图像预处理
- 二、形状识别
- 三、源码
- 四、结果显示
- 总结
前言
本案例通过使用OpenCV中的approxPolyDP进行多边形近似,进而进行基础形状识别(圆、三角形、矩形、星形…)。下面就一起来看看具体是如何实现的吧。
一、图像预处理
原图如图所示:
首先第一步先进行图像预处理,得到二值图像。
Mat gray; cvtColor(src, gray, COLOR_BGR2GRAY); Mat gaussian; GaussianBlur(gray, gaussian, Size(3, 3), 0); Mat thresh; threshold(gaussian, thresh, 0, 255, THRESH_BINARY_INV | THRESH_OTSU);
结果如图所示。
本文共计936个文字,预计阅读时间需要4分钟。
目录+前言+一、图像预处理+二、形状识别+三、源码+四、结果展示+总结+前言+本案例通过使用OpenCV中的approxPolyDP函数进行多边形近似,进而进行基础形状识别(圆形、三角形、矩形、星形)。
目录
- 前言
- 一、图像预处理
- 二、形状识别
- 三、源码
- 四、结果显示
- 总结
前言
本案例通过使用OpenCV中的approxPolyDP进行多边形近似,进而进行基础形状识别(圆、三角形、矩形、星形…)。下面就一起来看看具体是如何实现的吧。
一、图像预处理
原图如图所示:
首先第一步先进行图像预处理,得到二值图像。
Mat gray; cvtColor(src, gray, COLOR_BGR2GRAY); Mat gaussian; GaussianBlur(gray, gaussian, Size(3, 3), 0); Mat thresh; threshold(gaussian, thresh, 0, 255, THRESH_BINARY_INV | THRESH_OTSU);
结果如图所示。

