懒惰拖拽:触摸屏上的高效边界框绘制

懒惰拖拽:触摸屏设备上轻松绘制边界框

摘要

拖拽矩形框可以说是选择整个对象最直观且最受欢迎的用户界面方法之一。然而,传统拖拽方法在触摸屏设备上难以直接应用。本文提出了一种更便捷、更“懒惰”的适用于触摸屏设备的边界框(BB)绘制方法。所提出的边界框绘制方法称为懒惰拖拽(Lazy Dragging),旨在以交互速度生成准确的边界框结果。为此,懒惰拖拽分为两个阶段:(i)首先通过基于图的分割过滤掉明显的非边界区域;(ii)然后利用基于边缘特征的随机森林从剩余候选边中选出最优的四条框边。在第二阶段中,采用了基于全局和局部边缘的边界检测以及这两种方案的组合方法。本文还提出一个可选阶段,通过提供隐形磁性引导线来简化并进一步优化用户的精细调整操作。该技术可将用户的触摸引导至最近的超像素边界。在真实世界数据集上的大量实验表明,懒惰拖拽能够在准实时条件下显著提升输入边界框的质量,从而实现对小型触摸屏设备上的轻松对象选择。

索引术语 —边界框优化,拖拽,GrabCut,图形用户界面,目标定位

I. 引言

拖拽边界框(BB)是一种图形用户界面,广泛用于在配备显示设备的消费类设备上指定目标对象。边界框绘制主要包含三个步骤:指向、拖拽和放置。这些步骤对用户而言直观且自然。由于其操作简单,许多消费类设备在图像编辑功能中集成了该功能,例如裁剪、对象抠图和对象分割[1]。在这些图像编辑应用中,tightness对边界框的效果具有显著影响算法性能。例如,对于对象分割,coarse(或封闭不精确)的边界框会导致前景/背景颜色模型不准确,显著影响分割性能[2]。因此,以往的基于边界框的分割算法(如GrabCut[1]和HumanSeg[2])需要紧密(或非粗糙)的边界框输入。在这些算法的实验中,边界框输入来自真实标注(GT)或与真实边界框高度重叠。

然而,仔细考虑点拖放任务的每一步,这绝非轻而易举。对用户而言,尤其是对老年人来说,准确定位虚拟矩形的左上和右下顶点将非常麻烦[3]。即使是普通成年用户也容易出错,需要多次尝试才能完成令人满意的矩形边界框。当在智能手机等小型设备上采用这种输入交互方式时,情况会更加糟糕。因为在拖拽边界框时,手指指尖反而会遮挡屏幕上的指向区域。因此,在实际操作中,绘制紧密的边界框是一项需要额外时间和精力的精细任务。

本文提出了一种简单的边界框绘制方法,即懒惰拖拽,以帮助用户在触摸屏设备上准确绘制边界框。该方法基于两个观察结果如下:(i) 对边界框每侧周围的小区域进行过分割,可有效减少搜索区域和误报;(ii) 在边界框边界周围全局和局部均展现出显著且独特的边缘模式,可用于学习用于边界框优化的鲁棒推理模型。本文的主要贡献如下:

  1. 所提出的搜索区域缩减方法和基于鲁棒边缘的Random Forest(RF)回归[6]在移动处理器上实现了约0.2秒的快速响应时间。
  2. 懒惰拖拽适用于多种类型的物体,无需重新训练,并能以不同范围的IoU(交并比)改善不同的边界框。
  3. 通过仅使用边界框标注的半监督学习方法,识别并学习了边界框边界与物体轮廓接触点周围的详细边缘模式,节省了获取像素级精确标注的成本。
  4. 可选的基于超像素的引导有助于进一步的用户调整。该调整过程将在第三节-C中讨论。所提方法的基本使用场景及其真实的优化结果如图1所示。

与初步研究[7]相比,本工作引入了多项改进:首先,在第三节中首次提出了描述详细边缘的patch特征及相关半监督学习技术,并在第四节中验证了其有效性。其次,第三节和第四节分别解释了更详细的观察结果和实现考虑。第三,本研究在现成的移动设备上,针对不同紧密程度的各种输入边界框,与三种可比较的方法进行了大量实验。最后,图6中的多个示例结果清晰地展示了懒惰拖拽的视觉质量。

本文其余部分组织如下:第二节简要回顾了与边界框优化相关的文献。第三节阐述了所提出的懒惰拖拽方法。我们的实验结果和结论分别在第四节和第五节中给出。

示意图0

II. 相关工作

