万物计数:跨领域文本引导的通用物体计数 Count Anything
提出双粒度计数架构,结合区域级稀疏计数和像素级密集计数,在六个视觉领域实现高精度文本引导计数
前置知识
密度图估计
一种经典的密集计数方法,通过卷积网络预测一个连续的密度图,其中每个像素的值表示该位置存在目标的概率密度,最终通过对密度图积分得到总计数。优点是对高密度分布有效,但缺点是缺乏一对一的预测-实例对应关系,无法提供实例级别的位置信息和置信度。
论文指出密度图估计虽然有效,但不满足通用计数模型的实例定位目标,因此本文采用离散实例点作为最终预测形式,这是理解本文方法设计的必要背景。
一对一匹配监督
源自DETR的监督策略,通过匈牙利算法在预测集合和真实实例集合之间建立最优的双射匹配关系,使得每个预测实例唯一对应一个真实实例,从而实现端到端的集合预测训练。匹配成本通常包含位置距离、置信度等因素。
本文在区域级稀疏计数器和像素级密集计数器中都使用分支特定的匈牙利匹配,这是实现实例级监督、避免竞争的关键技术。
交叉模态编码
融合视觉和语言模态信息的技术,通常使用视觉编码器提取图像特征,文本编码器提取查询特征,然后通过跨注意力机制将文本条件注入视觉特征中,得到目标条件化的视觉表示。
Count Anything使用SAM3的文本条件编码器作为基础,冻结预训练权重并通过LoRA适配计数任务,这是实现文本引导计数的基础组件。
实例定位
在提供预测结果的同时,给出每个计数目标的具体空间位置和置信度,使得用户可以验证计数的准确性并定位错误。与纯标量计数不同,实例定位提供了可解释的空间证据。
本文的核心目标是实例定位的文本引导计数,所有设计(双粒度计数、点中心监督、互补融合)都是为了在保证计数准确性的同时提供实例级别的空间证据。
研究动机
现有的物体计数方法高度碎片化,通常针对特定场景设计,如人群计数、车辆计数、细胞计数、作物计数等。这些专用模型在其所属领域内表现良好,但在跨类别、跨视觉域、跨物体尺度和密度分布时泛化能力有限。例如,一个在人群计数上表现优异的模型可能无法直接迁移到遥感影像中的小车辆、病理图像中的密集细胞核或农业图像中具有重复纹理的作物器官。更根本的问题是,大多数现有计数方法使用密度图作为最终输出,这是一个连续响应场,无法建立预测与实例之间的一对一对应关系,也就无法自然支持实例级别的置信度和定位级别的错误诊断。
本文的目标是本文的目标是构建一个真正通用的文本引导物体计数模型,满足三个核心要求:一是文本引导,允许用户通过类别名称或自然语言查询指定目标;二是实例定位,计数结果由带有置信度分数的局部实例预测支持,而不是不可解释的标量;三是跨领域,因为实际计数应用跨越高度多样化的视觉领域,包括通用场景、遥感、病理学、细胞显微、农业和微生物学。
与已有工作不同的是,本文的独特切入角度在于重新思考通用计数的预测表示。观察到检测式计数和点回归式计数本质上是互补的:前者为大型、稀疏或清晰边界的目标提供物体范围和几何锚点,后者更适合小型、密集或弱边界目标,无需为每个实例估计完整边界。因此本文提出双粒度实例枚举的设计理念,结合区域级稀疏计数和像素级密集计数,而不是强制所有目标共享单一的预测表示。这与现有方法要么纯基于检测、要么纯基于密度估计或点回归形成鲜明对比。
核心方法
Count Anything采用离散实例点作为最终预测形式,给定图像$I$和文本查询$T$,预测实例点集$\hat{P}_T = \{(\hat{p}_n, \hat{s}_n)\}_{n=1}^{\hat{N}}$,其中$\hat{p}_n$和$\hat{s}_n$表示第$n$个预测实例的位置和置信度,最终计数为点集的基数$\hat{c}_T = |\hat{P}_T|$。整体流程包括文本条件编码器提取目标条件化的视觉表示,然后两个互补的计数器并行工作:区域级稀疏计数器(RSC)执行稀疏的区域级枚举,像素级密集计数器(PDC)在高分辨率特征上执行密集的点级枚举,最后通过互补计数融合(CCF)合并两个分支的预测。
核心创新点是双粒度实例枚举架构,这与现有方法的本质区别在于:现有方法要么使用密度图(缺乏实例对应关系),要么纯基于检测框(对小型密集目标召回不足),要么纯基于点回归(对大型稀疏目标缺乏空间约束)。Count Anything同时使用区域级稀疏计数和像素级密集计数,RSC通过DETR式的区域查询解码预测少量候选区域,使用其中心作为计数点;PDC在高分辨率特征网格上进行密集点预测。推理时通过CCF进行无参数的互补融合,抑制重复计数同时保留互补性。
方法步骤详情
方法步骤的完整描述如下:第一步,文本条件编码器使用预训练SAM3的图像-语言编码主干,冻结原始权重,在跨模态编码器中插入可训练的LoRA适配器(rank=8)进行轻量级任务适配。视觉编码器提取多尺度特征$\{V_l\}_{l=1}^L$,文本编码器生成查询表示$e_T$,跨模态编码器融合得到目标条件化的物体表示$F_{obj}$。第二步,区域级稀疏计数器(RSC)在$F_{obj}$上使用$Q_r=200$个区域查询,每个查询预测前景logit $z_{ri}$和边界框$\hat{B}_{ri}$,置信度$\hat{s}_{ri}=\sigma(z_{ri})$,计数点为框中心$\hat{p}_{ri}=\text{center}(\hat{B}_{ri})$。第三步,像素级密集计数器(PDC)首先将$F_{obj}$与高分辨率视觉特征对齐并通过3个残差块的适配器得到像素级计数特征$G_{pix}$,然后在密集空间网格$\Omega=\{u_k\}_{k=1}^{Q_d}$上为每个位置预测分类logit $z_{dk}$和坐标偏移$\Delta_k$,最终候选点$\hat{p}_{dk}=a_k+\rho\Delta_k$($a_k$为锚点,$\rho=100$为偏移缩放因子),置信度$\hat{s}_{dk}=\text{softmax}(z_{dk})_{fg}$。第四步,训练时使用分支特定匹配,RSC使用匈牙利匹配,成本$C_{rij}=\lambda_{rp}d(\hat{p}_{ri},p_j)-\lambda_{rs}\hat{s}_{ri}$;PDC使用稀疏匈牙利匹配,对每个真实点$\hat{p}_{img}^j$仅考虑局部候选集$N(j)$(top-5附近密集候选),成本$C_{dkj}=\lambda_{dp}\|\hat{p}_{dk}-p_{img}^j\|^2-\lambda_{ds}\hat{s}_{dk}$。第五步,点中心监督策略下,所有有效实例通过计数点监督,边界框回归和GIoU损失仅在存在可靠真实框时计算,RSC分类使用质量感知的软前景目标$\tilde{y}_{ij}=\max(\epsilon,\text{sg}(\hat{s}_{ri})\alpha g_{ij}^{1-\alpha})$,其中$g_{ij}$是覆盖质量。第六步,推理时互补计数融合(CCF)首先过滤RSC预测(阈值$\tau_r=0.5$)并用IoM去重,过滤PDC候选(阈值$\tau_d=0.5$),然后对每个保留的RSC区域,如果没有PDC点落在其内则保留其中心,否则找到最近的PDC点并保留置信度更高的那个,最终预测$\hat{P}_T=P_{r}^{keep}\cup P_{d}^{keep}$。
技术新颖性
技术新颖性体现在多个方面:一是首次提出双粒度实例枚举架构,明确指出检测式和点回归式计数的互补性并设计相应的融合策略;二是点中心监督策略,使得模型能够从异构标注(框、点、多边形、掩码、旋转框、标签图)中学习,无需为仅有点标注的样本生成伪框作为回归目标;三是互补计数融合(CCF)是一种无参数的轻量级融合规则,仅通过置信度比较解决重复计数问题,同时保留密集分支在拥挤区域的有用预测;四是构建了CLOC大规模跨领域计数数据集,约220K图像、619类别、15.356M实例,覆盖六个视觉领域,为通用计数模型提供了数据基础。
实验结果
Count Anything在CLOC数据集上实现了9.34 MAE、33.34 RMSE和0.75 NAE,显著优于所有比较方法。在六个视觉领域的单域MAE分别为:通用场景8.76、遥感6.21、病理学16.64、细胞显微38.65、农业41.78、微生物4.30。相比之下,次优的CountGD++在CLOC上的MAE为23.38,在通用场景、遥感、病理学、细胞显微、农业、微生物上的MAE分别为14.50、10.69、55.83、222.25、321.99、43.80,显示出Count Anything在专业领域(尤其是细胞显微和农业)上的显著优势。在密集人群计数子集(ShanghaiTech Part A)上的评估中,Count Anything达到55.90 MAE和92.15 RMSE,虽然略落后于专用的密集人群计数方法APGCC(49.30 MAE)和P2PNet(48.10 MAE),但考虑到它是为跨领域通用计数设计的,这个结果证明它在保持通用性的同时具有与专用方法同等的竞争力。消融实验验证了双计数器设计的重要性:仅使用RSC或PDC的性能分别为14.81 MAE和13.27 MAE,而完整模型达到9.34 MAE;直接合并两个分支(DU)导致22.85 MAE,使用CCF后降至9.34 MAE。数据规模实验显示,随着训练数据比例从10%增加到100%,MAE从15降至9.34,RMSE从83.46降至33.34,验证了大规模跨领域数据的价值。点中心监督组件的消融表明,去除RSC点监督使MAE从9.34增至14.06,去除框和GIoU监督使MAE从9.34增至13.83,同时使用两者达到最佳性能。模型包含848.62M参数,5.44 TFLOPs计算量,在RTX 5090、4090和A100上的推理延迟分别为68.51ms、95.55ms和122.11ms,显存占用5.17-6.53GB,具有实用的推理效率。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| CLOC全测试集文本引导计数 | MAE (平均绝对误差) | 9.34 | CountGD++ (CVPR'26) | 降低60% |
| CLOC全测试集文本引导计数 | RMSE (均方根误差) | 33.34 | CountGD++ (CVPR'26) | 降低73% |
| 细胞显微领域计数 | MAE | 38.65 | CountGD++ (CVPR'26) | 降低83% |
| 农业领域计数 | MAE | 41.78 | CountGD++ (CVPR'26) | 降低87% |
| 密集人群计数(ShanghaiTech Part A) | MAE | 55.90 | P2PNet (ICCV'21) | 相差16%,但在跨领域通用模型中表现优异 |
局限与改进
作者承认的局限性包括:CLOC数据集在视觉域分布上不完全平衡,通用场景和遥感占比较大,而专业领域(病理学、细胞显微、农业、微生物)样本较少,这可能会影响模型在这些领域的充分训练。此外,CLOC主要使用类别名称作为文本查询,虽然这是文本引导计数的具体形式,但尚未完全探索自然语言描述性查询的能力。我观察到其他局限性:当前方法使用固定锚点和相对偏移进行PDC点预测,偏移缩放因子$\rho=100$是超参数,可能需要针对不同密度分布进行调整;CCF融合规则虽然无参数,但IoM阈值和局部重复组大小$K_s$需要调优,当前最优设置为IoM=0.5、$K_s=1$;在极端密集场景(如超过1000个实例)中,模型可能仍然面临挑战,虽然CLOC包含这些样本但数量较少;对于具有强遮挡或严重边界的重叠实例,当前的点中心表示可能无法充分捕捉实例的完整性。
独立分析的弱点
独立分析的弱点包括:在极端高密度场景(目标数超过1000)中,PDC的密集候选可能导致前景-背景不平衡和重复候选竞争,优化不够稳定,当前每个空间位置仅生成1个候选以避免这个问题,但这可能限制了对极端密集场景的召回率。在具有强遮挡或重叠实例的场景中,点中心表示可能无法区分相邻实例,尤其是当实例边界模糊时,改进方向是引入实例分离机制或使用掩码级别的监督。对于跨领域泛化,虽然CLOC覆盖六个视觉域,但模型在完全新颖的成像条件或目标外观上可能仍需要适应,改进方向是引入域自适应或元学习策略。当前方法使用固定输入分辨率1008×1008,对于超高分辨率图像(如微生物域平均11MP)可能丢失细节,改进方向是引入多尺度推理或滑动窗口策略。在计算效率方面,虽然模型在RTX 5090上达到68.51ms延迟,但对于实时应用可能仍有优化空间,改进方向是模型蒸馏或高效推理加速。
未来方向
作者提出的未来工作方向包括:扩展CLOC数据集以包含更多专业领域的样本和更丰富的目标密度分布,从而更好地支持极端密集和长尾类别的计数。探索更灵活的文本查询形式,从类别名称扩展到自然语言描述,甚至支持组合查询和否定查询。我观察到基于本文成果可延伸的未来方向包括:将双粒度计数理念扩展到视频计数,引入时间一致性约束和跨帧实例关联;将实例定位与分割结合,为每个计数点提供更丰富的实例形状信息;探索多模态查询,支持视觉示例与文本描述的联合引导;研究不确定性量化,为每个计数点提供预测置信度区间;将方法应用于更广泛的计数场景,如3D点云计数、显微镜计数中的动态目标追踪等。
复现评估
论文提供了详细的实现细节,包括超参数设置、训练配置和数据处理流程。代码将在count-anything网站上发布,表明作者计划开源。CLOC数据集通过整合多个公开数据源构建,所有源数据集在其原始许可下使用,作者保留了原始所有权、引用和许可信息。CLOC本身将作为统一的计数基准发布,预计将提供统一的注释结构和数据加载工具。模型使用8块NVIDIA A100 GPU训练30 epochs,输入分辨率1008×1008,每GPU批量大小24,有效批量大小192,学习率采用余弦调度,训练成本相对较高但仍在可接受范围内。复现难度中等,主要挑战在于CLOC数据集的规模和多源数据整合的复杂性,但作者提供了详细的数据构建管道说明,包括可数性审计、统一注释构建、类别整合和任务感知分割,这有助于复现。总体而言,论文在复现性方面表现良好,代码、数据集和训练细节将充分公开。
论文图表