云服务器内容精选

  • 技能结果上传接口 请求消息 推理结果将以HTTPS POST请求方法推送到应用系统server的指定URL地址。 POST {sendUrl} 其中sendUrl在技能运行时配置中设置。 请求消息头 技能以json形式返回推理结果,因此消息头Content-Type类型为“application/json”,参数说明如表5所示。 表5 请求消息头参数说明 名称 描述 是否必选 示例 Content-Type 消息体的类型(格式) 是 application/json。 公共消息体 华为HiLens 公共消息体包含了技能的公共消息内容,如表6所示。 表6 公共消息体参数说明 名称 类型 说明 msg_type String 技能类型,为face_detection_result。 cam_name String 摄像头名称。 skill_id String 技能ID。 技能消息体 人脸检测的json消息体如表7所示: 表7 技能消息体参数说明 名称 类型 说明 face_id String 人脸图UUID。 track_id Uint64 人脸的跟踪标记,相同的track_id表示同一个人脸。 ori_img_id String 人脸背景原始图UUID。 time Uint64 图片解码时间的时间戳,单位为秒。 bbox Object 人脸图在背景图中的位置信息。位置信息参数请参见表8。 clarity Float 人脸清晰度,范围[0,1]。 face_image String 人脸图BASE64编码结果。 ori_image String 原始图BASE64编码结果,如果配置不发送原始图,则无该字段。 表8 bbox位置信息参数说明 字段 类型 说明 x Int 人脸图左上角顶点x坐标值。 y Int 人脸图左上角顶点y坐标值。 h Int 人脸图高。 w Int 人脸图宽。 人脸检测的json消息体示例如下: { "msg_type": "face_detection_result", "cam_name": "store001_pos2", "skill_id": "f5c526eb6c51440c8a0ee5e3cc65f23c", "face_id": "0DD1BEA6-634B-11E8-8B0B-407D0FAD9218", "track_id": 1, "ori_img_id": "0DD1BF0A-634B-11E8-8B0B-407D0FAD9218", "time": 1527603463, "bbox ": { "x": 32, "y": 379, "w": 49, "h": 65 }, "clarity": 0.55, "face_image": "4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQE...", "ori_image": "4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQE...", } 响应消息 响应消息头 响应消息头由服务器端(应用系统)收到请求消息后返回。 响应消息头可包含如下两部分。 一个HTTP状态代码,从2xx成功代码到4xx或5xx错误代码。或者可以返回服务定义的状态码。 附加响应头字段,如支持请求的响应所需,如Content-type响应消息头。 详细的公共响应消息头参数说明如表9所示。 表9 公共响应消息头参数说明 名称 描述 示例 Date HTTP协议标准报头。表示消息发送的时间,时间的描述格式由rfc822定义。 Mon, 12 Nov 2007 15:55:01 GMT Server HTTP协议标准报头。包含了服务器用来处理请求的软件信息。 Apache Content-Length HTTP协议标准报头。用于指明实体正文的长度,以字节方式存储的十进制数字来表示。 xxx Content-Type HTTP协议标准报头。用于指明发送给接收者的实体正文的媒体类型。 application/json 响应消息体(可选) 响应消息体通常以结构化格式(如json或xml)返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。
  • 技能描述 面向智慧商超的人脸采集技能。本技能使用多个深度学习算法,实时分析视频流,自动抓取画面中的清晰人脸上传至您的后台系统,用于后续实现其他业务。 本技能支持: 判断并过滤尺寸过小、清晰度较差、角度过大等无法判断的人脸。 同时检测多张人脸。 人脸跟踪。对同一个人抓拍的人脸做去重,避免大量的重复上报。 根据业务需求划定区域,只抓取固定区域内的人脸。 使用时需要提供您的业务RESTful接口和RTSP视频地址,最大支持10路网络摄像头接入,并按照接入的路数进行收费。 摄像头部署建议请参见摄像头部署。 技能配置项请参见运行时配置参数。 技能接口设计请参见技能结果上传接口。
  • 运行时配置参数 技能在运行时,需要添加运行时配置。配置完成后,参数会从华为HiLens云侧下发到端侧设备。 配置参数说明 技能相关配置参数设计如表3所示。 表3 运行时配置参数 名称 是否必选 参数类型 说明 logLevel 是 Enum 日志级别,包括INFO,DEBUG,WARNING和ERROR。建议设置为INFO。 keep_running 是 Int 当技能崩溃是否自动拉起技能并持续运行。此项配置在1.1.0及以后版本起作用。 multi_camera 是 List 一个设备上多路视频的技能参数,详情请参见表4。 表4 视频参数说明 名称 是否必选 参数类型 说明 camera_names 是 List 摄像头名称。可配置多个名称,表示多个摄像头采用同样的技能配置。 sendOriImgFlag 是 Int 是否发送人脸背景原始图,默认值:0。 0:表示不发送 1:表示发送 sendRepeatFaceFlag 是 Int 是否重复发送清晰人脸图,开关打开后,同一个人只要显示更清晰的人脸会重复发送, 默认值:0。 0:表示不发送 1:表示发送 sendOriImgCompressionRatio 否 Int 原始图jpeg压缩百分比,默认值为90,表示图片压缩比90%,取值范围[1 100]。 cropSizeMax 否 Int 发送人脸图片长宽的最大像素,默认值400。 cropSizeMin 否 Int 发送人脸图片长宽的最小像素,默认值80。 roi 否 String 检测区域配置。区域的设置由Polygon开头,其后依次为区域的坐标(按顺时针排列的x,y坐标)。默认值为Polygon 0 0 0 0,表示检测整个画面。 sendUrl 是 String 发送技能消息POST请求的URL地址。 faceQualityThreshold 是 Float 人脸清晰度阈值。清晰度大于此值的人脸才发送。取值范围[0.0, 1.0],默认值0.38。 centerMode 否 Int 是否只检测roi区域中的最大人脸,默认值0。 0:返回所有人脸。 1:只返回roi中最大的人脸。 示例 HiLens Kit设备支持多路摄像头接入,如果要为不同的摄像头设置不同的技能配置,或者几个摄像头共用同一技能配置,则可在配置列表中给出相应的配置信息,示例如下: //Store001的两个摄像头pos1和pos2配置不同参数: { "logLevel": "INFO", "keep_running": 1, "multi_camera": [{ "camera_names": ["store001_pos1"], "sendOriImgFlag": 0, "sendRepeatFaceFlag": 0, "sendOriImgCompressionRatio": 90, "cropSizeMax": 400, "cropSizeMin": 120, "roi": "Polygon 0 0 0 0", "sendUrl": "https://abc.company.com/face", "faceQualityThreshold": 0.45, "centerMode": 0 }, { "camera_names": ["store001_pos2"], "sendOriImgFlag": 1, "sendRepeatFaceFlag": 1, "sendOriImgCompressionRatio": 100, "cropSizeMax": 300, "cropSizeMin": 80, "roi": "Polygon 0 0 0 0", "sendUrl": "https://abc.company.com/face", "faceQualityThreshold": 0.55, "centerMode": 0 }] } //Store002的两个摄像头pos1和pos2配置相同参数: { "logLevel": "INFO", "keep_running": 1, "multi_camera": [{ "camera_names": ["store002_pos1","store002_pos2"], "sendOriImgFlag": 0, "sendRepeatFaceFlag": 0, "sendOriImgCompressionRatio": 90, "cropSizeMax": 400, "cropSizeMin": 120, "roi": "Polygon 0 0 0 0", "sendUrl": "https://abc.company.com/face" "faceQualityThreshold": 0.55, "centerMode": 0 }] }