news 2026/4/11 17:25:51

例说FPGA:可直接用于工程项目的第一手经验【3.0】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
例说FPGA:可直接用于工程项目的第一手经验【3.0】

12.ycbcr2rgb.v模块代码解析

该模块的内部功能框图如图12-40所示。YCrCb输入视频流经过该模块内部缓存排序、乘累积运算(放大256倍)、加法运算以及溢出与缩小(256倍)处理后,输出RGB视频流。

在视频图像显示、处理时,采用的颜色空间主要有RGB和YCrCb两种。RGB基于三基色原理,颜色实现简单,在计算机、电视机显示系统中应用广泛。YCrCb将颜色的亮度信号与色度信号分离,易于实现压缩,方便传输和处理。在视频压缩、传输等应用中经常需要实现RGB与YCbCr颜色空间的相互变换。

在RGB颜色空间中,自然界所有颜色都可以用红(R)、绿(G)、蓝(B)三种颜色的不同强度组合而重现。RGB的取值范围分别为0~255。

RGB生成颜色容易实现,被广泛应用在计算机、彩色电视机的显示系统中。但是RGB表示颜色的效率并不是很高,3个颜色分量同等重要,而且亮度信息存在于所有颜色分量中,当需要对像素点的亮度或者色度值进行修改时,必须同时改变RGB三者的值。

在YCRCb颜色空间中,Y表示亮度信号,取值范围为16~235;Cr,Cb表示色度信号,取值范围为16~240,亮度信号与色度信号相互独立。这种颜色表示方法可以利用人眼的特性降低数字彩色图像的存储空间。人眼视觉系统对亮度细节的敏感度高于颜色细节,适当减少色度分辨率不会明显影响图像的画质,易于实现数据压缩。

由于人眼对亮度Y的信息最敏感,因此ITU656送出的YCrCb数据格式每个像素都包含Y信息,而相邻两个像素公用一组CrCb信息,这样它相对RGB模式就能够减少传输数据量。ITU656的YCrCb数据对应所属的像素点如图12-41所示。

由于FPGA逻辑运算中,我们无法直接运用浮点数进行运算,因此可以先将等式左右分别放大256倍进行运算,运算完成后再缩小256倍即可。等式左右放大后的结果如下所示。

我们接下来看看逻辑代码中是如何实现这个矩阵运算的。我们把上面的等式分别展开为3个等式如下。
R*256=256*Y+359*Cr–45941
G*256=256*Y-88*Cb-183*Cr+34678
B*256=256*Y+454*Cb-58065
我们可以进一步把前面的3个等式拆分为以下3步运算。
步骤1:
R'=256*Y+359*Cr
G'=256*Y-88*Cb-183*Cr
B'=256*Y+454*Cb
步骤2:
R"=R'-45941
G"=G'+34678
B"=B'-58065
步骤3:
R=R">>8
G=G">>8
B=B">>8
对于步骤1的公式,Y、Cr、Cb本身是8bit的无符号数,而与它们相乘的参数最大值为454,并且“

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/23 22:07:52

Docker搭建Web安全渗透测试靶场

目录 DVWA搭建 一,获取靶场镜像 二,Docker搭建 三,查看靶场 Pikachu搭建 一,获取靶场镜像 二,Docker搭建 三,查看靶场 Sql-labs搭建 一,获取靶场镜像 二,Docker搭建 三&…

作者头像 李华
网站建设 2026/4/5 12:46:04

振动下机械臂鲁棒快控制-EXP-振动控制-机械臂

振动下机械臂鲁棒快控制-EXP-振动控制-机械臂实验目的 摘要: ​ 针对基座振动和负载变化的机械臂实验,设计鲁棒有限时间控制器。在两连杆机械臂实验装置上测试,能快速定位目标位置,抗干扰能力强,为控制实现和实验搭建提…

作者头像 李华
网站建设 2026/4/8 8:33:47

华为OD技术面真题 - Mysql相关 - 4

文章目录简单介绍一下Mysql中BinLog、RedoLog和UndoLogRedoLogBinLogUndoLogMysql中事务为什么需要两阶段提交简单介绍一下两阶段提交的流程什么是读写分离怎样实现读写分离说说Mysql主从复制流程怎么避免主从延迟简单介绍一下Mysql中BinLog、RedoLog和UndoLog RedoLog 重做日…

作者头像 李华
网站建设 2026/3/28 11:54:35

一维(1D)CNN模型下轴承故障诊断(Python,TensorFlow框架下,很容易改为其它模型,解压缩后可以直接运行,无需修改任何目录)

1.数据集使用凯斯西储大学轴承数据集,一共有4种负载下采集的数据,每种负载下有10种 故障状态:三种不同尺寸下的内圈故障、三种不同尺寸下的外圈故障、三种不同尺寸下的滚动体故障和一种正常状态。2.模型(1DCNN)使用数据…

作者头像 李华
网站建设 2026/3/28 23:17:59

RAG上下文构建完全指南:从召回策略到最佳实践,一篇搞定!建议收藏

文章探讨了RAG系统中构建上下文的关键问题,特别是当语义召回的多个chunk来自不同段落时如何选择上下文内容。分析了直接使用召回chunk与召回完整段落两种方案的优缺点,指出应根据文档长度、场景需求选择折中方案。有时为减少token消耗并提升模型准确性&a…

作者头像 李华
网站建设 2026/4/9 18:52:25

AI产品经理深度转型指南!

🔥AI产品经理,最近的市场又开始变得火热了起来。💡大部分公司已经开始从原来的巨量投入,变成盈利的状态了。另外算力成本、数据采集和标注成本也在不断下降📉!AI行业已经开始迎来了新的拐点📈&a…

作者头像 李华