CMYG转Bayer RGB原理介绍

发布时间:2026/7/18 3:52:19

CMYG转Bayer RGB原理介绍
目录一、硬件架构Figure28/291. 硬件资源2. 系数规格 M00~M33二、典型场景CMYG CCD → RGGB BayerFigure301. 滤光阵列排布2. 硬件内置转换矩阵三、滑动窗口、数据流时序与边界规则Figure31 ~ Figure391. 基础运算规则2. 图像边界处理机制硬件固有行为四、CMYG颜色空间介绍二、正确连续光谱形式的光学透射基础模型第一性原理理想滤光假设描述CMYG 彩色滤光阵列 CCD → RGGB Bayer RAW的硬件色彩空间转换单元下面分层拆解一、硬件架构Figure28/291. 硬件资源CSC 内部包含4 路 8bit×12bit 乘法器 加法树配套两行 Line Memory行缓存。输入同时读取相邻两行图像数据需要 Line Memory 缓存上一行像素运算单元Affine 线性变换模块支持 4×4 矩阵乘法2. 系数规格 M00~M33格式有符号 8bit小数位 5bitQ5 定点小数取值范围−4≤Mxx​4硬件设计目标一次读取 2 行、4 个输入像素2×2 输入块并行算出 4 个输出像素。二、典型场景CMYG CCD → RGGB BayerFigure301. 滤光阵列排布输入CMYG 2×2 重复马赛克Y C M G输出标准RGGB Bayer 2×2G R B G2. 硬件内置转换矩阵对应输入向量 [Y,C,M,G]T一次输出 RGGB 四个通道。物理含义CMY 是减法三原色通过线性矩阵运算把黄 (Y)/ 青 (C)/ 品红 (M)/ 绿 (G)的感光信号换算成 RGB 三通道。 注意原始 CCD 感光层没有 RGB是 CMYG 滤光片必须靠 CSC 转换成通用 Bayer 格式后续 ISP 链路才能处理。三、滑动窗口、数据流时序与边界规则Figure31 ~ Figure391. 基础运算规则窗口硬件以2×2 CMYG 像素块作为运算单元滑动方式窗口在图像上逐像素横向滑动延迟特性固定1 Line 输出延迟。 原因计算当前行输出 Bayer 像素必须同时使用当前行 下一行 CMYG 数据因此输出相对输入滞后一行。输入 2×2 窗口定义✅ 同一个 2×2 CMYG 输入窗口并行一次性算出完整 2×2 RGGB 输出块不是逐个像素重复读取窗口。2. 图像边界处理机制硬件固有行为行右端边界Line End图像每行最末尾没有新像素供窗口向右滑动硬件对倒数第 2 个、最后一个输出像素复用同一组 2×2 输入窗口数据。帧底部边界Frame End图像最后一行不存在下一行 CMYG 像素硬件对倒数第 2 行、最后一行输出像素复用底部窗口输入数据。⚠️ 风险提示边界复用窗口会造成图像右边缘、底边缘存在伪色 / 精度下降属于硬件固有特性。四、CMYG颜色空间介绍在讲RYYB之前我觉得有必要谈谈RYYB的补色CFA前辈当年与RGGB一较高低的CMYG搭载CMY传感器的柯达 DCS 720x稍有常识的朋友应该都知道白光是由红色光蓝色光和绿色光组成。这三种光色被称为三基色。我们可以在这三种光色的基础上混合出任何光色依照上图 我们按加法记为W白色 R G BC蓝绿色 G BM洋红色 R BY黄色 R G但我们也能按减法记为W白色 W - 0C蓝绿色 W - RM洋红色 W - GY黄色 W - B这也是“减法补色”说法的源头RGB Bayer简而言之传统RGGB原色排列的优势在于画质锐利色彩真实缺点则是信噪比较低。CMYG相对的运用补色原理的CMYG拥有更高的信噪比缺点则是解析度较低且色彩转换较为复杂色彩容易失真。毕竟我们显示系统使用的依然是RGB。二、正确连续光谱形式的光学透射基础模型第一性原理设S(λ)入射光光谱功率分布q(λ)光电二极管量子效率所有像素共用TY​(λ),TC​(λ),TM​(λ),TGs​(λ)黄、青、品红、原生绿色滤光片光谱透射率单个像素输出电荷RAW 信号线性感光区✅ 这是光学透射模型公式。理想滤光假设定义可见光三段波段 ΩR​ 红光波段、ΩG​ 绿光波段、ΩB​ 蓝光波段。 理想无串扰减法滤光透射率再定义场景三刺激分量代入积分才可以推导出简化方程组

相关新闻

LABVIEW编写modbus tcp通讯实例

LABVIEW编写modbus tcp通讯实例

2026/7/18 3:52:19

本案例以昆仑通态触摸屏作为modbus tcp客户端,实现软件与触摸屏之信号交互1触摸屏端设置1.1触摸屏端设置:ip 192.168.0.190 端口号5021.2设备端口,父设备:通用tcp /ip设备 子设备 modbus tcp数据转发设备1.3添加设备,选…

数据结构(C语言版)学习日记(5)

数据结构(C语言版)学习日记(5)

2026/7/18 3:52:19

