文章目录

  • Shading及其表现
  • Shading形成的原因
    • luma shading的成因
    • Color shading的成因
  • Shading的测试原理
    • 亮度均匀性的测试原理
    • 色彩均匀性的测试原理

在了解Shading之前,让我们先了解一下镜头的构成。

通常而言,一个摄像头硬件应包含以下五个部分:外壳(Housing)或者镜头固定物(Lens Holder)、镜头(Lens)、红外截止滤波片(IR-cut filter)、图像传感器(Image Sensor)和印制电路板(PCB)。

其中,镜头红外截止滤波片图像传感器是组成摄像头的核心部件,也是引起Lens Shading的主要部分。

下面让我们继续了解Shading。

Shading及其表现

Lens shading可细分为luma shading(亮度均匀性)和color shading(色彩均匀性)两种。

Luma shading就是我们常说的暗角,即图像图像呈现出中心区域较亮,四周偏暗的现象,如图(a)。
Color Shading则表现在图像中心区域与四周颜色不一致,即图像的中心区域或者四周出现偏色,如图(b)。

从3D视图来看, Luma shading表现如图(a),中心亮四周暗;Color Shading表现如图(b),RGB plane没有重合。

Shading形成的原因

luma shading的成因

(i) 由Lens的光学特性引起。镜头本身是一个凸透镜,由于凸透镜原理,中心的聚光能力远大于边缘,从而导致Sensor影像区的中心区域接收的光线强度大于边缘。此现象也称之为边缘光照度衰减

(ii) 由摄像头本身的机械结构导致。由于摄像头各模块在制作和组装的过程中,均存在一定的工艺误差,从而影响物体光线在摄像头内的传播。

Color shading的成因

(i) 由IR-Cut filter引入。普通的IR-cut filter为干涉型红外截止滤波片,在可见光区域有较高的透过率,存在较低反射率,而在红外区域正好相反,反射率较高,透过率很低。拍摄照片时,红外光在IR膜上会有较大反射,经过多次反射后,被Sensor接收从而改变图像R通道的值,引起图像偏色问题。

(ii) 由Sensor上微透镜的CRA(Chief ray angle,主光角)与镜头的CRA不匹配导致。镜头的主光线角与传感器不匹配,会使传感器的像素出现在光检测区域周围,致使像素曝光不足,亮度不够。

因为Lens CRA 的存在,所以就出现了FOV (filed of view) 所谓的视角的概念。 视角大小=2CRA*

(iii) 由于镜头对不同光谱光线的折射程度不同,导致入射光线中不同波长的光线落在Sensor的不同位置,从而引起Color Shading。

(iv) 在校正Lens Shading时,由于校正参数计算不准确导致

Shading的测试原理

通常而言,摄像头在拍摄原始图像(raw)之后,会经过图像信号处理器(ISP)处理之后再呈现在用户面前。在整个ISP的pipeline中,会含有一个LSC(Lens Shading Correction)模块,用于校正镜头暗影。其校正前后的图像如下图(a), (b)所示。

在对校正后图像(b)进行白平衡处理后,便可用Imatest软件对其亮度均匀性和色彩均匀性进行分析,通过Shading的测试原理,确定图像校正的好坏。

亮度均匀性的测试原理

测试Lens shading时,取camera拍摄白板或者拍摄灰卡得到的图片中心和四周区域3232或者100100(一般会选择图片长宽的1/20)

  1. 分别计算每个区域的平均灰度值
  2. 然后将四个角四个区域的平均灰度值和中心区域的平均灰度值相比
  3. 比值越接近于1越好,即Shading值 =(四角最暗处的亮度值Y/中心最亮处的亮度值)×100%。

一般来说,Lens shading测试结果Pass的标准为0.85~1.00。

色彩均匀性的测试原理

测试Color shading时,也是取camera拍摄白板或者拍摄灰卡得到的图片中心和四周区域3232或者100100(一般会选择图片长宽的1/20)

  1. 分别计算每个区域的平均R,G,B的值
  2. 分别计算每个区域的 R/G、B/G
  3. 将四角四个区域的 R/G、B/G 除以中心区域的 R/G、B/G
  4. 最终得到的比值越接近于1说明Color Shading越好

一般来说,Color shading测试结果为Pass的标准为0.95~1.05。

