因为工作需要使用君正的T31芯片,而该芯片是音视频专用处理芯片,所以有必要梳理下Camera类方案开发的前置知识,包括硬件基础和软件SDK
网上有很多写的很好的资料,如https://blog.csdn.net/u010164190/category_10134276.html
内容也很多,所以我们只需要摘取一些关键的资料信息,能够支撑继续学习,把君正这套系统解决方案用起来就够了,等有时间回头可以深入探索。
视频处理过程
处理框图.png
ISP位置
ISP位置.png
ISP概述
ISP(Image Signal Processor), 即图像信号处理, 主要作用是对前端图像传感器输出的信号做后期处理,依赖于 ISP 才能在不同的光学条件下都能较好的还原现场细节
内部构造
ISP 内部包含 CPU、SUP IP、IF 等设备,事实上,可以认为 ISP 是一个 SOC,可以运行各种算法程序,实时处理图像信号。
如下图:
ISP
君正T31内置了ISP,并提供的驱动,所以相关内容知识就不过多展开了,只需要知道作用和怎么使用就好
ISP作用
ISP 通过一系列数字图像处理算法完成对数字图像的效果处理。主要包括 3A、坏点校正、去噪、强光抑制、背光补偿、色彩增强、镜头阴影校正等处理。
ISP 驱动
- 进入驱动文件夹/opensource/drivers/isp-t31/tx-isp-t31;首先修改 Makefile 中
ISVP_ENV_KERNEL_DIR 宏定义,使之能够索引到正确的 kernel 路径。 - 然后进行执行 make clean; make
- 最后生成的 tx-isp-t31.ko 拷贝到系统中。
- ISP 驱动注册时提供 module_param 参数有 isp_clk 参数,其参考配置:例如
3M@25fps 使用 125Mhz,
$ insmod tx-isp-t31.ko isp_clk=150000000
Sensor 分辨率、帧率与 ISP 时钟对应如下:
2M@30fps ----> 100000000 (100Mhz)
3M@25fps ----> 150000000 (150Mhz)
4M@25/30fps,5M@25fps -----> 200000000 (200Mhz)
如果按照以上配置,ISP 仍有报错,如 fifo overflow 等,可以直接将 ISP 时钟提到
200Mhz,看是否还有此错误,如果错误消失,可以在中间找一个合适的值。
网友评论