阅读486 返回首页    go 阿里云 go 技术社区[云栖]


关于图像识别,我们是否可以用一种编程语言来描述?

今天在整理照片时,发现有张图片上拍了一个表格,手动将内容抄写下来不太省力,于是想如果有一个软件可以抓取图像中的表格文字该多好。。。

 

从头设计一套软件完成这个工作量有点大,想到已经有了一些手写体识别的应用,只要在该技术基础上再增加一层接口,其实就能完成上述任务。

 

该接口要灵活,能够适应各种应用的文字识别,比如汉字手写体,英文手写体,宋体,以及上面的表格内容识别。因为一幅图像中的内容是千差万别的,我们可以借助一种图像描述原语(Image Description Primitives, IDP)来完成这些内容的区别。

 

假设有如下IDP:

 

Def "Table"  p1;   //表示该图像中有一个表格,声明为对象p1

Set Origin(x0,y0);     //表示表格的左上角像素坐标

Set End(x1,y1);        //表示表格的右下角像素坐标

p1.cols = [5-10];       //表示该表格的列数可能在5~10列之间

p1.rows = [100-200];    //行数在100~200行之间

 

Table tb = p1.GetContent();     //创建表格对象,从p1对象中抽取内容,以字符串形式存入tb中

//打印输出字符串

for(int i = 0;i<tb.rows;i++)

{

    for(int j = 0;j<tb.cols;j++)

    {

         printf("%s\t",tb[i][j]);

    }

    printf("\r\n");

}

End p1;       //销毁对象

 

 

除了表格对象,我们还可创建纯文本对象,手写体对象,英文手写体对象等,识别原语都封装到p1.GetContent()中。

 

只是一时想到的,不知有没有价值。本人只是对文字识别感兴趣,没有相关经验,一家之言,欢迎讨论。

最后更新:2017-04-03 14:53:50

  上一篇:go 网络子系统72_IP多播地址与MAC多播地址的映射关系
  下一篇:go Struts2中的&lt;s:action&gt;标签