CN106447721B - 图像阴影检测方法和装置 - Google Patents
图像阴影检测方法和装置 Download PDFInfo
- Publication number
- CN106447721B CN106447721B CN201610817703.2A CN201610817703A CN106447721B CN 106447721 B CN106447721 B CN 106447721B CN 201610817703 A CN201610817703 A CN 201610817703A CN 106447721 B CN106447721 B CN 106447721B
- Authority
- CN
- China
- Prior art keywords
- image
- shadow
- detected
- sample
- sample image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 138
- 238000012545 processing Methods 0.000 claims abstract description 44
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000012549 training Methods 0.000 claims description 84
- 238000013528 artificial neural network Methods 0.000 claims description 22
- 238000011176 pooling Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 12
- 238000002372 labelling Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供一种图像阴影检测方法和装置。该图像阴影检测方法包括:获取待检测图像;以及利用全卷积网络对所述待检测图像进行处理,以获得关于所述待检测图像中的阴影区域的位置信息的检测结果。根据本发明实施例的图像阴影检测方法和装置,利用全卷积网络可以有效、高精度地检测图像中的阴影区域,从而有助于提高图像识别任务中的图像识别的精度和可靠性。此外,该方法还具有处理速度快、模型体积小的特点,因此可以方便地部署到诸如智能手机、平板电脑等移动设备上。
Description
技术领域
本发明涉及图像处理领域,更具体地涉及一种图像阴影检测方法和装置。
背景技术
对于许多图像识别任务(例如图像分类、文字识别、目标跟踪等)而言,图像中的阴影是一个严重的干扰因素,会影响图像识别的精度和稳定性(即可靠性)。因此,如果能够在执行图像识别任务之前判断图像中是否存在阴影并预测阴影所在的区域,就可以有效地降低图像识别任务的难度、提升图像识别的精度和稳定性。然而,目前尚缺乏可以准确地检测图像中的阴影的成熟技术或***。
发明内容
考虑到上述问题而提出了本发明。本发明提供了一种图像阴影检测方法和装置。
根据本发明一方面,提供了一种图像阴影检测方法。该图像阴影检测方法包括:获取待检测图像;以及利用全卷积网络对所述待检测图像进行处理,以获得关于所述待检测图像中的阴影区域的位置信息的检测结果。
示例性地,所述检测结果包括阴影概率图,所述阴影概率图中的每个像素的像素值代表在所述待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
示例性地,所述图像阴影检测方法还包括:获取训练数据,其中,所述训练数据包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置;以及利用所述训练数据进行神经网络训练以得到所述全卷积网络。
示例性地,所述掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
示例性地,所述获取训练数据包括:获取初始图像集,其中,所述初始图像集中的初始图像与所述样本图像集中的样本图像一一对应;对于所述初始图像集中的每个初始图像,生成预定数目的阴影区域;对于所述初始图像集中的每个初始图像,将该初始图像与所述预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像;以及对于所述初始图像集中的每个初始图像,根据所述预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
示例性地,所述生成预定数目的阴影区域包括:生成多个图像块;从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得所述预定数目的阴影区域。
示例性地,在所述利用所述训练数据进行神经网络训练以得到所述全卷积网络之前,所述图像阴影检测方法还包括:将所述样本图像集中的样本图像的尺寸缩放为标准尺寸。
示例性地,所述将所述样本图像集中的样本图像的尺寸缩放为标准尺寸包括:对于所述样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
示例性地,所述获取训练数据包括:接收所述样本图像集和与所述样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及根据与所述样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
示例性地,在所述利用全卷积网络对所述待检测图像进行处理之前,所述图像阴影检测方法还包括:将所述待检测图像的尺寸缩放为标准尺寸。
示例性地,所述将所述待检测图像的尺寸缩放为标准尺寸包括:在保持所述待检测图像的宽高比不变的同时,将所述待检测图像的高度和宽度中的较大者缩放到标准大小。
示例性地,所述利用全卷积网络对所述待检测图像进行处理包括:将标准尺寸的所述待检测图像输入所述全卷积网络,以获得关于标准尺寸的所述待检测图像中的阴影区域的位置信息的初级结果;以及根据所述待检测图像的缩放比例和所述初级结果获得所述检测结果。
示例性地,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
根据本发明另一方面,提供了一种图像阴影检测装置,包括:图像获取模块,用于获取待检测图像;以及处理模块,用于利用全卷积网络对所述待检测图像进行处理,以获得关于所述待检测图像中的阴影区域的位置信息的检测结果。
示例性地,所述检测结果包括阴影概率图,所述阴影概率图中的每个像素的像素值代表在所述待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
示例性地,所述图像阴影检测装置还包括:数据获取模块,用于获取训练数据,其中,所述训练数据包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置;以及训练模块,用于利用所述训练数据进行神经网络训练以得到所述全卷积网络。
示例性地,所述掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
示例性地,所述数据获取模块包括:初始图像获取子模块,用于获取初始图像集,其中,所述初始图像集中的初始图像与所述样本图像集中的样本图像一一对应;阴影区域生成子模块,用于对于所述初始图像集中的每个初始图像,生成预定数目的阴影区域;叠加子模块,用于对于所述初始图像集中的每个初始图像,将该初始图像与所述预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像;以及掩膜信息获得子模块,用于对于所述初始图像集中的每个初始图像,根据所述预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
示例性地,所述阴影区域生成子模块包括:图像块生成单元,用于生成多个图像块;图像块选择单元,用于从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及像素值设定单元,用于将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得所述预定数目的阴影区域。
示例性地,所述图像阴影检测装置还包括:第一缩放模块,用于在所述训练模块利用所述训练数据进行神经网络训练以得到所述全卷积网络之前,将所述样本图像集中的样本图像的尺寸缩放为标准尺寸。
示例性地,所述第一缩放模块包括:第一缩放子模块,用于对于所述样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
示例性地,所述数据获取模块包括:接收子模块,用于接收所述样本图像集和与所述样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及掩膜信息生成子模块,用于根据与所述样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
示例性地,所述图像阴影检测装置还包括:第二缩放模块,用于在所述处理模块利用全卷积网络对所述待检测图像进行处理之前,将所述待检测图像的尺寸缩放为标准尺寸。
示例性地,所述第二缩放模块包括:第二缩放子模块,用于在保持所述待检测图像的宽高比不变的同时,将所述待检测图像的高度和宽度中的较大者缩放到标准大小。
示例性地,所述处理模块包括:输入子模块,用于将标准尺寸的所述待检测图像输入所述全卷积网络,以获得关于标准尺寸的所述待检测图像中的阴影区域的位置信息的初级结果;以及检测结果获得子模块,用于根据所述待检测图像的缩放比例和所述初级结果获得所述检测结果。
示例性地,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
根据本发明实施例的图像阴影检测方法和装置,利用全卷积网络可以有效、高精度地检测图像中的阴影区域,从而有助于提高图像识别任务中的图像识别的精度和可靠性。此外,该方法还具有处理速度快、模型体积小的特点,因此可以方便地部署到诸如智能手机、平板电脑等移动设备上。
附图说明
通过结合附图对本发明实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1示出用于实现根据本发明实施例的图像阴影检测方法和装置的示例电子设备的示意性框图;
图2示出根据本发明一个实施例的图像阴影检测方法的示意性流程图;
图3示出根据本发明一个实施例的待检测图像和对应的阴影概率图的示意图;
图4示出根据本发明一个实施例的全卷积网络的训练步骤的示意性框图;
图5示出根据本发明一个实施例的获取训练数据的步骤的流程图;
图6示出了根据本发明一个实施例的图像阴影检测装置的示意性框图;以及
图7示出根据本发明一个实施例的图像阴影检测***的示意性框图。
具体实施方式
为了使得本发明的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的示例实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例,应理解,本发明不受这里描述的示例实施例的限制。基于本发明中描述的本发明实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。
为了解决上文所述的问题,本发明实施例提出一种基于全卷积网络检测图像中的阴影的方法和装置。
首先,参照图1来描述用于实现根据本发明实施例的图像阴影检测方法和装置的示例电子设备100。
如图1所示,电子设备100包括一个或多个处理器102、一个或多个存储装置104、输入装置106、输出装置108和图像采集装置110,这些组件通过总线***112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子设备100的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备也可以具有其他组件和结构。
所述处理器102可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制所述电子设备100中的其它组件以执行期望的功能。
所述存储装置104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的本发明实施例中(由处理器实现)的客户端功能以及/或者其它期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
所述输出装置108可以向外部(例如用户)输出各种信息(例如图像和/或声音),并且可以包括显示器、扬声器等中的一个或多个。
所述图像采集装置110可以采集用于阴影检测的待检测图像,并且将所采集的图像存储在所述存储装置104中以供其它组件使用。图像采集装置110可以是摄像头。应当理解,图像采集装置110仅是示例,电子设备100可以不包括图像采集装置110。在这种情况下,可以利用其他图像采集装置采集待检测图像,并将采集的图像发送给电子设备100,或者电子设备100可以经由网络下载或直接从本地存储装置(例如上述存储装置104)中获取待检测图像。
示例性地,用于实现根据本发明实施例的图像阴影检测方法和装置的示例电子设备可以在各种具有数据计算和处理能力的设备上实现,例如,其可以在诸如智能手机、平板电脑等的移动设备、个人计算机或远程服务器上实现。
根据本发明一个方面,提供一种图像阴影检测方法。图2示出根据本发明一个实施例的图像阴影检测方法200的示意性框图。如图2所示,图像阴影检测方法200包括以下步骤。
在步骤S210,获取待检测图像。
待检测图像可以是任何需要检测阴影的图像,例如用于图像识别的图像。待检测图像可以是摄像头等图像采集装置采集到的原始图像或者是经由网络下载或本地存储的原始图像,也可以是对原始图像进行预处理之后获得的图像。
在步骤S220,利用全卷积网络对待检测图像进行处理,以获得关于待检测图像中的阴影区域的位置信息的检测结果。
图像可以在RGB、HSV等颜色空间中表示。对于存在阴影的图像,其阴影区域在HSV空间中的亮度分量通常比没有阴影的区域在HSV空间中的亮度分量低,因此,示例性地,可以根据图像中各像素的亮度值确定阴影区域的范围。也就是说,“阴影”及“阴影区域”可以基于诸如像素亮度值的参数来进行划分和界定,例如,可以将整个图像划分为阴影区域和非阴影区域。
可以将待检测图像输入训练好的全卷积网络。全卷积网络可以以语义分割模型M表示,模型M包括全卷积网络的网络结构及其参数。经过全卷积网络的处理,在全卷积网络的输出端可以获得关于待检测图像中的阴影区域的位置信息的检测结果。
根据本发明一个实施例,检测结果可以包括阴影概率图P,所述阴影概率图P中的每个像素的像素值代表在待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
阴影概率图P与待检测图像尺寸相同,二者的坐标相同的像素可以视为是相互对应的像素。在一个示例中,阴影概率图P是灰度图像,其像素的像素值即为其像素的灰度值。在采用偏白色像素表示阴影区域并采用偏黑色像素表示非阴影区域的情况下,阴影概率图P中的某像素的像素值越大,代表待检测图像的对应像素处存在阴影的概率越大。图3示出根据本发明一个实施例的待检测图像和对应的阴影概率图的示意图。参考图3,左侧示出的是原始的待检测图像,其为针对身份证采集的图像,右侧示出的是采用全卷积网络处理待检测图像之后输出的检测结果,即所述阴影概率图。如图3所述,在左侧的待检测图像的左下角处存在一块阴影区域,在右侧的阴影概率图中的对应位置处呈现为明显的白色,剩余与非阴影区域对应的位置则呈现为明显的黑色,阴影区域的对应位置和非阴影区域的对应位置之间的界限很清晰。在图3所示的实施例中,阴影概率图P中的某像素的像素值越大,代表待检测图像的对应像素处存在阴影的概率越大。同时,通过图3所示的阴影概率图P,可以清晰明确地确定待检测图像中的阴影区域的位置。
当然,可以理解的是,在采用偏黑色像素表示阴影区域并采用偏白色像素表示非阴影区域的情况下,阴影概率图P中的某像素的像素值越小,代表待检测图像的对应像素处存在阴影的概率越大,这与上一种情况相反。在这种情况下,图3右侧的阴影概率图的黑色部分和白色部分的像素颜色将发生互换。
根据本发明实施例的图像阴影检测方法,利用训练好的全卷积网络,可以直接检测阴影是否存在,并且可以精确地分割出阴影所在的区域,因此该方法具有精度高、适应性强的特点,可以极大地提高相关图像识别任务中的图像识别的精度、可靠性。此外,根据本发明实施例的图像阴影检测方法还具有处理速度快、模型体积小的特点,因此可以方便地部署到诸如智能手机、平板电脑等移动设备上。
示例性地,根据本发明实施例的图像阴影检测方法可以在具有存储器和处理器的设备、装置或者***中实现。
根据本发明实施例的图像阴影检测方法可以部署在图像采集端处,例如,可以部署在智能手机端。替代地,根据本发明实施例的图像阴影检测方法还可以分布地部署在服务器端(或云端)和客户端处。例如,可以在客户端采集待检测图像,客户端将采集到的待检测图像传送给服务器端(或云端),由服务器端(或云端)进行图像阴影检测。
根据本发明实施例,图像阴影检测方法200还可以包括神经网络的训练步骤。图4示出根据本发明一个实施例的神经网络的训练步骤S400的示意性框图。
如图4所示,神经网络的训练步骤S400可以包括以下步骤。
在步骤S410,获取训练数据,其中,所述训练数据包括样本图像集和与样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置。
样本图像可以是任何合适的包含阴影的图像。样本图像可以是摄像头采集到的原始图像或者是经由网络下载或本地存储的原始图像,也可以是对原始图像进行预处理之后获得的图像。
样本图像集可以包括任何数目的样本图像,包括但不限于仅包括一个样本图像的情况。示例性地,可以预先收集大量(例如5000个以上)样本图像,并将收集到的样本图像输入电子设备100,由电子设备100利用这些样本图像进行神经网络训练。
每个样本图像具有对应的掩膜信息。在一个示例中,样本图像可以是原始采集的包含阴影的自然图像,在这种情况下,可以采用人工方式标注出样本图像中的阴影所在的区域,以获得标注数据,掩膜信息可以是基于该标注数据生成的。在另一示例中,样本图像可以是利用不包含或基本不包含阴影的图像合成的包括阴影区域的合成图像,在这种情况下,可以根据合成情况生成与每个样本图像相对应的掩膜信息。
掩膜信息可以具有任何合适的形式,其主要用于指示对应的样本图像中的阴影区域的位置。在一个示例中,掩膜信息可以是关于对应的样本图像中的阴影区域的轮廓的轮廓数据。轮廓数据可以包括阴影区域的轮廓上的点的坐标。标记出阴影区域的轮廓,就可以获知阴影区域的位置。在另一示例中,掩膜信息可以是与对应的样本图像尺寸相同的二值图像,本示例将在下文详细描述。上述形式的掩膜信息仅是示例而非限制,本发明不限于此。
在步骤S420,利用训练数据进行神经网络训练以得到所述全卷积网络。
将每个样本图像和与其相对应的掩膜信息(例如二值图像)作为输入,进行神经网络的训练,以得到所述全卷积网络。全卷积网络具有初始参数,这些初始参数可以是经验值,在训练过程中全卷积网络的初始参数被不断更新,在训练完成时可以获得所需的最终参数。在步骤S420中,可以采用常规的神经网络训练方式对全卷积网络训练,例如通过反向传播算法等方法来进行训练。在经过训练之后最终获得的全卷积网络可以用于图像阴影检测。
通过以上训练方法,可以训练获得具有较高检测精度的全卷积网络。
根据本发明实施例,掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
掩膜信息可以通过对样本图像进行二值化处理来获得。图像二值化就是将图像上的像素点的灰度值设置为0或255,也就是使整个图像呈现出明显的黑白效果。在一个示例中,可以通过将样本图像中的阴影区域内部的像素的灰度值设置为255,将其余像素的灰度值设置为0来获得二值图像。这样,在二值图像中,存在阴影的地方呈现为白色,其余部分呈现为黑色,阴影区域与非阴影区域之间的界限非常清晰,从而将阴影区域分割出来。根据本示例获得的二值图像在呈现效果上类似于图3所示的右侧图像。在另一示例中,可以通过将样本图像中的阴影区域内部的像素的灰度值设置为0,将其余像素的灰度值设置为255来获得二值图像。这样,在二值图像中,存在阴影的地方呈现为黑色,其余部分呈现为白色,同样可以将阴影区域分割出来。
由此可见,二值图像与样本图像尺寸相同,像素一一对应,可以认为二值图像是由样本图像转化而来的,二者的区别在于二值图像主要强调了阴影区域而对图像中所包含的其余信息不关注。
由于二值图像中仅包含两种灰度值数据,因此图像非常简单,数据量比较小,并且能够凸显出感兴趣的目标的轮廓。另外,在对二值图像进行处理时所需的计算量也比较小。因此,采用二值图像来记录样本图像中的阴影区域的位置是一种简单高效的方式,便于后续全卷积网络的训练。
如上文所述,样本图像可以通过图像合成的方式获得,下面结合图5进行描述。图5示出根据本发明一个实施例的获取训练数据的步骤(步骤S410)的流程图。根据本实施例,步骤S410可以包括以下步骤。
在步骤S412,获取初始图像集,其中,初始图像集中的初始图像与样本图像集中的样本图像一一对应。
初始图像可以是任何合适的自然图像,其可以包含尽量少的阴影,比较可取的是初始图像完全不包含阴影。初始图像中包含的阴影少,可以使得所训练出的全卷积网络的检测精度较高。初始图像可以是摄像头等图像采集装置采集到的原始图像或者是经由网络下载或本地存储的原始图像,也可以是对原始图像进行预处理之后获得的图像。
可以收集大量(例如5000个以上)初始图像,这些初始图像可以记为集合S={I1,I2,...,IN},即初始图像集,其中N代表初始图像的数目。
在步骤S414,对于初始图像集中的每个初始图像,生成预定数目的阴影区域。
对于集合S中的每个初始图像Ik,k=1,...,N,可以生成H个阴影区域,H即为本文所述的预定数目,其是可配置参数。步骤S414中所生成的阴影区域的数目可以根据需要设定,本发明不对此进行限制。在一个示例中,预定数目的取值范围可以是[1,5]。应该理解的是,预定数目的取值范围可以根据实际需求而设定。通常一幅图像中存在阴影的区域可能不会太多,所以在步骤S414中所生成的阴影区域的数目无需太大。对于初始图像集中的任意两个不同初始图像来说,所生成的阴影区域的数目(即预定数目)可以相同,也可以不同。
在一个示例中,步骤S414可以包括:生成多个图像块;从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得预定数目的阴影区域。
所生成的图像块的数目可以与所需的阴影区域的数目一致,或者所生成的图像块的数目可以大于所需的阴影区域的数目。然后可以从所生成的图像块中选择数目等于预定数目的图像块,这样所选择的图像块与预定数目的阴影区域一一对应。数目等于预定数目的图像块可以通过在图像(可以是任意空白图像)上以任意方式选取而获得。例如,可以在空白图像上随机生成一条直线,该直线将图像划分为两部分,然后可以随机选择其中的一部分作为数目等于预定数目的图像块,在这种情况下,预定数目为1。如果将直线所划分出的两部分都作为数目等于预定数目的图像块,则预定数目为2。根据另一示例,可以在空白图像上生成任意形状的图形,例如圆形、方形、三角形等等,该图形的轮廓所包围的图像块为所需要的图像块。所期望的预定数目是多少就可以生成多少个这样的图形。例如,假设预定数目是5,则可以生成5个图形,其中任意两个不同图形的形状和/或大小可以相同,也可以不同。
预设阴影值范围可以是任何合适的范围,本发明不对此进行限制。例如,预设阴影范围可以是[-255,-128],该范围内的值指的是灰度值。图像块中的每个像素的像素值可以是随机设置的,也就是不同像素的像素值可能不同。但是,应该理解的是,可以将同一图像块中的所有像素设置为相同的像素值,另外,还可以将任意两个不同图像块中的像素设置为相同的像素值。
通过以上方式,可以自动生成预定数目的阴影区域。
在步骤S416,对于初始图像集中的每个初始图像,将该初始图像与预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像。
将阴影区域与初始图像叠加在一起,可以合成样本图像。每个阴影区域的叠加位置可以任意设定。将生成的阴影区域与初始图像Ik进行叠加,得到合成的图像(即样本图像)I′k,多个合成的图像集合在一起,构成样本图像集。
在步骤S418,对于初始图像集中的每个初始图像,根据预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
在确定阴影区域在初始图像中的叠加位置的情况下(可以是在阴影区域与初始图像叠加之前、之后或与此同时),可以根据阴影区域的叠加位置确定本文所述的掩膜信息。例如,在掩膜信息是二值图像的情况下,可以将样本图像中的、在阴影区域的叠加位置内的像素的灰度值设置为255,将样本图像中的、在阴影区域的叠加位置外的像素的灰度值设置为0,从而获得二值图像Lk。通过以上方式获得的二值图像Lk是一个与样本图像I′k尺寸相同的图像,对于I′k存在阴影的区域,Lk中对应位置的像素的灰度值为255,其余位置的像素的灰度值为0。
通过以上步骤可以构造一个集合T={(I′1,L1),(I′2,L2),...,(I′N,LN)},所述集合包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,该集合T即为本文所述的训练数据。
采用自动合成样本图像的方式来获得所需的训练数据可以免去繁琐的人工收集和标记数据的过程,可以降低时间成本和人工成本。此外,由于阴影区域是计算生成的,因此其位置比较可控,用于指示阴影区域的位置的掩膜信息准确度也会比较高,从而使得训练出的全卷积网络的检测精度较高。
根据本发明实施例,在步骤S420之前,图像阴影检测方法200还可以包括:将样本图像集中的样本图像的尺寸缩放为标准尺寸。
全卷积网络可以处理多种尺寸的图像,因此,可以将原始尺寸的样本图像直接输入全卷积网络进行训练。当然,可以理解的是,也可以在将样本图像输入全卷积网络之前,将样本图像的尺寸缩放为标准尺寸,即对样本图像进行归一化。图像太小不便于识别阴影区域,图像太大运算量较大,因此可以将样本图像归一化为合适的大小再输入全卷积网络进行训练。
根据本发明实施例,将样本图像集中的样本图像的尺寸缩放为标准尺寸可以包括:对于样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
对于每个样本图像来说,可以将样本图像的高度和宽度相比较,对于二者中的较大者,将其缩放到标准大小,同时宽高比不变。所述标准大小可以根据需要设定,例如其可以为160像素、192像素、224像素、256像素等。
需要注意的是,在上述掩膜信息是二值图像的实施例中,二值图像要与样本图像的尺寸保持一致。因此,如果样本图像进行了缩放,则可以将二值图像进行相应的缩放,或者可以在样本图像进行缩放之后,再基于缩放后的样本图像生成二值图像。
根据本发明一个实施例,阴影区域可以通过标注的方式获得。在这种情况下,步骤S410可以包括:接收样本图像集和与样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及根据与样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
如上文所述,训练数据可以通过人工收集和标注的方式获得。在这种情况下,样本图像可以是包含阴影的自然图像。在收集到大量样本图像之后,可以由标注人员将每个样本图像上的阴影区域标注出来,例如,典型地标注阴影区域的轮廓上的点,由此可以获得标注数据。电子设备100在接收到样本图像和对应的标注数据之后,可以根据标注数据确定阴影区域在样本图像中的位置,从而可以生成掩膜信息。例如,在接收到样本图像和对应的标注数据之后,可以根据标注数据将样本图像中的、在阴影区域的轮廓内部的像素的灰度值设置为255,将样本图像中的、在阴影区域的轮廓外部的像素的灰度值设置为0,以获得二值图像。
根据本发明一个实施例,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
全卷积网络是一种深度神经网络结构,主要由卷积层(convolutional layer)、池化层(pooling layer)和上采样层(up-sampling layer)组成。在本实施例中,采用等价的卷积层代替传统全卷积网络中的全连接层(fully-connected layer),这可以在一定程度上简化运算,减少数据计算量。当然,根据本发明实施例的全卷积网络也可以不采用等价的卷积层代替全连接层而是仍旧采用常规的全连接层实现。
全卷积网络的输入层接收训练数据或待检测图像;接下来是两个卷积层,示例性地,这两个卷积层中的每个卷积层的滤波器的数目为6,滤波器大小为3x3;随后,连接一个最大池化层(max-pooling layer);接下来是两个卷积层,示例性地,这两个卷积层中的每个卷积层的滤波器的数目为12,滤波器大小为3x3;随后,连接一个最大池化层;接下来是三个卷积层,示例性地,这三个卷积层中的每个卷积层的滤波器的数目为16,滤波器大小为3x3;随后,连接一个最大池化层;接下来是三个卷积层,这三个卷积层中的每个卷积层的滤波器的数目为24,滤波器大小为3x3;随后,连接一个最大池化层;接下来是三个卷积层,这三个卷积层中的每个卷积层的滤波器的数目为32,滤波器大小为3x3。
可以将样本集合T送入设计好的全卷积网络进行训练,得到上述模型M。在训练过程中,每次将一个样本图像和对应的掩膜信息输入到模型M中,初始学习率为0.00000001,每经过10000轮迭代,学习率降为原来的1/10。在迭代100000轮后,训练过程终止,可以获得训练好的全卷积网络。随后,在需要检测图像中的阴影时,就可以将待检测图像输入训练好的全卷积网络进行处理,输出上文所述的阴影概率图。
应当理解,上述全卷积网络的网络结构仅为示例而非限制,全卷积网络可以具有其他任何合适的网络结构,其中的卷积层、池化层等层可以具有其他合适的数目,并且每层中的滤波器也可以具有其他合适的数目及大小。此外,上述最大池化层可以采用平均池化层等其他形式的池化层代替。
根据本发明实施例,在步骤S220之前,图像阴影检测方法200还可以包括:将待检测图像的尺寸缩放为标准尺寸。
如上文所述,全卷积网络可以处理多种尺寸的图像,因此,可以将原始尺寸的待检测图像直接输入全卷积网络进行处理。当然,与对样本图像进行缩放类似地,在利用全卷积网络处理待检测图像的过程中,也可以对待检测图像进行缩放。同样地,由于图像太小不便于识别阴影区域,图像太大运算量较大,因此可以将待检测图像归一化为合适的大小再输入全卷积网络进行处理。需要注意的是,待检测图像的缩放比例可以与任一样本图像的缩放比例相同或者不同。需要理解的是,对于样本图像集中的不同样本图像,其缩放比例也可以相同或者不同。
根据本发明实施例,所述将待检测图像的尺寸缩放为标准尺寸可以包括:在保持待检测图像的宽高比不变的同时,将待检测图像的高度和宽度中的较大者缩放到标准大小。
可以将待检测图像的高度和宽度相比较,对于二者中的较大者,将其缩放到标准大小,同时宽高比不变。所述标准大小可以根据需要设定,例如其可以为160像素、192像素、224像素、256像素等。
根据本发明实施例,步骤S220可以包括:将标准尺寸的待检测图像输入全卷积网络,以获得关于标准尺寸的待检测图像中的阴影区域的位置信息的初级结果;以及根据待检测图像的缩放比例和初级结果获得检测结果。
如果在采用全卷积网络处理待检测图像之前对待检测图像进行缩放,由于待检测图像的尺寸产生了变化,因此,全卷积网络输出的结果(即初级结果)对应的是缩放后的待检测图像而非原始的待检测图像,因此可以进一步根据待检测图像的缩放比例和初级结果获得与原始的待检测图像对应的检测结果。例如,假设全卷积网络输出的是阴影概率图,并且假设待检测图像被放大为原来的2倍,则可以对全卷积网络直接输出的阴影概率图进行与待检测图像相反的缩放,即缩小为原来的2倍,从而获得最终的检测结果,其是像素与原始的待检测图像的像素一一对应的阴影概率图。
根据本发明另一方面,提供一种图像阴影检测装置。图6示出了根据本发明一个实施例的图像阴影检测装置600的示意性框图。
如图6所示,根据本发明实施例的图像阴影检测装置600包括图像获取模块610和处理模块620。所述各个模块可分别执行上文中结合图2-5描述的图像阴影检测方法的各个步骤/功能。以下仅对该图像阴影检测装置600的各模块的主要功能进行描述,而省略以上已经描述过的细节内容。
图像获取模块610用于获取待检测图像。图像获取模块610可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
处理模块620用于利用全卷积网络对待检测图像进行处理,以获得关于待检测图像中的阴影区域的位置信息的检测结果。处理模块620可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
根据本发明实施例,所述检测结果包括阴影概率图,所述阴影概率图中的每个像素的像素值代表在所述待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
根据本发明实施例,所述图像阴影检测装置600还包括:数据获取模块,用于获取训练数据,其中,所述训练数据包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置;以及训练模块,用于利用所述训练数据进行神经网络训练以得到所述全卷积网络。
根据本发明实施例,所述掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
根据本发明实施例,所述数据获取模块610包括:初始图像获取子模块,用于获取初始图像集,其中,所述初始图像集中的初始图像与所述样本图像集中的样本图像一一对应;阴影区域生成子模块,用于对于所述初始图像集中的每个初始图像,生成预定数目的阴影区域;叠加子模块,用于对于所述初始图像集中的每个初始图像,将该初始图像与所述预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像;以及掩膜信息获得子模块,用于对于所述初始图像集中的每个初始图像,根据所述预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
根据本发明实施例,所述阴影区域生成子模块包括:图像块生成单元,用于生成多个图像块;图像块选择单元,用于从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及像素值设定单元,用于将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得所述预定数目的阴影区域。
根据本发明实施例,所述图像阴影检测装置600还包括:第一缩放模块,用于在所述训练模块利用所述训练数据进行神经网络训练以得到所述全卷积网络之前,将所述样本图像集中的样本图像的尺寸缩放为标准尺寸。
根据本发明实施例,所述第一缩放模块包括:第一缩放子模块,用于对于所述样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
根据本发明实施例,所述数据获取模块610包括:接收子模块,用于接收所述样本图像集和与所述样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及掩膜信息生成子模块,用于根据与所述样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
根据本发明实施例,所述图像阴影检测装置600还包括:第二缩放模块,用于在所述处理模块利用全卷积网络对所述待检测图像进行处理之前,将所述待检测图像的尺寸缩放为标准尺寸。
根据本发明实施例,所述第二缩放模块包括:第二缩放子模块,用于在保持所述待检测图像的宽高比不变的同时,将所述待检测图像的高度和宽度中的较大者缩放到标准大小。
根据本发明实施例,所述处理模块620包括:输入子模块,用于将标准尺寸的所述待检测图像输入所述全卷积网络,以获得关于标准尺寸的所述待检测图像中的阴影区域的位置信息的初级结果;以及检测结果获得子模块,用于根据所述待检测图像的缩放比例和所述初级结果获得所述检测结果。
根据本发明实施例,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
图7示出了根据本发明一个实施例的图像阴影检测***700的示意性框图。图像阴影检测***700包括图像采集装置710、存储装置720、以及处理器730。
图像采集装置710用于待检测图像。图像采集装置710是可选的,图像阴影检测***700可以不包括图像采集装置710。
所述存储装置720存储用于实现根据本发明实施例的图像阴影检测方法中的相应步骤的程序代码。
所述处理器730用于运行所述存储装置720中存储的程序代码,以执行根据本发明实施例的图像阴影检测方法的相应步骤,并且用于实现根据本发明实施例的图像阴影检测装置600中的图像获取模块610和处理模块620。
在一个实施例中,所述程序代码被所述处理器730运行时使所述图像阴影检测***700执行以下步骤:获取待检测图像;以及利用全卷积网络对所述待检测图像进行处理,以获得关于所述待检测图像中的阴影区域的位置信息的检测结果。
在一个实施例中,所述检测结果包括阴影概率图,所述阴影概率图中的每个像素的像素值代表在所述待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
在一个实施例中,所述程序代码被所述处理器730运行时还使所述图像阴影检测***700执行:获取训练数据,其中,所述训练数据包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置;以及利用所述训练数据进行神经网络训练以得到所述全卷积网络。
在一个实施例中,所述掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
在一个实施例中,所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的获取训练数据的步骤包括:获取初始图像集,其中,所述初始图像集中的初始图像与所述样本图像集中的样本图像一一对应;对于所述初始图像集中的每个初始图像,生成预定数目的阴影区域;对于所述初始图像集中的每个初始图像,将该初始图像与所述预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像;以及对于所述初始图像集中的每个初始图像,根据所述预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
在一个实施例中,所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的生成预定数目的阴影区域的步骤包括:生成多个图像块;从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得所述预定数目的阴影区域。
在一个实施例中,在所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的利用所述训练数据进行神经网络训练以得到所述全卷积网络的步骤之前,所述程序代码被所述处理器730运行时还使所述图像阴影检测***700执行:将所述样本图像集中的样本图像的尺寸缩放为标准尺寸。
在一个实施例中,所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的将所述样本图像集中的样本图像的尺寸缩放为标准尺寸的步骤包括:对于所述样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
在一个实施例中,所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的获取训练数据的步骤包括:接收所述样本图像集和与所述样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及根据与所述样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
在一个实施例中,在所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的利用全卷积网络对所述待检测图像进行处理的步骤之前,所述程序代码被所述处理器730运行时还使所述图像阴影检测***700执行:将所述待检测图像的尺寸缩放为标准尺寸。
在一个实施例中,所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的将所述待检测图像的尺寸缩放为标准尺寸的步骤包括:在保持所述待检测图像的宽高比不变的同时,将所述待检测图像的高度和宽度中的较大者缩放到标准大小。
在一个实施例中,所述程序代码被所述处理器730运行时使所述图像阴影检测***700所执行的利用全卷积网络对所述待检测图像进行处理包括:将标准尺寸的所述待检测图像输入所述全卷积网络,以获得关于标准尺寸的所述待检测图像中的阴影区域的位置信息的初级结果;以及根据所述待检测图像的缩放比例和所述初级结果获得所述检测结果。
在一个实施例中,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
此外,根据本发明实施例,还提供了一种存储介质,在所述存储介质上存储了程序指令,在所述程序指令被计算机或处理器运行时用于执行本发明实施例的图像阴影检测方法的相应步骤,并且用于实现根据本发明实施例的图像阴影检测装置中的相应模块。所述存储介质例如可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。
在一个实施例中,所述计算机程序指令在被计算机或处理器运行时可以使得计算机或处理器实现根据本发明实施例的图像阴影检测装置的各个功能模块,并且/或者可以执行根据本发明实施例的图像阴影检测方法。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机执行以下步骤:获取待检测图像;以及利用全卷积网络对所述待检测图像进行处理,以获得关于所述待检测图像中的阴影区域的位置信息的检测结果。
在一个实施例中,所述检测结果包括阴影概率图,所述阴影概率图中的每个像素的像素值代表在所述待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
在一个实施例中,所述计算机程序指令在被计算机运行时还使所述计算机执行:获取训练数据,其中,所述训练数据包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置;以及利用所述训练数据进行神经网络训练以得到所述全卷积网络。
在一个实施例中,所述掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机所执行的获取训练数据的步骤包括:获取初始图像集,其中,所述初始图像集中的初始图像与所述样本图像集中的样本图像一一对应;对于所述初始图像集中的每个初始图像,生成预定数目的阴影区域;对于所述初始图像集中的每个初始图像,将该初始图像与所述预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像;以及对于所述初始图像集中的每个初始图像,根据所述预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机所执行的生成预定数目的阴影区域的步骤包括:生成多个图像块;从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得所述预定数目的阴影区域。
在一个实施例中,在所述计算机程序指令在被计算机运行时使所述计算机所执行的利用所述训练数据进行神经网络训练以得到所述全卷积网络的步骤之前,所述计算机程序指令在被计算机运行时还使所述计算机执行:将所述样本图像集中的样本图像的尺寸缩放为标准尺寸。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机所执行的将所述样本图像集中的样本图像的尺寸缩放为标准尺寸的步骤包括:对于所述样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机所执行的获取训练数据的步骤包括:接收所述样本图像集和与所述样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及根据与所述样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
在一个实施例中,在所述计算机程序指令在被计算机运行时使所述计算机所执行的利用全卷积网络对所述待检测图像进行处理的步骤之前,所述计算机程序指令在被计算机运行时还使所述计算机执行:将所述待检测图像的尺寸缩放为标准尺寸。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机所执行的将所述待检测图像的尺寸缩放为标准尺寸的步骤包括:在保持所述待检测图像的宽高比不变的同时,将所述待检测图像的高度和宽度中的较大者缩放到标准大小。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机所执行的利用全卷积网络对所述待检测图像进行处理包括:将标准尺寸的所述待检测图像输入所述全卷积网络,以获得关于标准尺寸的所述待检测图像中的阴影区域的位置信息的初级结果;以及根据所述待检测图像的缩放比例和所述初级结果获得所述检测结果。
在一个实施例中,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
根据本发明实施例的图像阴影检测***中的各模块可以通过根据本发明实施例的实施图像阴影检测的电子设备的处理器运行在存储器中存储的计算机程序指令来实现,或者可以在根据本发明实施例的计算机程序产品的计算机可读存储介质中存储的计算机指令被计算机运行时实现。
根据本发明实施例的图像阴影检测方法及装置,利用训练好的全卷积网络,可以直接检测阴影是否存在,并且可以精确地分割出阴影所在的区域,因此该方法具有精度高、适应性强的特点,可以极大地提高相关图像识别任务中的图像识别的精度、可靠性。此外,根据本发明实施例的图像阴影检测方法和装置还具有处理速度快、模型体积小的特点,因此可以方便地部署到诸如智能手机、平板电脑等的移动设备上。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本发明的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本发明的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本发明的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的图像阴影检测装置中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本发明的具体实施方式或对具体实施方式的说明,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以权利要求的保护范围为准。
Claims (24)
1.一种图像阴影检测方法,包括:
获取待检测图像;以及
利用全卷积网络对所述待检测图像进行处理,以在所述全卷积网络的输出端获得关于所述待检测图像中的阴影区域的位置信息的检测结果,其中,所述检测结果包括阴影概率图,所述阴影概率图中的每个像素的像素值代表在所述待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
2.如权利要求1所述的图像阴影检测方法,其中,所述图像阴影检测方法还包括:
获取训练数据,其中,所述训练数据包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置;以及
利用所述训练数据进行神经网络训练以得到所述全卷积网络。
3.如权利要求2所述的图像阴影检测方法,其中,所述掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
4.如权利要求2所述的图像阴影检测方法,其中,所述获取训练数据包括:
获取初始图像集,其中,所述初始图像集中的初始图像与所述样本图像集中的样本图像一一对应;
对于所述初始图像集中的每个初始图像,
生成预定数目的阴影区域;
将该初始图像与所述预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像;以及
根据所述预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
5.如权利要求4所述的图像阴影检测方法,其中,所述生成预定数目的阴影区域包括:
生成多个图像块;
从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及
将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得所述预定数目的阴影区域。
6.如权利要求2所述的图像阴影检测方法,其中,在所述利用所述训练数据进行神经网络训练以得到所述全卷积网络之前,所述图像阴影检测方法还包括:
将所述样本图像集中的样本图像的尺寸缩放为标准尺寸。
7.如权利要求6所述的图像阴影检测方法,其中,所述将所述样本图像集中的样本图像的尺寸缩放为标准尺寸包括:
对于所述样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
8.如权利要求2所述的图像阴影检测方法,其中,所述获取训练数据包括:
接收所述样本图像集和与所述样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及
根据与所述样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
9.如权利要求1所述的图像阴影检测方法,其中,在所述利用全卷积网络对所述待检测图像进行处理之前,所述图像阴影检测方法还包括:
将所述待检测图像的尺寸缩放为标准尺寸。
10.如权利要求9所述的图像阴影检测方法,其中,所述将所述待检测图像的尺寸缩放为标准尺寸包括:
在保持所述待检测图像的宽高比不变的同时,将所述待检测图像的高度和宽度中的较大者缩放到标准大小。
11.如权利要求9所述的图像阴影检测方法,其中,所述利用全卷积网络对所述待检测图像进行处理包括:
将标准尺寸的所述待检测图像输入所述全卷积网络,以获得关于标准尺寸的所述待检测图像中的阴影区域的位置信息的初级结果;以及
根据所述待检测图像的缩放比例和所述初级结果获得所述检测结果。
12.如权利要求1所述的图像阴影检测方法,其中,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
13.一种图像阴影检测装置,包括:
图像获取模块,用于获取待检测图像;以及
处理模块,用于利用全卷积网络对所述待检测图像进行处理,以在所述全卷积网络的输出端获得关于所述待检测图像中的阴影区域的位置信息的检测结果,其中,所述检测结果包括阴影概率图,所述阴影概率图中的每个像素的像素值代表在所述待检测图像中的、与该像素坐标相同的像素处存在阴影的概率。
14.如权利要求13所述的图像阴影检测装置,其中,所述图像阴影检测装置还包括:
数据获取模块,用于获取训练数据,其中,所述训练数据包括样本图像集和与所述样本图像集中的每个样本图像分别对应的掩膜信息,所述掩膜信息用于指示对应的样本图像中的阴影区域的位置;以及
训练模块,用于利用所述训练数据进行神经网络训练以得到所述全卷积网络。
15.如权利要求14所述的图像阴影检测装置,其中,所述掩膜信息为与对应的样本图像尺寸相同的二值图像,所述二值图像中的、与位于对应的样本图像的阴影区域内部的像素坐标相同的像素具有第一像素值,并且,所述二值图像中的、与位于对应的样本图像的阴影区域外部的像素坐标相同的像素具有第二像素值。
16.如权利要求14所述的图像阴影检测装置,其中,所述数据获取模块包括:
初始图像获取子模块,用于获取初始图像集,其中,所述初始图像集中的初始图像与所述样本图像集中的样本图像一一对应;
阴影区域生成子模块,用于对于所述初始图像集中的每个初始图像,生成预定数目的阴影区域;
叠加子模块,用于对于所述初始图像集中的每个初始图像,将该初始图像与所述预定数目的阴影区域叠加在一起,以获得与该初始图像相对应的样本图像;以及
掩膜信息获得子模块,用于对于所述初始图像集中的每个初始图像,根据所述预定数目的阴影区域在该初始图像中的叠加位置获得与该初始图像所对应的样本图像相对应的掩膜信息。
17.如权利要求16所述的图像阴影检测装置,其中,所述阴影区域生成子模块包括:
图像块生成单元,用于生成多个图像块;
图像块选择单元,用于从所述多个图像块中随机选择数目等于所述预定数目的图像块;以及
像素值设定单元,用于将所选择的图像块中的每个图像块中的像素的像素值随机设置为预设阴影值范围内的值,以获得所述预定数目的阴影区域。
18.如权利要求14所述的图像阴影检测装置,其中,所述图像阴影检测装置还包括:
第一缩放模块,用于在所述训练模块利用所述训练数据进行神经网络训练以得到所述全卷积网络之前,将所述样本图像集中的样本图像的尺寸缩放为标准尺寸。
19.如权利要求18所述的图像阴影检测装置,其中,所述第一缩放模块包括:
第一缩放子模块,用于对于所述样本图像集中的每个样本图像,在保持该样本图像的宽高比不变的同时,将该样本图像的高度和宽度中的较大者缩放到标准大小。
20.如权利要求14所述的图像阴影检测装置,其中,所述数据获取模块包括:
接收子模块,用于接收所述样本图像集和与所述样本图像集中的每个样本图像分别对应的标注数据,其中,所述标注数据包括用于指示对应的样本图像中的阴影区域的轮廓的轮廓数据;以及
掩膜信息生成子模块,用于根据与所述样本图像集中的每个样本图像相对应的轮廓数据生成与该样本图像相对应的掩膜信息。
21.如权利要求13所述的图像阴影检测装置,其中,所述图像阴影检测装置还包括:
第二缩放模块,用于在所述处理模块利用全卷积网络对所述待检测图像进行处理之前,将所述待检测图像的尺寸缩放为标准尺寸。
22.如权利要求21所述的图像阴影检测装置,其中,所述第二缩放模块包括:
第二缩放子模块,用于在保持所述待检测图像的宽高比不变的同时,将所述待检测图像的高度和宽度中的较大者缩放到标准大小。
23.如权利要求21所述的图像阴影检测装置,其中,所述处理模块包括:
输入子模块,用于将标准尺寸的所述待检测图像输入所述全卷积网络,以获得关于标准尺寸的所述待检测图像中的阴影区域的位置信息的初级结果;以及
检测结果获得子模块,用于根据所述待检测图像的缩放比例和所述初级结果获得所述检测结果。
24.如权利要求13所述的图像阴影检测装置,其中,所述全卷积网络配置为具有以下网络结构:输入层,接下来是两个卷积层,连接一个最大池化层,接下来是两个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层,连接一个最大池化层,接下来是三个卷积层。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610817703.2A CN106447721B (zh) | 2016-09-12 | 2016-09-12 | 图像阴影检测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610817703.2A CN106447721B (zh) | 2016-09-12 | 2016-09-12 | 图像阴影检测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106447721A CN106447721A (zh) | 2017-02-22 |
CN106447721B true CN106447721B (zh) | 2021-08-10 |
Family
ID=58167648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610817703.2A Active CN106447721B (zh) | 2016-09-12 | 2016-09-12 | 图像阴影检测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106447721B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108509961A (zh) * | 2017-02-27 | 2018-09-07 | 北京旷视科技有限公司 | 图像处理方法和装置 |
US10262236B2 (en) * | 2017-05-02 | 2019-04-16 | General Electric Company | Neural network training image generation system |
CN109410211A (zh) * | 2017-08-18 | 2019-03-01 | 北京猎户星空科技有限公司 | 一种图像中目标物体的分割方法及装置 |
CN107464230B (zh) | 2017-08-23 | 2020-05-08 | 京东方科技集团股份有限公司 | 图像处理方法及装置 |
CN108304845B (zh) * | 2018-01-16 | 2021-11-09 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置及存储介质 |
CN108846814B (zh) * | 2018-06-11 | 2021-07-06 | 广州视源电子科技股份有限公司 | 图像处理方法、装置、可读存储介质及计算机设备 |
CN108805884A (zh) * | 2018-06-13 | 2018-11-13 | 北京搜狐新媒体信息技术有限公司 | 一种马赛克区域检测方法、装置及设备 |
CN109410123B (zh) * | 2018-10-15 | 2023-08-18 | 深圳市能信安科技股份有限公司 | 基于深度学习的去除马赛克的方法、装置及电子设备 |
CN109754440A (zh) * | 2018-12-24 | 2019-05-14 | 西北工业大学 | 一种基于全卷积网络和均值漂移的阴影区域检测方法 |
CN110570390B (zh) * | 2019-07-22 | 2022-04-15 | 无锡北邮感知技术产业研究院有限公司 | 一种图像检测方法及装置 |
CN110443763B (zh) * | 2019-08-01 | 2023-10-13 | 山东工商学院 | 一种基于卷积神经网络的图像阴影去除方法 |
CN111178211B (zh) * | 2019-12-20 | 2024-01-12 | 天津极豪科技有限公司 | 图像分割方法、装置、电子设备及可读存储介质 |
CN111462222B (zh) * | 2020-04-03 | 2024-05-14 | 深圳前海微众银行股份有限公司 | 待侦测物体储量确定方法、装置、设备及介质 |
CN111462221A (zh) * | 2020-04-03 | 2020-07-28 | 深圳前海微众银行股份有限公司 | 待侦测物体阴影面积提取方法、装置、设备及存储介质 |
CN113298593A (zh) * | 2020-07-16 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 商品推荐及图像检测方法、装置、设备和存储介质 |
CN113077459B (zh) * | 2021-04-28 | 2022-08-05 | 合肥的卢深视科技有限公司 | 图像清晰度检测方法、装置、电子设备及存储介质 |
CN114626468B (zh) * | 2022-03-17 | 2024-02-09 | 小米汽车科技有限公司 | 在图像中生成阴影的方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104463865A (zh) * | 2014-12-05 | 2015-03-25 | 浙江大学 | 一种人像分割方法 |
CN105354565A (zh) * | 2015-12-23 | 2016-02-24 | 北京市商汤科技开发有限公司 | 基于全卷积网络人脸五官定位与判别的方法及*** |
-
2016
- 2016-09-12 CN CN201610817703.2A patent/CN106447721B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104463865A (zh) * | 2014-12-05 | 2015-03-25 | 浙江大学 | 一种人像分割方法 |
CN105354565A (zh) * | 2015-12-23 | 2016-02-24 | 北京市商汤科技开发有限公司 | 基于全卷积网络人脸五官定位与判别的方法及*** |
Non-Patent Citations (2)
Title |
---|
全卷积网络:从图像级理解到像素级理解,链接:https://zhuanlan.zhihu.com/p/20872103;果果是枚开心果;《知乎专栏》;20160509;全文 * |
基于多尺度特征学习的阴影检测;张永库 等;《计算机应用与软件》;20160531;第186页左栏第3段-第187页左栏第3段 * |
Also Published As
Publication number | Publication date |
---|---|
CN106447721A (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106447721B (zh) | 图像阴影检测方法和装置 | |
CN112348815B (zh) | 图像处理方法、图像处理装置以及非瞬时性存储介质 | |
CN110163198B (zh) | 一种表格识别重建方法、装置和存储介质 | |
CN108876791B (zh) | 图像处理方法、装置和***及存储介质 | |
CN106650743B (zh) | 图像强反光检测方法和装置 | |
CN108875523B (zh) | 人体关节点检测方法、装置、***和存储介质 | |
US10192323B2 (en) | Remote determination of containers in geographical region | |
JP6926335B2 (ja) | 深層学習における回転可変物体検出 | |
CN109815843B (zh) | 图像处理方法及相关产品 | |
CN105574513B (zh) | 文字检测方法和装置 | |
CN108875537B (zh) | 对象检测方法、装置和***及存储介质 | |
CN106650662B (zh) | 目标对象遮挡检测方法及装置 | |
CN106651877B (zh) | 实例分割方法及装置 | |
CN108876804B (zh) | 抠像模型训练和图像抠像方法、装置和***及存储介质 | |
CN109816745B (zh) | 人体热力图展示方法及相关产品 | |
CN108875731B (zh) | 目标识别方法、装置、***及存储介质 | |
CN110070551B (zh) | 视频图像的渲染方法、装置和电子设备 | |
CN108875750B (zh) | 物体检测方法、装置和***及存储介质 | |
CN111985466A (zh) | 一种集装箱危险品标志识别方法 | |
CN110084204B (zh) | 基于目标对象姿态的图像处理方法、装置和电子设备 | |
CN111639704A (zh) | 目标识别方法、装置及计算机可读存储介质 | |
CN115482322A (zh) | 生成合成训练数据集的计算机实现方法和*** | |
CN115829915A (zh) | 图像质量检测方法、电子设备、存储介质及程序产品 | |
CN110796130A (zh) | 用于文字识别的方法、装置及计算机存储介质 | |
CN109785439A (zh) | 人脸素描图像生成方法及相关产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100190 Beijing, Haidian District Academy of Sciences, South Road, No. 2, block A, No. 313 Applicant after: MEGVII INC. Applicant after: Beijing maigewei Technology Co., Ltd. Address before: 100190 Beijing, Haidian District Academy of Sciences, South Road, No. 2, block A, No. 313 Applicant before: MEGVII INC. Applicant before: Beijing aperture Science and Technology Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |