当前位置: 首页 > article >正文

基于点标注的弱监督目标检测方法研究

摘要

        在计算机视觉领域,目标检测需要大量精准标注数据,但人工标注成本高昂。弱监督目标检测通过低成本标注训练模型,成为近年研究热点。本文提出一种基于点标注的弱监督目标检测算法,仅需在图像中物体中心点标注,即可高效定位和分类目标。通过构建空间关系、语义关联和实例计数三大模块,算法显著提升了检测精度,为低成本视觉任务提供了新方案。

一、研究背景

        传统目标检测依赖人工标注的边界框,例如标注一张包含汽车的图片需画出汽车轮廓,耗时费力。弱监督方法使用图像级标签(如 “图片中有汽车”)降低成本,但存在三大难题:

  1. 定位不准:模型可能只识别汽车轮胎等局部特征,而非完整汽车;
  2. 语义混淆:多物体场景中漏检部分类别(如同时存在汽车和行人时漏检行人);
  3. 实例模糊:无法区分同一类别多个物体(如停车场中的多辆汽车)。

        点标注是一种折中方案:只需在物体中心打一个点,提供位置、类别和数量信息。例如,在医疗图像中,医生只需在肿瘤中心标注点,即可训练模型检测肿瘤。

二、算法设计

(一)整体框架

算法包含三大核心模块,分别解决三大难题:

  1. 空间图模块(SGB):利用标注点周围的空间关系,推断完整目标范围;
  2. 语义分支(MSB):分析类别间关联(如 “汽车” 常与 “道路” 同时出现),提升多标签检测能力;
  3. 实例计数模块(CIB):根据标注点数量区分多个物体(如 3 个标注点对应 3 辆汽车)。

(二)关键技术

1. 空间图模块:从点到完整目标
  • 原理:标注点通常位于物体中心,其周围区域大概率属于同一物体。例如,在 “猫” 的标注点附近,算法通过计算候选框的重叠度(IoU),将重叠度高于 0.8 的区域视为相关区域,构建 “空间图” 关联这些区域的特征。
  • 效果:避免模型仅关注猫的头部,而是通过整合头部、身体、尾巴的特征,检测完整的猫。
2. 语义分支:挖掘类别关联
  • 方法:利用词向量分析类别间的语义共现概率。例如,“鸟” 和 “天空” 在文本中常一起出现,算法在检测 “鸟” 时会增强对 “天空” 区域的关注,减少背景干扰。
  • 实现:通过自然语言处理模型(如 Word2Vec)生成类别词向量,计算 “鸟” 与 “天空” 的余弦相似度,融合相关类别特征。
3. 实例计数模块:区分多物体
  • 策略:若图像中某类别有 N 个标注点,则视为 N 个实例。例如,停车场图像中 3 个 “汽车” 标注点,算法会筛选 3 个高得分候选框,分别对应 3 辆汽车,避免将多辆车误检为 1 辆。

三、实验验证

(一)数据集与标注

  • 模拟数据集:使用合成图像数据集 “CarPark”(包含 1000 张停车场图片),每张图片人工标注汽车中心点,部分图片包含多辆汽车。
  • 对比方法
    • 基线模型:仅使用图像级标签的弱监督算法(如 WSDDN);
    • 全监督模型:使用边界框标注的 Faster R-CNN。

(二)核心结果

方法定位准确率(%)多车检测召回率(%)类别混淆率(%)
基线模型65.258.322.1
本文算法81.589.710.4
全监督模型89.292.55.6

  • 定位准确率:本文算法比基线模型提升 16.3%,接近全监督模型水平,证明点标注有效弥补了位置信息缺失。
  • 多车检测:基线模型常将多辆车误检为 1 辆(召回率 58.3%),本文算法通过实例计数模块将召回率提升至 89.7%。
  • 类别混淆:语义分支显著降低了 “汽车” 与 “卡车” 等相似类别的混淆率(从 22.1% 降至 10.4%)。

