IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> ncnn yolov5.cpp切换yolov5n6模型(三) -> 正文阅读

[人工智能]ncnn yolov5.cpp切换yolov5n6模型(三)

strip64问题

前面分析到丢掉stride 64参数,会丢失小目标,那实际是不是这样子呢,我们修改yolov5.cpp,参考strip8,16,32的写法,增加strip64代码

    // stride 64
    {
        ncnn::Mat out;
        ex.extract("484", out);
        ncnn::Mat anchors(6);
        anchors[0] = 436;
        anchors[1] = 615;
        anchors[2] = 739;
        anchors[3] = 380;
        anchors[4] = 925;
        anchors[5] = 792;

        std::vector<Object> objects64;
        generate_proposals(anchors, 64, in_pad, out, prob_threshold, objects64);

        proposals.insert(proposals.end(), objects64.begin(), objects64.end());
    }

左:无64参数运行结果--------------右:有64参数运行结果
可以看到检测结果并没有什么差异,所以64参数是没生效吗?

strip64是否生效

我们通过屏蔽代码,分别得到strip 8/16/32/64运行后得到的框,注意要把nms_threshold降低,防止过滤掉低分数框。


左:only strip8参数运行结果--------------右:only strip16参数运行结果

左:only strip32参数运行结果--------------右:only strip64参数运行结果
这就很奇怪了,strip越大,反而检测的目标越大。按照之前anchor理解,64应该识别的目标更小才对。 难道代码的参数与模型的层没对应上?对错层了?

当前参数对应

目前对应是这样的
strip 8------output
strip 16------456
strip 32------470
strip 64------484

yolov5n6.param

原demo参数对应

原demo用的yolov5s_6.0对应是这样的

strip 8------output
strip 16------376
strip 32------401

yolov5s_6.0.param

它的5s6只有3层输出,很奇怪。

yolo官网5s6参数

我去yolo github下载yolov5s6.pt,转成onnx,转成.param

yolov5s6_github.param

yolo官网的5s6也是4层输出。

yolo官网5s参数

我好奇,把官网的5s模型也转了出来

yolov5s_github.param
这个跟ncnn用的yolov5s_6.0模型不是一样的吗。

为了再次确认,我把两个模型丢到了https://netron.app/,对比发现一毛一样,那为什么ncnn要把这个模型命名为5S_6.0呢?

在这里插入图片描述

未完待续

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-10 11:54:11  更:2022-05-10 11:56:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:42:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码