开发者快速开发技能
本章针对购买HiLens Kit的开发者,介绍如何使用技能模板快速开发技能,并安装到设备。安装完成后,将能在华为HiLens管理后台上查看技能的运行效果。
本文将以技能模板中“安全帽检测模板”为例,介绍从技能开发到查看技能效果的全流程。技能安装完成后,摄像头能检测工人是否佩戴安全帽。
开始使用样例前,请根据准备工作罗列的要求,提前完成准备工作。开发技能的流程如图1。
步骤1:开发技能
- 登录华为HiLens管理控制台,单击左侧导航栏“技能开发>技能管理”,进入“技能管理”页面。
- 单击右上角“新建技能”,进入“创建技能”流程。
    - 填写技能基本信息,详细参数说明请参见表1。
      图2 技能基本信息  表1 基本信息参数说明 参数 参数说明 填写建议 技能模板 可选择“使用空模板”或者“选择已有模板”开发技能。 如果您已保存了技能模板,可使用技能模板快速开发技能。选用技能模板后,逻辑代码和模型等内容会与模板一致,您可以在此模板上二次编辑。 如果当前系统中无技能模板,建议使用空模板开发技能。 “选择已有模板”,并在弹出对话框中选择“安全帽检测模板”模板。 技能名称 技能的名称,下发到端侧也使用该名称作为根目录。 可输入字母、数字、下划线或中划线,必须以字母开头,以字母或数字结尾,长度3~60个字符。 说明:由于技能市场不允许存在同名技能,所以如果想发布到技能市场,请使用全局唯一的名称对您的技能进行命名。 建议采用“品牌+应用名字”的形式便于区分。 版本 技能的版本号。 格式为“数字.数字.数字”,如“2.1.3”,每位数字范围为“0~999”,超过1位时,不能以“0”开头。 例如“1.0.0”。 适用芯片 技能支持的芯片。运行在HiLens Kit上的技能需选择Ascend 310芯片。 Ascend310。 检验值 用于技能校验,防止技能伪冒。 使用模板的hash检验值。无需填写。 应用场景 技能适用的场景,例如“智慧园区”、“智慧家庭”、“智能车载”、“智能商超”的子场景及“其他”。 可直接使用模板模型,无需填写。 技能图标 技能头像。 可不填写。 OS平台 技能运行的操作系统平台,包括Linux、Android、IOS、LiteOS和Windows。 Linux。 描述 对技能的详细介绍。 最大长度2048,不允许输入~^$%&等特殊字符。 参照模板填写技能输出方式。 - HDMI:直接通过设备的hdmi接口输出到显示屏。
- RTMP:实时输出到服务器供用户查看。
- H264_FILE:以文件的方式输出到OBS供用户查看。
 
- 填写技能内容,详细参数说明请参见表2。
        本示例选择已有模板开发技能的模式,其技能内容默认使用模板中的模型和代码,您可以使用默认提供的信息,或者直接在此基础上进行二次编辑后使用。针对“选择空模板”开发技能,其相关参数不同,建议参考《用户指南》的详细指导完成创建。 图3 技能内容  表2 技能内容参数说明 参数名 参数说明 填写建议 技能格式 技能的格式。可分为“技能包”和“容器镜像”两种格式。 可直接使用模板模型,无需填写。 运行时语言 逻辑代码的运行时语言。目前支持“Python3.7”和“C/C++”。如果选择C/C++语言开发,将不支持在线编辑代码。开发者线下开发完成后,需要在Linux环境下把代码编译打包,然后上传到obs。 可直接使用模板模型,无需填写。 代码执行文件 技能的启动将以该代码执行文件为入口,类似C语言的main函数。入口文件必须在一级目录。 - “技能包”格式的技能要求该文件在技能包的根目录下,如Python技能请以.py结尾。
- “容器镜像”格式的技能,如果dockerfile有配置ENTTRYPOINT,概述如可以为空,否则要求输入该镜像内执行文件的路径。
 文件名不超过1024位,允许输入字母、数字或下划线。不允许输入#~^等字符。 可直接使用模板模型,无需填写。 模型 技能的核心算法。在本地或ModelArts训练,导入到华为HiLens平台。单击加号,您可以在弹出框中,选择华为HiLens平台模型管理列表下的模型。 直接使用模板的场景,无需填写。 代码上传方式 逻辑代码的上传方式。 - “在线编辑”
             使用在线开发技能的逻辑代码,会自动生成一个zip包上传到OBS中。华为HiLens会自动创建一个OBS桶用于存储技能包,桶名称命名规则为“<project_id>-hilens-skill”,您可以前往OBS服务,找到对应命名规则的OBS桶,并获取在线编辑的代码包文件。 
- “从OBS桶上传文件”
             针对比较复杂的工程代码可以线下开发,手动生成zip或tar.gz包并上传到OBS中,然后在此参数中选择使用OBS中的zip或tar.gz代码包。 
- “从容器镜像中选择”
             针对容器镜像格式的技能,可以提前将容器镜像文件上传至SWR,方式请参见Docker客户端上传镜像。 
 直接使用模板的场景,无需填写。 
- 设置运行时配置。由于“运行时配置”用于给使用该技能的用户配置技能必须的参数,直接使用模板所提供的配置参数。
 
- 填写技能基本信息,详细参数说明请参见表1。
      
- 在所有技能开发相关的参数填写并确认后,单击右侧“确定”完成技能开发。
    开发完成的技能将存储在“技能开发>技能管理”页面,您可以在技能管理页面查看此技能的状态。 图4 技能管理  
步骤2:安装技能
- 在“技能开发>技能管理”页面,选择已开发的技能,单击右侧“安装”。
- 勾选已注册的设备,单击“安装”,安装成功后单击“确定”,完成安装技能操作。
步骤3:启动技能
- 使用HDMI视频线缆连接HiLens Kit视频输出端口和显示器。
- 单击左侧导航栏“设备管理>设备列表”,进入设备列表页面。
- 单击已注册设备的“技能管理”,已安装的安全帽检测技能状态为“停止”,单击操作列的“启动”,并单击“确定”,确定启动技能运行在端侧设备上。
     等待一会,当状态变为“运行中”,则技能成功运行在端侧设备上。同时,您也可以通过显示器查看技能输出数据。 安装技能的状态说明如表3所示。 图6 查看安装技能  
 
     
      
