OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6554|回复: 0

RV1126 适配 Debian10(搭建人脸识别云服务器)

[复制链接]

62

主题

78

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
443
金钱
443
注册时间
2017-9-2
在线时间
30 小时
发表于 2021-7-12 10:58:11 | 显示全部楼层 |阅读模式
前言
   
    主要借助人脸识别云服务器的应用来介绍 RV1126 的 Debian10 系统和 Rockx。
    Debian10:Rockchip 官方只为 RV1126 适配了 Buildroot 系统,虽然 Buildroot 系统开销非常小但是对于应用开发部署并不是那么友好。所以 Firefly 为 RV1126 适配了 Debian10 ,Debian10 最大的优势就是拥有丰富的 deb 资源,通过 apt 可以快速搭建好你的开发环境,同时也可以方便搞深度学习的小伙伴使用 Python 进行开发。
    Rockx:Rockx 是 Rockchip 发布的一套供用户快速构建 AI 应用的 API 接口。Rockx 可以让用户暂时不需要理会 AI 模型生成,快速上手 Rockchip npu 平台。目前 Rockx 支持 人脸识别、车牌识别、手指和人体关键点识别、目标检测等等模型。

应用介绍

    大家可能使用过百度、阿里等人脸识别 API,基本原理就是通过硬件搭建云服务器并且封装出一套 http 接口提供给客户调用自己的硬件进行云计算。本案例将在 Core-1126-JD4 上搭建一套类似的服务完成云人脸识别。

环境搭建
  
    硬件:Core-1126-JD4(配套底板)
    系统:Debian10

1. 升级 Debian10
    设备出厂是默认自带 Buildroot 系统的,如果你没有升级 Debian10 请参考 Wiki 升级 Debian10 系统。以下是链接
https://wiki.t-firefly.com/zh_CN/CORE-1126-JD4/Debian10.html

2. 拉取代码
  1. sudo apt update
  2. sudo apt install git
  3. git clone https://gitee.com/Blg-daijh/pywebservice.git -b rv1126_rockx
复制代码
3. 环境搭建
  1. sudo apt update
  2. sudo apt install libdbus-1-dev
  3. sudo apt install  libglib2.0-dev
  4. sudo apt install libdbus-glib-1-dev
  5. sudo apt install python3-pip
  6. pip3 install flask
复制代码
4. 编译识别程序
  1. make
复制代码

应用运行
1. 运行服务端程序
  1. # 下面命令在 RV1126 运行================
  2. sudo chmod 777 /dev/galcore
  3. # 代码中 rockx 目录的绝对路径
  4. export ROCKX_DATA_PATH=/home/firefly/pywebservice/rockx/
  5. ./client &
  6. # 运行前需要自己修改 Pywebservice.py host ip 设置为自己网络 ip,可以通过 ifconfig 查看
  7. python3 Pywebservice.py
复制代码

2. 客户端运行程序
  1. # 下面命令在与 RV1126 处于同一局域网的设备运行(电脑或者其他 ARM 设备)
  2. # 运行前根据自己的 RV1126 ip 修改 Pyupload.py
  3. python3 Pyupload.py
复制代码
3. 效果
    客户端会向云上传当前目录的 test.jpg,服务器会计算出人脸并且标记重新编码成 jpg 格式图片返回给用户,输出结果保存为 test_save.jpg

FAQ

1. 只有 2.0 T 算力,不适合做云服务器吧?
    的确在单块 Core-1126-JD4,搭建服务并没有什么意义,但是 Core-1126-JD4 适配Cluster Server R1服务器,单个服务器最高可以接入 10 块 Core-1126-JD4。
    可进入维基教程了解更多内容

    10 块还是不够用?Core-1126-JD 还适配了Cluster Server R2 最多可以接入 72 块 Core-1126-JD4,144T 算力,同时每块 RV1126 支持同时硬件编解码 4 路 1080p 码流,72 块理论上可以处理 288 路 1080p 视频流 。
    可进入维基教程了解更多内容

2. 接入如此多 Soc 网络带宽够吗?
    Cluster Server R2已经适配了万兆网络,有充足的带宽

3. 软件结构?
    为了让大家了解 Debian10 在软件部署在的快捷方便性,应用使用了 Python flask 模块搭建 Webservice ,npu 识别方面也是使用了高度封装的 Rockx 让大家不需要理会模型开发,另外还使用了 Dbus 进行 Python 和 C 进程之间的通信。

4. Rockx 有相关介绍吗?
    其实 RV1126 官方源码 SDK 中就包含了 Rockx 仓库,里面就有丰富的示例和文档说明,这是 SDK 中的路径,sdk_path/external/rockx





正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-6-9 03:58

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表