基于java百度AI文字识别

一开始自己也看了很久,查看了一下人家写的代码,然后自己重新理解了一下,所以决定把我的理解分享出来。
首先我们登陆百度AI平台,查看文字识别的文档—调用方式
在这里插入图片描述
这里会告诉你一些参数要求,我们先关注请求限制的那部分,说明了图片要经过base64编码后再进行URLEncode.那我们先准备一个类进行图片的编码。
Base64code:

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URLEncoder;

import org.apache.tomcat.util.codec.binary.Base64;

import sun.misc.BASE64Encoder;


public class Base64Code {
   
    /**
     * 将一张本地图片转化成Base64字符串
     *
     * @param imgPath 本地图片的路径
     * @return 图片转化base64后再UrlEncode结果,这是百度api告诉我们的调用方式
     */
	public static String getImageStrFromPath(String imgPath) {
   
        InputStream in;
        byte[] data = null;
        // 读取图片字节数组
        try {
   
            in = new FileInputStream(imgPath);
            data = new byte[in.available()];//in.available()返回的是数据流的长度
            in.read(data);//查看源码发现这个方法才是真正为了给data赋值,上面的只是创建大小
            in.close();
        } catch (IOException e) {
   
            e.printStackTrace();
        }
        // 对字节数组Base64编码
        Base64 encoder = new Base64();
        // 返回Base64编码再经过URLEncode编码的字节数组字符串
        return URLEncoder.encode(encoder.encodeAsString(data));

    }
}

搞好了编码,我们接着看下面得调用方式
在这里插入图片描述
这里告诉我们要获取access_token,而这里获取代码上面直接给出了,我这里用我自己的,因为我自己加一些自己的注释。

package com.ai;


import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值