PET(Point-Query Quadtree for Crowd Counting, Localization, and More)

PET(Point-Query Quadtree for Crowd Counting, Localization, and More)

  • 介绍
  • 实验记录
    • 训练阶段
    • 推断阶段

介绍

论文:Point-Query Quadtree for Crowd Counting, Localization, and More

实验记录

训练阶段

TODO

推断阶段

下面是以一张输入图像作为网络输入的实验过程记录:

1.特征提取:对于一张768×1024的图像,记为input。对input做位置编码得到768*1024的位置编码特征,记为input_pos_embed。input经过vgg19输出两个特征分别为f1(96×128)和f2(192×256),对应sparse特征dense特征。f1和f2经过encoder网络之后得到enc_src1enc_src2,尺寸相同。

2.生成分割图:enc_src1和enc_src2经过avg_pool+conv得到一个分割图split_map(12×8),将split_map插值得到分割图split_map_sparse(96×128)split_map_dense(192×256)。(从代码中上可以看出,split_map_sparse是1减去插值结果得到的,所以split_map_sparse和split_map_dense是互斥的,也就是说,在split_map_sparse中的dense区域在split_map_dense中对应的区域是稀疏的。
在这里插入图片描述

3.网格点获取:原始图像为768×1024,使用stride为8和4获取网格点,分别得到92×128和192×256个网格点索引,根据从input_pos_embed中拿到每个点的位置编码,形状为96×128和192×256,记为query_pos_embed1,query_pos_embed2。对应的点特征是从f1和f2中抽取出来,记为query_points_feature1和query_points_feature2。
在这里插入图片描述

4.网格点筛选:这个步骤有点复杂。以split_map_sparse为例,split_map_sparse形状为96×128,将从split_map_sparse分成8×12=96个rectangle,每一个rectangle包含8*16=128个像素,记为div_win(128×96×1),然后筛选大于0.5的像素并在第0维进行累加,对应代码“valid_div = (div_win > 0.5).sum(dim=0)[: , 0] 和v_idx = valid_div > 0 ”,v_idx是一个mask(96,)的(其中17个为false, 79个为true),也就是说在96个rectangle中,但只选择了79个rectangle。query_pos_embed1和query_points_feature1也同样分成96个rectangle,经过筛选后得到query_embed(128×79×256)query_feats(128×79×256)。enc_src1也被分为96个rectangle,经过筛选后得到memory_win(128×79×256)
在这里插入图片描述

5.Decoding:将上面的query_embed, query_feats,memory_win输入到decoder网络,获得10112(128×79)个输出点,预测10112个偏置,因为train阶段输入图像大小都是256*256,inference阶段输入图像大小各不相同,所以需要对10112个偏置进行rescale(根据256的倍数调整)。同样的操作,对于192×256(dense)特征图,生成4608个输出点

6.合并预测结果:根据预测的分类标签值,分别从10112个输出点选出56个点,从4608个输出点中选择118个点,合并成174个点, 也就是最终的所有预测点。gt为172,计算mae=(174-172)=2, 计算mse=(174-172)^2=4。

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

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

相关文章

软件运行原理 - 内存模型 - 栈内存

说明 C/C软件运行时,内存根据使用方式的不同分为堆内存和栈内存,栈内存使用有以下特征: 栈内存使用(申请、释放)由系统自动分配和释放,程序员不用做任何操作。栈内存重复使用,进入函数时数据入…

Vue学习计划-Vue2--VueCLi(二)vuecli脚手架创建的项目内部主要文件分析

1. 文件分析 1. 补充: 什么叫单文件组件? 一个文件中只有一个组件 vue-cli创建的项目中,.vue的文件都是单文件组件,例如App.vue 2. 进入分析 1. package.json: 项目依赖配置文件: 如图,我们说主要的属性…

STM32F407-14.1.0-01高级定时器简介

TIM1 和 TIM8 简介 高级控制定时器(TIM1 和 TIM8)包含一个 16 位自动重载计数器,该计数器由可编程预分频器驱动。 此类定时器可用于各种用途,包括测量输入信号的脉冲宽度(输入捕获),或者生成输出…

xtts和ogg不选择?

不选择ogg的理由: 1.需要在源端创建用户赋权,启用数据库最小日志,附加日志等操作--对生产影响较大 2.外键约束过多,割接启用可能很慢https://www.modb.pro/db/201126--割接停机时间影响 3.初始化配置expdp导出可能快照过旧&#x…

18.Java程序设计-基于Springboot的电影院售票系统的设计与实现

摘要 电影产业在当今社会中占据着重要地位,电影院作为观影的主要场所,其售票系统的高效性和用户体验至关重要。本文基于Spring Boot框架设计并实现了一款电影院售票系统,旨在提高售票效率、优化用户体验,并解决传统售票方式存在的…

Java王者荣耀火柴人

主要功能 键盘W,A,S,D键:控制玩家上下左右移动。按钮一:控制英雄发射一个矩形攻击红方小兵。按钮控制英雄发射魅惑技能,伤害小兵并让小兵停止移动。技能三:攻击多个敌人并让小兵停止移动。普攻:对小兵造成基础伤害。小…

JS实现返利网注册系统(网页数据验证)

主代码 <!DOCTYPE HTMLPUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.org/1999/xhtml"><head><title>返利网注册</tit…

TeeChart.NET 2023.11.17 Crack

.NET 的 TeeChart 图表控件提供了一个出色的通用组件套件&#xff0c;可满足无数的图表需求&#xff0c;也针对重要的垂直领域&#xff0c;例如金融、科学和统计领域。 数据可视化 数十种完全可定制的交互式图表类型、地图和仪表指示器&#xff0c;以及完整的功能集&#xff0c…

基于SSM的健身房预约系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

webSRc实现浏览器播放rtsp【海康】

先上代码 <template><div>video的配置自己写<video id"video" autoplay width"900" height"900"></video></div> </template><script> export default {name: index1,data() {return {webRtcServer: …

【开源】基于JAVA的木马文件检测系统

项目编号&#xff1a; S 041 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S041&#xff0c;文末获取源码。} 项目编号&#xff1a;S041&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 木马分类模块2.3 木…

智能优化算法应用:基于灰狼算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于灰狼算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于灰狼算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.灰狼算法4.实验参数设定5.算法结果6.参考文献7.MA…

[GPT]Andrej Karpathy微软Build大会GPT演讲(上)--GPT如何训练

前言 OpenAI的创始人之一,大神Andrej Karpthy刚在微软Build 2023开发者大会上做了专题演讲:State of GPT(GPT的现状)。 他详细介绍了如何从GPT基础模型一直训练出ChatGPT这样的助手模型(assistant model)。作者不曾在其他公开视频里看过类似的内容,这或许是OpenAI官方…

【跨境营商】创新科技助力数码转型 增强大湾区企业核心竞争力

粤港澳大湾区作为国家的重点发展区域&#xff0c;坐拥丰富的资源及商机&#xff0c;企业积极推行数码化&#xff0c;务求在大湾区抢占先机。香港电讯商业客户业务董事总经理吴家隆表示&#xff0c;近年企业锐意加快数码化步伐&#xff0c;香港电讯以创新科技融入的数码方案&…

Ubuntu20.04安装向日葵、开机自启、解决windows系统远程黑屏(笔记)

这里写目录标题 动机1. Ubuntu20.04 安装向日葵2. 设置开机自启3. 解决windows不可远程的问题4. 大公告成 动机 办公室有个工作站&#xff0c;要比我的笔记本的CPU稍微好一点&#xff0c;用来跑陆面过程。我信心满满的装了个Ubuntu20.04双系统,但是发现向日葵安装不上了。我少…

【Qt开发流程】之UI风格、预览及QPalette使用

概述 一个优秀的应用程序不仅要有实用的功能&#xff0c;还要有一个漂亮美腻的外观&#xff0c;这样才能使应用程序更加友善、操作性良好&#xff0c;更加符合人体工程学。作为一个跨平台的UI开发框架&#xff0c;Qt提供了强大而且灵活的界面外观设计机制&#xff0c;能够帮助…

【网络奇缘】- 计算机网络|深入学习物理层|网络安全

​ &#x1f308;个人主页: Aileen_0v0&#x1f525;系列专栏: 一见倾心,再见倾城 --- 计算机网络~&#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 回顾链接&#xff1a;http://t.csdnimg.cn/ZvPOS 这篇文章是关于深入学习原理参考模型-物理层的相关知识点&…

编译 Flink代码

构建环境 JDK1.8以上和Maven 3.3.x可以构建Flink&#xff0c;但是不能正确地遮盖某些依赖项。Maven 3.2.5会正确创建库。所以这里使用为了减少问题选择 Maven3.2.5版本进行构建。要构建单元测试&#xff0c;请使用Java 8以上&#xff0c;以防止使用PowerMock运行器的单元测试失…

Java Spring + SpringMVC + MyBatis(SSM)期末作业项目

本系统是一个图书管理系统&#xff0c;比较适合当作期末作业主要技术栈如下&#xff1a; - 数据库&#xff1a;MySQL - 开发工具&#xff1a;IDEA - 数据连接池&#xff1a;Druid - Web容器&#xff1a;Apache Tomcat - 项目管理工具&#xff1a;Maven - 版本控制工具&#xf…

开源CDN软件GoEdge —— 筑梦之路

官方网站&#xff1a;GoEdge CDN - 制作自己的CDN - GoEdge CDN | 自建CDN GoEdge是一款管理分布式CDN边缘节点的开源工具软件&#xff0c;目的是让用户轻松地、低成本地创建CDN/WAF等应用。 特性 免费 - 开源、免费、自由、开放 简单 - 架构简单清晰&#xff0c;安装简单&a…