Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> findimage определить
645507
сообщение 15.1.2022, 11:14
Сообщение #1


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



Добрый день. Подскажите есть ли смысл начинать разбираться в поиске картинок.
Ситуация что моя искомая кнопка может быть в рандомном месте
красным виделил область, зеленым что нужно искать
задний фон всегда разный
по сути можно искать Веселье и кликать на пару пикселей вверх него.
верно все?
благодарю
(IMG:https://a.radikal.ru/a34/2201/d1/94ec23c79950.png)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 15.1.2022, 12:58
Сообщение #2


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



(IMG:https://d.radikal.ru/d03/2201/57/e3e47ecab9ca.jpg)
-
(IMG:https://c.radikal.ru/c21/2201/d2/c3dc02ec1a38.jpg)

какой из данных вариантов будет удачней всего ?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 15.1.2022, 13:16
Сообщение #3


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



взял для начала попробовать, скрипт с faq . но гдето чтото нетак)
(IMG:https://d.radikal.ru/d36/2201/c9/4bb6d5f4d93e.jpg)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 15.1.2022, 14:18
Сообщение #4


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



обрезал картинки, сделал фон.
всё равно не ищет (((

(IMG:https://c.radikal.ru/c19/2201/0b/b084a5e277ba.jpg)

(IMG:https://a.radikal.ru/a06/2201/84/5aa69489cc93.jpg)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 15.1.2022, 16:35
Сообщение #5


**********

Elder
Сообщений: 3.459
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 22990
Пользователь №: 16.971
Возраст: 29



Что-то вроде этого можно сделать:
Прикрепленный файл  картинка.bmp ( 1,93 килобайт ) Кол-во скачиваний: 32

Код
set #a findimage(0, 0, 1920, 1080 ("C:\картинка.bmp") %arr 2 80 1 5)
hint #a
if #a > 0
    move %arr[1 1] %arr[1 2]
end_if
end_script
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 15.1.2022, 17:05
Сообщение #6


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



Цитата(cirus @ 15.1.2022, 17:35) *

Что-то вроде этого можно сделать:
Прикрепленный файл  картинка.bmp ( 1,93 килобайт ) Кол-во скачиваний: 32

Код
set #a findimage(0, 0, 1920, 1080 ("C:\картинка.bmp") %arr 2 80 1 5)
hint #a
if #a > 0
    move %arr[1 1] %arr[1 2]
end_if
end_script


а скажите пожалуйста масштаб должен соблюдатся картинки в поиске и искуемой?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 15.1.2022, 17:06
Сообщение #7


**********

Elder
Сообщений: 3.459
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 22990
Пользователь №: 16.971
Возраст: 29



Цитата
а скажите пожалуйста масштаб должен соблюдатся картинки в поиске и искуемой?

Да.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 15.1.2022, 21:11
Сообщение #8


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



Цитата(cirus @ 15.1.2022, 18:06) *

Да.


каким-то чудом все начало работать, поигрался с координатами поиска. но работало через раз, после смени последнего параметра 5 на 15% , все стало работать, но я дума тут уже свои настройки для каждого.

буду очень благодарный если еще поможете немножко.

Если моя картинка чистая то все работает проверил раз 30 уже
картинка

Но есть момент что поверх картинки бежит строка и тогда нерозпознается.
вот как тут
картинка


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

первоначальный код

скрипт
[code]init_arr %login (1) email@gmail.com email@gmail.com email@gmail.com
init_arr %pass (1) 1111 1111 1111

log mode compact
log clear
set #size size(%login[])

for #i 1 #size
log %login[1 #i]
log %pass[1 #i]



set workwindow 590498
left 229, 68
wait 75000
left 559, 181
wait 3000
left 24, 77 // учетная запись слева
wait 3000
left 327, 186 //учетная запись
wait 1200
left 345, 124 // login
wait 1200
repeat 22
send Backspace
end_repeat 22
wait 1200
send %login[1 #i]
wait 1000
Double_left 242, 153
wait 1200
send %pass[1 #i]
wait 1200
left 347, 222
wait 3000
left 558, 180
wait 3000
left 297, 294
wait 7000
left 303, 298 //вход в игру
wait 6000
left 495, 305 // в приключение
wait 45000
left 484, 154
wait 1800

left 432, 57 ////Веселье изначально было как 1 координата.
wait 1800


left 556, 235
wait 1800
left 383, 63 //избраное
wait 3500

repeat 10
wait 1000
left 334, 115
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 226, 252
wait 23000
left 553, 42
wait 1000
end_repeat 10
wait 1000
set workwindow 5113192
left 286, 18
wait 9800
log
end_for
end_script



[code]


left 432, 57 ////Веселье изначально было как 1 координата. место вставля наш новый робочый код

set #a findimage(0, 0, 1920, 1080 ("C:\картинка.bmp") %arr 2 80 1 15)
hint #a
if #a > 0
move %arr[1 1] %arr[1 2]
end_if

Вопрос как сделать что бы он искал картинку пока не найдет
спс
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 15.1.2022, 21:34
Сообщение #9


**********

Elder
Сообщений: 3.459
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 22990
Пользователь №: 16.971
Возраст: 29



Цитата
как сделать что бы он искал картинку пока не найдет

Код
while 1 == 1
    set #a findimage(0, 0, 1920, 1080 ("C:\картинка.bmp") %arr 2 80 1 5)
    hint #a
    if #a > 0
        move %arr[1 1] %arr[1 2]
        break  // выход из цикла
    end_if
    wait 100
end_while
end_script

Цитата
Но есть момент что поверх картинки бежит строка и тогда нерозпознается.

Зачем искать всю картинку? Можно искать нижнюю часть. Обратите внимание на картинку, которую я выложил для примера, там нет верхней части, чтобы бегущая строка не влияла на поиск.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 15.1.2022, 21:38
Сообщение #10


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



Цитата(cirus @ 15.1.2022, 22:34) *

Код
while 1 == 1
    set #a findimage(0, 0, 1920, 1080 ("C:\картинка.bmp") %arr 2 80 1 5)
    hint #a
    if #a > 0
        move %arr[1 1] %arr[1 2]
        break  // выход из цикла
    end_if
    wait 100
end_while
end_script


Зачем искать всю картинку? Можно искать нижнюю часть. Обратите внимание на картинку, которую я выложил для примера, там нет верхней части, чтобы бегущая строка не влияла на поиск.

да спасибо, я картинку переделывал под рабочий пк. сейчас поиграюсь с картинкой. попробую чисто нижнюю часть.
исходя из того что по тестам иногда бывает не находит зациклить поиск лучшее стабильное решение.
от души всем)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 16.1.2022, 18:25
Сообщение #11


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



@cirus
возникла проблема что 15% входов не определяет картинку, если ставлю процент выше неточности, то клацает на другую картинку, там много цветов похожих.
А реально ли реализовать такой вариант что бы я добавил пару вариантов искомой картинки, и что бы скрипт по порядку их сверял и клацал на первую которую найдет

рабочий сейчас код

Цитата
while 1 == 1
set #a findimage(0, 0, 1920, 1080 ("C:\картинка.bmp") %arr 2 80 1 5)
hint #a
if #a > 0
move %arr[1 1] %arr[1 2]
break // выход из цикла
end_if
wait 100
end_while
end_script


подойдет ли данный скрипт ?
Цитата

set #startX 0
set #startY 0
set #endX 1920
set #endY 1080
set $path "C:\images\" // путь к картинкам
set %image [1] pic.bmp // имя изображения
set %image [2] pic1.bmp // имя второго изображения
set %image [3] pic2.bmp // третьего
set %image [4] pic3.bmp // имена могут быть любыми

set #size size(%image) // всего картинок
hint Всего картинок #size

:metka
for #i 1 #size 1 // цикл для поиска картинок
set #a findimage (#startX #startY #endX #endY ($path%image[#i].bmp) %arr 2)
if #a > 0
left %arr[1 1] %arr[1 2] // клацнуть на найденную картинку
break
end_if
wait 100
end_while
end_script
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 16.1.2022, 18:55
Сообщение #12


**********

Elder
Сообщений: 3.459
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 22990
Пользователь №: 16.971
Возраст: 29



Цитата
подойдет ли данный скрипт ?

Нет, потому что написан с ошибками и даже не запустится.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 16.1.2022, 19:01
Сообщение #13


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



Цитата(cirus @ 16.1.2022, 19:55) *

Нет, потому что написан с ошибками и даже не запустится.

част с faq взял а часть с старого, моя логика не работает значит. Если будет время свободное подсобите , как данную идею лучше реализовать .
большое спасибо
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 16.1.2022, 19:10
Сообщение #14


**********

Elder
Сообщений: 3.459
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 22990
Пользователь №: 16.971
Возраст: 29



Код
set #startX 0
set #startY 0
set #endX 1920
set #endY 1080
set $path "C:\images\" // путь к картинкам
set %image [1] pic // имя изображения
set %image [2] pic1 // имя второго изображения
set %image [3] pic2 // третьего
set %image [4] pic3 // имена могут быть любыми

set #size size(%image) // всего картинок

while 1 == 1
    for #i 1 #size 1 // цикл для поиска картинок
        set #a findimage (#startX #startY #endX #endY ($path%image[#i].bmp) %arr 2)
        if  #a > 0
            kleft %arr[1 1] %arr[1 2] // клацнуть на найденную картинку
            break 2
        end_if
        wait 100
    end_for
end_while
end_script
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
645507
сообщение 16.1.2022, 23:47
Сообщение #15


**

Neophyte
Сообщений: 17
Регистрация: 11.11.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.126
Возраст: 30



Цитата(cirus @ 16.1.2022, 20:10) *

Код
set #startX 0
set #startY 0
set #endX 1920
set #endY 1080
set $path "C:\images\" // путь к картинкам
set %image [1] pic // имя изображения
set %image [2] pic1 // имя второго изображения
set %image [3] pic2 // третьего
set %image [4] pic3 // имена могут быть любыми

set #size size(%image) // всего картинок

while 1 == 1
    for #i 1 #size 1 // цикл для поиска картинок
        set #a findimage (#startX #startY #endX #endY ($path%image[#i].bmp) %arr 2)
        if  #a > 0
            kleft %arr[1 1] %arr[1 2] // клацнуть на найденную картинку
            break 2
        end_if
        wait 100
    end_for
end_while
end_script



Все прекрасно работает, можно ли вас както отблагодарит материально или форум?)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 25.5.2022, 12:52
Designed by Nickostyle