import cv2
vcap = cv2.VideoCapture(filename)
res, im_ar = vcap.read()
while im_ar.mean() < threshold and res:
res, im_ar = vcap.read()
im_ar = cv2.resize(im_ar, (thumb_widht, thumb_height), 0, 0, cv2.INTER_LINEAR)
#to save we have two options
#1) save on a file
cv2.imwrite(save_on_filename)
#2)save on a buffer for direct transmission
res, thumb_buf = cv2.imencode('.png', im_ar)
# '.jpeg' etc are permitted
#get the bytes content
bt = thumb_buf.tostring()
"ngưỡng" là một số nguyên. Khi bạn nhận được một khung hình video nó có thể rất đen, trắng vv để có được một số hình thu nhỏ tốt, bạn có thể chỉ định giá trị trung bình của tất cả các điểm ảnh trong khung.
Nguồn
2016-07-30 02:59:16
Xem [câu trả lời này] [1] cho làm thế nào để làm điều đó với GStreamer và Python. [1]: http://stackoverflow.com/a/16478342/1049318 –