国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

cv2讀取視頻-并保存圖像或視頻

這篇具有很好參考價值的文章主要介紹了cv2讀取視頻-并保存圖像或視頻。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


title: cv2讀取視頻,并保存圖像或視頻 date: 2022-07-02 18:10:24 tags: opencv

@TOC文章來源地址http://www.zghlxwxcb.cn/news/detail-512780.html

cv2讀取視頻,并保存圖像或視頻

cv2讀取視頻的一般流程

  1. 獲取視頻 cap = cv2.VideoCapture()
  2. 判斷獲取的視頻是否成功,成功讀取視頻對象則返回True。 cap.isOpened()
  3. 按幀讀取 ret, frame = cap.read()
  4. 展示圖像 cv2.waitKey(1)

讀取本地文件視頻并展示

from turtle import color
import numpy as np
import cv2 as cv
import cv2


def read_video_show(videoName):
    '''
    opencv 讀取視頻

    cv2.VideoCapture(filename) #讀取本地視頻
    cv2.VideoCapture(index) #獲取攝像頭
    '''

    #1. 讀取視頻
    cap = cv2.VideoCapture(videoName) #若參數(shù)為0, 則是本地攝像頭
    
    #2. 判斷讀的視頻流是否成功
    while cap.isOpened(): #當(dāng)成功時
        
        #3. 獲取每幀圖像
        ret, frame = cap.read() #若獲取成功,ret為True,否則為False;frame是圖像
        
        if ret: #成功獲取圖像
            cv2.imshow('frame', frame) #兩個參數(shù),一個是展示畫面的名字,一個是像素內(nèi)容
            key = cv2.waitKey(25) # 停留25ms,當(dāng)為0的時候則堵塞在第一幀不會繼續(xù)下去
            if key == ord(' ') or key == ord('q'): #當(dāng)鍵入空格或者q時,則退出while循環(huán)
                break

    cap.release() #釋放視頻
    cv2.destroyAllWindows() #釋放所有顯示圖像的窗口

def read_video_save(videoName):

    '''
    opencv 保存視頻

    cv2.VideoWriter(filename, fourcc, fps, frameSize, [isColor])
    '''

    cap = cv2.VideoCapture(videoName)

    #視頻屬性
    width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) #獲取原視頻的寬
    height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) #獲取原視頻的搞
    fps = int(cap.get(cv2.CAP_PROP_FPS)) #幀率
    fourcc = int(cap.get(cv2.CAP_PROP_FOURCC)) #視頻的編碼

    #視頻對象的輸出
    out = cv2.VideoWriter('video_output.avi', fourcc, 20.0, (width, height))
    # out = cv2.VideoWriter('out.avi', fourcc, 20.0, (width, height))
    
    while cap.isOpened():
        ret, frame = cap.read()
        cv2.imshow('fame', frame)
        key = cv2.waitKey(25)

        out.write(frame) #寫入視頻

        if key == ord('q'):
            
            break
    cap.release() #釋放視頻
    out.release()
    cv2.destroyAllWindows() #釋放所有的顯示窗口

def read_video_write(videoName):
    '''
    讀取視頻并保存截幀

    cv2.imwrite(filename, frame)
    '''
    cap = cv2.VideoCapture(videoName)

    #視頻屬性
    width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) #獲取原視頻的寬
    height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) #獲取原視頻的搞
    fps = int(cap.get(cv2.CAP_PROP_FPS)) #幀率
    fourcc = int(cap.get(cv2.CAP_PROP_FOURCC)) #視頻的編碼

    n, i = 0, 0 #總的幀數(shù),保存的第i張圖片
    
    while cap.isOpened():

        ret, frame = cap.read()
        
        if ret:
            n += 1
            if n % fps == 0:
                i += 1
                filename = '{:0>4}.jpg'.format(str(i))
               
                cv2.imwrite(filename, frame) #存入快照
                cv2.imshow('frame', frame)
                key = cv2.waitKey(25)
                if key == ord('q'):
                    break
    cap.release()
    cv2.destroyAllWindows()

