您尚未登录。

楼主 # 昨天 23:10:42

小兵
会员
注册时间: 昨天
已发帖子: 23
积分: 23

全志平台 ISP 调试小结:sensor、vin、media pipeline 和画质参数怎么排

最近整理全志平台 ISP 相关问题,发现很多“摄像头没图/花屏/颜色不对”的问题,不能只盯 ISP 本身。全志这套链路一般是 sensor → MIPI CSI/并口 → VIN/CSI → ISP → scaler/video node,任何一环没对上,最后表现都可能是黑屏或者采集失败。这里做个排查小结。

1. 先把链路拆开看

调 ISP 前,建议先确认这几层:

sensor 上电/复位/时钟
        ↓
I2C/SCCB 读写 sensor 寄存器
        ↓
MIPI CSI 或 DVP 数据进来
        ↓
VIN/CSI 节点 probe
        ↓
ISP pipeline 建立
        ↓
/dev/videoX 输出图像

很多问题其实卡在 sensor 上电或 I2C 阶段,还没到 ISP。

2. sensor 驱动先确认三件事

  1. MCLK 是否正确
    常见是 24MHz,也有 sensor 需要别的频率。MCLK 不对,I2C 可能能通,但 sensor 不出数据。

  2. reset/pwdn 时序
    reset、pwdn、avdd/dvdd/iovdd 顺序不对,表现会很玄学:有时能读 ID,有时不能出图。

  3. sensor ID 是否读对
    先别急着跑应用,驱动 probe 阶段能稳定读到 ID 才算第一关过了。

如果 ID 都读不到,先查电源、MCLK、reset、I2C 地址,不要直接改 ISP 参数。

3. MIPI CSI/DVP 参数要和 sensor 输出一致

sensor 初始化里配置的输出格式,必须和 DTS/驱动里写的一致:

  • lane 数:1 lane / 2 lane / 4 lane;

  • data rate;

  • RAW8/RAW10/RAW12/YUV422;

  • 分辨率和帧率;

  • virtual channel;

  • MIPI clock settle 等参数。

如果 sensor 实际输出 RAW10,但驱动按 YUV422 或 RAW8 接,后面不是没图就是颜色/行同步乱。

DVP 并口也类似,要核对 PCLK、HSYNC/VSYNC 极性、数据位宽、BT656/BT601 模式。

4. media pipeline 要先连通

在 V4L2/media controller 方案下,建议先看:

media-ctl -p
v4l2-ctl --list-devices
v4l2-ctl -d /dev/videoX --all

重点看:

  • sensor subdev 是否存在;

  • csi/vin/isp subdev 是否存在;

  • pad format 是否一致;

  • link 是否 enable;

  • video node 对应的是 raw、isp 后还是 scaler 后。

有时候 /dev/video0 存在不代表 pipeline 配好了,只是节点创建出来了。

5. 先抓 raw,再调 ISP

如果是 RAW sensor,建议先确认 raw 数据能稳定采到,再调 ISP。否则画质参数再怎么改都没意义。

排查顺序可以是:

  1. sensor ID 正常;

  2. MIPI/DVP 有数据;

  3. 能 dump raw;

  4. ISP 出图;

  5. 再调 AE/AWB/LSC/CCM/NR/sharpness。

如果 raw 都不稳定,优先查 sensor 输出、lane、时钟、同步信号。

6. 画面异常怎么初判

  • 全黑:sensor 没出数据、曝光太低、pipeline 没连、video node 选错;

  • 花屏/斜纹:lane 数、格式、bit width、stride、同步极性不对;

  • 颜色偏紫/偏绿:Bayer 顺序错,RGGB/GRBG/GBRG/BGGR 没对上;

  • 亮暗跳动:AE 参数或 flicker 设置不合适;

  • 白平衡怪:AWB、CCM、色温参数要重新调;

  • 边缘发糊/噪点大:NR/sharpness/曝光增益需要一起看。

7. ISP 参数不要直接照搬

不同 sensor、镜头、模组、IR cut、光学结构都不一样。即使用同一颗 sensor,不同模组的 LSC、CCM、AWB 参数也可能差很多。

可以先用 SDK 默认参数跑通,但量产要重新标定:

  • 黑电平 BLC;

  • LSC 镜头阴影校正;

  • AWB 白平衡;

  • CCM 色彩矩阵;

  • Gamma;

  • 降噪和锐化;

  • AE 曝光策略。

默认 IQ 参数只能算“能看”,不一定能算“好看”。

8. 一个实用调试顺序

我一般会这样排:

  1. 量 sensor 电源、MCLK、reset/pwdn;

  2. I2C 读 sensor ID;

  3. 确认 sensor 输出格式和 DTS/驱动一致;

  4. 用 media-ctl/v4l2-ctl 看 pipeline;

  5. 先低分辨率低帧率出图;

  6. 能出 raw 后再开 ISP;

  7. 最后再调 IQ 参数。

简单说,ISP 问题不要一开始就调画质。先确认 sensor 真在出数据、CSI/VIN 真收到了、media pipeline 真连上了,再谈 AE/AWB/CCM。这样定位会快很多,也不容易把硬件/驱动问题误判成 ISP 参数问题。

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn


东莞哇酷科技有限公司开发