CAMERA效果中有关SHADING的概述相关推荐

  1. Unreal Engine 4 RenderTarget制作Live Camera效果

    Unreal Engine 4 RenderTarget制作Live Camera效果 先上效果: Live Camera我不知道怎么翻译.反正意思就是将一个摄影机的Image渲染到一个2D平面上. ...

  2. html里字号rem,html中的em和rem到底该如何使用,自适应效果中如何确定文字大小/字号?...

    如今手机屏幕繁多,自适应效果中如何确定文字大小/字号? em rem vm vw vh你都了解吗? 先说说em和rem em:继承父级的,假设html的font-size默认为16px,body字体大 ...

  3. 《Adobe Photoshop CS6中文版经典教程(彩色版)》—第2课2.4节在Camera Raw中调整颜色...

    本节书摘来自异步社区<Adobe Photoshop CS6中文版经典教程(彩色版)>一书中的第2课2.4节在Camera Raw中调整颜色,作者[美]Adobe公司,更多章节内容可以访问 ...

  4. 前、中、后缀表达式概述及转换+栈的计算器原理及代码分析(含完整源码)

    目录: 1.前中后缀表达式的概述 2.中序表达式转前后缀表达式 3.运用栈的后缀表达式实现计算器原理步骤 4.代码实现和分析 1.前中后缀表达式的概述及相互转换 前缀表达式:运算符位于操作数之前. 中 ...

  5. swift mvvm_Swift中的MVVM设计模式概述

    swift mvvm by Azhar 由Azhar Swift中的MVVM设计模式概述 (An overview of the MVVM design pattern in Swift) This ...

  6. sql安装弹出sqlcmd_SQL Server中SQLCMD实用工具概述

    sql安装弹出sqlcmd This article is aimed at helping you understand the sqlcmd utility. Of course, this is ...

  7. SQL Server 内存中OLTP内部机制概述(二)

    ----------------------------我是分割线------------------------------- 本文翻译自微软白皮书<SQL Server In-Memory ...

  8. 鸿蒙轻量设备侧Camera应用中的Surface使用

    鸿蒙轻量设备侧Camera应用中的Surface使用 本文作者:江苏润和软件股份有限公司 郎建中 一.总体描述 在鸿蒙轻量设备侧图形子系统中包含了Surface模块.这个模块模仿了Android的Su ...

  9. 摄像头(camera)数据传输中 码率/比特率(Bit rate) 与 带宽(Bandwidth)对应表

    摄像头(camera)数据传输中 码率/比特率(Bit rate) 与 带宽(Bandwidth)对应表 1000兆网口 序号 码率(Kb/S) 码率(KB/S) 带宽 路数 1 256 Kb/S 3 ...

最新文章

  1. 清华连续三年稳坐亚洲第一!西交利物浦成今年黑马 | 2021泰晤士亚洲大学排名...
  2. 原创 | 初学者友好!最全算法学习资源汇总(附链接)
  3. angular1x初始与架构演进(一)
  4. 如何自学python到做项目-django教程如何自学
  5. 从中间件到分布式数据库生态,ShardingSphere 5.x革新变旧
  6. php如何禁用浏览器的缓存,php如何禁止浏览器使用缓存页面
  7. 信息学奥赛C++语言:判断奇偶
  8. Uber Go语言编码规范
  9. Python3中queue模块的使用
  10. 【MySQL】数据库事务处理---MySQL
  11. [Ext JS 4] 布局之实战二 - 中间区块不会自动伸展 (tab)续
  12. java同类型同字段名称对象赋值
  13. PHP实现JS颜文字编码解码过程-aaencode+aadecode
  14. java stream过滤_Java Stream过滤器
  15. 物理机安装linux系统,物理机安装linux的三种方法
  16. mssql2000跟mssql2005共享问题
  17. 2020年对口升学计算机应用模拟题,2020年江西省对口计算机试卷
  18. 如何实现数据大屏在各种场景下的时间展示?
  19. stylus 设置全局样式_vue 公共样式处理_全局styl文件
  20. PostgreSQL下载安装教程以及官网下载包出现的问题

热门文章

  1. “马主任吗?去机场的车来了没有?
  2. 谈谈Gameplay,以及UE4的Gameplay框架
  3. LWIP网络开发从入门到精通
  4. 【学习笔记】分布式追踪Tracing
  5. 网上得到的一个3D渲染引擎
  6. Python中的变量
  7. 第十七章 再论没有银弹
  8. Red Team之Empire渗透工具介绍和使用
  9. mysql 1062_mysql #1062 报错
  10. 学习javascript这一篇就够了超详细笔记(建议收藏)上