本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站。作者:Wordiansom

Win11上并且安装在其他盘的时候会出现的问题坑。。。。。。(能用win10就用win10)。

1. 晚拿到的开发板套件

2. 开始搭建环境(问题开始的地方)

2.1 安装 lisa zep 工具,并初始化 CSK6 SDK 所需的开发环境。

开发环境:Windows11 21H2
通过下面连接下载CSK6 SDK,

https://castor.iflyos.cn/castor/v3/lisaPluginZephyr/download?platform=windows

选择安装在其他盘(我安装在了D盘)

一直等待安装结束。

2.2 在使用lisa info zep命令之后出现如下问题

使用诊断命令lisa zep doctor之后出现问题

即使pip更新之后依旧是旧版本的pip,这仍然会导致安装环境出现警告,需要更新pip使用新版本的,这个警告就不会出现了,但是会出现依旧使用旧版本的问题,需要卸载原有的版本,然后后安装匹配的版本,就不会出现这样的警告了。
由于操作环境是win11各种问题还有兼容性,处理这些也费劲(能用win10就win10吧。。。。。。)
在Git安装目录下找到git.exe,赋予兼容性运行。

更新之后就需要更新.gitconfig文件
手工编辑.gitconfig文件(一般在c:\Users\你的windows用户名\),在[safe]节点下加入:

directory = D:/SoftWare/LISTENAI/LISA/csk-sdk/zephyr

注意这个directory会在诊断中出现问题所在上图中已经标出来了。需要将他直接加在这个directory中。
然后再lisa info zep出现下面的说明安装成功了

3. 启动板子的第一个应用程序

3.1 新建项目工程

在HelloWorld最简项目的基础上实现LED灯的控制操作,(一定是要在跑通helloworld的项目之后,会生成对应的文件,否则会出现很多文件不会有,后面无法添加。若没有可查看一下文档,其实就是在基础文件编译的条件下进行修改。文档连接:

https://docs.listenai.com/chips/600X/application/getting_start

)需要新建一个 HelloWorld 项目,创建项目指令:lisa zep create
选中helloworld之后会出现修改项目名称,(可修改成LED) ,确认之后

3.2 组件配置

LED灯控制的应用需要通过GPIO来控制,故需要在项目配置文件 应用根目录/prj.conf 文件中添加GPIO配置,将下面的复制进去即可。

# 打开GPIO配置
CONFIG_GPIO=y

3.3 CMake配置

应用项目下的C文件通过CMakeLists.txt配置进行编译,如下所示:

target_sources(app PRIVATE src/main.c)

这部分其实在对应文件已经生成。

3.4 设备树配置

在app/boards/目录下增加csk6011a_nano.overlay设备树配置文件并添加led的GPIO配置,具体内容如下:(这是原文中的,你会发现找不到app文件夹,app就是你自己使用的工程目录,而且需要自己建立app/boards目录,再添加csk6011a_nano.overlay文件在该目录下,这里原文中没有说清楚。。。。)
/ /根节点/

