zl程序教程

您现在的位置是:首页 >  后端

当前栏目

实战 | OpenCV如何将不同轮廓合并成一个轮廓(附Python / C++源码)

PythonOpencvC++源码 如何 一个 实战 不同
2023-09-27 14:25:48 时间

点击下方卡片,关注“OpenCV与AI深度学习”公众号!

视觉/图像重磅干货,第一时间送达!

导读

本文主要介绍如何用OpenCV将不同的轮廓合并成一个轮廓的实现方法和代码演示。

背景介绍

在图像处理的应用场景中常常会遇到一种情况,本来是一个整体的目标,因为不同的亮度或其他原因导致它分割成多个部分,这种情况在用OpenCV处理的时候会被当成多个轮廓(如下图所示),那么遇到这种情况,我们如何把不同的轮廓合并成一个轮廓,然后做后续的处理呢?

图片

 实现方法与步骤

这里我们不用上面的绘画图,而是使用下面这张图做演示:

图片

我们的目的:将上图中的文字轮廓看成一个整体,然后求其最小外接矩形,获得角度,将文字旋转水平,后续可以做简单的文字识别。

【1】先提取文字部分轮廓(S通道阈值处理)

hsvImg = cv2.cvtColor(src,cv2.COLOR_BGR2HSV)H,S,V = cv2.split(hsvImg)