图像场景理解的方法及装置
技术领域
本发明涉及视频监控领域,更具体地涉及一种图像场景理解的方法及装置。
背景技术
深度学习(Deep Learning)的概念源于人工神经网络的研究。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。在计算机视觉及相关领域,新兴的深度学习方法相比过去传统方法有了长足的进步。卷积神经网络(Convolutional neural network,CNN)是一种深度的监督学习下的机器学习模型,是深度学习的核心操作,它将卷积核(Kernel)与原图像输入进行卷积操作得到输出。
场景理解在视频监控领域有着重要的应用。传统的场景理解系统往往通过全卷积网络(Fully Convolutional Network)来实现,但是这种实现方式没有考虑到有效感受野(receptive field)的局限性。一般而言,全卷积网络的理论感受野是整张图片,但实际上的有效感受野往往是一个有限的区域。在这个有限区域之内的物体能够被很好的理解出来,但位于这个有限区域之外的物体则会出现较大的误差。例如:一辆小轿车可以被很好的分割理解出来,但一辆大货车可能因为体积原因,被理解为不同的物体组合。另一方面,传统方法对于物体边界存在着很大的误判,例如靠着车的人会有一部分被理解为车身,可见,现有的方法会导致系统整体的性能下降。
发明内容
考虑到上述问题而提出了本发明。本发明提供了一种图像场景理解的方法,能够提升系统的整体性能。
根据本发明的第一方面,提供了一种图像场景理解的方法,包括:
获取场景的原始图像;
对所述原始图像进行卷积操作,得到卷积输出;以及
通过全局卷积网络对所述卷积输出进行处理,得到处理结果;
对所述处理结果进行边界精炼,得到图像场景理解的结果。
示例性地,所述对所述原始图像进行卷积操作,得到卷积输出,包括:
通过N个卷积神经网络对所述原始图像进行卷积操作,得到N路卷积输出;
其中,所述N路卷积输出的空间维度两两互不相等,且所述N路卷积输出的空间维度均小于所述原始图像的空间维度,N为大于1的正整数。
示例性地,所述通过全局卷积网络对所述卷积输出进行处理,得到处理结果,包括:
通过N个所述全局卷积网络对所述N路卷积输出分别进行处理,得到与所述N路卷积输出一一对应的N个处理结果。
示例性地,所述通过N个所述全局卷积网络对所述N路卷积输出分别进行处理,得到与所述N路卷积输出一一对应的N个处理结果,包括:
对所述N路卷积输出中的第i路卷积输出进行多路卷积,将所述多路卷积的输出进行相加,并将所述相加的结果确定为与所述第i路卷积输出对应的第i个处理结果;
其中,i的取值范围为1至N。
示例性地,所述对所述处理结果进行边界精炼,得到图像场景理解的结果,包括:
对所述N个处理结果分别进行边界精炼,得到与所述N个处理结果一一对应的N个边界精炼结果;
根据所述N个边界精炼结果,得到所述图像场景理解的结果。
示例性地,所述对所述N个处理结果分别进行边界精炼,得到与所述N个处理结果一一对应的N个边界精炼结果,包括:
对所述N个处理结果中的第i个处理结果进行修正,将所述修正后的结果与所述第i个处理结果进行结合,得到第i个边界精炼结果;
其中,i的取值范围为1至N。
示例性地,所述根据所述N个边界精炼结果,得到所述图像场景理解的结果,包括:
将所述N个边界精炼结果进行融合操作,得到所述图像场景理解的结果。
示例性地,在所述获取所述原始图像之前,所述方法还包括:
训练所述全局卷积网络。
根据本发明的第二方面,提供了一种图像场景理解的装置,包括:
获取模块,用于获取场景的原始图像;
卷积模块,用于对所述获取模块获取的所述原始图像进行卷积操作,得到卷积输出;
全局卷积网络模块,用于通过全局卷积网络对所述卷积模块得到的所述卷积输出进行处理,得到处理结果;以及
边界精炼模块,用于对所述全局卷积网络模块得到的所述处理结果进行边界精炼,得到图像场景理解的结果。
示例性地,所述卷积模块,用于:
通过N个卷积神经网络对所述原始图像进行卷积操作,得到N路卷积输出;
其中,所述N路卷积输出的空间维度两两互不相等,且所述N路卷积输出的空间维度均小于所述原始图像的空间维度,N为大于1的正整数。
示例性地,所述全局卷积网络模块,用于:
通过N个所述全局卷积网络对所述N路卷积输出分别进行处理,得到与所述N路卷积输出一一对应的N个处理结果。
示例性地,所述N个全局卷积网络中的第i个全局卷积网络用于:
对所述N路卷积输出中的第i路卷积输出进行多路卷积,将所述多路卷积的输出进行相加,并将所述相加的结果确定为与所述第i路卷积输出对应的第i个处理结果;
其中,i的取值范围为1至N。
示例性地,所述边界精炼模块包括N个边界精炼子模块和融合子模块:
所述N个边界精炼子模块,用于对所述N个处理结果分别进行边界精炼,得到与所述N个处理结果一一对应的N个边界精炼结果;
所述融合子模块,用于根据所述N个边界精炼结果,得到所述图像场景理解的结果。
示例性地,所述N个边界精炼子模块中的第i个边界精炼子模块用于:
对所述N个处理结果中的第i个处理结果进行修正,将所述修正后的结果与所述第i个处理结果进行结合,得到第i个边界精炼结果;
其中,i的取值范围为1至N。
示例性地,所述融合子模块,用于:
将所述N个边界精炼结果进行融合操作,得到所述图像场景理解的结果。
示例性地,所述装置还包括训练模块,用于:训练所述全局卷积网络。
第二方面所述的装置能够用于实现前述第一方面的图像场景理解的方法。
根据本发明的第三方面,提供了一种计算机芯片,该计算机芯片包括处理器和存储器。所述存储器存储有指令代码,所述处理器用于执行所述指令代码,且当所述处理器执行指令代码时,能够实现前述第一方面所述的图像场景理解的方法。
本发明实施例利用全局卷积网络,有效地增大了有效感受野,并进一步利用边界精炼增加了边界的判别性,从而使得系统的整体性能得到有效提升。
附图说明
通过结合附图对本发明实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本发明实施例的电子设备的一个示意性框图;
图2是本发明实施例的图像场景理解的方法的一个示意性流程图;
图3是本发明实施例的图像场景理解的方法的一个示意性流程图;
图4是本发明实施例的图像场景理解的方法的另一个示意性流程图;
图5是本发明实施例的全局卷积网络处理的方法的一个示意性流程图;
图6是本发明实施例的边界精炼处理的方法的一个示意性流程图;
图7是本发明实施例的图像场景理解的装置的一个示意性框图;
图8是本发明实施例的图像场景理解的装置的另一个示意性框图。
具体实施方式
为了使得本发明的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的示例实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例,应理解,本发明不受这里描述的示例实施例的限制。基于本发明中描述的本发明实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。
本发明实施例可以应用于电子设备,图1所示为本发明实施例的电子设备的一个示意性框图。图1所示的电子设备10包括一个或多个处理器102、一个或多个存储装置104、输入装置106、输出装置108、图像传感器110以及一个或多个非图像传感器114,这些组件通过总线系统112和/或其它形式互连。应当注意,图1所示的电子设备10的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备也可以具有其他组件和结构。
所述处理器102可以包括中央处理单元(Central Processing Unit,CPU)1021和/或图像处理单元(Graphics Processing Unit,GPU)1022,或者包括具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制所述电子设备10中的其它组件以执行期望的功能。
所述存储装置104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器1041和/或非易失性存储器1042。所述易失性存储器1041例如可以包括随机存取存储器(Random Access Memory,RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器1042例如可以包括只读存储器(Read-Only Memory,ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现各种期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
所述输出装置108可以向外部(例如用户)输出各种信息(例如图像或声音),并且可以包括显示器、扬声器等中的一个或多个。
所述图像传感器110可以拍摄用户期望的图像(例如照片、视频等),并且将所拍摄的图像存储在所述存储装置104中以供其它组件使用。
示例性地,该电子设备10可以被实现为诸如智能手机、平板电脑、门禁系统的图像采集端等。
本发明实施例中的电子设备可以是视频监控领域的设备,并且本发明实施例对该设备的具体形态不做限定。
图2是本发明实施例的图像场景理解的方法的一个示意性流程图,图2所示的方法包括:
S101,获取场景的原始图像。
在一个示例中,包含场景的原始图像可以为实时采集的图像。例如,该原始图像可以是由摄像头所采集到的视频中的一帧图像或者是由照相机采集到的图片。在其他示例中,包含场景的原始图像也可以为来自任何源的图像。此处,包含场景的原始图像可以为视频数据,也可以为图片数据。
本发明实施例中,原始图像的空间维度可以表示为w×h。作为一例,可以假设该原始图像的空间维度为512×512。该原始图像还可以具有第三维度,例如该第三维度为1(表示对应的图像为灰度图像)或3(表示对应的图像为RGB彩色图像),应该理解的是,根据图像的性质,第三维度的数目还可以为其它的值,本发明对此不限定。
S102,对所述原始图像进行卷积操作,得到卷积输出。
示例性地,可以针对原始图像直接进行卷积操作,得到卷积输出。但是,由于原始图像的维度较大,该操作对处理器等硬件的要求也比较高。
示例性地,S102可以包括:通过N个卷积神经网络对所述原始图像进行卷积操作,得到N路卷积输出。其中,所述N路卷积输出的空间维度(w×h)两两互不相等,且所述N路卷积输出的空间维度均小于所述原始图像的空间维度,N为大于1的正整数。
一般地,卷积输出的形式为张量的形式,因此,可理解,卷积输出的维度为张量的维度。示例性地,卷积输出的维度可以表示为w×h×c,其中第三个维度c表示频道(channel)维度,也可称为信道维度。
举例来说,以N=4为例,即假设通过4个卷积神经网络对所述原始图像进行4路卷积操作得到4路卷积输出,如图3所示,4路卷积操作依次为S1021、S1022、S1023和S1024,且4路卷积输出的维度分别为:128×128×256、64×64×512、32×32×1024、16×16×2048。可见,该4路卷积输出的维度中的空间维度(w维度×h维度(分别为128×128、64×64、32×32、16×16))均小于原始图像的空间维度(w维度×h维度(512×512))。卷积输出的第三维度(c维度)(本例中,为256,512,1024和2048,均表示卷积输出的信道(channel)数目)。
可选地,在S1021之前,还可以对原始图像进行卷积操作,例如,先执行卷积操作0,如图4中的S1020所示,该卷积操作0的输出维度为256×256×64。这样,能够实现卷积输出的维度的逐步变化,从而能够保证该过程的处理精度。
S103,通过全局卷积网络(Global Convolutional Network,GCN)对所述卷积输出进行处理,得到处理结果。
其中,全局卷积网络(GCN)也可以称为全局卷积神经网络(Global ConvolutionalNeural Network,GCNN),本发明对此不限定。
可选地,在S102卷积操作的后端增加全局卷积网络,可以增大有效感受野。在卷积神经网络中,感受野的定义可以为:原始图像中的像素点的变化对于卷积神经网络每一层输出的特征图(feature map)上的影响区域。
示例性地,若S102得到N路卷积输出,S103可以包括:通过N个所述全局卷积网络对所述N路卷积输出分别进行处理,得到与所述N路卷积输出一一对应的N个处理结果。
可见,对于N路卷积输出,可以并行地得到N个处理结果。
举例来说,以N=4为例,即假设为4路卷积操作,如图3所示,那么S103可以包括与4路卷积输出对应的4路全局卷积神经网络处理S1031-S1034。并且,所得到的4个处理结果中,每个处理结果的维度中的w维度和h维度与对应的卷积输出的相应维度一致,每个处理结果的维度中的c维度表示所述全局卷积网络能够识别的对象的种类的数目。也就是说,每个处理结果的维度中的w维度与对应的卷积输出的w维度一致,每个处理结果的维度中的h维度与对应的卷积输出的h维度一致,每个处理结果的维度中的c维度表示所述全局卷积网络能够识别的对象的种类的数目。
作为一个例子,卷积操作1S1021的卷积输出的维度为128×128×256,那么,对应的GCN 1处理S1031的处理结果的维度中,该处理结果的w维度等于对应的卷积输出的w维度,即128;该处理结果的h维度等于对应的卷积输出的h维度,即128;该处理结果的c维度等于所述全局卷积网络能够识别的对象的种类的数目,例如21。从而,GCN 1处理的处理结果的维度为128×128×21。关于GCN 2处理至GCN 4处理的处理结果的维度确定方式与GCN1处理的方式类似,这里不再一一罗列。其中,c维度的值表示所述全局卷积网络能够识别的对象的种类的数目,例如21。应该理解的是,c维度的值可以根据实际应用进行设置,本发明不对此进行限制。
具体地,所述通过N个所述全局卷积网络对所述N路卷积输出分别进行处理,得到与所述N路卷积输出一一对应的N个处理结果,可以包括:对所述N路卷积输出中的第i路卷积输出进行多路卷积,将所述多路卷积的输出进行相加,并将所述相加的结果确定为与所述第i路卷积输出对应的第i个处理结果。其中,i的取值范围为1至N。
应理解,N个全局卷积网络中的每一个都可以包括多条卷积支路以进行多路卷积,其中,每条卷积支路执行对应的卷积运算,其中的多路卷积可以是并行地进行的,并且对多路卷积的数量不作限定,例如可以进行2路卷积,或3路卷积等等,该多路卷积的数量可以根据计算的精度和处理器的计算能力等进行预先设定,本发明对此不限定。另外,多路卷积中的任意一路卷积可以包括至少一个卷积运算,多路卷积中的任意两路卷积所执行的卷积运算的数量可以相同或不同。例如,多路卷积为2路卷积,2路卷积中的第1路卷积可以包括2个卷积运算,2路卷积中的第2路卷积可以包括1个或2个卷积运算,等等。
举例来说,若多路卷积为2路卷积,且每路卷积都包括2个卷积运算。那么,关于任意一个GCN处理(GCN 1至GCN 4中的任一个),其具体过程可以如图5所示。假设GCNi(1≤i≤N)接收到的卷积输出的维度为w1×h1×c1,则并行地执行(a)和(b):(a)、依次执行两次卷积运算,第一次卷积运算的输入的c维度为c1、输出的c维度为21,第二次卷积运算的输入的c维度为21、输出的c维度也为21,在一个实施例中,可以沿水平方向做第一次卷积运算,沿垂直方向做第二次卷积运算;(b)、依次执行两次卷积运算,第一次卷积运算的输入的c维度为c1、输出的c维度为21,第二次卷积运算的输入的c维度为21、输出的c维度也为21,在一个实施例中,可以沿垂直方向做第一次卷积运算,沿水平方向做第二次卷积运算。
进一步将(a)和(b)的结果求和(Sum),得到处理结果,且该处理结果的维度为w1×h1×21,例如,对于GCN1处理,处理结果的维度为128×128×21;对于GCN2处理,处理结果的维度为64×64×21;对于GCN3处理,处理结果的维度为32×32×21;对于GCN4处理,处理结果的维度为16×16×21。
由此可见,S102中对常规(general)图片学习到的一些底层网络信息,对于场景理解是非常有效的。S102中的卷积神经网络可以用resnet实现,从而可以有效地利用resnet本身的特性,并且S103中的全局卷积网络也可以通过resnet实现,能够有效地增大有效感受野,从而能够提升系统的性能。
S104,对所述处理结果进行边界精炼(Boundary Refinement),得到图像场景理解的结果。
可选地,可以对处理结果进行线性修正,并将该线性修正后的结果与处理结果进行结合,从而得到图像场景理解的结果。
示例性地,若S103得到N个处理结果,S104可以包括:
对所述N个处理结果分别进行边界精炼,得到与所述N个处理结果一一对应的N个边界精炼结果;以及根据所述N个边界精炼结果,得到所述图像场景理解的结果。
可见,对N个处理结果,可以并行地得到N个边界精炼结果。
举例来说,以N=4为例,即假设为4个处理结果,如图3所示,那么S104可以包括与4个处理结果对应的4个边界精炼处理S1041-S1044。并且,所得到的4个边界精炼结果中,每个边界精炼结果的维度与对应的处理结果的维度一致。
作为一个例子,边界精炼处理S1041(即BR 1)得到的边界精炼结果的维度与GCN 1处理结果的维度相同,为128×128×21。关于边界精炼处理S1042-S1044(即BR 2至BR4)的边界精炼结果的维度类似可以确定,这里不再一一罗列。
具体地,对所述N个处理结果分别进行边界精炼,得到与所述N个处理结果一一对应的N个边界精炼结果,可以包括:对所述N个处理结果中的第i个处理结果进行修正,将所述修正后的结果与所述第i个处理结果进行结合,得到第i个边界精炼结果。其中,i的取值范围为1至N。
可选地,修正可以为线性修正和非线性修正。本发明对修正的具体执行方法不做限定。
举例来说,修正可以包括顺次地卷积操作、修正线性单元(Rectified LinearUnit,ReLU)操作和卷积操作。那么该修正可以如图6中的S1040,依次包括第一卷积操作、ReLU操作和第二卷积操作。
如图6所示,假设处理结果的维度为w1×h1×21,那么边界精炼结果的维度依然为w1×h1×21。S1040中依次包括的第一卷积操作、ReLU操作和第二卷积操作。其中,第一卷积操作的输入的c维度为21、输出的c维度为21;ReLU操作的输入的c维度为21、输出的c维度为21;第二卷积操作的输入的c维度为21、输出的c维度为21。c维度的值表示识别的对象的种类的数目。示例性地,第一卷积操作、ReLU操作和第二卷积操作的卷积核的大小可以为3×3,应该理解的是,可以根据计算的需要取其他的值作为卷积核的大小,例如5×5、7×7等等,本发明对此不限定。
将所述修正后的结果与对应的处理结果进行结合(求和操作),得到对应的边界精炼结果。获得的边界精炼结果的维度与对应的处理结果的维度相等。
具体地,根据所述N个边界精炼结果,得到所述图像场景理解的结果,可以包括:将所述N个边界精炼结果进行融合操作,得到所述图像场景理解的结果。
如图3所示,N=4,S1045包括:将4个边界精炼结果进行融合操作。
示例性地,融合操作可以包括相加操作和放大操作。本发明实施例中,放大操作也可以称为解卷积(deconvolution)操作,本发明对此不限定。
示例性地,将所述N个边界精炼结果进行融合操作,得到所述图像场景理解的结果,可以包括:将所述N个边界精炼结果进行融合操作,得到得分图(Score Map),再基于该Score Map得到所述图像场景理解的结果。
由于N个边界精炼结果的维度互不相等,将所述N个边界精炼结果进行融合操作,包括:重复执行以下的(a1),直至只剩下一个结果:(a1)将最低维度的结果放大至次低维度,再与次低维度的结果进行相加。然后将剩下的一个结果的空间维度(w×h)放大至与原始图像相同的空间维度(w×h),得到Score Map,再基于该Score Map得到所述图像场景理解的结果
举例来说,假设N=4,N个边界精炼结果的维度分别为:128×128×21、64×64×21、32×32×21、16×16×21。那么该融合操作可以如图4所示,可以包括:
1、首先执行S1051,将最低维度16×16×21的结果(即S1044的边界精炼结果)进行放大操作,放大至次低维度32×32×21;然后执行S1052,将该放大后的结果与次低维度的结果(即S1043的边界精炼结果)进行相加。
2、在执行上述1之后,最低维度为32×32×21。执行S1053,将此时的最低维度32×32×21的结果(即S1052的结果)进行放大操作,放大至此时的次低维度64×64×21;然后执行S1054,将该放大后的结果与此时的次低维度的结果(即S1042的边界精炼结果)进行相加。
3、在执行上述2之后,最低维度为64×64×21。执行S1055,将此时的最低维度64×64×21的结果(即S1054的结果)进行放大操作,放大至此时的次低维度128×128×21;然后执行S1056,将该放大后的结果与此时的次低维度的结果(即S1041的边界精炼结果)进行相加。
4、在执行上述3之后,已经将4个边界精炼结果进行了合并,只剩下一个结果,即维度为128×128×21的S1056的结果。由于原始图像的维度为512×512×21,因此,这里将维度为128×128×21的S1056的结果再放大至维度512×512×21,从而得到得分图(ScoreMap)。
示例性地,在上述4中,将维度128×128×21的结果放大至维度512×512×21,可以包括如图4所示的S1057和S1058,也可以是说可以进行一次放大,或多次的逐级放大,本发明对此不限定。
另外,示例性地,在每次放大操作之前或之后,还可以包括边界精炼操作。这样能够增加边界的判别性。
示例性地,在上述1与2之间、2与3之间、3与4之间(即相加操作之后且放大操作之前)包括边界精炼操作,如图4中的S10530、S10550和S10570。在上述4中的每个放大操作之后包括边界精炼操作,如图4中的S10580和S10590。这样能够增加边界的判别性。
示例性地,本发明实施例中,在图2所示的方法之前,还可以包括:训练所述全局卷积网络。
应注意,本发明实施例对训练的过程和方法不作限定。举例来说,可以获取M个样本图像,并基于该M个样本图像进行训练,从而得到全局卷积网络的参数。举例来说,可以对于N个全局卷积网络同时进行训练,例如,可以获取M个样本图像,M个样本图像的空间维度相等,例如均为512×512;基于该M个样本图像对所述N个全局卷积网络进行训练,从而得到N个全局卷积网络的参数。其中,M为正整数。其中,所述样本图像中每个对象的类别是已知的。
可选地,可以基于从ImageNet的数据集中获取样本图像进行预训练(pretrained),然后在场景理解的相关数据集上对全局卷积网络进行微调(fine-tune)。例如,可以利用大数据集中的信息对小数据集中的信息进行训练,并以训练后的小数据集为基础进行场景理解,这样不仅可以剔除大数据集中的一些无用信息,并且可以加快收敛的速度,从而提高处理的效率。
可以理解的是,对于步骤S102中的卷积神经网络和步骤S103中的全局卷积网络,所述方法可以包括:训练所述卷积神经网络和所述全局卷积网络。
可见,本发明实施例中,汇集了全局卷积网络和边界精炼,其中,全局卷积网络能够有效地增大有效感受野,边界精炼能够增加物体边界的判别性。相比于传统的场景理解算法,本发明实施例的方法能够满足场景理解对于性能的需求,从而能够使得系统整体性能得到极大的提升。
图7是本发明实施例的图像场景理解的装置的一个示意性框图。图7所示的装置70包括获取模块701、卷积模块702、全局卷积网络模块703和边界精炼模块704。所述各个模块可分别执行上文中结合图2-6描述的图像场景理解方法的各个步骤/功能。以下仅对该图像场景理解的装置700的各模块的主要功能进行描述,而省略以上已经描述过的细节内容。
获取模块701,用于获取场景的原始图像。
卷积模块702,用于对所述获取模块701获取的所述原始图像进行卷积操作,得到卷积输出。
全局卷积网络模块703,用于通过全局卷积网络对所述卷积模块702得到的所述卷积输出进行处理,得到处理结果。以及
边界精炼模块704,用于对所述全局卷积网络模块703得到的所述处理结果进行边界精炼,得到所述图像场景理解的结果。
示例性地,卷积模块702可以具体用于:通过N个卷积神经网络对所述原始图像进行卷积操作,得到N路卷积输出。其中,所述N路卷积输出的空间维度两两互不相等,且所述N路卷积输出的空间维度均小于所述原始图像的空间维度,N为大于1的正整数。
示例性地,全局卷积网络模块703可以具体用于:通过N个所述全局卷积网络对所述N路卷积输出分别进行处理,得到与所述N路卷积输出一一对应的N个处理结果。
示例性地,所述N个全局卷积网络中的第i个全局卷积网络可以用于:对所述N路卷积输出中的第i路卷积输出进行多路卷积,将所述多路卷积的输出进行相加,并将所述相加的结果确定为与所述第i路卷积输出对应的第i个处理结果。其中,i的取值范围为1至N。
示例性地,边界精炼模块704可以包括N个边界精炼子模块和融合子模块。所述N个边界精炼子模块,可以用于对所述N个处理结果分别进行边界精炼,得到与所述N个处理结果一一对应的N个边界精炼结果。所述融合子模块,可以用于根据所述N个边界精炼结果,得到所述图像场景理解的结果。
示例性地,所述N个边界精炼子模块中的第i个边界精炼子模块可以用于:对所述N个处理结果中的第i个处理结果进行修正,将所述修正后的结果与所述第i个处理结果进行结合,得到第i个边界精炼结果。其中,i的取值范围为1至N。
示例性地,融合子模块可以用于:将所述N个边界精炼结果进行融合操作,得到所述图像场景理解的结果。融合操作包括:重复执行以下的(a1),直至只剩下一个结果:(a1)将最低维度的结果放大至次低维度,再与次低维度的结果进行相加。然后将剩下的一个结果的空间维度(w×h)放大至与原始图像相同的空间维度(w×h),得到Score Map,再基于该Score Map得到所述图像场景理解的结果.
示例性地,如图8所示,装置70还包括训练模块700,可以用于:训练所述全局卷积网络。
图7和图8所示的装置70能够用于实现前述图2至图6所示的图像场景理解的方法。
另外,本发明实施例还提供了另一种图像场景理解的装置,该装置可以包括处理器和存储器,其中,存储器用于存储指令代码,处理器执行该指令代码时,可以实现前述图2至图6所示的图像场景理解的方法。
另外,本发明实施例还提供了一种电子设备,该电子设备可以包括图7或图8所示的装置70。
本发明实施例中,汇集了全局卷积网络模块和边界精炼模块,其中,全局卷积网络模块能够有效地增大有效感受野,边界精炼模块能够增加物体边界的判别性。相比于传统的场景理解算法,本发明实施例能够满足场景理解对于性能的需求,从而能够使得系统整体性能得到极大的提升。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本发明的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本发明的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本发明的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的物品分析设备中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本发明的具体实施方式或对具体实施方式的说明,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以权利要求的保护范围为准。