STM32H7之JPEG编解码基础知识

硬件框图

在这里插入图片描述
通过这个框图,我们可以得到如下信息:
◆ JPEG 硬件外设支持编码和解码
并且对于输入数据和输出数据都有 FIFO 支持。
◆ jpeg_hclk
为 JPEG 内核和寄存器提供时钟。
◆ jpeg_it
JPEG 全局中断输出。
◆ jpeg_ift_trg
JPEG 输入 FIFO 阈值信号,可触发 MDMA。
◆ jpeg_ifnf_trg
JPEG 输入 FIFO 未满信号,可触发 MDMA。
◆ jpeg_oft_trg
JPEG 输出 FIFO 阀值信号,可触发 MDMA。
◆ jpeg_ofne_trg
JPEG 输出 FIFO 非空信号,可触发 MDMA。
◆ jpeg_oec_trg
JPEG 转换结束信号,可触发 MDMA。

TCbCR颜色格式

(注,硬件 JPEG 解码后输出的图像格式是 YCbCr,所以有必要了解下)
正如几何上用坐标空间来描述坐标集,而色彩空间用数学方式来描述颜色集。常见的 3 种色彩模型是RGB,CMYK 和 YUV。
YCbCr 是 YUV 经过缩放和修改的翻版,只是在表示方法上不同。其中 Y 是指亮度分量,Cb 指蓝色色度分量,而 Cr 指红色色度分量。人眼对视频的 Y 分量更敏感,因此通过对色度分量进行子采样来减少色度分量后,人眼察觉不到的图像质量的变化。
在 YUV 家族中,YCbCr 是在计算机系统中应用最多的成员,其应用领域广泛,JPEG、MPEG 均采用此格式。一般人们所讲的 YUV 大多是指 YCbCr。

YCbCr采样格式

YCbCr 有许多取样格式,如 YCbCr 4:4:4,YCbCr 4:2:2,YCbCr 4:1:1 和 YCbCr 4:2:0。
◆ 4:2:0
表示每 4 个像素有 4 个亮度分量,2 个色度分量 (YYYYCbCr),仅采样奇数扫描线,是便携式视频
设备(MPEG-4)以及电视会议(H.263)最常用格式。
◆ 4:2:2
表示每 4 个像素有 4 个亮度分量,4 个色度分量(YYYYCbCrCbCr),是 DVD、数字电视、HDTV
以及其它消费类视频设备的最常用格式。
◆ 4:4:4
表示全像素点阵(YYYYCbCrCbCrCbCrCbCr),用于高质量视频应用、演播室以及专业视频产品。
具体的采样方式如下图所示,以 8 个像素为一个单元进行采样:
在这里插入图片描述由上面的截图可以了解到:
4:4:4 表示 Y 通道,Cb+Cr 通道全部采样。
4:2:2 表示 Y 通道全部采样,而 Cb+Cr 通道两个像素为一组,统一采用第 1 个颜色值。
4:2:0 表示 Y 通道全部采样,而 Cb+Cr 通道四个像素为一组,统一采用第 1 个颜色值。
下面是整体效果,方便大家更好的理解:
在这里插入图片描述

YCbCr的优势

RGB 信号作为存储和传输的效率不高,因为它们具有大量冗余信息。而使用 YCbCr 可以丢弃一些信息以减少带宽,因为人的肉眼对视频的Y分量更敏感,因此通过对色度分量进行子采样来减少色度分量后,肉眼察觉不到的图像质量的变化。了解这种人为缺点,NTSC 和 PAL 等标准大大降低了色度通道的带宽。
在这里插入图片描述

驱动设计框架

先简单理解一下,等真的用到再去对具体的代码进行查看。
在这里插入图片描述

  • 19
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STM32JPEG是一种基于STM32微控制器的图像压缩库。它可以用于将高分辨率图像数据转换为更小的JPEG格式,以节省存储空间或传输带宽。 STM32JPEG库提供了一种简单而高效的方式来实现图像压缩。它通过使用基于硬件的JPEG编码器来实现快速的压缩过程。硬件加速使得图像压缩速度更快,从而提高了性能。 使用STM32JPEG库进行压缩的流程如下:首先,我们需要将原始图像数据加载到内存中,并使用适当的配置参数初始化JPEG编码器。然后,我们可以调用STM32JPEG库提供的API函数来启动压缩过程。在压缩过程中,库将逐行读取图像数据,并使用JPEG算法进行处理和压缩。最后,压缩后的数据将被写入指定的存储介质中。 使用STM32JPEG库进行图像压缩的好处是,它提供了高度可定制化的选项,使用户能够根据具体需求进行配置。我们可以调整压缩质量、压缩比例和压缩模式等参数,以获得最佳的压缩效果。 此外,STM32JPEG库还提供了在压缩过程中监控压缩进度的功能。我们可以通过监测回调函数来获取当前压缩的进度信息,从而实时了解压缩过程。 总结来说,STM32JPEG是一款适用于STM32微控制器的图像压缩库,通过硬件加速和高度可定制化的选项,它可以实现快速而高效的图像压缩,为嵌入式系统提供了节省存储空间和传输带宽的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值