All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hn.ocr.qcloud.ImageText Maven / Gradle / Ivy

There is a newer version: 1.0.18
Show newest version
package com.hn.ocr.qcloud;

import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.aliyun.oss.common.utils.StringUtils;
import com.hn.ocr.OcrPlatform;
import com.hn.ocr.OcrUtil;

import java.util.ArrayList;
import java.util.List;

/**
 * 图文识别
 *
 * @author: yang
 * 2020/01/03 16:06
 */
public class ImageText {
    /**
     * 通过图片url / 图片在服务器上
     * 识别内容文字信息
     *
     * @param url 图片url
     * @return List 内容文字信息
     */
    public List imageTextList(String url) {
        if (StringUtils.isNullOrEmpty(url)) {
            return null;
        }
        String content = OcrUtil.ocr(OcrPlatform.Q_CLOUD).ocrGeneralUrl(url);

        JSONObject jsonObject = JSONUtil.parseObj(content);
        List stringList = new ArrayList<>();
        if ("OK".equals(jsonObject.get("message"))) {
            //JSON对象
            JSONObject data = (JSONObject) jsonObject.get("data");
            //JSON数组
            JSONArray items = data.getJSONArray("items");
            for (Object object : items) {
                JSONObject jb = (JSONObject) object;
                //System.out.println(jb.get("itemstring"));
                stringList.add((String) jb.get("itemstring"));
            }
        }
        return stringList;
    }

    /**
     * 通过图片/ 本地图片地址路径
     * 识别内容文字
     *
     * @param address 本地图片地址路径
     * @return 内容文字
     */
    public String getImageTextLocal(String address) {
        if (StringUtils.isNullOrEmpty(address)) {
            return null;
        }
        String content = OcrUtil.ocr(OcrPlatform.Q_CLOUD).ocrGeneralPath(address);

        JSONObject jsonObject = JSONUtil.parseObj(content);
        StringBuffer sb = new StringBuffer();
        if ("OK".equals(jsonObject.get("message"))) {
            //JSON对象
            JSONObject data = (JSONObject) jsonObject.get("data");
            //JSON数组
            JSONArray items = data.getJSONArray("items");
            for (Object object : items) {
                JSONObject jb = (JSONObject) object;
                //System.out.println(jb.get("itemstring"));
                sb.append((String) jb.get("itemstring"));
            }
        }
        return sb.toString();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy