欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python做圖像處理及視頻音頻文件分離和合成功能

 更新時(shí)間:2020年11月24日 11:37:44   作者:陸壹爵爺  
這篇文章主要介紹了Python做圖像處理及視頻音頻文件分離和合成功能,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、簡(jiǎn)介

Imageio是一個(gè)Python庫(kù),提供了一個(gè)簡(jiǎn)單的界面來讀取和寫入各種圖像數(shù)據(jù),包括動(dòng)畫圖像,視頻,體積數(shù)據(jù)和科學(xué)格式。它是跨平臺(tái)的,運(yùn)行在Python 2.7和3.4+上,易于安裝。

作為用戶,您只需要記住一些功能:

  • imread()和imwrite() - 用于單個(gè)圖像
  • mimread()和mimwrite() - 用于圖像系列(動(dòng)畫)
  • volread()和volwrite() - 用于體積圖像數(shù)據(jù)
  • get_reader()和get_writer() - 用于更多控制(例如流式傳輸)
  • 有關(guān)更多信息,請(qǐng)參閱文檔。

通過一系列功能簡(jiǎn)單的界面。
使用conda或pip 易于安裝。
幾乎沒有依賴(只有Numpy和Pillow)。
純Python,運(yùn)行在Python 2.7,3.4 +和Pypy上
跨平臺(tái),在Windows,Linux,OS X上運(yùn)行(Raspberry Pi計(jì)劃)
許多支持的格式。
可以讀取文件名,文件對(duì)象,zip文件,http / ftp和原始字節(jié)。
使用插件輕松擴(kuò)展。
通過許多測(cè)試和持​​續(xù)集成來維護(hù)代碼質(zhì)量。

Imageio有一個(gè)相對(duì)簡(jiǎn)單的核心,為不同的文件格式提供通用接口。這個(gè)核心負(fù)責(zé)從不同的源(如http)讀取,并為插件公開一個(gè)簡(jiǎn)單的API來訪問原始數(shù)據(jù)。所有文件格式都在插件中實(shí)現(xiàn)??梢暂p松注冊(cè)其他插件。

一些插件依賴于外部庫(kù)(例如ffmpeg)。Imageio提供了一種通過一個(gè)函數(shù)調(diào)用下載這些函數(shù)的方法,并在需要時(shí)提示用戶這樣做。下載緩存在您的appdata目錄中,這可以保持imageio輕松和可擴(kuò)展。

Imageio提供各種圖像格式,包括科學(xué)格式。任何有關(guān)實(shí)現(xiàn)更多格式的幫助都非常受歡迎!

代碼庫(kù)遵循PEP8樣式指南的(子集)。我們力求最大的測(cè)試覆蓋率(核心為100%,每個(gè)插件為> 95%)。

二、代碼總結(jié):

import subprocess
import imageio
import os
from PIL import Image

def video2mp3(file_name):
 """
 將視頻轉(zhuǎn)為音頻
 :param file_name: 傳入視頻文件的路徑
 :return:
 """
 outfile_name = file_name.split('.')[0] + '.mp3'
 subprocess.call('ffmpeg -i ' + file_name
     + ' -f mp3 ' + outfile_name, shell=True)

def video_add_mp3(file_name, mp3_file):
 """
  視頻添加音頻
 :param file_name: 傳入視頻文件的路徑
 :param mp3_file: 傳入音頻文件的路徑
 :return:
 """
 outfile_name = file_name.split('.')[0] + '-txt.mp4'
 subprocess.call('ffmpeg -i ' + file_name
     + ' -i ' + mp3_file + ' -strict -2 -f mp4 '
     + outfile_name, shell=True)

def compose_gif(file_path):
 """
  將靜態(tài)圖片轉(zhuǎn)為gif動(dòng)圖
  :param file_path: 傳入圖片的目錄的路徑
  :return:
 """
 img_paths = sorted([int(p[3:-4]) for p in os.listdir(file_path) if os.path.splitext(p)[1] == ".png"])
 img_paths = img_paths[:int(len(img_paths) / 3.6)]
 gif_images = []
 for path in img_paths:
  gif_images.append(imageio.imread('{0}/out{1}.png'.format(file_path, path)))
 imageio.mimsave("test.gif", gif_images, fps=30)

