论文部分内容阅读
目前绝大多数码摄像设备(数码相机、数码摄像机等)采用一个CCD或CMOS图像传感器,其表面覆盖一层色彩滤波阵列CFA,其中Bayer阵列在业界最为流行。在Bayer阵列中,每个像素只采集到三基色中的一个,缺失另两种基色,得到的是一幅马赛克图像。为了获得完整的彩色图像,必须用色彩插值算法插值得到另两个基色。复杂的算法效果好,但是硬件实现困难,实时性差;简单的算法,实现简单,但效果差。因此,在考虑数码摄像设备的色彩插值算法时,必须在插值效果和硬件实时实现上进行折衷。本文在FPGA实时实现的前提下,以最大限度地提高色彩插值算法的效果为目标,对目前存在的各种不同的色彩插值算法进行了深入的分析和研究,总结出了影响插值效果的各种因素。在此基础上,综合考虑硬件实时实现的难度,提出本文色彩插值算法。首先,根据对目标像素点进行梯度检测的结果,将像素划分为不同的三种区域,即:类平滑区域、明显水平(垂直)区域、斜边界区域。对不同区域的目标像素,采用更为合理的不同的插值策略;然后对Kodak图像库中的24幅真彩图像,分别采用本文算法、自适应算法和Lu算法进行Matlab插值计算,并分别统计插值后图像和原始图像在全局和边界像素点上的均方误差和平均CIELAB空间的欧氏距离,对比效果;最后,采用流水线设计方式将本文算法写成Verilog HDL代码模块,添加其它必要模块,在FPGA硬件系统上实时实现本文算法,并将插值后的彩色图像送往液晶显示器实时显示。Malab仿真和测试的结果表明,本文算法的插值效果明显优于自适算法,和Lu算法不相上下,在图像lighthouse的栅栏部分,本文算法表现出非常好的插值效果;FPGA上的实时实现验证了本文算法在FPGA硬件上实现的可行性和实时性,解决了Lu算法使用除法器而带来的计算量过大的问题。本文算法对插值效果和硬件实时实现进行了很好的折衷,并在FPGA硬件系统上实时运行,达到了预期的目标。