Возможно ли определение цвета в AS3? - PullRequest
0 голосов
/ 30 октября 2010

Эй, мне было интересно, что бы сделали эксперты AS3, чтобы обнаружить цвет с помощью веб-камеры (красный) и нарисовать спрайт на этих границах цвета.

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 30 октября 2010

Вы можете получить доступ к пиксельным данным в BitMap (или, точнее, к связанному BitMapData ), чтобы написать собственный фильтр, или вы можете использовать BitmapFilter .

Вы должны иметь возможность захватывать растровое изображение с веб-камеры, рисуя Видео в создаваемом растровом изображении (используйте draw () для рисования текущего видеоизображения).

Итак, это должно дать вам растровое изображение и способ обнаружения пикселей в нем.Теперь вы можете изменить растровое изображение, чтобы добавить собственную графику (или поместить ее в спрайт, который находится поверх растрового изображения).Покажите растровое изображение на экране после того, как вы изменили его, и повторите это для каждого кадра: -)

См. http://www.kasperkamperman.com/blog/flash-code/as3-apply-bitmap-filters-to-a-webcam-image/ для вдохновения.

0 голосов
/ 31 марта 2012

Я знаю, что немного опоздал на парад, но, возможно, это может помочь другим.Я просто выложил в Интернет класс с именем ChromaTracker , который, вероятно, будет делать то, что вы ищете.

В основном вы кормите объект ChromaTracker цветом и DisplayObject (быть веб-камерой, назначенной объекту Video), и он определит, где в BitmapData можно найти цвет.Затем вы можете получить Bitmap обнаруженных пикселей, объект Rectangle внешней границы, образованный всеми обнаруженными пикселями, или объект Point, представляющий центр большого количества обнаруженных пикселей.

С этой информацией, было бы очень легко добавить ваш Sprite поверх обнаруженных пикселей.Вы можете скачать класс плюс демо на моем сайте: http://cote.cc/projects/chromatracker. Также имеется полная документация по API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...