逐行扫描与隔行扫描

article/2025/9/20 6:45:19

标题起得没有技术含量,可能想吸引一下眼球吧。下文中的隔/逐行转换所带来的一系列问题并没有展开来说,文章写得有些虎头蛇尾,点到为止吧,挤出点时间写这么多我也不容易了。欢迎朋友们指正交流。转载请注明来处,谢谢。

    视频画面看起来连续,其实它是由若干静止的画面组成,当每秒轮换出现的静止画面超过一定数量,在人眼看来便是活动顺畅的视频了。每张(帧)静止视频画面又是由若干连续且紧密的扫描线组成,扫描是由左至右,从上到下进行的。

逐行扫描与隔行扫描的恩怨情仇  逐行扫描与隔行扫描的恩怨情仇

图1  一帧画面的组成            图2隔行扫描的组成

    扫描方式分为逐行扫描与隔行扫描两种。逐行扫描顾名思义,就是将画面由扫描线由左至右,从上到下显示出画面(如图1)。隔行扫描主要用于电视显示领域,为了降低传输带宽而采用的方式。这种方式将一副画面(帧)分为两场,即奇数场和偶数场,一帧范围内先传送完奇数场再传送偶数场(如图2)。目前,世界上大多数广播电视都是以隔行扫描方式传送信号,电影、IT行业和少部分高规格广播电视则选择了逐行扫描方式。大多数基于CRT的显示设备是以隔行扫描方式将画面展现出来的,而平板显示器,投影等都是采用逐行扫描显示画面。
    我国电视系统采用的是隔行扫描电视制式,以我国为例,我国采用50场/25帧的PAL制电视系统,每一秒有25张画面(帧),每帧按先后顺序有奇偶两场,那么奇偶两场间的有1/50秒的时间间隔。对于运动物体,摄像机所拍摄的物体位置已经与上一场其所处位置不同。由于视觉暂留效应,人眼将会看到平滑的运动而不是闪动的一场一场的图像。
如图3所示,图3.1为某帧的第一场,图3.2为该帧第二场。

逐行扫描与隔行扫描的恩怨情仇

图3.1 第一场

逐行扫描与隔行扫描的恩怨情仇

图3.2 第二场



    仔细对比这三张图片,我们可以看到,第一场和第二场的时间差造成了两者画面内容有明显的不同。比如,黄色衫运动员的右脚,在画面上第二场比第一场更靠近足球。把第一场和第二场画面不做任何处理直接拼接在一起就成为了完整的一帧画面,如图4所示,画面“毛刺”感很强烈,非常刺眼。

    为什么平时我们看电视时没有发现如此糟糕的现象呢?因为,电视机都是针对隔行扫描系统设计的,它们是以场为单位处理和显示图像的,因此观众不会看到“毛刺”。那为什么部分网络视频会有严重的“毛刺”呢?因为PC是以逐行扫描格式输出图像的,电视信号转换到网络视频再输出到显示设备这整个流程中没有任何过程对图像进行恰当的“隔行转逐行”处理,而只是如图4所示的那样直接将两场画面拼在了一起。在PC行业中,这种将连续的两个场不做任何修改直接结合成为一个帧的方式称为“weave”。那么,要解决“毛刺”画面就得手动在上述流程中添加一个恰当的处理步骤。

逐行扫描与隔行扫描的恩怨情仇

图4 两场直接组合成(weave方式)的全帧画面

 

    首先,如果手头上得到的是一个已经画面被处理“毛刺”了的视频文件,而又想立刻看到正常的画面,这时可以采用更改播放器设置(也就是对解码端进行适当的调整)的方法。以常用免费的Kmplayer中文版播放软件为例。按“F2”进入播放软件的“参数设置”,选择左边树形栏的“视频处理”下的“反交错”项。默认情况下,右边的状态栏内“反交错模式”置于在“不使用”,改变为任意其它模式都能解决“毛刺”画面的问题,我个人推荐效率和质量都比较好的“线性混合”。这样,我们在显示器上看到的图像如图6。

逐行扫描与隔行扫描的恩怨情仇

图5 Kmplayer参数设置

逐行扫描与隔行扫描的恩怨情仇

图6 解码端采用“线性混合”模式对视频进行处理后的画面

    除了调整解码端,还有一种方法是对视频文件进行一次包含去“毛刺”处理的转码。这里以免费软件WinAVI Video Converter(魔影工厂)简体中文版v2.1.0解决方法为例。选择好要转换的文件和目的格式后点击“转换模式”栏后的“高级…”,将“视频调整”中的“柔化”选项改为“是”,这样,转换出来的视频文件不管用什么播放软件不必更改设置就能看到没有“毛刺”的清爽图像了。

