P2PNet-Soy原理梳理

前文总结了P2PNet源码以及P2PNet-Soy源码实现方法,相关链接如下:

人群计数P2PNet论文:[2107.12746] Rethinking Counting and Localization in Crowds:A Purely Point-Based Framework (arxiv.org)

p2p人群计数源码:GitHub - TencentYoutuResearch/CrowdCounting-P2PNet: The official codes for the ICCV2021 Oral presentation "Rethinking Counting and Localization in Crowds: A Purely Point-Based Framework"

p2p人群计数源码复现过程:

crowdcountingp2p代码复现_追忆苔上雪的博客-CSDN博客

crowdcountingp2p代码复现(续)_追忆苔上雪的博客-CSDN博客

 P2P大豆计数论文:https://spj.science.org/doi/10.34133/plantphenomics.0026

P2P大豆计数论文阅读:论文阅读--考虑特征水平的改进的基于田间的大豆种子计数和定位_追忆苔上雪的博客-CSDN博客 

 P2P大豆计数复现:p2p大豆计数模型_追忆苔上雪的博客-CSDN博客

现在梳理一下P2PNet-Soy原理

1.P2PNet-Soy流程图

图3.VGG16是提取特征的基本框架,首先融合高层次和低层次特征,并将其添加到原始图像中,以进行后续定位和计数。

2.提高模型性能的几种策略

(1)使用k-d树这一无监督聚类算法,用于找到大豆种子位置相近的预测中心,提高最终预测的准确性; (Physically based rendering: From theory to implementation, Pharr M, et al.)

图4.原始P2PNet的性能。(A) 没有k-d树后处理。(B) 用k-d树对大豆种子进行后处理,对单株进行计数。

其中1:1line代表1:1对角线,Fitting line代表最小最小二乘拟合线;

R^2R^2 ≤1,且R^2 越接近1越好!

原始P2PNet无法去除这些紧密定位的预测(图5A),导致这些种子的相应真实位置周围出现密集的“crowded”。通过直接应用k-d树作为后处理过程,MAE的值急剧下降至14.40,并与它们的人工标注具有0.85的改进相关性(图4B)。然而,在这些预测中遗漏了一些尺寸较大的种子(图4)。

图5.在从测试数据集中随机选择的单个植物上预测大豆种子数量时,原始P2PNet(A)未经后处理和(B)经后处理之间的比较。虚线框中的图像在实心框内的图像部分中进行缩放。

(2)利用高级特征和低级特征的组合充分探索大豆种子计数的模型潜力;

高级特征包含全局上下文感知信息( global-context-aware information)

低级特征可以捕捉到更详细的空间结构信息(spatial structural information)

(Pyramid feature attention network for saliency detection. Zhao T, et al.)

(3)使用膨胀率为1、3、5和7的空洞卷积(atrous convolution )来覆盖不同级别特征上的不同感受野,从而获得

尺度不变特征,以应对种子大小的变化。

(4)应用空间注意力(spatial attention)来降低低层次特征的噪声水平,并采用通道注意力(channel

attention)来突出大豆种子的语义信息。利用空间和通道注意力有效地对目标种子与其背景之间的边界信息进行优先级排序,从而获得更好的计数性能。

(5)直接将原始图像作为参考,将整个框架格式化为残差学习,以提高模型性能。

图6. P2PNet-Soy大豆在预测大豆单株种子数量方面的性能。

图7.通过所提出的P2PNet-Soy模型预测大豆种子的一个例子。右侧虚线框中的图像是左侧图像的实心框内的图像的放大部分。

图8. 优化的P2PNet大豆模型(A)和原始P2PNet模型(B)与随机选择的现场图像的后处理的比较。虚线框中的图像在实心框内的图像部分中进行缩放。

3.P2PNet-Soy消融实验

尽管性能有所改善,但所提出的P2PNet-Soy模型仍然高度依赖于后处理,因此进行了消融研究,以进一步阐述每种策略的不同贡献,见下表

表中:

        H代表高级特征high-level features: VGG16-conv3, VGG16-conv4, and VGG16-conv5;

        L代表低级特征low-level features: VGG16-conv1 and VGG16-conv2;

        SAL代表低级特征空间注意力spatial attention on low-level features;

        CAH代表高级特征的通道注意力channel-wise attention on high-level features;

        MSMR代表多尺度多感受野特征提取;

        OI代表原始图original image;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/91304.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

云服务器租用价格表概览_阿里云腾讯云华为云

云服务器租用价格多少钱一年?阿腾云分享阿里云、腾讯云和华为云的云服务器租用价格表:阿里云2核2G服务器108元一年起、腾讯云2核2G3M带宽轻量服务器95元一年、华为云2核2G3M云耀L实例89元一年起,阿腾云分享更多关于云服务器租用价格明细&…

Kubernetes基础(五)-Service

1 引言 Service 主要用于提供网络服务,通过Servicel的定义,能够 为客户端应用提供稳定的访问地址(域名或IP地址)和负载均衡功能,以及屏蔽后端Endpoint的变化,是Kubernetes实现微服务的核心资源。 本文详细…

博弈论中静态博弈经典场景案例

博弈论中静态博弈经典场景案例 1、齐威王田忌赛马 田忌赛马是中国家喻户晓的故事,故事讲述的是齐国大将田忌的谋士孙膑如何运用计谋帮助田忌在与齐威王赛马时以弱胜强的故事,这个故事其实本质也是一个博弈的过程。     齐威王要和田忌赛马&#xff…

二叉树MFC实现

