最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Python生成跑馬燈視頻的完整代碼

 更新時間:2023年11月06日 11:34:53   作者:九狼  
這篇文章主要介紹了如何使用Python生成跑馬燈視頻,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

安裝依賴庫 首先,我們需要安裝opencv-python和Pillow兩個庫。您可以使用以下命令來安裝它們:

pip install opencv-python Pillow

接下來,我們來編寫一個簡單的Python腳本,它可以根據(jù)您提供的文本內(nèi)容生成一個跑馬燈視頻。下面是完整的代碼:

完整代碼

from PIL import Image, ImageDraw, ImageFont
import cv2
import numpy as np
from threading import Thread

def generate_video(text):
    # 視頻分辨率
    width = 1920
    height = 1080

    # 背景顏色和字體顏色
    background_color = (255,0, 0, 255) # 紅色背景
    text_color = (255, 255, 255) # 白色字體

    # 字體大小和類型
    font_size = int(height * 0.60)
    font = ImageFont.truetype('msyh.ttc', font_size)

    # 計算文本大小
    text_size = font.getsize(text)

    # 計算視頻長度
    video_length = int((width + text_size[0]) / 20)

    # 創(chuàng)建視頻寫入器
    fourcc = cv2.VideoWriter_fourcc(*'mp4v')
    video_writer = cv2.VideoWriter(r'E:\Template\word\marquee.mp4', fourcc, 60, (width, height))

    def update_progress(progress):
        print('\r[{}{}] {:.2f}%'.format('#' * int(progress * 10), ' ' * (10 - int(progress * 10)), progress * 100), end='')

    def export_video():
        for i in range(video_length):
            # 創(chuàng)建背景圖像
            img = Image.new('RGB', (width, height), background_color)

            # 添加文本
            draw = ImageDraw.Draw(img)
            x = width - i * 20
            y = int(height / 2 - text_size[1] / 2)
            draw.text((x, y), text, fill=text_color, font=font)

            # 寫入視頻幀
            video_writer.write(cv2.cvtColor(np.array(img), cv2.COLOR_RGB2BGR))

            # 更新進度條
            update_progress(i / video_length)

        # 關(guān)閉視頻寫入器
        video_writer.release()
        print('\n視頻導(dǎo)出完成!')

    # 使用多線程優(yōu)化視頻導(dǎo)出速度
    export_thread = Thread(target=export_video)
    export_thread.start()

generate_video('這里是您要顯示的文本')

效果圖

在上面的代碼中,我們首先定義了一些參數(shù),包括視頻分辨率、背景顏色、字體顏色、字體大小和類型等。然后,我們使用Pillow庫中的ImageFont類來加載字體文件,并計算文本的大小。接著,我們根據(jù)文本大小計算出視頻的長度。

然后,我們創(chuàng)建一個OpenCV的VideoWriter對象,用于將圖像幀寫入視頻文件。在導(dǎo)出視頻的過程中,我們使用Pillow庫中的Image類創(chuàng)建一個純色背景圖像,并使用ImageDraw類在圖像上繪制文本。最后,我們將圖像轉(zhuǎn)換為NumPy數(shù)組,并使用OpenCV將其寫入視頻文件。

為了優(yōu)化視頻導(dǎo)出速度,我們使用了多線程技術(shù)。在導(dǎo)出過程中,我們還實時更新了一個進度條,以便用戶了解導(dǎo)出進度。

運行腳本 在運行上面的腳本之前,您需要確保您的計算機上安裝了微軟雅黑字體(msyh.ttc)。如果您使用的是其他字體文件,您需要將代碼中的

font = ImageFont.truetype('msyh.ttc', font_size)

這一行中的msyh.ttc替換為您使用的字體文件的路徑。

運行此腳本后,它將在E:\Template\word目錄下生成一個名為marquee.mp4的視頻文件。導(dǎo)出過程中,它會在控制臺中輸出進度條。

