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

 
Ответить в эту темуОткрыть новую тему
> Поиск цвета на скриншоте, Поиск цвета на скриншоте
handness
сообщение 25.7.2021, 18:16
Сообщение #1


**

Neophyte
Сообщений: 27
Регистрация: 25.7.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.026
Возраст: 28



Нужно определить цвет пикселей в 100 точках экрана

Сложность в том, что изображение фиксируется в нужном моменте всего на долю секунды, в связи с чем вопрос - возможно ли реализовать за эту долю секунды скриншот экрана, а на запомненном скриншоте уже выполнить поиск цветов?


В описании get color на странице uopilot данной возможности не увидел
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 25.7.2021, 18:50
Сообщение #2


**********

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



Цитата
в 100 точках экрана

Точки расположены на равном расстоянии друг от друга?

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
handness
сообщение 25.7.2021, 19:00
Сообщение #3


**

Neophyte
Сообщений: 27
Регистрация: 25.7.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.026
Возраст: 28



Цитата(cirus @ 25.7.2021, 18:50) *

Точки расположены на равном расстоянии друг от друга?


100 я написал просто для примера чтоб было понятно что через обычный getimage не успеть все быстро проверить, если точнее - их 90, они расположены 10-ю группами по 9 точек. Расстояние между 9-ю точками одной группы одинаковое - сетка с шагом 2px, но все 10 групп находятся в разных частях экрана (расстояние между ними примерно по 80-100px)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 25.7.2021, 19:25
Сообщение #4


**********

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



У findcolor есть параметр шаг поиска.
Код
--lua
local num = findcolor ("0, 0, 100, 100, 2, 20, (0-0xffffff) %arr 2")   -- найти пиксели любого цвета и шагом поиска 2 по X и 20 по Y
hint ("Найдено пикселей: " .. tostring(num))
log(arr[1][1], arr[1][2], arr[1][3])    -- координаты, цвет
log(arr[2][1], arr[2][2], arr[2][3])    -- координаты, цвет
log(arr[3][1], arr[3][2], arr[3][3])    -- координаты, цвет
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
handness
сообщение 15.8.2021, 0:59
Сообщение #5


**

Neophyte
Сообщений: 27
Регистрация: 25.7.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.026
Возраст: 28



Цитата(cirus @ 25.7.2021, 19:25) *

У findcolor есть параметр шаг поиска.
Код
--lua
local num = findcolor ("0, 0, 100, 100, 2, 20, (0-0xffffff) %arr 2")   -- найти пиксели любого цвета и шагом поиска 2 по X и 20 по Y
hint ("Найдено пикселей: " .. tostring(num))
log(arr[1][1], arr[1][2], arr[1][3])    -- координаты, цвет
log(arr[2][1], arr[2][2], arr[2][3])    -- координаты, цвет
log(arr[3][1], arr[3][2], arr[3][3])    -- координаты, цвет



Почему-то не смещается по оси Y

Код

local num = findcolor ("319, 391, 354, 424, 1, 20, (0-0xffffff) %arr 2")   -- найти пиксели любого цвета и шагом поиска 1 по X и 20 по Y
hint ("Найдено пикселей: " .. tostring(num))
log(arr[1][1], arr[1][2], arr[1][3])    -- координаты, цвет
log(arr[2][1], arr[2][2], arr[2][3])    -- координаты, цвет
log(arr[3][1], arr[3][2], arr[3][3])    -- координаты, цвет
log(arr[4][1], arr[4][2], arr[4][3])    -- координаты, цвет
log(arr[5][1], arr[5][2], arr[5][3])    -- координаты, цвет
log(arr[6][1], arr[6][2], arr[6][3])    -- координаты, цвет
log(arr[7][1], arr[7][2], arr[7][3])    -- координаты, цвет
log(arr[8][1], arr[8][2], arr[8][3])    -- координаты, цвет
log(arr[9][1], arr[9][2], arr[9][3])    -- координаты, цвет
log(arr[10][1], arr[10][2], arr[10][3])    -- координаты, цвет


Лог
Код

0:55:00 3 (autosaved_3.txt, 0): 319 391 922728
0:55:00 3 (autosaved_3.txt, 0): 320 391 988269
0:55:00 3 (autosaved_3.txt, 0): 321 391 987763
0:55:00 3 (autosaved_3.txt, 0): 322 391 1052794
0:55:00 3 (autosaved_3.txt, 0): 323 391 1184126
0:55:00 3 (autosaved_3.txt, 0): 324 391 1380997
0:55:00 3 (autosaved_3.txt, 0): 325 391 1446537
0:55:00 3 (autosaved_3.txt, 0): 326 391 1577614
0:55:00 3 (autosaved_3.txt, 0): 327 391 2037399
0:55:00 3 (autosaved_3.txt, 0): 328 391 2759843
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 15.8.2021, 1:08
Сообщение #6


**********

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



Цитата
Почему-то не смещается по оси Y

Код
--lua
log 'clear' log 'mode compact'

local num = findcolor ("319, 391, 354, 424, 1, 20, (0-0xffffff) %arr 2")   -- найти пиксели любого цвета и шагом поиска 1 по X и 20 по Y
hint ("Найдено пикселей: " .. tostring(num))
for i=1, num do
    log(arr[i][1], arr[i][2], arr[i][3])    -- координаты, цвет
end
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
handness
сообщение 15.8.2021, 1:21
Сообщение #7


**

Neophyte
Сообщений: 27
Регистрация: 25.7.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.026
Возраст: 28



Цитата(cirus @ 15.8.2021, 1:08) *

Код
--lua
log 'clear' log 'mode compact'

local num = findcolor ("319, 391, 354, 424, 1, 20, (0-0xffffff) %arr 2")   -- найти пиксели любого цвета и шагом поиска 1 по X и 20 по Y
hint ("Найдено пикселей: " .. tostring(num))
for i=1, num do
    log(arr[i][1], arr[i][2], arr[i][3])    -- координаты, цвет
end



Работает. Думаю, с помощью этого я решу свою задачу. Мерси
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
handness
сообщение 18.8.2021, 22:27
Сообщение #8


**

Neophyte
Сообщений: 27
Регистрация: 25.7.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.026
Возраст: 28



Цитата(cirus @ 15.8.2021, 1:08) *

Код
--lua
log 'clear' log 'mode compact'

local num = findcolor ("319, 391, 354, 424, 1, 20, (0-0xffffff) %arr 2")   -- найти пиксели любого цвета и шагом поиска 1 по X и 20 по Y
hint ("Найдено пикселей: " .. tostring(num))
for i=1, num do
    log(arr[i][1], arr[i][2], arr[i][3])    -- координаты, цвет
end



А как можно сделать чтоб он искал не все подряд цвета, а только оттенки определённого цвета?
1 цвет 9605712
2 цвет 4179597

Пилот их так определил

Но не прям точно эти цвета, а с отклонением. Может, можно задать в % отклонение?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 19.8.2021, 1:39
Сообщение #9


**********

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



Цитата
Может, можно задать в % отклонение?

Код
local num = findcolor ("319, 391, 354, 424, 1, 20, (9605712, 4179597) %arr 2 -1 5")

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

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

 

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