百度网络图片文字识别demo

weblog 1006 0 0

百度文档:https://ai.baidu.com/ai-doc/OCR/Sk3h7xyad

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import org.json.JSONObject;
import com.alibaba.fastjson.JSON;
import com.baidu.aip.ocr.AipOcr;

public class Sample {
    //设置APPID/AK/SK
    public static final String APP_ID = "...";
    public static final String API_KEY = "...";
    public static final String SECRET_KEY = "...";

    static String fileName="7";

    public static void main(String[] args) throws IOException {
        // 初始化一个AipOcr
        AipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY);

        // 可选:设置网络连接参数
        client.setConnectionTimeoutInMillis(2000);
        client.setSocketTimeoutInMillis(60000);
        
        // 调用接口
        /**
         * 	图片地址
         */
        String path = "E:\\test\\jvm\\"+fileName+".png";
        JSONObject res = client.basicGeneral(path, new HashMap<String, String>());
        Res r=JSON.parseObject(res.toString(),Res.class);
        List<Words> l=r.getWords_result();
        StringBuilder test=new StringBuilder();
        for(Words w:l) {
        	test.append(w.getWords());
        }
        BufferedInputStream bis=new BufferedInputStream(new ByteArrayInputStream(test.toString().getBytes()));
        /**
         * 	将文字输出到本地文件
         */
        BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream(new File("E:\\test\\jvm\\"+fileName+".txt")));
        int length;
        byte b[]=new byte[1024];
        while((length=bis.read(b))!=-1) {
        	bos.write(b, 0, length);
        }
        bos.flush();
        bos.close();
        bis.close();
    }
}
猜你喜欢
html 1414 iframe自适应高+iframe动态写入内容+iframe懒加载
official 632 《计算机第七版谢希仁》 [TOC]一、数据通信系统的模型  一个数据通信系统可划分为三大部分,即源系统(或发送端、发送方)、传输系统(或传输)和目的系统(或接收端`接收方)。 源系统一般
weblog 3357 使用 this.panel.BackgroundImage=global::WindowsFormsApplication2.Properties.Resources.one; 这样就给一个panel设置了背景
工具 2064 javaweb验证码1.验证码的作用:防止恶意破解密码、刷票、论坛灌水、刷页。有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试,实际上使用验证码是现在很多站通行的方
official 706 《计算机第七版谢希仁》 [TOC]一、速率  我们知道,计算机发送出的信号都是数形式的。比特(bit)来源于binarydigit,意思是一个“二进制数”,因此一个比特就是二进制数中的一个
计算机网络基础 2224 (BitPerSecond),比特率越高,单位时间内传输的数据越多。上行带宽即上行速率一般是指从你的电脑上传的速人从你的电脑进行通讯的速率。下行带宽即下行速率是指向用户电脑发送信息时的传输速率,从上下载件,
official 905 避免的一些开销。在2-16输出线路上每个时隙之前的短时隙(白色)就是放入这样的地址信息。使用统计时分复用的集中器也叫做智能复用器,它能提供对整个报的存储转发能力(但大多数复用器一次只能存储一个
official 935 /IP是一个四层的体系结构(1-18(b)),它包含应用层、运输层、际层和接口层(用际层这个名是强调这一层是为了解决不同的互连问题)。不过从实质讲,TCP/IP只有最上面的三层,因为最下
目录