掌桥专利:专业的专利平台
掌桥专利
首页

一种适用于任意角度旋转标注的图像增广方法和装置

文献发布时间:2024-04-18 20:01:23


一种适用于任意角度旋转标注的图像增广方法和装置

技术领域

本申请涉及计算机视觉技术领域,具体涉及一种适用于任意角度旋转标注的图像增广方法和装置。

背景技术

随着人工智能技术和并行计算能力的快速发展,深度学习在目标检测、识别和跟踪等领域得到了广泛应用。高质量的带标注图像数据集是深度学习解决工程问题的基本保障,但是收集和标注图像数据集是一个耗时耗力且代价昂贵的过程,而图像增广技术可以有效解决深度学习基于小样本数据的训练问题。在航拍图像车辆、船舶的检测、跟踪中,为了覆盖场景中可能出现的不同角度目标,通常对标注图像进行旋转来实现数据增广。当前大部分公开的图像数据集都是基于正框标注的,因此对标注图像旋转时利用原始目标框四个顶点坐标,求出旋转之后对应的四个顶点坐标,分别取X方向、Y方向的最小值和最大值作为旋转之后新目标框的左上顶点和右下顶点。但是这种方法只能适应某些特定角度如90°、180°、270°等,当旋转角度为任意角度时会出现旋转后新目标框不能准确贴合实际目标的情况。

发明内容

针对上述现有技术中存在的问题,本申请提出了一种适用于任意角度旋转标注的图像增广方法和装置,有效解决了当前基于正框标注的图像旋转任意角度后出现的新目标框不能准确贴合实际目标的问题,本申请所采用的技术方案如下:

一种适用于任意角度旋转标注的图像增广方法,该方法包括如下步骤:

步骤1、提取出原始图像中目标框对应的子图;

步骤2、对子图进行图像分割,得到子图分割后的二值图像;

步骤3、对分割后的子图进行形态学处理,将孤立的点噪声消除;

步骤4、对经过形态学处理的子图进行连通域标记并记录像素坐标;

步骤5、将连通域内所有像素坐标映射到原始图像上;

步骤6、将映射后的像素坐标进行旋转变化以得到目标像素的新坐标;

步骤7、确定新的目标框左上顶点坐标和右下顶点坐标。

进一步的,在步骤1中,读取原始标签中目标框的位置信息,若原始图像为RGB三通道则需要对子图进行灰度化;根据旋转角度θ计算旋转矩阵M

进一步的,在步骤4中,若提取到多个连通域,只保留像素面积大于等于M的连通域,M为连通域筛选最小面积。

进一步的,在步骤5中,将连通域内所有像素坐标(x,y)映射到原始图像上,采用如下公式:

其中,cut

进一步的,M的选择取决于目标在分割过程中被切分的最小区域所占的像素数目N,即M=N-ξ(0≤ξ≤N)。

进一步的,所述旋转矩阵M

其中,θ表示旋转任意角度。

进一步的,在步骤6中,所有像素坐标(fx,fy)乘以旋转矩阵M

进一步的,所述目标像素的新坐标的计算公式如下:

其中,(x',y')表示目标像素的新坐标。

进一步的,在步骤7中,计算旋转变化之后目标像素的新坐标在X方向、Y方向的最小值(min(x'),min(y'))作为新的目标框左上顶点坐标;旋转变化之后目标像素的新坐标在X方向、Y方向的最大值(max(x'),max(y'))作为新的目标框的右下顶点坐标。

一种适用于任意角度旋转标注的图像增广装置,包括存储器、处理器,所述存储器上存储有计算机程序,其特征在于,所述计算机程序被所述处理器执行时,实现如上述方法步骤。

通过本申请实施例,可以获得如下技术效果:避免直接对原始目标框的四个顶点进行旋转导致的旋转后新目标框不准确的问题,有效解决了当前基于正框标注的图像旋转任意角度后出现的新目标框不能准确贴合实际目标的问题。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为车辆目标的原始红外图像及标签示意图;

图2为原始红外图像及标签顺时针旋转58°后的示意图;

图3为原始红外图像及标签的目标框内子图;

图4为经过图像分割后的目标框内子图;

图5为经过形态学处理的目标框内子图;

图6为旋转58°后目标的标注结果示意图;

图7为图像增广方法的流程示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本申请保护的范围。

本申请针对现有技术中存在的问题,提出了一种适用于任意角度旋转标注的图像增广方法,该方法不再直接对原始目标框的四个顶点进行旋转变化,而是对原始目标框内的图像进行分割,得到目标的连通域,并对目标连通域内所有像素点坐标进行旋转变化,最后计算旋转之后的像素点在X方向、Y方向的坐标最小值和最大值作为新目标框的左上顶点坐标和右下顶点坐标。该方法包括如下步骤:

步骤1、提取出原始图像中目标框对应的子图;

