图像处理方法、装置、存储介质及计算机设备与流程

文档序号:25588493发布日期:2021-06-22 17:04阅读:119来源:国知局
图像处理方法、装置、存储介质及计算机设备与流程

本发明涉及图像处理技术领域,具体涉及一种图像处理方法、装置、存储介质及计算机设备。



背景技术:

近年来,随着互联网技术的发展,游戏产业呈现出蓬勃发展的趋势。其中,第一人称设计类游戏(first-personshootinggame,fps)以其为玩家提供主观视角的射击体验,大大增强了游戏的主动性和真实感,从而得到了在世界范围的迅速风靡。

在fps游戏中,常常需要对游戏场景中的人物或者道具等物体进行识别,以便为玩家提供射击的参考目标。

目前,对游戏场景中物体进行识别的方法,例如模板匹配法、光流法以及帧差法,对二维(2-dimension,2d)游戏场景具有良好的识别效果,然而在三维(3-dimension,3d)游戏场景中,物体会因旋转导致投射在二维显示画面中的物体图像发生较大变化,因此现有的物体检测方法对三维场景中的物体的识别效果较差。



技术实现要素:

本发明实施例提供一种图像处理方法、装置、存储介质及计算机设备,该方法可以提高图像处理的准确性,进而可以提升对3d游戏场景中物体识别的准确度。

本申请第一方面提供一种图像处理方法,包括:

将待检测图像划分为预设数量的像素块;

提取所述预设数量的像素块中每一像素块的旋转不变特征;

根据所述每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;

根据所述目标像素块集合标记所述目标物体在所述待检测图像中的位置。

相应的,本发明实施例第二方面提供一种图像处理装置,包括:

划分单元,用于将待检测图像划分为预设数量的像素块;

提取单元,用于提取所述预设数量的像素块中每一像素块的旋转不变特征;

确定单元,用于根据所述每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;

标记单元,用于根据所述目标像素块集合标记所述目标物体在所述待检测图像中的位置。

在一些实施例中,所述提取单元,包括:

确定子单元,用于确定所述预设数量的像素块中每一像素块的傅里叶变换时域信息;

第一提取子单元,用于从所述傅里叶变换时域信息中提取频谱能量信息,并确定所述频谱能量信息为像素块的旋转不变特征,得到每一像素块的旋转不变特征。

在一些实施例中,所述确定单元,包括:

映射子单元,用于将所述每一像素块的旋转不变特征映射到向量空间中,得到每一像素块对应的特征向量;

处理子单元,用于采用训练后的预设模型对所述每一像素块对应的特征向量进行处理,得到每一特征向量对应的物体信息;

确定子单元,用于确定携带目标物体信息的目标像素块集合。

在一些实施例中,所述装置还包括:

获取子单元,用于获取训练样本,所述训练样本包括样本图像在多个显示角度下对应的训练图像;

第二提取子单元,用于提取每个训练图像的旋转不变特征,并将所述旋转不变特征映射到向量空间中,得到每个训练图像对应的训练特征向量;

训练子单元,用于采用所述每个训练图像对应的训练特征向量以及每个训练图像标注的物体信息对所述预设模型进行训练,得到所述训练后的预设模型。

在一些实施例中,所述第二提取子单元,包括:

采样模块,用于对每个训练图像进行上采样或下采样,得到每个训练图像对应的多个不同尺度的图像;

提取模块,用于对所述多个不同尺度的图像进行旋转不变特征的提取,得到每个训练图像对应的特征金字塔;

第一映射模块,用于将所述每个训练图像对应的特征金字塔映射到向量空间中,得到每个训练图像对应的向量。

在一些实施例中,所述第一映射模块,包括:

池化子模块,用于对所述每个训练图像对应的特征金字塔进行池化处理,得到每个训练图像对应的池化后的特征金字塔;

映射子模块,用于将所述每个训练图像对应的池化后的特征金子塔映射到向量空间,得到每个训练图像对应的向量。

在一些实施例中,所述训练子单元,包括:

获取模块,用于获取包含多层决策树的预设模型;

训练模块,用于将所述每个训练图像对应的训练特征向量以及每个样本标注的物体信息输入至所述预设模型,以对所述预设模型进行训练,得到训练过的预设模型。

在一些实施例中,所述映射子单元,包括:

池化模块,用于对所述每一像素块的旋转不变特征进行池化处理,得到每一像素块池化处理后的旋转不变特征;

第二映射模块,用于将所述每一像素块池化处理后的旋转不变特征映射到向量空间,得到每一像素块对应的特征向量。

本申请实施例第三方面还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请第一方面所提供的图像处理方法中的步骤。

本申请实施例第四方面提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可以在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请第一方面所提供的图像处理方法中的步骤。

本申请实施例第五方面提供一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在存储介质中。计算机设备的处理器从存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行第一方面提供的图像处理方法中的步骤。