边界框优化(或边界框定位)不仅是一项有用的技术,也是消费类设备中的一个引人关注的研究课题。因此,该技术已在各种应用中得到研究[8],[9]。然而,目前尚缺乏专门针对图像编辑应用(如对象选择、对象抠灰或图像裁剪)的充分的边界框优化研究。本节首先探讨“边界框优化”与“基于拖拽的用户交互”之间的关系,然后回顾两项近期的工作。

在用户偏好快速简便界面的消费类触摸屏设备上,采用商业图形编辑器中复杂的迭代方法[10]是不合适的。这些方法通常需要大量的用户干预。因此,更好的选择是基于拖拽的直观分割方法,例如GrabCut[1]。由于GrabCut仅需极少的用户干预即可提取前景掩码,因此已被广泛应用于许多图像处理工具,甚至在移动设备[11]上也得到了应用。

有趣的是,GrabCut与边界框优化之间存在一个“先有鸡还是先有蛋”的问题:如果GrabCut表现良好,它就能够利用生成的像素级精确掩码来产生一个理想的边界框;然而,GrabCut从一开始就需要一个紧密输入边界框,以避免歧义并获得令人满意的分割(以及边界框)结果。第四节的实验表明,所提出的懒惰拖动方法在边界框优化性能方面优于GrabCut。

传统上,边界框优化研究主要围绕目标检测展开,其目标主要是预测目标边界框。Felzenszwalb等[12]提出了边界框回归(或边界框预测)作为其可变形部件模型(DPM)检测器的后处理步骤。他们的边界框回归方法基本上基于在训练图像上学习到的线性模型。然而,边界框回归在生成非常紧密的边界框方面表现不佳,因为它未考虑被检测目标的视觉特征。另一方面,在检测候选框(又称候选窗口)的研究中,Chen等[8]提出了MTSE(多阈值跨越扩展),用于优化由其他候选框生成器产生的数千个候选边界框。在此方法中,候选边界框预期很可能包围图像中的目标,而MTSE通过利用超像素跨越线索对其进行优化。从这个意义上讲,MTSE可以自由使用各种扩展阈值并无不妥。然而,在面向用户交互的单一边界框优化问题中,如何确定单一扩展阈值仍是一个开放问题。与前述方法不同,[8],[12],本文聚焦于提升消费设备操作的用户便利性,通过基于粗略指定目标的超像素和边缘信息,筛选出最有希望的边界框。

示意图1

III. 所提出的方法

本节将详细描述懒惰拖拽的细化过程。为简便起见,仅以上边界框边为例进行说明。通过90、180和270度的简单旋转,相同的过程流程可应用于其余三边。所提方法的整体流程如图2所示。

给定一个初始边界框(l, t, r, b)B = (Bl, Bt, Br, Bb),其中l、t、r和b分别表示边界框的左、上、右、下坐标,上侧的搜索区域(l, t, r, b)R = (Rl, Rt, Rr, Rb)确定如下:

$$
R_l = B_l - w/P \
R_t = B_t - h/P \
R_r = B_r + w/P \
R_b = B_b + h/P
$$

其中w和h分别为B的宽度和高度,P为缩放因子(通常为P=4)。

A. 预处理阶段:搜索区域缩减

搜索区域缩减的过程如图3所示。作为预处理步骤,对给定的R进行快速全局平滑(FGS)滤波[13](图3b)。FGS在去除压缩伪影并生成更可靠的超像素方面有效,同时保留重要的边缘细节。然后,通过基于图的分割[4]对区域R进行过度分割,生成不规则超像素(图3c)。假设与左侧、顶部和右侧相邻的超像素为背景,所有背景超像素均被移除(图3d)。如果某些未确定的超像素被背景超像素隔离而孤立存在,则也将其归类为背景。在缩小搜索范围后,随机森林回归器在从峰值点中筛选出最有希望的边界框边界时起着决定性作用。

示意图2

剩余的超像素。事实上,所提出的搜索区域确定阶段旨在生成边界候选。这种级联方法可以在类似于近期检测候选框研究的背景下理解,后者旨在减少目标检测的计算开销和误报[14],[15]。

B. 主阶段:基于边缘的边界检测

在检测候选框的研究中,[14],[15],结构边缘(SE)经常被用来生成极有可能包含物体的检测候选框。例如,Edge Boxes是最流行的检测候选框方法之一,它使用SE来识别定义良好的闭合边缘。Edge Boxes根据所包含的边缘数量生成有希望的候选窗口。类似地,本文的方法也采用SE来识别有希望的边界框边界,但方式不同。通过对四个边界框边界的提议进行全局和局部分析,利用鲁棒的基于边缘的随机森林回归实现。基于边缘的边界检测的详细说明将在接下来的小节中提供。

