CN116434040A - 一种面向risc-v体系架构的实时目标检测方法及系统 - Google Patents
一种面向risc-v体系架构的实时目标检测方法及系统 Download PDFInfo
- Publication number
- CN116434040A CN116434040A CN202310197228.3A CN202310197228A CN116434040A CN 116434040 A CN116434040 A CN 116434040A CN 202310197228 A CN202310197228 A CN 202310197228A CN 116434040 A CN116434040 A CN 116434040A
- Authority
- CN
- China
- Prior art keywords
- risc
- cnstream
- architecture
- sdk
- target detection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 47
- 238000012545 processing Methods 0.000 claims abstract description 49
- 240000008574 Capsicum frutescens Species 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 33
- 235000002568 Capsicum frutescens Nutrition 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims abstract description 11
- 238000011161 development Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 15
- 238000013473 artificial intelligence Methods 0.000 claims description 8
- 230000001419 dependent effect Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000011002 quantification Methods 0.000 claims description 3
- 238000013508 migration Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/955—Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种面向RISC‑V体系架构的实时目标检测方法及系统,涉及嵌入式系统领域。将寒武纪CNStream数据流处理SDK的环境依赖和CNToolkit及固件依次移植至RISC‑V体系架构中;移植寒武纪CNStream数据流处理SDK;加载离线模型文件;初始化嵌入式设备和MLU 220M.2;采集源数据,使用RTSP推流传入至寒武纪CNStream数据流处理SDK中;寒武纪CNStream数据流处理SDK对源数据进行处理,实现目标检测功能;目标检测结果通过RTSP推流至VLC媒体播放器进行展示。本发明通过使用Sifive Unmatched嵌入式设备和国产智能芯片寒武纪边缘端人工智能加速卡MLU 220M.2,运用寒武纪CNStream数据流处理SDK,实现面向RISC‑V体系架构的实时目标检测功能。
Description
技术领域
本发明涉及嵌入式系统领域,尤其是涉及嵌入式AI应用领域,具体地说,提出了一种面向RISC-V体系架构的实时目标检测方法及系统。
背景技术
指令集是CPU中用来计算和控制计算机系统的一套指令的集合,从指令集的复杂度可分为复杂指令集计算机和精简指令集计算机。RISC-V架构是基于精简原理的指令集计算机原理建立的开放指令集架构(ISA)。2010年以前,CPU的主流架构是x86和ARM。随着RISC-V的出现,该架构与x86和ARM相比具有架构篇幅小、支持模块化可配置的指令子集、支持可扩展指令、指令数目少,硬件实现复杂度低等特点,成为第三大CPU架构。
除上述优势外,RISC-V还具有Physical Memory Protection安全组件和Multi-domain Trusted Execution Environment安全技术。将人工智能(AI)引入至RISC-V体系架构的边缘系统(IoT设备)中,与AI在云端系统中的应用相比,可以降低功耗,缩短反应时间,提高数据储存和处理的安全性。因此,RISC-V主要应用于边缘计算设备,典型的应用案例有Canaan发布的Kendryte K210芯片和BITMAIN发布的Sophon BM1880芯片。
RISC-V在边缘设备AI中的运用,可以提高边缘计算芯片PPA(性能,功耗及面积)和灵活度。但是,实时目标检测支持性不足。
发明内容
本发明所要解决的技术问题在于:如何在RISC-V体系架构上运行基于深度学习的实时目标检测算法,实现实时目标检测功能。为解决该技术问题,本发明提供一种面向RISC-V体系架构的实时目标检测方法及系统,使用基于深度学习的目标检测方法,连接IP摄像机,搭载Sifive Unmatched嵌入式设备和国产智能芯片寒武纪边缘端人工智能加速卡MLU 220M.2,输出待检测物体在视频流中的位置,并进行分类得到带有score的标签,完成实时目标检测的功能。
本发明是通过下述技术方案解决上述技术问题:
一种面向RISC-V体系架构的实时目标检测方法,包括以下步骤:
1)将寒武纪CNStream数据流处理SDK的环境依赖移植至RISC-V体系架构中;
2)将寒武纪CNStream数据流处理SDK所需的CNToolkit及固件移植至RISC-V体系架构中;
3)将寒武纪CNStream数据流处理SDK移植至RISC-V体系架构中;
4)加载寒武纪离线模型文件yolov3.cambricon;
5)初始化嵌入式设备Sifive Unmatched开发板和寒武纪边缘端人工智能加速卡MLU220M.2;
6)通过IP摄像机采集源数据,借助RTSP推流至寒武纪CNStream数据流处理SDK中;
7)使用寒武纪CNStream数据流处理SDK对IP摄像机采集的源数据进行处理,实现实时目标检测功能;
8)目标检测结果通过RTSP推流至VLC媒体播放器进行展示。
优选地,步骤1)中所述环境依赖包括:计算机视觉库OpenCV、命令行参数处理库gflags、Google日志库glog、字体格式库freetype6、中文字库ttf-wqy-zenhei、编译工具cmake、多媒体库sdl2、套接字层密码库openssl、硬件使用的高性能库Librdkafka和流媒体传输协议库live555。
优选地,步骤1)中所述环境依赖通过交叉编译移植至RISC-V体系架构中。
优选地,步骤2)中所述CNToolKit包括:寒武纪硬件编解码库CNCodec、寒武纪设备接口库CNDev、寒武纪驱动接口库CNDrv和寒武纪运行时库CNRT。
优选地,步骤2)中所述CNToolkit及固件通过交叉编译移植至RISC-V体系架构中。
优选地,步骤3)中所述寒武纪CNStream数据流处理SDK通过交叉编译移植至RISC-V体系架构中。
优选地,步骤4)中在加载寒武纪离线模型文件时,将yolov3模型的caffe格式转换为供寒武纪CNStream数据流处理SDK使用的cambricon格式。
优选地,步骤4)中将caffe格式转换为cambricon格式的步骤包括:
安装cambricon_caffe docker;
将yolov3.cfg和yolov3.weights转换成yolov3.prototxt和yolov3.caffemodel;
按需修改yolov3.prototxt;
使用generate_quantized_pt对yolov3.prototxt和yolov3.caffemodel进行量化;
使用离线转换工具caffe genoff对量化后的yolov3模型进行处理,生成yolov3.cambricon离线模型文件。
优选地,步骤5)中初始化嵌入式设备Sifive Unmatched开发板的步骤包括:
加载引导程序BootLoader;
加载linux内核;
挂载根文件系统rootfs;
创建init进程;
进入RISC-V体系架构的终端。
优选地,步骤5)中初始化寒武纪边缘端人工智能加速卡MLU 220M.2的步骤包括:
进入RISC-V体系架构的终端,找到MLU 220M.2驱动所在的路径;
执行source命令使MLU 220M.2相关依赖库在RISC-V体系架构中生效。
优选地,步骤6)中所述IP摄像机与带有寒武纪边缘端人工智能加速卡MLU 220M.2的Sifive Unmatched开发板处在同一网段。
优选地,步骤7)中使用寒武纪CNStream数据流处理SDK实现目标检测的功能包括:
使用寒武纪CNStream中的内置模块:DataSource模块、Inferencer模块、OSD模块和RTSP Sink模块,并写入所述内置模块的参数配置,运用pipeline流水线模式将所述内置模块串联起来,构建json文件;
将IP摄像机采集到的数据源保存成files.list_video的文件所在的路径,写入shell脚本中的data_path参数中;
将上述构建的josn文件所在的路径写入shell脚本中的config_fname参数中;
将yolov3.cambricon模型文件所在的路径写入shell脚本中的MODEL_PATH参数中;
启动shell脚本,实现寒武纪CNStream数据流处理SDK的目标检测的功能。
优选地,步骤8)中所述VLC媒体播放器安装在一台具有windows操作系统的电脑中,该电脑与所述IP摄像机和带有寒武纪边缘端人工智能加速卡MLU 220M.2的SifiveUnmatched开发板处在同一网段。
一种面向RISC-V体系架构的实时目标检测系统,基于上述方法实现,包括:RISC-V体系架构、IP摄像机和VLC媒体播放器;该RISC-V体系架构通过上述方法的步骤1)至5)构建得到,并具备上述方法的步骤7)的数据处理和目标检测功能;该IP摄像机用于采集源数据,并借助RTSP推流至RISC-V体系架构的寒武纪CNStream数据流处理SDK中;该VLC媒体播放器用于展示从RISC-V体系架构通过RTSP推流来的目标检测结果。
本发明与现有技术相比较具有以下优点:
(1)本发明提出在RISC-V体系架构下实现实时目标检测的方法;
(2)本发明与传统在GPU平台上实现实时目标检测方式相比,具有功耗低,体积小的特点;
(3)本发明可加速RISC-V体系架构在边缘计算领域中,AI产品的落地。
附图说明
图1是本发明提出的一种面向RISC-V体系架构的实时目标检测方法的流程图;
图2是本发明实施例中提到的软件依赖项之间的关系图;
图3是本发明提出的一种面向RISC-V体系架构的实时目标检测系统的总体架构图。
具体实施方式
为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
如图1所示,本实施例提供一种面向RISC-V体系架构的实时目标检测方法,包括以下步骤:
S1:将寒武纪CNStream数据流处理SDK的环境依赖移植至RISC-V体系架构中;
S2:将寒武纪CNStream数据流处理SDK所需的CNToolkit及固件移植至RISC-V体系架构中;
S3:将寒武纪CNStream数据流处理SDK移植至RISC-V体系架构中;
S4:加载寒武纪离线模型文件yolov3.cambricon;
S5:初始化嵌入式设备Sifive Unmatched开发板和寒武纪边缘端人工智能加速卡MLU220M.2;
S6:通过IP摄像机采集源数据,借助RTSP推流至寒武纪CNStream数据流处理SDK中;
S7:寒武纪CNStream数据流处理SDK对IP摄像机采集的源数据进行处理,实现目标检测功能;
S8:目标检测结果通过RTSP推流至VLC媒体播放器进行展示。
步骤S1:移植环境依赖项。需在Ubuntu20.04,x86_64位机器中,分别对寒武纪CNStream数据流处理SDK需要移植的环境依赖项,根据YOCTO系统的语法模式,编写bbclass配方文件,通过交叉编译移植至RISC-V体系架构中,供寒武纪CNStream数据流处理SDK调用实现对应的功能。该环境依赖项包括:计算机视觉库OpenCV、命令行参数处理库gflags、Google日志库glog、字体格式库freetype6、中文字库ttf-wqy-zenhei、编译工具cmake、多媒体库sdl2、套接字层密码库openssl、硬件使用的高性能库Librdkafka、流媒体传输协议库live555。将上述文件命名为库名_版本号.bb形式,存放至meta-cambricon/recipes-multimedia/路径中,如图2所示,供寒武纪CNStream数据流处理SDK后续移植调用。
步骤S2:移植CNToolkit及固件。在步骤S1系统架构中,搭建RISC-V 64编译环境,下载并安装riscv64-oe-linux交叉编译工具链。使用riscv64-oe-linux-gcc和riscv64-oe-linux-g++对寒武纪CNStream数据流处理SDK的CNToolKit进行交叉编译。CNToolKit包括:寒武纪硬件编解码库CNCodec、寒武纪设备接口库CNDev、寒武纪驱动接口库CNDrv和寒武纪运行时库CNRT等四个运行库。将各自运行库的安装目录下生成的include和lib文件夹,压缩成tar包放在meta-cambricon/recipes-support/cambricon/files路径中。根据YOCTO系统的语法模式,编写cambricon_git.bb配方文件,读取交叉编译生成的CNToolKit及固件所在的tar包,如图2所示,供寒武纪CNStream数据流处理SDK后续移植调用。通过交叉编译移植CNToolkit可使寒武纪CNStream数据流处理SDK通过调用上述库的API使用寒武纪边缘端人工智能加速卡MLU 220M.2的硬件设备信息;通过交叉编译移植固件可初始化寒武纪边缘端人工智能加速卡MLU 220M.2。
步骤S3:移植寒武纪CNStream。在步骤S1系统架构中,根据YOCTO系统的语法模式,编写寒武纪CNStream数据流处理SDK的bbclass配方文件,生成CNStream_5.4.0.bb放在meta-cambricon/recipes-cambricon/images路径下。通过DEPENDS关键字,可指定SDK在运行时需要的环境依赖项、CNToolkit和固件,即将步骤1和步骤2中编写的bbclass配方文件包含进来。软件包之间的依赖关系,如图2所示。根据KAS编译工具和bitebake编译命令,编写cambricon-demo-coreip-cli.yml文件,构建demo-coreip-cli系统镜像。编译命令如下:
kas build cambricon-demo-coreip-cli.yml
在此过程中,使用IMAGE_INSTALL:append="CNStream"即通过交叉编译,可将寒武纪CNStream数据流处理SDK移植至RISC-V64操作系统中。
步骤S4:加载寒武纪离线模型文件。寒武纪CNStream数据流处理SDK不支持caffe格式的模型文件,因此,在步骤S1系统架构中,需将yolov3模型的caffe格式转换为供寒武纪CNStream数据流处理SDK使用的cambricon格式,具体的转换步骤如下:
(1)安装cambricon_caffe docker;
(2)将yolov3.cfg和yolov3.weights转换成yolov3.prototxt和yolov3.caffemodel;
(3)按需修改yolov3.prototxt;
(4)使用generate_quantized_pt对yolov3.prototxt和yolov3.caffemodel进行量化;
(5)使用离线转换工具caffe genoff对量化后的模型进行处理,生成yolov3.cambricon离线模型文件。
步骤S5:初始化硬件设备。将步骤S3编译得到的demo-coreip-cli-unmatched.wic.xz,复制到SD卡中。执行命令如下:
xzcat demo-coreip-cli-unmatched.wic.xz|sudo dd of=/dev/sdX bs=512Kiflag=fullblock oflag=direct conv=fsync status=progress
其中,sdX使用fdisk-l查看,更改为SD卡实际设备文件。
将该SD卡插入Sifive Unmatched开发板中的MicroSD卡槽,接通电源,启动SifiveUnmatched开发板,选择COM3端口,设置波特率为115200,进入RISC-V体系架构。此时,初始化嵌入式设备Sifive Unmatched开发板,具体步骤如下:
(1)加载引导程序BootLoader;
(2)加载linux内核;
(3)挂载根文件系统rootfs;
(4)创建init进程;
(5)进入RISC-V体系架构的终端。
之后,再初始化寒武纪边缘端人工智能加速卡MLU 220M.2,具体步骤如下:
(1)进入MLU220 M.2固件驱动所在的文件路径;
(2)执行./load_auto将固件拷贝至RISC-V体系架构中;
(3)执行source./env.sh命令使MLU 220M.2相关依赖库在RISC-V体系架构中生效。
步骤S6:采集实时数据。如图3所示,在此步骤中使用海康威视IP摄像机将其和带有寒武纪边缘端人工智能加速卡MLU 220M.2的Sifive Unmatched开发板放置在同一网段。使用IP摄像机将采集到的数据存放成下述格式的files.list_video文件:
rtsp://username:password@<ipaddress>/<videotype>/ch<number>/<streamtype>
通过RTSP推流传入至寒武纪CNStream数据流处理SDK中。
步骤S7:实现目标检测。该步骤中寒武纪CNStream数据流处理SDK实现目标检测的步骤如下:
(1)构建json配置。使用寒武纪CNStream提供的DataSource模块、Inferencer模块,OSD(On Screen Display)模块和RTSP(Real Time Streaming Protocol)Sink模块,运用pipeline流水线模式将其串联起来,写入各个模块的参数配置,形成上下游依赖关系,构建json文件,供寒武纪CNStream调用;
(2)加载视频文件。将IP摄像机采集到的数据源保存成files.list_video的文件所在的路径,写入shell脚本中的data_path参数中;
(3)加载josn文件。将(1)中生成的josn文件所在的路径写入shell脚本中的config_fname参数中;
(4)加载寒武纪离线模型文件。将转换后的yolov3.cambricon模型文件所在的路径写入shell脚本中的MODEL_PATH参数中;
(5)实现目标检测功能。启动shell脚本,可实现寒武纪CNStream数据流处理SDK的目标检测的功能。
步骤S8:显示结果。经步骤S7得到的目标检测结果,即带有位置画框和scores标签的图像帧通过RTSP推流至VLC媒体播放器进行展示。如图3所示,VLC媒体播放器安装在一台windows操作系统的电脑中。该电脑需与IP摄像机和带有寒武纪边缘端人工智能加速卡MLU220M.2的Sifive Unmatched开发板均处在同一网段。打开VLC媒体播放器,在VLC中输入开发板的RTSP流地址,可将目标检测结果进行实时显示。
基于上述方法,本实施例提供一种面向RISC-V体系架构的实时目标检测系统,包括:RISC-V体系架构、IP摄像机和VLC媒体播放器,如图3所示。该RISC-V体系架构通过步骤1)至5)构建得到,并具备步骤7)的数据处理和目标检测功能;该IP摄像机用于采集源数据,并借助RTSP推流至RISC-V体系架构的寒武纪CNStream数据流处理SDK中;该VLC媒体播放器用于展示从RISC-V体系架构通过RTSP推流来的目标检测结果。
虽然本发明已以实施例公开如上,然其并非用以限定本发明,本领域的普通技术人员对本发明的技术方案进行的适当修改或者等同替换,均应涵盖于本发明的保护范围内,本发明的保护范围以权利要求所限定者为准。
Claims (10)
1.一种面向RISC-V体系架构的实时目标检测方法,其特征在于,包括以下步骤:
1)将寒武纪CNStream数据流处理SDK的环境依赖移植至RISC-V体系架构中;
2)将寒武纪CNStream数据流处理SDK所需的CNToolkit及固件移植至RISC-V体系架构中;
3)将寒武纪CNStream数据流处理SDK移植至RISC-V体系架构中;
4)加载寒武纪离线模型文件yolov3.cambricon;
5)初始化嵌入式设备Sifive Unmatched开发板和寒武纪边缘端人工智能加速卡MLU220M.2;
6)通过IP摄像机采集源数据,借助RTSP推流至寒武纪CNStream数据流处理SDK中;
7)使用寒武纪CNStream数据流处理SDK对IP摄像机采集的源数据进行处理,实现目标检测功能;
8)目标检测结果通过RTSP推流至VLC媒体播放器进行展示。
2.如权利要求1所述的方法,其特征在于,步骤1)中所述环境依赖包括:计算机视觉库OpenCV、命令行参数处理库gflags、Google日志库glog、字体格式库freetype6、中文字库ttf-wqy-zenhei、编译工具cmake、多媒体库sdl2、套接字层密码库openssl、硬件使用的高性能库Librdkafka和流媒体传输协议库live555;所述环境依赖通过交叉编译移植至RISC-V体系架构中。
3.如权利要求1所述的方法,其特征在于,步骤2)中所述CNToolKit包括:寒武纪硬件编解码库CNCodec、寒武纪设备接口库CNDev、寒武纪驱动接口库CNDrv和寒武纪运行时库CNRT;所述CNToolkit及固件通过交叉编译移植至RISC-V体系架构中。
4.如权利要求1所述的方法,其特征在于,步骤3)中所述寒武纪CNStream数据流处理SDK通过交叉编译移植至RISC-V体系架构中。
5.如权利要求1所述的方法,其特征在于,步骤4)中在加载寒武纪离线模型文件时,将yolov3模型的caffe格式转换为供寒武纪CNStream数据流处理SDK使用的Cambricon格式;转换的步骤包括:
安装cambricon_caffe docker;
将yolov3.cfg和yolov3.weights转换成yolov3.prototxt和yolov3.caffemodel;
按需修改yolov3.prototxt;
使用generate_quantized_pt对yolov3.prototxt和yolov3.caffemodel进行量化;
使用离线转换工具caffe genoff对量化后的yolov3模型进行处理,生成yolov3.cambricon离线模型文件。
6.如权利要求1所述的方法,其特征在于,步骤5)中初始化嵌入式设备SifiveUnmatched开发板的步骤包括:
加载引导程序BootLoader;
加载linux内核;
挂载根文件系统rootfs;
创建init进程;
进入RISC-V体系架构的终端;
初始化寒武纪边缘端人工智能加速卡MLU 220M.2的步骤包括:
进入RISC-V体系架构的终端,找到MLU 220M.2驱动所在的路径;
执行source命令使MLU 220M.2相关依赖库在RISC-V体系架构中生效。
7.如权利要求1所述的方法,其特征在于,步骤6)中所述IP摄像机与带有寒武纪边缘端人工智能加速卡MLU 220M.2的Sifive Unmatched开发板处在同一网段。
8.如权利要求1所述的方法,其特征在于,步骤7)中使用寒武纪CNStream数据流处理SDK实现目标检测的功能包括:
使用寒武纪CNStream中的内置模块:DataSource模块、Inferencer模块、OSD模块和RTSP Sink模块,并写入所述内置模块的参数配置,运用pipeline流水线模式将所述内置模块串联起来,构建json文件;
将IP摄像机采集到的数据源保存成files.list_video的文件所在的路径,写入shell脚本中的data_path参数中;
将上述构建的josn文件所在的路径写入shell脚本中的config_fname参数中;
将yolov3.cambricon模型文件所在的路径写入shell脚本中的MODEL_PATH参数中;
启动shell脚本,实现寒武纪CNStream数据流处理SDK的目标检测的功能。
9.如权利要求1所述的方法,其特征在于,步骤8)中所述VLC媒体播放器安装在一台具有windows操作系统的电脑中,该电脑与所述IP摄像机和带有寒武纪边缘端人工智能加速卡MLU 220M.2的Sifive Unmatched开发板处在同一网段。
10.一种面向RISC-V体系架构的实时目标检测系统,基于权利要求1-9任一项所述的方法实现,其特征在于,包括:RISC-V体系架构、IP摄像机和VLC媒体播放器;该RISC-V体系架构通过所述方法的步骤1)至5)构建得到,并具备所述方法的步骤7)的数据处理和目标检测功能;该IP摄像机用于采集源数据,并借助RTSP推流至RISC-V体系架构的寒武纪CNStream数据流处理SDK中;该VLC媒体播放器用于展示从RISC-V体系架构通过RTSP推流来的目标检测结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310197228.3A CN116434040A (zh) | 2023-03-03 | 2023-03-03 | 一种面向risc-v体系架构的实时目标检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310197228.3A CN116434040A (zh) | 2023-03-03 | 2023-03-03 | 一种面向risc-v体系架构的实时目标检测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116434040A true CN116434040A (zh) | 2023-07-14 |
Family
ID=87078656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310197228.3A Pending CN116434040A (zh) | 2023-03-03 | 2023-03-03 | 一种面向risc-v体系架构的实时目标检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116434040A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116740507A (zh) * | 2023-08-02 | 2023-09-12 | 中科星图测控技术股份有限公司 | 一种基于arm架构的空间目标检测模型构建方法 |
-
2023
- 2023-03-03 CN CN202310197228.3A patent/CN116434040A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116740507A (zh) * | 2023-08-02 | 2023-09-12 | 中科星图测控技术股份有限公司 | 一种基于arm架构的空间目标检测模型构建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11562213B2 (en) | Methods and arrangements to manage memory in cascaded neural networks | |
US11099918B2 (en) | Accelerating algorithms and applications on FPGAs | |
WO2017166447A1 (zh) | 内核模块加载方法和装置 | |
CN103942078A (zh) | 一种加载驱动程序的方法及嵌入式设备 | |
US11435985B2 (en) | Electronic device and operation method thereof | |
CN109656844B (zh) | 一种AT24xx EEPROM驱动方法和装置 | |
US20210158131A1 (en) | Hierarchical partitioning of operators | |
CN114721719B (zh) | 一种在集群中容器化部署异构应用的方法和系统 | |
US11175919B1 (en) | Synchronization of concurrent computation engines | |
CN116434040A (zh) | 一种面向risc-v体系架构的实时目标检测方法及系统 | |
CN111124713A (zh) | 设备系统函数调用方法、装置、终端设备和存储介质 | |
CN115291946A (zh) | 鸿蒙系统移植方法、装置、电子设备及可读介质 | |
US11467946B1 (en) | Breakpoints in neural network accelerator | |
CN111767059B (zh) | 深度学习模型的部署方法、装置、电子设备和存储介质 | |
KR102315102B1 (ko) | 가상 머신을 부팅하기 위한 방법, 장치, 기기 및 매체 | |
US10922146B1 (en) | Synchronization of concurrent computation engines | |
KR20220016704A (ko) | 어플리케이션 설치 방법 및 이를 지원하는 전자 장치 | |
CN116756067A (zh) | 基于鸿蒙分布式SoftBus的AI-EC嵌入式系统及其构建、部署方法 | |
CN114564241B (zh) | 硬件设备的访问方法、装置、计算机设备和存储介质 | |
US11748108B2 (en) | Instruction executing method and apparatus, electronic device, and computer-readable storage medium | |
CN108108171B (zh) | 一种手机远程单片机编译运行系统 | |
CN115237458A (zh) | 一种调用推理硬件执行ai应用的方法及相关产品 | |
CN110968566A (zh) | 基于迁移工具的国产化应用系统迁移方法 | |
CN116661951B (zh) | 镜像文件处理方法、装置、电子设备及存储介质 | |
Kushsairy et al. | Embedded vision: Enhancing embedded platform for face detection system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |