GeoChat : Grounded Large Vision-Language Model for Remote Sensing论文精读
GeoChat : Grounded Large Vision-Language Model for Remote Sensing
是一个针对遥感场景的llm,提供支持多任务对话(对高分辨率遥感图像)。也造了个数据集。
一些思考:
文中提到的局限性:小物体和多框预测较难。小物体在图像中占比小,可能特征不足难以正确定位。模型可能倾向于预测单一框,而且多个框可能会目标重叠。
也许可以用布匹数据集,变成布匹瑕疵的问答。。。。
gpt说可以轻量化(lora 蒸馏)提升推理效率
以下是边读边记的草稿。。。。。
普通VLM是针对自然图像,遥感图像表现较差,可能出现不准确的信息或幻觉。尽管遥感视觉问答(VQA)领域取得了重大进展,但早期方案是 模型从训练数据中找到答案 相当于分类问题,就不是开放式答案生成。Geo-Chat试图将多模态指令微调扩展到遥感领域,训练一个多任务会话助手。
关于数据集的生成:遥感领域没有像自然图像领域那种现成的、成规模的多模态对话数据集,所以无法直接“instruction-tune”出一个强大的遥感多模态模型。这个是使用 Vicuna-v1.5(一个在 LLaMA 基础上构建的开源对话语言模型)来生成问答数据通过自动化流水线,把遥感图像 + 标签信息变成“图 + 问题 + 答案”形式,构造出 31.8 万条遥感图文指令数据
模型在输入中使用了空间位置表示(spatial location representations),也就是模型的输入不仅包括图像,还会提供区域的坐标信息。输出中也可以生成目标的位置坐标,以实现视觉指向(visual grounding)。
创新点:
1. 新颖的数据生成流程。利用已有的目标检测数据集来为图像生成简短描述,然后使用Vicuna-v1.5基于这些描述生成完整的对话。还结合了视觉问答(VQA)和场景分类(scene classification)任务,分别使用它们对应的数据集来扩充任务类型。最后是构建了一个大规模数据集。
2. Geo-Chat是一个lora微调LLaVA-1.5后得到的遥感领域VLM。这种方式可以避免遗忘LLaVA全模型训练中所嵌入的重要上下文知识。在llava模型中,mlp投影层已被训练用于将图像对齐到vicuna-v1.5的词嵌入空间中。
3. 建立评估机制。目前遥感领域没有成熟的vlm对话评估方法,geo-chat设计了一套标准。
相关工作:
1. 大型视觉语言模型:基本架构是,一个预训练的视觉backbone来编码视觉数据、一个大语言模型来解释用户响应和生成回应、还有一个视觉-语言跨模态连接器(例如线性投影层或者一个MLP)用于将视觉和语言信息融合。「我的问题:为什么一个“线性投影层”或一个“MLP 多层感知器”就能实现视觉语言的融合?回答:不是融合了所有语义内容本身,是起了对齐接口的作用。要解决的问题其实是,怎么把视觉模型输出的图像向量,变成语言模型能接受的词向量格式。相比线性投影,mlp用relu等可以引入非线性表达能力。这些模块本质上没有融合视觉和语言的语义内容,只是统一接口。真正的融合是由语言模型后续的transformer层完成的,它将图像和文字联合建模joint modeling,即把图像当词处理,和文本token一起送入transformer,通过self-attention在高维空间建立图文直接的语义连接。」
遥感领域的VLM应用相对较少。目前还停留在单任务、非对话阶段,geo-chat实现了多任务统一处理+多轮对话+区域推理+目标指向。
geo-chat支持的三类任务:
a) 图像级对话任务(Image-Level Conversation Tasks)
- 输入:图像
x
+ 用户文本问题q
- 没有提供图像中具体的区域或位置(即不涉及坐标)
- 目标:基于整张图进行对话任务,比如:
- 图像级问答(Image-level VQA)
- 场景分类(Scene classification)
- 图像描述(Image captioning)
b) 区域级对话任务(Region-Level Conversation Tasks)
- 输入:图像
x
+ 用户问题q
+ 区域框b
(如一个 bounding box) - 区域
b
引导模型将注意力集中在图像中的某个区域 - 任务包括:
- 区域描述(Region-level captioning)
- 区域问答(Region-specific VQA)
- 区域多轮对话(Multi-turn conversation about a region)
c) 视觉指向对话任务(Grounded Conversation Tasks)
- 使用任务标记(task-specification token)
t
来告诉模型:“现在我要你给出目标位置” - 模型输出中包含视觉定位信息(如坐标框)
- 支持以下任务:
- 带视觉指向的图像描述/对话(grounded captioning/conversation)
- 目标定位(object grounding)
- 指代表达检测(referring expression detection)
→ 例如用户说:“图中那辆红色的卡车在哪?”模型能标出其位置
「问题:什么是任务标记t? 回答:这类 token 被称为 “任务提示标记”(task-specification token / prompt token),它的本质是:一种特殊的字符串,告诉模型该执行哪种任务,而不是靠代码硬编码任务类型。
」
模型结构:
总架构:geo-chat遵循了llava-v1.5的设计,主要包括三个核心组件:全局图像编码器、mlp适配器(两个线性层)、大语言模型。「问题:什么是全局图像编码器?回答:就是把输入图像(通常是高维像素矩阵)编码成一组高层语义特征向量,供语言模型使用,之所以叫全局图像编码器,是因为它不是只看图像的一部分(像检测模型那样划窗),而是对整张图像进行统一编码。虽然是图像切成patch,但是所有patch一起送入transformer,每个patch的表示都会注意其他patch的信息(通过self-attention)」与llava不同的是,geo-chat中有特定任务提示(task prompt)
task token:三种不同的任务标识符,t ∈ {grounding, identify, refer}, each for grounded conversations, region captioning and referring expression comprehension.指向对话、区域描述、指代表达理解。至于 视觉问答(VQA) 和 场景分类(scene classification),我们直接要求模型输出一个单词或短语作为答案
空间位置表示:采用文本格式表示目标框的位置,以表达目标的地理位置:
b = {bx_left, by_top, bx_right, by_bottom | θ}
数值范围:x 和 y 坐标的数值都在区间 [0, 100] 内进行归一化表示。区域位置以这种格式表示后,可以在模型的输入和输出中使用,帮助模型准确地与图像中的区域进行交互。
visual backbone:采用clip-vit的预训练backbone。原始clip-vit的输入分辨率为336*336,这样每张图片被分割成576个patch。这个分辨率细节有点不够,因此我们对 CLIP 模型中基于 Transformer 的 位置编码(positional encoding)进行了插值处理,以适应 504×504的输入图像大小。这种处理方式,让patch数变成1296,但增强后可以处理更大的图像、支持更好的高分辨率遥感图像中的视觉指向。
mlp跨模态适配器:对于 504×504 分辨率的图像(如 GeoChat 中所使用的图像),CLIP-ViT 会将图像编码成 1296 个 patch,每个 patch 都是 1024 维的向量,总输出为 R1296×1024。经过mlp适配器之后,变成R1296*4096,和语言模型对接。激活函数是GeLU。
大语言模型:使用开源的vicuna-1.5(7b)作为基础,是框架中各种语言-视觉输入的统一接口。采用lora微调,确保了更快速的训练,避免遗忘llm中原有的知识。
训练细节:
采用预训练的clip-vit编码器,预训练的mlp适配器(该适配器是在 LAION-CC-SBU 数据集的 558K 子集上(使用 BLIP描述)进行训练的),和vicuna- v1.5初始化我们的模型。编码器和mlp适配器都是冻结的,训练时对vicuna-v1.5进行lora。「Q:什么是blip描述?A:bootstrapping language-image pretraining 是一种图像描述生成模型,能够自动生成与图像内容相关的文本描述」
遥感多模态指令数据集
通过使用llm vicuna,喂很多指令跟随的数据(instruction-following data)我们让模型能接受很多指令。使用vicuna模型生成指令-响应对,少样本学习:在提示中提供一些手动编写的示例来帮助vicuna学会如何构建高质量的指令-响应对。
数据集的组成:整合了三种不同类型的数据集,涵盖了目标检测、场景分类和视觉问答。目标检测数据集提供了区域推理能力,因为其提供了边界框和分割掩码。
缺失类别的补充:虽然目标检测数据库中包含了大量物体类别,但仍然缺少一些重要的类别,如建筑物、道路和树木。vitae-rvsa模型通过loveDA数据集,预先学习了遥感中的一些重要类别,然后这个模型应用到samrs数据集上,预测samrs中没有的类别(比如建筑物 道路 树木等),伪标签用来填补数据集中的空白。
属性提取:提取物体的类别、颜色、相对大小等。还有图像中物体间的关系,比如surround by之类的
表达生成:基于一个预定义文本模版,包括表格中的5个属性
视觉定位:尽管在自然图像领域已经有大量的referring expression数据集,遥感领域还是缺乏类似的标注数据集。 referring expression是用自然语言描述图像中物体或区域的语言表达(例如“左上角的红色房屋”)。三种类型的问答对:定位图像描述(grounding image descriptions)参考表达式(referring expression)区域集标注(region level captioning)
实验
实现细节:用预训练的clip-vit来初始化模型权重,同时llm(vicuna-v1.5)也作为基础模型,采用lora微调。lora适配过程中,主要优化Wq和Wv即查询权重矩阵和值权重矩阵。lora设定的rank为64。优化器AdamW,学习率Cosine Learning Rate Scheduler,批量大小144。训练策略是两阶段,第一阶段所有数据集训练一个epoch(2400个steps),第二阶段仅使用grounding数据集继续训练1600个steps,以增强模型在目标定位任务上的表现。
场景分类任务中,用AID(其20%作为测试集)和UCMerced(用于零样本zero-shot测试)两个数据集来评估,
结果:GeoChat 的表现:UCMerced 数据集:GeoChat 取得了 84.43% 的准确率。AID 数据集:GeoChat 取得了 72.03% 的准确率。
视觉问答任务中,用RSVQA-HRBEN 和 RSVQA-LR 两个数据集。问题类型有:presence存在性(询问某个物体是否出现在图中)、comparison比较(比较两个或多个对象的属性)和count计数(询问图像中物体的数量)还有rural/urban(城乡分类)
视觉定位任务中:提出了新benchmark。grounding description任务是要求生成文本描述,同时预测多个目标的边界框,用iou作为指标。region-level captioning区域级描述任务,评测指标:rouge(召回导向的摘要评测)和meteor(基于词形匹配的文本相似性评测)
一些难点:小物体和需要预测多个边界框的任务,模型整体性能较低。
结论
大语言模型在自然图像领域取得了显著进展,但是在遥感场景表现受限。所以提出了Geo-Chat,首个统一的遥感vlm。能够在高分辨率remote sensing图像上,多任务对话。回答图像级别查询,进行区域特定对话,返回精确坐标。还构建了新的遥感多模态指令跟随数据集,采用多任务格式来涵盖各种任务。
相关文章:
GeoChat : Grounded Large Vision-Language Model for Remote Sensing论文精读
GeoChat : Grounded Large Vision-Language Model for Remote Sensing 是一个针对遥感场景的llm,提供支持多任务对话(对高分辨率遥感图像)。也造了个数据集。 一些思考: 文中提到的局限性:小物体和多框预测较难。小物…...
Postman使用02、断点、fiddler弱网测试
脚本操作 一、脚本导出 1.导出json脚本 2.打包json文件 3.下载的文件 二 .导入脚本 1.选择文件 2.点击导入 3.导入的接口 三.多接口运行 1.集合右键,点击run ,运行多个接口 2.编辑环境,集合,执行次数等 3.运行多个接口 四.运行…...
深入解析 C++20 中的 std::bind_front:高效函数绑定与参数前置
文章目录 1. 什么是 std::bind_front?2. 使用 std::bind_front2.1 基本用法2.2 绑定多个参数 3. 优势与特点3.1 简化代码3.2 支持可调用对象3.3 支持完美转发 4. 实际应用场景4.1 事件处理4.2 算法通用化4.3 成员函数调用 5. 总结 在现代 C 编程中,函数绑…...
Opencv计算机视觉编程攻略-第三节 图像颜色处理
第三节 图像颜色处理 1.颜色比较2.GrabCut分割图像3.色调、饱和度以及亮度 1.颜色比较 主要实现逐像素的颜色比较,其中注意BGR颜色空间不连续,不利于颜色提取和区分,转换到Lab空间: int getColorDistance(const cv::Vec3b& c…...
第十七章:Future Directions_《C++ Templates》notes
Future Directions 核心重难点:示例代码: 设计题多选题答案设计题详解 核心重难点: 泛型非类型模板参数 允许任意类型作为非类型模板参数(如template<typename T, auto N>)需解决类型推导和链接问题 编译期控制…...
ComfyUI-PSD-Replace: 海报与壁纸批量生成
ComfyUI-PSD-Replace: 海报与壁纸批量生成 🚀 插件介绍 ComfyUI-PSD-Replace 是一款强大的图像批量处理插件,专为设计师和创意工作者打造。无论你是想快速生成多款海报、定制壁纸,还是批量更新设计模板,本插件都能帮你轻松实现&a…...
图解预训练模型 ELMo 和 BERT
一、ELMo 二、BERT 以上笔记参考自b站up主 自然卷小蛮(自然卷小蛮的个人空间-自然卷小蛮个人主页-哔哩哔哩视频),感兴趣的可以去深入了解。...
YoloV8训练和平精英人物检测模型
概述 和平精英人物检测,可以识别游戏中所有人物角色,并通过绘制框将人物选中,训练的模型仅仅具有识别功能,可以识别游戏中的视频、图片等文件,搭配Autox.js可以推理,实现实时绘制,但是对手机性…...
基于物联网的智能蔬菜仓库设计(论文+源码)
1系统功能分析 由于蔬菜仓库内部环境直接影响到内部货物的正常存储工作,因此对蔬菜仓库内部环境进行智能化的监控具有重要意义。本次基于物联网的智能蔬菜仓库设计,系统实现的功能如下: (1)对蔬菜仓库内部进行温度检测…...
Java 字符流全解析:核心类实战指南
一、FileReader 与 FileWriter:文本文件基础操作 功能:直接基于字符处理文本文件,自动完成字节到字符的解码(默认使用系统编码)。 适用场景:读写简单的文本文件(如 .txt、.csv)。 …...
SQL Server 2022 安装问题
一、安装与配置问题 1. SQL Server 2022 安装失败怎么办? 常见原因: 硬件或操作系统不满足最低要求(如内存、磁盘空间不足)。未关闭防火墙或杀毒软件。之前版本的 SQL Server 残留文件未清理。 解决方案: 确保硬件配…...
Vue3 实现pdf预览
1.使用到的插件 vue3-pdf-app 以及预览效果 2.下载依赖 // 可以使用npm 以及pnpm // 下载版本1.0.3 pnpm install vue3-pdf-app^1.0.3 3.封装pdfModel组件复用 <template><VuePdfApp :page-scale"pageScale" :theme"theme" :style"width: …...
python网络爬虫开发实战之网页数据的解析提取
目录 1 XPath的使用 1.1 XPath概览 1.2 XPath常用规则 1.3 准备工作 1.4 实例引入 1.5 所有节点 1.6 节点 1.7 父节点 1.8 属性匹配 1.9 文本获取 1.10 属性获取 1.11 属性多值匹配 1.12 多属性匹配 1.13 按序选择 1.14 节点轴选择 2 Beautiful Soup 2.1 简介…...
GitHub Copilot平替:CodeGeeX 2.0实测报告
本文基于20个真实开发场景对CodeGeeX 2.0进行深度评测,涵盖代码生成质量、上下文理解能力、多语言支持度等关键维度。通过Python数据分析、Java微服务、React前端开发三大核心场景的对比实验,揭示其相比GitHub Copilot在中文语境支持、本地化部署、隐私保…...
QT对象模型
信号,槽,函数执行顺序 首先,拖入一个按钮,在转到槽,在click() 转到widget.cpp 在widget.h中 然后在widget.cpp中 运行结果 当发出信号后,先执行槽函数,再执行信号后面的函数(单线程) 在widget.h…...
C++:类型推导规则 unsigned short + 1
在 C/C 中,整数提升(Integer Promotion) 规则决定了 vlan_id 1 的类型: unsigned short 的值在运算时会被 提升(promote) 到 int 或 unsigned int(取决于平台)。 默认情况下&#x…...
PHP接口开发:从基础到高级的全面指南
一、接口基础与核心概念(约800字) 1.1 接口的本质定义 在PHP中,接口(Interface)是一种特殊的抽象结构,它通过interface关键字定义一组方法的契约规范,不包含具体实现。这种设计强制实现类必须遵循统一的调用标准,如: interface PaymentGateway {public function proc…...
C#Dictionary值拷贝还是引用
Dictionary值拷贝还是引用 这可能算是Directionary的一个坑值类型(Value Type)引用类型(Reference Type)总结 关于锁1. **锁对象的可见性**2. **锁对象的唯一性**3. **最佳实践**4. **为什么 readonly 是一个好的选择**5. **总结*…...
deepseek实战教程-第六篇查找源码之仓库地址与deepseek-R1、deepseek-LLM仓库内容查看
上一篇讲了支持deepseek的模型应用的本地安装和部署以及使用。再上一篇讲解了deepseek提供的开放api,便于开发者基于deepseek提供的接口来编写属于自己的业务应用程序。但是前面几篇我们都是在用模型,我们知道deepseek是开源的,那么deepseek的源码在哪里,具体源码是什么样的…...
WELL健康建筑认证是什么?
**WELL健康建筑认证:全方位呵护居住者福祉的权威标准** WELL健康建筑认证,这一源自美国的全球性健康建筑标准,宛如建筑界的璀璨明珠,以其独特的光芒照亮了健康建筑的发展之路。它不仅是全球首部专门针对室内环境提升人体健康与福…...
C++ STL 序列式容器之(三)-- List
一、什么是list? Lists are sequence containers that allow constant time insert and erase operations anywhere within the sequence, and iteration in both directions. 列表是序列容器,允许在序列中的任何位置进行以常量时间插入和擦除操作&…...
CAN基础知识学习二
一、控制器局域网总线(CAN,Controller Area Network); 二、CAN FD 是CAN with Flexible Data rate的缩写,翻译为【可变速率的 CAN】 CAN-FD 采用了两种位速率:从控制场中的 BRS 位到 ACK 场之前(…...
Java编程思想:为何有时要将子类对象赋值给父类引用
为何有时要将子类对象赋值给父类引用,用父类来进行实例化? 这就要说多态的优势: 代码的扩展性和降低耦合度,而不是完全避免修改代码。 TuXing t new Changfangxing(); Changfangxing k (Changfangxing)t;原因1: 代码可拓展性 …...
2025年优化算法:龙卷风优化算法(Tornado optimizer with Coriolis force,TOC)
龙卷风优化算法(Tornado optimizer with Coriolis force)是发表在中科院二区期刊“ARTIFICIAL INTELLIGENCE REVIEW”(IF:11.7)的2025年智能优化算法 01.引言 当自然界的狂暴之力,化身数字世界的智慧引擎&…...
2小样本学习(Few-Shot)之相似度
目录 小样本学习的基本思路: 具体实现方法: 小样本学习的基本思路: 学习一个相似度函数similarity function:sim(x,x) 两个样本越相近,相似度越高。 比如:...
docker-操作实战
前言 C镜像制作 因为我平常不用,所以不书写了 SpringBoot 微服务镜像制作 mkdir java ca java cp /data/maxhou/myapp/xxx.jar . vi Dockerfile FROM openjdk:8 COPY ./xxx.jar /app.jar CMD ["java","-jar","/app.jar"]COPY ./…...
后大模型时代智能体将成为“新宠”
智能体 |未来已来 智能体 |市场井喷 智能体 |定义 智能体 |与大模型的区别 智能体 |与Copilot的区别 智能体 |企业价值 智能体 |个体价值 智能体 |开发流程 智能体 |提示词解读 智能体 |应用场景 智能体 |重难点问题...
【MySQL】监控MySQL
目录 使用状态变量监控MySQL 使用性能模式(Performance Schema)监控MySQL 1.性能模式 2.性能模式设置表 3.sys模式 使用状态变量监控MySQL 使用 show status 语句评估系统运行状况。 可以添加范围修饰符global或session来显示全局或本地状态信息。…...
CTF类题目复现总结-[BSidesSF2020]toast-clicker 1
一、靶场地址 https://buuoj.cn/challenges#[BSidesSF2020]toast-clicker1二、复现步骤 1、下载压缩包,解压是apk文件; 2、利用 jadx apk反编译工具; jadx下载地址:https://github.com/skylot/jadx67, 83, 68, 120, 62, 109, …...
(更新完)Supplementary Material——AZ-NAS
6. Supplementary Material 在本补充材料中,我们提供了 AZ-NAS 在 NDS [18]、NAS-Bench-201 [7] 和 MobileNetV2 [14, 19] 搜索空间上的额外结果和深入分析。 Additional results on the NDS benchmark. 神经设计空间(NDS) [18] 基准提供了…...
基于SSM框架的线上甜品销售系统(源码+lw+部署文档+讲解),源码可白嫖!
摘要 网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管理就很关键。因此网上销售信息的…...
TCP | 序列号和确认号 [逐包分析] | seq / ack 详解
注 : 本文为 “TCP 序号(seq)与确认序号(ack)” 相关文章合辑。 英文引文,机翻未校。 中文引文,略作重排。 如有内容异常,请看原文。 Understanding TCP Seq & Ack Numbers […...
Citus源码(1)分布式表行为测试
最近对citus的实现非常好奇,本篇对citus的行为做一些测试。本篇只测行为,不分析源码。后面会继续写一系列文章分析citus源码。 环境:3节点 PG17 with citus。 SELECT citus_set_coordinator_host(127.0.0.1, 3001); SELECT citus_add_node(1…...
【AI测试必学】DeepSeek API 快速入门:获取 API Key 与调用 API 步骤详解
DeepSeek API 快速入门:获取 API Key 与调用 API 步骤详解 一、获取 API Key二、调用 DeepSeek API方法 1:使用 OpenAI Python SDK 调用 DeepSeek API方法 2:使用 requests 库直接发送 HTTP 请求方法 3:使用 curl 命令 相关链接 一…...
Web前端之UniApp、Taro、ReactNative和Flutter的区别
MENU 前言介绍及公司技术差异使用方法使用场景差异注意事项打包与部署差异框架应用实例结语 前言 在移动应用开发领域,跨平台框架已成为开发者的得力工具。UniApp、Taro、ReactNative和Flutter它们在Android(安卓)或iOS(苹果&…...
[leetcode]map的用法
1. 定义和初始化 定义:std::map是一个关联容器,键值对会自动根据键的值进行排序(默认是升序)。 cpp复制 map<char, int> mp; 插入元素:可以通过operator[]或insert方法插入键值对。 cpp复制 mp[a] 1; mp[b] 3…...
PHP大马的使用
BestShell/best_php_shell.php at master Kevil-hui/BestShell 这里用到的是这位师傅的大马(主要是从头开始写一个大马实在太麻烦了) 用pikachu靶场进行上传的测试 在这里传马,这个是简单的前端校验,bp抓包改后缀就好了 上传成…...
【CC2530 教程 十】CC2530 Z-Stack 协议栈
一、Z-Stack 协议栈目录结构: Z-Stack 协议栈可以从 TI 官网免费下载,下载安装完成以后,会默认在 C 盘的根目录下创建 Texas Instruments 目录,该目录下的子目录就是安装的 Z-Stack 文件,并且在该子目录下创建Accessor…...
区间端点(java)(贪心问题————区间问题)
deepseek给了一种超级简单的做法 我是真的想不到 贪心的思路是 局部最优——>全局最优 这种我是真的没有想到,这样的好处就是后面便利的时候可以通过foreach循环直接便利qu的子元素也就是对应的某一个区间, 将一个二维数组变成一维数组,每一个一维…...
定长内存池原理及实现
目录 一、池化技术 二、内存池 三、内存池主要解决的问题 四、定长内存池的实现 1.定长内存池的原理 2.框架 3.Delete实现 4.New实现 5.性能测试 五、源码 FixedMemoryPool.h test.cc 一、池化技术 所谓“池化技术”,就是程序先向系统申请过量的资源&…...
通过php连接redis数据库
如上图所示,这是去搭建一个lamp平台, 阿帕奇和php安装好之后,php直接就被安装成阿帕奇的一个功能模块。 如上图所示,这就是php作为阿帕奇的功能模块。 如上图所示,我们去正常启动redis数据库。 如上图所示,…...
3D点云的深度学习网络分类(按照作用分类)
1. 3D目标检测(Object Detection) 用于在点云中识别和定位目标,输出3D边界框(Bounding Box)。 🔹 方法类别: 单阶段(Single-stage):直接预测3D目标位置&am…...
论文解读:《Word embedding factor based multi-head attention》——基于词嵌入因子的多头注意力
原文链接:Word embedding factor based multi-head attention | Artificial Intelligence Review 多头注意力机制线性地将查询、键和值投影到不同的子空间中,允许模型从不同的角度理解输入序列,并利用输入句子序列中有关令牌之间关系的信息。…...
单片机和微控制器知识汇总——《器件手册--单片机、数字信号处理器和可编程逻辑器件》
目录 四、单片机和微控制器 4.1 单片机(MCU/MPU/SOC) 一、定义 二、主要特点 三、工作原理 四、主要类型 五、应用领域 六、选型与设计注意事项 七、发展趋势 4.2 数字信号处理器(DSP/DSC) 编辑编辑 一、定义 二、工作原理 三、结构特点 四、应用领域 五、选型与设计注…...
LeetCode hot 100 每日一题(15)——48.旋转图像
这是一道难度为中等的题目,让我们来看看题目描述: 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 提示…...
Java多线程精讲:线程操作与状态转换全解析
前言 本章内容为作者结合学习与实践的总结整理,虽力求准确,但疏漏之处在所难免。若有任何疑问或建议,恳请读者朋友们不吝指正,共同完善知识体系,感激不尽! 一、认识多线程(Thread&#…...
HashMap的位操作是什么?HashSet 的 contains 方法复杂度是多少?红黑树简单讲一下?
一、HashMap 的位操作设计 HashMap 使用位运算优化哈希计算与索引定位,核心场景如下: 哈希扰动函数 计算键的哈希值时,将高16位与低16位异或: static final int hash(Object key) {int h;return (key null) ? 0 : (h key.hash…...
GitHub开源的容器管理面板-Dpanel
dpanel Docker安装部署二进制部署 GitHub官网 一块轻量化docker可视化管理面板,由国人开发,个人觉得是比较好用的,功能都很齐全,并且可以通过修改源码,自定义前端样式等。 Docker安装部署 官网 部署环境࿱…...
vue-将组件内容导出为Word文档-docx
1. 安装依赖 首先,我们需要安装docx库,以便在前端生成Word文档。可以通过以下命令进行安装: npm install docx 2. 实现导出功能 2.1 初始化文档 使用docx库创建一个新的文档实例,并定义文档的结构和内容。我们使用Document、…...
IMX6ULL学习篇——系统学习设备树
IMX6ULL学习篇——系统学习设备树 这篇博客的目的是系统的整理一下设备树当中的一些非常基本的概念。基于之前的学习,我们已经至少掌握了字符设备的基本的框架,编写一个最简单的字符设备简单的流程。 但是我们知道,一个外设很有可能是…...