百度云的人臉識別學(xué)習(xí)筆記(開發(fā)者文檔看一天,代碼要幾分鐘汇跨,我的天)
此文章僅作為個人學(xué)習(xí)記錄务荆,不足之處,不解之處穷遂,歡迎騷擾函匕,畢竟自學(xué)很痛苦!蚪黑!
相關(guān)鏈接
①(參考文檔)https://cloud.baidu.com/doc/FACE/Face-Java-SDK.html#.E5.AE.89.E8.A3.85Face.20Java.20SDK
②(錯誤碼)https://cloud.baidu.com/doc/FACE/Face-ErrorCode.html#.E9.94.99.E8.AF.AF.E7.A0.81-1
新建一個android studio項目
導(dǎo)入相關(guān)的sdk包
sdk網(wǎng)址https://cloud.baidu.com/doc/FACE/Face-Java-SDK.html#.E5.AE.89.E8.A3.85Face.20Java.20SDK
image.png
這是我的項目的libs包
然后我按照文檔里的方法盅惜,然后就報錯了。忌穿。酷窥。。
public class Sample {
//設(shè)置APPID/AK/SK
public static final String APP_ID = "你的 App ID";
public static final String API_KEY = "你的 Api Key";
public static final String SECRET_KEY = "你的 Secret Key";
public static void main(String[] args) {
// 初始化一個AipFace
AipFace client = new AipFace(APP_ID, API_KEY, SECRET_KEY);
// 可選:設(shè)置網(wǎng)絡(luò)連接參數(shù)
client.setConnectionTimeoutInMillis(2000);
client.setSocketTimeoutInMillis(60000);
// 可選:設(shè)置代理服務(wù)器地址, http和socket二選一伴网,或者均不設(shè)置
//client.setHttpProxy("proxy_host", proxy_port); // 設(shè)置http代理
//client.setSocketProxy("proxy_host", proxy_port); // 設(shè)置socket代理
// 可選:設(shè)置log4j日志輸出格式蓬推,若不設(shè)置,則使用默認(rèn)配置
// 也可以直接通過jvm啟動參數(shù)設(shè)置此環(huán)境變量
System.setProperty("aip.log4j.conf", "path/to/your/log4j.properties");
// 調(diào)用接口
String path = "test.jpg";
JSONObject res = client.detect(path, new HashMap<String, String>());
System.out.println(res.toString(2));
}
}
就是創(chuàng)建JSONObject res對象報錯澡腾,這一步是獲取access_token步驟的沸伏。我也不知道怎么回事,于是我又看了下文檔动分。按步驟imoprt module
導(dǎo)入了這兩個文件
修改了下方法,
final AipFace client = new AipFace(APP_ID, API_KEY, SECRET_KEY);
// 可選:設(shè)置網(wǎng)絡(luò)連接參數(shù)
client.setConnectionTimeoutInMillis(2000);
client.setSocketTimeoutInMillis(60000);
new Thread(new Runnable() {
@Override
public void run() {
HashMap<String, String> options = new HashMap<String, String>();
options.put("face_field", "age");
options.put("face_field", "beauty");
options.put("face_field", "expression");
options.put("max_face_num", "2");
options.put("face_type", "LIVE");
String image="Base64字符串毅糟,和http請求的一致,去掉逗號和逗號前的澜公,有img標(biāo)簽則去掉頭尾";
String imageType = "BASE64";
// 人臉檢測
JSONObject res = client.detect(image, imageType, options);
Log.e("MAS",res.toString());
}
}).start();
運行結(jié)果如下
出現(xiàn)了beauty和expressio姆另!
以上是我的打印信息,可能是client對象是獲取連接的吧坟乾。在option添加參數(shù)就可以輸出其他參數(shù)迹辐,是筆記一用postman請求不到的參數(shù)....所以android studio的人臉檢測屬性特征就完成啦。