Можно еще так:
Если без заморочек - берем по порядку все цвета из массива и pixelreplace-ам меняем их в нашей области на какой-нибудь уникальный цвет, которого точно нет изначально. Ищем квадрад этого уникального цвета picturein-ом. Готово.
Тут возникают разночтения из-за неточностей формулировки автора темы;
- "обернута" как минимум 2 слоями точек, цвет которых опять же находится в вышеупомянутом массиве если в обёртке допустимы все цвета найденные в массиве одновременно, то перекрашивание приемлимо,
а если только один из цветов, то способ не подходит.
Мой вариант;
1. максимально допустимый в данном случае COLORMODE для уменьшения числа возможных цветов перед их сканированием в массив
2. генерирование и сохранение в папку скрипта картинок с помощью PXLREPLACE и SCREENSHOTFIX
3. поиск полученных картинок в указанной области с помощью IF_PICTURE_IN
предположу, что цвета каждого объекта поиска постоянны и основные затраты времени придутся на обычный поиск маленьких, заранее и автоматически сохранённых скриптом картинок.