一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

横向色差校正方法、装置、设备以及存储介质与流程

2022-12-20 21:15:17 来源:中国专利 TAG:


1.本技术涉及图像处理领域,尤其涉及一种横向色差校正方法、装置、设备以及存储介质。


背景技术:

2.由于光线通过图像拍摄设备的镜头时会产生折射现象,因此图像拍摄设备在成像时每个像素点的不同颜色通道会沿垂直于光轴方向产生不同的距离偏差,从而使得拍摄的图像存在横向色差。
3.现有技术对横向色差的校正效果较为有限,准确性不高,因此如何进一步提升横向色差的校正效果成为亟需解决的问题。


技术实现要素:

4.本技术实施例提供一种横向色差校正方法、装置、设备以及存储介质,可提升横向色差校正效果,适用性高。
5.一方面,本技术实施例提供一种横向色差校正方法,该方法包括:
6.基于待校正图像中每个第一像点的位置信息,确定该第一像点的色差偏移位置,基于每个所述第一像点的色差偏移位置对该第一像点的通道值进行校正得到初始校正图像,所述待校正图像为raw图像,每个所述第一像点为所述待校正图像中除g通道像点外的一个像点;
7.基于所述初始校正图像中各像点的通道值,确定至少一个校正方向对应的校正边界;
8.确定每个所述校正边界对应的至少一个目标像点组合,基于所述初始校正图像中各像点的通道值,对各所述目标像点组合中的像点的通道值进行校正得到目标校正图像;
9.其中,每个所述校正边界对应的一个目标像点组合包括所述初始校正图像中与该校正边界相邻的一个像点、以及与该像点在该校正边界对应的校正方向上相邻的一个像点,每个所述目标像点组合中的各像点位于对应校正边界的同一侧。
10.另一方面,本技术实施例提供了一种横向色差校正装置,该装置包括:
11.校正模块,用于基于待校正图像中每个第一像点的位置信息,确定该第一像点的色差偏移位置,基于每个所述第一像点的色差偏移位置对该第一像点的通道值进行校正得到初始校正图像,所述待校正图像为raw图像,每个所述第一像点为所述待校正图像中除g通道像点外的一个像点;
12.确定模块,用于基于所述初始校正图像中各像点的通道值,确定至少一个校正方向对应的校正边界;
13.所述校正模块,用于确定每个所述校正边界对应的至少一个目标像点组合,基于所述初始校正图像中各像点的通道值,对各所述目标像点组合中的像点的通道值进行校正得到目标校正图像;
14.其中,每个所述校正边界对应的一个目标像点组合包括所述初始校正图像中与该校正边界相邻的一个像点、以及与该像点在该校正边界对应的校正方向上相邻的一个像点,每个所述目标像点组合中的各像点位于对应校正边界的同一侧。
15.另一方面,本技术实施例提供了一种电子设备,包括处理器和存储器,该处理器和存储器相互连接;
16.所述存储器用于存储计算机程序;
17.所述处理器被配置用于在调用所述计算机程序时,执行本技术实施例提供的横向色差校正方法。
18.另一方面,本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行以实现本技术实施例提供的横向色差校正方法。
19.在本技术实施例中,根据待校正图像中每个b通道像点和r通道像点的色差偏移位置,可对每个b通道像点和r通道像点的色差进行初步校正得到初始校正图像。进一步可根据初始校正图像中各像点的通道值确定每个校正方向对应的校正边界,如确定初始校正图像中横向的校正边界和纵向的校正边界,进而可对每个校正边界在每个校正方向对应的目标像点组合中的像点的通道值进行校正得到目标校正图像,从而在初始校正图像基础上进一步提升横向色差校正效果。
附图说明
20.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1是本技术实施例提供的横向色差校正方法的流程示意图;
22.图2是本技术实施例提供的raw图像的示意图;
23.图3a是本技术实施例提供的确定校正像点的一场景示意图;
24.图3b是本技术实施例提供的确定校正像点的另一场景示意图;
25.图3c是本技术实施例提供的确定校正像点的又一场景示意图;
26.图4是本技术实施例提供的补齐像点的场景示意图;
27.图5a是本技术实施例提供的确定校正边界的一场景示意图;
28.图5b是本技术实施例提供的确定校正边界的另一场景示意图;
29.图5c是本技术实施例提供的确定目标像点组合的一场景示意图;
30.图5d是本技术实施例提供的确定目标像点组合的另一场景示意图;
31.图6是本技术实施例提供的横向色差校正装置的结构示意图;
32.图7是本技术实施例提供的电子设备的结构示意图。
具体实施方式
33.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于
本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
34.参见图1,图1是本技术实施例提供的横向色差校正方法的流程示意图。如图1所示,本技术实施例提供的横向色差校正方法具体可包括如下步骤:
35.步骤s11、基于待校正图像中每个第一像点的位置信息,确定该第一像点的色差偏移位置,基于每个所述第一像点的色差偏移位置对该第一像点的通道值进行校正得到初始校正图像。
36.其中,待校正图像为raw图像,raw图像包含有关场景的光照强度和颜色的物理信息。
37.其中,raw图像中的每个像点对应于一个颜色通道,且每个像点对应的颜色通道为绿色时可将该像点称为g通道像点,每个像点对应的颜色通道为红色时可将该像点称为r通道像点,每个像点对应的颜色通道为蓝色时可将该像点称为r通道像点。
38.其中,待校正图像可以为grbg格式、rggb格式、bggr格式以及gbrg格式中的任意一种格式。如图2所示,图2是本技术实施例提供的raw图像的示意图。图2所示了不同格式的raw图像中g通道像点、b通道像点以及r通道像点的排布方式。
39.其中,待校正图像中的每个第一像点为待校正图像中除g通道像点之外的一个像点,即待校正图像中的每个r通道像点和b通道像点均可视为一个第一像点。
40.在一些可行的实施方式中,对于待校正图像中的每个第一像点,在基于待校正图像中每个第一像点的位置信息,确定该第一像点的色差偏移位置时,可先确定r通道对应的色差偏移参数和b通道对应的色差偏移参数。
41.进一步地,对于待校正图像中每个第一像点,可基于该第一像点在待校正图像中的位置信息,确定该第一像点相较于待校正图像的图像中心的第一横向距离、第一纵向距离以及第一直线距离。
42.其中,第一像点i相较于待校正图像的图像中心的第一横向距离可表示为:
[0043][0044]
其中,第一像点i相较于待校正图像的图像中心的第一纵向距离可表示为:
[0045][0046]
其中,第一像点i相较于待校正图像的图像中心的第一直线距离可表示为:
[0047][0048]
其中,表示像点i对应的第一横向距离,表示像点i对应的第一纵向距离,表示像点i对应的第一直线距离,第一像点i在待校正图像中的坐标为(xi,yi),待校正图像的图像中心的坐标为(x0,y0)。
[0049]
可选地,待校正图像的图像中心的横坐标可根据确定,纵坐标可根据确定。
[0050]
其中,width和height分别为待校正图像的高和宽。
[0051]
其中,待校正图像的图像中心与光轴中心重合。
[0052]
进一步地,对于每个第一像点,可基于该第一像点相较于待校正图像的图像中心的第一横向距离、第一直线距离以及对应的色差偏移参数,确定该第一像点的第一横向色差偏移量,基于该第一像点相较于待校正图像的图像中心的第一纵向距离、第一直线距离以及对应的色差偏移参数,确定该第一像点的第一纵向色差偏移量。
[0053]
其中,第一像点i对应的第一横向色差偏移量可以表示为:
[0054][0055]
其中,第一像点i对应的第一纵向色差偏移量可以表示为:
[0056][0057]
其中,a、b以及c表示色差偏移参数,当第一像点i为r通道像点时,a、b、c为r通道对应的色差偏移参数,当第一像点i为b通道像点时,a、b、c为b通道对应的色差偏移参数。
[0058]
进一步地,确定出每个第一像点的横向色差偏移量和纵向色差偏移量之后,可基于该第一像点在待校正图像中的位置信息以及上述横向色差偏移量和纵向色差偏移量,确定出第一像点的色差偏移位置。
[0059]
在一些可行的实施方式中,在基于每个第一像点的色差偏移位置对该第一像点的通道值进行校正以得到初始校正图像时,可先基于待校正图像中每个第一像点的色差偏移位置相较于该第一像点所在第一方向的第一投影位置,从待校正图像中确定出该第一像点对应的第一方向校正像点。
[0060]
其中,第一方向为横向和纵向中的任意一项。
[0061]
若待校正图像中每个第一像点的色差偏移位置相较于该第一像点所在第一方向的第一投影位置与任一第二像点重合,则将该第二像点确定为该第一像点对应的第一方向校正像点。
[0062]
其中,每个第二像点为待校正图像中与该第一像点对应于相同通道的一个其他像点。例如,若该第一像点为r通道像点,当该第一像点对应的第一投影位置与一个r通道像点重合,则将该r通道像点确定为该第一像点对应的第一方向校正像点。
[0063]
如图3a所示,图3a是本技术实施例提供的确定校正像点的一场景示意图。在图3a中,对于第2行第2列的第一像点,其色差偏移位置如图3a所示,此时可确定色差偏移位置相较于该第一像点所在第一方向(横向)的第一投影位置。在该第一投影位置与第2行第4列的r通道像点合时,将第2行第4列的r通道像点确定为该第一像点的第一方向校正像点(横向校正像点)。
[0064]
或者,若每个第一像点的色差偏移位置相较于该第一像点所在第一方向的第一投影位置位于任一第二像点范围内,则将该第二像点确定为该第一像点对应的第一方向校正像点。
[0065]
若该第一像点的色差偏移位置对应的第一投影位置与各第二像点均不重合,则将该第一像点所在第一方向上的、与第一投影位置最近的两个第二像点确定为该第一像点对应的第一方向校正像点。
[0066]
如图3b所示,图3b是本技术实施例提供的确定校正像点的另一场景示意图。在图3b中,对于第2行第2列的第一像点,其色差偏移位置如图3b所示,此时可确定色差偏移位置
相较于该第一像点所在第一方向(横向)的第一投影位置。在该第一投影位置不与任何r通道像点重合时,将该第一像点所在第一方向上的与第一投影位置距离最近的两个第二像点(第2行第4列的r通道像点和第2行第6列的r通道像点)确定为该第一像点对应的第一方向校正像点(横向校正像点)。
[0067]
从待校正图像中确定出该第一像点对应的第一方向校正像点之后,可基于第一方向校正像点的通道值对该第一像点的通道值进行校正。
[0068]
其中,在该第一像点对应的第一方向校正像点的数量为1时,可直接将该第一像点的通道值更改为第一方向校正像点的通道值。在该第一像点对应的第一方向校正像点的数量为2时,可将各第一方向校正像点的通道值进行线性插值,并将该第一像点的通道值更改为线性插值结果。
[0069]
需要特别说明的是,在基于每个第一像点对应的第一方向校正像点的通道值对每个第一像点的通道值进行校正时,每个第一方向校正像点的通道值为在待校正图像中的原始通道值。例如,对应第一像点a而言,第一像点a在待校正图像中的原始通道值为f1,根据其对应的第一方向校正像点的通道值将第一像点a的通道值f1校正为f2。若在对第一像点b的通道值进行校正过程中将第一像点a确定为第一像点b对应的第一方向校正像点,则仍然基于第一像点a的原始通道值f1对第一像点b的通道值进行校正。
[0070]
基于上述方式,可对待校正图像中所有第一像点的通道值在第一方向上进行校正,从而得到中间校正图像。
[0071]
在得到中间校正图像之后,可基于中间校正图像中每个第一像点的色差偏移位置相较于该第一像点所在第二方向的第二投影位置,从中间校正图像中确定出该第一像点对应的第二方向校正像点,并基于每个第一像点对应的第二方向校正像点在待校正图像中的通道值对该第一像点在中间校正图像中的通道值进行校正,最终得到初始校正图像。
[0072]
其中,每个第一像点的色差偏移位置相较于该第一像点所在第二方向的投影位置的确定方式,与相较于该第一像点所在第一方向的投影位置的确定方式类似,在此不再赘述。
[0073]
其中,每个第一像点对应的第二方向校正像点的确定方式与每个第一像点对应的第一方向的校正像点的确定方式类似,在此不再赘述。
[0074]
其中,第一方向和第二方向分别为横向和纵向中的不同方向。也就是说,可先对待校正图像中每个第一像点的通道值在横向或者纵向上进行校正得到中间校正图像,进而对每个第一像点的通道值在另一方向上进行校正最终得到初始校正图像。
[0075]
在一些可行的实施方式中,在基于每个第一像点的色差偏移位置对该第一像点的通道值进行校正以得到初始校正图像时,还可先基于每个第一像点的色差偏移位置,从待校正图像中确定出每个第一像点对应的目标校正像点。
[0076]
具体地,可从待校正图像中确定出与每个第一像点的色差偏移位置最近的第三像点,每个第一像点和对应的第三像点分别对应于r通道和b通道中的不同通道。例如,若某一第一像点为b通道像点,则需从待校正图像中的所有r通道像点中确定与该第一像点距离最近的b通道像点。
[0077]
对于每个第一像点,可将距离该第一像点对应的第三像点最近的四个第四像点确定为该第一像点对应的目标校正像点,每个第四像点与该第一像点对应于相同通道。
[0078]
如图3c所示,图3c是本技术实施例提供的确定校正像点的又一场景示意图。在图3c中,若某一第一像点为b通道像点,且其色差偏移位置如图3c所示,此时可确定距离该第一像点最近的第三像点为第4行第4列的r通道像点,则进一步可将距离第4行第4列的r通道像点最近的b通道像点(第3行第3列的b通道像点、第3行第5列的b通道像点、第5行第3列的r通道像点以及第5行第5列的b通道像点)确定为该第一像点对应的目标校正像点。
[0079]
也即对于每个第一像点而言,可确定该第一像点对应的目标校正区域。其中,可确定该第一像点对应的所有校正区域,每个校正区域为与该第一像点属于相同的通道的4个像点所组成的最小矩形区域,该第一像点的色差偏移位置所在的校正区域即为该第一像点对应的目标校正区域,基于此,可将每个第一像点对应的目标校正区域所对应的、与该第一像点对应于相同通道的4个像点确定为该第一像点对应的目标校正像点。
[0080]
可选地,对于每个第一像点,可从待校正图像中确定出与该第一像点的色差偏移位置的第一横向距离最近的2个第四像点。以及与该色差偏移位置的第一纵向距离最近的2个第四像点,将确定出的4个第四像点确定为该第一像点对应的目标校正像点。其中,每个第四像点和该第一像点对应于相同通道。
[0081]
可选地,对于每个第一像点,若该第一像点的色差偏移位置位于与该第一像点对应于相同通道的第四像点,则可将该第四像点确定为该第一像点对应的目标校正像点。
[0082]
进一步地,对于每个第一像点,在该第一像点对应的目标校正像点的数量为4时,可基于双线性插值方法确定出该第一像点的色差偏移位置的通道值,进而将该第一像点的通道值校正为色差偏移位置的通道值。在该第一像点对应的目标校正像点的数量为1时,可将第一像点的通道值校正为目标校正像点的通道值。
[0083]
需要特别说明的是,在每个第一像点的色差偏移位置位于待校正图像范围外时,可对每个第一像点的色差偏移位置所在区域的像点进行补齐以确定出用于对每个第一像点进行校正的第一方向校正像点或者目标校正像点。
[0084]
如图4所示,图4是本技术实施例提供的补齐像点的场景示意图。图4中的中间白色区域为待校正图像,在确定待校正图像右方的像点时,可将待校正图像最右侧一列作为对称轴以基于除最右侧一列以外的其他像点对待校正图像右方的像点进行镜像补齐。
[0085]
同理,在确定待校正图像左方的像点时,可将待校正图像最左侧一列作为对称轴以基于除最左侧一列以外的其他像点对待校正图像左方的像点进行镜像补齐。在确定待校正图像上方的像点时,可将待校正图像顶侧一列作为对称轴以基于除顶侧一列以外的其他像点对待校正图像上方的像点进行镜像补齐。在确定待校正图像下方的像点时,可将待校正图像底侧一列作为对称轴以基于除底侧一列以外的其他像点对待校正图像下方的像点进行镜像补齐。
[0086]
对于待校正图像右上方、左上方、左下方以及右下方的区域(图4中的虚线框标记的区域),可同样基于上述补齐方式进行补齐。如在待校正图像右上方的像点时,可将待校正图像右方顶侧一列作为对称轴,基于对称轴下方的像点进行镜像补齐,或者将待校正图像上方最右侧一列作为对称轴,基于对称轴左侧的像点进行镜像补齐。其他区域的像点补齐方式类似,在此不再赘述。
[0087]
其中,在从中间校正图像中确定每个第一像点对应的第二方向校正像点时,可同样基于上述方式对中间校正图像进行补齐,在此不再赘述。
[0088]
其中,在对待校正图像各个方向的像点进行补齐时,采用偶数列或偶数行的像点进行补齐,从而使得补齐的图像与待校正图像的格式相同。
[0089]
在一些可行的实施方式中,本技术实施例中r通道对应的色差偏移参数以及b通道对应的色差偏移参数可基于标定图像确定。
[0090]
其中,标定图像可以是具有明显颜色区分度的场景对应的raw图像,如棋盘格、直线、竖线等raw图像,具体可基于实际应用场景需求确定,在此不做限制。
[0091]
具体地,可确定标定图像中每个预设g通道像点对应的b通道像点和r通道像点相较于该预设g通道像点的第二横向色差偏移量以及第二纵向色差偏移量。
[0092]
其中,标定图像中每个预设g通道像点为对应场景(场景为棋盘格)中颜色交界位置所对应的g通道像点,如棋盘格中黑色和白色交界位置所对应的g通道像点,如直线(场景为直线)上的任意位置对应的g通道像点等,具体可基于实际应用场景需求确定,在此不做限制。
[0093]
其中,可通过对标定图像中各预设g通道像点及其对应的b通道像点和g通道像点进行横向和纵向的边缘检测,即可确定镜头成像时各预设g通道像点对应的b通道像点和r通道像点的偏移位置。从而可基于每个预设g通道像点对应的b通道像点的偏移位置和该预设g通道像点的像点位置确定该预设g通道像点对应的b通道像点相较于该预设g通道像点的第二横向色差偏移量和第二纵向色差偏移量。
[0094]
同理,可基于每个预设g通道像点对应的r通道像点的偏移位置和该预设g通道像点的像点位置确定该预设g通道像点对应的r通道像点相较于该预设g通道像点的第二横向色差偏移量和第二纵向色差偏移量。
[0095]
进一步地,可确定每个预设g通道像点相较于标定图像的图像中心的第二横向距离、第二纵向距离以及第二直线距离。对于r通道和b通道中的每个通道而言,各预设g通道像点对应的第二横向距离、第二直线距离以及对应于该通道的第二横向色差偏移量之间具有以下关系:
[0096][0097]
其中,表示像点j对应的第二横向距离,表示像点j对应的第二直线距离,像点j为预设g通道像点。
[0098]
对于r通道和b通道中的每个通道而言,各预设g通道像点对应的第二横向距离、第二直线距离以及对应于该通道的第二纵向色差偏移量之间具有以下关系:
[0099][0100]
其中,表示像点j对应的第二纵向距离,表示像点j对应的第二直线距离,像点j为预设g通道像点。
[0101]
其中,ae、be以及ce为初始色差偏移参数。
[0102]
对于每个通道而言,每个预设g通道像点可建立上述两个关系式组,进而采用最小二乘法对各预设g通道像点对应的各关系式组进行拟合处理得到该通道对应的色差偏移参数。如基于各预设g通道像点对应的第二横向距离、第二直线距离以及对应于b通道的第二纵向色差偏移量和第二横向色差偏移量,确定b通道对应的色差偏移参数为ab、bb以及cb,基
于各预设g通道像点对应的第二横向距离、第二直线距离以及对应于r通道的第二纵向色差偏移量和第二横向色差偏移量,确定r通道对应的色差偏移参数为ar、br以及cr。
[0103]
其中,上述r通道对应的色差偏移参数和b通道对应的偏移参数为当前图像拍摄设备的镜头所对应的色差偏移参数,不同镜头对应的色差偏移参数不同。也即本技术实施例中待校正图像和用于确定r通道和b通道对应的色差偏移参数的标定图像为同一拍摄设备的同一镜头所生成的图像。
[0104]
步骤s12、基于初始校正图像中各像点的通道值,确定至少一个校正方向对应的校正边界。
[0105]
其中,至少一个校正方向包括横向或者纵向中的至少一项。
[0106]
在一些可行的实施方式中,对于每个校正方向,可基于初始校正图像中各像点的通道值,确定初始校正图像中各像点在对应校正方向上的g通道变化梯度。
[0107]
其中,初始校正图像中每个像点在对应校正方向上的g通道变化梯度,用于表示该像点在对应校正方向上的绿色变化程度。
[0108]
具体地,在确定初始校正图像中每个r通道像点和b通道像点在横向上的g通道变化梯度时,对于每个r通道像点或b通道像点,可基于初始校正图像中与该像点左右相邻的g通道像点的通道值,确定该像点在横向上的g通道变化梯度。
[0109]
如像点q为b通道像点,则像点q在横向上的g通道变化梯度可根据与像点q左右相邻的g通道像点的通道值确定。
[0110]
作为一示例,初始校正图像中像点i(像点i为b通道或者r通道像点)在横向上的g通道变化梯度可以表示为:
[0111][0112]
其中,h表示横向,为与像点i左侧相邻的g通道像点的通道值,为与像点i右侧相邻的g通道像点的通道值。
[0113]
如像点t为b通道像点,则像点t在纵向上的g通道变化梯度可根据与像点t上下相邻的g通道像点的通道值确定。
[0114]
作为一示例,初始校正图像中像点i(像点i为b通道或者r通道像点)在纵向上的g通道变化梯度可以表示为:
[0115][0116]
其中,v表示纵向,为与像点i上侧相邻的g通道像点的通道值,为与像点i下侧相邻的g通道像点的通道值。
[0117]
其中,对于初始校正图像中的每个g通道像点,该像点在横向上的g通道变化梯度可基于与每个第五像点四面相邻的g通道像点的通道值确定。其中,该像点对应的第五像点为与该像点左右相邻的像点。
[0118]
如像点p1为g通道像点,p2和p3分别为与像点p1左右相邻的像点,则像点p1在横向上的g通道变化梯度可根据与像点p2四面相邻的g通道像点的通道值以及与像点p3四面相
邻的g通道像点的通道值确定。
[0119]
作为一示例,初始校正图像中像点i(像点i为g通道像点)在横向上的g通道变化梯度可以表示为:
[0120][0121]
其中,k1表示与像点i左侧相邻的像点,以及分别为像点k1左侧相邻的像点的通道值、上侧相邻的像点的通道值、下侧相邻的像点的通道值以及右侧相邻的像点(即像点i)的通道值,k2表示与像点i右侧相邻的像点,以及分别为像点k2左侧相邻的像点(即像点i)的通道值、上侧相邻的像点的通道值、下侧相邻的像点的通道值以及右侧相邻的像点的通道值。
[0122]
对于初始校正图像中的每个g通道像点,该像点在纵向上的g通道变化梯度可基于与每个第六像点四面相邻的g通道像点的通道值确定。其中,该像点对应的第六像点为与该像点上下相邻的像点。
[0123]
如像点p1为g通道像点,p4和p5分别为与像点p1上下相邻的像点,则像点p1在纵向上的g通道变化梯度可根据与像点p4四面相邻的g通道像点的通道值以及与像点p5四面相邻的g通道像点的通道值确定。
[0124]
作为一示例,初始校正图像中像点i(像点i为g通道像点)在纵向上的g通道变化梯度可以表示为:
[0125][0126]
其中,w1表示与像点i上侧相邻的像点,以及分别为像点w1左侧相邻的像点的通道值、上侧相邻的像点的通道值、下侧相邻的像点(即像点i)的通道值以及右侧相邻的像点的通道值,w2表示与像点i右侧相邻的像点,以及分别为像点w2左侧相邻的像点的通道值、上侧相邻的像点(即像点i)的通道值、下侧相邻的像点的通道值以及右侧相邻的像点的通道值。
[0127]
其中,在确定初始校正图像中各像点在任意校正方向的g通道变化梯度时,可采用对待校正图像或中间校正图像的补齐方式对初始校正图像进行补齐,以便于确定位于初始校正图像边缘位置的像点在任意校正方向的g通道变化梯度。
[0128]
在一些可行的实施方式中,对于每个校正方向,在基于初始校正图像中各像点的通道值确定出各第一像点在该校正方向上的g通道变化梯度之后,可基于初始校正图像中各第一像点在该校正方向上的g通道变化梯度,确定该校正方向对应的校正边界。
[0129]
具体地,对于每个校正方向,可从初始校正图像中的预设区域内确定出在该校正方向上的g通道变化梯度超过对应第一梯度阈值的r通道像点和b通道像点,并将确定出的像点称为第七像点。
[0130]
其中,不同校正方向对应的第一梯度阈值可以相同,也可以不同,具体可基于实际应用场景需求确定,在此不做限制。
[0131]
其中,对于每个校正方向,初始校正图像内的预设区域的所有像点在该校正方向上的g通道变化梯度均小于第二梯度阈值。也即对于每个校正方向,初始校正图像内的预设区域为初始校正图像中对应于该校正方向的g通道变化梯度相对平滑的区域。
[0132]
进一步地,对于每个第七像点,可确定该第七像点对应的各第一像点组合。即对于每个第七像点而言,可将该第七像点、以及在该校正方向上与该第七像点相邻的一个像点确定为一个第一像点组合。每个第七像点在该校正方向上对应两个第一像点组合。
[0133]
进一步地,对于每个第七像点,可确定该第七像点对应的每个第一像点组合中的两个像点在该校正方向上的g通道变化梯度的梯度差,进而将梯度差最大的第一像点组合中的两个像点的边界确定为该校正方向对应的一个校正边界。
[0134]
也就是说,对于每一校正方向,可在确定出任意数量的第七像点之后,可基于每个第七像点确定出该校正方向对应的一个校正边界。
[0135]
例如,若校正方向为横向,则可从每个第七像点所在行中确定两个第一像点组合,一个第一像点组合包括该第七像点以及与该第七像点左侧相邻的像点,另一第一像点组合包括该第七像点以及与该第七像点右侧相邻的像点。对于每个第七像点,可确定该第七像点对应的每个第一像点组合中两个像点在横向上的g通道变化梯度的梯度差,进而将梯度差最大的第一像点组合中的两个像点的边界确定为该第七像点所在行在横向上的一个校正边界。
[0136]
如图5a所示,图5a是本技术实施例提供的确定校正边界的一场景示意图。若校正方向为横向,当像点b2为确定出的一个第七像点时,可确定像点g3在横向上的g通道变化梯度(255)和像点b2在横向上的g通道变化梯度(119)的第一梯度差(136)、以及像点b2在横向上的g通道变化梯度(119)和像点g2在横向上的g通道变化梯度(0)的第二梯度差(119)。由于第一梯度差大于第二梯度差,因此可将像点g3和像点b2的边界确定该行像点在横向上的一个校正边界。
[0137]
例如,若校正方向为纵向,则可从每个第七像点所在行中确定两个第一像点组合,一个第一像点组合包括该第七像点以及与该第七像点上侧相邻的像点,另一第一像点组合包括该第七像点以及与该第七像点下侧相邻的像点。对于每个第七像点,可确定该第七像点对应的每个第一像点组合中两个像点在纵向上的g通道变化梯度的梯度差,进而将梯度差最大的第一像点组合中的两个像点的边界确定为该第七像点所在列在纵向上的一个校正边界。
[0138]
如图5b所示,图5b是本技术实施例提供的确定校正边界的另一场景示意图。若校正方向为纵向,当像点r3为确定出的一个第七像点时,可确定像点g3在纵向上的g通道变化梯度(255)和像点r3在纵向上的g通道变化梯度(138)的第三梯度差(117)、以及像点r3在纵向上的g通道变化梯度(138)和像点g2在纵向上的g通道变化梯度(0)的第四梯度差(138)。由于第四梯度差大于第三梯度差,因此可将像点g3和像点g2的边界确定该列像点在纵向上的一个校正边界。
[0139]
步骤s13、确定每个校正边界对应的至少一个目标像点组合,基于初始校正图像中各像点的通道值,对各目标像点组合中的像点的通道值进行校正得到目标校正图像。
[0140]
其中,每个校正边界对应对应的一个目标像点组合包括初始校正图像中与该校正边界相邻的一个像点、以及与该像点在该校正边界对应的校正方向上相邻的一个像点,且
每个目标像点组合中的各像点位于对应校正边界的同一侧。
[0141]
如图5c所示,图5c是本技术实施例提供的确定目标像点组合的一场景示意图。图5c所示了初始校正图像中某一行像点中的校正边界,且该校正边界对应的校正方向为横向。基于此,可将与校正边界相邻的像点g3、以及与像点g3位于校正边界同一侧且与像点g3相邻的像点b3确定为一个目标像点组合。同理,可将与校正边界相邻的像点b2、以及与像点b2位于校正边界同一侧且与像点b2相邻的像点g2确定为一个目标像点组合。
[0142]
如图5d所示,图5d是本技术实施例提供的确定目标像点组合的另一场景示意图。图5d所示了初始校正图像中某一列像点中的校正边界,且该校正边界对应的校正方向为纵向。基于此,可将与校正边界相邻的像点g2、以及与像点g2位于校正边界同一侧且与像点g2相邻的像点r2确定为一个目标像点组合。同理,可将与校正边界相邻的像点r3、以及与像点r3位于校正边界同一侧且与像点r3相邻的像点g3确定为一个目标像点组合。
[0143]
进一步地,由于在rgb图片的小平滑区域内相邻的像素点存在色差恒定关系,即假设像素点p(i,j)和邻近像素点p(m,n),则有:
[0144]rij-g
ij
=r
mn-g
mn
[0145]bij-g
ij
=b
mn-g
mn
[0146]
经过变形可得:
[0147]rij-r
mn
=g
ij-g
mn
[0148]bij-b
mn
=g
ik-g
mn
[0149]
其中,r
ij
、b
ij
和g
ij
分别为像素点p(i,j)的r、b以及g通道的通道值,r
mn
、b
mn
以及g
mn
分别为像素点p(m,n)的r、b以及g通道的通道值。
[0150]
因此对于每个目标像点组合而言,若该目标像点组合包括r通道像点和g通道像点,则该目标像点组合和对应的第二像点组合中的g通道像点的通道值差值δg与该目标像点组合和对应的第二像点组合中的r通道像点的通道值差值δr一致。若该目标像点组合包括b通道像点和g通道像点,则该目标像点组合和对应的第二像点组合中的g通道像点的通道值差值δg与该目标像点组合和对应的第二像点组合中的b通道像点的通道值差值δb一致。
[0151]
其中,每个目标像点组合对应的第二像点组合和该目标像点组合位于该目标像点组合对应的校正边界的同一侧,每个目标像点组合对应的第二像点组合在该目标像点组合对应的校正方向上与目标像点组合相邻,且包括与该目标像点组合具有相同通道排列方式的两个像点。
[0152]
在基于初始图像中各像点的通道值对各目标像点组合中的像点的通道值进行校正以得到目标校正图像时,可从初始校正图像中确定出每个目标像点组合对应第二像点组合,并将每个目标像点组合对应的第二像点组合作为用于对目标像点组合进行内各像点的通道值进行校正的校正像点组合。
[0153]
例如,对于图5c中的目标像点组合g2b2,可将g1b1确定为该目标像点组合对应的校正像点组合。对于图5c中的目标像点组合g3b3,可将g4b4确定为该目标像点组合对应的校正像点组合。
[0154]
再例如,对于图5d中的目标像点组合r2g2,可将r1g1确定为该目标像点组合对应的校正像点组合。对于图5d中的目标像点组合r3g3,可将r4g4确定为该目标像点组合对应
的校正像点组合。
[0155]
进一步地,在对每个目标像点组合中的各像点的通道值进行校正时,可基于色差恒定关系,通过每个目标像点组合对应的校正像点组合中各像点的通道值,对该目标像点组合中各像点的通道值进行校正从而得到目标校正图像。
[0156]
其中,由raw图像中各像点的排列特性可知,每个目标像点组合和对应的校正像点组合中包括g通道像点。
[0157]
在此情况下,可确定目标像点组合中g通道像点的通道值与对应校正像点组合中g通道像点的通道值的第一差值,进而对目标像点组合中另一像点的通道值进行调整,以使得目标像点组合中另一像点的通道值与对应校正像点组合中另一像点的通道值的第二差值相等,从而完成对目标像点组合的通道值校正,得到目标校正图像。
[0158]
例如,对于图5c中的目标像点组合g2b2,可对像点b2的通道值进行调整以使得像点b2的通道值与像点b1的通道值的第一差值等于像点g2与像点g1的通道值的第二差值。
[0159]
再例如,对于图5d中的目标像点组合r2g2,可对像点r2的通道值进行调整以使得像点r2的通道值与像点r1通道值的第一差值等于像点g2的通道值与像点g1的通道值的第二差值。
[0160]
需要特别说明的是,对于每个目标像点组合,若该像点组合位于初始校正图像的边缘,则可不对该目标像点组合中的像点的通道值进行调整。或者可采用对待校正图像的补齐方式对初始校正图像进行补齐,以从补齐后的图像中确定出该目标像点组合对应的校正像点组合,进而基于校正像点组合对目标像点组合中的像点的通道值进行调整。
[0161]
需要特别说明的是,在只需要对初始校正图像进行一个校正方向的校正时,可先确定出该校正方向的所有校正边界对应的所有目标像点组合,进而同时基于每个目标像点组合对应的校正像点组合对对应目标像点组合中的像点的通道值进行校正,最终得到目标校正图像。
[0162]
在需要对初始校正图像进行横向和纵向校正时,可先确定出第三方向的所有校正边界对应的所有目标像点组合,进而同时基于每个目标像点组合对应的校正像点组合对对应目标像点组合中的像点的通道值进行校正得到候选校正图像。进一步基于候选校正图像对第四方向上的所有校正边界所对应的所有目标像点组合及其对应的校正图像组合中各像点的通道值进行更新,从而同时基于每个更新后的目标像点组合对应的更新后的校正像点组合对应更新后的目标像点组合中的像点的通道值进行校正,最终得到目标校正图像。
[0163]
其中,第三方向和第四方向分别为纵向和横向中的不同方向。
[0164]
在本技术实施例中,根据待校正图像中每个b通道像点和r通道像点的色差偏移位置,可对每个b通道像点和r通道像点的色差进行初步校正得到初始校正图像。进一步可根据初始校正图像中各像点的通道值确定每个校正方向对应的校正边界,如确定初始校正图像中横向的校正边界和纵向的校正边界,进而可对每个校正边界附近的目标像点组合中的像点的通道值进行校正得到目标校正图像,从而在初始校正图像基础上进一步提升横向色差校正效果。
[0165]
同时,本技术实施例提供的横向色差校正方法中的待校正图像为raw图像,可降低色差校正过程中涉及到梯度、位置以及距离等信息的复杂程度,有利于提升横向色差的校正效果。
[0166]
本技术实施例提供的横向色差校正方法还可对rgb格式的图像的横向色差进行校正。
[0167]
在一些可行的实施方式中,对于待校正的rgb格式的第一图像中的每个像素点,可确定该像素点中b通道和r通道的色差偏移位置,进而基于该像素点的b通道的色差偏移位置对该像素点的b通道的通道值进行校正,基于该像素点的r通道的色差偏移位置对该像素点的r通道的通道值进行校正,最终得到第一图像对应的初始校正图像。
[0168]
其中,对于第一图像中的每个像素点,在确定该像素点的b通道的色差偏移位置时,可先确定b通道对应的色差偏移参数,进而基于b通道对应的色差偏移系数、该像素点在第一图像中的位置信息以及第一图像的的图像中心的位置信息,确定该像素点的b通道对应的第三横向色差偏移量和第三纵向色差偏移量,从而基于第三横向色差偏移量和第三纵向色差偏移量确定出该像素点的b通道的色差偏移位置。同理,在确定该像素点的r通道的色差偏移位置时,可基于b通道对应的色差偏移参数基于上述方式进行确定,在此不再赘述。
[0169]
其中,b通道和r通道对应的色差偏移参数的确定方式与对raw格式的图像进行横向色差校正时所采用的色差偏移参数的确定方式类似,在此不再赘述。
[0170]
进一步地,对于第一图像中的每个像素点的b通道和r通道中的通道,以b通道为例,在确定出该像素点的b通道对应的色差偏移位置之后,可先基于该像素点的b通道对应的色差偏移位置相较于该像素点所在第一方向的第三投影位置,将在第一方向上与第三投影位置距离最近的两个像素点确定为该像素点对应的第一方向校正像素点,并基于各第一方向校正像素点的b通道的通道值确定该像素点的b通道的通道值,从而可对第一图像中每个像素点的b通道在第一方向上进行校正得到第二图像。进一步可基于该像素点的b通道对应的色差偏移位置相较于该像素点所在第二方向的第四投影位置,将在第二方向上与第四投影位置距离最近的两个像素点确定为该像素点对应的第二方向校正像素点,并基于各第一方向校正像素点在第一图像中的b通道的通道值对该像素点在第二图像中的b通道的通道值进行校正,得到第三图像。其中,第一方向和第二方向分别为横向和纵向中的不同方向。
[0171]
或者,可将该像素点的b通道对应的色差偏移位置所在的像素点的b通道的通道值确定为该像素点的b通道的通道值,或者基于色差偏移位置周围的像素点的b通道的通道值确定该像素点的b通道的通道值,最终得到第三图像。
[0172]
基于上述实现方式可完成对第一图像中每个像素点的b通道的通道值的校正,同理可基于相同原理对第三图像中每个像素点的r通道的通道值进行校正,得到第一图像对应的初始校正图像。
[0173]
其中,若第一图像中的每个像素点的任一通道的色差偏移位置位于第一图像范围之外时,可采用镜像补齐方式对第一图像周围的像素点进行补齐,具体补齐方式在此不再赘述。
[0174]
在一些可行的实施方式中,在确定出第一图像对应的初始校正图像之后,可对初始校正图像进行处理得到单通道的第四图像和第五图像,第四图像中的每个像素点对应于第一图像对应的初始校正图像中的一个b通道像素点,第五图像中的每个像素点对应于第一图像对应的初始校正图像中的一个r通道像素点,进而确定第四图像和第五图像中每个
像素点在各校正方向上的g通道变化梯度。其中,校正方向包括横向和纵向。
[0175]
以第四图像为例,第四图像中每个像素点在横向上的g通道变化梯度可由该像素点左右相邻的像素点在对应初始校正图像中的g通道的通道值确定,在纵向上的g通道变化梯度可由该像点上下相邻的像素点在对应初始校正图像中的g通道的通道值确定。
[0176]
对于每个校正方向,可从第四图像中的预设区域内确定出在该校正方向上的g通道变化梯度超过对应的第三梯度阈值的第一像素点,第四图像中的预设区域为第四图像中对应于该校正方向的g通道变化梯度相对平滑的区域。对于每个第一像素点,可确定该第一像素点对应的各第一像素点组合。对于每个第一像素点而言,可将该第一像素点以及在该校正方向上与该第一像素点相邻的一个像素点确定为一个第一像素点组合,每个第一像素点在该校正方向上对应两个第一像素点组合。
[0177]
进一步地,对于每个第一像素点,可确定该第一像素点对应的每个第一像素点组合中的两个像素点在该校正方向上的g通道变化梯度的梯度差,进而将梯度差最大的一个像点组合中的两个像素点的边界确定为该校正方向对应的一个校正边界。
[0178]
进一步地,对于每个校正边界,可确定该校正边界对应的至少一个第二像素点组合,每个第二像素点组合包括第四图像中与该校正边界相邻的一个像素点、以及与该像素点在该校正边界对应的校正方向上相邻的一个像素点,每个第二像素点组合中的各像素点对应于校正边界的同一侧。由于在rgb图片的小平滑区域内相邻的像素点存在色差恒定关系,即假设像素点p(i,j)和邻近像素点p(m,n),则有
[0179]rij-r
mn
=g
ij-g
mn
[0180]bij-b
mn
=g
ij-g
mn
[0181]
其中,r
ij
、b
ij
和g
ij
分别为像素点p(i,j)的r、b以及g通道的通道值,r
mn
、b
mn
以及g
mn
分别为像素点p(m,n)的r、b以及g通道的通道值。
[0182]
因此,对于每个第二像素点组合,可对该第二像素点组合内的像素点的b通道值进行校正使得b通道值之差与第一通道值之差一致。第一通道值之差为该第二像素点组合内各像素点在第一图像中g通道的通道值之差。
[0183]
需要特别说明的是,在对第四图像中各像素点的b通道值进行校正时,可先确定出第三方向的所有校正边界对应的所有第二像素点组合,进而同时对每个第二像素点组合内的各像素点的b通道值进行校正得到候选校正图像。进一步基于候选校正图像对第四方向上的所有校正边界所对应的所有第二像素点组合内各像素点的b通道值进行更新,进而再对第四方向上的所有校正边界对应的所有第二像素点组合内的各像素点的b通道值进行校正,最终得到第六图像。
[0184]
其中,第三方向和第四方向分别为纵向和横向中的不同方向。
[0185]
基于上述方式可将第四图像中各像素点的b通道值在横向和纵向进行校正得到第六图像,同理可基于上述类似的实现方式对第五图像中各像素点的r通道值进行校正得到第七图像,从而可基于第六图像和第七图像得到第一图像对应的目标校正图像。即对于第一图像中的每个像素点而言,可基于该像素点对应于第六图像的b通道值、对应于第七图像的r通道值以及原始的g通道值重新确定该像素点的rgb三通道值,进而得到目标校正图像。
[0186]
参见图6,图6是本技术实施例提供的横向色差校正装置的结构示意图。本技术实施例提供的横向色差校正装置包括:
[0187]
校正模块61,用于基于待校正图像中每个第一像点的位置信息,确定该第一像点的色差偏移位置,基于每个上述第一像点的色差偏移位置对该第一像点的通道值进行校正得到初始校正图像,上述待校正图像为raw图像,每个上述第一像点为上述待校正图像中除g通道像点外的一个像点;
[0188]
确定模块62,用于基于上述初始校正图像中各像点的通道值,确定至少一个校正方向对应的校正边界;
[0189]
上述校正模块61,用于确定每个上述校正边界对应的至少一个目标像点组合,基于上述初始校正图像中各像点的通道值,对各上述目标像点组合中的像点的通道值进行校正得到目标校正图像;
[0190]
其中,每个上述校正边界对应的一个目标像点组合包括上述初始校正图像中与该校正边界相邻的一个像点、以及与该像点在该校正边界对应的校正方向上相邻的一个像点,每个上述目标像点组合中的各像点位于对应校正边界的同一侧。
[0191]
在一些可行的实施方式中,上述校正模块61,用于:
[0192]
确定r通道对应的色差偏移参数以及b通道对应的色差偏移参数;
[0193]
基于待校正图像中每个第一像点的位置信息,确定该第一像点相较于上述待校正图像的图像中心的第一横向距离、第一纵向距离以及第一直线距离;基于上述第一横向距离、上述第一直线距离以及该第一像点对应的色差偏移参数,确定该第一像点的第一横向色差偏移量,基于上述第一纵向距离、上述第一直线距离以及该第一像点对应的色差偏移参数,确定该第一像点的第一纵向色差偏移量;基于该第一像点的第一横向色差偏移量和第一纵向色差偏移量,确定该第一像点的色差偏移位置。
[0194]
在一些可行的实施方式中,上述校正模块61,用于:
[0195]
基于上述待校正图像中每个上述第一像点的色差偏移位置相较于该第一像点所在第一方向的第一投影位置,从上述待校正图像中确定出该第一像点对应的第一方向校正像点,基于上述第一方向校正像点的通道值对该第一像点的通道值进行校正得到中间校正图像;基于上述中间校正图像中每个上述第一像点的色差偏移位置相较于该第一像点所在第二方向的第二投影位置,从上述中间校正图像中确定出该第一像点对应的第二方向校正像点,基于上述第二方向校正像点在上述待校正图像中的通道值对该第一像点在上述中间校正图像中的通道值进行校正得到初始校正图像;上述第一方向和上述第二方向分别为横向和纵向中的不同方向;或者,
[0196]
基于上述待校正图像中每个上述第一像点的色差偏移位置,从上述待校正图像中确定出该第一像点对应的多个目标校正像点,基于各上述目标校正像点的通道值对该第一像点的通道值进行校正得到初始校正图像。
[0197]
在一些可行的实施方式中,上述校正模块61,用于:
[0198]
若上述待校正图像中每个第一像点的色差偏移位置相较于该第一像点所在第一方向的第一投影位置与任一第二像点重合,则将该第二像点确定为该第一像点对应的第一方向校正像点;每个上述第二像点为上述待校正图像中与该第一像点对应于相同通道的一个其他像点;
[0199]
若上述第一投影位置与各上述第二像点均不重合,则将该第一像点所在第一方向上的与上述第一投影位置最近的两个第二像点确定为该第一像点对应的第一方向校正像
点。
[0200]
在一些可行的实施方式中,上述校正模块61,用于:
[0201]
从上述待校正图像中确定出距离每个上述第一像点的色差偏移位置最近的第三像点,每个上述第一像点和对应的第三像点分别对应于r通道和b通道中的不同通道;
[0202]
对于每个上述第一像点,将距离该第一像点对应的第三像点最近的四个第四像点确定为该第一像点对应的目标校正像点,每个上述第四像点与该第一像点对应于相同通道。
[0203]
在一些可行的实施方式中,上述确定模块62,用于:
[0204]
基于上述初始校正图像中各像点的通道值,确定上述初始校正图像中各像点在至少一个校正方向上的g通道变化梯度;
[0205]
基于上述初始校正图像中各像点在每个上述校正方向上的g通道变化梯度,确定该校正方向对应的校正边界,上述至少一个校正方向包括横向或纵向中的至少一项。
[0206]
在一些可行的实施方式中,上述确定模块62,用于:
[0207]
对于上述初始校正图像中的每个像点,若该像点为b通道像点或r通道像点,基于该像点左右相邻的g通道像点的通道值,确定该像点在横向上的g通道变化梯度,基于与该像点上下相邻的g通道像点的通道值,确定该像点在纵向上的g通道变化梯度;
[0208]
对于上述初始校正图像中的每个像点,若该像点为g通道像点,基于与每个第五像点四面相邻的g通道像点的通道值确定该像点在横向上的g通道变化梯度,基于与每个第六像点四面相邻的g通道像点的通道值确定该像点在纵向上的g通道变化梯度,各上述第五像点与该g通道像点左右相邻,各上述第六像点与该g通道像点上下相邻。
[0209]
在一些可行的实施方式中,对于每一上述校正方向,上述确定模块62,用于:
[0210]
确定上述初始校正图像中的第七像点,上述第七像点为上述初始校正图像的预设区域中在该校正方向上的g通道变化梯度超过该校正方向对应第一梯度阈值的第一像点,上述预设区域内各像点在该校正方向上的g通道变化梯度小于第二梯度阈值;
[0211]
对于每个上述第七像点,确定该第七像点对应的各第一像点组合,每个上述第一像点组合包括该第七像点以及与该第七像点在该校正方向上相邻的一个像点,确定每个上述第一像点组合中的两个像点在该校正方向上的g通道变化梯度的梯度差,将梯度差最大的第一像点组合中的两个像点的边界确定为该校正方向对应的一个校正边界。
[0212]
在一些可行的实施方式中,上述校正模块61,用于:
[0213]
从上述初始校正图像中确定出每个上述目标像点组合对应的校正像点组合,每个上述目标像点组合对应的校正像点组合和该目标像点组合位于对应的校正边界的同一侧,每个上述目标像点组合对应的校正像点组合在该目标像点组合对应的校正方向上与该目标像点组合相邻,且包括与该目标像点组合具有相同通道排列方式的两个像点;
[0214]
基于色差恒定关系,通过每个目标像点组合对应的校正像点组合中各像点的通道值,对该目标像点组合中各像点的通道值进行校正得到目标校正图像。
[0215]
在一些可行的实施方式中,上述确定模块62,用于:
[0216]
确定标定图像中每个预设g通道像点对应的b通道像点和r通道像点相较于该预设g通道像点第二横向色差偏移量以及第二纵向色差偏移量;
[0217]
确定每个上述预设g通道像点相较于上述标定图像的图像中心的第二横向距离、
第二纵向距离以及第二直线距离;
[0218]
对于b通道和r通道中的每个通道,基于各上述预设g通道像点对应的第二横向距离、第二纵向距离、第二直线距离以及对应于该通道的第二横向色差偏移量和第二纵向色差偏移量,确定该通道对应的色差偏移参数。
[0219]
具体实现中,上述横向色差校正装置可通过其内置的各个功能模块执行如上述图1中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
[0220]
参见图7,图7是本技术实施例提供的电子设备的结构示意图。如图7所示,本实施例中的电子设备700可以包括:处理器701,网络接口704和存储器705,此外,上述电子设备700还可以包括:用户接口703,和至少一个通信总线702。其中,通信总线702用于实现这些组件之间的连接通信。其中,用户接口703可以包括显示屏(display)、键盘(keyboard),可选用户接口703还可以包括标准的有线接口、无线接口。网络接口704可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器705可以是高速ram存储器,也可以是非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。存储器705可选的还可以是至少一个位于远离前述处理器701的存储装置。如图7所示,作为一种计算机可读存储介质的存储器705中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
[0221]
在图7所示的电子设备700中,网络接口704可提供网络通讯功能;而用户接口703主要用于为对象提供输入的接口;而处理器701可以用于调用存储器705中存储的设备控制应用程序,以实现:
[0222]
基于待校正图像中每个第一像点的位置信息,确定该第一像点的色差偏移位置,基于每个上述第一像点的色差偏移位置对该第一像点的通道值进行校正得到初始校正图像,上述待校正图像为raw图像,每个上述第一像点为上述待校正图像中除g通道像点外的一个像点;
[0223]
基于上述初始校正图像中各像点的通道值,确定至少一个校正方向对应的校正边界;
[0224]
确定每个上述校正边界对应的至少一个目标像点组合,基于上述初始校正图像中各像点的通道值,对各上述目标像点组合中的像点的通道值进行校正得到目标校正图像;
[0225]
其中,每个上述校正边界对应的一个目标像点组合包括上述初始校正图像中与该校正边界相邻的一个像点、以及与该像点在该校正边界对应的校正方向上相邻的一个像点,每个上述目标像点组合中的各像点位于对应校正边界的同一侧。
[0226]
在一些可行的实施方式中,上述处理器701用于:
[0227]
确定r通道对应的色差偏移参数以及b通道对应的色差偏移参数;
[0228]
基于待校正图像中每个第一像点的位置信息,确定该第一像点相较于上述待校正图像的图像中心的第一横向距离、第一纵向距离以及第一直线距离;基于上述第一横向距离、上述第一直线距离以及该第一像点对应的色差偏移参数,确定该第一像点的第一横向色差偏移量,基于上述第一纵向距离、上述第一直线距离以及该第一像点对应的色差偏移参数,确定该第一像点的第一纵向色差偏移量;基于该第一像点的第一横向色差偏移量和第一纵向色差偏移量,确定该第一像点的色差偏移位置。
[0229]
在一些可行的实施方式中,上述处理器701用于:
[0230]
基于上述待校正图像中每个上述第一像点的色差偏移位置相较于该第一像点所在第一方向的第一投影位置,从上述待校正图像中确定出该第一像点对应的第一方向校正像点,基于上述第一方向校正像点的通道值对该第一像点的通道值进行校正得到中间校正图像;基于上述中间校正图像中每个上述第一像点的色差偏移位置相较于该第一像点所在第二方向的第二投影位置,从上述中间校正图像中确定出该第一像点对应的第二方向校正像点,基于上述第二方向校正像点在上述待校正图像中的通道值对该第一像点在上述中间校正图像中的通道值进行校正得到初始校正图像;上述第一方向和上述第二方向分别为横向和纵向中的不同方向;或者,
[0231]
基于上述待校正图像中每个上述第一像点的色差偏移位置,从上述待校正图像中确定出该第一像点对应的多个目标校正像点,基于各上述目标校正像点的通道值对该第一像点的通道值进行校正得到初始校正图像。
[0232]
在一些可行的实施方式中,上述处理器701用于:
[0233]
若上述待校正图像中每个第一像点的色差偏移位置相较于该第一像点所在第一方向的第一投影位置与任一第二像点重合,则将该第二像点确定为该第一像点对应的第一方向校正像点;每个上述第二像点为上述待校正图像中与该第一像点对应于相同通道的一个其他像点;
[0234]
若上述第一投影位置与各上述第二像点均不重合,则将该第一像点所在第一方向上的与上述第一投影位置最近的两个第二像点确定为该第一像点对应的第一方向校正像点。
[0235]
在一些可行的实施方式中,上述处理器701用于:
[0236]
从上述待校正图像中确定出距离每个上述第一像点的色差偏移位置最近的第三像点,每个上述第一像点和对应的第三像点分别对应于r通道和b通道中的不同通道;
[0237]
对于每个上述第一像点,将距离该第一像点对应的第三像点最近的四个第四像点确定为该第一像点对应的目标校正像点,每个上述第四像点与该第一像点对应于相同通道。
[0238]
在一些可行的实施方式中,上述处理器701用于:
[0239]
基于上述初始校正图像中各像点的通道值,确定上述初始校正图像中各像点在至少一个校正方向上的g通道变化梯度;
[0240]
基于上述初始校正图像中各像点在每个上述校正方向上的g通道变化梯度,确定该校正方向对应的校正边界,上述至少一个校正方向包括横向或纵向中的至少一项。
[0241]
在一些可行的实施方式中,上述处理器701用于:
[0242]
对于上述初始校正图像中的每个像点,若该像点为b通道像点或r通道像点,基于该像点左右相邻的g通道像点的通道值,确定该像点在横向上的g通道变化梯度,基于与该像点上下相邻的g通道像点的通道值,确定该像点在纵向上的g通道变化梯度;
[0243]
对于上述初始校正图像中的每个像点,若该像点为g通道像点,基于与每个第五像点四面相邻的g通道像点的通道值确定该像点在横向上的g通道变化梯度,基于与每个第六像点四面相邻的g通道像点的通道值确定该像点在纵向上的g通道变化梯度,各上述第五像点与该g通道像点左右相邻,各上述第六像点与该g通道像点上下相邻。
[0244]
在一些可行的实施方式中,对于每一上述校正方向,上述处理器701用于:
[0245]
确定上述初始校正图像中的第七像点,上述第七像点为上述初始校正图像的预设区域中在该校正方向上的g通道变化梯度超过该校正方向对应第一梯度阈值的第一像点,上述预设区域内各像点在该校正方向上的g通道变化梯度小于第二梯度阈值;
[0246]
对于每个上述第七像点,确定该第七像点对应的各第一像点组合,每个上述第一像点组合包括该第七像点以及与该第七像点在该校正方向上相邻的一个像点,确定每个上述第一像点组合中的两个像点在该校正方向上的g通道变化梯度的梯度差,将梯度差最大的第一像点组合中的两个像点的边界确定为该校正方向对应的一个校正边界。
[0247]
在一些可行的实施方式中,上述处理器701用于:
[0248]
从上述初始校正图像中确定出每个上述目标像点组合对应的校正像点组合,每个上述目标像点组合对应的校正像点组合和该目标像点组合位于对应的校正边界的同一侧,每个上述目标像点组合对应的校正像点组合在该目标像点组合对应的校正方向上与该目标像点组合相邻,且包括与该目标像点组合具有相同通道排列方式的两个像点;
[0249]
基于色差恒定关系,通过每个目标像点组合对应的校正像点组合中各像点的通道值,对该目标像点组合中各像点的通道值进行校正得到目标校正图像。
[0250]
在一些可行的实施方式中,上述处理器701用于:
[0251]
确定标定图像中每个预设g通道像点对应的b通道像点和r通道像点相较于该预设g通道像点第二横向色差偏移量以及第二纵向色差偏移量;
[0252]
确定每个上述预设g通道像点相较于上述标定图像的图像中心的第二横向距离、第二纵向距离以及第二直线距离;
[0253]
对于b通道和r通道中的每个通道,基于各上述预设g通道像点对应的第二横向距离、第二纵向距离、第二直线距离以及对应于该通道的第二横向色差偏移量和第二纵向色差偏移量,确定该通道对应的色差偏移参数。
[0254]
应当理解,在一些可行的实施方式中,上述处理器701可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。该存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
[0255]
具体实现中,上述电子设备700可通过其内置的各个功能模块执行如上述图1中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
[0256]
本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,被处理器执行以实现图1中各个步骤所提供的方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
[0257]
上述计算机可读存储介质可以是前述任一实施例提供的装置或电子设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smart media card,smc),
安全数字(secure digital,sd)卡,闪存卡(flash card)等。上述计算机可读存储介质还可以包括磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
[0258]
本技术实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,上述计算机程序被处理器执行图1中各个步骤所提供的方法。
[0259]
本技术的权利要求书和说明书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或电子设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或电子设备固有的其它步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0260]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0261]
以上所揭露的仅为本技术较佳实施例而已,不能以此来限定本技术之权利范围,因此依本技术权利要求所作的等同变化,仍属本技术所涵盖的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献