/*定义别名为led0的gpio设备树*/
{aliases {led0 = &board_led_0_label;/* led0别名映射到led0设备树node label */
};{leds {compatible = "gpio-leds";/* 设置led设备树的ymal绑定文件 */board_led_0_label: board_led_0_nodeid { /* node label和node id,皆可自定义命名 */gpios = <&gpiob 6 GPIO_ACTIVE_LOW>; /* GPIO逻辑电平模式设置 */label = "User LED1"; /* 节点的 label 属性,通过传入device_get_binding()接口可以获取gpio设备实例 */};
};

3.4 将main.c文件修改成

#include <zephyr/zephyr.h>
#include <zephyr/drivers/gpio.h>/* 1000 msec = 1 sec */
#define SLEEP_TIME_MS   1000/* 通过别名获取 "led0" 设备树 node id */
#define LED0_NODE DT_ALIAS(led0)/* 通过 node id 获取 led0 设备树信息 */
static const struct gpio_dt_spec led = GPIO_DT_SPEC_GET(LED0_NODE, gpios);void main(void)
{
printk("Hello World! %s\n", CONFIG_BOARD);int ret;
/* 检查硬件设备是否就绪 */
if (!device_is_ready(led.port)) {return;
}/* 将GPIO配置为输出并将其初始化为逻辑电平1 */
ret = gpio_pin_configure_dt(&led, GPIO_OUTPUT_ACTIVE);
if (ret < 0) {return;
}while (1) {/* GPIO电平反转控制 */ret = gpio_pin_toggle_dt(&led);if (ret < 0) {return;}k_msleep(SLEEP_TIME_MS);
}
}

3.4 编译

在helloworld根目录下通过以下指令完成编译:

lisa zep build -b csk6011a_nano

-b 后的参数为开发板对应的板型,本章节使用的开发板对应的板型为:csk6011a_nano 。

3.5 烧录

将开发板的DAPLink USB通过USB数据线连接PC,通过烧录指令烧录:

lisa zep flash --runner pyoc

效果(闪图)如下:

可以开始新的卡bug之路了。

4. 开始图像识别应用

4.1 获取源码

获取并初始化Sample与SDK执行以下命令后,将拉取 Sample 项目 和SDK到本地并自动完成初始化,注意代码仓在本地存放的路径不能有中文名称,否则容易引起错误;

lisa zep create --from-git          https://cloud.listenai.com/zephyr/applications/app_algo_hsd_sample_for_csk6.git

时间有点长,慢慢等待。

4.2 修改配置

打开PC端图像预览功能

打开项目的根目录下找到的prj.conf文件,将CONFIG_WEBUSB=n改为CONFIG_WEBUSB=y 。

4.3 编译固件

lisa zep build -b csk6011a_nano

若需抛弃已有编译产物,进行全量编译(Rebuild这个在所有项目里面都可以使用到)

4.4 烧录应用程序

lisa zep flash

4.5 烧录资源

前面完成了应用程序烧录,接下来将算法运行所需的资源进行烧录,可以在app_algo_hsd_sample_for_csk6/resource/res.overlay 文件中看到这些资源所占用的分区。

4.6 使用串口烧录

使用 USB 线接上 DAPLink USB 口进行烧录,依次执行以下命令,完成资源的烧录。
Windows下

lisa zep exec cskburn -s \\.\COMx -C 6 0x500000 .\resource\res.bin -b 748800

其中的 COMx 代表开发套件连接到 PC 上对应的串口号。例如:COM7
烧录之后会出现下面的问题:

无论怎么使用烧录都是这样的,需要另外一根USB先连接,文中根本没有提到,如果一根线可能出现供电不足,出现烧录失败,反复尝试依旧失败。再多加入一根线之后,烧录就成功了。

4.7 查看结果

连接开发板的 DAPLink USB ,使用串口调试工具打开 COM 口(波特率为 115200 ),使用开发板上的 reset 按键进行复位后,即可看到日志输出。(瞎看结束之后一定要记得关闭串口,后面有坑。。。。。)

*** Booting Zephyr OS build 36309bca986d  ***
[00:00:03.185,000] <inf> hsd: Setup resource [head_shoulder] which in <0x18500031,0xa6ce0>
[00:00:03.187,000] <inf> hsd: Setup resource [gesture] which in <0x185a6d11,0x132448>
- Device name: DVPI
[00:00:03.315,000] <inf> hsd: fmt: [VYUY] width [640] height [480]
[00:00:03.316,000] <inf> hsd: Alloc video buffer: 614400
[00:00:03.317,000] <inf> hsd: Alloc video buffer: 614400
[00:00:03.318,000] <inf> hsd: Alloc video buffer: 614400
Heap at 0x305c9530 contains 42841 units in 16 bucketsbucket#    min units        total      largest      largestthreshold       chunks      (units)      (bytes)-----------------------------------------------------------15        32769            1        42831       342640342640 free bytes, 0 allocated bytes, overhead = 96 bytes (0.0%)
[00:00:03.515,000] <inf> main: head shoulder cnt: 1
[00:00:03.516,000] <inf> main: gesture result id: 0 ,state: 0
[00:00:03.608,000] <inf> main: head shoulder cnt: 1
[00:00:03.609,000] <inf> main: gesture result id: 0 ,state: 0
[00:00:03.700,000] <inf> main: head shoulder cnt: 1
[00:00:03.701,000] <inf> main: gesture result id: 0 ,state: 0
[00:00:03.792,000] <inf> main: head shoulder cnt: 1
[00:00:03.793,000] <inf> main: gesture result id: 0 ,state: 0
[00:00:03.884,000] <inf> main: head shoulder cnt: 1
[00:00:03.885,000] <inf> main: gesture result id: 0 ,state: 0
[00:00:03.976,000] <inf> main: head shoulder cnt: 1
[00:00:03.976,000] <inf> main: gesture result id: 0 ,state: 0
[00:00:04.068,000] <inf> main: head shoulder cnt: 1
[00:00:04.069,000] <inf> main: gesture result id: 0 ,state: 0
[00:00:04.159,000] <inf> main: head shoulder cnt: 1

5. PC 查看工具

5.1 开启 PC 调试模式

开启 PC 调试模式后,设备会在输出算法识别结果的同时,将图像压缩传至 PC 端供用户预览。
在 app_algo_hsd_sample_for_csk6 项目的根目录下找到 prj.conf 文件,将其中的 CONFIG_WEBUSB=n 改为 CONFIG_WEBUSB=y ,再进行固件编译、烧录。如已开启,则跳到下一步;

lisa zep build -b csk6011a_nano
lisa zep flash

5.2 PC 工具获取

拉取PC工具项目到本地

git clone   https://cloud.listenai.com/zephyr/applications/csk_view_finder_spd.git

5.3 打开工具

使用 Chrome 内核的浏览器,打开项目 csk_view_finder_spd/src 目录下的 index.html, driver.html, usage.html文件都需要仔细查看下,里面是指南少走弯路;(注意一定要使用Chrome 内核的浏览器,我是用搜狗浏览器时钟无法连接设备,读取的设备号也是乱码)

5.4 安装驱动(坑,浪费时间)

会发现设备管理下面没有安装驱动,开始打驱动,这里会出现兼容问题,安装过程简单,就是好费时间。

工具csk_view_finder_spd/src 目录下有指引html文件,可以看着按照顺序来。
我这边在win11的环境下安装等待了很长时间,在安装驱动文件的时候一定要使用管理员方式打开,结果显示操作超时。

但是在设备管理器中发现驱动是安装成功的,驱动的设备名称和设别号都是正常工作,但是始终连接不上设备,都没有提示。后来在驱动的管理的页面发现上面提示需要重新启动。在一个就是在安装驱动的时候一定不能开串口助手连接查看返回日志,这样会出现串口设备占用,导致通信时间过长,使得安装时间非常长。
重启之后,对驱动进行重新安装,就可以安装成功了,依然管理员权限使用,否则就会出现安装时间过长,最后安装成功。

6. 开始使用

6.1 使用工具查看

使用TypeC数据线连接 CSK6 USB 接口至电脑,若在PC端可看到如下弹窗提示,说明设备已被识别成功

6.2 连接设备

点击选择设备,看到匹配成功的。

连接上就会出现如下的画面:

6.3 下载数据

点击开始记录之后,在结束记录后会自动下载记录数据到本地电脑上面

这个压缩文件里面都是识别的用到的文件,

pic目录下都是记录过程中图像文件

rect文件下都是记录下来的头肩识别到的数据,每一个照片里面都标记了识别出头肩的方框,

recognize.json文件这里面存储的都是头肩的坐标文件,文件详情如下,详细记录下了头肩方框的X,Y,坐标还有方框的大小数据,还有识别到的概率值,可以在这里面查找对应的数据进一步使用,就比如在宣讲会PPT中说到的云台人脸跟随的设备,这是百万级的应用,结合这些数据进行进一步的使用。

7. 总结

整个过程下来,可能不同的配置环境会出现不同问题,但是总体来说这些还是比较友好的,就是处理系统的兼容问题,以及安装过程中出现的各种问题。AI性能方面,可能在由于为了帧率的问题,将分辨率设置的非常低,很模糊,但是是被框可以很好的跟随人的位置变化,实时效果可以说随时不错的了。摄像头距离方面,稍微远离就会出现识别不到,可能跟分辨率有关系,可以通过综合性能权重来权衡这个问题。

【聆思CSK6视觉AI开发套件试用】Win11下安装全过程处理兼容性问题以及实现亮灯AI头肩检测相关推荐

  1. 【聆思CSK6 视觉AI开发套件试用】基于CSK6011a_nano的虚拟打砖块交互系统

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:马博 非常感谢极术社区和聆思科技提供的机会,加之前做过其他视觉模块的测试项目,于是尝试申 ...

  2. 【聆思CSK6视觉AI开发套件试用】AI手势检测识别+编译Helloworld示例

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:Zeee 前言: 首先,感谢极术社区联合聆思科技给予宝贵的试用机会.借助本次对CSK6视 ...

  3. 【聆思CSK6 视觉AI开发套件试用】AI控制直流电机转速接口打通

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:oxlm 背景 在访问极术社区时,偶然发现聆思科技的CSK6开发板的评估活动,看CSK6 ...

  4. 【聆思CSK6视觉AI开发套件试用】从部署工程师和测试工程师角度体验CSK6

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:cfx 1.体验(baipiao)之前 作为一个精通多种移动端AI框架(TFLite.A ...

  5. 【聆思CSK6 视觉AI开发套件试用】人脸识别和 tflite-micro 语音识别推理实验

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:SunnyCase 1. 前言 非常幸运得到这次测评 CSK6 视觉AI开发套件的机会, ...

  6. 【聆思CSK6视觉AI开发套件试用】基于AI手势识别的剪子包袱锤游戏

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:寒冰1988 感谢极术社区联合聆思组织的本次活动,很荣幸得到本次体验国产AI MCU的机 ...

  7. 【聆思CSK6 视觉AI开发套件试用】基于CSK6的头肩手势检测控制会议相机进行数字变焦

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:海锋 基于CSK6的头肩手势检测控制会议相机实现变倍功能 首先感谢极术社区与聆思科技的信 ...

  8. 【聆思CSK6 视觉AI开发套件试用】CSK6011与STM32F469I 开发板对比

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:冷山 1. 引言 非常感谢极术社区和聆思科技提供的这次试用机会,让我再一次被幸运击中,因 ...

  9. 【聆思CSK6 视觉AI开发套件试用】开发环境与烧写问题解决

    本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动,更多开发板试用活动请关注极术社区网站.作者:ifconfig 抱歉这么晚才发文章,由于疫情被封在家了一个多星期,刚开始正常. 一.开 ...

最新文章

  1. addslashes 及 其他 清除空格的方法是不安全的
  2. express组合gulp自动更新代码重启浏览器
  3. Oracle和Mysql获取uuid的方法对比
  4. git fetch 命令
  5. dexpler的使用方法
  6. Android 集成高德地图——当前定位,添加图标,画路线,设置显示中心位置,比例,地图刷新位置监听,判断GPS开启,去打开GPS
  7. 【python】collections.Counter()函数
  8. 大道至简第七第八章读后感
  9. 计算机专业岗位细分及学习必备清单
  10. python多线程队列两组数据_python 多线程2-队列同步
  11. PhalApi视频教程
  12. DX9b 与 DX9c 在x文件解析方面带来的麻烦
  13. AutoCad 批量打印
  14. VR/AR眼镜Type-C转接器边投屏边PD快充方案
  15. escalating to SIGTERM问题出现的原因
  16. 禁止移动端微信内置浏览器调节字体大小
  17. python聚类分析实现电商用户细分(基于RFM用户价值分析模型)
  18. 领导合影站位图_领导座次安排图,没有人会教你这些,但非常重要!(建议收藏)...
  19. 工作 3 年后的一些思考
  20. HEVC代码学习13:predInterSearch函数

热门文章

  1. mysql 复合索引详解
  2. 英语听力网站,很难找的(赶紧收藏一下)
  3. 为什么渐进式去中心化是区块链最大的希望?
  4. 20210308CC
  5. unity日记10(pmx模型导入unity|无头盔开发vr XR Device Simulator操作说明| 模之屋模型导入unity )
  6. 深度学习模型的准备和使用教程,LSTM用于锂电池SOH预测(第二节)(附Python的jypter源代码)
  7. hd6630m可以玩lol吗_LOL为什么样我的PING值不高?电脑是联想E520 显卡是ATI Radeon HD6630M 玩英雄联盟游戏的时候会卡...
  8. 焦点目标插件研究(wow2.4版本)
  9. 学计算机加强技能短文,干货:语文阅读和作文最该提升的7大技能
  10. 平凡的世界---读后感1