【高通SDM660平台 Android 10.0】--- Camera ISP

  • 一、Camera ISP 与 DSP 区别
    • 1.1 名词解释
    • 1.2 功能解释
    • 1.3 手机摄像头ISP是独立好还是内置好
  • 二、Camera ISP 图像处理流程

网上看到一兄弟写的特别好,在此转载类似备份下:
原文:http://camera.geek-docs.com/camera-isp/camera-isp-flow-intro.html

一、Camera ISP 与 DSP 区别

在介绍Camera ISP和DSP区别前,我们先看看Camera的工作流程

拍摄景物通过镜头,将生成的光学图像投射到传感器上,然后光学图像被转换成电信号,电信号再经过模数转换变为数字信号,数字信号经过DSP加工处理,再被送到电脑中进行处理,最终转换成手机屏幕上能够看到的图像。

数字信号处理器DSP(DIGITAL SIGNAL PROCESSING)功能:
主要是通过一系列复杂的数学算法运算,对数字图像信号参数进行优化处理,并把处理后的信号通过USB等接口传到PC等设备。

DSP结构框架:

  • ISP(image signal processor)(图像信号处理器)
  • JPEG encoder(JPEG图像解码器)
  • USB device controller(USB设备控制器)

1.1 名词解释

ISP 是 Image Signal Processor 的简称,也就是图像信号处理器。
DSP 是 Digital Signal Processor 的缩写,也就是数字信号处理器。

1.2 功能解释

ISP一般用来处理Image Sensor(图像传感器)的输出数据,如做AEC(自动曝光控制)、AGC(自动增益控制)、AWB(自动白平衡)、色彩校正、Lens Shading、Gamma 校正、祛除坏点、Auto Black Level、Auto White Level 等等功能的处理。

DSP功能就比较多了,它可以做些拍照以及回显(JPEG的编解码)、录像以及回放(Video 的编解码)、H.264的编解码、还有很多其他方面的处理,总之是处理数字信号了。

个人认为ISP是一类特殊的处理图像信号的DSP。

1.3 手机摄像头ISP是独立好还是内置好

ISP是独立还是内置,对最终拍照效果并没有决定性影响,并不像PC上的独立显卡与集成显卡有那么大差异。从性能上看,这一代高通处理器内置的ISP性能已经可以跟富士通的独立ISP媲美。而各家ISP的主要处理流程都是类似的,差异也只是在于部分模块有优劣之分,比如去噪、色彩增强等。进一步来说,即便用了独立ISP,它毕竟是一个外部组件,也有可能会因为调试过程复杂,开发周期过短,开发人员难以驾驭,使得最终效果并不特别理想。

真正影响整个相机拍照效果的,还是调试,看工程师能否发挥出一块ISP真正实力。例如对ISP里面每个算法模块的优化,相关多个模块的配合等等。我们从产品上来看,有很多即便用了独立ISP,但成像效果也依然不尽人意的,也有很多虽然用了内置ISP,成像效果居然很不错的。所以这个问题,需要辩证的来看,而非依照参数配置论来粗暴的进行理解。

二、Camera ISP 图像处理流程

Camera ISP图像处理流程如下图所示

