抗锯齿的RCCB滤镜阵列插值计算方法及系统
文献发布时间:2023-06-19 12:10:19
技术领域
本发明涉及传感器图像处理技术领域,更具体为一种抗锯齿的RCCB滤镜Bayer阵列反马赛插值方法和系统。
背景技术
图像传感器是一种将光学图像转换成电子信号的设备,它被广泛地应用在数码相机和其他电子光学设备中。图像传感器包含多个按照行列分布的基本感光单元,称为像素。每个像素可以把入射光强度转换成对应强度的电信号,得到一张反映光强度分布的二维黑白图像。为了得到彩色图像,需要在图像传感器上增加彩色滤镜。RGGB滤镜Bayer阵列是目前最常用的方式,它模拟人眼对色彩的敏感程度,采用1红2绿1蓝,即RGGB的排列方式将灰度信息转换成彩色信息,如图1所示。采用这种技术的传感器实际每个像素仅有一种颜色信息,需要利用反马赛克算法进行插值计算,最终获得完整的R、G和B平面,构成彩色图像。RCCB滤镜Bayer阵列是一种应用于车载图像传感器的新型滤镜阵列,它与现有技术中的RGGB滤镜Bayer阵列的区别在于所有绿色(G)像素的位置滤镜变为透明(C),如图2所示,提高了图像传感器整体通光量,在夜间可以显著改善信噪比,提高目标的可识别度。现有技术中,反马赛克插值算法适用于RGGB滤镜Bayer阵列,该方法用于RCCB滤镜Bayer阵列会产生锯齿和伪色缺陷。对所述的锯齿和伪色缺陷需要通过后处理进行弥补,造成系统的开销和成本上升,并增加了系统的总延时。因而有必要针对前述锯齿和伪色缺陷算法做进一步的研究和改进。
发明内容
本发明的目的之一在于针对上述不足,提供一种抗锯齿的RCCB滤镜阵列插值计算方法及系统,以期望解决现有技术中反马赛克插值算法用于RCCB滤镜Bayer阵列会产生锯齿和伪色缺陷,需要通过后处理进行弥补,造成系统的开销和成本上升,并增加了系统的总延时等技术问题。
为解决上述的技术问题,本发明提供一种复杂度低、运算量小、适用于RCCB滤镜Bayer阵列图像传感器、低成本的反马赛克插值方法和系统,具体采用以下技术方案:
本发明一方面提供了一种抗锯齿的RCCB滤镜阵列插值计算方法,该方法包括如下步骤:
步骤A、以行为单位,从接口单元获取原始RCCB滤镜Bayer数据到行缓存中;
步骤B、从输入和行缓存中获取原始数据,通过边界镜像构造每个位于(i,j)坐标的像素I(i,j)的5×5邻域h(I);所述的边界镜像为:
其中,
式中,(i,j)为邻域像素在原始图像中的坐标,坐标原点为(0,0),V为原始图像的垂直高度,H为原始图像的水平宽度。
步骤C、根据邻域h(I)中的数据,按照下式计算像素I(i,j)的水平梯度∆
步骤D、根据计算得到的像素I(i,j)的水平梯度∆
作为优选,进一步的技术方案是:所述步骤C中的乘法运算通过左位移实现,所述步骤D中的除法运算通过右位移实现。
更进一步的技术方案是:所述的方法还包括步骤E、根据∆
更进一步的技术方案是:所述的方法还包括步骤F、通过行缓存和边界镜像构造每个像素C(i,j)的3x3邻域h(C)和原始数据I(i,j)的3x3邻域h(I);根据h(C)和h(I)的数据由下式计算生成缺少R/B位置的水平插值RB
更进一步的技术方案是::所述的方法还包括步骤G、根据像素I(i,j)的位置(i,j)选择RB
输出插值完整的R、C和B平面经过色彩校正单元后可得到彩色图像。
本发明另一方面提供了一种抗锯齿的RCCB滤镜阵列插值系统,所述的系统用于执行上述的方法,其包括多个行缓存单元,边界镜像单元,C平面插值单元,R/B平面插值单元与输出单元;多个行缓存单元用于通过接口单元接入传感器单元,且多个行缓存单元还接入边界镜像单元,所述边界镜像单元接入C平面插值单元和/或R/B平面插值单元,所述R/B平面插值单元接入输出单元。
作为优选,进一步的技术方案是:所述行缓存单元为六个,分别为第一行缓存单元、第二行缓存单元、第三行缓存单元、第四行缓存单元、第五行缓存单元、第六行缓存单元;所述边界镜像单元为两个,分别为第一边界镜像单元与第二边界镜像单元,所述第一行缓存单元、第二行缓存单元、第三行缓存单元、第四行缓存单元均接入第一边界镜像单元,所述第三行缓存单元、第四行缓存单元还接入第二边界镜像单元,所述第二边界镜像单元还接入R/B平面插值单元,所述第一边界镜像单元接入C平面插值单元,所述第五行缓存单元、第六行缓存单元均分别接入C平面插值单元和第二边界镜像单元。
更进一步的技术方案是:所述第一行缓存单元、第二行缓存单元、第三行缓存单元与第四行缓存单元依次连接,所述C平面插值单元、第五行缓存单元与第六行缓存单元依次连接。
更进一步的技术方案是:所述系统用于按照数据的流动次序,由图像传感器单元生成RCCB滤镜Bayer阵列原始图像数据,以逐行的方式流入第一行缓存单元、第二行缓存单元、第三行缓存单元、第四行缓存单元;然后进一步第一流入边界镜像单元,构成每个像素的5×5邻域,随后经过C平面插值单元后,得到完整的C平面数据;数据继续流入第五行缓存单元与第六行缓存单元,并与第二行缓存单元、第三行缓存单元与第四行缓存单元中的原始图像数据一同流入第二边界镜像单元,构成每个C像素和原始像素的3×3邻域,进一步流入R/B平面插值单元,从而生成完整的R、C、B图像数据。
更进一步的技术方案是:所述的系统还包括色彩校正单元,用于使生成完整的R、C、B图像数据可进一步流入色彩校正单元,生成标准彩色图像数据,最终通过输出单元流出所述系统。
与现有技术相比,本发明的有益效果之一是:通过上述方法及系统,可以对RCCB滤镜Bayer阵列进行插值的同时消除常规Bayer反马赛克插值方法在处理RCCB阵列时产生的锯齿和伪色缺陷,不需要额外的后处理,提升了图像实时性,处理过程只需要少量行缓存,减少了系统延时,降低了存储开销,更可方便地扩展到各种可编程器件及专用集成电路,适于进行推广应用。
附图说明
图1为现有技术中RGGB滤镜Bayer阵列的示意图。
图2为本发明采用的RCCB滤镜Bayer阵列的示意图。
图3为本发明抗锯齿的RCCB滤镜阵列插值方法数据处理过程的示意图。
图4为本发明抗锯齿的RCCB滤镜阵列插值系统流水线框图。
具体实施方式
下面结合附图对本发明作进一步阐述。
参考图3与图4所示,本发明的第一实施例是一种抗锯齿的RCCB滤镜阵列插值系统包括:接口单元,六个行缓存单元,两个边界镜像单元,C平面插值单元,R/B平面插值单元和输出单元组成的流水线结构;按照数据的流动次序,图像传感器单元生成RCCB滤镜Bayer阵列原始图像数据,以逐行的方式流入所述的行缓存单元(1到4),进一步流入边界镜像单元1,构成每个像素的5×5邻域,经过C平面插值单元后,得到完整的C平面数据,再流入行缓存单元(5到6),并与行缓存单元(2到4)中的原始图像数据一同流入边界镜像单元2,构成每个C像素和原始像素的3x3邻域,进一步流入R/B平面插值单元,生成完整的R、C、B图像数据,
此处优选地是,上述生成完整的R、C、B图像数据还可进一步流入色彩校正单元,生成标准彩色图像数据,最终通过输出单元流出所述系统;在实施例中,各个单元中除了图像传感器单元之外全部以一个可编程器件的形式实现,其中一种表现形式是在某种通用处理芯片(CPU或DSP)上运行软件。
基于本发明上述实施例,上述系统还可以另一种表现形式出现,具体为在在现场可编程门阵列器件(FPGA)上实现专用图像处理流水线,或者用专用集成电路芯片(ASIC)或片上系统(SoC)实现专用图像处理流水线;具体为基于上述系统的结构:
接口单元用于实现与图像传感器单元的通信协议,在图像传感器与系统之间建立数据传输通道,将其产生的RCCB滤镜Bayer阵列原始图像数据,以逐行的方式输入到系统;
行缓存单元(1到4)用于缓存和对齐图像传感器产生的原始图像数据;边界镜像单元1用于将接口单元与行缓存单元(1到4)流出的数据构成一个5×5的邻域,并在画幅边界处通过镜像的方式补全缺少的邻域数据;
C平面插值单元用于通过本发明提出的算法,在5×5的原始数据邻域中提取出图像的梯度,并估计原始数据中R/B位置的C值,完成完整C平面的插值;
行缓存单元(5到6)用于缓存和对齐C平面插值单元产生的C平面图像数据,为下一步构成C像素3×3邻域提供准备;
边界镜像单元2用于将行缓存单元(2到4)流出的原始图像数据对齐到C平面插值单元与行缓存单元(5到6)流出的数据,构成一个3×3的邻域并在画幅边界处通过镜像的方式补全缺少的邻域数据;
R/B平面插值单元用于通过本发明提出的算法,结合原始数据和上一步得到的C平面数据,在3x3的邻域中估计原始数据中C位置的R/B值,R位置的B值以及B位置的R值,完成完整R/B平面的插值;
色彩校正单元用于根据图像传感器的量子效率特性,将每个像素的R,C和B值转换为标准的彩色数据;输出单元,用于将最终的标准彩色图像,根据一定的接口格式输出到外部或下一级处理单元。
基于上述系统,本发明的另一个实施例是一种抗锯齿的RCCB滤镜阵列插值计算方法,该方法的步骤如下:
S1、以行为单位,从接口单元获取原始RCCB滤镜Bayer数据到行缓存中;
S2、从输入和行缓存中获取原始数据,通过边界镜像构造每个位于(i,j)坐标的像素I(i,j)的5×5邻域h(I);所述的边界镜像的方式为:
其中,
式中,(i,j)为邻域像素在原始图像中的坐标,坐标原点为(0,0),V为原始图像的垂直高度,H为原始图像的水平宽度。
步骤S3、根据邻域h(I)中的数据,按照下式计算像素I(i,j)的水平梯度∆
在本步骤中,优选地是,乘法运算通过左位移实现。
步骤S4、根据计算得到的像素I(i,j)的水平梯度∆
在本步骤中,优选地是,除法运算通过右位移实现。
基于上述的步骤,还可继续执行步骤S5、根据∆
在本步骤中,优选地是,上述乘法运算可以通过左位移实现
步骤S6、通过行缓存和边界镜像构造每个像素C(i,j)的3x3邻域h(C)和原始数据I(i,j)的3x3邻域h(I);根据h(C)和h(I)的数据由下式计算生成缺少R/B位置的水平插值RB
同样的,在本步骤中,乘法运算可以通过左位移实现,除法运算可以通过右位移实现。
步骤S7、根据像素I(i,j)的位置(i,j)选择RB
输出插值完整的R、C和B平面经过色彩校正单元后可得到彩色图像。
特别地,以sRGB标准红绿蓝三原色空间来加以说明,则有
其中
在本发明中,抗锯齿的RCCB滤镜阵列插值方法可以方便地以各种集成电路的形式实现,包括ASIC、FPGA等,整个系统具备很好的扩展性,方便集成其他的图像算法,能保证处理的运算实时性。
本发明上述的实施例中,基于集成电路的实施例是以FPGA为例子来实现的,本领域技术人员可以很方便地扩展到其他集成电路来实现。
最后应说明的是,在本说明书中所谈到的“一个实施例”、“另一个实施例”、 “实施例”等,指的是结合该实施例描述的具体特征、结构或者特点包括在本申请概括性描述的至少一个实施例中。在说明书中多个地方出现同种表述不是一定指的是同一个实施例。进一步来说,结合任一实施例描述一个具体特征、结构或者特点时,所要主张的是结合其他实施例来实现这种特征、结构或者特点也落在本发明的范围内。
尽管这里参照本发明的多个解释性实施例对本发明进行了描述,但是,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。更具体地说,在本申请公开、附图和权利要求的范围内,可以对主题组合布局的组成部件和/或布局进行多种变型和改进。除了对组成部件和/或布局进行的变型和改进外,对于本领域技术人员来说,其他的用途也将是明显的。
- 抗锯齿的RCCB滤镜阵列插值计算方法及系统
- 抗锯齿的RCCB滤镜阵列插值计算方法及系统