簡介:借出百度AI平臺後看到有一個圖像識別工具,就簡單實現了下,效果挺好的,使用也簡單。
百度提供了兩種實現方式:
1.api方式調用;
2.sdk方式調用(此方式簡單,本文就以此爲主講一下)
a. 先下載圖像識別sdk
地址:https://cloud.baidu.com/doc/IMAGERECOGNITION/index.html
b. 解壓縮後拷貝到項目中,按照規範進行開發
c.平臺提供了文檔說明,簡單易懂,容易上手
項目結構:
Simple.java
package com.baidu.sdk.tuxiangshibie;
import java.io.IOException;
import java.util.HashMap;
import org.json.JSONObject;
import com.baidu.aip.imageclassify.AipImageClassify;
import com.baidu.aip.util.Util;
public class Sample {
// 設置APPID/AK/SK
public static final String APP_ID = "18471643";
public static final String API_KEY = "jNEhoBwPhbUOsVxnQBrcnBZB";
public static final String SECRET_KEY = "5tXebMWoEdGDnjGGkL3BEDrhmwaNqnRr";
public static void main(String[] args) {
// 初始化一個AipImageClassify
AipImageClassify client = new AipImageClassify(APP_ID, API_KEY, SECRET_KEY);
// 傳入可選參數調用接口
HashMap<String, String> options = new HashMap<String, String>();
options.put("baike_num", "5");
// 實現方式一:參數爲本地路徑
String image = "C:/Users/edz/Desktop/星空.jpg";
JSONObject res = client.advancedGeneral(image, options);
System.out.println(res.toString(2));
// 實現方式二:參數爲二進制數組
byte[] file = null;
try {
file = Util.readFileByBytes("C:/Users/edz/Desktop/星空.jpg");
} catch (IOException e) {
e.printStackTrace();
}
res = client.advancedGeneral(file, options);
System.out.println(res.toString(2));
}
}