化腐朽为神奇!揭开ISP图像处理的神秘面纱,基于瑞芯微RK3568J工业平台!
ISP图像处理前后图像对比
化腐朽为神奇!经过ISP图像处理的图片前后对比是如此惊人!从下图中可以观察到,未经处理的原始图像偏绿且暗淡,而经ISP图像处理的图像能够清晰地还原现场真实的颜色细节!
ISP简介
ISP(Image Signal Processor),即图像信号处理,主要作用是处理前端图像传感器输出的信号,主要功能有线性纠正、噪声消除、自动白平衡、自动曝光控制等,能在不同的光学条件下很好地还原现场细节。
ISP优势
由于不同传感器的差异以及拍摄环境的多样性,传感器输出的原始数据和人们预期的图像有一定差距,因此ISP就起到了相当重要的作用。例如:夜间光照不足、大雾、沙尘等,均会使采集的图像造成影响,存在成像模糊、噪声污染及曝光不均等问题,而经ISP图像处理的图像会有明显的优化。
RK3568J ISP功能介绍
RK3568J的ISP21模块支持标准的Sensor图像数据处理,包括自动白平衡,自动曝光,Demosaic,坏点矫正及镜头阴影矫正等基本功能,也支持HDR、去雾、降噪等高级处理功能。ISP21功能框图如下图所示。
RK3568J的ISP图像处理基于RKISP2.x Tuner工具对摄像头采集的图像进行标定得到IQ参数文件,通过IQ参数文件将摄像头采集的图像进行优化处理后发送至显示设备。
RKISP2.x Tuner提供了一套便于用户调试ISP参数的工具,用户可以在RKISP2.x Tuner中对所有ISP模块开展标定(Calibration)、调试(Tuning)等工作。
用户可以使用RKISP2.x Tuner提供的抓图工具(Capture Tool)来拍摄RAW图,在标定工具(Calibration Tool)中完成基础模块的标定工作,在RKISP2.x Tuner中连接设备,在线进行ISP参数调试。
RK3568J工业平台典型应用领域
ISP图像处理开发案例
本章节主要介绍瑞芯微RK3568J的ISP图像处理开发案例,使用的硬件平台为:创龙科技TL3568-EVM工业评估板。
为了简化描述,正文仅摘录方案功能描述与测试结果,详细产品资料请扫描文末二维码下载。
功能说明
本案例基于RKISP2.x Tuner工具对摄像头采集的图像进行标定得到IQ参数文件,通过IQ参数文件将摄像头采集的图像进行优化处理后发送至显示设备。
硬件连接
评估板默认已支持HDMI OUT显示,请将评估板HDMI OUT接口连接至HDMI显示屏,使用FFC软排线将MIPI摄像头模块(型号为MCAM400)连接至评估板CAMERA接口,通过网线将评估板千兆网口ETH0 RGMII连接至路由器。硬件连接如下图所示。
原始图像显示演示
评估板上电启动,执行如下命令将摄像头采集的图像实时显示至HDMI显示屏,该画面是未经过ISP图像处理的原始画面,如下图所示。按"Ctrl + C"可退出程序。
Target#/rockchip-test/camera/camera_rkisp_test.sh
可以观察到,HDMI显示屏实时显示摄像头采集的原始图像偏绿色且暗淡。
RKISP2.x Tuner工具调试演示
以下主要介绍使用RKISP2.x Tuner工具进行标定处理。
打开RKISP2.x Tuner工具,导入原始图像后,进入CCM标定界面,然后设置饱和度,点击"Calibrate"开始标定。
标定完成后,点击"Result"页面,可查看结果。
可点击"Save"将新标定数据保存至IQ参数文件ov4689_RK-CMK-8M-2-v1_CK8401.json中。
备注:如需了解通过RKISP2.x Tuner工具创建及配置IQ参数文件的详细步骤,请参考我司提供的用户手册。
ISP图像处理效果演示
评估板上电启动,请将IQ参数文件ov4689_RK-CMK-8M-2-v1_CK8401.json拷贝至评估板文件系统"/etc/iqfiles/"目录下,然后重新启动评估板。
进入评估板文件系统,执行如下命令,将摄像头采集的图像实时显示至HDMI显示屏,该画面是经ISP图像处理的显示效果,如下图所示。按"Ctrl + C"可退出程序。
Target#/rockchip-test/camera/camera_rkisp_test.sh
可以观察到,摄像头实时采集的图像经过ISP图像处理后,显示效果相比原始图像有明显的优化。显示效果跟实际测试环境以及IQ参数文件配置有关,测试结果仅供参考。
化腐朽为神奇!揭开ISP图像处理的神秘面纱,基于瑞芯微RK3568J工业平台!的更多相关文章
- 【转】再讲IQueryable<T>,揭开表达式树的神秘面纱
[转]再讲IQueryable<T>,揭开表达式树的神秘面纱 接上篇<先说IEnumerable,我们每天用的foreach你真的懂它吗?> 最近园子里定制自己的orm那是一个 ...
- 揭开webRTC媒体服务器的神秘面纱——WebRTC媒体服务器&开源项目介绍
揭开webRTC媒体服务器的神秘面纱--WebRTC媒体服务器&开源项目介绍 WebRTC生态系统是非常庞大的.当我第一次尝试理解WebRTC时,网络资源之多让人难以置信.本文针对webRTC ...
- 揭开A*算法的神秘面纱
揭开A*算法的神秘面纱 一.总结 一句话总结:f(n)=g(n)+h(n) 这个算法有点像BFS的优化算法. g(n)为起点到当前方格的距离,这个是已知的. h(n)为当前方格到终点的距离,这个简单点 ...
- 再讲IQueryable<T>,揭开表达式树的神秘面纱
接上篇<先说IEnumerable,我们每天用的foreach你真的懂它吗?> 最近园子里定制自己的orm那是一个风生水起,感觉不整个自己的orm都不好意思继续混博客园了(开个玩笑).那么 ...
- 揭开SQL注入的神秘面纱PPT分享
SQL注入是一个老生常谈但又经常会出现的问题.该课程是我在公司内部培训的课程,现在分享出来,希望对大家有帮助. 点击这里下载.
- 揭开HTTP网络协议神秘面纱系列(三)
HTTP首部字段有四种类型:通用首部字段,请求首部字段,响应首部字段,实体首部字段. 通用首部字段: 首部字段 说明 Cache-Control 控制缓存的行为 Connection 逐跳首部.连接的 ...
- 揭开HTTP网络协议神秘面纱系列(二)
HTTP报文内的HTTP信息 HTTP协议交互的信息被称为HTTP报文,请求端的HTTP报文叫做请求报文,响应端的叫做响应报文. HTTP为了提升传输速率,其在传输数据时,按照数据原样进行压缩传输,相 ...
- 揭开HTTP网络协议神秘面纱系列(一)
1.了解Web及网络基础 TCP/IP协议族按层次可以分为下面四层: 应用层:决定了向用户提供应用服务时通信的活动,TCP/IP协议族内预存了各类通用的应用服务,比如:FTP(文件传输协议)和DNS( ...
- 揭开yield关键字的神秘面纱
写在前言 经常会看见,python函数中带有yield关键字,那么yield是什么,有什么作用? 答案:可以理解yield是一个生成器: 作用:遇到yield关键字,函数会直接返回yield值,相当于 ...
- 1.揭开消息中间件RabbitMQ的神秘面纱
当你看到这篇博文的时候,相信你至少已经知道RabbitMQ 是一个非常优秀的消息中间件,它使用专门处理高并发的Erlang 语言编写而成的消息中间件产品. 当然如果你不知道也没关系,读完本篇你将Get ...
随机推荐
- 【web安全】修改和配置tomcat版本信息
场景 目前网络安全的越来越受重视,tomcat作为重要的web容器被广泛应用,如何隐藏信息保证.在开放网络世界中,不易被攻击. 操作思路 1.进入Tomcat文件中的lib文件夹,将catalina. ...
- go-admin开发小技巧
搜索条件参考下面的文件 https://github.com/go-admin-team/go-admin-core/blob/master/tools/search/query_test.go ty ...
- js数组方法之数组变异方法
push.pop.unshift.shift.sort.splice.reverse 以上这些方法都会改变原数组并且 这些方法的返回值是值得注意的有时候可以提高工作效率,比如pop方法的返回值是该元素 ...
- Spring源码阅读 ------------------- SpringFrameWork 5.2 +IDEA 部署其他坑位问题(二)
一.地址下jar包无法下载问题 报错信息: Could not get resource 'https://plugins.gradle.org/m2/org/asciidoctor/o ...
- Haproxy+Nginx+Tomcat实现动静分离页面
一.Haproxy概述: 二.Haproxy原理实现: 三.Nginx.LVS.Haproxy对比: 四.Haproxy配置文件讲解: 五.案例:Haproxy+Nginx+Tomcat搭建高可用集群 ...
- C++ Virtual Functions
Virtual这个关键字在多态中扮演一个绝对重要的角色,只要member functions声明的前面加上virtual的关键字,他就会成为 Virtual member functions.任何一个 ...
- Windows 7 任务栏开发 之 进度条(Progress Bar)
上一篇我们完成了"覆盖图标"(Overlay Icon)的相关开发,本篇我们将对进度条特性进行研究.在使用IE 下载文件时,任务栏图标会同步显示当前下载进度(如下图).那么在应用程 ...
- ceph deploy部署ceph集群 ceph扩容 rbd存储
架构拓扑 节点主机 节点IP 节点角色 OS ceph-admin 10.0.0.60 admin deploy mds centos7 ceph-node1 10.0.0.61 mon osd md ...
- Cmockery学习
什么是cmockery? 是一个轻量级的C语言单元测试框架 什么是单元测试? 单元测试就是测试一个系统的最小实现单元,往往是函数 示例解析 #include <stdarg.h> #inc ...
- #define、const和enum
enum:枚举类型(枚举变量的值只能等于枚举中定义的常量) #define:明示常量(定义真正的常量) const:限定符(名不符实,应该叫read only),限定一个变量为只读 C语言常量: 1. ...