逐行扫描与隔行扫描的恩怨情仇

图7 WinAVI 设置


    当然,最好的方式还是对源头进行处理,在隔行扫描的电视节目输出成供PC播放的视频文件时可以对非编软件进行相应设置。比如单位所使用的“喜马拉雅”非编软件,输出文件可以选择对电视和PC都兼容性很好的“DVD-MPEG2”格式,其内置图像处理算法已经包含了恰当的隔行转逐行处理方法了。另外,某些其他品牌非编还具有类似“反交错”的高级选项,选择同样可以输出适合电脑端播放的无“毛刺”清爽视频了。这里先不做详细介绍,如有兴趣,可以与我交流


http://chatgpt.dhexx.cn/article/nWdddHhe.shtml

相关文章

隔行扫描 和 逐行扫描

隔行扫描 每一帧被分割为两场,每一场包含了一帧中所有的奇数扫描行或者偶数扫描行,通常是先扫描奇数行得到第一场,然后扫描偶数行得到第二场。 无论是逐行扫描还是隔行扫描,都有视频文件、传输和显像三个概念,这三个概…

第三方Android 模拟器流畅速度快,适合开发人员

“工欲善其事,必先利其器。” 使用Android模拟器开发和调试应用肯定比使用真机方便。但相比XCODE的IOS模拟器,Android SDK自带的AVD实在不争气,不过一些第三方的模拟器却表现不俗! 12年我开始接触Android开发时候,手头…

Android 内存分析工具集【7】Android Systrace

