FPGA ISP之CISP-Lite IP软件栈
CISP-Lite LinuxCISP-Lite 在 Kria KV260 上的 Linux 相机软件栈ISP · V4L2 · libcamera · 树莓派 · GStreamer目录项目简介特性系统架构CISP-Lite IP仓库结构快速上手License项目简介CISP-Lite是一套基于C/HLS实现的轻量级图像信号处理器ISP面向 Xilinx 系 FPGA支持运行时动态配置分辨率、Bayer 格式与各处理模块参数。设计目标最高4K60FPS已在Kria KV260xck26类 ZynqMP 5EV上验证4K30FPS实时通路。CISP-Lite-Linux是面向该 ISP 的Linux 相机软件栈覆盖驱动、中间件到应用层级内容驱动层V4L2 / Media Controllercisp-lite、mipi-rx-to-video、ar1335、imx219框架层改造自树莓派的libcameravc4 →cisp_lite及 IPA应用层rpicam-apps、cam、GStreamer、Camera Tuning ToolCTT固件层PL bitstream / DTBO、预编译 rootfs 与 WIC 镜像脚本目标是在自定义 FPGA ISP 上复用树莓派成熟的相机软件生态与调参流程。特性本仓库为软件栈核心在于生态兼容与工具链可迁移特性说明V4L2 / Media Controller标准 Linux 视频接口ISP / MIPI-RX / Sensor 接入 Media Graph可用media-ctl、v4l2-ctl配置拓扑与抓流libcamera改造树莓派 vc4 pipeline 支持cisp_lite复用同一套 IPA、控制模型与cam工具树莓派生态rpicam-hello/rpicam-still/rpicam-vid及 CTT 用法与树莓派一致应用与调参流程可直接迁移GStreamer支持libcamerasrc等标准插件可组预览、编码、推流等 pipeline驱动与固件配套含 PL bitstream / DTBO、双 SensorAR1335 / IMX219驱动支持 configfs 动态加载系统架构Sensor → 应用端到端拓扑双路 MIPI 将 Sensor RAW 经 FrameBuf Writer 写入 DDRFrameBuf Reader 取帧送入 CISP-LiteISP 双通道 CVIPCHN0 / CHN1各经一路 FrameBuf Writer 写回 DDR由 libcamera / rpicam / GStreamer 消费Processing SystemProgrammable LogicSensorAR1335IMX219MIPI-RX(IAS1)MIPI-RX(RPi)FrameBufWriterFrameBufWriterFrameBufReaderCISP-LiteFrameBufWriter(CHN0)FrameBufWriter(CHN1)DDR4libcamerarpicam-appsGStreamer硬件框图基于 KV260双 MIPI-RX 采集 → Frame Buffer 与 DDR 交互 → CISP-Lite 处理 → PS 侧软件栈消费。分类模块说明自定义 IPMIPI-RX ×2、CISP-Lite采集与 ISP 处理核心Xilinx IPFrameBuf Writer ×4、FrameBuf Reader ×1PL ↔ DDR 视频 DMASensorAR1335、IMX219IAS1 / RPi CSIPS 外设DDR4、SD、ETH、DP/HDMI存储、网络与显示软件栈框图自下而上硬件 IP → V4L2 驱动 → libcamera → 树莓派系应用与 GStreamer。图例含义黄色本项目新增驱动 / IP绿色本项目修改libcamera 等对接树莓派生态棕色Xilinx 既有视频 IP / 驱动Sensor 支持Sensor接口典型分辨率说明AR1335IAS13840×2160 10bit默认演示路径IMX219RPi CSI3280×2464 10bit可选第二路CISP-Lite IP使用 C/HLS 描述可综合到 Xilinx FPGA。支持软件动态配置分辨率、Bayer 格式与各模块参数片上提供 AE / AWB 统计供 libcamera IPA 做 2A 闭环。处理流水线Bayer RAW │ ▼ DPC → BLC → BNR → DGAIN → LSC ──► STAT_AE │ ▼ DEMOSAIC ──► STAT_AWB │ ▼ WB → CCM → GAMMA → CSC │ ▼ YNR / CNR → EE │ ┌────────────┴────────────┐ ▼ ▼ CVIP CHN0 CVIP CHN1 YUV2RGB→CROP→DSCALE→444TO422 同左独立配置模块说明CISP 主通路点击展开模块名称功能简述cisp_dpc坏点校正5×5 邻域内 8 个邻近像素均大于/小于当前像素时以中值替换cisp_blc黑电平校正RGGB 四通道分别减去配置的黑电平cisp_bnr拜耳降噪简化双边滤波cisp_dgain数字增益像素乘以配置增益cisp_lsc镜头阴影校正Mesh 网格 16×12四通道增益表cisp_demosaic去马赛克基于边缘、色度与色差的自适应插值cisp_wb白平衡RGB 三通道乘增益cisp_ccm色彩校正矩阵3×3 CCMcisp_gammaGamma查表 Gammacisp_csc色彩空间转换整数优化 RGB→YUVcisp_ynrY 降噪7×7 双边滤波cisp_cnrUV 降噪可选高斯滤波cisp_ee边缘增强Y 通道高频增强cisp_stat_aeAE 统计指定 ROI 四通道像素数/和及直方图cisp_stat_awbAWB 统计指定 ROI 且落在阈值范围内的 RGB 统计CVIP 后处理通路点击展开模块名称功能简述cvip_yuv2rgbYUV→RGB整数优化转换cvip_crop裁剪可配置 ROIcvip_dscale缩小宽/高分别支持 1/Ncvip_yuv444to422444→422作为v_frmbuf_wr源写入内存NV12axis_422 与 axis_420 时序相同双通道 CVIPCHN0 / CHN1可独立配置典型用途一路全分辨率、一路缩略预览或编码输入。仓库结构cisp_lite_linux-master/ ├── README.md ├── LICENSE ├── debug_cmd.txt # 进阶调试命令参考 ├── doc/ # 架构图、演示截图、drawio 源文件 │ ├── cisp_lite_diag.png │ ├── zynqmp_hw_diag.png │ ├── camera_sw_diag.png │ ├── demo.png │ └── diagrams.drawio ├── bsp/ │ ├── drivers/ │ │ ├── cisp_lite/ # cisp-lite / mipi-rx / ar1335 等 │ │ └── allegro/ # VCU 编解码相关驱动 │ ├── fpga/ # bitstream、DTSI、DTBO 构建 │ ├── patch/ # linux-xlnx 补丁 │ ├── build_arm64.sh # 内核 驱动 FPGA 构建 │ └── install_arm64.sh # 产物安装如 TFTP rootfs ├── linux-xlnx-xilinx-v2022.1/ # Xilinx Linux 内核树 ├── libcamera-0.6.0-rpt20251202/ # 适配 cisp-lite 的 libcamera ├── rpicam-apps-1.11.0/ # 树莓派 rpicam 应用集 └── prebuild/ # 预编译 boot / rootfs / mkwic.sh快速上手硬件准备项目要求开发板AMD/XilinxKria KV260SensorAR1335接在IAS1IMX219 可选接 RPi CSI存储≥8GBmicroSD显示HDMI / DP 显示器调试串口115200烧写与运行下载 kv260_cisp_lite.wic.zip 镜像用 balenaEtcher 烧写到 SD 卡插入SD卡AR1335接在IAS1上接好串口与显示器上电启动系统就绪后执行./load_drv.sh modetest-Dfd4a0000.display-w40:alpha:0 rpicam-hello-t0load_drv.sh会通过 configfs 加载 PLDTBO bitstream并插入相关内核模块。之后与树莓派相同一条rpicam-hello即可实时预览。演示视频演示视频更多进阶命令Media Graph、抓流、GStreamer 等见debug_cmd.md架构图源文件见doc/diagrams.drawio。LicenseCopyright © 2026 bxinquan第三方组件Linux、libcamera、rpicam-apps、Allegro VCU 等遵循各自原有许可证。