def compress_png(file_path):
 """
  將gif動(dòng)圖轉(zhuǎn)為每張靜態(tài)圖片
  :param file_path: 傳入gif文件的路徑
  :return:
 """
 img_paths = [p for p in os.listdir(file_path) if os.path.splitext(p)[1] == ".png"]
 for filename in img_paths:
  with Image.open('{0}/{1}'.format(file_path, filename)) as im:
   width, height = im.size
   new_width = 150
   new_height = int(new_width * height * 1.0 / width)
   resized_im = im.resize((new_width, new_height))
   output_filename = filename
   resized_im.save('{0}/{1}'.format(file_path, output_filename))

if __name__ == '__main__':
 # video2mp3(file_name='data-a.mp4')
 video_add_mp3(file_name='swap-data-a.mp4', mp3_file='data-a.mp3')
 # compose_gif(file_path='merged')
 # compress_png(file_path='merged')

到此這篇關(guān)于Python做圖像處理及視頻音頻文件分離和合成功能的文章就介紹到這了,更多相關(guān)python視頻音頻分離和合成內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python numpy ndarray屬性,索引,切片

    Python numpy ndarray屬性,索引,切片

    這篇文章主要介紹了Python numpy ndarray屬性,索引,切片,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • python判斷完全平方數(shù)的方法

    python判斷完全平方數(shù)的方法

    今天小編就為大家分享一篇python判斷完全平方數(shù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • 一文帶你精通Python中*args和**kwargs的應(yīng)用技巧

    一文帶你精通Python中*args和**kwargs的應(yīng)用技巧

    如果能在Python中創(chuàng)建適應(yīng)不同場(chǎng)景的函數(shù),而無需每次都重寫它們,會(huì)使得操作簡(jiǎn)潔方便,這就是*args和**kwargs的魔力所在,下面我們就來看看它們的具體一些應(yīng)用技巧吧
    2024-03-03
  • python常用數(shù)據(jù)重復(fù)項(xiàng)處理方法

    python常用數(shù)據(jù)重復(fù)項(xiàng)處理方法

    在本篇文章里小編給大家整理的是關(guān)于python常用數(shù)據(jù)重復(fù)項(xiàng)處理方法,需要的朋友們參考下。
    2019-11-11
  • Python簡(jiǎn)易圖形界面庫(kù)easygui對(duì)話框整理大全

    Python簡(jiǎn)易圖形界面庫(kù)easygui對(duì)話框整理大全

    這篇文章主要給大家介紹了關(guān)于Python簡(jiǎn)易圖形界面庫(kù)easygui對(duì)話框的相關(guān)資料,EasyGUI是一個(gè)用Python編寫的非常簡(jiǎn)易的GUI編程模塊,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • pymongo中聚合查詢的使用方法

    pymongo中聚合查詢的使用方法

    這篇文章主要給大家介紹了關(guān)于pymongo中聚合查詢的使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用pymongo具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Python使用Selenium實(shí)現(xiàn)瀏覽器打印預(yù)覽功能

    Python使用Selenium實(shí)現(xiàn)瀏覽器打印預(yù)覽功能

    在Web開發(fā)中,打印預(yù)覽是一個(gè)常見的功能需求,通過打印預(yù)覽,我們可以預(yù)覽和調(diào)整網(wǎng)頁的打印布局、樣式和內(nèi)容,Python的Selenium庫(kù)是一個(gè)強(qiáng)大的工具,可以自動(dòng)化瀏覽器操作,包括打印預(yù)覽,本文將介紹如何使用Python Selenium庫(kù)來實(shí)現(xiàn)瀏覽器的打印預(yù)覽功能
    2023-11-11
  • 使用Python將Mysql的查詢數(shù)據(jù)導(dǎo)出到文件的方法

    使用Python將Mysql的查詢數(shù)據(jù)導(dǎo)出到文件的方法

    今天小編就為大家分享一篇關(guān)于使用Python將Mysql的查詢數(shù)據(jù)導(dǎo)出到文件的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 教你使用一行Python代碼玩遍童年的小游戲

    教你使用一行Python代碼玩遍童年的小游戲

    這篇文章主要介紹了一行Python代碼玩遍童年的小游戲,幫助大家重回童年快樂時(shí)光,代碼簡(jiǎn)單易懂,感興趣的朋友一起學(xué)習(xí)下吧
    2021-08-08
  • Python接收Gmail新郵件并發(fā)送到gtalk的方法

    Python接收Gmail新郵件并發(fā)送到gtalk的方法

    這篇文章主要介紹了Python接收Gmail新郵件并發(fā)送到gtalk的方法,實(shí)例分析了Python操作郵件的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03

最新評(píng)論