2线性表2.1线性表的定义和特点线性表:是具有相同特性的数据元素的一个有限序列。 (a1,a2,......,ai-1,ai,ai1,......,an) a1是线性起点(起始结点&…

Notebook到生产环境的ML工程化落地实战

Notebook到生产环境的ML工程化落地实战

2026/7/18 3:52:19

1. 项目概述:这不是一次模型训练,而是一场交付实战“From Notebook to Production: Running ML in the Real World (Part 4)”——这个标题里藏着太多被新手忽略的潜台词。它不是在讲怎么调参、怎么画ROC曲线,也不是教你怎么在Kaggle上拿银牌…

UE5.3像素流送全流程实战:从本地部署到公网访问

UE5.3像素流送全流程实战:从本地部署到公网访问

2026/7/18 5:12:22

1. 项目概述与核心价值最近在跟几个独立游戏开发的朋友聊天,发现大家都有个共同的痛点:辛辛苦苦用虚幻引擎5.3(UE5.3)做出来的项目,想给朋友、投资人或者玩家快速体验一下,总不能让人家都装一个几十个G的客…

大内存设备为何应关闭Windows内存压缩?

大内存设备为何应关闭Windows内存压缩?

2026/7/18 5:12:22

1. 为什么大内存机器反而需要关闭Windows内存压缩?在32GB甚至64GB内存成为主流配置的今天,很多用户发现一个反直觉的现象:物理内存越大,Windows系统的内存压缩功能反而越应该关闭。这个看似矛盾的现象背后,其实隐藏着现…

开源大模型三要素:上下文长度、Tokens效率与多语言支持

开源大模型三要素:上下文长度、Tokens效率与多语言支持

2026/7/18 5:12:22

1. 开源大模型的核心三要素解析在开源大模型的实际应用中,开发者最常遇到的三个关键挑战是:上下文长度限制导致的"记忆断片"、Tokens计算效率低下造成的资源浪费,以及多语言支持不足引发的文化隔阂。这三个要素共同构成了大模型应用…

Android多进程环境下广告SDK的透明代理解决方案

Android多进程环境下广告SDK的透明代理解决方案

2026/7/18 5:12:22

1. 多进程环境下广告SDK的困境与根源在Android应用开发中,多进程架构被广泛用于隔离关键组件、提升应用稳定性或实现特殊功能需求。然而当这种架构遇上广告SDK时,开发者往往会遇到一系列棘手问题。以AdMob为例,在多进程环境中直接使用广告SDK…

React Native Android后台定位实现与优化

React Native Android后台定位实现与优化

2026/7/18 5:12:22

1. React Native Android 后台定位技术解析在移动应用开发中,后台持续定位是一个常见但颇具挑战的需求。对于使用React Native开发的Android应用来说,要实现稳定可靠的后台GPS定位,需要解决三个核心问题:如何保持定位服务在应用进…

ABAP 里没有一个等价的 NgRx select,但可以把它的能力完整拆出来

ABAP 里没有一个等价的 NgRx select,但可以把它的能力完整拆出来

2026/7/18 5:02:22

我们正在做一个 SAP Fiori 销售订单页面,抬头数据来自 zdb_sales_hdr,行项目来自组合实体,页面上还要显示未完成行项目数量、未完成金额、当前订单是否允许交货。放在 Angular 和 @ngrx/store 里,常见做法是把订单状态放进 Store,再写出 selectOpenItems、selectOpenAmoun…

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

2026/7/17 10:50:47

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator作为Unity游戏社区中最成熟的文本翻译解决方…

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

2026/7/17 17:34:09

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持 【免费下载链接】raspberrypi-kernel It provides openEuler kernel source for Raspberry Pi 项目地址: https://gitcode.com/openeuler/raspberrypi-kernel 前往项目官网免费下载&…

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

2026/7/16 14:18:17

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧 【免费下载链接】integration-test The repo contains test suits for system integration test 项目地址: https://gitcode.com/openeuler/integration-test 前往项目官网免费下载:…

从模糊意图到可执行指令:Claude PRD中Prompt Engineering与需求颗粒度的5级映射法则

从模糊意图到可执行指令:Claude PRD中Prompt Engineering与需求颗粒度的5级映射法则

2026/7/18 0:02:02

更多请点击: https://kaifayun.com 第一章:从模糊意图到可执行指令:Claude PRD中Prompt Engineering与需求颗粒度的5级映射法则 在Claude驱动的产品需求文档(PRD)生成实践中,原始业务意图往往以自然语言片…

Cursor配置生成失效?3大隐藏陷阱+4行修复代码,资深工程师连夜整理的紧急补救清单

Cursor配置生成失效?3大隐藏陷阱+4行修复代码,资深工程师连夜整理的紧急补救清单

2026/7/18 0:02:02

更多请点击: https://codechina.net 第一章:Cursor配置生成失效?3大隐藏陷阱4行修复代码,资深工程师连夜整理的紧急补救清单 Cursor 配置生成突然失效,是近期高频报障场景。表面看是 cursor.config.json 未更新或 LSP…

某智驾大牛创业

某智驾大牛创业

2026/7/18 0:02:02

作者:钟声编辑:Mark出品:红色星际头图:智能驾驶图片据悉,国内某头部智驾公司端到端模型技术大牛Z投身创业,并且已经拿到融资。Z不仅是该头部公司内部最年轻的对标阿里P10级别技术负责⼈,更是业内…