0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

视频压缩:图像分辨率丢失

星星科技指导员 来源:嵌入式计算设计 作者:Paul Hightower 2022-10-25 15:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

您需要1080p视频图像吗?到达那里需要许多部件,包括昂贵的新镜头,相机,存储等。但是,如果您在路径中有H.264或H.265等压缩,则不会获得您支付的费用。原因如下。

高清录像机通常使用压缩来减小视频剪辑文件大小,以适应小型存储。如果您的相机(源)和录像机、存储或显示器(目标)相距超过 500 英尺,则可能会使用压缩来传输视频。实际上,压缩会损害源图像的许多方面。分辨率是另一种降级效果。

MPEG H.264 和 H.265 压缩编码器分析视频序列中的每个图像,以创建参考帧和差分帧,以满足系统所连接的传输或存储容量的比特率限制。所有框架基本上都分为不同大小的块的马赛克。块大小取决于每个镶嵌区域中影像的细节内容。参考系被划分为宏块。每个宏块由一系列图像样本组成 - 亮度(亮度)和色度(颜色) - 由相机使用正在使用的采样系统(例如4:2:2)提供。块大小为 8×8、16×16 和 32×32。H.265 编码器还可以合并大型低细节区域中相邻的宏块。该工具有助于H.265的50%压缩效率。编码器用于确定块大小以及块是否可以合并的标准是特定编码器的功能,不受任何标准的控制。这就是为什么人们可以看到符合H.264和H.265规范的编码器之间的图像质量差异的部分原因。

然而,图像被划分为宏块,每个块都通过离散余弦变换(DCT)。DCT基本上将宏观块的空间轮廓转换为二维(2D)频率阵列。左上角代表“DC” - 即具有一定亮度的无轮廓区域。右下角表示数组中可以表示的最高频率等值线。DCT 提供了一个系数,在应用此数组的每个元素来重建宏块的原始轮廓时,可以使用该系数。零值不使用 元素。系数可以是任何值,正负值,并且是DCT的输出。

在单维空间中,这种方法在概念上类似于如何将时域信号(波形)转换为频域。使用从方波的傅里叶变换(振幅和相位)得出的系数,可以将原型正弦波阵列相加以重建时域波形(图)。由于离散变换不是连续频谱,因此无论阵列的大小如何,重建中都内置了量化误差(所示的元素提供了256个元素,可用于重建8×8像素阵列的亮度轮廓)。

pYYBAGNXkdSAMno0AAFW03ZTPHI674.png

