我已经开发了一个系统,用于分割包含手写符号的二进制图像并对它们进行分类(具体是针对音乐)。我知道有商业应用程序可以做到这一点,但作为一个项目,我正在尝试从头开始实现它。
为了简单起见,让我们假设整个图像中只有两个元素:
音符 和 升降号
我已经构建了一个可以将图像分割成区域并对其进行分类的工具。这在大多数情况下运行良好。
然而,有时候元素会触碰到一起,此时我的分类器就崩溃了。例如:
两个元素触碰在一起
有什么最好的方法来分开这两个元素?我已经做了很多研究,但我认为我在这里缺乏领域知识!
我找到以下几点:
模板匹配不适用,因为符号是手写的 细化/侵蚀也不太可行,特别是在两个升降号(右上方)重叠在一起时,它们会被磨损得太厉害。 分水岭填充在两个复杂形状上也不太可行
这些可能起作用的方法,我希望在深入探索之前得到"可以尝试"或"避免"的投票。
滑动窗口,将它们从左往右滑动,并尝试分类。选择置信度最高的窗口和位置。 取投影(水平和垂直方向)并在最小值处“切”图像(这将是各自轴上最细的地方)。
为了简单起见,让我们假设整个图像中只有两个元素:
音符 和 升降号
我已经构建了一个可以将图像分割成区域并对其进行分类的工具。这在大多数情况下运行良好。
然而,有时候元素会触碰到一起,此时我的分类器就崩溃了。例如:
两个元素触碰在一起
有什么最好的方法来分开这两个元素?我已经做了很多研究,但我认为我在这里缺乏领域知识!
我找到以下几点:
模板匹配不适用,因为符号是手写的 细化/侵蚀也不太可行,特别是在两个升降号(右上方)重叠在一起时,它们会被磨损得太厉害。 分水岭填充在两个复杂形状上也不太可行
这些可能起作用的方法,我希望在深入探索之前得到"可以尝试"或"避免"的投票。
滑动窗口,将它们从左往右滑动,并尝试分类。选择置信度最高的窗口和位置。 取投影(水平和垂直方向)并在最小值处“切”图像(这将是各自轴上最细的地方)。