java如何实现识别照片中的字符

查看:131
本文介绍了java如何实现识别照片中的字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

最近开发碰到一个需求,需要在用户上传的照片中识别出号码牌(一般是运动赛事中运动员的号码牌,数字与字符组合或者纯数字)。。
在网上找了很多相关的demo参考尝试,效果都不是很理想。要么就是只能数字占满整张图片的照片,要么就是类似pdf转成word那样整张照片转换成文本,结果可想而知,全都是乱码。
现在主要的问题是这些例子都不能定位出照片中的字符,然后针对这部分字符再单独做识别处理。

各位大侠之前有接触过这类项目或者有过方面研究都可以指导下小弟,谢谢啦~ >_<

1、之前参考过一个k近邻算法比对的demo,只能对数字占满整张照片的图片进行有效识别,无法定位到字符具体位置。链接描述

2、还有就是各种OCR(Optical Character Recognition,光学字符识别)开源框架提供的sdk了。主要接触了两个,一个是Asprise Java OCR链接描述,缺点是将图片整张进行字符转换,类似pdf转word那样,造成很多乱码,没法用;另一个是Tess4J链接描述,主要是用于验证码的识别,对于规规矩矩的验证码识别不错,但是比较杂乱或者照片中的字符就完全无法识别了。

各位大侠们是否可以试试这个网站链接描述,可以上传张照片看看,需要达到的效果就像这样。

右边的107标签就是上传的时候自动识别的,,,额,,,这张识别错了,但是其他照片识别成功率还是蛮高的,现在只要能识别个大概就行了,不需要太高的精确率。

解决方案

ocr
https://github.com/tesseract4java/jtesseract

这篇关于java如何实现识别照片中的字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