当嵌入式遇上人工智能,用OK3399-C来做个AI“云监工”!

人工智能 (AI) 可以从实时视频流中检测出重要信息,从街道上收集可靠的实时数据并通过 AI 推理对其进行压缩,帮助智慧城市更轻松地管理资源,并改善生活质量、生产力和紧急响应速度。为实现出色的效率,视觉应用必须实时处理海量数据。

智慧城市视觉应用

OK3399-C开发板是飞凌2020年推出的首款人工智能系列产品。该平台基于瑞芯微RK3399设计,CPU内置Mali-T864GPU,使用大小核的CPU结构,由两个Cortex-A72+四个Cortex-A53组成,在满足用户处理器性能要求的同时,也提供了更加强劲的图形处理性能。

RK3399

无论是在工业自动化领域,还是前沿的人工智能、边缘计算领域,OK3399-C都能承担极大的工作量。

经CoreMark跑分

单A72核:

Coremark:11396

Coremark/MHz=11396/1800=6.33

双A72核:

Coremark:22610

Coremark/MHz=22610/3600=6.28

6核:

Coremark:39099

Coremark/MHz=39099/9200=4.25

......

通过以上数据可以看到,OK3399-C搭载的CPU RK3399单核性能达到6.33,多核性能也是能达到4.25。

那么这样一个“大心脏”当然还需要其他器官也要强劲,下面来一一介绍。

RK3399搭载Mali-T860GPU,支持OpenGLES1.1/2.0/3.0/3.1,OpenCL。支持AFBC(帧缓冲压缩),节省GPU的带宽,提升性能的同时降低功耗,更是为强大的GPU狠狠的助了一把力。视频显示部分支持4KV P9 and 4K 10bits H.265/H.264 视频解码,高达60fps。支持双VOP显示:分辨率分别支持4096x2160及2560x1600,显示支持双通道MIPI-DSI、eDP1.3、HDMI2.0支持4K60Hz、以及DP1.2多种接口。支持双路摄像头数据同时输入,双ISP像素处理能力高达13MPix/s。

RK3399开发板

枯燥的东西介绍了很多,那么这么强劲的CPU性能,如此高的运算速度,丰富的接口,以及1300万像素输入、4K视频输出,哪里才是它的用武之地呢?

必然是一个需要计算量大,实时性强的应用场景,最典型的就是目前最火热的AI人工智能了。

------

飞凌对于OK3399-C在AI领域的应用也是下了很深的功夫,系统集成了TensorFlow AI框架,支持ArmNN加速,并提供测试demo和方法。另外还有OpenCV、OpenCL、OpenGL的测试例程。

OpenCV 进行人脸检测

下面进入本文的重点:OK3399-C+RK1808计算棒运行智能识别程序。

流程大体如下,在OK3399-C平台上开发好的模型固化到计算棒上,然后部署到设备中,实现设备的人工智能计算。

RK3399-C+RK1808计算棒运行智能识别程序

按照OK3399-C平台Desktop系统+RK1808计算棒应用手册,对RK1808计算棒的网络进行配置之后,可以按照对应IP登录到计算棒上,设置其主动模式和被动模式。

对RK1808计算棒的网络进行配置

主动模式Mobilenet-ssd 测试

按照手册中的内容配置好环境之后,运行编译好的上位机程序:./ssd_demo

效果如下:

RK3399主动模式Mobilenet-ssd 测试效果

可以看到能进行物体的识别和种类的计算。

主动模式yolov3测试 

运行应用后的效果▼

RK3399主动模式yolov3测试运行效果

能识别鼠标、键盘、显示器、人等物体,并且识别速度很快。

另外,OK3399-C也能搭配1808的被动模式,其被动模式整体数据流图如下:

RK3399搭配1808的被动模式,其被动模式整体数据流图


先是由摄像头采集到数据流,后经OK3399-C处理传输给RK1808计算棒,计算棒处理后的结果推回给OK3399-C,再经显示器显示。

下面是RK1808被动模式的测试结果:

被动模式Mobilenet-ssd 测试 

RK1808被动模式的测试结果

可以正确识别显示器、水杯、键盘等物体,可以发现FPS要比被动模式高,说明此种模式运行更快。

被动模式Rock-X 测试 

提供了多个Rock-X测试例程:

Rock-Xcommand_line_demo 提供的例程

rockx_carplate_demo车牌识别

rockx_face_attribute_demo人脸属性识别(性别、年龄)

rockx_face_detection_demo人脸检测

rockx_face_landmark_demo人脸特征点定位

rockx_head_detection_demo人头检测

rockx_object_detection_demo物体检测

rockx_object_track_demo物体运动检测

rockx_pose_body_demo人体姿态检测

rockx_pose_finger_demo手掌节点姿态检测

rockx_face_liveness_demo活体检测rockx_face_recognition_demo人脸识别对比

活体检测与人脸识别对比

上图使用了rockx_face_landmark_demo,抓取了人脸特征的68个点。还有很多其他的测试应用,没有一一测试。

被动模式yolov3测试 

安装python、TensorFlow和RKNN-Toolkit 插件后运行yolov3测试demo:

 插件后运行yolov3测试demo

在能准确分辨物体的前提下其FPS能达到30。

经过以上测试,OK3399-C的计算能力,尤其搭载RK1808计算棒之后的运算能力可见一斑。实际上,这个平台还有很深的潜力可挖掘,就要靠以后研发和使用的工程师们共同努力了。

以上就是小编给大家分享的内容,希望能够帮到您。

进入飞凌嵌入式官网,了解关于OK3399-C开发板的更多信息