完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一、简介
Rock-X SDK 是基于 RK3399Pro/RK180X 等平台的一套 AI 组件库。开发者通过 Rock-X SDK 提供的 API 接口能够快速构建 AI 应用。 Rock-X SDK 当前支持 Python/C 编程语言, 支持运行于 RK3399Pro Android/Linux 平台、RK180X Linux 平台以及 PC Linux/MacOS/Windows(需要接 RK1808 计算棒)。 本文测试基于RV1109或RV1126的buildroot系统中,运行rock-x sdk。 SDK 提供的功能如下: Rock-X SDK 文件说明 rv1126_rv1109/linux_sdk_rockchip/external/rockx$ tree -L 3 . ├── auth │ ├── Android │ │ ├── arm64-v8a │ │ └── armeabi-v7a │ ├── Linux │ │ ├── aarch64 │ │ ├── armhf │ │ └── x86_64 │ ├── README.md │ └── Windows │ └── RKauth_tool_v1.02.zip ├── ChangeLog.txt ├── CMakeLists.txt ├── demo │ ├── command_line_demo # Rock-X SDK C 示例程序 │ │ ├── build │ │ ├── build-android-rk3399pro-v7a.sh │ │ ├── build-android-rk3399pro-v8a.sh │ │ ├── build-linux-rk1806.sh │ │ ├── build-linux-rk1808.sh │ │ ├── build-linux-rk3399pro-on-device.sh │ │ ├── build-linux-rk3399pro.sh │ │ ├── build-linux-rv1109.sh │ │ ├── build-linux-x86.sh │ │ ├── cmake │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── rockx_body_mask_demo │ │ ├── rockx_carplate_demo │ │ ├── rockx_face_attribute_demo │ │ ├── rockx_face_detection_demo │ │ ├── rockx_face_landmark_demo │ │ ├── rockx_face_masks_detection_demo │ │ ├── rockx_face_recognition_demo │ │ ├── rockx_head_detection_demo │ │ ├── rockx_object_detection_demo │ │ ├── rockx_object_track_demo │ │ ├── rockx_person_detection_demo │ │ ├── rockx_pose_body_demo │ │ └── rockx_pose_finger_demo │ └── rk3399pro_android_demo │ ├── rockx-android-demo-carplate_recognition.zip │ ├── rockx-android-demo-face_attribute.zip │ ├── rockx-android-demo-face_landmark.zip │ ├── rockx-android-demo-object_detection.zip │ └── rockx-android-demo-pose_body.zip ├── doc │ ├── Rockchip_Developer_Guide_RockX_SDK_CN.pdf │ ├── Rockchip_Developer_Guide_RockX_SDK_EN.pdf │ └── rockx_api_doc │ └── html ├── LICENSE ├── python │ ├── RockX-1.2.0-py3-none-any.whl │ └── test │ ├── camera │ ├── image │ └── __init__.py ├── sdk │ ├── rockx-data │ │ ├── carplate_align.data │ │ ├── carplate_detection.data │ │ ├── carplate_recognition.data │ │ ├── face_attribute.data │ │ ├── face_detection.data │ │ ├── face_landmark5.data │ │ ├── face_landmarks68.data │ │ ├── face_liveness_2d.data │ │ ├── face_recognition.data │ │ ├── head_detection.data │ │ ├── object_detection.data │ │ ├── pose_body.data │ │ ├── pose_finger.data │ │ └── pose_hand.data │ ├── rockx-data-rv1109 # 针对rv1109的 rock-x ai模型 │ │ ├── body_detection.data │ │ ├── body_mask.data │ │ ├── carplate_align.data │ │ ├── carplate_detection.data │ │ ├── carplate_recognition.data │ │ ├── face_attribute.data │ │ ├── face_detection_v2.data │ │ ├── face_detection_v3.data │ │ ├── face_detection_v3_fast.data │ │ ├── face_detection_v3_large.data │ │ ├── face_landmark5.data │ │ ├── face_landmarks68.data │ │ ├── face_mask_classify.data │ │ ├── face_masks_detection.data │ │ ├── face_recognition.data │ │ ├── head_detection.data │ │ ├── object_detection.data │ │ ├── person_detection_v2.data │ │ ├── person_detection_v3.data │ │ ├── pose_body.data │ │ ├── pose_body_v2.data │ │ ├── pose_finger.data │ │ └── pose_hand.data │ ├── rockx-rk1806-Linux │ │ ├── include │ │ ├── lib │ │ ├── lib64 │ │ └── RockXConfig.cmake │ ├── rockx-rk1808-Linux │ │ ├── include │ │ ├── lib64 │ │ └── RockXConfig.cmake │ ├── rockx-rk3399pro-Android │ │ ├── arm64-v8a │ │ ├── armeabi-v7a │ │ ├── include │ │ └── RockXConfig.cmake │ ├── rockx-rk3399pro-Linux │ │ ├── include │ │ ├── lib64 │ │ └── RockXConfig.cmake │ ├── rockx-rv1109-Linux # 针对rv1109的 rock-x 动态链接库和头文件 │ │ ├── include │ │ ├── lib │ │ └── RockXConfig.cmake │ └── rockx-x86-64-Linux │ ├── include │ ├── lib64 │ └── RockXConfig.cmake └── VERSION 57 directories, 68 files 二、编译Rock-X SDK 使用RK_SDK_rv1126_rv1109_linux SDK 1.下载编译CMake rockx sdk的编译需要基于 3.10 以上版本的cmake, 如果系统的cmake版本比较旧,则需要更新cmake。 $ sudo apt-get install build-essential $ cd ~/Download/ $ wget $ tar -zxvf cmake-3.11.3.tar.gz $ cd cmake-3.11.3 $ ./configure $ make # $ sudo make install $ ~/Downloads/cmake-3.11.3/bin/cmake -version cmake version 3.11.3 CMake suite maintained and supported by Kitware (kitware.com/cmake). 为了不应用系统已安装的cmake,可以不使用install。 2.修改编译环境 修改 external/rockx/demo/command_line_demo/build-linux-rv1109.sh 修改交叉编译工具链路径 修改cmake路径 手动编译 cd external/rockx/demo/command_line_demo git diff build-linux-rv1109.sh diff --git a/demo/command_line_demo/build-linux-rv1109.sh b/demo/command_line_demo/build-linux-rv1109.sh index fa569de..5a34df1 100755 --- a/demo/command_line_demo/build-linux-rv1109.sh +++ b/demo/command_line_demo/build-linux-rv1109.sh @@ -1,6 +1,7 @@ #!/bin/bash -GCC_COMPILER_PATH=~/opts/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-linux-gnueabihf +GCC_COMPILER_PATH=/home/ubuntu/disk1/rv1126_rv1109/linux_sdk_rockchip/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-linux-gnueabihf #BUILD_TYPE=Release BUILD_TYPE=Debug @@ -13,14 +14,16 @@ if [[ ! -d "${BUILD_DIR}" ]]; then mkdir -p ${BUILD_DIR} fi +CMAKE_DIR=/home/ubuntu/Downloads/cmake-3.11.3/bin + cd ${BUILD_DIR} -cmake ../.. +${CMAKE_DIR}/cmake ../.. -DTARGET_SOC=rv1109 -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_C_COMPILER=${GCC_COMPILER_PATH}-gcc -DCMAKE_CXX_COMPILER=${GCC_COMPILER_PATH}-g++ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=${ROOT_PWD}/install/rockx_rv1109_linux -make -j4 -make install +#make -j4 +#make install cd - 3.配置编译rockx $ cd external/rockx/demo/command_line_demo # 配置编译环境 $ bash build-linux-rv1109.sh rockx_demo -- Configuring done -- Generating done -- Build files have been written to: /home/ubuntu/disk1/rv1126_rv1109/linux_sdk_rockchip/external/rockx/demo/command_line_demo/build/build_rv1109_linux /home/ubuntu/disk1/rv1126_rv1109/linux_sdk_rockchip/external/rockx/demo/command_line_demo # 编译 $ cd ./build/build_rv1109_linux/ $ make [ 6%] Built target rockx_face_detection [ 13%] Built target rockx_face_landmark [ 20%] Built target rockx_object_detection [ 26%] Built target rockx_pose_body [ 33%] Built target rockx_pose_body_async [ 40%] Built target rockx_pose_finger [ 46%] Built target rockx_face_recognition [ 53%] Built target rockx_face_attribute [ 60%] Built target rockx_head_detection [ 66%] Built target rockx_carplate [ 73%] Built target rockx_object_track [ 80%] Built target rockx_face_masks_detection [ 86%] Built target rockx_body_mask [ 93%] Built target rockx_person_detection [100%] Built target rockx_person_detection_async 三、在buildroot系统中运行rockx 1.复制编译结果和依赖文件到本地 将主机的编译结果和动态库等文件拷贝到RV1109或RV1126设备中 $ cd external/rockx/ $ scp -r sdk/ root@xxx:/userdata/rockx $ scp -r demo/command_line_demo/ root@xxx:/userdata/rockx 2.加入动态链接库新搜索路径 # RV1109设备上 cd /userdata/rockx # 将动态库和头文件放到与AI模型同一路径下 cp sdk/rockx-rv1109-Linux/lib/* sdk/rockx-data-rv1109/ cp sdk/rockx-rv1109-Linux/include/ sdk/rockx-data-rv1109/ # 修改环境变量 vi /etc/profile # 加入 ROCKX_DATA_PATH=/userdata/rockx/sdk/rockx-data-rv1109 export LD_LIBRARY_PATH=${ROCKX_DATA_PATH}:$LD_LIBRARY_PATH source /etc/profile 也可以直接把动态库和AI模型复制到系统路径 cp sdk/rockx-rv1109-Linux/lib/* /usr/lib/ cp sdk/rockx-rv1109-Linux/include/ /usr/lib/ cp sdk/rockx-data-rv1109/ /usr/lib/ 3.运行rockx demo 可执行文件 $ cd /userdata/rockx/command_line_demo/build/build_rv1109_linux/rockx_carplate_demo # 运行车牌识别程序 $ ./rockx_carplate ../../../rockx_carplate_demo/carplate_det_test1.jpg (56 111 190 151) 0.986012 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1644 浏览 1 评论
synopsys 的design ware:DW_fpv_div,浮点数除法器,默认32位下,想提升覆盖率(TMAX),如果用功能case去提升覆盖率呢?
1929 浏览 1 评论
RK3588 GStreamer调试四路鱼眼摄像头四宫格显示报错
4894 浏览 1 评论
【飞凌嵌入式OK3576-C开发板体验】RKNN神经网络-YOLO图像识别
254 浏览 0 评论
【飞凌嵌入式OK3576-C开发板体验】SSH远程登录网络配置及CAN通讯
1336 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-13 06:20 , Processed in 0.536976 second(s), Total 73, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号