Demosaic算法实战编码分享

demosaic算法将bayer pattern的图像转换成rgb图像,是整个isp imaging pipeline的核心,由于成本、面积、制造等限制,cmos/ccd在成像时,感光面阵列前通常会有cfa(color filter array),如下图所示。cfa过滤不同频段的光,然后sensor输出的raw数据包含了3个通道的信息。由于人眼对绿色(大约550nm波长)光更敏感,因此cfa阵列包含1/2的g分量,1/4和r和1/4的b分量。
demosaic算法简单来说就是插值,根据邻域像素的色彩插值出本像素的值。但是简单的双线性插值的方法在iq上面有缺陷,在图像的边缘,会产生伪彩色。本文采用的demosaic算法是g基于边缘方向 rb基于色差恒定。
输入一幅rgb图像,先用matlab进行rgb2bayer转换得到仿真激励图像bin文件,再用verilog进行demosaic算法处理从而得到bayer2rgb转换。
matlab程序:
clc;clear;close all;imsrc =imread('bandao.jpg');figure,imshow(imsrc);[hei, wid, chan] =size(imsrc);bayer =uint8(zeros(hei,wid));% rggb% r g r g r g% g b g b g b% r g r g r gfor ver = 1:hei; for hor = 1:wid if((1 == mod(ver,2)) && (1 ==mod(hor,2))) bayer(ver,hor) = imsrc(ver,hor,1); elseif((0 == mod(ver,2)) && (0== mod(hor,2))) bayer(ver,hor) = imsrc(ver,hor,3); else bayer(ver,hor) = imsrc(ver,hor,2); end endendfigure,imshow(bayer); 得到bayer图像数据:
仿真输出的图片:插值效果和原图十分接近!!
再和原图相比较,江面和草丛边沿有一定伪彩色出现:拉链效应(zipper effect)相比双线性插值明显好很多,但也存在伪彩(false color)。今天先开题,后面继续深入isp实践。


海信首批电视型号抵达印度,这标志着在印度的业务首次亮相
中国移动推出的阶梯式计价在流量方面究竟是怎么做的
小米6首发?骁龙835处理器规格全曝光
小米Note2新增64G,不过看看就行,后面还有同价性能更好的呢!
NTC热敏电阻应用各类电子产品的参数和方案应用
Demosaic算法实战编码分享
DS33Z11 以太网映射器
邦邦汽服年度合作伙伴大会暨2020年新战略发布会在上海隆重举行
资讯速递 | OpenHarmony TSC主席陈海波出席“特色化示范性软件学院关键基础软件创新发展高峰论坛”并发表主题
智物联:乘时代东风,助力企业数字化转型
诺基亚旗舰Nokia 9渲染图再曝光:外观锐利,硬朗时尚
中国最高分辨率卫星首发照:路人清晰可见
如何搭配碳化硅电源管理解决方案
贴片导电硅橡胶泡棉PCBGasket的方案应用
采用微尺度片上变压器的高速数字隔离器
云天励飞以人工智能技术助力青岛高质量发展
SKI的电池材料子公司SKIET将于5月中旬在韩国交易所挂牌上市
PSU系列可编程开关直流电源产品特点及性能分析
无线充电宝怎么使用?实用的无线充电宝推荐
工业以太网作为现场总线具有哪些优势