Qt + OpenCV. Runtime и Widget для CvCapture (устройства видеозахвата)
14 мин
Введение.
Анализируя замечания предыдущего поста (Qt Designer & Runtime Qt библиотеки на службе OpenCV...), пришлось более детально проработать устройство видеозахвата библиотеки OpenCV и методы разделения библиотек runtime и виджетов.
Работа с Qt Designer удобна (я — лентяй), поэтому и возник компонент проектирования интерфейса для CvCapture. После начала работы подтянулось и «научное » тому объяснение — удобно применить нечто похожее, скажем, при проектировании интерфейса свойств или параметров приложения, использующего устройство видеозахвата.
Пока идёт скачивание архива проекта, читайте далее.
Благодарности.
Спасибо всем, кто оставил свои замечания по предыдущему посту.
Библиотека времени выполнения.
Итак, библиотека OpenCV установлена, примеры кода просмотрены. Самое время «прикрутить» устройство видеозахвата к Qt. Да не просто так, а чтобы и изображения получать, меняя устройства динамически. Да, чтобы помнило все пути к изображению, видео. Да, чтобы и номера камер переключало. Да, чтобы и… пост покороче получился.
Библиотека.
Чего проще! Наследуем новый класс библиотеки от QObject, прячем ненужные разработчику поля и методы в приватный класс как элемент коллекции QScopedPointer, монтируем сигналы оповещения и слоты-обработчики.






Наверняка постоянный читатель хабра знает, что такое Kickstarter и как за один год этому сервису удалось в корне изменить развитие компьютерных игр. К январю 2013 была собрана статистика за прошлый год — в 2012 году игры, успешно закончившие кампании на KS, получили инвестиции общей суммой в 83 миллиона долларов. Помимо впечатляющей суммы интересна и тенденция: за один последний год игровой сектор получил денег в 2 раза больше, чем за все предыдущие 3 года с момента основания Kickstarter. Похожая ситуация и с другими областями — но с играми она смотрится наиболее выигрышно.

Вот и отгремело первое апреля. Кто-то в этот день нюхал свои девайсы в новом сервисе 