1)全局基于边缘的边界检测:条形特征

边界框优化问题可以简单地重新表述为在一维范围[Rb, Rt]中选出最具潜力的边界的y坐标的问题。显然,真实值y坐标附近的小区域表现出一些独特的边缘模式,使其能够成为真实值边界框的边界。这实际上正是人类能够准确绘制边界框的原因。所提出的全局边缘检测方法在搜索范围的每个y坐标处识别这些横向延伸的特征,称为条形特征。为了在训练和测试阶段生成归一化特征表示,将搜索区域R的宽度调整为64像素。该经过仿射变换的R记为R̂。在R̂中的水平1像素线L及其相邻的N条线共同构成L的条形区域,记为A_L^64×7。当L为正边界或负边界时,L的条形区域A_L^64×7分别特别记为GTA或NGA。

我们首先在VOC 2007训练数据集的GTA和NGA上进行了K-means聚类,以进行比较研究[17]

示意图3

GTA的边缘模式特征。如图4中全局边缘的平均图像所示,可以合理假设GTA在其上侧未保留较强的边缘成分。值得注意的是,即使在正样本边界框边界之间,边缘形状和位置也存在多种变化。在图4a的上方五幅图像中,不同区域的小范围部分观察到钟形边缘;但在底部图像中,较宽区域范围内观察到水平边缘成分。

为了应对这些多类正向条形,采用随机森林回归来预测成为GTA的可能性。随机森林因其在多分类问题中表现出的高效性以及利用决策树集成实现快速推理速度而著称。其回归通过平均多个决策树的所有响应来实现,具体如下:

$$
P(bd|x) = \frac{1}{T} \sum_{t=1}^{T} P_t(bd|x)
$$

其中,T为树的数量,x为输入特征向量,P_t(bd|x)表示第t棵树对x是否为正边界bd的特征向量所作出的判断。为了为随机森林提供丰富且具有区分性的条形特征,计算了SE边缘图、其梯度幅值图以及对应的O-通道梯度方向直方图,从而在条形区域中生成总共2O+个特征图,其中O为方向数量。每个条形区域A_L^64×7,(L ∈ [Rt, Rb])成为一个待评估的样本。如上所述,每个条形样本将其包含的总共1+N行纳入其特征集,导致总特征维度为64 × (1+N) × (2+O)。每个样本的得分根据其到正边界bd的距离进行分配,得分范围为[0,1](越近得分越高)。在训练随机森林模型时,将每个样本及其水平翻转版本输入随机森林。负样本从每三个非边界行中采集。在测试时,原始样本和翻转样本均由训练好的随机森林回归器进行评估,最终得分为两者的平均值。这些鲁棒特征和数据增强方法有助于随机森林回归器捕捉在典型边界框边界周围观察到的不同类型的边缘。

在本节之后将介绍一种更改进的边界框优化方法。即便如此,如表II所示,这种全局基于边缘的边界检测本身仍是一种具有成本效益的边界预测方法。它表现出快速的响应时间,并且优化性能远优于其他评估方法,但基于块特征的方法除外,后者将在下文介绍。

2)基于局部边缘的边界检测:块状特征

在第三节-B1中,主要问题是预测边界线在y坐标上的位置。为了解决这一垂直的一维问题,y坐标上的每个样本都应包含所有水平(x方向)像素的信息。这也是在第三节-B1中将R的宽度归一化为64像素的另一个原因。然而,一些重要的视觉特征可能会丢失或产生干扰刺激。该过程可能包含部分内容。事实上,通常只有物体的局部区域主要决定了包围边界框(BB)的边界。换句话说,除了检查全局的64×(1+N)条形区域外,考虑围绕接触点的精确详细16×16像素区域,即局部块P_16×16,也是一种有意义的方法。因此,与第三节-B1不同,第三节-B2现在通过利用16×16 P的局部特征,在离散二维空间中估计(x,y)坐标。

