Основной раздел > Общие вопросы
поворот картинки на 90 градусов или зеркальное отображение
shatun:
Есть простая капча в которой меняются картинки (их 5 шт). Раньше нужно было посчитать каких картинок меньше на ту и кликнуть.
Делал очень примитивно, но работало...
--- Code: (clickermann) --- WAIT(5)
// поиск изображения Img.bmp в области 700,400 - 1200,700
GETSCREEN
COLORMODE(6)
scanpicture($var, 700,400, 1200,700, "Img.bmp")
WAIT(1)
// вывод массива, содержащего результаты поиска
while (arrsize($var) > 0)
$y = arrpop($var)
$x = arrpop($var)
end_cyc
LOGWRITE ("найдены координаты ",$x,":", $y)
GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
SCREENSHOTFIX($x,$y+50, $x+40, $y+90, "1.bmp") // Сохроняет скриншот 1 картинки
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN ($x+50,$y+50,$x+240,$y+100, "1.bmp", -1, 93) //поиск картинки
WAITMS(500)
GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
SCREENSHOTFIX($x+45,$y+45, $x+90, $y+90, "2.bmp")
WAITMS(500)
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN ($x+90,$y+45, $x+240,$y+100, "2.bmp", -1, 93) //поиск картинки
WAITMS(500)
GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
SCREENSHOTFIX($x+95,$y+45, $x+140,$y+90, "3.bmp")
WAITMS(500)
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN ($x+140,$y+40,$x+240,$y+100, "3.bmp", -1, 93) //поиск картинки
WAITMS(500)
GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
SCREENSHOTFIX($x+140,$y+40,$x+190,$y+90, "4.bmp")
WAITMS(500)
GETSCREEN
COLORMODE(6)
WAITMS(500)
IF_PICTURE_IN ($x,$y+40, $x+140,$y+90, "4.bmp", -1, 93) //поиск картинки
GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
SCREENSHOTFIX($x+190,$y+40,$x+240,$y+90, "5.bmp")
WAITMS(500)
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN ($x,$y+40, $x+140,$y+90, "5.bmp", -1, 93) //поиск картинки
WAITMS(500)
LCLICK($x+110,$y+60)
LOGWRITE ("найдено 5")
END_IF
ELSE // "ИНАЧЕ"
LCLICK($x+160,$y+60)
LOGWRITE ("найдено 4")
END_IF
ELSE // "ИНАЧЕ"
LCLICK($x+115,$y+65)
LOGWRITE ("найдено 3")
END_IF
ELSE // "ИНАЧЕ"
LCLICK($x+65,$y+65)
LOGWRITE ("найдено 2")
END_IF
ELSE // "ИНАЧЕ"
LCLICK($x+20,$y+70)
LOGWRITE ("найдено 1")
END_IF
--- End code ---
Сейчас усложнили задачу:
1. теперь некоторые картинки повёрнуты на 90, 180, 270 градусов и вот никак не найду какой командой мне их перевернуть.
2. иногда картинки зеркально отображены и тоже могут быть повёрнуты на 90, 180, 270 градусов, тоже не найду какой командой сделать зеркальное отображение картинки перед поиском.
Vint:
Нет таких команд.
И не факт что повёрнутая картинка где-то там будет полностью совпадать с повёрнутой правильно. Если это web может влиять размер контейнера. Если картинки подготовлены в jpeg - сжатие.
Покажи, что за картинки хоть. Может есть другой способ чтоб не искать 5 * 4 * 3 = 60 вариантов. Цвета там посчитать основные.
kiril:
повернуть картинки кликером на 90, 180, 270 градусов и или зазеркалить конечно можно, но имеет-ли смысл из за указанных выше причин? нужно предварительно проверять.
shatun:
--- Quote from: kiril on April 05, 2023, 10:14:37 PM ---Покажи, что за картинки хоть. Может есть другой способ чтоб не искать 5 * 4 * 3 = 60 вариантов. Цвета там посчитать основные.
--- End quote ---
в данном случае только чёрные и белые цвета, но идея очень интересная.
пишут - Папка upload заполнена. Попробуйте файл меньшего размера или свяжитесь с администратором.
Файл 11КБ, закинул на postimges
странно, капча вроде простейшая, но на некоторых ресурсах её сейчас устанавливают взамен рекапчи...
Vint:
--- Quote from: shatun on April 06, 2023, 11:15:34 AM ---Файл 11КБ, закинул на postimges
--- End quote ---
А эта же повёрнутая есть? Только не сам поворачивай.
Просто интересно, это она так нарисована или отмасштабирована. Похоже, что нарисована, всего 4 цвета. Можно считать все, а можно только самый тёмный.
Непонятно только почему размеры разные и зачем ты при поиске использовал % совпадения 93
Navigation
[0] Message Index
[#] Next page
Go to full version