Author Topic: Скан пикселей и отчет в процентах.  (Read 2814 times)

0 Members and 1 Guest are viewing this topic.

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Народ, знаю, что задача плевая, но у меня уже голова пухнет... Как организовать скан пикслей - SCANPXL($ARR_SCAN, $xp1,$yp1, $xp2,$yp2, $color), с отчетом в процентах на выходе? Ну, типа - сколько процентов от всей площади, на которой мы ищем, занято искомыми пикселями.

Чтоб понятно было... К примеру, есть полоска хп моба. И мне нужно получать проценты хп этого моба. Ну, чтобы точек контрольных там не ставить дохрена. Я уже как-то делал это, но исходник найти не могу и забыл уже - для какого проекта вообще это делал...
« Last Edit: July 23, 2018, 08:43:34 AM by Vint »
Я не ду... Потому и не бу...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #1 on: July 19, 2018, 05:50:42 PM »
Не?
Code: (clickermann) [Select]
SCANPXL($ARR_SCAN, $xp1,$yp1, $xp2,$yp2, $color)
$percent = ((ARRSIZE($ARR_SCAN)/2) * 100) / (($xp2-$xp1+1) * ($yp2-$yp1+1))
LOGWRITE("Цвет занимает ", $percent, "%")
« Last Edit: July 19, 2018, 06:06:15 PM by Vint »


Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #2 on: July 19, 2018, 05:53:42 PM »
Не?
Code: (clickermann) [Select]
SCANPXL($ARR_SCAN, $xp1,$yp1, $xp2,$yp2, $color)
$percent = ((ARRSIZE($ARR_SCAN)/2) * 100) / (($xp2-$xp1+1) * ($yp2-$yp1+1) * 100)
LOGWRITE("Цвет занимает ", $percent, "%")
Цвет занимает 0.59672131148% А у меня вся полоска красная...
Я не ду... Потому и не бу...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #3 on: July 19, 2018, 05:55:58 PM »
Только нафига там SCANPXL если нам не нужны координаты, можно же просто посчитать
Code: (clickermann) [Select]
GETSCREEN
$count = PXLCOUNT($xp1,$yp1, $xp2,$yp2, $color)
$percent = ($count * 100) / (($xp2-$xp1+1) * ($yp2-$yp1+1))
LOGWRITE("Цвет занимает ", $percent, "%")
« Last Edit: July 19, 2018, 06:07:01 PM by Vint »


Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #4 on: July 19, 2018, 06:02:47 PM »
Только нафига там SCANPXL если нам не нужны координаты, можно же просто посчитать
Code: (clickermann) [Select]
GETSCREEN
$count = PXLCOUNT($xp1,$yp1, $xp2,$yp2, $color)
$percent = ($count * 100) / (($xp2-$xp1+1) * ($yp2-$yp1+1) * 100)
LOGWRITE("Цвет занимает ", $percent, "%")
1 процент показывает... Ща... Я тут по ходу тоже чуток путаю с корами. Пойду подышу чуток на улице и отвечу.
Я не ду... Потому и не бу...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #5 on: July 19, 2018, 06:06:42 PM »
Поправил. Там откуда то *100 в конце затесался.
« Last Edit: July 19, 2018, 06:13:26 PM by Vint »


Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #6 on: July 19, 2018, 06:23:00 PM »
Поправил. Там откуда то *100 в конце затесался.
Во! Спс большое!
Я не ду... Потому и не бу...

h31p

  • Зашел в гости
  • *
  • Posts: 16
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #7 on: July 20, 2018, 09:38:06 PM »
кстати.

давно хотел попросить, чтоб как-то можно было получать фактический процент совпадения после IF_PICTURE_IN/SCANPICTURE.
он всё равно высчитывается в процессе работы функций, остаётся его только положить в какую-то служебную переменную навроде $_return3.

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

надеюсь, автор прочитает и положит этот виш в не самый долгий ящик :)

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Скан пикслей и отчет в процентах.
« Reply #8 on: July 21, 2018, 08:31:53 AM »
кстати.

давно хотел попросить, чтоб как-то можно было получать фактический процент совпадения после IF_PICTURE_IN/SCANPICTURE.

http://crapware.aidf.org/forum/index.php?topic=1022.msg4329#msg4329