现在明确了块状特征的目的,需要收集正样本和负样本16×16 P,分别记为GTP和NGP,以训练推理模型。作为目标检测数据集,PASCAL VOC 2007数据集[17]主要提供物体图像及其边界框标注。它仅包含少量像素级掩码标注,更糟糕的是,这些有限标注的像素级精度有时并不理想。通常情况下,具备像素级精确标注的数据集十分稀缺,因为相比边界框标注,它们需要更多熟练标注人员进行繁琐、费力且耗时的工作。因此,本研究通过半监督学习提取所需的块状数据,并训练局部边缘的推理模型。为此,还通过第三节-A中描述的方法在训练图像上计算边界候选。幸运的是,边界候选区中心已以(x,y)坐标的形式生成。对于生成的候选区,假设距离其真实边界(GT border)最近的候选区即为GTP的中心,前提是它们之间的距离小于E像素(通常为E=2)。因此,围绕选定的候选区提取GTP。也就是说,假设真实值边界框(GT BB)及其包围的物体在选定的边界候选处相切接触。还需注意,边界候选位于GTP中的(7,7)位置,并非完全居中,而是略微偏向左上角(坐标从零开始)。通过这种方式,可以将更多的边缘成分纳入

示意图4
示意图5

IV. 实验结果

懒惰拖拽在VOC 2007[17]数据集上通过真实值与优化后的边界框之间的平均交并比分数进行了评估。该数据集包含20个物体类别,涉及的边界框和图像总数列于表I中。为了准确地将我们的方法与其他方法进行比较,排除了被图像边界截断的一些物体边界框。在特征生成中,梯度方向数O和相邻线条数N通过经验确定为O=4和N=6。对于随机森林回归,树的数量T和叶子节点的最小样本数F分别设置为T=50和F=2。

在(3)中,通过在训练数据集上使用支持向量机训练,确定了bx和px的重要性(或置信度)权重α, β,其值分别为α=0.64和β=4.04。通过这些相对重要性权重发现,采用半监督学习的局部边缘检测方案具有更高的置信度。

将真实边界框在边长的±100%/P范围内添加均匀随机噪声后的扰动版本用作初始输入边界框。实验仅评估了所评估方法的初始结果,尚未接受进一步的用户操作。

在文献中,如第二节所述,针对自然照片中用户提供的边界框进行优化以选择对象的研究很少。我们提出了三种可比较的方法,分别使用GrabCut[1]、Edge Boxes[16]和MTSE[8]。我们推测,如果提供适度放大的边界框,GrabCut的分割结果也可能产生假设的边界框。理论上,Edge Boxes在给定放大后的边界框时也可以生成紧密贴合目标的边界框,因为可以根据质量分数选择最有希望的边界框。我们在一千个候选框中筛选出质量分数最高且交并比分数高于0.6的候选边界框。在这些实验中,提供给GrabCut和Edge Boxes的放大输入边界框的确切尺寸被设置为与懒惰拖拽的搜索区域相同,该尺寸由公式(1)确定。本工作引入了另一种使用MTSE[8]的可比较方法,以区别于先前的工作[7]。通过使用多个扩展阈值δ,我们进行了一系列实验,以了解其在改进用户提供的边界框方面的性能,而不是用于优化数千个边界框提议。所有评估的方法(包括懒惰拖拽)均使用C++实现,所有实验均在2.1GHz移动处理器上进行。

表II报告了所考察方法在边界框优化方面的实验结果。表II底部“懒惰拖拽”旁边的文本(“B”、“P”、“C3”和“C4”)表示条形特征与块特征之间的四种不同组合方法(仅条形特征、仅块状特征,以及分别通过公式(3)和(4)的组合)。所有对比方法(包括用于边界框优化的GrabCut变体)均未能有效收紧扰动后的边界框。这表明,对于用户提供的松散边界框,边界框优化任务具有挑战性。另一方面,懒惰拖拽的所有变体均一致地为每组不同紧密度的边界框生成了明显更紧凑的边界框(参见表II底部)。这意味着所提出的懒惰拖动方法在这些实验中对用户提供的边界框优化表现出色。特别是,表II最下行中使用(4)的懒惰拖动方法表现最佳。我们还认为,第三节-C中解释的隐形磁性引导线有助于以最少的用户操作轻松提高边界框的紧密度。

同样值得关注的是懒惰拖拽的快速计算速度。由于所有版本的懒惰拖拽在移动设备上的平均响应时间均低于0.23秒,因此它们能够以交互速度处理用户请求。所提出的算法比其他方法更快,除了MTSE,其针对单个边界框的优化能力尚不明确。MTSE实际上是为多个边界框提议而设计的,因此可能需要一种新算法来确定单个边界框优化的合适扩展阈值δ。还应注意的是, 仅块状特征 条形特征与块状特征结合 这两种方法的响应时间几乎相同。一旦生成了块状特征,条形特征便可轻松生成。使用已计算的边缘图,计算成本可忽略不计。

V. 结论与未来工作

