Python:如何从视频中获取显示纵横比?

标签 python opencv video aspect-ratio

我有一段视频,其中 ffmpeg 告诉我存储纵横比 (SAR) 为 4:3,但显示纵横比 DAR 为 16:9。分辨率为 1440x1080。 有没有机会用 Python-OpenCV 或任何其他包找出 16:9 的 DAR?

最佳答案

存储纵横比 是图像宽度与高度的像素比,可以很容易地从视频文件中计算出来。

显示纵横比是图像在屏幕上显示时的宽度与高度(以厘米或英寸等长度单位表示)的比率,根据像素纵横比和存储空间的组合计算得出纵横比。

SAR × PAR = DAR。

例如,640 × 480 VGA 图像的 SAR 为 640/480 = 4:3,如果在 4:3 显示器上显示 (DAR = 4:3) 具有方形像素,因此 PAR 为 1: 1.相比之下,720 × 576 D-1 PAL 图像的 SAR 为 720/576 = 5:4,但显示在 4:3 显示器上 (DAR = 4:3)。

Source

因此,使用 OpenCV 您可以获得 SAR(像素尺寸比率),但我怀疑您是否可以从中获得恒定显示纵横比(因为它取决于显示)。

你可以做的是当displaying图像,你可以得到window property它有一个标志 WND_PROP_ASPECT_RATIO

关于Python:如何从视频中获取显示纵横比?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45738856/

相关文章:

ios - 是否可以将两个视频文件合并为一个文件,iOS 中的一个屏幕?

python - Pip 安装 Keras 和 TensorFlow 缺少软件包?

python - 如何设置 Margin 或 Offset 标签?

java - 请有人帮助将 opencv 代码转换为 javacv?

python - 在 Python 中将 OpenCV 框架流式传输到 HTML

python - 如何在python中从csv在视频上显示文本

python - 将文件中的一行文本加载到 Kivy 标签

python - 'DataFrame' 对象没有属性 'melt'

ios - 为什么这种旋转方法会给图像带来死角?打开简历

HTML5 视频控件 - 变大?