本公开涉及图像处理技术领域,且更具体地,涉及一种图像处理方法、装置、电子设备及存储介质。
背景技术:
现代数码相机常使用表面覆盖有cfa(colorfilterarray,色彩滤镜阵列)的图像传感器来取得图像,cfa中的一个色彩滤镜单元对应图像传感器上的一个像素点,由于一个色彩滤镜单元只允许单一颜色的光通过,因此经过cfa被图像传感器捕获的图像是马赛克形式的,为了从图像传感器所输出的不完全色彩取样中得到全彩图像,需要对不完全色彩取样进行图像重建,即图像去马赛克处理。但是,现有的图像去马赛克处理的硬件成本较高。
技术实现要素:
为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种图像处理方法、装置、电子设备及存储介质,其可以降低图像去马赛克处理的硬件成本。
根据本公开的一个方面,提供了一种图像处理方法,包括:确定图像传感器的色彩滤镜阵列cfa模式;对于所述图像传感器中的像素点pij,从与所述cfa模式对应的配置文件中获取配置信息,所述像素点pij为所述图像传感器中第i行第j列的像素点,1≤i≤n,1≤j≤m,n为所述图像传感器中像素点的行数,m为所述图像传感器中像素点的列数;根据所述配置信息,从预设掩膜矩阵序列中获取所述像素点pij对应的掩膜矩阵;根据所述像素点pij对应的掩膜矩阵和与所述掩膜矩阵对应的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
根据本公开的另一方面,提供了一种图像处理装置,包括:确定模块,用于确定图像传感器的色彩滤镜阵列cfa模式;第一获取模块,用于对于所述图像传感器中的像素点pij,从与所述确定模块所确定的所述cfa模式对应的配置文件中获取配置信息,所述像素点pij为所述图像传感器中第i行第j列的像素点,1≤i≤n,1≤j≤m,n为所述图像传感器中像素点的行数,m为所述图像传感器中像素点的列数;第二获取模块,用于根据所述第一获取模块所获取的所述配置信息,从预设掩膜矩阵序列中获取所述像素点pij对应的掩膜矩阵;计算模块,用于根据所述第二获取模块所获取的所述像素点pij对应的掩膜矩阵和与所述掩膜矩阵对应的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
根据本公开的另一方面,提供了一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述的图像处理方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行上述的图像处理方法。
根据本公开的另一方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述的图像处理方法。
与现有技术相比,采用根据本公开实施例的图像处理方法、装置、电子设备、计算机程序产品和计算机可读存储介质,可以通过复用掩膜矩阵的方式来适配不同cfa模式的图像传感器和同一图像传感器中的不同像素点,实现图像的去马赛克,得到全彩图像,而不必针对不同cfa模式的图像传感器和同一图像传感器中的不同像素点,均设计对应的硬件电路,降低了图像去马赛克处理的硬件成本。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本公开一示例性实施例提供的图像处理方法的流程图。
图2a是本公开一示例性实施例提供的一种cfa模式的示意图。
图2b是本公开一示例性实施例提供的另一种cfa模式的示意图。
图2c是本公开一示例性实施例提供的另一种cfa模式的示意图。
图3是本公开一示例性实施例提供的掩膜矩阵序列的示意图。
图4是本公开一示例性实施例提供的cfa模式确定步骤的流程图。
图5a是本公开一示例性实施例提供的配置信息获取步骤的流程图。
图5b是本公开一示例性实施例提供的一种预设4种类型位置的示意图。
图5c是本公开一示例性实施例提供的另一种预设4种类型位置的示意图。
图6是本公开一示例性实施例提供的掩膜矩阵获取步骤的流程图。
图7是本公开一示例性实施例提供的像素点pij在预设颜色空间上的其它颜色通道上的像素值计算步骤的流程图。
图8a是本公开一示例性实施例提供的rggb模式下r11/b00的推断示意图。
图8b是本公开一示例性实施例提供的rggb模式下g00/g11的推断示意图。
图8c是本公开一示例性实施例提供的rggb模式下r10/b01/r01/b10/r00/g01/g10/b11的推断示意图。
图9a是本公开一示例性实施例提供的rccc模式下c00的推断示意图。
图9b是本公开一示例性实施例提供的rccc模式下r11的推断示意图。
图9c是本公开一示例性实施例提供的rccc模式下r10/r01/r00/c01/c10/c11的推断示意图。
图10是本公开一示例性实施例提供的图像处理装置的框图。
图11是本公开一示例性实施例提供的第二获取模块的框图。
图12是本公开一示例性实施例提供的计算模块的框图。
图13是本公开一示例性实施例提供的像素值计算单元的框图。
图14是本公开一示例性实施例提供的第一获取模块的框图。
图15是本公开一示例性实施例提供的确定模块的框图。
图16是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
申请概述
目前,主要通过使用isp(imagesignalprocessing,图像信号处理)芯片进行去图像马赛克处理。现有技术中,在设计isp芯片时,对于不同cfa(colorfilterarray,色彩滤镜阵列)模式的图像传感器和同一图像传感器中的不同像素点,会分别设计对应的硬件电路,使得isp芯片的设计和制造成本较高,进而导致图像去马赛克处理的硬件成本较高。
针对该技术问题,本公开的基本构思是提出一种图像处理方法、装置、电子设备及存储介质,其可以通过复用掩膜矩阵的方式来适配不同cfa模式的图像传感器和同一图像传感器中的不同像素点,实现图像的去马赛克,得到全彩图像,而不必针对不同cfa模式的图像传感器和同一图像传感器中的不同像素点,均设计对应的硬件电路,降低了图像去马赛克处理的硬件成本。
在介绍了本申请的基本原理之后,下面将参考附图来具体介绍本申请的各种非限制性实施例。
示例性方法
图1是本公开一示例性实施例提供的图像处理方法的流程图。本实施例可应用在电子设备上,如图1所示,包括如下步骤:
步骤101,确定图像传感器的cfa模式。
图像传感器,是一种将光信号转换成电信号的器件,图像传感器上的每个感光单元称为一个像素点,像素点的像素值用于表征该像素点感应到的光照强度大小,但是无法表征颜色。
为了表征颜色,图像传感器的表面上会覆盖一层cfa,该cfa包括多个色彩滤镜单元,每个色彩滤镜单元对应图像传感器上的一个像素点,每个色彩滤镜单元只允许单一颜色的光通过,并被图像传感器捕获。经过以上处理后,像素点的像素值就可以用于表征特定颜色光的光照强度大小。但是,经过cfa被图像传感器捕获的图像是马赛克形式的,因此,需要进行图像去马赛克处理。
本公开实施例中,cfa模式可以为rggb模式,rggb模式为基于拜尔模式(bayerpattern)的色彩滤镜阵列模式,如图2a所示,rggb模式下cfa的每4个滤镜单元中包括2个绿色滤镜单元(通常用“g”表示)、1个红色滤镜单元(通常用“r”表示)和1个蓝色滤镜单元(通常用“b”表示),绿色滤镜单元只允许绿光通过,红色滤镜单元只允许红光通过,蓝色滤镜单元只允许蓝光通过,在该cfa模式下所捕获的光照信息中红光信息占25%,绿光信息占50%,蓝光信息占25%。
本公开实施例中,cfa模式也可以rccc模式,如图2b所示,rccc模式下cfa的每4个滤镜单元中包括3个亮度滤镜单元(通常用“c”表示)和1个红色滤镜单元(通常用“r”表示),亮度信息占75%,红色信息占25%,红色滤镜单元只允许红光通过,亮度滤镜单元允许所有波长的光全都透过,在该cfa模式下所捕获的光照信息中亮度信息占75%,红光信息占25%。
本公开实施例中,cfa模式也可以为包括红色滤镜单元、绿色滤镜单元、蓝色滤镜单元和亮度滤镜单元的色彩滤镜阵列模式,如图2c中所示的3种的任一种,在该cfa模式下所捕获的光照信息中亮度信息占50%、绿光信息占25%,蓝光信息占12.5%,红光信息占12.5%。
此外,本公开实施例中,cfa模式还可以为上述三种模式之外的其他模式,本公开实施例对此不作限定。
步骤102,对于图像传感器中的像素点pij,从与该图像传感器的cfa模式对应的配置文件中获取配置信息。
本公开实施例中,像素点pij为图像传感器中第i行第j列的像素点,1≤i≤n,1≤j≤m,n为图像传感器中像素点的行数,m为图像传感器中像素点的列数。
本公开实施例中,一个cfa模式可以对应于一个预先计算好的配置文件,该配置文件中可以包括多条配置信息,每条配置信息可以对应于该cfa模式下cfa中的一个或多个色彩滤镜单元,由于cfa中的每个色彩滤镜单元对应于图像传感器上的一个像素点,因此,配置文件中的每条配置信息对应于图像传感器上的一个或多个像素点。
本公开实施例中,可以基于上述所分析的cfa、配置文件、配置信息与图像传感器上像素点之间的关系,从配置文件中获取图像传感器上每个像素点对应的配置信息。
本公开实施例中,像素点pij对应的配置信息中记录有:对像素点pij进行去马赛克处理(即计算像素点pij在预设颜色空间上的其它颜色通道上的像素值)所需的掩膜矩阵的相关信息,其中,该相关信息可以包括:所需掩膜矩阵的标识、所需掩膜矩阵之间的时序运算关系等等。
需要说明的是,掩膜本质上是一个矩阵,然后根据这个矩阵重新计算图片中像素点的像素值。本公开实施例中,掩膜矩阵可以为尺寸3×3的矩阵。
步骤103,根据配置信息,从预设掩膜矩阵序列中获取像素点pij对应的掩膜矩阵。
本公开实施例中,掩膜矩阵序列中包括多个掩膜矩阵。
例如,如图3所示的掩膜矩阵序列中包括12个掩膜矩阵,分别为:标识为m[0]的掩膜矩阵、标识为m[1]的掩膜矩阵、标识为m[2]的掩膜矩阵、标识为m[3]的掩膜矩阵、标识为m[4]的掩膜矩阵、标识为m[5]的掩膜矩阵、标识为m[6]的掩膜矩阵、标识为m[7]的掩膜矩阵、标识为g[0]的掩膜矩阵、标识为g[1]的掩膜矩阵、标识为g[2]的掩膜矩阵、标识为g[3]的掩膜矩阵,以及标识为g[4]的掩膜矩阵。
本公开实施例中,掩膜矩阵序列可以包括大量的掩膜矩阵,也就是,掩膜矩阵序列中包括目前能够穷举的所有掩膜矩阵;或者掩膜矩阵中可以包括一些基本的掩膜矩阵,在实际使用中,通过对掩膜矩阵整体乘以权重系数的方式,来增加掩膜矩阵的数量。
本公开实施例中,根据像素点pij配置信息中记录的对像素点pij进行去马赛克处理所需的掩膜矩阵的相关信息,从预设掩膜矩阵序列中获取像素点pij对应的掩膜矩阵。
步骤104,根据像素点pij对应的掩膜矩阵和与该掩膜矩阵对应的像素值,计算像素点pij在预设颜色空间上的其它颜色通道上的像素值。
本公开实施例中,与掩膜矩阵对应的像素值指的是图像传感器所捕获的raw图像中的部分数据,例如,当掩膜矩阵的尺寸为3×3时,参与去马赛克运算数据是raw图像中尺寸为3×3的像素值矩阵。
例如,图像传感器的cfa模式为rggb模式,若图像传感器上像素点pij对应于cfa上的g单元,则步骤104的目的在于,根据像素点pij对应的掩膜矩阵和与该掩膜矩阵对应的像素值,计算像素点pij在rgb颜色空间上的红色通道和蓝色通道上的像素值。
本公开实施例中,通过步骤101~步骤104,可以计算出图像传感器上每个像素点在预设颜色空间上的各颜色通道上的像素值,进而根据所计算出的全部像素值,生成全彩图像,实现raw图像的去马赛克。
可见,本公开实施例的图像处理方法,可以通过复用掩膜矩阵的方式来适配不同cfa模式的图像传感器和同一图像传感器中的不同像素点,实现图像的去马赛克,得到全彩图像,而不必针对不同cfa模式的图像传感器和同一图像传感器中的不同像素点,均设计对应的硬件电路,降低了图像去马赛克处理的硬件成本。
图4是本公开一示例性实施例提供的cfa模式确定步骤的流程图。
如图4所示,在上述图1所示实施例的基础上,步骤101可包括如下步骤:
步骤1011,获取图像传感器的型号信息,该型号信息与cfa模式存在关联关系。
本公开实施例中,不同的型号信息对应于不同的cfa模式。
步骤1012,根据图像传感器的型号信息,确定该图像传感器的cfa模式。
可见,本公开实施例中,由于图像传感器的型号信息与cfa模式存在关联关系,且该图像传感器的型号信息可以比较容易地从电子设备本地直接获取,因此基于图像传感器的型号信息可以比较准确、快捷地确定出该图像传感器的cfa模式。
图5a是本公开一示例性实施例提供的配置信息获取步骤的流程图。
如图5a所示,在上述图1所示实施例的基础上,步骤102可包括如下步骤:
步骤1021,确定像素点pij在图像传感器的cfa中的相对位置,其中,相对位置为预设4种类型位置中的一种,预设4种类型位置分别对应于重复排列的4个滤镜单元中的一个滤镜单元。
本公开实施例中,对于图像传感器的cfa模式为2×2重复排列的cfa模式,可以根据像素点pij在图像传感器的cfa中的相对位置,确定配置信息,其中,2×2重复排列的cfa模式可以包括:rggb模式、或者rccc模式。
本公开实施例中,为了便于理解和描述,对于2×2重复排列的cfa模式,可以将该cfa模式下的预设4种类型位置分别记作00,01,10,11。
如图5b所示,对于rggb模式,将rggb模式下cfa上的预设4种类型位置分别记作00,01,10,11,其中,r00用于表示cfa上00位置的r分量,g01用于表示cfa上01位置的g分量,g10用于表示cfa上10位置的g分量,b11用于表示cfa上11位置的b分量。此时,去马赛克处理需要推断出上述4个位置各自缺失的两种颜色分量,例如,对于cfa上的00位置,推断00位置缺失的b分量(为了便于描述,记为b00)与g分量(记为g00);对于cfa上的01位置,推断01位置缺失的r分量(记为r01)与b分量(记为b01);对于cfa上的10位置,推断10位置缺失的r分量(记为r10)与b分量(记为b10);对于cfa上的11位置,推断11位置缺失的r分量(记为r11)与b分量(记为b11)。
如图5c所示,对于rccc模式,将rccc模式下cfa上的预设4种类型位置分别记作00,01,10,11,其中,r00用于表示cfa上00位置的r分量,c01用于表示cfa上01位置的c分量,c10用于表示cfa上10位置的c分量,c11用于表示cfa上11位置的c分量。此时,去马赛克处理需要推断出4个位置各自缺失的两种颜色单元,例如,对于cfa上的00位置,推断00位置缺失的c分量(为了便于描述,记为c00);对于cfa上的01位置,推断01位置缺失的r分量(记为r01);对于cfa上的10位置,推断10位置缺失的r分量(记为r10);对于cfa上的11位置,推断11位置缺失的r分量(记为r11)。
步骤1022,从配置文件中获取与相对位置对应的配置信息,其中,配置文件中的一种配置信息对应于一种预设类型位置。
本公开实施例中,对于2×2重复排列的cfa模式,该cfa模式对应的配置文件中可以包括4条配置信息,每条配置配置信息对应于预设4种类型位置中的一种位置。
本公开实施例中,首先,从配置文件中获取像素点pij在图像传感器的cfa中的相对位置对应的配置信息,之后将所获取的配置信息确定为像素点pij的配置信息。
可见,本公开实施例中,针对任何2×2重复排列的cfa模式,可以将图像传感器上的所有像素点划分为四类,在确定某一像素点的配置信息时,只需根据该像素点的类型来确定,效率较高。
图6是本公开一示例性实施例提供的掩膜矩阵获取步骤的流程图。
如图6所示,在上述图1所示实施例的基础上,步骤103可包括如下步骤:
步骤1031,从配置信息中确定像素点pij对应的掩膜矩阵的标识。
本公开实施例中,像素点pij对应的配置信息中记录有像素点pij对应的掩膜矩阵的标识。
步骤1032,从预设掩膜矩阵序列中获取与上述标识对应的掩膜矩阵。
本公开实施例中,从预设掩膜矩阵序列中获取与像素点pij对应的掩膜矩阵的标识对应的掩膜矩阵,将所获取的掩膜矩阵确定为像素点pij对应的掩膜矩阵。
可见,本公开实施例中,配置信息中记录有对像素点pij进行去马赛克处理所需的掩膜矩阵的标识,根据所记录的标识从预设掩膜矩阵序列中获取像素点pij对应的掩膜矩阵,使得掩膜矩阵获取方式比较直接、快捷。
图7是本公开一示例性实施例提供的像素点pij在预设颜色空间上的其它颜色通道上的像素值计算步骤的流程图。
如图7所示,在上述图1所示实施例的基础上,步骤104可包括如下步骤:
步骤1041,从配置信息中确定像素点pij对应的掩膜矩阵之间的运算时序关系。
本公开实施例中,像素点pij对应的配置信息中记录有像素点pij对应的掩膜矩阵之间的运算时序关系。
步骤1042,基于所确定的运算时序关系、像素点pij对应的掩膜矩阵、像素点pij所在颜色通道的像素值以及与像素点pij相邻的像素点的像素值,计算像素点pij在预设颜色空间上的其它颜色通道上的像素值。
本公开实施例中,像素点pij所在颜色通道的像素值和与像素点pij相邻的像素点的像素值,共同构成与像素点pij的掩膜矩阵对应的像素值。对与像素点pij的掩膜矩阵对应的像素值和像素点pij的每个掩膜矩阵均进行卷积运算,之后根据所确定的运算时序关系对各卷积结果进行时序运算,得到像素点pij在预设颜色空间上的其它颜色通道上的像素值。
在一示例中,上述步骤1042可包括如下步骤(图中未示出):
步骤10421,根据像素点pij所在颜色通道的像素值以及与像素点pij相邻的像素点的像素值,确定以像素点pij所在颜色通道的像素值为中心、尺寸为m×m的像素值矩阵;
本公开实施例中,若掩膜矩阵的尺寸为3×3,则像素值矩阵的尺寸也为3×3,也就是,像素值矩阵为像素点pij所在颜色通道的像素值为中心、尺寸为3×3的矩阵。
步骤10422,对所确定的像素值矩阵与像素点pij对应的掩膜矩阵进行卷积运算,得到卷积结果,其中,像素点pij对应的掩膜矩阵的尺寸为s×t,m≥s,m≥t;
本公开实施例中,当像素点pij对应的掩膜矩阵为一个时,对所确定的像素值矩阵与该一个掩膜矩阵进行卷积运算,得到一个卷积结果;当像素点pij对应的掩膜矩阵为多个时,对所确定的像素值矩阵与该多个掩膜矩阵中的每个掩膜矩阵均进行卷积运算,得到多个卷积结果。
步骤10423,根据所确定的运算时序关系对卷积结果进行运算处理,得到像素点pij在预设颜色空间上的其它颜色通道上的像素值。
本公开实施例中,当像素点pij对应的掩膜矩阵为多个时,根据所确定的运算时序关系对多个卷积结果进行运算,得到像素点pij在预设颜色空间上的其它颜色通道上的像素值。
为了便于理解,以rggb模式和rccc模式为例,结合图8a~图8c和图9a~图9c介绍rggb模式和rccc模式下图像传感器上各像素点的去马赛克过程,其中,图8a~图8c和图9a~图9c的起点(即rawimage)为:根据像素点pij所在颜色通道的像素值和与像素点pij相邻的像素点的像素值,所确定的以像素点pij所在颜色通道的像素值为中心、尺寸为3×3的像素值矩阵,图8a~图8c和图9a~图9c的终点(像素点pij所在位置的待推断的特定像素类型的像素值)。
具体的,图8a是本公开一示例性实施例提供的rggb模式下r11/b00的推断示意图,图8b是本公开一示例性实施例提供的rggb模式下g00/g11的推断示意图,图8c是本公开一示例性实施例提供的rggb模式下r10/b01/r01/b10/r00/g01/g10/b11的推断示意图;
图9a是本公开一示例性实施例提供的rccc模式下c00的推断示意图,图9b是本公开一示例性实施例提供的rccc模式下r11的推断示意图,图9c是本公开一示例性实施例提供的rccc模式下r10/r01/r00/c01/c10/c11的推断示意图。
如上述步骤1021中所分析的,rggb模式下去马赛克处理需要推断出cfa上00,01,10,11这4个位置各自缺失的两种颜色分量,例如,对于00位置,推断00位置缺失的b00与g00;对于01位置,推断01位置缺失的r01与b01;对于10位置,推断10位置缺失的r10与b10;对于11位置,推断11位置缺失的r11与b11。
具体的,当需要推断00位置缺失的b00或11位置缺失的r11时,可以按照图8a所示的运算关系图来进行去马赛克处理;当需要推断00位置缺失的g00或11位置缺失的g11时,可以按照图8b所示的运算关系图来进行去马赛克处理;当需要推断10位置缺失的r10或01位置缺失的b01时,可以按照图8c中的第一个运算关系来进行去马赛克处理;当需要推断01位置缺失的r01或10位置缺失的b10时,可以按照图8c中的第二个运算关系来进行去马赛克处理。
如上述步骤1021中所分析的,rccc模式下去马赛克处理需要推断出cfa上00、01、10和11这4个位置各自缺失的两种颜色分量,例如,对于00位置,推断00位置缺失的c00;对于01位置,推断01位置缺失的r01;对于10位置,推断10位置缺失的r10;对于11位置,推断11位置缺失的r11。
具体的,当需要推断00位置缺失的c00时,可以按照图9a所示的运算关系图来进行去马赛克处理;当需要推断11位置缺失的r11时,可以按照图9b所示的运算关系图来进行去马赛克处理;当需要10位置缺失的r10时,可以按照图9c中的第一个运算关系来进行去马赛克处理;当需要推断01位置缺失的r01时,可以按照图9c中的第二个运算关系来进行去马赛克处理。
可见,本公开实施例中,对于具有不同cfa模式的图像传感器,无需增加或修改已有的硬件装置,仅通过刷入新的配置文件,据此配置文件配置模块的组合方式即可完成图像去马赛克处理,硬件成本较低。
示例性装置
下面,参考图10来描述根据本公开实施例的图像处理装置。
图10是本公开一示例性实施例提供的图像处理装置的框图。
如图10所示,根据本公开实施例的所述图像处理装置1000可以包括:确定模块1100、第一获取模块1200、第二获取模块1300和计算模块1400,其中,
确定模块1100,用于确定图像传感器的色彩滤镜阵列cfa模式;
第一获取模块1200,用于对于所述图像传感器中的像素点pij,从与所述确定模块1100所确定的所述cfa模式对应的配置文件中获取配置信息,所述像素点pij为所述图像传感器中第i行第j列的像素点,1≤i≤n,1≤j≤m,n为所述图像传感器中像素点的行数,m为所述图像传感器中像素点的列数;
第二获取模块1300,用于根据所述第一获取模块1200所获取的所述配置信息,从预设掩膜矩阵序列中获取所述像素点pij对应的掩膜矩阵;
计算模块1400,用于根据所述第二获取模块1300所获取的所述像素点pij对应的掩膜矩阵和与所述掩膜矩阵对应的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
可见,本公开实施例的图像处理装置,可以通过复用掩膜矩阵的方式来适配不同cfa模式的图像传感器和同一图像传感器中的不同像素点,实现图像的去马赛克,得到全彩图像,而不必针对不同cfa模式的图像传感器和同一图像传感器中的不同像素点,均设计对应的硬件电路,降低了图像去马赛克处理的硬件成本。
在一个示例中,图11是本公开一示例性实施例提供的第二获取模块的框图,如图11所示,所述第二获取模块1300,可以包括:
矩阵标识确定单元1310,用于从所述第一获取模块1200所获取的所述配置信息中确定所述像素点pij对应的掩膜矩阵的标识;
掩膜矩阵获取单元1320,用于从预设掩膜矩阵序列中获取与所述矩阵标识确定单元1310所确定的所述标识对应的掩膜矩阵。
在一个示例中,图12是本公开一示例性实施例提供的计算模块的框图,如图12所示,所述计算模块1400,可以包括:
运算时序确定单元1410,用于从所述第一获取模块1200所获取的所述配置信息中确定所述像素点pij对应的掩膜矩阵之间的运算时序关系;
像素值计算单元1420,用于基于所述运算时序确定单元1410所确定的运算时序关系、所述第二获取模块1300所获取的所述像素点pij对应的掩膜矩阵、所述像素点pij所在颜色通道的像素值以及与所述像素点pij相邻的像素点的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
在一个示例中,图13是本公开一示例性实施例提供的像素值计算单元的框图,如图13所示,所述像素值计算单元1420,可以包括:
像素矩阵确定子单元1421,用于根据所述像素点pij所在颜色通道的像素值以及与所述像素点pij相邻的像素点的像素值,确定以所述像素点pij所在颜色通道的像素值为中心、尺寸为m×m的像素值矩阵;
第一运算子单元1422,用于对所述像素矩阵确定子单元1421所确定的像素值矩阵与所述第二获取模块1300所获取的所述像素点pij对应的掩膜矩阵进行卷积运算,得到卷积结果,其中,所述像素点pij对应的掩膜矩阵的尺寸为s×t,m≥s,m≥t;
第二运算子单元1423,用于根据所述运算时序确定单元1410所确定的运算时序关系对所述第一运算子单元1422的卷积结果进行运算处理,得到所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
在一个示例中,图14是本公开一示例性实施例提供的第一获取模块的框图,如图14所示,所述第一获取模块1200,可以包括:
相对位置确定单元1210,用于确定所述像素点pij在所述图像传感器的cfa中的相对位置,其中,所述相对位置为预设4种类型位置中的一种,所述预设4种类型位置分别对应于重复排列的4个滤镜单元中的一个滤镜单元;
配置信息获取单元1220,用于从所述配置文件中获取与所述相对位置确定单元1210所确定的相对位置对应的配置信息,其中,所述配置文件中的一种配置信息对应于一种预设类型位置。
在一个示例中,图15是本公开一示例性实施例提供的确定模块的框图,如图15所示,所述确定模块1100,可以包括:
型号信息获取单元1110,用于获取图像传感器的型号信息,所述型号信息与cfa模式存在关联关系;
cfa模式确定单元1120,用于根据所述型号信息获取单元1110所获取的型号信息,确定所述图像传感器的cfa模式。
示例性电子设备
下面,参考图16来描述根据本公开实施例的电子设备。
图16是本公开一示例性实施例提供的电子设备的结构图。
如图16所示,电子设备16包括一个或多个处理器161和存储器162。
处理器161可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备16中的其他组件以执行期望的功能。
存储器162可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器161可以运行所述程序指令,以实现上文所述的本公开的各个实施例的声源定位方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备16还可以包括:输入装置163和输出装置164,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
该输入装置163可以是麦克风或麦克风阵列,用于捕捉声源的输入信号。此外,该输入装置163还可以包括例如键盘、鼠标等等。
该输出装置164可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置164可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图16中仅示出了该电子设备16中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备16还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的声源定位方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c 等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的图像处理方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
1.一种图像处理方法,包括:
确定图像传感器的色彩滤镜阵列cfa模式;
对于所述图像传感器中的像素点pij,从与所述cfa模式对应的配置文件中获取配置信息,所述像素点pij为所述图像传感器中第i行第j列的像素点,1≤i≤n,1≤j≤m,n为所述图像传感器中像素点的行数,m为所述图像传感器中像素点的列数;
根据所述配置信息,从预设掩膜矩阵序列中获取所述像素点pij对应的掩膜矩阵;
根据所述像素点pij对应的掩膜矩阵和与所述掩膜矩阵对应的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
2.根据权利要求1所述的方法,其中,所述根据所述配置信息,从预设掩膜矩阵序列中获取所述像素点pij对应的掩膜矩阵,包括:
从所述配置信息中确定所述像素点pij对应的掩膜矩阵的标识;
从预设掩膜矩阵序列中获取与所述标识对应的掩膜矩阵。
3.根据权利要求1所述的方法,其中,所述根据所述像素点pij对应的掩膜矩阵和与所述掩膜矩阵对应的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值,包括:
从所述配置信息中确定所述像素点pij对应的掩膜矩阵之间的运算时序关系;
基于所述运算时序关系、所述像素点pij对应的掩膜矩阵、所述像素点pij所在颜色通道的像素值以及与所述像素点pij相邻的像素点的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
4.根据权利要求3所述的方法,其中,所述基于所述运算时序关系、所述像素点pij对应的掩膜矩阵、所述像素点pij所在颜色通道的像素值以及与所述像素点pij相邻的像素点的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值,包括:
根据所述像素点pij所在颜色通道的像素值以及与所述像素点pij相邻的像素点的像素值,确定以所述像素点pij所在颜色通道的像素值为中心、尺寸为m×m的像素值矩阵;
对所述像素值矩阵与所述像素点pij对应的掩膜矩阵进行卷积运算,得到卷积结果,其中,所述像素点pij对应的掩膜矩阵的尺寸为s×t,m≥s,m≥t;
根据所述运算时序关系对所述卷积结果进行运算处理,得到所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
5.根据权利要求1所述的方法,其中,所述从与所述cfa模式对应的配置文件中获取配置信息,包括:
确定所述像素点pij在所述图像传感器的cfa中的相对位置,其中,所述相对位置为预设4种类型位置中的一种,所述预设4种类型位置分别对应于重复排列的4个滤镜单元中的一个滤镜单元;
从所述配置文件中获取与所述相对位置对应的配置信息,其中,所述配置文件中的一种配置信息对应于一种预设类型位置。
6.根据权利要求1所述的方法,其中,所述确定图像传感器的色彩滤镜阵列cfa模式,包括:
获取图像传感器的型号信息,所述型号信息与cfa模式存在关联关系;
根据所述型号信息,确定所述图像传感器的cfa模式。
7.一种图像处理装置,包括:
确定模块,用于确定图像传感器的色彩滤镜阵列cfa模式;
第一获取模块,用于对于所述图像传感器中的像素点pij,从与所述确定模块所确定的所述cfa模式对应的配置文件中获取配置信息,所述像素点pij为所述图像传感器中第i行第j列的像素点,1≤i≤n,1≤j≤m,n为所述图像传感器中像素点的行数,m为所述图像传感器中像素点的列数;
第二获取模块,用于根据所述第一获取模块所获取的所述配置信息,从预设掩膜矩阵序列中获取所述像素点pij对应的掩膜矩阵;
计算模块,用于根据所述第二获取模块所获取的所述像素点pij对应的掩膜矩阵和与所述掩膜矩阵对应的像素值,计算所述像素点pij在预设颜色空间上的其它颜色通道上的像素值。
8.根据权利要求7所述的装置,其中,所述第二获取模块包括:
矩阵标识确定单元,用于从所述第一获取模块所获取的所述配置信息中确定所述像素点pij对应的掩膜矩阵的标识;
掩膜矩阵获取单元,用于从预设掩膜矩阵序列中获取与所述矩阵标识确定单元所确定的所述标识对应的掩膜矩阵。
9.一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-6任一所述的图像处理方法。
10.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-6任一所述的图像处理方法。
技术总结