首页 > 编程知识 正文

顶刊TPAMI 2021!南开大学提出深度霍夫变换:语义线检测新方法

时间:2023-05-05 17:02:41 阅读:182066 作者:679

Deep Hough Transform for Semantic Line Detection主页: https://mmcheng.net/dhtline/

论文: http://mftp.mmcheng.net/papers/21p ami-DHT-line.pdf

代码: https://github.com/hanq er/deep-Hough-transform

resnet50开始,型号104米。

南开大学计算媒体实验室在机器学习首页IEEE TPAMI上发表论文,提交”深度rydtn变换“ (deep hough transform, 简称 DHT),通过对深度特征进行rydtn转换,兼顾了CNN的特征学习能力和rydtn转换的效率。 在这篇论文中,包含室内/室外场景的大型语义线检测数据集 NKL (NanKaiLines)NKL数据集有6,500幅图像和1万条以上的语义标记,是该领域目前最大的公开数据集。

本文第一作者是原南开大学博士生,现为腾讯优图实验室魔幻之楼研究员; 通讯作者是南开大学dz教授。 南开大学硕士研究生淡定钢笔是文章共同第一作者。

语义线

检测图像中的直线(线段)是一个历史悠久的计算机视觉问题,图像中的线结构是一种有用的中间层表示,在人类视觉中从底层到上层的语义信息转换中起着重要的作用[1]。

自然画中的“意义线”是指不同区域的分割线、建筑物的中心轴线等能够描绘出图像内容结构的直线。 语义线检测在摄影构图[ 2,3 ]、图像处理[4]等下游任务中得到了广泛的应用。 如图1所示,如果将图像中的意义线放在照片的黄金分割上,就能得到比位置视觉效果更好的图像[2]。

图1 :左图为原始照片,右图为将语义线置于画面黄金比例的位置,可以得到视觉效果较好的照片[2]。

深度rydtn变换算法

rydtn变换[6]是一种典型的直线检测方法,通过将任意直线变换到参数空间,将图像空间的线检测问题简化为参数空间的点检测问题。 例如,平面上的任何直线都可以用y=k x b表示。 因此,任何直线都可以表示为参数空间中的一个点(k,b )。

在传统的rydtn变换中,首先需要利用canny算子等边缘检测算法对图像进行边缘检测,在边缘检测的结果上进行rydtn变换,最后在变换空间中寻找局部最大值来检测直线。

直线参数化

为了进行rydtn变换,首先定义直线参数化的规则。

图2 :参数化直线