相关新闻

PUBG罗技鼠标宏压枪脚本终极指南:5分钟快速上手提升射击精度

PUBG罗技鼠标宏压枪脚本终极指南:5分钟快速上手提升射击精度

PUBG罗技鼠标宏压枪脚本终极指南:5分钟快速上手提升射击精度 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 还在为PUBG中难以控制的…

2026/10/9 14:41:42 阅读更多 →
Django全栈开发:从零构建博客系统实战指南

Django全栈开发:从零构建博客系统实战指南

1. Django全栈开发入门:为什么选择博客系统作为练手项目?十年前我刚接触Django时,导师扔给我一个任务:"用Django做个博客系统"。当时觉得这太基础了,直到真正动手才发现,一个完整的博客系统几乎涵…

2026/10/9 14:41:06 阅读更多 →
网络性能指标全解析:从带宽、时延到吞吐量的诊断工具箱

网络性能指标全解析:从带宽、时延到吞吐量的诊断工具箱

你有没有过这样的经历:刚学完计算机网络,老师讲得头头是道,你也觉得每个概念都听懂了,但一到自己动手配置网络、排查问题,或者面试被问到“带宽和吞吐量有什么区别”时,脑子里却一片空白,只能模…

2026/10/8 16:27:55 阅读更多 →