本文提出了一种便捷、高效且快速的优化方法——懒惰拖拽,用于收紧粗略绘制的边界框,从而在消费类触摸屏设备上实现快速简便的图像编辑。懒惰拖动方法包含三个阶段。第一阶段,在边界框周围进行过度分割,有效缩小搜索区域并减少误报,使其能够在低功耗消费设备上部署。在下一阶段,基于鲁棒特征的随机森林回归器确定最有希望的边界框。此处的随机森林回归器使用全局(条形)和局部(块)边缘特征进行训练。对于局部边缘特征,通过新引入的半监督块学习方法,从粗略边界框标注中获得了像素级精确分割标注。当用户试图手动修改初始结果时,可选阶段中的隐形磁性引导线有助于完成最终调整。在公开可用的真实世界数据集上进行的大量实验表明,懒惰拖拽方法最大化了传统边界框绘制在触摸屏设备上的效用。

在未来的工作中,我们希望引入目标性度量来全局确定框内单个对象的存在。本研究的一个弱点是,懒惰拖拽对边界框的每条边分别进行处理。我们将通过利用给定边界框内部及周围的物体性信息,全局且同时考虑边界框的四条边。此外,将用于解决字符识别问题的相同方法应用于边界框优化问题也将是有趣的。正如图5所示,通过小块区域进行边界检测任务在某种程度上与手写字符识别[21]类似。我们还希望利用所提出方法的定位能力,优化现有研究(如目标检测和目标候选生成)中的边界框结果。

表I 从VOC[17]中选择的边界框和图像数量

BBs 图像
训练 11268 7163
测试 5347 3840

表II 在VOC 2007测试数据集上的平均IoU和处理时间[17]

方法 输入平均交并比 (P=4) 处理时间 (秒)
0.669 0.720 0.750
GrabCut[1] 0.476 0.508 0.533 1.041
Edge Boxes[16] 0.671 0.698 0.716 0.293
MTSE 8 0.506 0.506 0.056 0.104
MTSE 8 0.529 0.579 0.618 0.104
MTSE 8 0.598 0.629 0.654 0.104
MTSE 8 0.666 0.703 0.728 0.104
MTSE 8 0.673 0.719 0.752 0.104
懒惰拖拽(B) 0.721 0.760 0.790 0.129
懒惰拖拽(P) 0.726 0.768 0.798 0.218
懒惰拖拽(C3) 0.728 0.769 0.799 0.222
懒惰拖拽(C4) 0.734 0.774 0.804 0.222
**项目名称:** 基于Vue.js与Spring Cloud架构的博客系统设计与开发——微服务分布式应用实践 **项目概述:** 本项目为计算机科学与技术专业本科毕业设计成果,旨在设计并实现一个采用前后端分离架构的现代化博客平台。系统前端基于Vue.js框架构建,提供响应式用户界面;后端采用Spring Cloud微服务架构,通过服务拆分、注册发现、配置中心及网关路由等技术,构建高可用、易扩展的分布式应用体系。项目重点探讨微服务模式下的系统设计、服务治理、数据一致性及部署运维等关键问题,体现了分布式系统在Web应用中的实践价值。 **技术架构:** 1. **前端技术栈:** Vue.js 2.x、Vue Router、Vuex、Element UI、Axios 2. **后端技术栈:** Spring Boot 2.x、Spring Cloud (Eureka/Nacos、Feign/OpenFeign、Ribbon、Hystrix、Zuul/Gateway、Config) 3. **数据存储:** MySQL 8.0(主数据存储)、Redis(缓存与会话管理) 4. **服务通信:** RESTful API、消息队列(可选RabbitMQ/Kafka) 5. **部署与运维:** Docker容器化、Jenkins持续集成、Nginx负载均衡 **核心功能模块:** - 用户管理:注册登录、权限控制、个人中心 - 文章管理:富文本编辑、分类标签、发布审核、评论互动 - 内容展示:首页推荐、分类检索、全文搜索、热门排行 - 系统管理:后台仪表盘、用户与内容监控、日志审计 - 微服务治理:服务健康检测、动态配置更新、熔断降级策略 **设计特点:** 1. **架构解耦:** 前后端完全分离,通过API网关统一接入,支持独立开发与部署。 2. **服务拆分:** 按业务域划分为用户服务、文章服务、评论服务、文件服务等独立微服务。 3. **高可用设计:** 采用服务注册发现机制,配合负载均衡与熔断器,提升系统容错能力。 4. **可扩展性:** 模块化设计支持横向扩展,配置中心实现运行时动态调整。 **项目成果:** 完成了一个具备完整博客功能、具备微服务典型特征的分布式系统原型,通过容器化部署验证了多服务协同运行的可行性,为云原生应用开发提供了实践参考。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值