1

在我问了同样的类似问题之前,我尝试使用分水岭来分割连接字符,但效果不佳。一周前,我在谷歌搜索的 stackoverflow 上遇到了同样的问题,连接字符的分割,在回答用户中,作者mmgp提供了一种使用形态学方法和关闭操作的解决方案,但我并不了解全部。

我只是在命中和未命中形态中细化图像。

在此处输入图像描述 原始图像

在此处输入图像描述 细化图像 细化图像在此处输入图像描述的大图像(放大)

4 连接可以将数字9拆分为单个字符,但44仍然连接。

我对连接字符的分割有一些疑问

1.为什么需要将原始图像调整为200像素然后对其进行细化。

为什么不立即稀释原始图像。

2.如何提取这些分支点并对细化图像应用形态学闭合。

我只知道闭合形态是腐蚀膨胀的结合操作。

关闭的垂直线需要 2*height+1(这是结构元素高度?),我不知道如何设置。结构元素如何构造(3*3 或其他?)。

最后他们得到以下图像

在此处输入图像描述

我需要一些帮助,有人可以告诉我如何应用关闭操作并超越图像。谢谢。

4

2 回答 2

1

我已经使用前景功能和背景功能解决了这个问题。

一些人在下面详细介绍了这个算法:

使用上下文知识分割和识别手写数字串的遗传框架

波斯语和英语中手写数字字符串的分割。

流动的图像是我的捕捉。

前景区域和前景骨架

在此处输入图像描述 在此处输入图像描述

背景区域和背景骨架

在此处输入图像描述 在此处输入图像描述

44的骨架图像。

在此处输入图像描述

基于以上特征点,我们可以构造一个分割路径来分割449位。

于 2013-03-21T06:46:15.657 回答
0

使用以下方法进行关闭操作:

kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(2*h+1,1))
closed_img = cv.morphologyEx(img, cv.MORPH_CLOSE, kernel)
于 2019-06-11T06:58:32.910 回答