こんにちは, ЛОР!
Раньше, когда я был маленьким и глупым (не то что сейчас), возился как-то с питоном и мультимедийной библиотечкой pygame с замечательным модулем для работы с камерой. И так мне все это было интересно, а времени так много, что решил сделать небольшой примерчик так называемой «дополненной реальности» на питоне. Да-да, я знаю, что для этого все умные люди уже давно используют OpenCV (и не используют питон), но, как я написал выше, то было раньше, да и интересно было повозиться самостоятельно, с дилетантской точки зрения. Сказано - сделано: через некоторое время появился код, который позволял отслеживать положение объекта IRL и взаимодействовать с виртуальными объектами («кнопочками», летающими шариками и прочей глупостью). Все это дело работает из коробки под православным линуксом и оффтопиком. Как обстоят дела с GayOSOSX я, честно сказать, не знаю. Возможно, что и на этом тоже работает, через OpenCV.
Краткая инструкция:
- Берете яркий предмет, желательно однотонный и с матовой поверхностью; лучше будет, если он не будет совпадать по цветовой гамме с окружающими вас предметами.
- С помощью кнопок, указанных в readme.txt, фиксируете цвет искомого предмета.
- Настраиваете RGB-компоненты выбранного пипеткой цвета таким образом, чтобы был виден лишь искомый объект, желательно без «шума».
- Переключаетесь из режима калибровки в режим отслеживания объекта и веселитесь от души.
- ???
- PROFIT!!!
ACHTUNG!!! Код был написан питонячьим ньюфагом и представляет из себя полный пипростыню не для слабонервных, хоть и с комментами (слава богу не на русском). Код под GPL2.
P.S. в данный момент решил переписать все по заветам дедушки Ленина: модульно, с многопоточностью, событийной архитектурой на слабосвзянных компонентах и прочими блекджеками. Код выложен в public domain.
Если кому интересно: страничка проекта на pygame.org (с целой одной картинкой).
Еще: legacy-исходники и mercurial-репозиторий на bitbucket.