首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >OCR算法的改进

OCR算法的改进
EN

Stack Overflow用户
提问于 2014-05-26 21:38:34
回答 1查看 1.8K关注 0票数 16

我正在创建一个基于Java的OCR。我的目标是从视频文件中提取文本(后处理)。

这是一个困难的搜索,试图找到免费的,完全在Java上工作的开源OCR。我发现Tess4J是唯一流行的选择,但考虑到对本机接口的需求,我不知何故倾向于从头开始开发算法。

我需要创建一个可靠的OCR,正确地识别英文字母表(计算机化的字体,而不是手写文本)以合理的准确性,给定的文本位于视频帧中的区域是预先定义的。我们也可以假设文本的颜色是给定的。

我到目前为止所做的事情:

(所有图像处理都是使用openCV的Java绑定完成的)

  1. 我提取了一些特征来训练我的分类器,使用:

A.像素强度,在将字符图像下采样到12 x 12分辨率后。(144个特征向量)

B. Gabor小波变换跨越8个不同的角度(0,11.25,22.5 ...etc),并使用所有这些角度的信号的均方值计算能量。(8个特征向量)

A+B给了我图像的特征向量。(共152个特征向量)

我有62个分类类,也就是。0,1,2...9 | a,b,c,d...y,z| A,B,C,D...Y,Z

我使用20x62个样本(每个类20个)来训练分类器。

  1. 对于分类,我使用了以下两种方法:

A.具有1个隐藏层( 120个节点)的ANN。输入层有152个节点,输出有62个节点。隐藏层和输出层具有sigmoid激活函数,网络使用弹性反向传播进行训练。

B.整个152个维度的kNN分类。

我所站的地方:

到目前为止,K-近邻搜索被证明是一种比神经网络更好的分类器。然而,即使使用kNN,我也发现很难对字母进行分类,比如:

此外,它是分类的

作为Z..。举几个反常的例子。

我要找的东西:

我想知道以下几点:

  1. 为什么ANN表现不佳?我应该使用什么样的网络配置来提升性能?我们能否将ANN调整为比kNN搜索性能更好?
  2. 我还可以使用哪些其他特征向量来使kNN更健壮?

欢迎对性能优化提出任何其他建议。

EN

回答 1

Stack Overflow用户

发布于 2015-06-11 21:02:36

对于特征向量:你对强度进行了标准化吗?也许可以使用直方图均衡化。

对于分类:看看t-SNE。它是一种随机方法,可以将高维特征简化为更容易使用的2D平面。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23871459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档