实现图片中文的识别和获取图片上文字的坐标(java实现) 您所在的位置:网站首页 图片上的文字怎么查找关键字 实现图片中文的识别和获取图片上文字的坐标(java实现)

实现图片中文的识别和获取图片上文字的坐标(java实现)

2024-06-01 17:53| 来源: 网络整理| 查看: 265

 实现图片中文的识别和获取图片上文字的坐标(java实现)

           现在利用python来进行图片的文字识别较为普遍,但是如果我们利用常用的家庭电脑来识别,需要的时间比较长,达到20~30s, 但是如果我们采用javacv这个视觉处理库来    实现图片的识别和文字定位,在同样的电脑配置中需要的时间可以减缩至5s以下,大大提高了工作效率,以下内容为如何利用javacv视觉库处理获取图片上的文字以及文字    在图片的坐标。已成功调试运行的Demo(windows平台)javacv图片文字定位https://blog.csdn.net/qq_37307077/article/details/111408748_Javacv大图找小图-Java文档类资源-CSDN下载可下载

  1.下载好已训练好的中文语言包chi_sim.traineddata,需要其他语言包可到github上下载。   2.准备好windows、Linux、max不同操作平台上的javacv api(下载路径javacv图片文字识别各操作平台的apijar包_javacv文字识别-Java文档类资源-CSDN下载);   3.上代码。

            获取图片中所有文字:

public class ImageOcr { public static void main(String[] args) throws Exception{ System.out.println("开始识别"); long starttime = System.currentTimeMillis(); //获取当前程序执行绝对路径。 String currentfile=System.getProperty("user.dir"); String text = Ocr("chi_sim", currentfile, currentfile+"/screencap.png"); System.out.println("discriminate interval:" + (System.currentTimeMillis() - starttime) + ",ocr text:" + text); } public static String Ocr(String lang, String langpath, String imageurl) throws UnsupportedEncodingException{ //创建字节容器。 BytePointer outtext; //启动识别器 TessBaseAPI ocrapi = new TessBaseAPI(); //初始化识别器的语言包 if (ocrapi.Init(langpath, lang) != 0) { System.out.println("Could not initialize tesseract"); return null; } //读取源图片 PIX image = pixRead(imageurl); //识别器装入图片 ocrapi.SetImage(image); //识别器识别进行段。 outtext = ocrapi.GetUTF8Text(); try { return outtext.getString("utf-8"); } finally { //最后释放资源 ocrapi.End(); outtext.deallocate(); pixDestroy(image); } } }

     4.编译运行效果显示

        用window下的cmd,编译运行如下:

源图片 :              编译识别:                                                                                   

    获取图片上每一行文字的在图片上坐标,效果如下:

          

    获取图片上指定文字的坐标,效果如下:

          

          

5.总结             由于时间仓促,并没有对语言包进行过多的训练,但识别效果还是不错的,如果图片出现比较多的色块,识别效果并没那么好,当然,你可以通过代码对图片的进行灰度化处理,          这样也可以有很好的识别效果。由于自身所从事的手机自动化工作,为了更好地处理手机屏幕上的图片,获取到更加精准的手机屏幕信息,减轻工作强度,所以此代码操作          适用于手机截屏的图片,你也可以识别其他图片的信息。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有