本申请实施例提供的图像处理方法,通过将待检测图像划分为预设数量的像素块;提取预设数量的像素块中每一像素块的旋转不变特征;根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;根据目标像素块集合标记目标物体在待检测图像中的位置。以此通过对待检测每一像素块的旋转不变特征进行提取并根据提取的旋转不变特征确定目标物体包括的像素块集合,如此即使目标物体在3d场景中发生旋转,也可以准确识别其对应的像素块集合,从而提升了对3d游戏场景中物体识别的准确度。

附图说明

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

图1是本申请提供的图像处理的场景示意图;

图2是本申请提供的图像处理方法的流程示意图;

图3为本申请中频谱能量信息与角度偏移信息分离示意图;

图4为图像金字塔的示意图;

图5是本申请提供的图像处理方法的另一流程示意图;

图6为本申请提供的模型训练的流程示意图;

图7是本申请提供的图像处理装置的结构示意图;

图8是本申请提供的计算机设备的结构示意图。

具体实施方式

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

本发明实施例提供一种图像处理方法、装置、存储介质及计算机设备。其中,该图像处理方法可以使用于图像处理装置中。该图像处理装置可以集成在计算机设备中,该计算机设备可以是终端也可以是服务器。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、网络加速服务(contentdeliverynetwork,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。

请参阅图1,为本申请提供的图像处理的场景示意图;如图所示,终端b将需要进行检测的图像发送至服务器a,服务器a接收到待检测的图像后,将该图像划分为一定数量的像素块,然后对每个像素块提取其中包含的旋转不变特征,服务器a根据从像素块中提取出的旋转不变特征确定每一像素块对应的物体的信息,从而确定目标物体所对应的目标像素块,之后服务器a再进一步根据目标像素块在图像中的位置确定目标物体在图像中的位置,从而实现了对目标物体的检测。目标对象在图像中的位置信息即为本次图像的检测结果。在得到检测结果后,服务器a再将检测结果返回终端b中。

需要说明的是,图1所示的图像处理的场景示意图仅仅是一个示例,本申请实施例描述的图像处理场景是为了更加清楚地说明本申请的技术方案,并不构成对于本申请提供的技术方案的限定。本领域普通技术人员可知,随着图像处理的演变和新业务场景的出现,本申请提供的技术方案对于类似的技术问题,同样适用。

基于上述实施场景以下分别进行详细说明。

本申请实施例将从图像处理装置的角度进行描述,该图像处理装置可以集成在计算机设备中。其中,计算机设备可以是服务器。如图2所示,为本申请提供的图像处理方法的流程示意图,该方法包括:

步骤101,将待检测图像划分为预设数量的像素块。

其中,图像中物体检测技术属于图像处理领域,是计算机视觉技术(computervision,cv)的一个分支领域。计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。

对此,本申请发明人提出一种图像处理方法,可以针对3d场景图像进行准确的物体检测,该方法通过提取图像中的物体的旋转不变特征,旋转不变特征可以是像素块的与角度信息无关的特征,包括但不限于像素块的能量信息、灰度信息等。然后再根据该旋转不变特征进行物体的识别。如此,即便三维物体在3d场景下发生旋转,也可以根据其旋转不变特征对其进行准确的识别。下面,对本申请提供的图像处理方法进行详细描述。

首先,获取待检测图像,该待检测图像可以是3d场景的显示图像,该3d场景可以是3d游戏场景也可以是3d电影等3d视频的场景。在3d场景中,一般包含相对固定的背景和运动频率相对较高的三维人物或者三维道具等物体,这些三维人物或者三维物体也可以称为前景。对3d场景图像的处理,或者对3d场景图像中物体的检测,即是将3d场景图像中的背景和前景进行区分的过程。从3d场景图像中区分出前景后,再进一步确定不同前景所对应的具体物体,从而实现对3d场景图像中物体的识别。

在获取到待检测的3d场景图像后,对该3d场景图像进行分割,以将该3d场景图像划分为若干数量的像素块,此处若干数量为至少一个。此处像素块为按照预设形状和尺寸对待检测图像进行分割得到的图像块,像素块的形状和尺寸可以根据需要进行设置,即该像素块可以包含至少一个像素,包含的像素数量越多,该像素块的尺寸越大,该像素为为图像中不可分割的单位或者元素,在一个图像中每个元素都会被分配一个色彩数值,该色彩数值便为该像素的像素值。一般情况下,像素块的尺寸越大,对待检测图像进行分割得到的像素块的数量越少,图像处理所消耗的资源量越少,图像处理速度越快,如此也会导致图像处理的结果不够准确。反之若像素块的尺寸越小,则会导致图像处理速度的下降,但却会提高图像处理的准确度。将3d场景图像划分为若干像素块后,需要再分别确定每一像素块为前景像素块还是背景像素块,背景像素块对应的区域则为背景,前景像素块对应的区域则为前景。具体地,例如在3d枪战游戏场景中,场景中的道路、树木、天空这些便是背景,而场景中的人物、坦克、飞机等便是前景。在3d场景图像中背景与前景相连接的部位,或者称为物体(前景)的边缘,在划分像素块时可能会导致出现一个像素块中既有前景元素也有背景元素的情况。此时可以根据划分得到的像素块的尺寸来确定对既包含前景元素也包含背景元素的像素块的处理方法,当像素块的尺寸较小时,这些边缘像素块对物体识别结果的影响较小,可以将这些像素块抛弃,不予区分其具体为前景像素还是背景像素。当像素块的尺寸较大时,可以确定其旋转不变特征,再与邻近的背景像素块或前景像素块的旋转不变特征进行相似度计算,根据其相似度计算结果将其划分为前景像素还是背景像素。然后再进一步对确定的前景像素块进行区分,以分别识别其对应的物体信息,从而确定每个物体在待检测图像中所处的区域。

步骤102,提取预设数量的像素块中每一像素块的旋转不变特征。

其中,将待检测的图像划分为预设数量的像素块之后,进一步对每一像素块对应的物体信息进行确定。在本申请实施例中,采用如下方法确定每一像素块对应的物体信息:对每一像素块的旋转不变特征进行获取,根据每一像素块的旋转不变特征确定每一像素块对应的物体信息。其中,像素块的旋转不变特征可以是像素块的与角度信息无关的特征,包括但不限于像素块的能量信息、灰度信息等。可以理解的是,在3d场景中当物体发生旋转时,物体包含的像素块的数量和覆盖的区域可能会发生变化,例如前述示例中因旋转导致3d场景中物体在显示画面中由正方形变为长方形,但物体包含的像素块的旋转不变特征并不会发生变化。同样地,在3d场景中当物体发生旋转时,背景包含的像素块的数量和覆盖的范围也可能会发生变化,但背景包含的像素块的旋转不变特征也不会发生变化。由于不同的物体具有不同的旋转不变特征,不同的前景和不同的背景也具有不同的旋转不变特征。前景或背景物体的旋转不变特征可以通过图像识别模型进行预先提取,如此在对图像进行识别时便可根据识别到的每一像素块的旋转不变特征确定每一像素块具体为前景还是背景,甚至可以进一步根据像素块的旋转不变特征确定前景像素块具体为何种物体。

在一些实施例中,提取预设数量的像素块中每一像素块的旋转不变特征,包括:

1、确定预设数量的像素块中每一像素块的傅里叶变换时域信息;

2、从傅里叶变换时域信息中提取频谱能量信息,并确定频谱能量信息为像素块的旋转不变特征,得到每一像素块的旋转不变特征。

其中,图像在某种程度上可以看作一种信号表示,例如图像中的每个像素都有其对应的像素值,一张图像的一横排或者一竖排的所有像素的像素值按照顺序映射到坐标轴上,便可以看作是一种信号图的表示。如此,一张图像便可以看作是一种二维的信号表示。如此,对图像进行处理,也可以采用信号处理的方法进行处理。此处的像素不同于前述像素块,前述像素块为用户自定义尺寸的图像块,而此处像素可以理解为图像中不可分割的单位或者元素,在一个图像中每个元素都会被分配一个色彩数值,该色彩数值便为该像素的像素值。

在本申请实施例中,待检测图像中分割出的每一像素块都可以看作为一个信号,提取每一像素块的旋转不变特征,便是提取像素块对应的信号中与角度无关的特征。如此,即使物体发生旋转导致信号中的角度发生变化,该旋转不变特征也不会因为角度变化而变化,即在3d场景中物体发生旋转的情况下通过该旋转不变特征也可以准确识别与该特征对应的物体。对信号进行分析的常用方法可以为傅里叶变换法,采用傅里叶变换对像素块对应的信号进行处理,得到如下式(1)所示的傅里叶变换时域表达,亦即傅里叶变换时域信息:

其中,f(t)为像素块对应的信号关于时间t的傅里叶函数,c0为信号的平滑区域能量,cos表示求余弦函数值,ω0为信号的频率,为信号的相位,或者称为信号的角度偏移量。如此,通过傅里叶变换将像素块对应的信号从空间域的表达转换为了频率域的表达。即一般情况下对每个像素块对应的信号的表达通常是基于空间域的表达,例如根据图像信号的坐标来对图像信号进行描述,而经傅里叶变化后可以根据图像信号的频率来对图像信号进行描述。

然而,通过式(1)也可以明确看出,像素块对应的信号的傅里叶变换时域信息中包含了角度偏移信息为了得到不受角度偏移信息影响的旋转不变特征,本申请采用欧拉算子对式(1)对应的频谱图中的能量信息与角度偏移信息进行剥离,以提取出不受角度偏移信息影响的频谱能量信息。其中,采用欧拉算子进行频谱能量信息提取的公式如下式(2)以及式(3)所示:

其中,j表示求复数的虚部。傅里叶变换的结果是复数,具有实部和虚部两部分,例如一个复数z=a+bi(a,b均为实数),那么a为这个复数的实部,b为该复数的虚部,i为虚数单位。那么j(z)=b。

如此,便实现了频谱能量信息和相位信息(即角度偏移信息)的剥离,如图3所示,为频谱能量信息与角度偏移信息关于频率ω的分离示意图。由图3可知,当信号频率发生变化时,信号能量cn随之发生变化,而信号的角度偏移信息不随信号频率变化而变化。如此便提取出了不受角度偏移信息影响的频谱能量信息,即提取到了像素块的旋转不变特征。

步骤103,根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合。

其中,在提取了每一像素块的旋转不变特征后,再分别根据每一像素块的旋转不变特征确定与该像素块对应的物体信息。此处物体信息可以为物体名称(当确定像素块为前景像素时)也可以是背景(当确定像素块为背景像素时)。例如,可以先将每个物体图像或背景图像对应的旋转不变特征进行提取并存储,然后在对图像进行处理时便可以根据从像素块中提取出的旋转不变特征确定该像素块是属于背景还是属于某一物体。具体地,如在一款3d游戏中,有一个三维物体,例如飞机,那么可以先对飞机图像的旋转不变特征进行提取并存储,那么在进行图像处理时,若存在像素块的旋转不变特征与所存储的飞机图像的旋转不变特征的相似度达到预设阈值,那么便可以确定该像素块所对应的物体信息为飞机。或者,也可以先将物体图像或背景图像的旋转不变特征进行提取并据此训练分类器模型,如此在对图像进行处理时,只需提取像素块的旋转不变特征并输入至分类器模型中,便可以从模型中输出像素块对应的物体信息。其中,目标物体可以为任意物体,当确定了待检测图像中每一像素块对应的物体信息后,便可以确定与某一目标相关的目标像素块集合,该目标像素块集合中可以只包括一个像素块,也可以包括多个像素块。

在一些实施例中,根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合,包括:

1、将每一像素块的旋转不变特征映射到向量空间中,得到每一像素块对应的特征向量;

2、采用训练后的预设模型对每一像素块对应的特征向量进行处理,得到每一特征向量对应的物体信息;

3、确定携带目标物体信息的目标像素块集合。

其中,在本申请实施例中,采用监督学习模型训练得到的分类器模型对待检测图像中每一像素块进行处理。具体地,提取到每一像素块的旋转不变特征后,将该旋转不变特征映射到向量空间中,得到每一像素块对应的特征向量。然后,将每一像素块对应的特征向量输入至已经训练过的预设模型,该预设模型即为前述分类器模型,经该模型处理后输出与该特征向量对应的物体信息。如此便可以逐一确定待检测图像中每一像素块所对应的物体信息,进而便可以确定携带某一具体目标物体信息的目标像素块集合。

在使用该预设模型对每一像素块对应的特征向量进行处理之前,需要先对该预设模型进行模型训练。具体地,对该预设模型进行训练的方法包括:

1.1、获取训练样本,训练样本包括样本图像在多个显示角度下对应的训练图像;

1.2、提取每个训练图像的旋转不变特征,并将旋转不变特征映射到向量空间中,得到每个训练图像对应的训练特征向量;

1.3、采用每个训练图像对应的训练特征向量以及每个训练图像标注的物体信息对预设模型进行训练,得到训练后的预设模型。

其中,如前所述,一般3d场景都具有前景和背景,前景还可以包括人物、道具等各类物体。因此,训练样本既需要包含各种物体的前景图像,还需包括背景图像。可以理解的是,用于训练的前景图像为只包括某一具体物体的图像,例如飞机图像中只包含飞机,且该图像标注了其对应的物体信息为飞机;同样,背景图像也只包含背景,该图像中不存在任何前景物体,且背景图像也标注了其对应的物体信息为背景。对于前景图像,还需要包括各物体在多个不同旋转角度上的图像,以便训练得到更为准确的模型参数。

在获取到训练样本后,对训练样本中的训练图像进行旋转不变特征的提取。对训练样本中的训练图像进行旋转不变特征的提取,可以是直接将训练图像当做一个信号进行旋转不变特征的提取,也可以将训练图像划分为一定数量的像素块后再分别对每一像素块进行旋转不变特征的提取。本实施例中以直接将训练图像当做一个信号进行旋转不变特征的提取为例进行说明,此时也可以认为训练图像为一个大的像素块。此处旋转不变特征可以为前述图像对应信号的傅里叶变换频谱能量信息。在提取到每个训练图像的旋转不变特征后,再将每个训练图像的旋转不变特征映射到向量空间中,得到每个训练图像对应的训练特征向量。之后,再将每个训练图像对应的训练特征向量以及每个训练图像标注的物体信息输入至模型中进行训练,得到训练后的预设模型。

在一些实施例中,提取每个训练图像的旋转不变特征,并将旋转不变特征映射到向量空间中,得到每个训练图像对应的训练特征向量,包括:

a、对每个训练图像进行上采样或下采样,得到每个训练图像对应的多个不同尺度的图像;

b、对多个不同尺度的图像进行旋转不变特征的提取,得到每个训练图像对应的特征金字塔;

c、将每个训练图像对应的特征金字塔映射到向量空间中,得到每个训练图像对应的向量。

其中,在3d场景下,三维物体即使没有发生旋转,但随着物体的移动,若距离显示平面的距离越来越远,则物体显示在二维显示画面上的形状会随着距离变远而逐渐变小,如此也会对3d场景下图像中物体识别造成困难。为了保证本申请提供的图像处理方法在多尺度上的自适应性,在对每个训练图像进行旋转不变特征提取之前,先对该训练图像进行上采样和下采样,得到该训练图像在多个不同尺度上的图像金字塔,此处多个为至少三个。此处图像金子塔为一个图像在多个不同尺度上的图像组合,如图4所示,为图像金字塔的示意图,此处图像金字塔为一个终端的图像在三个不同尺度上的图像组合。此处上采样可以为放大图像,下采样可以为缩小图像,上采样一般采用邻近插值方法处理,下采样一般是将多个像素合并成一个像素,合并后的像素值一般为合并前多个像素的平均值。如图4中,当原始图像为中间图像b时,对该图像进行上采样,即对该图像进行放大,便可得到左侧放大图像a;对该图像进行下采样,便可得到右侧图像c。此处仅示出了三个尺度的图像,还可以继续对图像进行上采样和下采样,得到更多尺度的图像。

然后,提取上采样以及下采样得到的多个不同尺度的图像的旋转不变特征,得到由多个不同尺度的图像对应的旋转不变特征组成的特征金字塔。此处特征金字塔为多个尺度图像对应的旋转不变特征的特征集合。通过对图像金字塔中每个图像进行特征采集,可以得到图像在多个尺度上的特征表示。然后再将训练图像对应的特征金字塔映射到向量空间中,得到每个训练图像对应的向量。与前述单个图像的特征向量不同的是,此处训练图像对应的向量为由多个尺度的特征对应的向量构成的矩阵。通过特征金字塔,在计算得到一个尺度上的图像的特征,便可以估算出其他相邻尺度上的特征。如此只需计算固定几个尺度上的图像的特征,其余尺度上图像的特征便可以迅速估算出来,从而大大提高了计算速度,也使得本申请提供的图像处理方法在多尺度上均具有自适应性。

在一些实施例中,将每个训练图像对应的特征金字塔映射到向量空间中,得到每个训练图像对应的向量,包括:

a、对每个训练图像对应的特征金字塔进行池化处理,得到每个训练图像对应的池化后的特征金字塔;

b、将每个训练图像对应的池化后的特征金子塔映射到向量空间,得到每个训练图像对应的向量。

其中,在对训练图像的多个尺度的特征组成的特征金字塔进行向量化之前,可以先对特征金字塔中的特征进行池化处理。池化(pooling)是卷积神经网络中一个重要的概念,它实际上是一种形式的下采样。它会压缩特征,一方面减少了特征细节,进而简化了卷积网络计算时的复杂度;另一方面保持了特征的某种不变性(例如旋转、平移、伸缩等)。池化操作主要有两种,分别为平均池化和最大池化。平均池化是对邻域内的特征求平均,而最大池化是对邻域内的特征取最大值。在本申请实施例中,对训练图像的特征金字塔进行池化处理,可以消除训练图像不同尺度提取的特征之间由于尺度差异导致的大小差异,从而保证向量化后的向量一致性,进而可以防止对模型训练时出现过拟合情况,提高模型训练的准确性。

步骤104,根据所述目标像素块集合标记所述目标物体在所述待检测图像中的位置。

其中,在确定了目标物体包括的目标像素块集合后,可以根据目标像素块集合中每一像素块在图像中的分布情况确定目标物体的具体位置。然后,可以自动对该目标物体进行标注,例如对目标物体的外围轮廓进行突出显示,或者用一个预设形状的突出显示框将该目标物体进行标记,并在目标物体的附近显示目标物体的物体信息。可以理解的是,目标物体可以是一个,也可以是多个;例如3d场景图像中有多架飞机以及多架坦克,那么也可以对该多架飞机和多架坦克分别识别,并在识别后进行突出显示并标记出各自对应的物体信息。本申请实施例提供的图像处理方法,相对于2d场景中常用语物体识别的帧差法、光流法等,不仅可以对3d场景中的前景和背景进行区分,还可以进一步对前景进行详细检测以确定其对应的物体信息,具有更为准确的物体检测能力。

根据上述描述可知,本申请实施例提供的图像处理方法,通过将待检测图像划分为预设数量的像素块;提取预设数量的像素块中每一像素块的旋转不变特征;根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;根据目标像素块集合标记目标物体在待检测图像中的位置。以此通过对待检测每一像素块的旋转不变特征进行提取并根据提取的旋转不变特征确定目标物体包括的像素块集合,如此即使目标物体在3d场景中发生旋转,也可以准确识别其对应的像素块集合,从而提升了对3d场景图像中物体识别的准确度。

相应地,本申请实施例将从计算机设备的角度进一步对本申请提供的图像处理方法进行详细的描述,其中计算机设备可以为终端也可以为服务器,本申请实施例中以服务器为例进行详述。在该实施例中,3d场景可以为3d游戏场景,具体可以为3d的fps游戏场景。如图5所示,为本申请提供的图像处理方法的另一流程示意图,该方法包括:

步骤201,服务器接收终端发送的待检测图像。

其中,在3d的fps游戏场景中,游戏显示图像中可以包括背景以及运动的前景,前景包括人物以及移动的道具例如飞机、汽车以及坦克等。目前,用户需要在游戏显示图像中通过人眼识别出图像中的人物或者道具,并根据人物或者道具的具体的阵营情况判定其为敌方还是友方。当用户在游戏显示图像中识别出敌方人物或者道具时,控制武器对敌方人物或者道具发起攻击。当游戏显示图像中的人物或者道具较多时,或者当游戏显示图像中的人物或者道具尺寸较小时,难以通过人眼进行准确识别。为解决上述问题,本申请提供一种图像处理方法,可以对3d的fps游戏场景的显示图像进行处理,从而准确识别出显示图像中的人物或者道具。

具体地,当用户使用终端在玩游戏的过程中,终端可以实时截取游戏显示图像,并将游戏显示图像作为待检测图像发送给服务器,以使得服务器对终端截取的图像进行图像处理。当然,在一些实施例中,例如云游戏实施例中,终端的显示图像也是由服务器生成后再发送到终端中的。具体服务器结合用户于终端中输入的指令与当前游戏运行数据生成应当在终端中显示的显示图像,然后再将该显示图像发送给终端以进行显示。在这种情况下,则服务器无需从终端接收终端截取的游戏显示图像,而是可以直接从服务器中生成的图像中获取待检测的图像。在对该图像进行检测并输出检测结果后,再将检测处理后的图像发送给终端。

步骤202,服务器将待检测图像划分为预设数量的像素块。

其中,当服务器接收到待检测图像后,将该待检测图像进行划分,得到若干数量的像素块。其中像素块为一定尺寸的图像块,像素块的尺寸可以有服务器根据实际需要进行设置。然后,服务器对每一像素块进行识别以确定每一像素块所包含的物体信息。

步骤203,服务器提取每一像素块的傅里叶旋转不变特征。

其中,在将待检测图像划分为一定数量的像素块后,需要对每一像素块进行特征提取,以确定像素块对应的物体信息。而由于在3d场景中,物体在运动时不仅局限于二维上的运动,还可能发生旋转等三维运动。为保证物体在不同旋转角度都能进行有效识别,需要提取出像素块中包含的与角度信息无关的特征。由于图像可以理解为二维的信号,那么可以采用信号处理的方法来对像素块进行处理。本申请中可以对像素块对应的信号进行傅里叶变换,得到像素块对应的傅里叶变换的时域表达,具体表达式如式(1)所示,此处不再赘述。然后,可以进一步从像素块对应信号的傅里叶变换时域表达中区分出与角度信息无关的频谱能量信息,具体提取方法可以如前述式(2)以及式(3)所述。然后,将提取出的频谱能量信息作为像素块的傅里叶旋转不变特征。

步骤204,服务器将每一像素块的傅里叶旋转不变特征映射到向量空间中,得到每一像素块对应的特征向量。

其中,服务器提取到每一像素块的傅里叶旋转不变特征后,可以采用训练后的分类器模型对每一像素块的傅里叶旋转不变特征进行处理。在使用模型对特征进行处理之前,先将像素块的傅里叶旋转不变特征进行向量化,即将每一像素块的傅里叶旋转不变特征映射到向量空间中,得到每一像素块对应的特征向量。

在一些实施例中,将每一像素块的旋转不变特征映射到向量空间中,得到每一像素块对应的特征向量,包括:

1、对每一像素块的旋转不变特征进行池化处理,得到每一像素块池化处理后的旋转不变特征;

2、将每一像素块池化处理后的旋转不变特征映射到向量空间,得到每一像素块对应的特征向量。

在本实施例中,在对像素块的傅里叶旋转不变特征进行向量化之前,可以先将每一像素块的傅里叶旋转不变特征进行池化处理,以保持特征的尺度合理。然后再将池化后的特征映射到向量空间,得到每一像素块对应的特征向量。

步骤205,服务器采用训练后的预设模型对每一像素块对应的特征向量进行处理,得到每一特征向量对应的物体信息。

其中,在得到每一像素块对应的特征向量后,可以将这些特征向量输入至经过训练后的预设模型中,从而得到模型输出的每一像素块对应的物体信息。在使用预设模型对像素块对应的特征向量进行处理之前,需要先对该预设模型进行训练。

对该预设模型进行训练,需要先获取训练样本,训练样本可以是fps游戏中所有的物体(包括人物及道具)在不同旋转方向的图像,以及fps游戏中所有背景的图像组成的图像集合。此处物体在不同旋转方向的图像并非穷尽物体在所有方向上的图像,选择几个特定旋转方向的图像作为训练图像即可。其中,物体在不同旋转方向的图像可以称为前景图像,也可以称为正样本,背景图像也可以称为负样本。每一个训练图像,无论是正样本还是负样本,都标注了其对应的物体信息。正样本对应的物体信息可以为具体物体的名称,例如飞机、坦克;负样本对应的物体信息可以统一设置为背景。

如图6所示,为本申请提供的模型训练的具体训练过程示意图。首先,将训练图像划分为若干的像素块,然后执行s1,提取旋转不变特征,即提取每一像素块的旋转不变特征,此处旋转不变特征即为前述的像素块对应信号的傅里叶变换频谱能量信息。在图像处理中,频率是表征图像中灰度变化剧烈程度的指标,是灰度在平面空间上的梯度。频率越大说明原始信号变化速度越快,频率越小说明原始信号越平缓。频域反应了图像在空间域灰度变化剧烈程度,也就是图像灰度的变化速度,或图像的梯度大小,因此像素块的傅里叶频谱能量图谱对应了像素块的傅里叶梯度直方图。如图6所示,当3d场景图像中飞机的旋转角度发生变化后,像素块的傅里叶梯度直方图几乎没有发生变化,因此该特征可以作为良好的旋转不变特征。提取到各像素块的旋转不变特征后,执行s2:特征映射图谱,即将提取出的旋转不变特征映射到坐标图中,得到每个训练图像的二维特征频谱映射图。然后再执行步骤s3:进行聚合通道特征处理,具体地,聚合通道特征处理包括获取训练图像的特征金字塔以及对训练图像的特征金字塔进行池化处理。之后再执行s4:向量化特征,即将池化后的特征金字塔进行向量化,得到训练图像对应的特征向量。最后再执行步骤s5:模型训练,即将各个尺度的特征向量输入至预设模型中进行训练。

在一些实施例中,该预设模型可以为多层决策树模型,然后采用层级训练的方式区分出正负样本。如此可以使用多次学习的方法将分类器的错误进行再次分类,即通过多次分类纠错,从而提高了分类器模型识别的准确度。

在一些实施例中,每次对待检测图像进行检测得到待检测图像中包含的正负样本后,可以将本次检测出的正负样本加入训练样本中,对分类器模型进行再次训练,得到更新后的模型。如此,在下一次对图像中物体进行检测时,便可使用更新后的模型对待检测图像进行检测。如此可以不断地使用预测样本更新训练样本,从而可以不断提升分类器模型预测的准确性。

步骤206,服务器根据每一像素块对应的物体信息确定待检测图像中的目标物体。

其中,当确定了待检测图像中每一像素块对应的物体信息后,服务器可以根据每一像素块对应的物体信息确定待检测图像中哪些区域是背景,哪些区域为物体。然后,对于检测为物体的区域,还可以根据该区域包含的像素块对应的物体信息确定该物体具体为何种物体。

步骤207,服务器对待检测图像中的目标物体进行标记并将标记后的图像发送给终端。

服务器在检测出待检测图像中存在的各类物体以及各物体在图像中所处的位置后,可以在待检测图像中对该物体进行框选并标注物体信息,然后再将标注后的图像发送给终端。终端接收到该图像后,可以根据图像中标注的信息选择进攻的目标,从而提高了进攻目标选择的效率。

根据上述描述可知,本申请提供的图像处理方法,通过将待检测图像划分为预设数量的像素块;提取预设数量的像素块中每一像素块的旋转不变特征;根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;根据目标像素块集合标记目标物体在待检测图像中的位置。以此通过对待检测每一像素块的旋转不变特征进行提取并根据提取的旋转不变特征确定目标物体包括的像素块集合,如此即使目标物体在3d场景中发生旋转,也可以准确识别其对应的像素块集合,从而提升了对3d场景图像中物体识别的准确度。

为了更好地实施以上方法,本发明实施例还提供一种图像处理装置,该图像处理装置可以集成在服务器中。

例如,如图7所示,为本申请实施例提供的图像处理装置的结构示意图,该图像处理装置可以包括划分单元301、提取单元302、确定单元303以及标记单元304,如下:

划分单元301,用于将待检测图像划分为预设数量的像素块;

提取单元302,用于提取预设数量的像素块中每一像素块的旋转不变特征;

确定单元303,用于根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;

标记单元304,用于根据目标像素块集合标记目标物体在待检测图像中的位置。

在一些实施例中,提取单元,包括:

确定子单元,用于确定预设数量的像素块中每一像素块的傅里叶变换时域信息;

第一提取子单元,用于从傅里叶变换时域信息中提取频谱能量信息,并确定频谱能量信息为像素块的旋转不变特征,得到每一像素块的旋转不变特征。

在一些实施例中,确定单元,包括:

映射子单元,用于将每一像素块的旋转不变特征映射到向量空间中,得到每一像素块对应的特征向量;

处理子单元,用于采用训练后的预设模型对每一像素块对应的特征向量进行处理,得到每一特征向量对应的物体信息;

确定子单元,用于确定携带目标物体信息的目标像素块集合。

在一些实施例中,装置还包括:

获取子单元,用于获取训练样本,训练样本包括样本图像在多个显示角度下对应的训练图像;

第二提取子单元,用于提取每个训练图像的旋转不变特征,并将旋转不变特征映射到向量空间中,得到每个训练图像对应的训练特征向量;

训练子单元,用于采用每个训练图像对应的训练特征向量以及每个训练图像标注的物体信息对预设模型进行训练,得到训练后的预设模型。

在一些实施例中,第二提取子单元,包括:

采样模块,用于对每个训练图像进行上采样或下采样,得到每个训练图像对应的多个不同尺度的图像;

提取模块,用于对多个不同尺度的图像进行旋转不变特征的提取,得到每个训练图像对应的特征金字塔;

第一映射模块,用于将每个训练图像对应的特征金字塔映射到向量空间中,得到每个训练图像对应的向量。

在一些实施例中,第一映射模块,包括:

池化子模块,用于对每个训练图像对应的特征金字塔进行池化处理,得到每个训练图像对应的池化后的特征金字塔;

映射子模块,用于将每个训练图像对应的池化后的特征金子塔映射到向量空间,得到每个训练图像对应的向量。

在一些实施例中,训练子单元,包括:

获取模块,用于获取包含多层决策树的预设模型;

训练模块,用于将每个训练图像对应的训练特征向量以及每个样本标注的物体信息输入至预设模型,以对预设模型进行训练,得到训练过的预设模型。

在一些实施例中,映射子单元,包括:

池化模块,用于对每一像素块的旋转不变特征进行池化处理,得到每一像素块池化处理后的旋转不变特征;

第二映射模块,用于将每一像素块池化处理后的旋转不变特征映射到向量空间,得到每一像素块对应的特征向量。

具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。

由以上可知,本实施例提供的图像处理装置,通过划分单元301将待检测图像划分为预设数量的像素块;提取单元302提取预设数量的像素块中每一像素块的旋转不变特征;确定单元303根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;标记单元304根据目标像素块集合标记目标物体在待检测图像中的位置。以此通过对待检测每一像素块的旋转不变特征进行提取并根据提取的旋转不变特征确定目标物体包括的像素块集合,如此即使目标物体在3d场景中发生旋转,也可以准确识别其对应的像素块集合,从而提升了对3d游戏场景中物体识别的准确度。

本申请实施例还提供一种计算机设备,该计算机设备可以为服务器,如图8所示,为本申请提供的计算机设备的结构示意图。具体来讲:

该计算机设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图8中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

处理器401是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。

存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及图像处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能以及网页访问等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。

计算机设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

该计算机设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。

尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:

将待检测图像划分为预设数量的像素块;提取预设数量的像素块中每一像素块的旋转不变特征;根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;根据目标像素块集合标记目标物体在待检测图像中的位置。

应当说明的是,本申请实施例提供的计算机设备与上文实施例中的图像处理方法属于同一构思,以上各个操作的具体实施可参见前面的实施例,在此不作赘述。

本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一存储介质中,并由处理器进行加载和执行。

为此,本发明实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种图像处理方法中的步骤。例如,该指令可以执行如下步骤:

将待检测图像划分为预设数量的像素块;提取预设数量的像素块中每一像素块的旋转不变特征;根据每一像素块的旋转不变特征确定目标物体包括的目标像素块集合;根据目标像素块集合标记目标物体在待检测图像中的位置。

以上各个操作的具体实施可参见前面的实施例,在此不再赘述。

其中,该存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、磁盘或光盘等。

由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种图像处理方法中的步骤,因此,可以实现本发明实施例所提供的任一种图像处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。

其中,根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在存储介质中。计算机设备的处理器从存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图2或者图6的各种可选实现方式中提供的图像处理方法。

以上对本发明实施例所提供的一种图像处理方法、装置、存储介质及计算机设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1