本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容: 一、Systrace 简介 Systrace 允许你收集和检查设备上运行的所有进程的计时信息。 它包括Androidkernel的一些数据(例如CPU调度程序,IO和APP T…

小米8刷入LineageOS17.1

从来如此,便对吗? —鲁迅 XDA论坛原帖 1.首先解BL锁 详见解BL锁 2.下载资源 下载LineageOS 17.1直接下载最新版就行了 下载MIUI Q based firmware(推荐) 谷歌云盘(不推荐) 下载OPEN GAPPS(推…

如何优雅的使用GMS,为此我做了个食用Google服务的magisk microG懒人模块。

如何优雅的使用GMS,为此我做了个食用Google服务的magisk懒人包。 开端 其实吧,我对google服务的需求并不大,我主要就是在play store下下软件,同步同步通讯录和用Google相机,所以我就在magisk仓库找到了microG体验了一…

Android开发百科全书①

友情提示根据目录 快速查找问题 %1$s %1$d Android string 1、整型&#xff0c;比如“我今年23岁了”&#xff0c;这个23是整型的。在string.xml中可以这样写&#xff0c;<string name"old">我今年%1$d岁了</string> 在程序中&#xff0c;使用 [java] …

【exthmui】【红米9】红米9类原生系统 exthmui 使用体验

ExTHmui 前言特性简洁 清爽流畅亮点 不足后台Gapps时不时系统界面无响应屏幕闪烁亮度终端 后记 前言 设备&#xff1a;红米9 464 exthmui版本&#xff1a;见下图 底包&#xff1a;V12.0.1.0.RJCMIXM ⚠本文所述的一切内容均基于本人实际使用体验&#xff0c;不吹不黑&#xff…

安卓玩机搞机-----没有第三方包 刷写第三方各种GSI系统 体验非官方系统

很多安卓友友热衷与刷这些各种第三方包体验。但有个别机型第三方资源较少。而且有的机型要体验非官方系统却没有对应系统的第三方包。那可以体验下刷gsi系统来畅玩。今天的帖子就聊聊GSI系统的各种刷写操作和对应的故障解析、 &#x1f494;&#x1f494;&#x1f494;&#x…

Windows 10 安装安卓子系统 WSA(Magisk/KernelSU)使用 WSA 工具箱安装 APK

from https://blog.zhjh.top/archives/XokySA7Rc1pkVvnxAEP5E 前提是系统为 Windows 10 22H2 10.0.19045.2311 或更高版本&#xff0c;尽量新。 步骤 使用 WSAPatch 和 MagiskOnWSALocal 安装 WSA 在 Microsoft Store 中安装 Ubuntu LTS&#xff08;或你喜欢的发行版&#xf…

AndroidThings之基础二 设计理念

转载自&#xff1a;https://blog.csdn.net/tangxiaoyin/article/details/75273491 (PS:目前AndroidThings已经走向消费级别&#xff0c;发布正式版本1.0版&#xff0c;开发板推荐树莓派3B) 【CSDN 编者按】Android Things 是 Google 在 2016 年底推出的基于物联网的操作系统…

Android 9.0 TV版导入GMS组件以及Google Play

一、Android P之后的差异 参照phone版本整理出一版适合电视或者电视盒子相关GMS框架导入方法 可查看GMS P Initial Release Notes 了解&#xff1a; 1、P上增加了一些core app &#xff1a;AndroidPlatformServices、GoogleRestore、Device Health Services (Turbo) 2、Goo…

Android 玩机指南详细汇总(刷机、root、Xposed等)

点击上方“程序员大咖”&#xff0c;选择“置顶公众号” 关键时刻&#xff0c;第一时间送达&#xff01; 目录 Android 系统简介Android 系统版本Android API 等级基于原生安卓的定制系统第三方 ROMOEM 定制 ROM无处不在的 Android 系统任何人都可以免费为安卓系统开发应用安卓…

【LineageOS】编译安装及windows下推送更新记录

【LineageOS】编译安装及windows下推送更新记录 背景说明编译安装GApps 安装windows下推送更新 背景说明 AOSP装谷歌服务&#xff0c;遇到很多问题&#xff0c;于是选择其它的rom&#xff0c;之前装了piexlExperience没有成功&#xff0c;后来又换了LineageOS&#xff0c;终于…

iOS 和 Android 的后台推送原理各是什么?有什么区别?

2019独角兽企业重金招聘Python工程师标准>>> 郑紫阳&#xff0c;ziyangzhihu.com 炉门、尘规、陈汤姆 等人赞同 • 收录于 知乎周刊 iOS 系统的推送&#xff08;APNS&#xff0c;即 Apple Push Notification Service&#xff09;依托一个或几个系统常驻进程运作&…

android 版本选择,谷歌服务框架版本如何选择 我该下载哪个版本解析

谷歌服务框架版本如何选择 我该下载哪个版本解析 来源&#xff1a;www.18183.com作者&#xff1a;似水流年时间&#xff1a;2017-06-29 谷歌服务框架版本如何选择呢&#xff1f;本文小编为您带来谷歌服务框架版本如何选择 我该下载哪个版本解析。 谷歌服务框架版本如何选择呢?…

GAPPS版本区别

细雨灯花落&#xff0c;泪眼若为容。 Open Gapps GAPPS是谷歌软件服务集合&#xff08;Google Apps&#xff09;的缩写形式。由于移动设备生产厂商的某些限制&#xff0c;一些运行Android系统的设备没有安装谷歌服务框架。这类设备在无法运行一些基于谷歌服务框架开发的应用软…

线性代数(矩阵和向量)

目录 矩阵和向量加法和标量乘法矩阵向量乘法矩阵乘法矩阵乘法特征逆和转置 矩阵和向量 矩阵&#xff1a; 下图为一个R(4x2)和一个R(2x3)的矩阵 矩阵优点&#xff1a;快速整理&#xff0c;索引和访问大量数据。 向量&#xff1a; 下图为一个R(4)的向量 加法和标量乘法 加…

线性代数(7):矩阵的应用

一、简化矩阵 &#xff08;1&#xff09;阶梯形矩阵 1.1.1 定义 a. 如果矩阵有零行&#xff08; 元素全为 0 的行 &#xff09;&#xff0c; 零行 全在下面&#xff1b; b. 各非零行的第一个非零元素列标随行标增大而增大&#xff1b; 1.1.2 展示 下图两个矩阵都是阶梯矩阵 …

线性代数之矩阵

矩阵&#xff08;Matrix&#xff09;是一个按照长方阵列排列的复数或实数集合&#xff0c;矩阵是许多学科中常用的数学工具。 1 矩阵运算 m*n个数aij(i1,2,...,m;j1,2,...,n)排成m行n列的矩形数表&#xff1a; 称为m*n矩阵&#xff0c;一般记为Am*n。 元素是实数就是实矩阵&…

线性代数2:矩阵(1)

目录 矩阵&#xff1a; 矩阵的定义&#xff1a; 0矩阵 方阵 同型矩阵&#xff1a; 矩阵相等的判定条件 矩阵的三则运算&#xff1a; 乘法的适用条件 矩阵与常数的乘法&#xff1a; 矩阵的乘法&#xff1a; 矩阵的乘法法则&#xff1a; Note1&#xff1a; Note2&…