BM1684X搭建sophon sail环境

BM1684X搭建sophon sail环境 warren@伟 2023-09-01 15:41:35 547

首先安装编译好sophon-sail—————————————————-
安装sophon_sail(即可在板端使用python进行bmodel模型推理)———————————————————
参考—>https://doc.sophgo.com/sdk-docs/v23.03.01/docs_latest_release/docs/sophon-sail/docs/zh/html/1_build.html
1:首先解压sophon-sail_3.4.0.tar.gz
2:进入到解压出来的sophon-sail
3:创建一个build目录并进入
mkdir build && cd build
4:执行以下命令
cmake -DBUILD_TYPE=soc \
-DCMAKE_TOOLCHAIN_FILE=../cmake/BM168x_SOC/ToolChain_aarch64_linux.cmake \
-DPYTHON_EXECUTABLE=python_3.8.2/bin/python3 \
-DCUSTOM_PY_LIBDIR=python_3.8.2/lib \
-DLIBSOPHON_BASIC_PATH=libsophon_0.4.6_aarch64/opt/sophon/libsophon-0.4.6 \
-DFFMPEG_BASIC_PATH=sophon-mw-soc_0.6.0_aarch64/opt/sophon/sophon-ffmpeg_0.6.0 \
-DOPENCV_BASIC_PATH=sophon-mw-soc_0.6.0_aarch64/opt/sophon/sophon-opencv_0.6.0 ..
这里需要注意一下红色的路径需要根据自身情况进行更改,这里的python包建议直接下载官方编译好的http://219.142.246.77:65000/sharing/8MlSKnV8x(python版本需与板端一致,可以使用python —version进行查看)

5:执行make即可


6:make install


7:此时会在build同级目录下生成一个build_soc文件夹,将该目录下的sophon-sail文件推至板端的/opt/sophon目录下
scp -r sophon-sail/ linaro@10.12.13.105:/opt/sophon

8:将sail进行打包,
cd sophon-sail_20230327_085400/sophon-sail/python/soc
chmod a+x sophon_soc_whl.sh
./sophon_soc_whl.sh
可能会遇到如下问题,sudo pip3 install wheel即可


9:将生成的sophon_arm-3.4.0-py3-none-any.whl拷贝到目标SOC上,然后在板端执行如下安装命令
pip3 install sophon_arm-3.4.0-py3-none-any.whl —force-reinstall
10:检测是否安装成功,不报错即成功

至此sophon-sail安装成功

1:在将之前配置的soc-sdk拷贝一份到sdk根目录,将交叉编译好的sail中的build_soc拷贝至soc-sdk文件夹内;
cp -rf build_soc/sophon-sail/inlcude soc-sdk
cp -rf build_soc/sophon-sail/lib soc-sdk

3:安装交叉编译器
sudo apt-get install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
4:新建文件夹MNIST,目录结构如下

CMakeFile.txt

set(CMAKE_C_COMPILER aarch64-linux-gnu-gcc)
set(CMAKE_ASM_COMPILER aarch64-linux-gnu-gcc)
set(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++)

include_directories("/home/wzw/Bitmain/Release_230301-public/soc-sdk/include")
include_directories("/home/wzw/Bitmain/Release_230301-public/soc-sdk/include/sail")
# 添加交叉编译需要使用的头文件目录

link_directories("//home/wzw/Bitmain/Release_230301-public/soc-sdk/lib")
# 添加交叉编译需要使用的动态库目录

set(SOURCE_FILES main.cpp)
set(TARGET_NAME MNIST)
add_executable(${TARGET_NAME} ${SOURCE_FILES})
target_link_libraries(${TARGET_NAME} sail)
# sail为需要链接的库

main.cpp

#define USE_FFMPEG 1
#define USE_OPENCV 1
#define USE_BMCV 1
#include <stdio.h>
#include <sail/cvwrapper.h>
#include <iostream>
#include <string>
using namespace std;
int main()
{
    int device_id = 0;
    std::string video_path = "test.avi";
    sail::Decoder decoder(video_path,true,device_id);
    if(!decoder.is_opened()){
        printf("Video[%s] read failed!\n",video_path.c_str());
        exit(1) ;
    }
    sail::Handle handle(device_id);
    sail::Bmcv bmcv(handle);
    while(true){
        sail::BMImage ost_image = decoder.read(handle);
        bmcv.imwrite("test.jpg", ost_image);
        break;
    }
    return 0;
}

5:编译cmake CMakeFile.txt


make

6:拷贝至板端
scp MNIST linaro@10.12.13.112:/home/wzw
./MNIST

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包 6 5 评论 打赏
评论
1个
内容存在敏感词
手气红包
  • david 2023-09-04 19:12:53
    回复
    1684非常适合边缘端。就是价格有点贵
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
warren@伟
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区