[图3|使用从方波的傅里叶变换导出的系数,可以将原型正弦波阵列相加以重建时域波形式。

颜色样品(铬和Cb)的处理方式相同。大多数摄像机可提供 4:2:2 采样图像。这样做的困难是图像样本是矩形的(两个亮度样本共享一个色度样本)而不是正方形。为了简化处理,大多数编码器会将传入的 4:2:2 采样转换为 4:2:0 采样,其中 4 个亮度样本共享一个色度样本。这样做时,会出现一些细节损失和颜色偏移。这在直接比较信号时可以观察到。从 4:2:2 转换为 4:2:0 采样可有效地将像素位深度从 20 位减少到 15 位。数字图像分辨率为三维、行数、每行像素数和位深度。虽然每行的像素数和行数保持不变,但位深度减少了,这已被证明可以通过限制动态范围来减少精细的图像细节。也就是说,高对比度区域将遭受最大的细节损失。

编码器(压缩器)还负责管理输出比特率,以确保视频和数据流可以可靠地传输到其最终目的地。一个工具是管理宏块大小。影像的区域(如天空)将没有太多的轮廓,因此 DCT 的许多系数将等于或接近于零。可以使这些区域越大,零系数就越多。长时间的零系数可以很好地压缩而不会丢失数据(熵编码阶段)。零系数越大,可以实现的熵压缩就越多。

门槛

编码器可用的另一个工具是调整值阈值,其中任何低于某个值的绝对幅度的 DCT 系数都设置为零。这里的策略是,解码反向DCT数组中具有小系数的元素将在生成的宏块重建轮廓中引入小误差。由于可用的传输比特率受到限制,编码器可以增加系数阈值,从而产生更多的零值,从而增加熵相位压缩比。

图 4 模拟了 8×8 宏块阵列(64 个元素)中图像系数的直方图。有些系数非常小。编码器可以根据数组系数的值调整阈值以消除数组的元素。这些元素是重建宏块轮廓的小贡献者。当然,随着此阈值的增加,源宏块轮廓与重建轮廓之间的误差也会增加。该效应类似于前面所示的方波的频率到时域重建。也就是说,如果频率从总和中下降,则波纹出现在正方形的顶部,并且上升和下降斜率偏离原始输入。

pYYBAGNXkd-ALdGYAAE3GfspsxE509.png

[图4|8x8 宏块数组中图像系数的直方图。

轮廓因宏块而异,因此效果随轮廓而变化。在具有复杂等值线的宏块中,采样的有效带宽通常会降低(零系数)。从视觉上看,这可以将宏块中的精细细节转换为模糊。但是,阈值设置到什么级别取决于传送视频和数据流所需的总比特率。因此,编码器将根据DCT阶段后图像流的聚合比特率来设置阈值。在任何宏块中,阈值可以消除很少(如果有的话)数组点;在其他情况下,它可能会消除许多。在图5中的图像序列中,中间图像是最左侧图像的重建。在此示例中,请注意背景中的乐谱。在这种情况下,阈值消除了宏块阵列中足够多的高频分量,以支持传输比特率,即乐谱上的细节被抹去(比较区域用红色圈出)。压缩完成后,此信息将永久丢失。

随着宏块大小的增加,重新创建乐谱的轮廓的复杂性也会增加。然而,与打印它的纸张的直流水平和阴影相比,这些元素产生的DCT系数更小。防止这种信息丢失的唯一方法是减小目标距离处宏块的大小,以降低轮廓的复杂性。这可以通过减小宏块本身的大小(32×32到16×16或8×8)或增加放大倍率来实现。增加放大倍率可以减小宏块在图像中覆盖的目标区域。

表示 64 个原始视频像素的 8×8 数组被替换为按阈值滤波的 DCT 系数。MPEG标准定义了如何将这些信息传达给解码器。解码器现在只有要执行的滤波数据,并反转DCT来重新创建像素阵列轮廓。解码后的图像是这些重新创建的轮廓(宏块)缝合在一起的马赛克。在这里,可以将算法应用于解码的马赛克以隐藏接缝。该算法没有标准化,通常是解码器供应商与主观图像质量相关的差异化因素。

在图 5 中,从左到右是原始图像,从渐变宏块的马赛克重新创建的解码图像,以及去块后的相同马赛克,其中马赛克元素的边缘被弄脏。

除了丢失的细节之外,还会对宏块周围的区域进行着色以隐藏边界。此过程进一步修改原始图像数据。当作为单个图像捕获时,修改是永久性的。污迹本身可能因解码器而异,并导致站点之间的精细细节差异,图像捕获与图像捕获。

您如何将所有这些与分辨率丢失联系起来?当反向DCT阵列的高频元件被移除时,边缘细节变得模糊。模糊性可以被认为是随着高频元件被移除以满足比特率限制而逐渐散焦镜头。

但是,哪些细节受到损害?它重要吗?答案是规模问题。在 1080×1920 图像中,我们知道 16×16 宏块像素在图像帧上占的百分比,但更重要的是宏块轮廓的复杂性。复杂性在很大程度上取决于目标范围内宏块的图像区域中的内容。

为了说明比例影响,图6模拟了目标处的微距区域,镜头变焦位置会影响微距区域中的细节。左侧表示任意镜头设置。右图表示以较窄的视场 (FOV) 查看同一区域。如您所见,左图中突出显示的宏块(红色)的复杂性远远大于FOV较小的同一宏块的复杂性。在左图中,阈值的增加将冲刷掉男人眼睛周围的细节。在右图中,同一宏块的轮廓不太复杂。在DCT完成后,它将产生较少的有效系数,因此在解码过程中保留了大部分细节。

files-aHViPTYzODY3JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzU5NzkxY2EwZjAwOTEucG5nJnZlcnNpb249MDAwMCZzaWc9MGZmMGE1MDgzMmU3N2VkNWRmMjkzOWE0ODczNzU3MzI253D

[图6|镜头变焦位置会影响微距区域的细节。

什么是分辨率损失?答案很复杂:它依赖于图像,宏块缩放依赖于比特率。影响哪些细节还取决于宏块中的内容。话虽如此,人们可以将其与宏块大小以及可用比特率和存储容量相关联,可用比特率越低,宏块区域必须在目标图像处表示越小,以保留来自源的原始像素提供的相同或几乎相同的细节。

需要更多的变焦和更好的光学元件来提供解码器侧具有相似细节的图像,这会导致在此过程中图像分辨率损失。分辨率损失是不可恢复的,因为由编码侧的DCT创建的2D元素在编码过程中永远丢失,这些元素被归零以满足比特率限制。

假设一个1080p相机被用来查看500英尺外的物体。如果将 1000 mm 镜头与 25 mm 传感器一起使用,则 FOV 约为 1.5 度。目标范围内覆盖的水平距离约为160英寸(13英尺)。此范围内的每个像素将覆盖 0.08 英寸或大约 0.007 英寸2.8×8 宏块覆盖约 0.43 英寸2.0.007英寸图像的复杂程度是多少2与 0.43 英寸相比2图像区域?显然,宏块覆盖的区域越小,细节损失就越低。相反,为了补偿压缩编码器的细节损失,比特率越低,所需的放大倍率就越大。在指定视频传送路径中包含压缩的系统时,要求必须考虑这些效果。如果魔鬼在细节中,那么细节就很重要。全分辨率单帧照片是分析或证据保留的一个组成部分。随着视频记录仪器(VRI)的最新创新,现在可以捕获未压缩的HD-SDI视频,零色移,量化误差或DCT系数损失。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 显示器
    +关注

    关注

    22

    文章

    5130

    浏览量

    143640
  • 编码器
    +关注

    关注

    45

    文章

    3903

    浏览量

    141437
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ADC分辨率与精度的区别是什么

    简单点说,“精度”是用来描述物理量的准确程度的,而“分辨率”是 用来描述刻度划分的。从定义上看,这两个量应该是风马牛不相及的。(是不是有朋友感到愕然^_^)。 很多卖传感器的JS就是利用这一点
    发表于 12-05 06:24

    镜头分辨率如何匹配工业相机的分辨率

    能被分辨开来的两个物点之间的最小距离,就是镜头的物方分辨率。单位为µm。这只是单纯镜头本身的参数,只反映镜头的解析能力,而和工业相机多少像素无关!它直接反映了,一个理想物点经过镜头成像后,会模糊
    的头像 发表于 11-21 15:43 131次阅读
    镜头<b class='flag-5'>分辨率</b>如何匹配工业相机的<b class='flag-5'>分辨率</b>

    电能质量在线监测装置的暂态记录分辨率如何影响故障类型识别?

    、相位差),低分辨率则会让特征模糊或丢失,直接导致故障类型误判。具体影响可按核心分辨率指标与故障识别逻辑拆解: 一、核心影响逻辑:分辨率决定 “故障特征的可识别度” 不同故障类型(雷击
    的头像 发表于 11-14 16:10 1720次阅读
    电能质量在线监测装置的暂态记录<b class='flag-5'>分辨率</b>如何影响故障类型识别?

    电能质量在线监测装置的暂态记录分辨率对电力系统故障诊断有何影响?

    暂态记录分辨率(核心是采样、时间分辨率、幅值分辨率)是电力系统故障诊断的 “精度基石”—— 分辨率越高,故障诊断的 准确性、完整性、可靠性
    的头像 发表于 11-14 16:09 1436次阅读
    电能质量在线监测装置的暂态记录<b class='flag-5'>分辨率</b>对电力系统故障诊断有何影响?

    智多晶多分辨率HDMI传输Demo概述

    FPGA在图像传输领域扮演着非常重要的角色,FPGA的SerDes在图像传输领域是实现高速串行通信的核心技术,尤其在处理高分辨率、大带宽图像数据时发挥了关键作用,SerDes可提供高达
    的头像 发表于 07-22 11:37 847次阅读
    智多晶多<b class='flag-5'>分辨率</b>HDMI传输Demo概述

    分辨率 vs 噪声 —— ADC的挑战

    设计者常用高分辨率 ADC 以降低最低可量测单位(LSB),提高检测精度。 比如一个 16 位 ADC 在 5V 范围内, LSB ≈ 76 μV ;理想情况下可以检测到微弱电信号。 问题是: 若
    的头像 发表于 06-23 07:38 1473次阅读
    <b class='flag-5'>分辨率</b> vs 噪声 —— ADC的挑战

    如何计算存储示波器的垂直分辨率

    存储示波器的垂直分辨率是指示波器能够分辨的最小电压变化量,它反映了示波器对信号幅度细节的测量能力,通常用位数(bit)来表示,也可通过相关公式换算为具体的电压值。以下为你详细介绍其计算方法:了解关键
    发表于 05-30 14:03

    FX3板是否兼容2k和4k分辨率视频数据流?

    我们希望使用 FPGA 对 FX3 板进行配置,该板提供分辨率为 3264 * 2448(有效分辨率)和 2560 * 1440(有效分辨率)的视频流。 我之前参考了应用说明 AN
    发表于 05-23 06:35

    AN75779中描述的图像传感器接口支持的最大分辨率和帧速率吗?

    AN75779中描述的图像传感器接口支持的最大分辨率和帧速率吗? 我想通过连接 FX3 和 Semtech GS2971(SDI 解串器)来实现 1920 x1080 @ 30 fps 视频输入的 UVC 流设计,无需 FPGA
    发表于 05-14 06:30

    CX3上的AR0245传感器的探头控制分辨率错误怎么解决?

    你好。我正在开发一款使用 AR0234CS 传感器和 CX3( CYUSB3065-BZXI )芯片的相机,并努力获得正确的视频分辨率。 该传感器能够以 120 fps 提供 1920 x
    发表于 05-12 07:02

    是否可以在16位或32位图像上推断单映像-超级分辨率1032的模型?

    无法确定是 单图像超级分辨率 - 1032 模型可以推断为 16 位还是 32 位图像
    发表于 03-06 07:16

    如何提高透镜成像的分辨率

    透镜成像分辨率是指透镜系统能够分辨的最小细节的能力。提高透镜成像分辨率对于许多应用领域,如显微镜、望远镜、相机等,都是至关重要的。以下是一些提高透镜成像分辨率的方法: 1. 减少像差
    的头像 发表于 12-25 16:54 1714次阅读

    如何选择扫描电镜的分辨率

    选择扫描电镜的分辨率需要综合考虑多个因素。首先是研究目的。如果只是需要对样品的大致形貌进行观察,例如查看较大颗粒的分布或者材料表面的宏观缺陷,较低分辨率(如3-10nm)可能就足够了。但如果要观察
    的头像 发表于 12-25 14:29 1195次阅读
    如何选择扫描电镜的<b class='flag-5'>分辨率</b>?

    请问TVP7002具体支持什么格式和分辨率

    TVP7002具体支持什么格式和分辨率? 答: TVP7002 可以采集VGA和YPbPr视频输入。输出支持20位BT1120或者外同步方式。截断数据低位就可以用作16bit模式。具体支持的分辨率
    发表于 12-20 15:46

    基于图像光谱超分辨率的苹果糖度检测

    糖度是衡量苹果品质的关键指标。高光谱成像(由于含有丰富的图谱信息在糖度无损检测中有着广泛的应用前景。光谱超分辨率(SSR)可通过建立映射关系从低光谱维度RGB图像获得对应高光谱维度HSI图像,在
    的头像 发表于 12-09 17:08 995次阅读
    基于<b class='flag-5'>图像</b>光谱超<b class='flag-5'>分辨率</b>的苹果糖度检测