string t = DateTime.Now.ToString("h/m/s tt");
string t2 = DateTime.Now.ToString("hh:mm:ss tt");
string d = DateTime.Now.ToString("MM/dd/yy");
Вы имеете в виду, что opencv не может подключиться к вашей веб-камере или не может читать записанные ею видеофайлы?
Вы пытались сохранить видео в другом формате?
OpenCV вероятно, лучший поддерживаемый инструмент обработки изображений Python
Просто создайте оболочку C / C ++ для своей веб-камеры, а затем используйте SWIG или SIP для доступа к этим функциям из Python. Затем используйте OpenCV в Python, лучшую в мире библиотеку компьютерного зрения с открытым исходным кодом.
Если вы беспокоитесь о производительности и работаете под Linux, вы можете загрузить бесплатные версии Intel Performance Primitives (IPP), которые могут быть загружены во время выполнения с помощью нулевые усилия от OpenCV. Для некоторых алгоритмов вы можете увеличить производительность на 200%, а также автоматическую многоядерную поддержку для большинства трудоемких функций.
Я сам через это прохожу. Это всего лишь пара строк в MATLAB с использованием mmreader, но я уже потратил два рабочих дня, пытаясь выяснить, как вытащить кадры из видеофайла в numpy. Если у вас достаточно места на диске, и это не обязательно в реальном времени, вы можете использовать:
mplayer -noconsolecontrols -vo png blah.mov
, а затем вытащить. png в numpy, используя:
pylab.imread('blah0000001.png')
Я знаю, что это неполно, но это может вам помочь. Удачи!
Я использовал этот сценарий для преобразования фильма в массив numpy + двоичное хранилище:
"""
Takes a MPEG movie and produces a numpy record file with a numpy array.
"""
import os
filename = 'walking'
if not(os.path.isfile(filename + '.npy')): # do nothing if files exists
N_frame = 42 # number of frames we want to store
os.system('ffmpeg -i WALK.MOV.qt -f image2 foo-%03d.png')
# convert them to numpy
from numpy import zeros, save, mean
from pylab import imread
n_x, n_y, n_rgb = imread('foo-001.png').shape
mov = zeros((n_y, n_x, N_frame))
for i_frame in range(N_frame):
name = 'foo-%03d.png' % (i_frame +1)
mov[:n_y,:n_x,i_frame] = flipud(mean(imread(name), axis=2)).T
os.system('rm -f foo-*.png')
save(filename + '.npy', mov)
обратите внимание, что в зависимости от ваших соглашений вы можете не захотеть переворачивать образ. затем вы можете загрузить его, используя:
load('walking.npy')