以上就是使用Python生成跑馬燈視頻的完整代碼的詳細(xì)內(nèi)容,更多關(guān)于Python跑馬燈視頻的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python實現(xiàn)SRT字幕文件合并的實戰(zhàn)教程

    Python實現(xiàn)SRT字幕文件合并的實戰(zhàn)教程

    這篇文章將探索如何通過Python腳本 Srt_Shift.py 來讀取、處理時間戳、合并字幕條目,并將合并后的字幕保存到新的SRT文件中,感興趣的小伙伴可以了解下
    2025-11-11
  • Python3.x中自定義比較函數(shù)

    Python3.x中自定義比較函數(shù)

    這篇文章主要介紹了Python3.x中自定義比較函數(shù),本文給出了自定義對象的比較、字典值value的比較實現(xiàn)方法,需要的朋友可以參考下
    2015-04-04
  • Python實現(xiàn)希爾排序算法的原理與用法實例分析

    Python實現(xiàn)希爾排序算法的原理與用法實例分析

    這篇文章主要介紹了Python實現(xiàn)希爾排序算法,簡單講述了希爾排序的原理并結(jié)合具體實例形式分析了Python希爾排序的具體實現(xiàn)方法與使用技巧,需要的朋友可以參考下
    2017-11-11
  • Python萬字深入內(nèi)存管理講解

    Python萬字深入內(nèi)存管理講解

    內(nèi)存管理是指在程序的運行過程中,分配內(nèi)容和回收內(nèi)存的過程。如果只分配,不回收,電腦上那點內(nèi)存很快就被用光。幸運的是,Python和Java等高級語言會自動管理內(nèi)存的分配和回收
    2022-07-07
  • python里對list中的整數(shù)求平均并排序

    python里對list中的整數(shù)求平均并排序

    本文主要記述了使用Python將list重點整數(shù)求平均值之后在進行排列的過程,并把代碼分享給大家,希望大家能給鼓鼓掌~~~
    2014-09-09
  • Pycharm創(chuàng)建項目時如何自動添加頭部信息

    Pycharm創(chuàng)建項目時如何自動添加頭部信息

    這篇文章主要介紹了Pycharm創(chuàng)建項目時 自動添加頭部信息,需要的朋友可以參考下
    2019-11-11
  • Python 列表的清空方式

    Python 列表的清空方式

    今天小編就為大家分享一篇Python 列表的清空方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • 模型訓(xùn)練時GPU利用率太低的原因及解決

    模型訓(xùn)練時GPU利用率太低的原因及解決

    這篇文章主要介紹了模型訓(xùn)練時GPU利用率太低的原因及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 使用Python編寫腳本來生成隨機密碼

    使用Python編寫腳本來生成隨機密碼

    在數(shù)字化時代,密碼已成為我們保護個人信息和數(shù)據(jù)安全的重要手段,然而,手動創(chuàng)建復(fù)雜且難以猜測的密碼是一項既繁瑣又容易出錯的任務(wù),本文將詳細(xì)介紹如何使用Python編寫腳本來生成隨機密碼,并探討其背后的原理和技術(shù)細(xì)節(jié),需要的朋友可以參考下
    2024-10-10
  • Python編程中非常重要卻又被嚴(yán)重低估的庫decorator

    Python編程中非常重要卻又被嚴(yán)重低估的庫decorator

    今天介紹的是一個已經(jīng)存在十年,但是依舊不紅的庫 decorator,好像很少有人知道他的存在一樣。本篇文章不會過多的向你介紹裝飾器的基本知識,我會默認(rèn)你知道什么是裝飾器,并且懂得如何寫一個簡單的裝飾器
    2021-10-10

最新評論

饶阳县| 巴南区| 泰宁县| 全椒县| 华安县| 中宁县| 安远县| 旅游| 大兴区| 天柱县| 正镶白旗| 新源县| 南丹县| 河曲县| 茶陵县| 正镶白旗| 南皮县| 偃师市| 鄂托克前旗| 永和县| 石台县| 绥江县| 长宁区| 白河县| 延庆县| 南和县| 舒城县| 平顶山市| 土默特左旗| 和政县| 平湖市| 湖州市| 讷河市| 华安县| 南平市| 西丰县| 武强县| 南宫市| 托克托县| 历史| 祁连县|