教你使用Python提取視頻中的美女圖片
前言
人類都是視覺動物,不管是男生還是女生看到漂亮的小姐姐、小哥哥就想截圖保存下來??墒墙貓D會對畫質(zhì)會產(chǎn)生損耗,截取的
畫面不規(guī)整,像素不高等問題。

用 Python 寫一個逐幀無損保存視頻畫面的小腳本大致可以分為三個步驟:
1.在 cmd 中使用 you-get 下載視頻
2.OpenCV 讀取并處理視頻
3.將視頻畫面保存為圖片
安裝模塊
1.you-get 模塊用于下載視頻,它需要 ffmpeg 模塊配合使用。
pip3 install you-get
2.windows 的 ffmpeg 的下載地址是
[https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-essentials.7z],解壓后將 bin 文件加入環(huán)境變量。

3.python-OpenCV 模塊用來讀取視頻幀,并保存成圖片。
pip3 install opencv-python
you-get
you-get 是一個開源的視頻下載軟件,支持 80+ 網(wǎng)站視頻的下載。只需要一行代碼就可以了。
在 cmd 中運行下面的命令下載視頻:
you-get -o 下載后保存文件的目錄 視頻的 url 地址

如果報 ‘you-get’ 不是內(nèi)部或外部命令,也不是可運行的程序 問題,可以運行
pip show you-get
將 Location 的值的 site-packages 改成 Scripts 加入到環(huán)境變量,如:c:\users\xxx\appdata\roaming\python\python39\site-
packages 改成c:\users\xxx\appdata\roaming\python\python39\Scripts。
OpenCV
磨刀不誤砍柴工, 在開發(fā)之前先來認識一下 OpenCV。它的全稱是 Open Source Computer Vision Library,是一個可以跨平臺的
計算機視覺庫 ,OpenCV-Python 是 OpenCV 的 Python API。
它集合了 C++ 和 Python 的最優(yōu)特征,用于支持 Python 解決計算機視覺的問題。OpenCV 可以用于人機互動、圖像分割、人臉
識別等等領(lǐng)域。
在處理視頻按幀保存圖片的時候需要用到以下幾個函數(shù):
1.cap = cv2.VideoCapture("視頻地址"):參數(shù)是視頻的地址表示讀取一個視頻文件。
2.cap = cv2.VideoCapture(0):參數(shù)是 0 表示打開電腦上的攝像頭。
3.cap.isOpened():
返回 true 和 false 表示是否成功。
4.success, frame = cap.read():這個函數(shù)就是 OpenCV 讀取視頻的下一幀,第一個返回值表示是否讀取成功,第二個返回值就是返回讀取到的視頻幀。
5.cv2.imencode():將上面的視頻幀按照圖片編碼后緩存到內(nèi)存中,調(diào)用 tofile() 函數(shù)保存成文件。
話不多說,用上面的函數(shù)寫一個截取視頻畫面的 Python 程序
import cv2
import os
image_base_path = "D:\\video\\images\\";
def get_images(video_path):
frame_times = -1;
fileName = video_path.split("\\")[-1:][0].split('.')[0]
image_out_path = image_base_path + fileName
if not os.path.exists(image_out_path):
os.makedirs(image_out_path)
cap = cv2.VideoCapture(video_path)
while cap.isOpened():
frame_times = frame_times + 1
success, frame = cap.read()
if not success:
break;
cv2.imencode('.jpg', frame)[1].tofile(image_out_path + "\\" + str(frame_times) + ".jpg")
if __name__ == '__main__':
get_images('D:\\vedio\\?溫柔旗袍中國風?
結(jié)束
代碼和教程給大家放在上面,喜歡的都可以動手操作起來。教程很簡單,非常適合大家拿來練手。
到此這篇關(guān)于教你使用Python提取視頻中的美女圖片的文章就介紹到這了,更多相關(guān)python提取視頻圖片內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實現(xiàn)帶聲音的摩斯碼翻譯實現(xiàn)方法
這篇文章主要介紹了python實現(xiàn)帶聲音的摩斯碼翻譯實現(xiàn)方法,涉及pygame模塊操作及摩斯碼實現(xiàn)技巧,需要的朋友可以參考下2015-05-05
Python PyMySQL操作MySQL數(shù)據(jù)庫的方法詳解
PyMySQL是一個用于Python編程語言的純Python MySQL客戶端庫,它遵循Python標準DB API接口,并提供了許多方便的功能,本文就來和大家簡單介紹一下吧2023-05-05
Python基礎(chǔ)學(xué)習(xí)之函數(shù)方法實例詳解
這篇文章主要介紹了Python基礎(chǔ)學(xué)習(xí)之函數(shù)方法,結(jié)合實例形式分析了Python函數(shù)方法的定義、參數(shù)、復(fù)用和繼承相關(guān)操作技巧,需要的朋友可以參考下2019-06-06
Python使用MYSQLDB實現(xiàn)從數(shù)據(jù)庫中導(dǎo)出XML文件的方法
這篇文章主要介紹了Python使用MYSQLDB實現(xiàn)從數(shù)據(jù)庫中導(dǎo)出XML文件的方法,涉及Python使用MYSQLDB操作數(shù)據(jù)庫及XML文件的相關(guān)技巧,需要的朋友可以參考下2015-05-05

