【问题标题】:How can I get the number of strokes in a (hiragana) character?如何获得(平假名)字符的笔画数?
【发布时间】:2015-07-29 05:59:13
【问题描述】:

我有一组平假名字符,我想计算笔画数。

我的输入图像是这样的:

角色马:

字库:

输出将是笔画数,例如字符 ma 将返回 3 个笔画:

字符 ku 将返回 1 个笔划:

我尝试过 Canny、Hough 和 Skeletonization。它没有给我想要的东西。

我正在考虑计算连续线,但我不知道该怎么做。我发现这个已回答的问题发现了圆的不连续性 here 但它只适用于圆


*[图像被声明为Mat。我正在使用 C++、Visual Studio 2013、gcc 4.8.3 和 opencv 2.4.9。]

提前谢谢你。

【问题讨论】:

  • 所以这个问题有几个部分。一是获取线条,二是处理它们以计算笔画数。 “Canny、Hough 和 Skeletonization”以何种方式无法获取行数(或将图像分解为一组行)?
  • @mprat 我想我只是无法为 Canny、Hough 和 Skeletonization 获得正确的参数组合,这些都没有给我想要的结果。不过,我仍然愿意使用这些。

标签: c++ opencv feature-detection feature-extraction


【解决方案1】:

显然,这个问题没有一个答案。但是,您可以使用一些启发式方法。

一种选择是检测和统计笔划提示的数量s。笔划数将近似为ceil(s/2)。

  • 如果s 是偶数,这是一个合理的近似值。
  • 如果s 是奇怪的,您必须弄清楚它对您的应用程序意味着什么。

当然,像 A 这样的字母只有 2 个提示,还有第二个内线。如果这也发生在平假名中,您将不得不寻找交叉点并从那里找出您的启发式方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-15
    • 2011-06-20
    • 2010-09-27
    • 2021-09-25
    • 2020-05-18
    • 1970-01-01
    相关资源
    最近更新 更多