在上述步骤中,读取原始标签中目标框的位置信息,若原始图像为RGB三通道则需要对子图进行灰度化;根据旋转角度θ计算旋转矩阵M

其中,θ表示旋转任意角度;

步骤2、对子图进行图像分割,得到子图分割后的二值图像;

在上述步骤中,可以根据子图对比度、直方图分布等先验知识采用阈值分割、显著性分割等不同的图像分割方法;

步骤3、对分割后的子图进行形态学处理,将孤立的点噪声消除;

在上述步骤中,进行形态学处理,先腐蚀后膨胀。

步骤4、对经过形态学处理的子图进行连通域标记并记录像素坐标;

在上述步骤中,对经过形态学处理的子图进行连通域标记并记录所有连通域内像素坐标(x,y);若提取到多个连通域,只保留像素面积大于等于M的连通域,M为连通域筛选最小面积;其中,M的选择取决于目标在分割过程中被切分的最小区域所占的像素数目N,即M=N-ξ(0≤ξ≤N);

步骤5、将连通域内所有像素坐标映射到原始图像上;

在上述步骤中,将连通域内所有像素坐标(x,y)映射到原始图像上,采用如下公式:

其中,cut

步骤6、将映射后的像素坐标进行旋转变化以得到目标像素的新坐标;

在上述步骤中,所有像素坐标(fx,fy)乘以旋转矩阵M

其中,(x',y')表示目标像素的新坐标;

步骤7、确定新的目标框左上顶点坐标和右下顶点坐标;

在上述步骤中,计算旋转变化之后目标像素的新坐标在X方向、Y方向的最小值(min(x'),min(y'))作为新的目标框左上顶点坐标;旋转变化之后目标像素的新坐标在X方向、Y方向的最大值(max(x'),max(y'))作为新的目标框的右下顶点坐标。

下面结合具体的示例来对本申请的图像增广方法进行详细介绍,包括:读取原始的单通道红外图像和标签,图像大小为640×480。图1中绿色矩形表示目标框位置,左上角坐标(157,97),右下角坐标(217,131),以顺时针旋转58°为例:

(1)根据旋转角度θ=58°计算旋转矩阵M

(2)提取目标框内的子图,如图3所示。对子图进行图像分割,可以根据子图对比度、直方图分布等先验知识采用阈值分割、显著性分割等不同的图像分割方法。本例中场景相对简单,目标区分度较好,采用阈值分割方法得到子图分割后的二值图像,如图4所示。

(3)对分割后的子图进形态学处理如形态学闭运算,将孤立的点噪声消除,如图5所示。

(4)对经过形态学处理的子图进行连通域标记并记录所有连通域内像素坐标(x,y)。若提取到多个连通域,只保留像素面积大于等于M的连通域,M的选择取决于目标在分割过程中可能被切分的最小区域所占的像素数目N,即M=N-ξ(0≤ξ≤N)。本例中由于目标灰度值一致性较好,与背景有较好的区分度,所以目标在分割过程中基本整体保留。因此只有一个连通域。

(5)对连通域内所有像素坐标均加上目标框子图在原始图像中左上点坐标(157,97)得到连通域内所有像素在原始图像上的坐标(fx,fy)。

(6)连通域内所有像素的原始坐标(fx,fy)乘以旋转矩阵M

(7)计算旋转变化之后目标像素的新坐标在X方向、Y方向的最小值作为新的目标框左上顶点坐标(384,190);旋转变化之后目标像素的新坐标在X方向、Y方向的最大值作为新的目标框的右下顶点坐标(435,244),坐标旋转之后的结果如图6所示。

综上所述,本申请通过对原始目标框内的目标进行分割,得到目标连通域,并对目标连通域内所有像素点坐标进行旋转变化,最后计算旋转之后的像素点在X方向、Y方向的坐标最小值和最大值作为新目标框的左上顶点坐标和右下顶点坐标。对于样本数量很少、目标角度固定的图像数据集,使用本申请可以产生大量新的训练样本,实现图像场景中可能出现的不同角度目标的全覆盖,有效节约了收集和标注图像数据集带来的时间、人力、资金等成本。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

相关技术
  • 复合负极材料及其制备方法、锂离子二次电池负极极片和锂离子二次电池
  • 一种负极片及含有该负极片的金属锂电池
  • 负极集流体、负极极片、锂离子二次电池及制备方法
  • 负极粘结剂、负极极片与锂离子二次电池
  • 一种二次电池极片,其制备方法及使用该极片的二次电池
  • 负极用组合物、全固态二次电池用负极片及全固态二次电池以及全固态二次电池用负极片的制造方法或全固态二次电池的制造方法
  • 负极电极、锂离子二次电池、锂离子二次电池用负极电极的制造方法、以及锂离子二次电池用负极电极片的制造方法
技术分类

06120116549243