YOLOv5_NCNN
YOLOv5_NCNN copied to clipboard
是否使用手机GPU加速?
您好:该项目中是否支持移动端GPU加速功能? 期待您的解答!谢谢!
手机支持的话,代码中打开就行。
您好,我手机支持GPU,代码中哪部分打开?尝试打开这句,发现没有检测目标。PoseNet->opt.use_vulkan_compute = ncnn::get_gpu_count() > 0; // gpu
在对应的 .cpp 文件中增加,需要在 load_param()与load_model()之前。参考Yolact.cpp,其它模型一样。
尝试解开PersonNet->opt.use_vulkan_compute = ncnn::get_gpu_count() > 0;注释了,发现检测不到目标,注释掉才可以检测到物体 我用的是SimplePose.cpp SimplePose::SimplePose(AAssetManager *mgr) {
PersonNet = new ncnn::Net();
// opt 需要在加载前设置
PersonNet->opt.use_vulkan_compute = ncnn::get_gpu_count() > 0; // gpu
PersonNet->opt.use_fp16_arithmetic = true; // fp16运算加速
PersonNet->load_param(mgr, "person_detector.param");
PersonNet->load_model(mgr, "person_detector.bin");
// LOGD("person_detector");
PoseNet = new ncnn::Net();
PoseNet->opt.use_vulkan_compute = ncnn::get_gpu_count() > 0; // gpu
PoseNet->opt.use_fp16_arithmetic = true; // fp16运算加速
PoseNet->load_param(mgr, "Ultralight-Nano-SimplePose.param");
PoseNet->load_model(mgr, "Ultralight-Nano-SimplePose.bin");
这个就不懂了,,我也刚开始搞ncnn,具体为什么暂时不知道。试试其它手机?
异常都一样,检测不到目标的,注释才可以正常。请教下作者,我也尝试移植yolo5s,我得到的bin,和Param一个是17M,一个是8kb,不知道为何跟你的大小不一样,进行测试,发现检测不到目标,也是遵循pt-->onnx-->ncnn异常是 find_blob_index_by_name 394 failed find_blob_index_by_name 375 failed find_blob_index_by_name output failed
我导过v3的,yolov5我还没导过,建议查看 https://github.com/sunnyden/YOLOV5_NCNN_Android/issues/3
@WZTENG 您好,作者,按你说的步骤,在对应的 .cpp 文件中增加 YolactNet->opt.use_vulkan_compute = ncnn::get_gpu_count() > 0; // gpu,需要在 load_param()与load_model()之前。 参考Yolact.cpp,其它模型一样。全部demo试过了,都异常的,直接卡死预览现象,不响应,导致程序ANR的。
什么手机
小米5 Android 系统-8.0 高通骁龙820 集成GPU Adreno 530
我手机也不支持gpu,打开后加载模型好几秒,,关掉就正常了。估计要旗舰手机才支持吧。
@WZTENG 我用腾讯的一个apk,检测手机是否支持GPU,显示true 支持。就按照你说的,代码解开测试。加载模型等好久,然后,出来画面直接闪退。
我手机api接口也说支持,,这个建议去ncnn那里提问。