设有一颗二叉树如下; 这似乎是一颗经常用作示例的二叉树; 对树进行遍历的结果是, 先序为:3、2、2、3、8、6、5、4, 中序为:2、2、3、3、4、5、6、8, 后序为2、3、2、4、5、6、8、3&#xff1b…

MySQL学习笔记25

逻辑备份 物理备份 在线热备: 真实案例: 数据库架构是一主两从,但是两台从数据库和主数据不同步。但是每天会全库备份主服务器上的数据到从服务器上。需要解决主从不同步的问题。 案例背后的核心技术: 1、熟悉MySQL数据库常见…

【计算机视觉|人脸建模】PanoHead:360度几何感知的3D全头合成

本系列博文为深度学习/计算机视觉论文笔记,转载请注明出处 标题:PanoHead: Geometry-Aware 3D Full-Head Synthesis in 360 ∘ ^{\circ} ∘ 链接:[2303.13071] PanoHead: Geometry-Aware 3D Full-Head Synthesis in 360 ∘ ^{\circ} ∘ (arx…

大数据Doris(三):Doris编译部署篇

文章目录 Doris编译部署篇 一、Doris编译

学信息系统项目管理师第4版系列13_立项管理

1. 项目立项管理包括 1.1. 项目建议与立项申请 1.2. 项目可行性研究 1.2.1. 初步可行性研究 1.2.2. 详细可行性研究 1.2.2.1. 不可缺少 1.2.2.1.1. 【高21上选21】 1.2.3. 可以依据项目的规模和繁简程度合二为一 1.3. 项目评估与决策 2. 立项申请 2.1. 项目建议书 2…

Lua语法之简单变量

--nil有点类似空null a nil print(a) --type函数得到类型 返回值是string print(type(a)) print("*****")--number是数值 int float这些 --lua的变量可以随便赋值 自动识别类型 a 1 print(a) print(type(a)) print("*****")--siting可以用单引号双引号 a…

华为云HECS云服务器docker环境下安装nginx

前提:有一台华为云服务器。 华为云HECS云服务器,安装docker环境,查看如下文章。 华为云HECS安装docker-CSDN博客 一、拉取镜像 下载最新版Nginx镜像 (其实此命令就等同于 : docker pull nginx:latest ) docker pull nginx查看镜像 dock…

实体行业数字化转型怎么做?线上线下相结合的新零售体系怎么做?

如今,实体行业想要取得收入增长,只做线下业务或者只做线上业务,在当前的市场环境中是难以长久生存的,因此一定要线上线下相结合,将流量运作与线下转化进行充分结合,才能更好地发挥实体优势,带来…

Linux学习记录——삼십일 socket编程---TCP套接字

文章目录 TCP套接字简单通信1、服务端1、基本框架2、获取连接 2、客户端3、多进程4、多线程5、线程池6、简单的日志系统7、守护进程8、其它 TCP套接字简单通信 本篇gitee 学习完udp套接字通信后,再来看TCP套接字。 四个文件tcp_server.hpp, tcp_serve…

什么是Local Storage和Session Storage?它们之间有什么区别?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 什么是 Local Storage 和 Session Storage?Local Storage(本地存储)Session Storage(会话存储) ⭐ 区别⭐ 示例⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的…

程序员的浪漫:如何用java代码画❤️表白呢?

有位小伙伴说,看到一个帖子,一个计算机博士接亲时,要求现场写代码,5分钟做出一个爱心。我们就看看如何用java设计出心形的代码。 我找了一下,发现方法竟然很多,我们就来见识一下,最后我们看一下…

TouchGFX之字体缓存

使用二进制字体需要将整个字体加载到存储器。 在某些情况下,如果字体很大,如大字号中文字体,则这样做可能不可取。 字体缓存使应用能够从外部存储器只能加载显示字符串所需的字母。 这意味着整个字体无需保存到在可寻址闪存或RAM上&#xff…

Java自学(三)面向对象编程

目录 什么是面向对象 举例 this关键字和构造器 实体类 电影小案例 什么是面向对象 我们日常生活中谈到一个事物,总会描述它的性质与行为,这个事物也就是 ”对象”。比如一个学生对象,他的属性有姓名、学号、成绩......他的行为有上课、…

装饰器模式详解和实现(设计模式 二)

装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地将对象添加到现有对象中,以提供额外的功能,同时又不影响其他对象。 实现示例 1.定义一个接口或抽象类,表示被装饰对象的公共接口 //抽…

关于 自定义的RabbitMQ的RabbitMessageContainer注解-实现原理

概述 RabbitMessageContainer注解 的主要作用就是 替换掉Configuration配置类中的各种Bean配置; 采用注解的方式可以让我们 固化配置,降低代码编写复杂度、减少配置错误情况的发生,提升编码调试的效率、提高业务的可用性。 为什么说“降低…

QT编译报错stdlib.h:No such file or directory

如图,需要将第19行,INCLUDEPATH /usr/include 注释掉 原因分析: 在Ubuntu的CSTDLIB中,使用的是#include_next下“stdlib.h” ,自行增加/usr/include 把include_next的顺序打乱,造成编译错误。但是在cento…

Ubuntu 20.04编译GPMP2过程记录

前言 GPMP2是董靖博士等人在16-17年提出的结合GTSAM因子图框架与Gaussian Processes完成motion planning的一项工作。前身源于Barfoot教授的课题组提出的STEAM(Simultaneous Trajectory Estimation and Mapping)问题及其相关工作。在提出董靖博士提出GPMP2后,borgl…