Grayscale JPEG Encoding

在图 271 中,您可以看到用于灰度 JPEG 编码的 VisualApplets 示例流程的顶层设计,其中包含模块 Implementation 和 Parameters。在此顶层设计中,您还可以找到有关设计中的进程数量以及示例实现中使用的设计时钟频率的信息。

顶层设计结构

图 271. 顶层设计结构


通过右键单击 Parameters 框,您可以设置小程序参数,例如图像尺寸、JPEG Quality 或 Pixel Format。您可以在硬件中执行小程序期间动态设置这些参数。 JPEG 压缩在模块 Implementation 中实现。基本实现结构请参见图 272。

使用 JPEG_Encoder 算子实现灰度 JPEG 压缩的基本实现

图 272. 使用算子 JPEG_Encoder 进行灰度 JPEG 压缩的基本实现


最大图像尺寸为 5120x5120 像素的 8 位灰度图像从相机接口直接转发至算子 JPEG_Encoder。与先前的 JPEG 算子 JPEG_Encoder_Gray 相比,无需外部 8x8 像素块排序模块。右键点击算子,您可以设置图像宽度和高度等参数,或者选择包含或排除 JPEG 头。JPEG 压缩的 Quality 可通过两种选项进行设置:您可以使用参数 Quality 以百分比形式设置压缩 Quality,或者通过设置矩阵参数 LuminanceQuantization 的值来单独配置量化表值。作为替代方案,您可以通过右键点击顶层设计中的模块 Parameters 并使用相应的转换和参考算子来修改这些参数(参见图 272)。然后,压缩后的 JPEG 数据流通过 DMA1_JPEG 传输至 PC。通过 DMA0_Original,用户可以将原始输入图像传输至 PC。这可以通过将顶层设计中模块 ImageOutput 的 Properties 库中的参数 Parameters(见上文)设置为 "Enable" 来实现。禁用通过 DMA 传输原始图像可最大程度减少 DMA 负载。在设计中,用户可以选择传输由图案生成器生成的图像,而不是由相机采集的图像。这可以通过选择 Source Selector 算子 EnablePattern Generator 的输入源或者在顶层设计的模块 Parameters 中设置相应的参数 TestImageGenerator 来完成。