随着国家健康战略“大健康”概念的提出,中医大健康事业的发展如火如荼。最近公司让我们开发一款智能舌诊APP,拍舌头图片,直接出诊断结果和报告。前端和后端还好,如何实现舌头智能分析那部分呢,这可愁坏了头秃的程序员。抱着侥幸的心理去度娘找了一番,居然还真有公司有这样的接口,对比了一番,发现北京贝叶斯科技的舌诊接口效果最好,他们的AI舌诊曾获得2018年华为AI创新大赛全国二等奖,接口速度快,准确率高,实测准确率在90%以上,下面我介绍一下如何使用他们的接口。


首先,注册一个账号并登录,注册地址如下:

http://www.bayescience.com/bes-project/login.html

        图片1.png

    

可以看到登录以后左侧有API服务,如下图所示

图片2.png



他们家的舌诊接口分为两种,一种是给出体质健康状态,另一种是给出证型结论。如下图所示。

图片3.png


点击“API文档”,进入接口使用介绍页面。

首先是证型接口,证型辨识接口主要通过拍摄舌头图片进行识别,返回十种舌像出现的概率值,加上身体可能出现的证型,加上对应的调理方法。

首先要购买对应的接口,点击加入购物车,购买相应的次数。购买完之后,在我的账户,我的服务里面可以看到接口的剩余次数,总次数,购买次数。

接下来要创建APIKey,点击左侧的密钥管理,如下图所示。

    

图片4.png

创建完APIKey之后,在密钥管理这里可以看到自己的应用ID和密钥

图片5.png

应用ID就是APPID,点击重置密钥可以看到ID对应的密钥。

官网提供了java和python调用代码,接下来我使用python进行接口调用。

代码如下

import hashlib
# 导入time模块
import time
import requests
import json


def Md5(res):
    print(res)
    md = hashlib.md5()  # 构造一个md5
    md.update(res.encode(encoding='utf-8'))
    # 加密
    print(md.hexdigest().upper())
    return md.hexdigest().upper()


def testapi():
    tures = {}
    restime = time.strftime('%Y%m%d%H%M%S', time.localtime(time.time()))
    # restime="20190829114035"
    # 传入参数
    tures['timestamp'] = restime
    tures['app_id'] = "401518a5f65041cc"
    tures['version'] = '1.0'
    tures['method'] = 'jiuti'
    tures['imgpath'] = 'https://bys-tonguepicture.oss-cn-beijing.aliyuncs.com/1563412989396.jpg'
    tures['sign'] = Md5(Md5(restime) + "f72486593c724adab6adef620711231f")
    url = "http://www.bayescience.com/api/analysis"
    response = requests.post(url, params=tures)
    # print(response.text)
    print(type(response.text))
    load = json.loads(response.text)
    print(load)
testapi()

注意,此处需要根据自己的实际情况更换tures['app_id']  tures['method']  tures['sign'],app_id就是自己的应用ID,method分为三种,一种是体质辨识:jiuti,结果共有9种体质,第二种是证型辨识接口:tongueAnalysis,一共有150种证型,第三种是接口会同时返回体质和证型结论:9tiAnalysis,sign里面要替换为自己的密钥,点击“重置密钥”即可查看APPID对应的密钥。

我的调用结果如下:

图片6.png


可以看到,结果里面有切割出来的舌头图片,9种体质对应的概率值,概率值最大的体质名称,常见表现,精神调养,发病倾向,娱乐调摄,四季养生,体育锻炼,起居调摄,音乐调理,经络保健,用药禁忌,两种具体的药膳、适合吃的食物和禁忌食物,体质接口返回的内容还是很丰富的,至于证型接口,大家可以自行去尝试。他们官方的技术支持态度蛮好,中间有些地方也是他们帮着一起调的,留个联系方式,大家在调用过程中遇到困难,可以联系官方VX:15501156627.也可以扫描以下二维码

微信图片_20200303151406.jpg