下面大概介绍下某个模块的功能和作用

  1. RAW域
    是指从DPC一直到demosaic阶段(此流程图)

  2. DPC:坏点矫正(bed pixel corr)
    坏点由于芯片制造工艺等问题产生的,
    坏点是指亮度或者色彩与周围其他像素的点有非常大的区别,
    常用检测方法是在全黑环境下看亮点和彩点和在盖白板的情况下看黑点和彩点,ISP端一般通过在亮度域上取其他周围像素点均值来消除坏点

  3. BLC:黑电平矫正(Black level corr)
    黑电平是指图像数据为0时对应的信号电平,进行黑电平矫正的目的;
    一是由于sensor本身会存在暗电流,导致在没有光照进来的条件下pixel也有电压输出,不过这部分一般在sensor端就已经处理掉了,
    还有一个原因是因为sensor进行模数转换时精度不够,
    以8bit为例,每个pixel有效范围是0-255,sensor可能无法将接近于0的信息转化出来,
    由于人眼特性(对暗处细节比较敏感,)所以sensor厂商一般在转换时会加一个固定的偏移量使像素输出在5(非固定值)—255之间,
    然后传输在ISP端再做一个减法,将5(非固定值)变为0

  4. Denosice:降噪
    噪声在图像上常表现为一引起较强视觉效果的孤立像素点或像素块。
    一般在暗态下噪声表现尤为明显。
    影响人的主观视觉感受及对目标的观测,所以进行降噪,但是降噪一般伴随着细节的损失

  5. LSC:镜头亮度矫正(lens shading corr)
    由于镜头光学系统原因(CRA),sensor中心光轴附件的pixle感光量比四周多,
    所以导致呈现出来的画面会中心亮四周暗(同时由于边缘入射角大,会造成相邻像素间串扰,严重时会导致角落偏色)。
    所以进行lsc的主要目的是为了让画面四周亮度与中心亮度一直,简单理解就是用过增加四周像素的gain值,来达到亮度一致

  6. AWB:自动白平衡(auto white balance)
    白平衡顾名思义就是让白色在任何色温下camera都能把它还原成白,
    由于色温的影响,一张白纸在低色温下会偏黄,高色温下会偏蓝,
    白平衡的目的就是白色物体在任何色问下都是R=G=B呈现出白色,比较常用的AWB算法有灰度世界,完美反射法等

  7. Demosica:颜色插值
    SENSOR每个pixel只感知一种颜色分量(如流程图一开始所示),由于人眼对绿色比较敏感所以G的分量是R与B的两倍,所形成的图像称之为Bayer图,所以要通过颜色插值使每个pixel上同时包含RGB三个分量

  8. CCM :色彩校正(color corr matrix)
    AWB已经将白色校准了,CCM就是用来校准白色除白色以外其他颜色的准确度的,用一个3X3的CCM矩阵来校准, 其中每一列系数r1+g1+b1等于一个恒定值1。
    Ccm矫正最终结果可以通过拍摄24色卡图片然后用imatest分析来做分析参考 Ygamma ;
    由于最早期的显示器端,亮度与电流之间响应不线性的,而是以曲线形式(曲线称之为gamma曲线),
    camera为了配合显示器显示出正确的亮度所以有了摄像头的gamma曲线与显示器gamma曲线成反比(不是绝对的),
    后来随着显示器的工艺发展,显示器亮度与电流之间已经可以做成显性关系了,但是人们发现由于gamma曲线的存在,
    摄像头暗部才能信息更好保留显示,更符合人眼视觉感受,
    我们可以通过调整gamma曲线来调整摄像头的亮度,对比度,动态范围等等的效果

  9. EE:锐化
    当物体锐化值过低时会出现边缘模糊,图像给人感觉不清晰,锐化过高就会导致图像出现锯齿白边等现象

  10. CSM:色彩空间转化(color space matrix)
    RGB图像通过一个转转举止向SRGB等色彩空间转化的过程