四、应用场景

  1. 自动驾驶:标注员只需在车载摄像头图像中标注行人、车辆中心点,算法可实时检测完整目标,降低标注成本;
  2. 工业检测:在机械零件图像中标注缺陷点,算法可定位完整缺陷区域,适用于螺丝缺失、表面裂纹等检测;
  3. 卫星遥感:在遥感图像中标注建筑中心点,算法可检测完整建筑轮廓,提升城市规划中的用地统计效率。

五、结论与展望

        本文提出的点标注弱监督算法,通过空间、语义、实例三层关系建模,有效解决了传统弱监督检测的核心难题。实验表明,其性能接近全监督模型,但标注成本大幅降低。未来可进一步优化模型轻量化,拓展至医疗显微图像等更复杂场景,推动低成本视觉技术的实际应用。

关键词:弱监督学习;目标检测;点标注;空间关系;语义关联

相关文章:

基于点标注的弱监督目标检测方法研究

摘要 在计算机视觉领域,目标检测需要大量精准标注数据,但人工标注成本高昂。弱监督目标检测通过低成本标注训练模型,成为近年研究热点。本文提出一种基于点标注的弱监督目标检测算法,仅需在图像中物体中心点标注,即可高…...

【RichTextEditor】 【分析2】RichTextEditor设置文字内容背景色

【RichTextEditor】 【分析2】RichTextEditor设置文字内容背景色 都说AI Coder的Cursor很牛,也付费用了, 但这个背景色,搞了一天也没改过来。 最后,让它分析该控件的层次结构及文本内容显示的位置。 然后,搞定&#…...

超越OpenAI CodeX的软件工程智能体:Jules

目前AI编码代理(coding agent)领域正迅速崛起,Google推出了一款名为Jules的非同步编码代理(asynchronous coding agent),主要针对专业开发者,与传统在开发环境中直接辅助编码的Cursor或Windsurf…...

Qt实战教程:设计并实现一个结构清晰、功能完整的桌面应用

概述 本文以文本编辑器项目作为示例,文本编辑器是一个非常适合新手入门的经典项目。它具备了桌面应用开发中的核心要素: 窗口管理菜单栏和工具栏文件操作(打开、保存)多文档支持(可选)国际化支持(多语言)插件系统(进阶扩展)通过这个项目,你将学习到如何使用Qt进行桌…...

轻量化MEC终端 特点

MEC(多接入边缘计算)解决方案通过将计算能力下沉至网络边缘,结合5G网络特性,已在多个行业实现低延迟、高可靠、高安全的应用部署。以下从技术架构、核心优势及典型场景三方面进行总结: 一、技术架构 分层设计‌ MEC架…...

NIST提出新型安全指标:识别潜在被利用漏洞

美国国家标准与技术研究院(NIST)近日公布了一项突破性的安全指标,旨在评估哪些软件漏洞可能已被利用——即使相关组织尚未察觉。 这项由前NIST专家Peter Mell和网络安全与基础设施安全局(CISA)Jonathan Spring共同完成…...

List介绍

什么是List 在集合框架中,List是一个接口,继承自Collection Collection也是一个接口,该接口中规范了后序容器中常用的一些方法 Iterable也是一个接口,表示实现该接口的类是可以逐个元素进行遍历的,具体如下&#xff1…...

正则表达式全解:一文学会正则表达式【附在线正则表达式练习网站】

1.正则表达式的作用 案例演示 先给大家看一个例子,在以下文本中存储了一些职位信息: Python3 高级开发工程师 上海互教教育科技有限公司上海-浦东新区2万/月02-18满员 测试开发工程师(C++/python) 上海墨鹍数码科技有限公司上海-浦东新区2.5万/每月02-18未满员 Python3 …...

Nginx-详解(二)

nginx 常见模块 第三方模块是对nginx 的功能扩展,第三方模块需要在编译安装nginx 的时候使用参数-- add-modulePATH指定路径添加,有的模块是由公司的开发人员针对业务需求定制 开发的,有的模块是开源爱好者开发好之后上传到github进行开源的…...

