VIM Android NPU JNI使用,编译libnn_yolo_v3.so时报错:
jni/include/vnn_yolov3.h:24:1: error:
‘assert_failed_CASE_VERSION_is_higher_than_OVXLIB_VERSION_25’ declared as
an array with a negative size
_version_assert(VNN_RUNTIME_VERSION <= VSI_NN_VERSION
@purplepetal 执行下面命令并贴出结果:
cat khadas_android_npu_library/model_code/detect_yolo_v3/jni/include/vnn_yolov3.h
cat ~/.bashrc
你的代码跟我的代码不同,你自己跟踪下吧。我的代码如下图所示:
khadas_android_npu_library\model_code\detect_yolo_v3\jni\include\vnn_yolov3.h
#define VNN_VERSION_MAJOR 1
#define VNN_VERSION_MINOR 1
#define VNN_VERSION_PATCH 26
#define VNN_RUNTIME_VERSION \
(VNN_VERSION_MAJOR * 10000 + VNN_VERSION_MINOR * 100 + VNN_VERSION_PATCH)
khadas_android_npu_library\model_code\detect_yolo_v3\jni\applib-ovxinc-include\vsi_nn_version.h
#define VSI_NN_VERSION_MAJOR 1
#define VSI_NN_VERSION_MINOR 1
#define VSI_NN_VERSION_PATCH 27
#define VSI_NN_VERSION \
(VSI_NN_VERSION_MAJOR * 10000 + VSI_NN_VERSION_MINOR * 100 + VSI_NN_VERSION_PATCH)
@goenjoy
vnn_yolov3.h是完成模型导入量化操作后 生成case代码 时生成的,替换了khadas_android_npu_library原本的文件,VNN_VERSION_PATCH 原本26 生成的是30
而且对比了原本的文件和生成的文件,只有VNN_VERSION_PATCH不一样,(感觉不能随意改,否则这个替换操作没有意义了
vsi_nn_version.h是khadas_android_npu_library原本的文件,VSI_NN_VERSION_PATCH 27
这个VNN_RUNTIME_VERSION 如果大于 VSI_NN_VERSION,不能编译so库吗
还是说vsi_nn_version.h中的VSI_NN_VERSION_PATCH可以自己改? 不清楚这个VSI_NN_VERSION_PATCH是用来干什么了
我用的 darknet/yolov3.cfg at master · pjreddie/darknet · GitHub和
https://pjreddie.com/media/files/yolov3.weights 和https://github.com/pjreddie/darknet/blob/master/data/dog.jpg 来按照 零基础导入自己YOLOv3或YOLOv3-Tiny模型 文档yolov3部分操作的
我这个部署比较急,可以帮忙看看吗,或者是我生成的case代码是有问题的?(过程中一直没报错