Fix Borders

Fix Borders — разновидность режима фильтрации изображения borders. На панели конструктора для активизации режима появилась одноименная кнопка.

FixBordersButton

Если шаблон, делается в этом режиме то у добавленного итема свойство UseFixBorders автоматически устанавливается в значение true.

FixBordersUseProperty

Таким образом даже если вы сделали шаблон в режиме «borders», то поменяв значение этого свойства с false на true вы сделаете так, что изображение будет искаться в режиме Fix Borders.

Теперь поговорим о том, в чем же разница между этими двумя режимами:

Как уже отмечалось, режим Borders при любых условиях пытается выделить на изображении границы объектов, также этот режим обращает внимание на фон изображения и в зависимости от этого фильтрует его по разному.

instaliator

для примера, возьмем такое вот изображение, тут мы видим черный фон и белые буквы, и после наложения фильтра выглядеть оно будет так

instaliatorFilterred

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

instaliatorWhite

Тут вот наша программа подумает и решит, что белого то на картинке больше и стало быть, белое это фон (но у нас и текст белый)  и результат уже будет следующим:

instaliatorWhiteFiltered

На выделенном в красный эллипс участке экрана видно, что надпись мягко говоря стала выглядеть по-другому, что может очень плохо сказаться на поиске такой картинки, если во время создания шаблона был фон черный, а во время поиска стал преимущественно белым. Данную надпись даже глазами стало не так то легко прочитать, что и говорить о машинном распознавании таких надписей, потому то и придумывался способ распознавать фон. Но в деле поиска изображения это сослужило нам плохую службу, и поэтому был добавлен еще 1 режим фильтрации FixBorders. По сути он работает точно также как и просто Borders, но при создании шаблона он запоминает каким был фон и средняя яркость изображения во время создания шаблона, и при поиске изображения он использует именно эти запомненные значения, в то время как обычный режим Borders вычисляет их динамически. Теперь даже если вы добавите на изображение большое белое окно, а искомое изображение останется неизменного цвета, то программа будет его видеть все равно также, как в момент создания шаблона, т.к. она не будет обращать внимания на изменения цвета вокруг объекта. Впрочем конечно же этот метод также не панацея, и может давать сбои в случаях когда сам объект в процессе выполнения поиска сильно изменит показатели своей яркости, или резкое изменение окружающей обстановки приведет к появлению нежелательных артефактов (которые не появляются в режиме borders т.к. он постоянно адаптируется к новой средней яркости изображения), на отфильтрованном изображении. Поэтому мы продолжим поиски философского камня, т.е. универсального способа поиска объекта.

 

 

 

 

Bot Development Engine