最新新闻

Java SPI机制详解:从ServiceLoader源码到架构实战与避坑指南

Java SPI机制详解:从ServiceLoader源码到架构实战与避坑指南

先交代一个背景:我最早对SPI产生兴趣,不是因为看了哪篇源码解析,而是因为在接手一个老项目时被ClassNotFoundException折磨了一下午。业务方反馈功能偶发失效,日志里清清楚楚写着找不到某个实现类,但代码里明明已经引入…

2026/10/10 14:57:03 阅读更多 →
Claude Code Skills从项目级迁到全局:安装与切换实战

Claude Code Skills从项目级迁到全局:安装与切换实战

在团队里用 Claude Code 做日常开发维护已经有段时间了,最早大家都把 Skills 往各个项目里塞,结果每个仓库里都躺着一份重复的配置。后来发现问题越来越多:升级一个 Skill 要在十几个仓库里同步、改一个脚本要反复拷贝、同事提交的版本还经常…

2026/10/10 14:57:03 阅读更多 →
文件描述符FD原理、调优与泄漏排查:后端高并发必知

文件描述符FD原理、调优与泄漏排查:后端高并发必知

1. 文件描述符到底是什么,为什么每个后端人都绕不开它刚入行那会儿,我对文件描述符的理解就停留在“一个整数”,觉得这玩意儿无非就是open返回的东西,用完close掉就完事了。直到有一次线上服务在压测时突然开始报Too many open fi…

2026/10/10 14:57:03 阅读更多 →
Linux文件描述符FD耗尽故障排查与调优实战指南

Linux文件描述符FD耗尽故障排查与调优实战指南

1. 从一次线上故障说起:为什么FD会耗尽凌晨两点,监控告警突然炸了。一台跑了半年多的服务节点,CPU和内存都正常,但所有新进来的请求全部超时,日志里刷屏的是同一句话:Too many open files。重启之后立刻恢复…

2026/10/10 14:57:03 阅读更多 →
Flutter生命周期全解析:从initState到dispose的完整实践指南

Flutter生命周期全解析:从initState到dispose的完整实践指南

从第一次接触 Flutter 开始,initState、build、dispose这三个方法就必须天天打交道,但很多人对它们的理解其实停留在“背模板”的阶段:初始化写在initState里,页面长这样写在build里,收尾写在dispose里。模板能跑&…

2026/10/10 14:57:03 阅读更多 →
OPC DA报错找不到OpcEnum?补装OPC Core Components 2.0快速解决

OPC DA报错找不到OpcEnum?补装OPC Core Components 2.0快速解决

简介:OPC Core Components 2.0 是OPC基金会发布的核心组件集合,主要面向工业自动化开发者、系统集成商与现场维护人员。它直击电脑未安装 OpcEnum 时无法枚举和访问网络 OPC 服务器的问题,完成组件安装即可恢复通信能力。OPC UA 作为下一代标…

2026/10/10 14:56:02 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →