前言

缘由

图片识别文字,咱用java也可以

通过java+百度ocr,实现一个截图或上传图片,图片识别文字的小工具。并通过exe4j工具将jar包封装成exe可执行桌面文件,方便使用及学习。


Tip

一位特别的老友即将在2023年10月26日年满30周岁,愿平安喜乐


快速链接

公众号:【JavaDog程序狗】

关注公众号,发送 ocr ,无任何套路即可获得


成果初展

可执行的ocr-java.exe文件

图片识别

选择图片

截图


主要目标

实现3大重点

1. Java Swing页面基础布局
2. 百度ocr使用方法
3. exe4j工具如何将jar打成exe文件

正文

前置条件

Java环境(必备)

后端以Java Swing为框架基础,所以Java基础是前置条件

百度ocr(必须)

  • 登录百度云官网,点击【立即使用】

https://cloud.baidu.com/product/ocr.html

  • 根据提示步骤进行无脑申请免费试用

  • 申请完成,可在线调试

  • 【通用文字识别-标准版】在线测试

exej(非必须)

将jar打包成可直接运行的exe文件,如果不打包可以不掌握


技术栈

后端

插件 版本 用途
jdk 1.8 java环境
lombok 1.18.12 代码简化插件
maven 3.6.3 包管理工具
BeautyEye 1.0.0 Java Swing 跨平台外观实现
hutool 5.5.8 Java工具类库
okhttp3 4.9.3 网络请求框架
json 20160810 JSON解析工具
slf4j 2.0.7 日志类库

重点解析

Java Swing页面基础布局

1. 代码结构

2. 初始化容器

3. 屏幕选择截图

4. 选择图片文件

5. 图片识别文字


百度ocr配置

1. 获取应用配置参数

https://console.bce.baidu.com/ai/#/ai/ocr/app/list

2. 设置参数

将上方的找到的API_KEYSECRET_KEY放置OcrUtil工具类中

3. 运行调试

启动java程序即可

  1. 启动成果


将java项目打包成jar

1. 模块设置

【右击】项目根目录ocr-java-master,【点击】选中Open Module Settings

2. 打包配置
  • 【点击】左侧Artifacts,新增打包配置

  • 配置主启动类,并【点击】OK

  • 指定jar输出路径Output directory【点击】OK或者Apply即可配置成功

3. 测试打包
  • 点击idea工具栏,Build=>Build Artifacts

  • Action选择Build即可

4. 查看打包结果
  • 到上方配置的输出路径查看jar包

5. 测试jar包是否可用

在当前路径下,使用命令启动,展示页面即可

java -jar ocr-java-master.jar


exe4j将jar打包exe

1. 什么是exe4j

exe4j 是一个帮助你集成 Java 应用程序到 Windows 操作环境的 java 可执行文件生成工具,无论这些应用是用于服务器,还是图形用户界面(GUI)或命令行的应用程序。exe4j 帮助你以一种安全的方式启动你的 java 应用程序,来显示本地启动画面,检测及发布合适的 JRE 和 JDK,以及进行启动时所发生的错误处理等。

2. 下载exe4j

https://exe4j.apponic.com/download/

3. 安装exe4并打开
  • 无脑安装就可,然后打开软件

4. 将jar打包成exe

按照exe4j左测步骤进行打包流程

  • 1.Welcome

    姓名、公司随便录入,许可证密钥,网上百度一个即可,填完即可【点击】下一步

  • 2.Project type

    选择项目类型,JAR in EXE mode,【点击】下一步

  • 3.Application info

    录入应用名,并设置输出路径,【点击】下一步

  • 4.Executable info

    配置对应文件名、打包后图、选择64-bit可执行文件的体系结构、配置可执行清单的选项,【点击】下一步

  • 5.Java invocation

    选择生成的jar包路径、设置主启动类、设置exe输出位置、并配置是否加载三方依赖,【点击】下一步

  • 6.JRE

    设置jre版本为1.8,并选择本机JRE环境,无脑默认【点击】下一步

  • 7.Splash screen

    无脑默认【点击】下一步

  • 8.Messages

    无脑默认【点击】下一步

  • 9.Compile executable

这一步将会自动生成exe可执行文件

5. 查看打包结果

总结

本文通过Java+百度ocr,实现图片识别文字小工具。从Java Swing页面基础布局,百度ocr配置,将java项目打包成jar,exe4j将jar打包exe四个方面入手,实现功能的同时,也熟悉了其他工具的使用,学以致用特来分享一下。

猜你想问

如何与狗哥联系进行探讨

关注公众号【JavaDog程序狗】

公众号回复【入群】或者【加入】,便可成为【程序员学习交流摸鱼群】的一员,问题随便问,牛逼随便吹。

此群优势:

  1. 技术交流随时沟通
  2. 任何私活资源免费分享
  3. 实时科技动态抢先知晓
  4. CSDN资源免费下载
  5. 本人一切源码均群内开源,可免费使用
2.踩踩狗哥博客

javadog.net

大家可以在里面留言,随意发挥,有问必答


猜你喜欢

文章推荐

【苹果】SpringBoot监听Iphone15邮件提醒,Selenium+Python自动化抢购脚本

【项目实战】SpringBoot+uniapp+uview2打造H5+小程序+APP入门学习的聊天小项目

【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序

【模块分层】还不会SpringBoot项目模块分层?来这手把手教你!

【ChatGPT】手摸手,带你玩转ChatGPT

【ChatGPT】SpringBoot+uniapp+uview2对接OpenAI,带你开发玩转ChatGPT


