【红酒识别】红酒您都认识吗?【Java示例】
756665228 发布于2019-01-29 14:30 浏览:1806 回复:5
5
收藏

本文为通过Java语言去调用红酒接口的示例代码。

是人类生活中的主要饮料之一。中国制酒历史源远流长,品种繁多,名酒荟萃,享誉中外。黄酒是世界上最古老的酒类之一,约在三千多年前,商周时代,中国人独创酒曲复式发酵法,开始大量酿制黄酒。约一千年前的宋代,中国人发明了蒸馏法,从此,白酒成为中国人饮用的主要酒类。酒渗透于整个中华五千年的文明史中,从文学艺术创作、文化娱乐到饮食烹饪、养生保健等各方面在中国人生活中都占有重要的位置。

法国的葡萄酒文化(红酒文化)是伴随着法国的历史与文明成长和发展起来的。葡萄酒文化已渗透进法国人的宗教、政治、文化、艺术及生活的各个层面,与人民的生活息息相关。作为世界政治、经济与文化大国,法国葡萄酒文化也影响着全世界人的生活方式与文化情趣。法国最古老的超一级酒庄是伊甘酒庄,了解法国葡萄酒文化将有助于我们对法国文化的整体认识。

 

红酒的好处:(但是也不要贪杯哦)

·抗氧化剂的作用,防治退化性疾病,如老化、白内障、免疫障碍和某些癌症。
·利尿作用
·补充人体热量,葡萄酒的热值与牛奶相当
·适度饮用,有益健康

 

接下来。上几张图。看看您认识不。

 

估计大家看第二个都很明确是国产的张裕干红酒。那么第一个呢?猜不到很好说(忽略懂酒的尤其是懂红酒的)

我们可以用百度AI-图像识别提供的红酒识别进行。

应用场景:红酒介绍、红酒销售推广等等

http://ai.baidu.com/docs#/ImageClassify-API/5e3dd57a 接口文档必须看哦 接口需要单独申请权限。找梅姐就行。

准备好代码。和第一张图片。开始进行AI识别红酒名称。

import java.net.URLEncoder;
import com.alibaba.fastjson.JSON;

/**
 * 
 * @author 小帅丶
 *
 */
public class RedWineAPISample {
	//红酒识别接口地址
	public static final String REDWINE_URL = "https://aip.baidubce.com/rest/2.0/image-classify/v1/redwine";
	
	public static void main(String[] args) throws Exception {
//		String accessToken = BDAccessToken.getAuth("", "");
		String accessToken = "替换成自己应用获取的accesstoken哦";
		String imagePath = "G:/testimg/redwine003.jpg";
		String result = getRedWineResult(imagePath , accessToken);
		System.out.println(result);
	}
	/**
	 * 红酒识别Demo
	 * @param imagePath
	 * @param accessToken
	 * @return 字符串
	 * @throws Exception
	 */
	public static String getRedWineResult(String imagePath,String accessToken) throws Exception{
		byte[] imgData = FileUtil.readFileByBytes(imagePath);
        String imgStr = Base64Util.encode(imgData);
		String param = "image=" + URLEncoder.encode(imgStr,"UTF-8");
        // 注意这里仅为了简化编码每一次请求都去获取access_token,线上环境access_token有过期时间, 客户端可自行缓存,过期后重新获取。
		String result = HttpUtil.post(REDWINE_URL, accessToken, param);
        return result;
	}
	/**
	 * 红酒识别Demo
	 * @param imagePath
	 * @param accessToken
	 * @return RedWineBean
	 * @throws Exception
	 */
	public static RedWineBean getRedWineBean(String imagePath,String accessToken) throws Exception{
		String result = getRedWineResult(imagePath, accessToken);
		RedWineBean bean = JSON.parseObject(result,RedWineBean.class);
        return bean;
	}
}

 

接口识别第一张图返回的结果为:您猜对了吗?

{
    "log_id": 3776801480698311700, 
    "result": {
        "redwine": "罗曼尼·康帝酒庄罗曼尼-康帝特级园红葡萄酒"
    }
}

接口识别第二张图返回的结果为:您猜对了吗?

{
    "log_id": 5560342688488076000, 
    "result": {
        "redwine": "中国张裕系列干红葡萄酒750ml"
    }
}

来一张小插曲的图片

 

接口返回的内容为:是不是有点小惊喜呢?AI还清楚顺丰包邮呢。哈哈。

内测阶段的接口出现精度过低错误是很有可能存在的。大家如果遇到badcase反馈给梅姐就行哦。

{
    "log_id": 3021675330850203000, 
    "result": {
        "redwine": "赤轩素干红葡萄酒750ml2瓶装(顺丰包邮)"
    }
}

帖子中所用到的代码。

都可以在https://gitee.com/xshuai/ai/blob/master/AIDemo/src/main/java/com/xs/image/RedWineAPISample.java 进行下载哦

收藏
点赞
5
个赞
共5条回复 最后由wangwei8638回复于2019-05-05 20:16
#6wangwei8638回复于2019-05-05 20:16:41

罗曼尼·康帝,想起了星爷的美人鱼

0
#5wangwei8638回复于2019-04-16 07:12:27
#4 756665228回复
外形辨别真假。如果自己有图片数据集,可以试试easydl

越来越厉害了

0
#4756665228回复于2019-04-15 22:55:10
#3 wangwei8638回复
能不能识别真假

外形辨别真假。如果自己有图片数据集,可以试试easydl

1
#3wangwei8638回复于2019-04-14 18:09:50

能不能识别真假

0
#2melissayoung回复于2019-01-29 15:03:47

包邮的case。。。。捂脸

0
TOP
切换版块