Автокликер Clickermann :: Форум
Основной раздел => Предложения => Topic started by: PovAndy on July 26, 2017, 12:36:30 PM
-
Здравствуйте!
Столкнулся с проблемой распозновании картинки с мелкими вериткальными линиями. (Например мелкий шрифт)
К примеру:
Мне надо найти на экране слово (написанное не черным цветом), толщина линий в буквах порядка 2-3 пикселей в ширину и размер букв примерно 6х10 пикселей.
А проблема в том, что при увеличении этих букв видно, что вертикальные линии состоят из нескольких вертикальных цветных линий (т.е. однотонный цвет состоит из нескольких разных, при удалении от монитора смотрится как один цвет)! Что не позволяет искать такие картинки в разных местах экрана, (т.к. один цвет можно получить из смешивания нескольких разных), тем более на разных компьютерах.
Прикладываю картинки:
в маленьком размере они одинаковые (https://yadi.sk/d/VHi9xxoz3LREjT) и (https://yadi.sk/d/Yf-njEcN3LREna)
А при увеличении уже видно разницу
(https://yadi.sk/d/1Xt2hNxu3LRF5Y) и (https://yadi.sk/d/3Q1SvNwE3LRF7C)
Идея в том, что бы в цветокоррекции включить режим "Оттенки серого", что позволит избавится от таких ньюансов и получить чистые буквы без разных цветов.
Сразу скажу, что в режиме Ч/Б (2 цвета) буквы совсем пропадают, т.к. они написаны не очень ярко.
Понижение количества цветов тоже не помогает, буквы теряются...
-
Поздравляю, ты открыл для себя сглаживание шрифтов ClearType (https://ru.wikipedia.org/wiki/ClearType).
http://crapware.aidf.org/forum/index.php?topic=293.msg2482#msg2482
Только при чём здесь "оттенки серого"? COLORMODE 7 уровня (по надобности и 6-го) дадут меньше оттенков. И к тому же это всё равно не сделает текст определяемым легко без настройки процента совпадения (если оставить 100%). Т.е. чтобы добиться стабильного поиска такого текста, количество телодвижений при "оттенках серого" не уменьшится, а чаще увеличится.
Оттенки серого, по умолчанию - 256 цветов.
COLORMODE 7 - 8 цветов
COLORMODE 6 - 64 цвета
Самый верный способ, если скрипты "для себя" - отключить сглаживание, и больше не париться.
Если скрипт не очень критичен к скорости, можно получить оттенки серого самим скриптом. Вот можешь прикрутить и побаловаться. Потом решить легче стало и стоит ли заморачиваться.
http://crapware.aidf.org/forum/index.php?topic=2390.msg14982#msg14982
продолжение: тема "коррекция яркость/контраст" (http://crapware.aidf.org/forum/index.php?topic=293.msg2482#msg2482)
-
Во, проверил как эти образцы выглядят в градациях серого... Ничего хорошего.
Видать проще отключить сглаживание
-
>Мне надо найти на экране слово (написанное не черным цветом)
если это в браузере, то смотри в сторону плагинов, переопределяющих стили (CSS). тысячи их.
ставишь для данного элемента страницы черный шрифт и все твои проблемы в прошлом
-
вот попробовал с коррекцией контраста. тот же COLORMODE(8 ), но со сдвигом "границы между черным и белым".
(http://i.imgur.com/uFzJ06f.png)
пару пикселей не совпадают, но при 90% поиске находит и одну и вторую картинку.
SUB(cmode, $k,$mid,$x1,$y1,$x2,$y2 )
print("start cmode")
GETSCREEN($x1,$y1,$x2,$y2)
// SCREENSHOTEX($x1,$y1,$x2,$y2)
FOR($y=$y1,$y<$y2+1)
FOR($x=$x1,$x<$x2+1)
$c= pxl($x,$y)
IF(((colorr($c)+colorg($c)+colorb($c))/3) > $mid)
$outr=colorr($c)+$k
$outg=colorg($c)+$k
$outb=colorb($c)+$k
IF($outr < $mid)
$outr=$mid
END_IF
IF($outg < $mid)
$outg=$mid
END_IF
IF($outb < $mid)
$outb=$mid
END_IF
else
$outr=colorr($c)-$k
$outg=colorg($c)-$k
$outb=colorb($c)-$k
IF($outr > $mid)
$outr=$mid
END_IF
IF($outg > $mid)
$outg=$mid
END_IF
IF($outb > $mid)
$outb=$mid
END_IF
END_IF
IF($outr < 0)
$outr=0
END_IF
IF($outg < 0)
$outg=0
END_IF
IF($outb < 0)
$outb=0
END_IF
IF($outr > 255)
$outr=255
END_IF
IF($outg > 255)
$outg=255
END_IF
IF($outb > 255)
$outb=255
END_IF
PXLREPLACE($x,$y,$x,$y,$c,COLORGEN($outr,$outg,$outb))
END_CYC
END_CYC
print("fin cmode")
SCREENSHOTEX($x1,$y1,$x2,$y2)
END_SUB
cmode(255,240,382,222,410,272)
scanpicture($var, 382,222,410,272, "like.bmp",-1,90)
while (arrsize($var) > 0)
$y = arrpop($var)
$x = arrpop($var)
print($x,":", $y) //находит 2 экземпляра.
end_cyc
halt
поиск и коррекцию брал прямо из браузера, а у меня скорее всего тоже стоит сглаживание, возможно эти картинки еще больше сгладились :D.
[spoiler]вин10... тут даже прога для просмотра картинок сглаживает их. паинт вроде не сглаживает, но кликер в нем не видит ничего[/spoiler]
коррекция происходит очень медленно :(, так-что будем надеяться, что данную процедуру в будущем добавят в кликерманн, и она будет работать также резво как и существующий колормод.
тема по контрасту http://crapware.aidf.org/forum/index.php?topic=2399.0
-
Во, проверил как эти образцы выглядят в градациях серого... Ничего хорошего.
Видать проще отключить сглаживание
В ч/б переводить не получится, отдельно текст хорошо переводится в 2 цвета, (и то не всегдаЮ, т.к. текст может быть написан светлым цветом!), а если выбрать диапазон снижения цвета больше, чем только сам текст (а так обычно и бывает), т.е. захватить соседние картинки с экрана и т.д., то текст совсем теряется, некоторые точки совсем пропадают!!!!
Оттенки серого, по умолчанию - 256 цветов.
COLORMODE 7 - 8 цветов
COLORMODE 6 - 64 цвета
Самый верный способ, если скрипты "для себя" - отключить сглаживание, и больше не париться.
Я делаю программу для большого количества народа, поэтому каждый не будет замарачиваться с этой настройкой!
Во, проверил как эти образцы выглядят в градациях серого... Ничего хорошего.
Видать проще отключить сглаживание
Спасибо, это попробую!
-
если это в браузере, то смотри в сторону плагинов, переопределяющих стили (CSS). тысячи их.
ставишь для данного элемента страницы черный шрифт и все твои проблемы в прошлом
Это плагины для браузера или для кликера?
Можно ли из самого кликера изменить css?
-
Ещё пример цветокорриктеровки
Это оригинал (https://3.downloader.disk.yandex.ru/disk/18b6644ec55e94bba836f4d6e3f426fd1afde4e66789620e0594f9356cf8c549/59887234/G2ekodzXk0P8vTJw5jVoO8gfqeEu0SdDMRZleJ0EkAuYaJXlGzzW7KTJABzR54f-DqJJ8iCKL9wY6Upw-g5dyg%3D%3D?uid=0&filename=2017-08-07_12-51-37.png&disposition=inline&hash=&limit=0&content_type=image%2Fpng&fsize=60163&hid=f5dc80e4671445a2de7726c419810231&media_type=image&tknv=v2&etag=a7468887b29a5c7227d6d75bad1e8704)
А это после цветокорриктеровки 8 (https://3.downloader.disk.yandex.ru/disk/ed286d8c16cab917622691c9e7e2e30d7967c2047af84bbde48aafc794e64acf/59887258/G2ekodzXk0P8vTJw5jVoOzJWK0sf_urcpQ_sUaJLHA8n77ywC0OgqCQp_4mF5tQrBi9T7QNWU7Ir9wf29l5KNQ%3D%3D?uid=0&filename=2017-08-07_12-52-01.png&disposition=inline&hash=&limit=0&content_type=image%2Fpng&fsize=29295&hid=e4ae821cf5b12d8588f582ebbefd6a72&media_type=image&tknv=v2&etag=34e179d9d0475e89c54eb3b515df8f15)
-
Пример только как пример? Не рабочий, надеюсь.
Просто, нужно стараться не искать текст там, где можно без этого обойтись. На примере прекрасно ищется иконка голосующего человечка.
А по градациям серого, если в новой версии не будет, если получится, то добавлю вот сюда:
http://crapware.aidf.org/forum/index.php?topic=2850.msg22933#msg22933
-
Это плагины для браузера или для кликера?
Можно ли из самого кликера изменить css?
Для браузера. "custom style script" http://crapware.aidf.org/forum/index.php?topic=2973.0
Из кликера нельзя.