RV1126/RV1109 ISP调试方案

news/2024/6/17 15:55:07 标签: 数码相机, 人工智能, 计算机视觉

最近一直在做瑞芯微rv1126的开发,由于项目性质,与camera打的交道比较多,包括图像的采集,ISP处理,图像处理,H.264/H.265编解码等各个方面吧。学到了不少,在学习的过程中,也得到了不少帮助,很感激,所以将这一部分整理了一下,希望能对大家有所帮助。如有错漏,也希望批评指出,一起探讨。

1 摄像头类型
1.1 接口介绍
RV1126支持的摄像头接口主要包括MIPI、LVDS、DVP等三种。

MIPI:串行接口,当前主要摄像头接口,速度最快,抗干扰强。
LVDS:串行接口。
DVP:一种并行接口,即Digital Video Port,相对于MIPI接口,传输速率有限,一般为5M或以下摄像头。
DVP可与MIPI或LVDS接口可以同时工作,但MIPI和LVDS不能同时作。DVP接口对应一个rkcif_dvp节点,MIPI/LVDS接口对应一个rkcif_mipi_lvds节点,各节点可独立采集。为了将VICAP采集的数据信息同步给isp驱动,需要将VICAP驱动生成的逻辑sditf节点链接到isp所生成的虚拟节点,DVP接口对应rkcif_dvp_sditf节点,MIPI/LVDS接口对应rkcif_mipi_lvds_sditf节点。

1.2 数据类型
**Raw:**RAW图像就是CMOS或者CCD图像感应器将捕捉到的光源信号转化为数字信号的原始数据,是camera sensor直接输出的格式。红外相机的sensor和彩色相机的sensor有些不同,有的红外相机的sensor输出的raw data就是亮度值,即灰度值,输出来就是只有Y信息的,一个像素点通常由Y10/Y16等字节来表示。彩色相机RGB格式,每个像素点表示一个颜色分量B、G或R。
RAW文件是一种记录了数码相机传感器的原始信息,同时记录了由相机拍摄所产生的一些元数据(Metadata,如ISO的设置、快门速度、光圈值、白平衡等)的文件。RAW是未经处理、也未经压缩的格式,可以把RAW概念化为“原始图像编码数据”或更形象的称为“数字底片”。sensor的每一像素对应一个彩色滤光片,滤光片按Bayer pattern分布。将每一个像素的数据直接输出,即RAW RGB dataRaw data(Raw RGB)经过彩色插值就变成RGB.
raw格式是无法直接用于图像处理的,因为每个像素点颜色信息都不全,需要经过ISP处理,把raw转成yuv/rgb之类的图像(不只是格式转换,还要做白平衡调整之类的图像处理工作,调整好图像效果),才可以输入到图像处理算法中。
raw数据一般是经过tuning来还原数据,效果与摄像头镜头以及tuning参数有关。详细tuning方法见4.2节。


http://www.niftyadmin.cn/n/5261898.html

相关文章

Unity | Shader基础知识(第一集:unity中最简单的shader)

目录 一、unity的shader 二、创建一个shader(在创建时,选前三种都可以) 三、内容解读 1.shader一直都在 2.我们写shader在写什么 四、没有被干预的shader(最简单的shader) 相关阅读 编写着色器概述 - Unity 手册…

python进行描述性统计分析,python怎么做描述性统计

大家好,小编来为大家解答以下问题,python语言的描述错误的选项,python描述算法的方法有几种,今天让我们一起来看看吧! 一、描述符是什么 描述符:是一个类,只要内部定义了方法__get__, __set__, …

【第二章】docker +Jenkins+git+allure+python3安装

上一篇说Jenkins容器中安装python3,这篇主要讲解跑测jenkins时 1、安装Python插件 pip3 install allure-pytest pip3 install pytest-html pip3 install python2、启动jenkins 按照提示路径查找密钥 安装插件,错误没事,进入后直接更改站点…

【算法】动态规划(dp问题),持续更新

文章目录 0. 动态规划五个思考步骤 和 注意事项技巧优化思路 1. 子数组系列1.1 乘积为正数的最长子数组长度1.2 等差数列划分1.3 最长湍流子数组1.4 单词拆分 0. 动态规划 介绍本篇之前,我想先用人话叙述一般解决动态规划问题的思路: 动态规划的问题&a…

python pandas 数据预处理

pandas数据处理 相关知识DataFrame合并1. pandas.concat()2. DataFrame.append()3. DataFrame.merge()或者pd.merge()4. DataFrame.join() 第1关:数据读取与合并任务描述本关代码 第2关:数据清洗任务描述相关知识删除缺失值: dropna()检测缺失值 isnull(…

WebClient 实现openai 文本转语音报错: DecoderException

错误信息: OpenAI返回数据异常t:{}io.netty.handler.codec.DecoderException: java.lang.NullPointerExceptionat io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:471) ~[netty-codec-4.1.53.Final.jar:4.1.53.Final]Suppres…

OpenHarmony 鸿蒙系统之开发环境安装

一、首先在下方链接网址中下载DevEco Studio的安装包。 DevEco Studio历史版本下载-HarmonyOS应用开发官网

信息学奥赛一本通 第五章 第五章 数 组 第一节C语言非C++

第五章 数 组 第一节 一维数组 2034&#xff1a;【例5.1】反序输出 #include <stdio.h>int main() {// 定义一个大小为105的数组a&#xff0c;用于存储用户输入的整数// ai用于记录数组a中已存储的整数的个数// x用于临时存储用户输入的整数int a[105], ai 0, x;// …