【实操】Java+百度ocr,实现图片识别文字小工具的更多相关文章

  1. python截图+百度ocr(图片识别)+ 百度翻译

    一直想用python做一个截图并自动翻译的工具,恰好最近有时间就在网上找了资料,根据资料以及自己的理解做了一个简单的截图翻译工具.整理一下并把代码放在github给大家参考.界面用python自带的G ...

  2. Java调用OCR进行图片识别

    使用Java语言,通过Tesseract-OCR对图片进行识别. 1.Tesseract-OCR 下载windows版本并安装. 2.程序如下: a.ImageIOHelper类 package OC ...

  3. 微信小程序接入百度OCR(身份证识别)

    微信小程序接入百度OCR(身份证识别) 1.接口描述 支持对二代居民身份证正反面所有8个字段进行结构化识别,包括姓名.性别.民族.出生日期.住址.身份证号.签发机关.有效期限,识别准确率超过99%:同 ...

  4. InkImageDataSetGenerator-开源一个可用于机器学习的书写轨迹图片生成的小工具

    这是一个简单易用的图片数据集生成小工具,基于OpenCV和UWP Ink API,它可以根据指定的手写轨迹生成一系列各个角度的图片.每张图片的尺寸和总体数量都是可以指定的,均存放在统一的生成目录中.h ...

  5. 基于百度OCR的图片文字识别

    先上图,有图有真相 首先在百度开通ORC服务,目前是免费的,普通识别每天50000次免费,非常棒! 百度文档:http://ai.baidu.com/docs#/OCR-API/top 下载百度SDK ...

  6. 图片识别文字, OCR

    文章引用自: https://www.cnblogs.com/stone_w/archive/2011/10/08/2202397.html 方式一.Asprise-OCR的使用. Asprise-O ...

  7. 白痴级教程,新手看过来,具详细实操文档 (word图片复制不过来,0202年了还有这样的不便利,下回研究一下,图片下次补)

    一.环境配置(win10): 1.配置cmd的python环境为arcmap10.2 自带的python解释器(2.7.3)(自带arcpy库) 具体操作: 1我的电脑右击属性,打开 (选中path点 ...

  8. java操作数据库增删改查的小工具1--TxQueryRunner

    在java程序中,一般使用jdbc连接数据库,比较麻烦,在看传智教程时学了一个工具类,用于简化与数据库之间的操作步骤,就是TxQueryRunner,他是QueryRunner的子类,用起来和他是一样 ...

  9. java操作数据库增删改查的小工具2--TxQueryRunner

    当涉及到多表查询时,如数据库中有两张表分别为t_person和t_address,表结构如下: 其中t_person的外键为t-address的主键aid, 新建两个javaBean类,Person ...

  10. 爬虫笔记之自如房屋价格图片识别(价格字段css背景图片偏移显示)

    一.前言 自如房屋详情页的价格字段用图片显示,特此破解一下以丰富一下爬虫笔记系列博文集. 二.分析 & 实现 先打开一个房屋详情页观察一下: 网页的源代码中没有直接显示价格字段,价格的显示是使 ...

随机推荐

  1. C++面试八股文:std::deque用过吗?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第26面: 面试官:deque用过吗? 二师兄:说实话,很少用,基本没用过. 面试官:为什么? 二师兄:因为使用它的场景很少,大部分需要性能.且需要自 ...

  2. springboot自定义消息转换器

    import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.serializer.SerializerFeature; im ...

  3. Java版人脸跟踪三部曲之三:编码实战

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 作为<Java版人脸跟踪三部曲> ...

  4. 一体化元数据管理平台——OpenMetadata入门宝典

    大家好,我是独孤风,一位曾经的港口煤炭工人,目前在某国企任大数据负责人,公众号大数据流动主理人.在最近的两年的时间里,因为公司的需求,还有大数据的发展趋势所在,我开始学习数据治理的相关知识.今天给大家 ...

  5. List子集合__小记

    List集合的子实现类的特点: ArrayList: 底层数据结构是数组的形式,满足数组结构的特点:查询快,增删慢 从线程安全问题来看:线程不安全的,不同步,执行效率高 Vector: 底层数据结构是 ...

  6. 常用语言的线程模型(Java、go、C++、python3)

    背景知识 软件是如何驱动硬件的? 硬件是需要相关的驱动程序才能执行,而驱动程序是安装在操作系统内核中.如果写了一个程序A,A程序想操作硬件工作,首先需要进行系统调用,由内核去找对应的驱动程序驱使硬件工 ...

  7. Linux 概念:存储

    块存储 (略) 文件存储 基于文件系统的本地文件存储: 基于网络的共享文件存储:NFS.Samba.Windows文件共享: 基于网络的分布式文件存储:HDFS... 对象存储 一种Key(对象ID) ...

  8. TypeChat源码分析:基于大语言模型的定制化 AI Agent 交互规范

    TypeChat源码分析:基于大语言模型的定制化 AI Agent 交互规范 本文深入介绍了微软最近发布的 TypeChat 项目,该项目允许开发者定义大语言模型返回的响应结构.通过分析源代码,探讨了 ...

  9. spring-mvc系列:简介和基本使用

    目录 一.简介 1.什么是MVC 2.什么是SpringMVC 3.SpringMVC的特点 二.基本使用 1.开发环境 2.创建maven工程 3.配置web.xml 4.创建SpringMVC的配 ...

  10. Unity的IUnityLinkerProcessor:深入解析与实用案例

    Unity IUnityLinkerProcessor Unity IUnityLinkerProcessor是Unity引擎中的一个接口,它允许开发者在Unity项目构建时对代码进行链接处理.这个接 ...