使用Python将视频转换为单独的帧而不使用ffmpeg?

时间:2015-02-20 09:34:09

标签: python video ffmpeg

我需要比较2个视频以检查它们是否相同。

所以我打算做以下事情:

  1. 将两个视频拆分为单独的框架
  2. 使用Python Image Lib
  3. 将每个帧与参考视频的相应帧进行比较
  4. 计算不同帧的数量以确定它们是否相同。
  5. 我想知道Python中是否有任何函数可以帮助我完成第一步,即将视频拆分为单独的帧。我不想使用ffmpeg来进行拆分。

    提前感谢您的帮助

2 个答案:

答案 0 :(得分:2)

您可以使用opencv

import cv2
video_capture = cv2.VideoCapture("rtsp://admin:admin@192.168.0.94:554/stream3")


while True:
    # get frame by frame
    ret, frame = video_capture.read()
    cv2.imwrite('pic.png',frame)
    cv2.imshow('Video', frame)

答案 1 :(得分:0)

currentFrame = 0
while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()

    # Saves image of the current frame in jpg file
    name = './data/frame' + str(currentFrame) + '.jpg'
    print ('Creating...' + name)
    cv2.imwrite(name, frame)

    # To stop duplicate images
    currentFrame += 1

# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()**strong text**

#you can use this method