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初始化菜品信息
版权声明:本文标题:java初始化菜品信息 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1700371311a417927.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论