Показать сообщение отдельно

Графический планшет из вебкамеры
  #6  
Старый 16.02.2010, 23:50
bymugen
Участник форума
Регистрация: 18.06.2009
Сообщений: 246
С нами: 8893818

Репутация: 197
Smile Графический планшет из вебкамеры

Виртуальный планшет
Итак, принцип работы. Располагаем в поле зрения камеры белый лист бумаги. Наклеиваем на кончик ручки цветной маркер. Если перемещать ручку по листу бумаги, то, распознавая цвет маркера на картинке, можно получить координаты ручки в плоскости листа. Если эти координаты превращать в движение курсора на экране, мы получим простейший виртуальный планшет.

Ручка с цветным маркером
Для стабильного распознавания необходимо, чтобы отслеживаемый цвет значительно отличался от фона картинки. Кроме того, этот цвет должен быть насыщенным. Наилучшее, что нашлось под рукой – стикеры, используемые для наклеивания цен на товары. Ярко зеленый цвет отлично контрастирует с фоном картинки.

Берём обычную шариковую ручку.

Берем один стикер, и отрезаем тонкую полоску.

Полоску наматываем на стержень ручки.

Наш «стайлус» готов ! На картинке видно, что насыщенный цвет буквально «горит», и потому будет стабильно распознаваться нашей программой. Наша ручка не имеет датчика нажатия, поэтому пользователь должен будет использовать какую-либо клавишу клавиатуры, например – левый Ctrl.

Программное обеспечение
Собственно, «аппаратная» часть уже закончена. Мы жестко закрепили камеру так, чтобы лист бумаги занимал как можно большую часть картинки, и сделали «стилус». С помощью программного обеспечения камеры мы можем видеть, что когда мы рисуем на листе бумаги, то на картинке с камеры отчетливо виден цветной маркер. Нам нужно написать программное обеспечение, которое будет отслеживать положение маркера на листе бумаги, и переводить его движение в движение курсора мыши на экране компьютера. Сразу скажу, что читатель, незнакомый с программированием, может пропустить два следующих раздела и сразу перейти к испытаниям, т.к. готовое программное обеспечение прилагается к статье.

В качестве языка программирования возьмем Delphi, т.к. для него легко найти готовые компоненты для работы с веб-камерой и ком-портом (об этом дальше), и легко делать пользовательский интерфейс. Но, прежде чем запускать редактор, обсудим алгоритмы.

Скачать

Усложняем аппаратную часть
Итак, мы уже можем рисовать с помощью нашего планшета! Однако, стабильность распознавания сильно зависит от условий освещения, да и пользоваться клавишей Ctrl для нажатия не очень удобно. Давайте соберем "продвинутый стилус" для нашего планшета.
Чтобы повысить стабильность, я решил поместить на кончик ручки зеленый светодиод. Теперь стабильность распознавания практически не зависит от освещения. В качестве датчика нажатия я взял микропереключатель из старой мышки.

Берем старую шариковую ручку диаметром 1см.

Берем старую COM-мышку.

Из мышки нам понадобится провод с разъемом и микропереключатель.

Микропереключатель вставляем в ручку так, чтобы при надавливании, стержень ручки его включал.