Libnn_yolo_v3.so生成失败,请官方人员帮忙解答。

root@zjl-RESCUER-R720-15IKBN:/home/zjl/文档/aml_npu_app/detect_library/model_code/detect_yolo_v3# ./build_vx.sh /home/zjl/文档/aml_npu_sdk_6.4.3/linux_sdk/linux_sdk
/home/zjl/文档/aml_npu_sdk_6.4.3/linux_sdk/linux_sdk/common.target:85: warning: overriding recipe for target ‘bin_r/libnn_yolo_v3.so’
/home/zjl/文档/aml_npu_sdk_6.4.3/linux_sdk/linux_sdk/common.target:64: warning: ignoring old recipe for target ‘bin_r/libnn_yolo_v3.so’
LINK libnn_yolo_v3.so
bin_r/yolo_v3.o:在函数‘vnn_GetPrePorcessMap’中:
yolo_v3.c:(.text+0x0): vnn_GetPrePorcessMap'被多次定义 bin_r/vnn_pre_process.o:vnn_pre_process.c:(.text+0x1630):第一次在此定义 bin_r/yolo_v3.o:在函数‘vnn_GetPrePorcessMapCount’中: yolo_v3.c:(.text+0x10): vnn_GetPrePorcessMapCount’被多次定义
bin_r/vnn_pre_process.o:vnn_pre_process.c:(.text+0x1640):第一次在此定义
collect2: error: ld returned 1 exit status
/home/zjl/文档/aml_npu_sdk_6.4.3/linux_sdk/linux_sdk/common.target:85: recipe for target ‘bin_r/libnn_yolo_v3.so’ failed
make: *** [bin_r/libnn_yolo_v3.so] Error 1

按照yolov3转换的教程做,到使用build_vx.sh脚本就能编译出yolov3的库时,生成libnn_yolo_v3.so失败,这是什么原因呀?

这些步骤均是在PC上进行的,sdk中转换没问题,在aml_npu_app中编译时就报了这个问题,不知道怎么解决。

@JLZhangg 你是不是把vnn_pre_process.c和vnn_post_process.c也复制过来了,只需要复制头文件,我们不需要用里面的函数.

请参照我们的文档

我按照这个文档操作成功了,但是在运行demo的时候又出现了问题,你能帮我看看怎么解决吗?

我的系统是通过
khadas@Khadas:~$ sudo apt update
khadas@Khadas:~$ sudo apt full-upgrade
khadas@Khadas:~$ sync
khadas@Khadas:~$ sudo reboot令更新的最新系统,sdk下载的时目前最新版本,sdk6.4.3。

@JLZhangg 看起来是创建模型的时候失败了,你的模型是你自己训练的模型么

是我自己训练的,yolov3的模型,在自己电脑上运行没问题。

@JLZhangg 你模型里面的class是多少,你只是用了自己的训练集么,cfg有修改么

我模型里class是1,训练是只用了自己的训练集,cfg里面只改了参数没有改网络,是有什么地方操作不对吗? 另外问一下,如果把yolov3的网络结构修改后,还能在npu中运行吗?

@JLZhangg 那你app仓库的参数也同步修改了么?

如果你修改的tensor是只是转换的就可以跑起来,但是后处理就要你自己实现了,我们的demo不一定适用

我app仓库中的yolov3_process. c也同步修改了。有可能是其他原因吗?

你们用来转换的yolov3网络是官网版本的吗,如果有修改的话可以发我一份看看吗?

@JLZhangg 是官方的模型,一模一样的.weights都是直接用的官方的基于coco数据集的