簡體   English   中英

如何使用 Python moviepy 放大視頻?

[英]How to scale up video with Python moviepy?

我正在使用 Python 3.10 和moviepy庫來處理視頻。 我需要在不改變分辨率的情況下放大(縮放)視頻。 有很多使用 moviepy resize 方法的例子,但它只改變分辨率

是否有任何使用 moviepy 縮放視頻的選項,或者您可以建議使用 openCV 的一些解決方案?

為了實現視頻的放大,我們可以結合縮放和裁剪

例子:

from moviepy.editor import VideoFileClip

clip = VideoFileClip("input.mp4")
width, height = clip.size
resized_and_cropped_clip = clip.resize(2).crop(x1=width//2, y1=height//2, x2=width*3//2, y2=height*3//2)
resized_and_cropped_clip.write_videofile("output.mp4")
  • resize(2) - 在每個軸上將視頻大小調整為 2 倍。
  • crop(x1=width//2, y1=height//2, x2=width*3//2, y2=height*3//2) - 在調整大小后的視頻中心周圍裁剪一個具有原始圖像大小的矩形.

或者我們可以先裁剪然后調整大小。
它更有效,但可能會導致框架邊緣的輕微退化:

from moviepy.editor import VideoFileClip

clip = VideoFileClip("input.mp4")
width, height = clip.size
resized_and_cropped_clip = clip.crop(x1=width//4, y1=height//4, x2=width*3//4, y2=height*3//4).resize(2)
resized_and_cropped_clip.write_videofile("output.mp4")

上面的示例顯示放大 x2 倍。
對於其他因素的縮放,我們必須調整x1y1x2y2參數的計算。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM