Управляемая веб-камера или же web-cam-бот

Управляемая веб-камера
Не так давно я уже похвастался, что мою(и Zoltberg-а) статью про Arduino — «Веб-камера на сервоприводах» опубликовали в журнале Хакер. Статья уже выложена на их сайте и её можно прочитать здесь.

Вкратце расскажу про создание такой камеры.

( Читать дальше )
  • +1
  • 30 октября 2010, 10:49
  • noonv
  • 25

19. OpenCV шаг за шагом. Обработка изображения - заливка части изображения

  • 0
  • 18 октября 2010, 10:07
  • noonv
  • 8

18. OpenCV шаг за шагом. Обработка изображения - морфологические преобразования 2

1. OpenCV шаг за шагом. Введение.
2. Установка.
3. Hello World.
4. Загрузка картинки.
5. Вывод видео
6. Ползунок
7. Захват видео с камеры
8. Запись видео
9. События от мышки
10. Обработка изображения — сглаживание
11. Обработка изображения — изменение размеров
12. ROI — интересующая область изображения
13. Типы данных OpenCV
14. Матрица
15. Сохранение данных в XML
16. Генерация случайных чисел
17. Обработка изображения — морфологические преобразования
18. Обработка изображения — морфологические преобразования 2

Когда я говорил, что OpenCV реализует морфологические преобразования всего двумя функциями, я, разумеется, лукавил.
Есть ещё одна замечательная функция — cvMorphologyEx(). Она обеспечивает более сложные морфологические преобразования изображения.

( Читать дальше )
  • 0
  • 1 октября 2010, 10:15
  • noonv
  • 7

15. OpenCV шаг за шагом. Сохранение данных в XML

1. OpenCV шаг за шагом. Введение.
2. Установка.
3. Hello World.
4. Загрузка картинки.
5. Вывод видео
6. Ползунок
7. Захват видео с камеры
8. Запись видео
9. События от мышки
10. Обработка изображения — сглаживание
11. Обработка изображения — изменение размеров
12. ROI — интересующая область изображения
13. Типы данных OpenCV
14. Матрица
15. Сохранение данных в XML

Придётся сделать ещё одну остановку перед рассмотрением действительно интересных функций компьютерного зрения.
Рассмотрим функции OpenCV для сохранения/считывания данных в файлы.

OpenCV имеет механизмы сериализации/десериализации данных и возможность сохранять/считывать эти данные из XML-файлов.

( Читать дальше )
  • 0
  • 3 сентября 2010, 10:39
  • noonv
  • 1

14. OpenCV шаг за шагом. Матрица

1. OpenCV шаг за шагом. Введение.
2. Установка.
3. Hello World.
4. Загрузка картинки.
5. Вывод видео
6. Ползунок
7. Захват видео с камеры
8. Запись видео
9. События от мышки
10. Обработка изображения — сглаживание
11. Обработка изображения — изменение размеров
12. ROI — интересующая область изображения
13. Типы данных OpenCV
14. Матрица

CvMat — матрица

Рассмотрим ещё немножко основ. Функции можно просто пробежать глазами — самое интересное в этом шаге — в самом конце приводятся куски кода обхода элементов матрицы и пикселей изображения.

CvArr — массив — его можно считать «абстрактным базовым классом» для CvMat и далее IplImage (CvArr->CvMat->IplImage)
typedef void CvArr;


Вы уже, наверное, обратили внимание, что прототипы функций OpenCV принимают в качестве параметров указатель на CvArr. Фактически это означает, что они принимают массив CvMat* или изображение IplImage*.

( Читать дальше )
  • 0
  • 27 августа 2010, 10:03
  • noonv
  • 16

12. OpenCV шаг за шагом. ROI - интересующая область изображения

1. OpenCV шаг за шагом. Введение.
2. Установка.
3. Hello World.
4. Загрузка картинки.
5. Вывод видео
6. Ползунок
7. Захват видео с камеры
8. Запись видео
9. События от мышки
10. Обработка изображения — сглаживание
11. Обработка изображения — изменение размеров
12. ROI — интересующая область изображения


ROI (Region Of Interest — регион интересов — интересующая область изображения) — один из фундаментов OpenCV.
ROI позволяет пользователю задать определённую прямоугольную область изображения (т.е. ROI всегда должна находится внутри исходного изображения).
Почти все функции должны поддерживать работу с ROI, т.е. работу с выделенной областью изображения, что полезно для ускорения работы алгоритмов. Т.о. если нас интересует только определённая область изображения — можно её выделить и работать только с ней, не затрагивая всё изображение целиком.

( Читать дальше )
  • +1
  • 13 августа 2010, 09:40
  • noonv
  • 6

11. OpenCV шаг за шагом. Обработка изображения - изменение размеров

1. OpenCV шаг за шагом. Введение.
2. Установка.
3. Hello World.
4. Загрузка картинки.
5. Вывод видео
6. Ползунок
7. Захват видео с камеры
8. Запись видео
9. События от мышки
10. Обработка изображения — сглаживание
11. Обработка изображения — изменение размеров

Очень часто при работе с изображениями требуется изменить их размер (уменьшить или увеличить).
В OpenCV это реализуется функцией cvResize()


( Читать дальше )
  • 0
  • 6 августа 2010, 09:54
  • noonv
  • 10