图像处理方法及装置、电子设备和计算机可读介质与流程

文档序号:31936507发布日期:2022-10-26 01:55阅读:29来源:国知局
1.本公开涉及图像处理
技术领域
:,具体涉及一种图像处理方法、图像处理装置、电子设备和计算机可读介质。
背景技术
::2.为了使设备捕获的图像与人眼视觉在色彩感知上保持一致,可以矫正光谱响应的交叉效应和响应强度,将与设备相关的颜色空间转换至设备无关的颜色空间,实现图像色彩矫正。然而,在视野存在多个光源时,多光源捕获图像的场景存在不同光源对应的视野部分,影响图像的色彩矫正准确性。技术实现要素:3.本公开的目的在于提供一种图像处理方法、图像处理装置、电子设备和计算机可读介质,进而至少在一定程度上提高图像的色彩矫正准确性。4.根据本公开的第一方面,提供一种图像处理方法,包括:获取颜色矫正矩阵序列,所述颜色矫正矩阵序列为根据不同光源的第一颜色矫正矩阵构建的;将图像分割为多个图像块,基于所述颜色矫正矩阵序列分别确定各所述图像块的第二颜色矫正矩阵;根据各所述图像块的第二颜色矫正矩阵以及图像块位置,插值获取各所述图像块中像素点的第三颜色矫正矩阵;利用各所述第三颜色矫正矩阵对所述图像的颜色参数进行矫正。5.根据本公开的第二方面,提供一种图像处理装置,包括:获取模块,用于获取颜色矫正矩阵序列,所述颜色矫正矩阵序列为根据不同光源的第一颜色矫正矩阵构建的;矩阵处理模块,用于将图像分割为多个图像块,基于所述颜色矫正矩阵序列分别确定各所述图像块的第二颜色矫正矩阵;插值处理模块,用于根据各所述图像块的第二颜色矫正矩阵以及图像块位置,插值获取各所述图像块中像素点的第三颜色矫正矩阵;矫正模块,用于利用各所述第三颜色矫正矩阵对所述图像的颜色参数进行矫正。6.根据本公开的第三方面,提供一种电子设备,其特征在于,包括:处理器;以及存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。7.根据本公开的第四方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。8.在本公开的一些实施例所提供技术方案中,一方面,根据不同光源的第一颜色矫正矩阵构建颜色矫正矩阵序列,基于颜色矫正矩阵序列分别确定图像中各图像块的第二颜色矫正矩阵,使得不同光源对应视野部分的图像块,获得与其对应光源相匹配的第二颜色矫正矩阵,从而可分别矫正不同光源对应的视野部分,无需多光源捕获图像的各图像块之间采用唯一矫正方式,避免多光源捕获图像的各图像块之间的矫正妥协而导致的部分区域失真,亦即同一图像兼顾多光源视野部分的矫正,提高多光源的图像颜色矫正准确性和真实性;另一方面,根据图像块的第二颜色矫正矩阵和图像块位置,插值获取各图像块中像素点的第三颜色矫正矩阵,无需图像块之间包含重叠部分来完成过渡,插值获得各图像块的第三颜色矫正矩阵,使得图像块与图像块间的像素点的颜色参数的矫正以更平滑方式过渡,避免图像块之间产生色彩突兀区域,确保多光源捕获图像的色彩矫正的全局完整;再一方面,对于设备应用场景的迅速扩增,提高多光源捕获图像的色彩矫正的准确性,对于提高用户体验和进一步增加设备应用场景具有实际意义。9.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明10.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:11.图1示出了可以应用本公开实施例的一种图像处理方法及装置的应用场景的示意图;12.图2示意性示出本公开示例性实施例中一种图像处理方法的流程图;13.图3示意性示出本公开示例性实施例中一种像素点的相邻图像块的示意图;14.图4示意性示出本公开示例性实施例中获取颜色矫正矩阵序列的实现方式的流程图;15.图5示意性示出本公开示例性实施例中一种标定每个光源的第一颜色矫正矩阵的实现方式的示意图;16.图6示意性示出本公开示例性实施例中确定图像块的第二颜色矫正矩阵的实现方式的流程图;17.图7示意性示出本公开示例性实施例中一种基于图像块位置,利用各像素点对应图像块的相邻图像块的第二颜色矫正矩阵,插值获取各图像块中像素点的第三颜色矫正矩阵的示意图;18.图8示意性示出本公开示例性实施例中一种插值获取各图像块中像素点的第三颜色矫正矩阵的流程图;19.图9示意性示出本公开示例性实施例中一种应用场景下的图像处理方法的示意图;20.图10示意性示出本公开示例性实施例中应用本公开实施例的图像处理方法后的图像示意图;21.图11应用相关技术中的全局颜色矫正方法后的图像示意图;22.图12示意性示出本公开示例性实施例中图像处理装置的组成示意图;23.图13示出了可以应用本公开实施例的一种电子设备的示意图。具体实施方式24.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。25.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。26.图1示出了可以应用本公开实施例的一种图像处理方法及装置的应用场景的示意图。27.如图1所示,设备101可以为具有图像处理功能的智能设备,例如可以为智能手机、电脑、平板电脑、智能手表、智能音箱、车载设备、可穿戴设备、监控设备等智能设备。设备101中可以设置摄像头,也可以不设置,只要能够对图像进行处理即可。待处理的图像可以为各种场景中的任意类型的图像,可以由设备101拍摄得到,也可以为从网络或者其它设备获取,待处理的图像可以为单光源下捕获的图像,也可以为多光源下捕获的图像,对此不做特殊限定。28.本公开实施例中,设备101从存储器102中获取待处理的图像104,并发送至处理器103中,在处理器103中将图像分割为多个图像块,基于颜色矫正矩阵序列分别确定各图像块的第二颜色矫正矩阵;根据各图像块的第二颜色矫正矩阵以及图像块位置,插值获取各图像块中像素点的第三颜色矫正矩阵;利用各第三颜色矫正矩阵对所述图像的颜色参数进行矫正,得到颜色矫正后的目标图像105。其中,处理器103在处理图像之前,先根据不同光源的第一颜色矫正矩阵构建颜色矫正矩阵序列。29.需要说明的是,本公开实施例所提供的图像处理方法可以由设备101来执行。相应地,图像处理方法可通过程序等方式设置于设备101中。本公开实施例所提供的图像处理方法也可以由服务器来执行,服务器可以为提供本公开实施例中图像处理相关服务的后台系统,可以包括便携式计算机、台式计算机、智能手机等具有计算功能的一台电子设备或多台电子设备形成的集群。本公开实施例中,以图像处理方法由设备来执行为例进行说明。30.在相关技术中,设备捕获的图片或接收的图片与人眼视觉在色彩上难以保持一致,导致色彩失真。通过在isp(imagesignalprocessing,图像信号处理)通路中,可以采用色彩矫正矩阵(colorcorrectionmatrix,简称ccm)将设备相关的颜色空间,转换至设备无关的颜色空间,完成光谱响应的交叉效应和响应强度的矫正。31.但是,视野有多个光源时,对于包括多光源视野的图像来说,不同光源对应图像区域之间总是需要彼此妥协来完成颜色矫正,例如以某一种光源对应的颜色矫正矩阵来完成全局图像的颜色矫正,降低整体图像的颜色矫正准确性。32.基于上述一个或多个问题,本示例实施例提供了一种图像处理方法,以对图像进行颜色矫正。参考图2所示,该图像处理方法可以包括以下步骤s210至步骤s240:33.在步骤s210中,获取颜色矫正矩阵序列。34.在本公开的示例性实施例中,颜色矫正矩阵序列为根据不同光源的第一颜色矫正矩阵构建的。颜色矫正矩阵为3×3的矩阵,用于将与设备相关的颜色空间转换至设备无关的颜色空间,实际实施时,可以利用每个像素点的颜色矫正矩阵对该像素点的颜色参数进行矫正。本公开实施例将不同光源的第一颜色矫正矩阵有序排列,作为颜色矫正矩阵序列。例如,颜色矫正矩阵序列为ccm1,ccm2,ccm3,……,ccmn-1,ccmn,n为光源数量。35.其中,光源是指能发出一定波长范围的电磁波的物体,在不同环境光线(光源)下捕获的图像表现不同的颜色显示结果。因为不同光源的色温不同,在不同光源下物体呈现颜色不同。例如在低色温光源下,白色物体偏红,在高色温光源下白色物体偏蓝,人眼视觉根据大脑记忆判断识别真实颜色,而对于不同光源下捕获的图像,要呈现出贴近人眼视觉的显示效果,则需要进行颜色矫正。36.本公开实施例中,可根据矫正需求确定光源类型和数量。例如,不同光源可以包括d75,d65,d50,tl84,cwf,a,h七种标准光源,标准光源为模拟各种环境光线的人造光源,具有与实际光源一致的照明效果。各光源的相对色温值如7500k,6500k,5000k,4020k,4063k,2928k,2349k。值得说明的是,可根据实际需求调整光源数量和类型,本公开实施例对光源类型和数量不做特殊限定。37.实际实施时,可以分别对每种光源的第一颜色矫正矩阵进行标定,得到所有光源的第一颜色矫正矩阵,并将所有光源的第一颜色矫正矩阵排序形成序列。示例性,可以将第一颜色矫正矩阵基于不同光源的相对色温值排序。38.将不同光源的第一颜色矫正矩阵融合构建为颜色矫正矩阵序列,基于序列化的第一颜色矫正矩阵,可作为同时处理包含不同光源图像的参考基础,无需重复获取不同光源的颜色矫正矩阵,提高处理多光源捕获图像的矫正效率。39.在步骤s220中,将图像分割为多个图像块,基于颜色矫正矩阵序列分别确定各图像块的第二颜色矫正矩阵。40.在本公开的示例性实施例中,将图像分割为多个图像块,各图像块之间无重叠区域,基于颜色矫正矩阵序列,分别确定各图像块的第二颜色矫正矩阵。41.在一些可能的实施方式中,可以根据设备硬件信息确定图像块的分割数量。其中,若设备存在色温传感模块且与设备的图像传感模块的视野完全匹配,则图像块的分割数量与色温传感模块的阵列结构相同。图像传感模块可以为主摄、广角、长焦等摄像头所对应的图像传感器,与其匹配的色温传感阵列为m×n,则图像块的分割阵列为m×n。42.基于此,每个图像块具有对应的色温传感模块,则可以通过色温传感模块获得每个图像块的色温、光谱等信息,将测得的信息直接参与后续的图像块的第一颜色矫正矩阵的预测,具有较高的预测准确性。43.在一些可能的实施方式中,还可以根据实际光源特性数据、目标图像分辨率、图像预测效果和预测计算量等中的一个或多个因素决策图像的分割数量。其中,实际光源特性数据至少包括光源方向、光源数量、光源距离图像的距离、光源数量以及光源发布。结合各因素决策图像块的分割数量,例如可选将图像分割为4×3、8×6的图像块。44.在获得图像对应的多个图像块后,可基于颜色矫正矩阵,插值获取各图像块的第二颜色矫正矩阵,针对图像中对应不同光源的视野部分得到相匹配的第二颜色矫正矩阵的同时,对应不同光源的视野部分之间过渡平滑自然。45.在步骤s230中,根据各图像块的第二颜色矫正矩阵以及图像块位置,插值获取各图像块中像素点的第三颜色矫正矩阵。46.在本公开的示例性实施例中,可基于图像块位置,对图像块的第二颜色矫正矩阵,以获取图像块中像素点的第三颜色矫正矩阵,亦即图像块之间的颜色矫正矩阵。47.其中,根据图像块位置,确定图像块中像素点的相邻图像块的数量,由于像素点相邻图像块的数量不同,为了使得图像块与图像块之间的平滑过渡,先确定像素点实际的相邻图像块的数量,然后基于该像素点的相邻图像块的第二颜色矫正矩阵进行插值处理,获取上述像素点的第三颜色矫正矩阵,在无需各图像块之间存在重叠部分的情况下,通过图像块之间的第二颜色矫正矩阵进行插值的方式,使得图像块之间的像素点的第三颜色矫正矩阵平滑过渡,避免整个图像出现突兀的区域。48.像素点的相邻图像块包括像素点对应图像块(所属图像块)以及像素点对应图像块的相邻图像块。如图3示意性示出了本公开示例性实施例中一种像素点的相邻图像块的示意图。49.如图3所示,将图像划分为4×5的图像块,标识1指示区域中像素点的相邻图像块为像素点对应图像块,即位于图像顶角区域的像素点的相邻图像块为上述像素点对应图像块,标识2指示区域中像素点的相邻图像块为像素点对应图像块以及对应图像块横向相邻的一个图像块,即位于图像边缘区域的像素点的相邻图像块为上述像素点对应图像块以及对应图像块横向相邻的一个图像块,标识3指示区域中像素点的相邻图像块为像素点对应图像块以及像素点对应图像块相邻的三个图像块,也就是说,位于图像内部区域的像素点的相邻图像块为像素点对应图像块以及像素点对应图像块相邻的三个图像块。50.值得说明的是,图3所示的图像区域的划分依据是图像块的对称中心,本公开实施例还可以根据实际矫正需求,调整图像区域的划分依据,在此不做特殊限制。51.根据图像块位置确定各图像块中像素点的相邻图像块,以基于相邻图像块的第二颜色矫正矩阵,插值获得像素点的第三颜色矫正矩阵,使图像块之间的像素点的第三颜色矫正矩阵平滑过渡。52.在步骤s240中,利用各第三颜色矫正矩阵对图像的颜色参数进行矫正。53.在本公开的示例性实施例中,在获得图像中像素点的第三颜色矫正矩阵后,可以利用第三颜色矫正矩阵矫正对应像素点的颜色参数,如矫正对应像素点的rgb数据,得到矫正后的图像。54.示例性的,可以将每个像素点的rgb数据乘以对应的第三颜色矫正矩阵,得到矫正后的rgb数据,如以下公式(1)所示:[0055][0056]其中,r’、g’和b’为矫正前的rgb数据,r、g和b为矫正后的rgb数据。[0057]本公开的示例性实施例中的图像处理方法,根据不同光源的第一颜色矫正矩阵构建颜色矫正矩阵序列,基于颜色矫正矩阵序列分别确定图像中各图像块的第二颜色矫正矩阵,使得不同光源对应视野部分的图像块,获得与其对应光源相匹配的第二颜色矫正矩阵,从而可分别矫正不同光源对应的视野部分,无需多光源捕获图像的各图像块之间采用唯一矫正方式,避免多光源捕获图像的各图像块之间的矫正妥协而导致的部分区域失真,亦即同一图像兼顾多光源视野部分的矫正,提高多光源的图像颜色矫正准确性和真实性;另一方面,根据图像块的第二颜色矫正矩阵和图像块位置,插值获取各图像块中像素点的第三颜色矫正矩阵,无需图像块之间包含重叠部分来完成过渡,插值获得各图像块的第三颜色矫正矩阵,使得图像块与图像块间的像素点的颜色参数矫正以更平滑方式过渡,避免图像块之间产生色彩突兀区域,确保多光源捕获图像的色彩矫正的全局完整。[0058]在一示例性实施例中,提供一种获取颜色矫正矩阵序列的实现方式。获取颜色矫正矩阵序列可以包括如下步骤s410至步骤s430:[0059]步骤s410:获取各光源所对应的第一颜色矫正矩阵。[0060]可以针对每种光源,对光源下的目标颜色值和测量颜色值进行多项式拟合处理,得到第一颜色矫正矩阵。其中,目标颜色值和测量颜色值基于标准色卡图像获得。[0061]示例性的,在每种光源环境下,采集24色卡图像,以色卡图像的24种测量颜色值和目标颜色值为输入,采用最小二乘法拟合,使得输出的图像与目标图像数据差异最小的第一颜色矫正序列。[0062]图5示意性示出了本公开示例性实施例中一种标定每个光源的第一颜色矫正矩阵的实现方式的示意图。如图5所示,sensor_rgb为源色彩空间,非线性srgb为目标颜色空间,源色彩空间对应的24色色块、非线性srgb对应的24色块、m1和γ的数值为已知,则可以先对非线性srgb进行反gamma矫正,得到线性srgb,然后将线性rgb转换至xyz空间,得到以下公式(2):[0063][0064]其中,m为色块大小,若取24色卡,则m为24,n为每个色块的平均颜色值。基于公式(2),得到以下公式:[0065][0066]即获得第一颜色矫正矩阵m=m2×m1。[0067]需要说明的是,本公开实施例还可以通过其它方式获取各光源所对应的第一颜色矫正矩阵,例如采用3d-lut(3d-look-up-table,三维查找表)的方式获取各光源对应的第一颜色矫正矩阵,本公开实施例对此不做特殊限定。[0068]以标准色卡图像为基准的标定方式,有益于对同一视野内多个光源混合的客观标定矫正还原,进而确保颜色矫正的客观性和准确性。[0069]步骤ss420:获取各光源的相对色温值。[0070]可以针对每种光源,采用光源照度计依次采集每种光源的相对色温值。[0071]步骤ss430:将各第一颜色矫正矩阵,按照对应光源的相对色温值大小进行排序,得到颜色矫正矩阵序列。[0072]为了后续基于颜色矫正矩阵序列进行插值处理,可以将不同光源的第一颜色矫正矩阵,按照对应光源的相对色温值大小进行排序,得到颜色矫正矩阵序列。[0073]可选地,可将第一颜色矫正矩阵,按照对应光源的相对色温值由大至小的顺序进行排序,得到颜色矫正矩阵序列;可选地,可将第一颜色矫正矩阵,按照对应光源的相对色温值由大至小的顺序进行排序,得到颜色矫正矩阵序列,在此不做限定。[0074]示例性的,将不同光源的相对色温值按照大小排序得到相对色温值序列为:cct1,cct2,cct3,……,cctn-1,cctn,n为光源数量,对应的颜色矫正矩阵序列为ccm1,ccm2,ccm3,……,ccmn-1,ccmn。二者序列中各元素具有对应关系。[0075]由于光源的相对色温值随可见光的光谱成分变化而改变,将第一颜色矫正矩阵按照不同光源的相对色温值排序的颜色矫正矩阵序列,能反映不同光源的颜色矫正矩阵的同时,基于颜色矫正矩阵序列和各图像块的色温值方便进行插值获取各图像块的第二颜色矫正矩阵。[0076]在本公开一示例性实施例中,提供一种确定图像块的第二颜色矫正矩阵的实现方式。将图像分割为多个图像块,基于颜色矫正矩阵序列分别确定各图像块的第二颜色矫正矩阵可以包括步骤s610至步骤s630:[0077]步骤610:将图像分割为多个图像块。[0078]其中,可将图像按照目标数量进行分割,得到多个图像块。目标数量至少根据实际光源特性数据和目标图像分辨率确定,实际光源特性数据至少包括光源方向、光源距离图像的距离、光源数量以及分布。[0079]在实际实施时,除了实际光源特性数据和目标图像分辨率,还可以结合图像预测效果和预测计算量等确定目标数量。[0080]示例性的,确定图像块划分的目标数量的决策因子可以包括光源方向,例如光源向四周同时扩散,则将图像块划分为方形优于矩阵。根据光源的辐射方向可以确定图像块划分的形状。[0081]示例性的,确定图像块划分的目标数量的决策因子可以包括目标图像分辨率,例如若设备拍摄主摄、广角和长焦分辨率均为4096×3072,对应的图像宽高比为4:3,图像可被整除均分为方形,可以将图像块划分为方形,如4×3,8×6和12×9等。[0082]示例性的,确定图像块划分的目标数量的决策因子可以包括光源距离图像的距离、光源数量及分布情况。例如,实际应用中的拍摄场景的视野中,当光源距离被拍摄物体的距离较远时,多个光源到达设备时已完全混合,不存在光源同一图像块分布的情况,因此可仅考虑光源与拍摄物体距离较近的情况,在光源数量不超过10个时,同一图像块内分布2个以上光源的情况较少,因此图像块的目标数量大于10即可,本公开实施例可根据实际需求调整图像块的目标数量。[0083]示例性的,确定图像块划分的目标数量的决策因子可以包括算法性能和算法效果。由于每个图像块均需确定对应的第二颜色矫正矩阵,图像块的目标数量越多,运算量增加,因此可适当减少目标数量的数值。但是,第二颜色矫正矩阵与图像内容相关,图像块越大图像内容越丰富,为了增加图像块内容的丰富性,保证第二颜色矫正矩阵的全局效果,应适当增加目标数量的数值。例如图像块为4×3、8×6等。[0084]需要说明的是,本公开实施例采用上述的决策因子并非是绝对的,而是根据实际矫正需求,结合上述决策因子中的一个或多个,以保证计算性能稳定的同时,提高第二颜色矫正矩阵准确性为目标确定目标数量。[0085]步骤s620:获取各图像块的色温值。[0086]获取图像块的色温值,若每个图像块具有对应的色温传感模块,则可通过色温传感模块直接采集各图像块的色温值,采集结果更贴近图像块的真实色温,具有较高的准确性。[0087]若各图像块不存在对应的色温传感模块,则可以利用图像块的rgb数据确定图像块的色温值。[0088]示例性的,可以分别计算图像块r、g和b的均值,利用均值与预设的颜色值与色温值对应关系进行采样,获得各图像块的色温值。值得说明的是,本公开实施例也可以采用其它方式,利用图像块的rgb数据确定图像块的色温值,对此不做具体限定。[0089]步骤s630:针对各图像块,利用色温值在颜色矫正矩阵序列中进行插值处理,以获取各图像块的第二颜色矫正矩阵。[0090]针对任意图像块,可以利用色温值在颜色矫正矩阵序列中进行线性插值,以获得各图像块的第二颜色矫正矩阵。[0091]示例性的,继续参见步骤430所示的将不同光源的相对色温值按照大小排序得到相对色温值序列为:cct1,cct2,cct3,……,cctn-1,cctn,n为光源数量,对应的颜色矫正矩阵序列为ccm1,ccm2,ccm3,……,ccmn-1,ccmn。若存在图像块a的色温值为cctx,利用色温值cctx在颜色矫正矩阵序列中插值,确定图像块a位于第一颜色矫正矩阵ccm2,ccm3之间,则将对应的第一颜色矫正矩阵ccm2,ccm3加权相加,插值获得图像块a的第二颜色矫正矩阵。其中,权重可以根据图像块a的cctx与第一颜色矫正矩阵ccm2,ccm3之间的距离确定,本公开对此不做特殊限定。[0092]基于各图像块的色温值,兼顾不同光源对应的视野部分,获得与其对应光源相匹配的第二颜色矫正矩阵,从而可分别矫正不同光源对应的视野部分,无需多光源捕获图像的各图像块之间采用唯一矫正方式,避免多光源捕获图像的各图像块之间的矫正妥协而导致的部分区域失真,提高多光源的图像颜色矫正准确性。[0093]在一示例性实施例中,为了使得不同图像块之间的颜色为平滑过渡,还可以获取图像块与图像块之间的颜色矫正矩阵,即图像块中像素点的第三颜色矫正矩阵,在避免图像块之间有重叠区域的情况下,实现图像块之间的过渡平滑自然。根据各图像块的第二颜色矫正矩阵以及图像块位置,插值获取各图像块中像素点的第三颜色矫正矩阵可以包括:[0094]基于图像块位置,利用各像素点对应图像块的相邻图像块的第二颜色矫正矩阵,插值获取各图像块中像素点的第三颜色矫正矩阵。[0095]其中,由于像素点相邻图像块的数量不同,为了使得图像块与图像块之间的平滑过渡,先确定像素点实际的相邻图像块的数量,然后基于该像素点的相邻图像块的第二颜色矫正矩阵进行插值处理,获取上述像素点的第三颜色矫正矩阵。[0096]如图7示意性示出了本公开示例性实施例中一种基于图像块位置,利用各像素点对应图像块的相邻图像块的第二颜色矫正矩阵,插值获取各图像块中像素点的第三颜色矫正矩阵的示意图,图7与图3对应。标识1指示区域中像素点的第三颜色矫正矩阵可以通过该像素点对应图像块的第二颜色矫正矩阵确定,亦即位于图像顶角区域的像素点的第三颜色矫正矩阵直接为对应图像块的第二颜色矫正矩阵(即标识1指示区域的第三颜色矫正矩阵为点a对应的第二颜色矫正矩阵),标识2指示区域中像素点的第三颜色矫正矩阵是根据像素点对应图像块以及对应图像块横向相邻的一个图像块(点a和点b)的第二颜色矫正矩阵插值,标识3指示区域中像素点的第三颜色矫正矩阵是根据对应图像块以及像素点对应图像块相邻的三个图像块(点a、点b、点c和点d)的第二颜色矫正矩阵插值获得。[0097]不同标识指示区域所对应的目标插值方式可以不同,例如选自最邻近插值、线性插值或双线性插值等中的一种。[0098]根据图像块的第二颜色矫正矩阵和图像块位置,插值获取各图像块中像素点的第三颜色矫正矩阵,无需图像块之间包含重叠部分来完成过渡,插值获得各图像块的第三颜色矫正矩阵,使得图像块与图像块间的像素点的颜色参数矫正以更平滑方式过渡,避免图像块之间产生色彩突兀区域,确保多光源捕获图像的色彩矫正的全局完整。[0099]在一示例性实施例中,基于图像块位置,利用各像素点对应图像块的相邻图像块的第二颜色矫正矩阵,插值获取各图像块中像素点的第三颜色矫正矩阵可以包括步骤s810至步骤s830:[0100]步骤s810:根据图像块位置,将图像划分为多个图像区域,其中,不同图像区域中的像素点对应不同数量的相邻图像块。[0101]根据图像块位置确定图像块之间的相邻关系,以根据相邻关系将图像划分为多个图像区域,使得不同图像区域中的像素点对应不同数量的相邻图像块。[0102]继续参见图3所示,将图像划分为三个区域分别为:图像顶角区域1,图像边缘区域2以及图像内部区域3,各区域内像素点对应图像块具有不同数量的相邻图像块。[0103]步骤s820:针对各图像区域中的像素点,确定像素点对应图像块的相邻图像块。[0104]本步骤中确定各图像区域中的像素点对应图像块的相邻图像块,具体参见步骤s230所述,在此不再赘述。[0105]步骤s830:利用像素点对应图像块的第二颜色矫正矩阵以及对应的相邻图像块的第二颜色矫正矩阵,按照像素点所属图像区域的目标插值处理方式,插值获取像素点的第三颜色矫正矩阵。[0106]在确定各像素点所属的图像区域,以及各像素点对应图像块的相邻图像块后,利用像素点对应图像块的第二颜色矫正矩阵以及对应的相邻图像块的第二颜色矫正矩阵,按照像素点所属图像区域的目标插值处理方式,插值获取各像素点的第三颜色矫正矩阵。[0107]例如,继续参见图3,图像顶角区域1的像素点采用最邻近插值方式,插值获取各像素点的第三颜色矫正矩阵,图像边缘区域2采用线性插值方式,插值获取各像素点的第三颜色矫正矩阵以及图像内部区域3采用双线性插值方式,插值获取各像素点的第三颜色矫正矩阵。[0108]通过将各图像区域采用各自对应的目标插值处理方式,对像素点对应图像块的相邻图像块的第二颜色矫正矩阵进行插值,获得像素点的第三颜色矫正矩阵,避免图像块与图像块之间的像素点的第三颜色矫正矩阵出现突变,而是平滑过渡,进而避免整张图像的像素点的颜色参数矫正产生色彩突兀区域,提高图像处理的全局色彩准确性。[0109]在本公开一示例性实施例中,还可以将整张图像作为一个图像块进行插值处理,在获取颜色矫正矩阵序列之后,还可以将图像的整体作为图像块,从而插值获取各图像块中像素点的第三颜色矫正矩阵还可以包括:[0110]基于图像块中每个像素点的rgb数据,获取每个像素点的像素色温值,然后利用像素色温值在颜色矫正矩阵序列中进行插值处理,以获取每个像素点的第三颜色矫正矩阵。[0111]其中,可以基于预设的rgb数据与三刺激值的目标转换矩阵,将rgb数据转换为目标三刺激值,然后根据目标三刺激值,确定对应像素点的色坐标,以利用色坐标确定对应像素点的像素色温值。[0112]举例而言,在获得相对色温值序列为:cct1,cct2,cct3,……,cctn-1,cctn,n为光源数量,对应的颜色矫正矩阵序列为ccm1,ccm2,ccm3,……,ccmn-1,ccmn后,不对图像进行分割,直接采用每个像素点的rgb数据计算像素色温值,然后利用像素色温值在颜色矫正矩阵序列进行一维线性插值,得到像素点的第三颜色矫正矩阵。[0113]基于此,在不进行图像分块的情况下,通过图像各区域中像素点的像素色温值在颜色矫正矩阵序列中插值处理,使得各区域像素点的第三颜色矫正矩阵也是平滑过渡。[0114]在本公开一示例性实施例中,还可以将图像分割为多个图像块后,分别获得各图像块的色温值,然后基于预设的三维查找表3d-lut,查找任意像素点的第三颜色矫正矩阵。其中3d-lut的大小为m×n×d,m和n为水平和垂直方向的分块数据,d为光源的相对色温值。[0115]由于每个第三颜色矫正矩阵为3×3的矩阵,每个元素位置对应一个3d-lut,则在无需插值处理的情况下,分别查表9次即可获得任意像素点的第三颜色矫正矩阵,从而避免在gpu(graphicsprocessingunit,图形处理器)硬件中进行插值运算,提高运算速度。[0116]图9示意性示出了本公开示例性实施例中一种应用场景下的图像处理方法的示意图,下面以将图像进行分割图像块为例,结合图9对本公开实施例的图像处理方法进行详述。[0117]首先,根据d75,d65,d50,tl84,cwf,a,h七种标准光源的第一颜色矫正矩阵构建颜色矫正矩阵序列ccm1,ccm2,ccm3,……,ccmn-1,ccmn。[0118]其次,将图像划分为9个图像块,各图像块之间没有区域重叠部分,并根据各图像块位置,确定将图像划分为多个图像区域,包括图像区域91(图像顶角区域),图像区域92(图像边缘区域)和图像区域93(图像内部区域)。[0119]接着,确定各图像区域中像素点对应图像块的相邻图像块。将部分区域放大处理,以下步骤在放大部分区域的基础上进行描述。[0120]进一步的,针对图像区域91,利用像素点对应图像块的第二颜色矫正矩阵以及对应的相邻图像块的第二颜色矫正矩阵,采用最邻近插值方式,插值获取像素点的第三颜色矫正矩阵。针对图像区域92,利用像素点对应图像块的第二颜色矫正矩阵以及对应的相邻图像块的第二颜色矫正矩阵,采用线性插值方式,插值获取像素点的第三颜色矫正矩阵;针对图像区域93,利用像素点对应图像块的第二颜色矫正矩阵以及对应的相邻图像块的第二颜色矫正矩阵,采用双线性插值方式,插值获取像素点的第三颜色矫正矩阵ccm。[0121]最后,利用各像素点的第三颜色矫正矩阵,与对应的rgb数据相乘,得到矫正后的rgb数据,即矫正颜色后的图像。[0122]如图10和图11分别示出了应用本公开实施例的图像处理方法后的图像以及应用相关技术中的全局颜色矫正方法后的图像,对比可知,本公开实施例的图像处理方法,不同光源对应视野部分的图像块,获得与其对应光源相匹配的第二颜色矫正矩阵,从而可分别矫正不同光源对应的视野部分,无需多光源捕获图像的各图像块之间采用唯一矫正方式,避免多光源捕获图像的各图像块之间的矫正妥协而导致的部分区域失真,亦即同一图像兼顾多光源视野部分的矫正,提高多光源的图像颜色矫正准确性;根据图像块的第二颜色矫正矩阵和图像块位置,插值获取各图像块中像素点的第三颜色矫正矩阵,无需图像块之间包含重叠部分来完成过渡,插值获得各图像块的第三颜色矫正矩阵,使得图像块与图像块间的像素点的颜色参数的矫正以更平滑方式过渡,避免图像块之间产生色彩突兀区域,确保多光源捕获图像的色彩矫正的全局完整。[0123]需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。[0124]进一步的,参考图12所示,本公开的示例性实施方式中提供一种图像处理装置1200,包括获取模块1210、矩阵处理模块1220、插值处理模块1230和矫正模块1240。其中:[0125]获取模块1210,用于获取颜色矫正矩阵序列,所述颜色矫正矩阵序列为根据不同光源的第一颜色矫正矩阵构建的;[0126]矩阵处理模块1220,用于将图像分割为多个图像块,基于所述颜色矫正矩阵序列分别确定各所述图像块的第二颜色矫正矩阵;[0127]插值处理模块1230,用于根据各所述图像块的第二颜色矫正矩阵以及图像块位置,插值获取各所述图像块中像素点的第三颜色矫正矩阵;[0128]矫正模块1240,用于利用各所述第三颜色矫正矩阵对所述图像的颜色参数进行矫正。[0129]在一示例性实施例中,获取模块1210可以包括:[0130]第一获取单元,用于获取各所述光源所对应的第一颜色矫正矩阵;[0131]第二获取单元,用于获取各所述光源的相对色温值;[0132]排序单元,用于将各所述第一颜色矫正矩阵,按照对应光源的相对色温值大小进行排序,得到所述颜色矫正矩阵序列。[0133]在一示例性实施例中,第一获取单元被配置为:[0134]针对每种光源,对所述光源下的目标颜色值和测量颜色值进行多项式拟合处理,得到所述第一颜色矫正矩阵;[0135]其中,所述目标颜色值和所述测量颜色值基于标准色卡图像获得。[0136]在一示例性实施例中,矩阵处理模块1220可以包括:[0137]图像分割单元,用于将所述图像分割为所述多个图像块;[0138]第三获取单元,用于获取各所述图像块的色温值;[0139]第一插值处理单元,用于针对各所述图像块,利用所述色温值在所述颜色矫正矩阵序列中进行插值处理,以获取各所述图像块的所述第二颜色矫正矩阵。[0140]在一示例性实施例中,第三获取单元被配置为:[0141]通过与各所述图像块对应的色温传感模块获取各所述图像块的色温值。[0142]在一示例性实施例中,插值处理模块1230被配置为:[0143]基于所述图像块位置,利用各所述像素点对应图像块的相邻图像块的第二颜色矫正矩阵,插值获取各所述图像块中像素点的第三颜色矫正矩阵。[0144]在一示例性实施例中,插值处理模块1230可以包括:[0145]区域划分单元,用于根据所述图像块位置,将所述图像划分为多个图像区域,其中,不同图像区域中的像素点对应不同数量的相邻图像块;[0146]图像块确定单元,用于针对各所述图像区域中的像素点,确定所述像素点对应图像块的相邻图像块;[0147]第二插值处理单元,用于利用所述像素点对应图像块的第二颜色矫正矩阵以及对应的所述相邻图像块的第二颜色矫正矩阵,按照所述像素点所属图像区域的目标插值处理方式,插值获取所述像素点的第三颜色矫正矩阵。networkprocessingunit,神经网络处理器)等。本示例性实施方式中的图像处理方法可以由ap、isp或dsp来执行,当方法涉及到颜色矫正处理时,可以由isp来执行,例如isp可以基于颜色矫正矩阵序列,对图像的颜色参数进行矫正。示例性地,可以获取颜色矫正矩阵序列,所述颜色矫正矩阵序列为根据不同光源的第一颜色矫正矩阵构建的;将图像分割为多个图像块,基于所述颜色矫正矩阵序列分别确定各所述图像块的第二颜色矫正矩阵;根据各所述图像块的第二颜色矫正矩阵以及图像块位置,插值获取各所述图像块中像素点的第三颜色矫正矩阵;利用各所述第三颜色矫正矩阵对所述图像的颜色参数进行矫正。[0162]编码器可以对图像或视频进行编码(即压缩),以减小数据大小,便于存储或发送。解码器可以对图像或视频的编码数据进行解码(即解压缩),以还原出图像或视频数据。移动终端1300可以支持一种或多种编码器和解码器,例如:jpeg(jointphotographicexpertsgroup,联合图像专家组)、png(portablenetworkgraphics,便携式网络图形)、bmp(bitmap,位图)等图像格式,mpeg(movingpictureexpertsgroup,动态图像专家组)1、mpeg10、h.1063、h.1064、hevc(highefficiencyvideocoding,高效率视频编码)等视频格式。[0163]处理器1301可以通过总线1303与存储器1302或其他部件形成连接。[0164]存储器1302可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器1301通过运行存储在存储器1302的指令,执行移动终端1300的各种功能应用以及数据处理。存储器1302还可以存储应用数据,例如存储图像,视频等文件。[0165]移动终端1300的通信功能可以通过移动通信模块1304、天线1、无线通信模块1305、天线2、调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。移动通信模块1304可以提供应用在移动终端1300上3g、4g、5g等移动通信解决方案。无线通信模块1305可以提供应用在移动终端1300上的无线局域网、蓝牙、近场通信等无线通信解决方案。[0166]显示屏1306用于实现显示功能,如显示用户界面、图像、视频等。摄像模块1307用于实现拍摄功能,如拍摄图像、视频等。音频模块1308用于实现音频功能,如播放音频,采集语音等。电源模块1309用于实现电源管理功能,如为电池充电、为设备供电、监测电池状态等。传感器模块1310可以包括一种或多种传感器,用于实现相应的感应检测功能。例如,传感器模块1310可以包括惯性传感器,其用于检测移动终端1300的运动位姿,输出惯性传感数据。[0167]此外,本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。[0168]需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。[0169]在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。[0170]此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。[0171]本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1