镜头校正(Lens shading Correct)
来源:互联网 发布:网络错误404是怎么办 编辑:程序博客网 时间:2024/05/16 05:56
没有经过镜头校正的图片如下图:
假设图片的宽为W,高为H。
由镜头透镜的特性可知图片亮度是成中心对称,按图片上的箭头方向从中心开始取值可以得到反映整幅图片亮度特征的数据L(i):
L(i) 0< i <RR = W×W + H×H
选取一个宽为3×W/4,高为3×H/4 的区域,如上图红色矩形框,计算矩形框内像素的平均亮度 M ,则M为镜头校正后图片中每个像素的目标亮度。
因此,可以得到图片中每个像素点的校正系数为 LCgain (i) = L (0)/L(i) 0< i <R
对应的校正曲线如下:
将曲线分为10段,每段采用二次方程来模拟该段曲线。
LCgain(r) = B×r + C 0<r<R/10
A、B和C为需要计算的拟合方程的系数,在每段上取三点X1(r1,LCgain1), X2(r2,LCgain2), X3(r3,LCgain3)来计算对应的方程系数,
LCgain1 = B×r1 + CLCgain2 =B×r2 + CLCgain 3=B×r3 + C
模拟曲线用绿色线条表示,如下图:
使用该校正方程对原图校正效果如下图:
对于R/Gr/Gb/B个通道分别使用不同的拟合曲线参数,每个通道可以设定10组拟合曲线参数以及对应的r区间范围(4组通道共用r区间设置),计算过程如下:
首先计算当前点与中心的距离:
R(x, y)= (x-xref)*(x-xref)+(y-yref)*(y-yref)
由于输入点都是从左到右顺序处理,X, Y同时变化仅仅发生在换行的时候,因此可简化上述计算公式:
R(x, y)= (x-xref)*(x-xref)+(y-yref)*(y-yref)
R(x+1, y)=(x+1-xref)*(x+1-xref) + (y-yref)*(y-yref)
= (x-xref)*(x-xref)+1+2*(x-xref)+(y-yref)*(y_yref)
=R(x, y)+1+2*(x-xref)降低R值便于后续计算,并获取对应的参数以计算增益:
R = R>>lcs_shift; //控制R值有效位为10位if(R <RR[k+1]&&R>=RR[k]) //RR[k]参数有效位为10位,RR[0]固定为0{//获取增益参数当前像素为R通道:B=BB_R[k], C=CC_R[k];当前像素为Gr通道:B=BB_Gr[k], C=CC_Gr[k];当前像素为Gb通道:B=BB_Gb[k], C=CC_Gb[k];当前像素为B通道:B=BB_B[k], C=CC_B[k];Tmp = R – RR[k]; //tmp有效位为10位}B数据格式为8位无符号数,C数据格式为10位无符号数。gain = ((B * Tmp)>>6) +C; if(gain>0x3ff) //gain保留10位有效位gain = 0x3ff;RAW(R, Gr, Gb, B )= (RAW(R, Gr, Gb, B)*gain)>>8;RAW(R, Gr, Gb, B ) = (CLAMP10(RAW(R, Gr, Gb, B ) ));
- 镜头校正(Lens shading Correct)
- 【转】鏡頭校正(Lens Shading Correction)
- lens shading correction
- lens flare:镜头光晕
- 远心镜头(Telecentric lens)原理介绍
- camera sensor lens shading原因
- ISP-镜头阴影校正(LSC)
- OGRE Lens Flare 镜头眩光
- OGRE Lens Flare 镜头眩光
- 噩梦5Tilt Shift (Lens Blur) 倾斜移位(镜头模糊)
- 31 Three.js的特殊光源镜头光晕(lens flare)
- 镜头桶形失真校正算法 镜头径向畸变校正
- 机器视觉中如何选择工业相机与合适的相机镜头(how to choose camera and lens)
- 简易图解移轴镜头 (Tilt-Shift Lens) 原理 简易图解移轴镜头 (Tilt-Shift Lens) 原理
- 镜头桶形失真校正算法
- 镜头桶形失真校正算法
- 镜头桶形失真校正算法
- 镜头桶形失真校正算法
- 6. ATF(ARM Trusted firmware)启动---bl32(OP-TEE)
- nginx原理解析
- 回调函数的基本原理和用法
- Android--Animation动画介绍和实现
- 禁止WebView返回时刷新
- 镜头校正(Lens shading Correct)
- css垂直水平居中
- 神经网络的学习资料
- 开始使用博客
- Kotlin Android Extensions工具使用
- hive-建表-关联CSV/TSV文件
- Linux 系统下可以注释标注的pdf阅读器安装、比较和推荐
- 自动添加轮播图导航条(小圆点)
- Horspool算法