# API期末项目 **Repository Path**: tangliling_529/api-final-project ## Basic Information - **Project Name**: API期末项目 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-01-18 - **Last Updated**: 2021-01-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 项目名称:“iMei”APP | 文档名称: | “iMei”APP——产品需求文档 | |---|---| | 产品名称: | iMei | | 产品描述: | 一款专门为美妆爱好者打造的美妆社区APP,利用精准的“通用物体和场景识别”API技术和人脸特征分析API技术,帮助用户选好美妆产品,找到适合自己肤质的美妆产品。 | | 发布日期: | 2021-1-24 | | 产品版本: | 1.0 | | 文件拥有者: | 唐丽玲 1910130053 | # 一、价值主张设计 ******************** ## 1. 价值宣言 在美妆产品消费越来越普遍的今天,了解一些美妆知识是非常有好处的。但是,还是有很多人对美妆业了解很少。伴随着社会发展的持续发展趋势,女士市场的需求获得了充足的发展。大家也意识到美对衣食住行的必要性。然而,在网络上获得美妆信息必须要经历一段很长的查找时间,而且,想要根据掌握的美妆知识,直接认出所看到的美妆产品的名称、产区、功能、使用方法等信息,还是具有一定的困难的。本产品利用百度AI平台精准的 **“通用物体和场景识别”API** 以及 讯飞开放平台的**人脸特征分析API**进行整合并加值和优化,帮助用户选好美妆产品,为美妆爱好者打造专业的美妆谈论社区,在这里了解美妆知识分享美妆测评结果,让自己变得更美! ## 2. 核心价值 #### 任务点/痛点(问题): 1. 美妆类产品品牌的复杂性。伴随着社会发展的持续发展趋势,女士市场的需求获得了充足的发展,美妆行业逐渐走进大众的日常生活,现在市场上的美妆产品也越来越丰富。在网络购物平台或线下专柜挑选美妆产品的时候,面对品类繁多,各式各样的美妆类品牌,消费者难以抉择。而且随着经济全球化的发展,美妆类产品来自世界各地,由于语言辨识障碍,存在消费者看不懂产品上的信息,认不清美妆产品的痛点。对于普通的爱美人士来说,分辨各种美妆类品牌、功效等是一件非常困难的事情。 2. 有很多人对美妆业了解很少。伴随着社会发展的持续发展趋势,女士市场的需求获得了充足的发展。刚入门的小白对于美妆领域的知识一知半解,想要在网络上了解现在市面上的美妆产品价格、品质等,但有时网上的资料不一定可靠,没有一个专门的平台帮助更快地去了解想知道的美妆产品的信息。面对多语言、多品类和海量的美妆产品信息,如何第一时间快速的找到正确、可靠的信息,对刚入门的美妆小白来说,十分重要。 3. 殊不知,客户在选购美妆产品时一直也有一些顾忌,在购买美妆类产品时,可能会存在用户对于产品价钱、产品知名度、产品使用方法等的未知性,而这些要素是客户必然需要考虑到的具体内容,所以会出现消费者在购买美妆类产品时感觉迷茫,不知道这款产品是否值得购买,评价如何,会害怕出现像网购那样,商品买回来后出现不适合自己的这些类似的结果。 #### 最小可行性产品(解决方案): 利用通用物体和场景识别API和人脸特征分析API的功能,为美妆爱好者提供一个美妆社区分享的平台,在选美妆产品时通过拍照直接反馈详细的产品信息,以此来了解美妆知识,通过测评和避雷误区等方法,找到适合自己的美妆产品,让用户爱上更美的自己。 ## 3.人工智能概率性与用户痛点 > 随着人工智能(Artificial Intelligence, AI)的普及,人机互动方式也发生着改变,人们对产品的期望也越来越高。但是,AI系统具有情境感知能力,可以提供个性化服务,能通过机器学习不断升级,还会有出错的风险。人工智能算法是基于概率的、有缺陷的,所以是会犯错误的。 [百度AI开放平台的图像识别中的通用物体和场景识别](https://cloud.baidu.com/doc/IMAGERECOGNITION/s/Xk3bcxe21#%E8%BF%94%E5%9B%9E%E8%AF%B4%E6%98%8E)和[讯飞开放平台的人脸特征分析](https://www.xfyun.cn/services/face-feature-analysis),有以下优势: | 通用物体和场景识别API优势/用户痛点 | 人脸特征分析API优势/用户痛点 | |---|---| | **技术领先:** 可识别超过10万类常见物体和场景,接口返回大类及细分类的名称,并支持获取识别结果对应的百科信息;还可使用EasyDL定制训练平台,定制识别分类标签。广泛适用于图像或视频内容分析、拍照识图等业务场景 | **分析人脸特征** :基于图普的深度学习算法,可以检测图像中的人脸并进行一系列人脸相关的特征分析,当前支持识别出包括性别、颜值、年龄、表情多维度人脸信息。可用作基础人脸信息的解析,智能分析人群特征。 | # 二、问题需求 ********************* ## A.用户分析 1. 目标用户群: - 核心用户:各年龄层的美妆博主及对美妆类产品非常了解的人群 - 一般用户:想要了解部分美妆知识的普通人群 2. [用户画像](http://www.woshipm.com/pmd/107919.html)及使用场景 ![用户A](images/A.png) - 具体的应用场景:甄筝在一次使用自己新购买的护肤品的时候,有点不知道自己购买的护肤品要如何使用,这时她打开了"iMei"APP,拍照查看了该产品的信息,知道了该产品的使用方法。 ![用户B](images/B.png) - 具体的应用场景:郝南在准备主持队的物资的时候,发现许多彩妆都快使用完了,而且在上次的主持活动期间,他有接收到反馈说有部分产品不是很好用,所以他打开了“iMei”APP,查看了想要购买的美妆产品的信息。 ![用户C](images/C.png) - 具体的应用场景:黎小汐在一次结束直播的晚上,卸完妆感觉自己的皮肤变差了,有点起皮了,所以她有点焦虑,这时她想到“iMei”APP有扫描人脸后进行推荐如何进行保养护肤的功能。 ![用户D](images/D.png) - 具体的应用场景:禾雪在某平台上分享自己的美妆心得的时候,发现下面有很多评论说她是在骗人的、打广告的,这让她很受伤,自己的好意被误解。后面她了解到“iMei”APP专门给真实的美妆博主等人群提供一个分享社区,不接受打广告等功能,让她感觉自己来对了地方。 ## B.[需求列表](http://www.woshipm.com/tag/%E5%8A%9F%E8%83%BD%E9%9C%80%E6%B1%82%E5%88%97%E8%A1%A8)(对应人工智能加值) | 优先级 | 智能加值 | 用户场景(具体如何加值) | API类型 | |---|---|---|---| | 很重要 | 是 | 拍照识别美妆产品,得出产品的详细信息,了解相关美妆知识。 | 百度AI平台精准的 “通用物体和场景识别”API | | 重要 | 是 | 扫描识别用户人脸特征,进行定制化个性化的推荐,符合用户的需求,让用户有更好的体验。 | 讯飞开放平台的人脸特征分析API | | 重要 | 否 | 美妆知识的交流社区,简单了解美妆相关知识,评价美妆产品品质、功效等,让自己更懂美妆。| / | ## C.[核心价值](https://baike.baidu.com/item/%E6%A0%B8%E5%BF%83%E4%BB%B7%E5%80%BC/3382157?fr=aladdin)与[用户痛点](http://www.woshipm.com/pmd/191214.html) - 功能优先级说明 | 序号 | 用户痛点 | API加值 | |---|---|---| | 1 | 基于用户看不懂和记不住美妆产品的痛点,用户只需要简单拍张照,直接反馈详细的产品信息,包括产品名称、产品类型、产区、生产企业、使用方法等等。| 百度AI平台精准的 “通用物体和场景识别”API | | 2 | 每个人对于产品的使用效果,感受都不一样,定制化个性化的护肤推荐,对于许多人来说是十分有必要的。基于这个痛点需求,产品推出了人脸扫描,可以根据用户的人脸扫描结果,推荐适合自己的护肤建议,基于此推荐,用户可以更好的为自己挑选适合的产品。| 讯飞开放平台的人脸特征分析API | ## D.[利害相关者分析](http://www.woshipm.com/pmd/618261.html) ### 1、人工智能系统性偏差 > 该APP虽然集合了百度AI平台精准的 “通用物体和场景识别”API和讯飞开放平台的人脸特征分析API,但是依然会存在人工智能的系统性偏差问题。 ![人工智能系统性偏差](images/偏差.png) # 三、数据流程及关键智能API使用 ***************************** ****** ## A. [用户旅程地图](http://www.woshipm.com/tag/%E7%94%A8%E6%88%B7%E6%97%85%E7%A8%8B%E5%9C%B0%E5%9B%BE) ![用户旅程地图](images/用户旅程地图.png) ## B.[产品需求设计](http://www.woshipm.com/tag/%E9%9C%80%E6%B1%82%E8%AE%BE%E8%AE%A1) 爱美之心人皆有之。随着消费者自我意识的日渐提升,需要消费领域提供相应的产品和服务加以满足,而足不出户就可以享受“美”的服务,现在已经可以变成现实。正是消费者对美的追求,美妆市场一火再火、一涨再涨,小到日常素装妆、大到形象设计,美妆服务领域之宽达到了空前的水平。该产业俨然已经成为中国经济的一大重要支柱,成为第五大消费热点。 ## 1. 产品背景 - 随着经济的发展以及消费的升级,美妆逐渐走进大众的日常生活,现在市场上的美妆产品也越来越丰富。面对多语言、多品类和海量的产品信息,如何挑选合适的美妆产品,如何判断产品品质,是美妆消费者面对的大难题。 - 对于美妆爱好者来说,面对品类繁多、功效多样的美妆产品,能找到一些适合自己的是很难得的,会存在用户对于产品未知性,导致在选择美妆产品时迷茫和不确定。一方面希望能增加对于美妆的知识储备、另一方面,希望能够得到其他美妆爱好者的推荐和测评,进行对产品的更深入了解。 - 美妆服务领域之宽达到了空前的水平。该产业俨然已经成为中国经济的一大重要支柱,成为消费热点。美妆产业渐成气候,因此其配套的培训服务业的特色化、细分化已成为不可替代的发展路径之一。只有将细分进行到底,才可能发现市场存在的空白点,进而寻找新的技术或服务占领市场。 ## 2. 市场概述(用户可欲性Desirability) ##### 2.1美妆类APP应用市场概述 随着生活水平的提高,美妆产品正是作为一种生活品质的符号而受到越来越多人的喜爱。随着市场的发展,关于美妆类的手机应用也应运而生,这些APP对于美妆行业的发展起着至关重要的作用。 ##### 2.2市场特征 - 美妆逐渐走进大众的视野,人们对于美妆产品认知度的提高,大部分用户都喜欢优质的美妆产品。 - 美妆行业市场消费潜力大。在消费升级的大背景下,美妆消费的份额大大提高,美妆业的用户群体也越来越庞大。 ## 3. 产品市场(技术可行性 Feasibility) 目前发现有一款美妆类的APP(美妆心得),但此款APP同样也是和电商平台合作进行广告宣传。并未发现有类似有专门的美妆爱好者的无广告的美妆APP。 ## 4. 产品优势(商业可行性 Viability): 1. **查找产品信息:** 通过产品图片拍照识别或者是关键词搜索,提供方便查询美妆产品资料的信息;APP中有全世界美妆产品的庞大数据展示产品的名称、类别、产地、企业、使用方法等全方位的资料。 2. **美妆知识学习:** APP内置美妆测评、推荐、美妆库等功能,有来自各地的美妆达人发布相关的知识对于想要了解的美妆知识和心得,对用户来说是一个很方便的美妆知识收集平台。 3. **美妆类垂直社交平台:** 集合各地美妆爱好者进行分享板块,让更多喜欢美妆的人群来主动分享,这种模式可以让人更快的了解想知道的美妆产品的信息。 ## C.产品结构展示 1. APP功能结构图 ![APP功能结构图](images/脑图.png) 2. 产品结构图 ![产品结构图](images/产品结构图.png) # 四、[产品设计原型](https://blog.csdn.net/xucheer1/article/details/82378208) ************************* #### A.原型文档 ##### [展示页面脑图](images/脑图.png) ##### #### B.交互及界面设计 1. APP页面展示 - [APP功能展示图](https://gitee.com/tangliling_529/api-final-project/tree/master/%E4%BA%A4%E4%BA%92%E5%8E%9F%E5%9E%8B%E5%9B%BE/imei) - [原型APP在线体验链接](https://modao.cc/app/af8b280829adf0aa6775b876adb936692a7d1faf?simulator_type=device&sticky) 2. 核心页面——通用物体识别功能、人脸特征分析功能 |![拍一拍](images/yx/拍一拍.png)|![人脸扫描](images/yx/人脸扫描.png)| |:-|:-| 3. 所有页面 ![主要页面](images/APP页面展示全图.jpg) 4. 主要界面交互流程 - 【拍一拍】交互流程 |![拍一拍](images/yx/拍一拍.png)|![ 是否确认](images/yx/是否使用.png)| |:-|:-| |![确认](images/yx/产品识别.png)|![ 结果](images/yx/识别结果.png)| - 【人脸扫描】交互流程 |![人脸](images/yx/人脸扫描.png)|![ 是否确认](images/yx/扫描识别.png)|![ 确认](images/yx/人脸识别.png)| |:-|:-|:-| #### C.信息设计 |![拍一拍](images/yx/测评.png)|![ 是否确认](images/yx/推荐.png)|![ 是否确认](images/yx/关注.png)| |:-|:-|:-| # 五、[数据流程图](https://baijiahao.baidu.com/s?id=1671006338144348122&wfr=spider&for=pc) *************************************** ![数据流程图](images/数据流程图.png) # 六、API使用可行性 ******************************** #### API风险使用报告 ![DVF模型](images/DVF.png) # 七、API 产品使用及输出展示 ***************************** ### 1、API展示说明及输出 **(1)通用物体和场景识别API(百度AI开放平台)** - 接口描述:该请求用于通用物体及场景识别,即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中的多个物体及场景标签。。 - 平台接入网址:[图像识别-通用物体和场景识别](https://cloud.baidu.com/product/imagerecognition/general) - HTTP 方法:POST - 请求URL:https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general - 请求代码示例 - 提示一:使用示例代码前,请记得替换其中的示例Token、图片地址或Base64信息。 - 提示二:部分语言依赖的类或库,请在代码注释中查看下载地址。 ``` # encoding:utf-8 import requests import base64 ''' 通用物体和场景识别 ''' request_url = "https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general" # 二进制方式打开图片文件 f = open('[本地文件]', 'rb') img = base64.b64encode(f.read()) params = {"image":img} access_token = '[调用鉴权接口获取的token]' request_url = request_url + "?access_token=" + access_token headers = {'content-type': 'application/x-www-form-urlencoded'} response = requests.post(request_url, data=params, headers=headers) if response: print (response.json()) 返回说明 ``` - 2. 调用API输入: ![api](images/api识别.png) [API调用](https://gitee.com/tangliling_529/api-final-project/blob/master/api%E8%B0%83%E7%94%A8/%E8%AE%AF%E9%A3%9Eapi%E8%B0%83%E7%94%A8.ipynb) **(2)人脸特征分享API(讯飞开放平台)** > 参考文档:[人脸特征分析 tuputech](https://www.xfyun.cn/services/face-feature-analysis) - 产品介绍: a.年龄识别:判断出上传的图片中的人物的年龄段 b.颜值识别:对上传的图片中的人物颜值进行分析给出对应结果:漂亮、好看、普通、难看等 c.性别识别:识别出上传的图片中的人物的性别 d.表情识别:识别出图片中人物的表情特征:喜悦、愤怒、悲伤、惊恐、厌恶等 - [调用api代码源文件](https://gitee.com/tangliling_529/api-final-project/blob/master/api%E8%B0%83%E7%94%A8/%E8%AE%AF%E9%A3%9Eapi%E8%B0%83%E7%94%A8.ipynb) - 详细代码展示: ``` { "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# 1.年龄\n", "import requests\n", "import time\n", "import hashlib\n", "import base64" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "b'{\"code\":0,\"data\":{\"fileList\":[{\"label\":5,\"labels\":[5,12,6,11,4],\"name\":\"https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fn.sinaimg.cn%2Ffront%2F342%2Fw700h442%2F20190321%2FxqrY-huqrnan7527352.jpg\\\\u0026refer=http%3A%2F%2Fn.sinaimg.cn\\\\u0026app=2002\\\\u0026size=f9999,10000\\\\u0026q=a80\\\\u0026n=0\\\\u0026g=0n\\\\u0026fmt=jpeg?sec=1614009018\\\\u0026t=65c21738f83cce4f28946a9e92a3bb00\",\"rate\":0.6517932415008545,\"rates\":[0.6517932415008545,0.27447277307510376,0.028878910467028618,0.028382837772369385,0.01527365017682314],\"review\":false,\"tag\":\"Using url\"}],\"reviewCount\":0,\"topNStatistic\":[{\"count\":1,\"label\":5}]},\"desc\":\"success\",\"sid\":\"tup000003af@dx6e851367940aa00100\"}'\n" ] } ], "source": [ "URL = \"http://tupapi.xfyun.cn/v1/age\"\n", "# 应用ID (必须为webapi类型应用,并人脸特征分析服务,参考帖子如何创建一个webapi应用:http://bbs.xfyun.cn/forum.php?mod=viewthread&tid=36481)\n", "APPID = \"600c40f9\"\n", "# 接口密钥(webapi类型应用开通人脸特征分析服务后,控制台--我的应用---人脸特征分析---服务的apikey)\n", "API_KEY = \"3bdd94b0b2f3ee157a72e5423156df71\"\n", "ImageName = \"dlrb.jpg\"\n", "ImageUrl = \"https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fn.sinaimg.cn%2Ffront%2F342%2Fw700h442%2F20190321%2FxqrY-huqrnan7527352.jpg&refer=http%3A%2F%2Fn.sinaimg.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1614009018&t=65c21738f83cce4f28946a9e92a3bb00\"\n", "def getHeader(image_name, image_url=None):\n", " curTime = str(int(time.time()))\n", " param = \"{\\\"image_name\\\":\\\"\" + image_name + \"\\\",\\\"image_url\\\":\\\"\" + image_url + \"\\\"}\"\n", " paramBase64 = base64.b64encode(param.encode('utf-8'))\n", " tmp = str(paramBase64, 'utf-8')\n", "\n", " m2 = hashlib.md5()\n", " m2.update((API_KEY + curTime + tmp).encode('utf-8'))\n", " checkSum = m2.hexdigest()\n", "\n", " header = {\n", " 'X-CurTime': curTime,\n", " 'X-Param': paramBase64,\n", " 'X-Appid': APPID,\n", " 'X-CheckSum': checkSum,\n", " }\n", " return header\n", "\n", "\n", "# def getBody(filePath):\n", "# binfile = open(filePath, 'rb')\n", "# data = binfile.read()\n", "# return data\n", "\n", "\n", "r = requests.post(URL, headers=getHeader(ImageName, ImageUrl))\n", "print(r.content)\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# 2.性别\n", "import requests\n", "import time\n", "import hashlib\n", "import base64" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "b'{\"code\":0,\"data\":{\"fileList\":[{\"label\":1,\"name\":\"https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fn.sinaimg.cn%2Ffront%2F342%2Fw700h442%2F20190321%2FxqrY-huqrnan7527352.jpg\\\\u0026refer=http%3A%2F%2Fn.sinaimg.cn\\\\u0026app=2002\\\\u0026size=f9999,10000\\\\u0026q=a80\\\\u0026n=0\\\\u0026g=0n\\\\u0026fmt=jpeg?sec=1614009018\\\\u0026t=65c21738f83cce4f28946a9e92a3bb00\",\"rate\":0.9999701976776123,\"review\":false,\"tag\":\"Using url\"}],\"reviewCount\":0,\"statistic\":[0,1,0,0]},\"desc\":\"success\",\"sid\":\"tup000003ba@dx6e851367a195a00100\"}'\n" ] } ], "source": [ "# 人脸特征分析性别webapi接口地址\n", "URL = \"http://tupapi.xfyun.cn/v1/sex\"\n", "# 应用ID (必须为webapi类型应用,并人脸特征分析服务,参考帖子如何创建一个webapi应用:http://bbs.xfyun.cn/forum.php?mod=viewthread&tid=36481)\n", "APPID = \"600c40f9\"\n", "# 接口密钥(webapi类型应用开通人脸特征分析服务后,控制台--我的应用---人脸特征分析---服务的apikey)\n", "API_KEY = \"3bdd94b0b2f3ee157a72e5423156df71\"\n", "ImageName = \"dlrb.jpg\"\n", "#图片数据可以通过两种方式上传,第一种在请求头设置image_url参数,第二种将图片二进制数据写入请求体中。若同时设置,以第一种为准。\n", "#此demo使用第一种方式进行上传图片地址,如果想使用第二种方式,将图片二进制数据写入请求体即可。\n", "ImageUrl = \"https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fn.sinaimg.cn%2Ffront%2F342%2Fw700h442%2F20190321%2FxqrY-huqrnan7527352.jpg&refer=http%3A%2F%2Fn.sinaimg.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1614009018&t=65c21738f83cce4f28946a9e92a3bb00\"\n", "# FilePath = r\"C:\\Users\\Admin\\Desktop\\1539656523.png\"\n", "def getHeader(image_name, image_url=None):\n", " curTime = str(int(time.time()))\n", " param = \"{\\\"image_name\\\":\\\"\" + image_name + \"\\\",\\\"image_url\\\":\\\"\" + image_url + \"\\\"}\"\n", " paramBase64 = base64.b64encode(param.encode('utf-8'))\n", " tmp = str(paramBase64, 'utf-8')\n", "\n", " m2 = hashlib.md5()\n", " m2.update((API_KEY + curTime + tmp).encode('utf-8'))\n", " checkSum = m2.hexdigest()\n", "\n", " header = {\n", " 'X-CurTime': curTime,\n", " 'X-Param': paramBase64,\n", " 'X-Appid': APPID,\n", " 'X-CheckSum': checkSum,\n", " }\n", " return header\n", "\n", "\n", "# def getBody(filePath):\n", "# binfile = open(filePath, 'rb')\n", "# data = binfile.read()\n", "# return data\n", "\n", "\n", "r = requests.post(URL, headers=getHeader(ImageName, ImageUrl))\n", "print(r.content)\n", "\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "# 3.颜值\n", "import requests\n", "import time\n", "import hashlib\n", "import base64" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "b'{\"code\":0,\"data\":{\"fileList\":[{\"label\":0,\"name\":\"https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fn.sinaimg.cn%2Ffront%2F342%2Fw700h442%2F20190321%2FxqrY-huqrnan7527352.jpg\\\\u0026refer=http%3A%2F%2Fn.sinaimg.cn\\\\u0026app=2002\\\\u0026size=f9999,10000\\\\u0026q=a80\\\\u0026n=0\\\\u0026g=0n\\\\u0026fmt=jpeg?sec=1614009018\\\\u0026t=65c21738f83cce4f28946a9e92a3bb00\",\"rate\":0.6447359323501587,\"review\":false,\"tag\":\"Using url\"}],\"reviewCount\":0,\"statistic\":[1,0,0,0,0,0]},\"desc\":\"success\",\"sid\":\"tup000003c2@dx34321367a1a6000100\"}'\n" ] } ], "source": [ "\n", "# 人脸特征分析颜值webapi接口地址\n", "URL = \"http://tupapi.xfyun.cn/v1/face_score\"\n", "# 应用ID (必须为webapi类型应用,并人脸特征分析服务,参考帖子如何创建一个webapi应用:http://bbs.xfyun.cn/forum.php?mod=viewthread&tid=36481)\n", "APPID = \"600c40f9\"\n", "# 接口密钥 (webapi类型应用开通人脸特征分析服务后,控制台--我的应用---人脸特征分析---服务的apikey)\n", "API_KEY = \"3bdd94b0b2f3ee157a72e5423156df71\"\n", "ImageName = \"yy.jpg\"\n", "ImageUrl = \"https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fn.sinaimg.cn%2Ffront%2F342%2Fw700h442%2F20190321%2FxqrY-huqrnan7527352.jpg&refer=http%3A%2F%2Fn.sinaimg.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1614009018&t=65c21738f83cce4f28946a9e92a3bb00\"\n", "# FilePath = r\"C:\\Users\\Admin\\Desktop\\1539656523.png\"\n", "# 图片数据可以通过两种方式上传,第一种在请求头设置image_url参数,第二种将图片二进制数据写入请求体中。若同时设置,以第一种为准。\n", "# 此demo使用第一种方式进行上传图片地址,如果想使用第二种方式,将图片二进制数据写入请求体即可。\n", "def getHeader(image_name, image_url=None):\n", " curTime = str(int(time.time()))\n", " param = \"{\\\"image_name\\\":\\\"\" + image_name + \"\\\",\\\"image_url\\\":\\\"\" + image_url + \"\\\"}\"\n", " paramBase64 = base64.b64encode(param.encode('utf-8'))\n", " tmp = str(paramBase64, 'utf-8')\n", " m2 = hashlib.md5()\n", " m2.update((API_KEY + curTime + tmp).encode('utf-8'))\n", " checkSum = m2.hexdigest()\n", "\n", " header = {\n", " 'X-CurTime': curTime,\n", " 'X-Param': paramBase64,\n", " 'X-Appid': APPID,\n", " 'X-CheckSum': checkSum,\n", " }\n", " return header\n", "\n", "\n", "# def getBody(filePath):\n", "# binfile = open(filePath, 'rb')\n", "# data = binfile.read()\n", "# return data\n", "\n", "\n", "r = requests.post(URL, headers=getHeader(ImageName, ImageUrl))\n", "print(r.content)\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.3" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 4 } ``` - 特别说明: |![人脸](images/年龄.png)|![ 是否确认](images/性别.png)|![ 是否确认](images/颜值.png)| |:-|:-|:-| ### 2、人工智能概率性考量:API精准度测试 |![人脸](images/api识别.png)|![ 是否确认](images/1.png)| |:-|:-| |![人脸](images/3.png)|![ 是否确认](images/2.png)|![ 是否确认](images/4.png)| |:-|:-|:-| - 由图可知,API的精确度还是很高的,返回信息的详细程度都很不错,大体上可以测量出产品的正确名称,属性。 # 八、心得总结及感谢 ******************************** - **心得总结1:** 通过学习该门课程,我收获颇多。通过本次项目的实践操作,我对API有了更加深刻的了解。此次实践中进行了产品原型的制作,用户交互,书写PRD文档等,都锻炼了我的能力。感谢[墨刀](https://modao.cc/)、[迅捷画图](https://www.liuchengtu.com/)、[百度智能云-通用物体和场景识别](https://cloud.baidu.com/product/imagerecognition/general)、[讯飞开放平台-人脸特征分析 tuputech](https://www.xfyun.cn/services/face-feature-analysis)、CSDN社区、人人都是产品经理、百度、中国知网等平台的参考分享。 - **心得总结2:** 对同行/同侪成果的尊重引用 > 1. [百度智能云-通用物体和场景识别](https://cloud.baidu.com/doc/IMAGERECOGNITION/s/Xk3bcxe21#%E8%BF%94%E5%9B%9E%E8%AF%B4%E6%98%8E) > 2. [讯飞开放平台-人脸特征分析 tuputech](https://www.xfyun.cn/services/face-feature-analysis) > 3. [基于 4P 理论的美妆类 APP 的营销策略研究](https://kns.cnki.net/kcms/detail/detail.aspx?dbcode=CJFD&dbname=CJFDLAST2019&filename=ZKSD201913192&v=%25mmd2FJcrKQFRbXiJYH4X4dK5aFEJzcNCKfunYu4g2ugpQImyydAJIetilRbXIEcuU7cG) > 4. [浅谈美妆APP的现状及发展问题](https://xueshu.baidu.com/usercenter/paper/show?paperid=1e3j00x0xy0q08p0js280ma0tg716114&site=xueshu_se) > 5. [速途研究院:2018年上半年美妆APP市场研究报告](https://wenku.baidu.com/view/6314fb616fdb6f1aff00bed5b9f3f90f76c64dc8.html?fr=search-1-income1-psrec2&fixfr=tYNFl3kGBVtI1i5lriCXzw%3D%3D) > 6. [人人都是产品经理](http://www.woshipm.com/user-research/1640253.html/comment-page-1) > 7. [CSDN 如何进行产品原型设计](https://blog.csdn.net/xucheer1/article/details/82378208) > 8. [产品思考进阶:利益相关者分析法](http://www.woshipm.com/pmd/618261.html) ### 最后: [20*20投影片ppt视频解说](https://gitee.com/tangliling_529/api-final-project/tree/master/ppt%E8%A7%A3%E8%AF%B4) ### 有效外连URL:15个 ### 高水平原创图表:12个