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