【高通SDM660平台 Android 10.0】(14) --- Camera ISP相关推荐

  1. 【高通SDM660平台 Android 10.0】(17) --- ISP算法相关-待学习文章

    <精 高通camera结构(摄像头基础介绍)> <Android : Camera2/HAL3 框架分析> 待学习: <基于IC设计的实用ISP介绍> <IS ...

  2. 【高通SDM660平台 Android 10.0】(13) --- Camera ISP 之 数字成像系统介绍

    [高通SDM660平台 Android 10.0] --- Camera ISP 之 数字成像系统介绍 一.成像系统的组成 1.1 视角 1.2 曝光 1.3 感光度 ISO 1.4 光源 1.5 光 ...

  3. 【高通SDM660平台 Android 10.0】(10) --- Camera Sensor lib 与 Kernel Camera Probe 代码分析

    [高通SDM660平台 Android 10.0]Camera Sensor lib 与 Kernel Camera Probe 代码分析 一.libmmcamera_imx258.so 代码分析 1 ...

  4. 【高通SDM660平台 Android 10.0】(19) --- Camera_focus、Camera_snapshot、volume_up 按键工作原理分析

    [高通SDM660平台 Android 10.0]19 --- Camera_focus.Camera_snapshot.volume_up 按键工作原理分析 一. DTS代码配置 二. Kernel ...

  5. 【高通SDM660平台 Android 10.0】(12) --- Camera Chromatix 代码分析

    [高通SDM660平台 Android 10.0]Qcom Camera Daemon 代码分析 一.chromatix_imx258_lc898217xc 目录 1.1 例:imx258_lc898 ...

  6. 【高通SDM660平台 Android 10.0】(21) --- 高通Camera persist使用手册

    在网上看到一位兄弟针对高通平台 camera 相关属性总结的特别好,特意转载过来备份下,以供后续调试使用. 原文: <高通Camera persist使用手册> 基于MSM8996平台PL ...

  7. android_驱动_qcom_【高通SDM660平台】(1) ---Bringup Guide

    [高通SDM660平台]Camera 驱动 Bringup Guide 一.Kernel 代码移植 1. DTS 文件配置 1.1 sdm660.dtsi 1.2 sdm660-camera.dtsi ...

  8. android_驱动_qcom_【高通SDM660平台】(4) --- Camera Init 初始化流程

    [高通SDM660平台]Camera Init 初始化流程 一.Camera 系统架构 二.Camera Init 初始化流程 2.1 CameraService 启动 2.2 CameraServi ...

  9. 【高通SDM660平台】(1) --- Camera 驱动 Bringup Guide

    [高通SDM660平台]Camera 驱动 Bringup Guide 一.Kernel 代码移植 1. DTS 文件配置 1.1 sdm660.dtsi 1.2 sdm660-camera.dtsi ...

最新文章

  1. 前沿观察 | Gartner:2020年数据与分析领域的十大技术趋势
  2. 创业失败的七个原因及解决之道
  3. hadoop文件写入
  4. include的两种形式、CPP的搜索路径
  5. MemCached缓存知识知多少?
  6. java字符串装双精度_Java 将双精度值转换为字符串
  7. 云有约 | 在去O的道路上,AWS表示:经验可复制,惊喜并非只属于我们!
  8. 通过javascript动态显示界面控件
  9. 外星人电脑为什么那么贵_为什么系统门窗那么贵?
  10. java泛化_java 类字面常量,泛化的Class引用
  11. opencv打开本地文件.avi提示找不到xvidcore.dll
  12. 天涯明月刀java_天涯明月刀61副本 天涯明月刀副本详情介绍
  13. 《JAVA语言程序设计》上课笔记
  14. 2017网易校招:数字游戏
  15. 恒指赵鑫:8.7恒指德指喊单记录与晚盘前瞻
  16. 修改smartbi的JVM调优
  17. 安卓手机管理器_安卓平台上功能最全面强大的文件管理器!
  18. php基础知识总结(新手入门必备)
  19. 生成划掉的字_哪种备忘录划删除线,能划掉文字在字中间划线的便签
  20. java 重写equals的要点_重写equals 方法的注意事项

热门文章

  1. Python3 中英文列表输出对齐
  2. CTFshow之36Dweb做题记录
  3. 电影动漫视频推荐网站
  4. 2012情人节语录1
  5. [附源码]java毕业设计动物保护网站
  6. 千江有水千江月 万里无云万里天
  7. C语言——笨方法找“水仙花数”,步步分析
  8. 莺尾花数据(画出不同分类器的ROC曲线)
  9. Texpad for Mac v1.9.6 中文版 专业的LaTeX编辑器
  10. 奥村マヨ - 見えない翼