admin 管理员组

文章数量: 1087817

java初始化菜品信息

【自定义菜品识别】

家的味道是妈妈亲手做的菜肴,虽然没有正式的名称但是香气飘散我那儿时的路

今天就可以为妈妈做的佳肴进行实至名归佳肴认证。那就是借助百度AI图像别自定义菜品识别

自定义菜品入库代码

package cn.xsshome.baitencentdu.baiduai.imageclassify.dish;

import java.URLEncoder;

import java.util.Date;

import cn.xsshome.baitencentdu.baiduai.util.Base64Util;

import cn.xsshome.baitencentdu.baiduai.util.FileUtil;

import cn.xsshome.baitencentdu.baiduai.util.HttpUtil;

/**

* 自定义菜品入库

* @author 小帅丶

*

*/

public class DishAddSample {

private static final String DISH_ADD = ".0/image-classify/v1/realtime_search/dish/add";

//更换为自己应用的AccessToken

static String token= "自己应用的AccessToken";

//调用示例代码

public static void main(String[] args) {

String id = new Date().getTime()/1000+"";

//入库的图片本地路径

String imagePath = "图片本地路径";

//菜品名称摘要信息

String brief = id;

//默认传appid

String sub_lib="appid";

String result = DishAdd(imagePath, token, brief, sub_lib);

System.out.println(result);

//{"log_id": 2879203167506090135, "cont_sign": "100263660,3043140915"}

}

/**

*

* @param path 图片路径

* @param token AccessToken

* @param brief 菜品名称摘要信息,检索时带回,不超过256B。由于检索后需要与本地数据库关联,建议 brief可传入图片在本地标记id、图片url、图片名称等

* @param sub_lib 默认传appid

* @return

*/

public static String DishAdd(String path,String token,String brief,String sub_lib) {

String result="";

try {

String filePath = path;

byte[] imgData = FileUtil.readFileByBytes(filePath);

String imgStr = Base64Util.encode(imgData);

String imgParam = URLEncoder.encode(imgStr, "UTF-8");

String param = "image=" + imgParam+"&brief="+brief+"&sub_lib="+sub_lib;

result = HttpUtil.post(DISH_ADD, token, param);

} catch (Exception e) {

result = e.getMessage();

}

return result;

}

}

自定义菜品检索代码

package cn.xsshome.baitencentdu.baiduai.imageclassify.dish;

import java.URLEncoder;

import cn.xsshome.baitencentdu.baiduai.util.Base64Util;

import cn.xsshome.baitencentdu.baiduai.util.FileUtil;

import cn.xsshome.baitencentdu.baiduai.util.HttpUtil;

/**

* 自定义菜品检索

* @author 小帅丶

*

*/

public class DishSearchSample {

//菜品检索接口

private static final String DISH_SEARCH = ".0/image-classify/v1/realtime_search/dish/search";

//更换为自己应用的AccessToken

static String token= "自己应用的AccessToken";

//调用示例代码

public static void main(String[] args) {

//入库的图片本地路径

String imagePath = "图片本地路径";

//默认传appid

String sub_lib="appid";

String result = DishSearch(imagePath, token, sub_lib);

System.out.println(new String(result));

//{"log_id": 2879203167506090135, "cont_sign": "100263660,3043140915"}

}

/**

* 菜品检索

* @param path 图片路径

* @param token AccessToken

* @param sub_lib 默认传appid

* @return

*/

public static String DishSearch(String path,String token,String sub_lib) {

String result="";

try {

String filePath = path;

byte[] imgData = FileUtil.readFileByBytes(filePath);

String imgStr = Base64Util.encode(imgData);

String imgParam = URLEncoder.encode(imgStr, "UTF-8");

String param = "image=" + imgParam+"&sub_lib="+sub_lib;

result = HttpUtil.post(DISH_SEARCH, token, param);

} catch (Exception e) {

result = e.getMessage();

}

return result;

}

}

返回的JSON:注意:biref目前是有bug

{

"has_more": false,

"log_id": 3636909310786037000,

"result_num": 1,

"result": [

{

"location": {

"width": 584,

"top": 0,

"height": 345,

"left": 13

},

"dishes": [

{

"source_id": "bs30",

"score": 1,

"brief": "q",

"origin_score": 1,

"cont_sign": "100263660,3043140915"

}

]

}

]

}

自定义菜品删除代码

package cn.xsshome.baitencentdu.baiduai.imageclassify.dish;

import java.URLEncoder;

import cn.xsshome.baitencentdu.baiduai.util.Base64Util;

import cn.xsshome.baitencentdu.baiduai.util.FileUtil;

import cn.xsshome.baitencentdu.baiduai.util.HttpUtil;

/**

* 自定义菜品删除

* @author 小帅丶

*

*/

public class DishDeleteSample {

//菜品删除接口

private static final String DISH_DELETE = ".0/image-classify/v1/realtime_search/dish/delete";

//更换为自己应用的AccessToken

static String token= "自己应用的AccessToken";

//调用示例代码

public static void main(String[] args) {

//入库的图片本地路径

String imagePath = "图片本地路径";

//默认传appid

String sub_lib="appid";

String result = DishSearch(imagePath, token, sub_lib);

System.out.println(new String(result));

//{"log_id": 2879203167506090135, "cont_sign": "100263660,3043140915"}

}

/**

* 菜品删除

* @param path 图片路径

* @param token AccessToken

* @param sub_lib 默认传appid

* @return

*/

public static String DishSearch(String path,String token,String sub_lib) {

String result="";

try {

String filePath = path;

byte[] imgData = FileUtil.readFileByBytes(filePath);

String imgStr = Base64Util.encode(imgData);

String imgParam = URLEncoder.encode(imgStr, "UTF-8");

String param = "image=" + imgParam+"&sub_lib="+sub_lib;

result = HttpUtil.post(DISH_DELETE, token, param);

} catch (Exception e) {

result = e.getMessage();

}

return result;

}

}

以上就是自定义菜品识别入库检索删除的Java示例代码

本文标签: java初始化菜品信息