2015-05-02 4 views
0

Я пытаюсь собрать позицию и направление объекта внутри изображения.Обнаружение положения и направления объектов внутри изображения

Изображение может выглядеть следующим образом, например: http://i.stack.imgur.com/4ehUy.jpg

Объект показан как синий круг.

Что я до сих пор пробовал использовать базовый поиск по пикселям, но кажется, что круги синие не всегда одинаковы (возможно, из-за форм и окружающей среды), и когда я даю ему цветовой диапазон (например, красный 130 - 150, зеленый 110 - 120 и синий 90 - 100), он не является надежным, потому что иногда пиксель распознается поверх отверстия, иногда на нужном сайте и так далее. Более того, следующий шаг будет направлять направление предмета, что еще сложнее, из-за окружающей среды, которая может быть очень похожа на световой infront объекта.

Опять-таки, что я хотел бы знать, является нынешний центр окружности и угол его прицеливания атм ...

Есть библиотека или способ сделать это? Я использую C#/WPF для программирования своего приложения.

+0

Я бы предположил, что проблема в формате JPEG. Благодаря преобразованию в цветовое пространство и сжатие YCbCr, это противоречит цветам. Я предложил бы использовать PNG или BMP, если это возможно. Тогда, вероятно, было бы разумно искать не только один пиксель, но и целую строку или несколько строк. Например, попробуйте 4 пикселя, когда на левой стороне, сверху, вправо и в нижней части круга. Я думаю, это минимизирует ошибки. – Jens

+0

Да, я уже строил это в верхнем правом левом и нижнем, но с диапазоном. К сожалению, я не могу изменить формат JPEG на другой, он основан на игре. – user4653488

+0

Я сделал скриншот прямо из C# сейчас вместо использования ingame-механики, o – user4653488

ответ

0

Я нашел решение по моей:

Все, что вам нужно, это библиотека AForge. С библиотекой AForge вы можете провести некоторые эксперименты с цветовой фильтрацией (я использовал синий), и после некоторых вычислений вы получите центральную позицию игрока. :)

Смежные вопросы