java 屏幕识别_Java课程设计:捕获图片以及识别图中的文字
package屏幕捕捉以及识别;importjava.awt.Color;importjava.awt.FlowLayout;import java.awt.event.*;importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjava.io.IOException;importjavax.imageio.ImageIO;import javax.swing.*;importnet.sourceforge.tess4j.Tesseract;public classMain {public static voidmain(String[] args) {
JFrame f= new JFrame("屏幕捕获工具");final JTextField tf = newJTextField();
tf.setBounds(50, 50, 150, 20);
JButton b= new JButton("屏幕捕捉");
b.setBounds(20, 100, 130, 30);
JButton c=new JButton("文字识别");
c.setBounds(200, 100, 130, 30);
b.addActionListener(newActionListener() {public voidactionPerformed(ActionEvent e) {
text.filePath= "D://";try{
text.snapShot();
}catch(Exception e1) {//TODO 自动生成的 catch 块
e1.printStackTrace();
}
tf.setText("操作成功");
tf.setBackground(Color.cyan);
}
});
c.addActionListener(newActionListener() {public voidactionPerformed(ActionEvent e) {
String result=FindOCR("D:\\GuiCamera_test3.png",true); //此处判断是否使用中文训练库
System.out.println(result);byte []a=result.getBytes();
FileOutputStream out= null;try{
out= new FileOutputStream("D:\\text.txt");
}catch(FileNotFoundException e1) {//TODO 自动生成的 catch 块
e1.printStackTrace();
}try{
out.write(a);
}catch(IOException e1) {//TODO 自动生成的 catch 块
e1.printStackTrace();
}try{
out.close();
}catch(IOException e1) {//TODO 自动生成的 catch 块
e1.printStackTrace();
}
tf.setText("操作成功");
tf.setBackground(Color.cyan);
}public String FindOCR(String srImage, booleanZH_CN) {try{
System.out.println("start");double start=System.currentTimeMillis();
File imageFile= newFile(srImage);if (!imageFile.exists()) {return "图片不存在";
}
BufferedImage textImage=ImageIO.read(imageFile);
Tesseract instance=Tesseract.getInstance();
instance.setDatapath("C:\\Program Files (x86)\\Tesseract-OCR\\tessdata");//设置训练库
if(ZH_CN)
instance.setLanguage("chi_sim");//中文识别
String result = null;
result=instance.doOCR(textImage);double end=System.currentTimeMillis();
System.out.println("耗时"+(end-start)/1000+" s");returnresult;
}catch(Exception e) {
e.printStackTrace();return "发生未知错误";
}
}
});
f.add(b);
f.add(c);
f.add(tf);
f.setSize(600, 250);
f.setLocationRelativeTo(null);
f.setLayout(null);
f.setVisible(true);
}
}
java 屏幕识别_Java课程设计:捕获图片以及识别图中的文字相关推荐
- java 密码生成器_Java课程设计-随机密码生成器
1.团队课程设计博客链接 2.个人负责模板 设计程序运行界面,数据的输入,判断数据输入类型的错误,判断密码类型是否选择. 3.自己的代码提交记录截图 4自己负责模块或任务详细说明 (一)总体设计 1. ...
- java闹钟程序设计_JAVA课程设计_闹钟的设计与实现项目-报告_附源代码.doc
JAVA课程设计_闹钟的设计与实现项目-报告_附源代码 第2章 MACROBUTTON AcceptAllChangesInDoc [双击此处键入1级标题] PAGE 2 - PAGE 1 - .. ...
- java atm柜机_java课程设计-ATM柜机模拟程序.doc
java课程设计-ATM柜机模拟程序 课程设计(大作业)报告课程名称:面向对象程序设计课程设计 设计题目:ATM柜员机模拟程序 院 系:信息技术学院 班 级: 设 计 者: 学 号: 指导教师: 设计 ...
- 五子棋java百度文库_JAVA课程设计 五子棋(内附完整代码).doc
JAVA课程设计 五子棋(内附完整代码) JAVA课程设计 设计题目:五子棋游戏 简要的介绍五子棋 五子棋的起源 五子棋,又被称为"连五子.五子连.串珠.五目.五目碰.五格.五石.五法.五联 ...
- java蜘蛛纸牌_Java课程设计——蜘蛛纸牌
一.团队名称.团队成员介绍.任务分配 团队名称:Panta 团队成员介绍 网络1713蔡炜明[组长] 201721123076 网络1713高枫 [组员] 201721123090 任务分配 网 ...
- java 坦克大战_java课程设计之坦克大战
本文实例为大家分享了java坦克大战的具体代码,供大家参考,具体内容如下 环境要求: 操作系统:Windows 10 JAVA虚拟机:JDK1.8以上 开发环境:Eclipse(4.5以上) 功能提示 ...
- java火柴游戏_Java课程设计—拿火柴小游戏
1 import java.awt.event.*;2 import javax.swing.*;3 importjava.util.Timer;4 importjava.util.Random;5 ...
- java cs系统_Java课程设计——基于CS模式的用户管理系统
Java笔记 Java项目设计思路: MVC设计模式: M:model:数据模型,类似于数据库中得一张表. V:view:视图,呈现给用户得操作界面,用户点击按钮等操作后会展示一些界面等. C:con ...
- java人事管理系统_Java课程设计——人事管理系统
1 packagePersonSystem;2 3 import java.awt.*;4 import java.awt.event.*;5 import javax.swing.*;6 impor ...
最新文章
- (转)I,P,B帧和PTS,DTS的关系
- 机器学习 1、R语言
- 图像处理之基础---高斯低通滤波在指定区域画放大圆形图
- Xposed注入实现分析及免重启定制
- Codeforces Round #703 (Div. 2)
- html 表单优化,用CSS3优化HTML5表单的步奏
- 判断sem信号量为零_将信号量递减为零的进程崩溃时,如何恢复信号量?
- pureftpd 如何修改管理员密码
- C++_new创建的数组作为参数传递
- 微软将VB和C#合二为一 年底推出全新平台VS2010
- Extjs项目实战视频教程
- Cross-lingual Transfer of Correlations between Parts of Speech and Gaze Features 阅读笔记
- 常用大部分渗透工具下载
- python re sub用法_python re模块常见使用方法整理
- 电压基准和稳压电源-BUCK\BOOST原理讲解
- 【Git】规范化 Git 提交信息 Commitizen
- autoit-v3 编辑工具SciTE Script Editor 解决中文乱码+中文换行崩溃问题
- PixelMe怎么使用?一文教你制作像素风图片
- 人生没有白走的路,每一步都算数
- 5、LATEX-algorithm2e伪代码中文模板
热门文章
- Wordpress 网站设计入门 脚注编辑
- 火车订票管理系统/火车购票网站系统/火车订票网站/火车票售卖系统
- c++语言表白超炫图形_几个超炫的专业词汇
- 网页布局中的 px,em,rem,pt
- 动态平衡网格交易_微笑每周答——定投基金,哪种方法最好?低估值、动态再平衡、网格交易法、价值平均策略,总有一款适合你...
- 时间机器 Time Machine 三星T7 移动硬盘SSD解决方案
- linux上项目运行日志导致磁盘空间不够的问题
- 工资计算器读写数据文件
- 中学计算机课小课题,小学信息技术课堂有效教学的探索课题
- 字节跳动核心竞争力到底是什么?