到了這里,關(guān)于cv2讀取視頻-并保存圖像或視頻的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Python使用CV2庫捕獲和保存攝像頭視頻

    Python使用CV2庫捕獲和保存攝像頭視頻

    關(guān)于cv2庫的安裝和使用基礎(chǔ)可參見https://blog.csdn.net/cnds123/article/details/126547307 特別提示:CV2指的是OpenCV2(Open Source Computer Vision Library),安裝的時候是 opencv_python,但在導(dǎo)入的時候采用 import cv2。 學(xué)習(xí)本文需要你的計算機有攝像頭,筆記本一般內(nèi)置有攝像頭,若是臺式機可以連

    2024年02月16日
    瀏覽(19)
  • opencv-python[cv2]讀取中文路徑圖像

    opencv-python[cv2]讀取中文路徑圖像

    隨著AI人工智能的不斷發(fā)展,圖像處理這門技術(shù)也越來越重要,很多學(xué)校本科都開啟了圖像處理這門課程,學(xué)習(xí)圖像處理開發(fā),自然就繞不開opencv-python[ cv2 ]這個由intel主導(dǎo)的開源庫。 cv2 是指OpenCV的Python接口庫。 OpenCV (Open Source Computer Vision Library)是一個開源的計算機視覺庫

    2024年02月06日
    瀏覽(41)
  • 使用OpenCV的cv2.imread函數(shù)讀取圖像介紹

    在計算機視覺和圖像處理應(yīng)用中,讀取圖像是一個常見的操作。OpenCV是一個廣泛使用的圖像處理庫,它提供了 cv2.imread 函數(shù),用于讀取圖像。本文將詳細(xì)介紹如何使用 cv2.imread 函數(shù),包括參數(shù)和用法。 首先,確保你已經(jīng)安裝了OpenCV庫。你可以使用以下命令來安裝OpenCV(如果尚

    2024年02月05日
    瀏覽(35)
  • Python使用CV2庫捕獲、播放和保存攝像頭視頻

    Python使用CV2庫捕獲、播放和保存攝像頭視頻

    關(guān)于cv2庫的安裝和使用基礎(chǔ)可參見https://blog.csdn.net/cnds123/article/details/126547307 特別提示:CV2指的是OpenCV2(Open Source Computer Vision Library),安裝的時候是 opencv_python,但在導(dǎo)入的時候采用 import cv2。 學(xué)習(xí)本文需要你的計算機有攝像頭,筆記本一般內(nèi)置有攝像頭,若是臺式機可以連

    2024年02月03日
    瀏覽(20)
  • 關(guān)于opencv中cv2.imread函數(shù)讀取的圖像shape問題

    關(guān)于opencv中cv2.imread函數(shù)讀取的圖像shape問題

    圖像坐標(biāo)系是(w,h),w為x軸,h為y軸,(x,y) 但opencv讀出來的數(shù)組卻正好相反,是(h,w,3),(y,x,3) 所以這里會有一個轉(zhuǎn)換 實則轉(zhuǎn)換為圖像坐標(biāo)系時,要轉(zhuǎn)置一下,或者image.shape[::-1] 切片操作 [start,endstep],其中:- start: 表示開始的下標(biāo),如果省略默認(rèn)為 0 - end: 表示結(jié)束的下標(biāo)(不包含

    2024年02月12日
    瀏覽(24)
  • opencv視頻截取每一幀并保存為圖片python代碼CV2實現(xiàn)練習(xí)

    當(dāng)涉及到視頻處理時,Python中的OpenCV庫提供了強大的功能,可以方便地從視頻中截取每一幀并將其保存為圖片。這是一個很有趣的練習(xí),可以讓你更深入地了解圖像處理和多媒體操作。 使用OpenCV庫,你可以輕松地讀取視頻文件,并在循環(huán)中逐幀讀取視頻的每一幀。隨后,你可

    2024年02月12日
    瀏覽(31)
  • python 圖像處理——關(guān)于plt.imshow顯示cv2.imread讀取的圖像有“色差”、“發(fā)藍”問題的解決方法

    python 圖像處理——關(guān)于plt.imshow顯示cv2.imread讀取的圖像有“色差”、“發(fā)藍”問題的解決方法

    使用cv2.imread()讀取圖像時,默認(rèn)彩色圖像的三通道順序為B、G、R,這與我們所熟知的RGB中的R通道和B通道正好互換位置了。 而使用plt.imshow()函數(shù)卻默認(rèn)顯示圖像的通道順序為R、G、B,導(dǎo)致圖像出現(xiàn)色差發(fā)藍。 彩色圖像出現(xiàn)色差代碼: 運行結(jié)果如圖1-1所示,其顏色偏藍,怪嚇

    2024年02月01日
    瀏覽(23)
  • opencv 將多幀圖像合成為視頻 cv2.VideoWriter()

    將文件夾下有時間戳或者有序的 *.jpg 圖像合成為一個 mp4 格式的視頻。 附加:加進度條看合成進度。 以上示例合成視頻為 mp4 格式,如需合成其它視頻格式,可修改 cv2.VideoWriter_fourcc() 參數(shù)。請自行查詢相關(guān)參數(shù)。

    2024年02月11日
    瀏覽(24)
  • Python中使用OpenCV讀取灰度圖像時遇到的錯誤:module ‘cv2‘ has no attribute ‘CV_LOAD_IMAGE_GRAYSCA...

    Python中使用OpenCV讀取灰度圖像時遇到的錯誤:module ‘cv2’ has no attribute ‘CV_LOAD_IMAGE_GRAYSCALE’。 OpenCV是一款廣泛應(yīng)用于計算機視覺領(lǐng)域的開源計算機視覺庫,它可以實現(xiàn)圖像處理、分析、識別等功能。而在使用OpenCV讀取灰度圖像時,可能會出現(xiàn)上述錯誤。 這個錯誤發(fā)生的原

    2024年02月16日
    瀏覽(23)
  • cv2 保存圖片RGB BGR

    cv2 保存圖片RGB BGR

    原圖: cv2.imrite之后的圖: 可以看到前后圖片一樣,我們都知道cv2 .imread讀取進來的圖像是BGR格式,而cv2.imrite保存的時候也需要BGR格式,這樣保證顏色通道順序一致。 通常情況下,我們都需要轉(zhuǎn)換成RGB的格式進行后續(xù)處理,看下面的例子 而保存的圖像卻是: 可以看到顏色前

    2024年02月12日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包