解决 IntelliJ IDEA 配置文件中文被转义问题

在使用 IntelliJ IDEA 进行开发时,我们经常需要编辑各种配置文件(如 .properties、.xml、.json 等)。然而,许多开发者都遇到过这样的困扰:配置文件中的中文内容被自动转义成了 Unicode 编码,显示为类似 \u4…...

MCP、MCPHub、A2A、AG-UI概述

MCP Model Context Protocol,模型上下文协议,Anthropic于2024年开源的标准协议,旨在统一AI模型与数据源的交互方式,提升数据访问的便捷性和可靠性,提供标准化的工具调用、资源管理和提示词功能。 MCP的基本定义&…...

计算机视觉与深度学习 | Python实现CEEMDAN-ISOS-VMD-GRU-ARIMA时间序列预测(完整源码和数据)

以下是结合CEEMDAN、ISOS-VMD、GRU和ARIMA的时间序列预测的Python完整实现方案。本方案包含完整的代码、数据生成逻辑和实现细节说明。 完整代码实现 import numpy as np import pandas as pd from PyEMD import CEEMDAN from vmdpy import VMD from scipy.optimize import di…...

[Linux]磁盘分区及swap交换空间

linux磁盘分区 计算机容量单位:一般用B,KB,MB,GB,TB,PB,EB,ZB,YB,BB来表示。 它们之间的关系是: 1KB (Kilobyte 千字节)1024B, 1MB (Megabyte 兆…...

JAVA面向对象——对象和类的基本语法

JAVA面向对象——对象和类的基本语法 一、面向对象编程基础 1. 程序中的数据存储方式 基本类型:变量(如 int max 15;)。数据结构:数组(一维/二维)、对象(特殊数据结构,用于存储复…...

Linux常见指令合集+知识点

Linux有一条设计理念:Linux中一切皆文件;这样的设计理念让Linux可以用一种统一的方式对Linux中的不同文件/设备进行管理;(也就是键盘、显示器等在Linux中也算文件) 文件内容属性,指令一般都是对文件进行操…...

nginx 基于IP和用户的访问

nginx的下载 yum install nginx.x86_64 -y 启动服务 systemctl enable --now nginx.service 查看服务目录 [rootwebserver ~]# rpm -ql nginx /usr/bin/nginx-upgrade /usr/lib/systemd/system/nginx.service /usr/share/man/man3/nginx.3pm.gz /usr/share/man/man8/nginx…...

【Linux】系统程序−进度条

文章目录 一、准备知识1.回车与换行1.1 回车1.2 换行 2. 行缓冲区3. 倒计时程序 二、进度条程序1. 版本1 一、准备知识 在讲解进度条之前,先讲解几个概念 1.回车与换行 1.1 回车 回车:\r 作用:将光标移动到当前行的行首(水平回…...

Axure应用交互设计:动态面板嵌套实现超强体验感菜单表头

亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢!如有帮助请订阅专栏! Axure产品经理精品视频课已登录CSDN可点击学习https://edu.csdn.net/course/detail/40420 课程主题:动态面板嵌套 主要内容:利用动态面板多层嵌套实现菜单表头 应用场景:广泛应用于表单表…...

Linux(6)——第一个小程序(进度条)

目录 一、行缓冲区的概念 二、\r与\n 三、进度条代码书写与展示 1.如何表示进度条是在加载的 2.整体框架 3.书写 3.1makefile: 3.2process.h: 3.3process.c: 3.4main.c: 3.5美化 一、行缓冲区的概念 首先,我们来见一见行缓冲区,…...

CentOS:搭建国内软件repository,以实现自动yum网络安装

centosgit仓库_寂寞沙冷州的技术博客_51CTO博客 yum 很慢 centos yum安装慢_mob64ca1417b0c6的技术博客_51CTO博客 yum配置,文件,命令详解-CSDN博客 yum仓库简介_yum库是什么-CSDN博客 rootwww:/etc/yum.repos.d# pwd /etc/yum.repos.d ###创建下面这个.…...

[Git] 认识 Git 的三大区域 文件的修改和提交

文章目录 认识 Git 的三大区域:工作区、暂存区、版本库工作区、暂存区、版本库的关系流程图解 (概念) 将文件添加到仓库进行管理:git add 和 git commit场景一:第一次添加文件到仓库查看提交历史:git log(进阶理解&…...

RISC-V 开发板 MUSE Pi Pro USB 测试(3.0 U盘,2.0 UVC摄像头)

视频讲解: RISC-V 开发板 MUSE Pi Pro USB 测试(3.0 U盘,2.0 UVC摄像头) 总共开发板有4个USB的A口,1个USB的TypeC口,我们插上两个USB3.0的U盘和一个USB2.0的UVC摄像头来进行测试 lsusb -tv 可以看到有3个US…...

【520 特辑】用 HTML/CSS/JavaScript 打造浪漫炫酷的表白网页

一、前言 在 520 这个充满爱意的日子里,程序员该如何用代码表达浪漫?本文将分享一个结合动画特效与交互设计的 520 表白网页案例,通过 HTML/CSS/JavaScript 实现动态爱心、渐变背景、浮动文字等炫酷效果,手把手教你用技术传递心意…...

小米2025年校招笔试真题手撕(二)

一、题目 给一个长度为n的序列和一个整数x,每次操作可以选择序列中的一个元素,将其从序列中删去,或者将其值加一。 问至少操作多少次,可以使操作后的序列(可以为空)中数字之和是x的倍数。 输入描述&#…...

弱网服务器群到底有什么用

在当今数字化的时代,大家都在追求高速、稳定的网络体验,但你是否想过,弱网服务器群其实也有着不可小觑的作用。让我们来聊聊什么是弱网服务器群。简单来说,它是一组在网络条件相对较差情况下运行的服务器集合。 弱网服务器群组是一…...

部署Gitlab-CE with Docker私有云环境

应用环境 Ubuntu 20.04.6 LTS (GNU/Linux 5.15.0-139-generic x86_64) Docker version 28.1.1, build 4eba377 文章目录 拉取容器镜像生成Run脚本参数解读实例脚本环境配置管理员密码遗忘服务邮箱配置邮件测试 运维问题集锦(1) 端口映射关系(2) 服务日志(3) 分支受保护 项目操作…...

拉普拉斯高斯(LoG)滤波器掩模的注意事项

目录 问题: 解答: 一、高斯函数归一化:消除幅度偏差 1. 归一化的定义 2. 为何必须归一化? 二、拉普拉斯系数和为零:抑制直流项干扰 1. 拉普拉斯算子的特性 2. 系数和不为零的后果 三、直流项如何影响零交叉点&…...

铠大师:让用户畅享多元应用,助力鸿蒙生态发展

在全球信息技术产业格局加速重构的背景下,中国科技力量正以开放包容的姿态重塑操作系统生态范式。 5月19日,华为在成都举办的nova14系列及鸿蒙电脑新品发布会上,正式对外发布搭载了鸿蒙系统的笔记本电脑HUAWEI MateBook Pro与HUAWEI MateBoo…...

RocketMQ核心特性与最佳实践

目录 1. 引言 2. RocketMQ核心特性 2.1 架构演进 2.2 核心组件 2.3 消息模型 2.4 高级特性 3. RocketMQ与其他MQ产品选型对比 3.1 功能特性对比 3.2 适用场景对比 3.3 选型建议 4. RocketMQ部署最佳实践 4.1 部署模式选择 4.2 硬件配置建议 4.3 操作系统优化 4.4…...

springboot配置redis lettuce连接池,以及连接池参数解释

文章目录 前置基本配置参数解释 前置 javaspringbootredislettuce 连接池 有很多连接池,比如 jedis,lettuce,redission,springboot 默认使用 lettuce 连接池 lettuce 连接池的特点是:一个 lettuce 连接可以被多个线…...