当前位置:网站首页>ISP学习(2)
ISP学习(2)
2022-07-06 04:38:00 【永不秃头的程序员】
一、图像bayer格式介绍
bayer格式图片是伊士曼·柯达公司科学家Bryce Bayer发明的,Bryce Bayer所发明的拜耳阵列被广泛运用数字图像.
RGB三原色是组成彩色图片的基本要素。最简单的采集方法就是通过对应的透镜去采集,红色的滤镜透过红色的波长,绿色的滤镜透过绿色的波长,蓝色的滤镜透过蓝色的波长。但是这样成本很高,且不好制造,因为三块滤镜都必须保证每一个像素点都对齐。
bayer 格式图片在一块滤镜上设置的不同的颜色,通过分析人眼对颜色的感知发现,人眼对绿色比较敏感,所以一般bayer格式的图片绿色格式的像素是是r和g像素的和。也就是类似与现在的ISP的工作原理,通过算法对RGB的原色进行补充,然后得更好的原色图。
如上图:绿色为红色和蓝色的和。
Bayer格式是相机内部的原始图片, 一般后缀名为.raw。很多软件都可以查看, 比如PS。我们相机拍照下来存储在存储卡上的.jpeg或其它格式的图片, 都是从.raw格式转化过来的。
Bayer数据,其一般格式为:
奇数扫描行输出 GRGR……
偶数扫描行输出 BGBG……
根据人眼对彩色的响应带宽不高的大面积着色特点,每个像素没有必要同时输出3种颜色。因此,数据采样时,
奇数扫描行的第1,2,3,4,…象素分别采样和输出G,R,G,R,…数据;
偶数扫描行的第1,2,3,4,…象素分别采样和输出B,G,B,G,…数据。
在实际处理时,每个象素的R,G,B信号由象素本身输出的某一种颜色信号和相邻象素输出的其他颜色信号构成。这种采样方式在基本不降低图像质量的同时,可以将采样频率降低60%以上。
二、bayer格式图像传感器硬件
图像传感器的结构如下所示,每一个感光像素之间都有金属隔离层,光纤通过显微镜头,在色彩滤波器过滤之后,投射到相应的漏洞式硅的感光元件上。
当Image Sensor往外逐行输出数据时,像素的序列为GRGRGR…/BGBGBG…(顺序RGB)。这样阵列的Sensor设计,使得RGB传感器减少到了全色传感器的1/3,如下所示。
三原色,绿色占比1/2 蓝色和红色分别为 1/4 1/4整体就是采集的三原色是原本的1/3.
三、bayer格式插值算法实现
3.1 插值红蓝算法
开始说过,我们采集RGB数据的时候,我们是采用统一种滤镜,在滤镜上添加不同的颜色来进行采集。为了得到每个像素点上的RGB元素,我们需要通过对采集的那种颜色来填补缺失的2个色彩。
由于人眼对绿光反应最敏感,对紫光和红光则反应较弱,因此为了达到更好的画质,需要对G特殊照顾。
(a) (b)
在(a)与(b)中,R和B分别取邻域的平均值。
( c) (d)
在(c)与(d)中,取领域的4个B或R的均值作为中间像素的B值。
3.1 插值绿算法
( e) (f)
上述(c)与(d)中,扩展开来就是上图的(e)与(f)中间像素G的取值
(e)中间像素G值的算法如下:
(f)中间像素G值的算法如下:
自己并没有看懂 G3+G4/2的这个操作。后续还需要去查看资料。
摄像头这部分转换是在内部用ADC或者ISP完成的,生产商为了降低成本必然会使得图像失真。当然用外部处理器来实现转换,如果处理器的速度足够NB,能够胜任像素的操作,用上面的算法来进行转换,皆大欢喜。不过上述算法将直接成倍提高了算法的复杂度,速度上将会有所限制。因此为了速度的提成,可以直接通过来4领域G取均值来中间像素的G值,将会降低一倍的速率,而在性能上差之甚微,算法如下:
参考博客:https://blog.csdn.net/qingzhuyuxian/article/details/82965054?ops_request_misc=&request_id=&biz_id=102&utm_term=%E5%9B%BE%E5%83%8Fbayer%E6%A0%BC%E5%BC%8F%E4%BB%8B%E7%BB%8D&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-82965054.nonecase&spm=1018.2226.3001.4187
边栏推荐
- Query the number and size of records in each table in MySQL database
- Digital children < daily question> (Digital DP)
- ETCD数据库源码分析——etcdserver bootstrap初始化存储
- Vulnerability discovery - vulnerability probe type utilization and repair of web applications
- tengine 内核参数
- Ue5 small knowledge points to enable the setting of lumen
- 2327. Number of people who know secrets (recursive)
- [tomato assistant installation]
- VPP性能测试
- View workflow
猜你喜欢
Query the number and size of records in each table in MySQL database
Lombok原理和同时使⽤@Data和@Builder 的坑
View 工作流程
In depth MySQL transactions, stored procedures and triggers
Delete subsequence < daily question >
[face recognition series] | realize automatic makeup
Easyrecovery靠谱不收费的数据恢复电脑软件
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
When debugging after pycharm remote server is connected, trying to add breakpoint to file that does not exist: /data appears_ sda/d:/segmentation
How does computer nail adjust sound
随机推荐
In depth MySQL transactions, stored procedures and triggers
tengine 内核参数
牛顿插值法
Bubble sort
Visio draw fan
English Vocabulary - life scene memory method
【Try to Hack】john哈希破解工具
[Yu Yue education] reference materials of complex variable function and integral transformation of Northwestern Polytechnic University
捷码赋能案例:专业培训、技术支撑,多措并举推动毕业生搭建智慧校园毕设系统
解决“C2001:常量中有换行符“编译问题
[05-1, 05-02, 05-03] network protocol
Redis 排查大 key 的4种方法,优化必备
Yyds dry inventory automatic lighting system based on CC2530 (ZigBee)
C. The third problem
C. The Third Problem(找规律)
E. Best Pair
Lombok principle and the pit of ⽤ @data and @builder at the same time
729. 我的日程安排表 I(set or 动态开点线段树)
word封面下划线
Digital children < daily question> (Digital DP)