【ExtremeNet】: Bottom-up Object Detection by Grouping Extreme and Center Points

ExtremeNet是2019年提出的一种目标检测方法,它模仿CornerNet但增加了中心点检测,形成了一种底部向上的一阶段检测器。通过消除 Anchor,使用极端点和中心点的热力图,结合中心点聚类算法匹配框。在COCO数据集上,ExtremeNet达到了43.2%的bbox AP和18.9%的Mask AP,表现出色。文章还解决了Ghost box和边缘聚合问题,提高了检测精度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
2019年的论文

概述


  • 要解决的问题
    • 针对Anchor问题来进行思考的设计
  • 采用的方法
    • One stage
    • 仿CornerNet,但是CornerNet是使用的 左上角和右下角两个点检测,而本论文是对top, left, bottom, right四个极端点,再加上一个center点来进行检测。
    • 借鉴了DEXTR的极端点方法。
  • 结果如何
    • 在One-stage的方法上,COCO数据集表现是非常不错,state-of-the-art,可以看后面的结果
    • on-par with the state-of-the-art region-based method
    • 在COCO test-dev上bounding box的AP为43.2%。
    • 此外,用这个方法还做了一些粗糙的分割,COCO Mask AP是18.9%,much better than the Mask AP of vanilla bounding boxes。甚至在后面的结果中,加上DEXTR可以使Mask AP提升到34.6%
  • Contributions
    • 将几个方法结合起来用到了目标检测上吧。。。

代码

细节


在这里插入图片描述

  • 上图就是网络大致的结构图:
    • backbone是Hourglass Network,最终生成的是 4 ∗ C ∗ H ∗ W 4*C*H*W 4CHW的left,top, right, bottom的Extreme point heatmap,以及
<think>好的,用户的问题是关于如何通过相机拟合出视场中心线的方法。首先,我需要明确“视场中心线”具体指的是什么。在计算机视觉中,视场(Field of View, FoV)通常指相机能够捕捉到的场景范围,而中心线可能指视场的几何中心轴线,或者是某种场景中的结构中心线,比如道路的中线。根据用户提供的引用,特别是引用[1]提到的“Bottom-up Object Detection by Grouping Extreme and Center Points”,这可能涉及到通过检测场景中的关键点(如极值点和中心点)来重建结构,比如中心线。 接下来,我需要考虑相机标定和几何模型。相机的内参(如焦距、主点)和外参(位置和方向)会影响视场的几何特性。拟合中心线可能需要先确定相机的投影模型,比如针孔模型,然后根据检测到的特征点计算中心线的方向或位置。 用户提到的“拟合”方法可能涉及以下步骤:首先进行相机标定以获取内参,然后利用特征点检测(如引用[1]中的极端点和中心点)来识别场景中的中心线特征,接着通过几何变换或优化算法将这些点拟合成中心线。此外,可能需要考虑畸变校正,特别是径向和切向畸变,以确保特征点位置的准确性。 可能还需要参考引用[2]提到的Graz Univ. of Tech.的研究机构,他们在计算机视觉和图形学方面可能有相关的研究成果,比如使用特定的算法或模型来处理这类问题。例如,利用多视几何或三维重建技术来推断中心线的空间位置。 需要验证的是,用户是否需要的是相机的光轴作为中心线,还是场景中某个物体的中心线。如果是后者,可能需要结合目标检测和几何拟合的方法。例如,在自动驾驶中,车道线的中心线检测通常通过检测车道标记,然后拟合贝塞尔曲线或多项式曲线来实现。 此外,用户的问题可能涉及实际应用中的具体步骤,比如数据采集(图像或视频)、预处理(去噪、畸变校正)、特征提取、模型拟合(使用RANSAC等鲁棒方法)以及验证。可能需要考虑不同的场景,如室内、室外,以及不同的光照条件对特征检测的影响。 最后,生成相关问题时需要覆盖用户可能感兴趣的扩展方向,比如不同拟合方法的比较、实际应用中的挑战、如何评估拟合精度,以及与其他技术的结合使用等。</think>### 相机视场中心线拟合方法 在计算机视觉中,通过相机拟合视场中心线(Field of View Center Line)通常涉及以下关键步骤: --- #### 1. **相机标定与几何模型** - **相机内参标定**:确定焦距$f$、主点$(c_x, c_y)$和畸变系数,建立针孔相机模型。例如,图像坐标系到相机坐标系的转换关系为: $$ \begin{bmatrix} u \\ v \\ 1 \end{bmatrix} = \begin{bmatrix} f_x & 0 & c_x \\ 0 & f_y & c_y \\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} X_c/Z_c \\ Y_c/Z_c \\ 1 \end{bmatrix} $$ 其中$(X_c, Y_c, Z_c)$为相机坐标系下的三维点[^1]。 - **外参标定**:获取相机在世界坐标系中的位姿(旋转矩阵$R$和平移向量$t$)。 --- #### 2. **特征点检测** 通过检测场景中的极端点(如边界点)和中心点,构建中心线的几何约束: - **引用方法**:基于自底向上的目标检测,例如通过分组极端点和中心点来推断结构。 - **示例**:在道路场景中,检测车道线边缘点,再拟合中心线。 --- #### 3. **中心线拟合算法** - **几何法**:若已知场景的对称性或几何约束(如平行线),可直接计算中心线方向。例如,两条平行线在图像中的交点对应消失点,中心线可通过消失点和主点确定。 - **优化法**:将问题建模为最小二乘优化。假设检测到一组点$\{p_i\}$,中心线方程为$ax + by + c = 0$,则目标函数为: $$ \min_{a,b,c} \sum_i (ax_i + by_i + c)^2 \quad \text{s.t.} \quad a^2 + b^2 = 1 $$ - **RANSAC**:针对噪声数据,使用随机采样一致性算法鲁棒拟合。 --- #### 4. **多视图融合(可选)** 若有多相机或运动序列,可通过多视几何(如对极几何)提升中心线的三维空间精度。 --- ### 示例代码(单应性变换) ```python import cv2 import numpy as np # 检测特征点(示例:手动输入) points = np.array([[100, 200], [150, 300], [200, 400]]) # 假设为检测到的中心线附近点 # 拟合直线(使用SVD分解) A = np.vstack([points[:,0], np.ones(len(points))]).T U, S, V = np.linalg.svd(A) a, c = V[-1] # 直线方程: a*x + 1*y + c = 0 # 绘制结果 image = cv2.imread("image.jpg") height, width = image.shape[:2] x0, y0 = 0, int(-c) x1, y1 = width, int(-a*width - c) cv2.line(image, (x0, y0), (x1, y1), (0,255,0), 2) ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值