
# 开发者快速开发技能
本章针对购买HiLens Kit的开发者，介绍如何使用技能模板快速开发技能，并安装到设备。安装完成后，将能在华为HiLens管理后台上查看技能的运行效果。
本文将以技能模板中"安全帽检测模板"为例，介绍从技能开发到查看技能效果的全流程。技能安装完成后，摄像头能检测工人是否佩戴安全帽。
开始使用样例前，请根据[准备工作]罗列的要求，提前完成准备工作。开发技能的流程如[图1]。
图1开发者快速入门   
![](https://support.huaweicloud.com/qs-hilens/zh-cn_image_0234077611.png "点击放大")
 #### 准备工作
- 已注册华为账号开通华为云，并完成实名认证。在使用华为HiLens前检查账号状态，账号不能处于欠费或冻结状态。
- 已购买HiLens Kit设备，并[注册HiLens Kit](https://support.huaweicloud.com/usermanual-hilens/hilens_02_0048.html)。
 
#### 步骤1：开发技能
1. 登录华为HiLens管理控制台，单击左侧导航栏"技能开发\>技能管理"，进入"技能管理"页面。
2. 单击右上角"新建技能"，进入"创建技能"流程。
   1. 填写技能基本信息，详细参数说明请参见[表1]。
      图2技能基本信息   
      ![](https://support.huaweicloud.com/qs-hilens/zh-cn_image_0000001208039623.png "点击放大")
       表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. 填写技能内容，详细参数说明请参见[表2]。
      ![](https://support.huaweicloud.com/qs-hilens/public_sys-resources/note_3.0-zh-cn.png)
      本示例选择已有模板开发技能的模式，其技能内容默认使用模板中的模型和代码，您可以使用默认提供的信息，或者直接在此基础上进行二次编辑后使用。针对"选择空模板"开发技能，其相关参数不同，建议参考[《用户指南》](https://support.huaweicloud.com/usermanual-hilens/hilens_02_0022.html)的详细指导完成创建。
      图3技能内容   
      ![](https://support.huaweicloud.com/qs-hilens/zh-cn_image_0000001207921449.png "点击放大")
       表2技能内容参数说明 
      | 参数名    | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 填写建议            |
      |:---|:---|:---|
      | 技能格式   | 技能的格式。可分为"技能包"和"容器镜像"两种格式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 可直接使用模板模型，无需填写。 |
      | 运行时语言  | 逻辑代码的运行时语言。目前支持"Python3.7"和"C/C++"。如果选择C/C++语言开发，将不支持在线编辑代码。开发者线下开发完成后，需要在Linux环境下把代码编译打包，然后上传到obs。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 可直接使用模板模型，无需填写。 |
      | 代码执行文件 | 技能的启动将以该代码执行文件为入口，类似C语言的main函数。入口文件必须在一级目录。 - "技能包"格式的技能要求该文件在技能包的根目录下，如Python技能请以.py结尾。  - "容器镜像"格式的技能，如果dockerfile有配置ENTRYPOINT，概述如可以为空，否则要求输入该镜像内执行文件的路径。   文件名不超过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客户端上传镜像](https://support.huaweicloud.com/qs-swr/index.html)。    | 直接使用模板的场景，无需填写。 |
         
      
   
   3. 设置运行时配置。由于"运行时配置"用于给使用该技能的用户配置技能必须的参数，直接使用模板所提供的配置参数。
    
3. 在所有技能开发相关的参数填写并确认后，单击右侧"确定"完成技能开发。 开发完成的技能将存储在"技能开发\>技能管理"页面，您可以在技能管理页面查看此技能的状态。
   图4技能管理   
   ![](https://support.huaweicloud.com/qs-hilens/zh-cn_image_0000001162681762.png "点击放大") 
 
#### 步骤2：安装技能
1. 在"技能开发\>技能管理"页面，选择已开发的技能，单击右侧"安装"。
2. 勾选已注册的设备，单击"安装"，安装成功后单击"确定"，完成安装技能操作。
   安装过程中，华为HiLens管理控制台会将技能包下发到设备。下发技能包需要一段时间，可以从进度条中看到技能安装进度，下发完成后"进度"栏会提示"安装成功"，如[图5]所示。
   图5安装成功   
   ![](https://support.huaweicloud.com/qs-hilens/zh-cn_image_0243640481.png "点击放大") 
 
#### 步骤3：启动技能
如果技能状态为"安装成功"，说明技能正常安装至设备，您可以启动技能，查看技能输出数据。
1. 使用HDMI视频线缆连接HiLens Kit视频输出端口和显示器。
2. 单击左侧导航栏"设备管理\>设备列表"，进入设备列表页面。
3. 单击已注册设备的"技能管理"，已安装的安全帽检测技能状态为"停止"，单击操作列的"启动"，并单击"确定"，确定启动技能运行在端侧设备上。 等待一会，当状态变为"运行中"，则技能成功运行在端侧设备上。同时，您也可以通过显示器查看技能输出数据。
   安装技能的状态说明如[表3]所示。
   图6查看安装技能   
   ![](https://support.huaweicloud.com/qs-hilens/zh-cn_image_0243640543.png "点击放大")
    表3安装技能状态 
   | 状态名 | 状态说明               |
   |:---|:---|
   | 停止  | 停止状态，技能停止运行在端侧设备上。 |
   | 运行中 | 运行状态，技能成功安装在端侧设备。  |
      
   
 