如上图所示,对于任意直线,将其角度theta和直线到原点的距离r作为直线的参数,具有可以参数化任意角度/位置的直线的优点。 (y=kx b无法参数化平行于y轴的直线。

在深度特征上进行rydtn变换

如图3所示,对于一个输入图像,首先通过CNN特征提取器得到空间特征x,“深度rydtn变换”扫描图像中所有可能的直线,沿着该直线将特征聚合为参数空间中的对应点。 在实现中,使用简单的求和操作来实现特征聚合。

图3 (左)沿着深度rydtn变换图像空间中的直线将特征“聚合”到参数空间中的一个点。

通过深度rydtn变换,原始特征空间x上的直线对应于参数空间y上的点。 在许多视觉任务中,特征的上下文对于检测结果非常重要,由于深度rydtn变换将直线转换为点,因此提取相邻直线的上下文信息与在参数空间中提取相邻点的特征相对应,将内容转换为点

图4 :图像空间的线对应参数空间的1点,通过简单的33卷积就可以提取中心橙色线的上下文信息。

如图4所示,从原图像中提取橙色线条上下文信息需要复杂的索引操作; 在进行rydtn变换之后,可以通过简单的3x3卷积来提取中心线周围的直线的特征。

总的来说,DHT 算法有如下几个优点:

可实现高度并行化,与基于目标检测的SLNet方法相比加速了近20倍;

极大值以外不需要抑制;

高效的上下文直线信息提取;

实验结果

定量对比

论文主要在SEL和NKL数据集上进行实验,比较了HED边缘检测rydtn变换、SLNet两种语义线检测方法。 实验结果表明,深度rydt

n变换算法检测精度显著高于其他两种算法,同时大幅提高检测速度。

       表1:不同方法在 SEL 和 NKL 数据集上的定量对比。

 

表1记录了不同方法在 SEL 和 NKL 数据集上的定量对比。CD,EMD 和 EA 分别指的是 Chamfer distance, earth-mover's distance 和 EA-score 三种评价直线之间相似度的度量。Avg P, R, F分别表示平均 precision,recall 和 F-measure。

 

可视化结果展示

 

 

上图是SEL数据集上不同方法检测结果的可视化对比,最后一行为 ground-truth。

 

推理耗时对比

 

DHT算法不仅能取得更高的检测精度,同时也能极大地降低检测耗时。这主要归功于 DHT 算法的高度可并行化。

 

下表统计了不同方法在 Titan XP 显卡上的平均推理耗时,SLNet 最快需要0.447秒,HED+rydtn变换的方法需要0.155秒,而DHT 算法仅需0.020秒。

                

NKL:新的语义线检测数据集

 

在提出深度rydtn变换算法的同时,改论文还同时构建了新的语义线检测数据集 NKL (NanKai Lines)。NKL数据集包含6,500张样本,共有13,148根人工标注的语义线。相比当前最大的语义线检测数据集 SEL,NKL不论是在样本数,标注数目还是场景多样性上都要更丰富。读者可以访问 http://kaizhao.net/nkl 下载和了解 NKL 数据集相关的信息。

       表2:SEL 数据集和 NKL 数据集对比。

 

为了验证 NKL 数据集在图像场景中的多样性,该论文使用在 Places365 数据集上预训练的模型分别对 NKL 和 SEL 数据集中的样本进行推理,预测的分类结果如图5所示:

       图5:SEL和论文新构建的 NKL 数据集的场景分布

 

从图5可以看出,SEL 的大部分样本集中在天空、场地等少数场景,而NKL数据集中样本的分布更为多样化,同时场景类别也更多。

 

使用“计图”框架加速推理

 

该论文同时也提供了基于清华大学自主研发的“计图”(jittor)框架的推理代码,得益于Jittor框架“元算子融合”和“统一计算图”两项新技术,DHT 算发无需任何优化情况下推理速度相比PyTorch 就有显著提升。

 

在 Titan XP 显卡上使用 batch size=4进行前向预测,PyTorch 框架下的 FPS 为 48,而同条件下计图可达到每秒 55 帧。

 

 

[1] J. B. Burns, A. R. qfdfbx, and E. M. Riseman, “Extracting straight lines,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 8, no. 4, pp. 425–455, 1986.

[2] L. Liu, R. Chen, L. Wolf, and D. Cohen-Or, “Optimizing photo composition,” Comput. Graph. Forum, vol. 29, no. 2, pp. 469–478, 2010.

[3] M. Freeman, The photographer’s eye: composition and design for better digital photos. CRC Press, 2007

[4] M.-M. Cheng, X.-C. Liu, J. Wang, S.-P. Lu, Y.-K. Lai, and P. L. Rosin, “Structure-preserving neural style transfer,” IEEE Trans. Image Process., vol. 29, pp. 909–920, 2020.

[5] J.-T. Lee, H.-U. Kim, C. Lee, and C.-S. Kim, “Semantic line detection and its applications,” in Int. Conf. Comput. Vis., 2017, pp. 3229–3237.

[6] R. O. Duda and P. E. Hart, “Use of the hough transformation to detect lines and curves in pictures,” Sri International Menlo Park Ca Artificial Intelligence Center, Tech. Rep., 1971.

[7] Hu, Shi-Min, et al. "Jittor: a novel deep learning framework with meta-operators and unified graph execution." Science China Information Sciences 63.12 (2020): 1-21.

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。