|
findimage не хочет дружить с картинками, такие дела |
|
|
BydloScripter |
19.1.2013, 23:43
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
findimage выдает ошибку на некоторых картинках. Есть 16 картинок 11х11 глубина цвета 24, формат .bmp, все сохранялись в фотошопе по одному и тому же шаблону, разве что вырезались с разных скриншотов. Пересохранение через пэйнт и другие программы не помогает. И, что странно, как правило ошибку выдавало на одних и тех же картинках, но при следующем запуске скрипта с одними картинками становилось всё нормально, а нормальные начинали выдавать ошибку. Сначала ошибку стабильно выдавали 1, 5, 11, 14 и 15 картинки, теперь 1, 5, 10, 11 и 14 хотя сами картинки не менялись когда это произашло. set #size size (%crds) log $filename $a #size Код 0:32:08 1 (, 14): 1 -1 100 0:32:09 1 (, 14): 2 0 0 0:32:10 1 (, 14): 3 0 0 0:32:11 1 (, 14): 4 0 0 0:32:12 1 (, 14): 5 -1 100 0:32:12 1 (, 14): 6 0 0 0:32:13 1 (, 14): 7 0 0 0:32:14 1 (, 14): 8 0 0 0:32:15 1 (, 14): 9 0 0 0:32:16 1 (, 14): 10 -1 100 0:32:17 1 (, 14): 11 -1 100 0:32:18 1 (, 14): 12 0 0 0:32:19 1 (, 14): 13 0 0 0:32:20 1 (, 14): 14 -1 100 0:32:21 1 (, 14): 15 0 0 0:32:21 1 (, 14): 16 2 2 В чём может быть причина? Как починить картинки?
|
|
|
|
BydloScripter |
19.1.2013, 23:58
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Цитата(Zeleax @ 20.1.2013, 0:52) а если перед/после findimage wait 100 поставить?
И скрипт где?
и проблемные картинки приложить надо
Код set #handle workwindow get windowpos #handle #StartX #StartY #width #height #result set #picnumber 16 if #width > 0 set $bmp .bmp set $path \images\ set #s 1 set #step 1 for #step 1 #picnumber set $filename #step set #MaxImageCount -1 wait 1000 set $check findimage (#StartX #StartY #width #height ($path$filename$bmp) %crds 2 80 #MaxImageCount 3) wait 1000 set #size size (%crds) log #step $check #size if $check > 0 set #size size (%crds) set #i 1 for #i 1 #size set %PicsCrds[#s 1] %crds[#i 1] set %PicsCrds[#s 2] %crds[#i 2] set #s #s + 1 end_for end_if set size (%crds) end_for end_if set #s 1 set #size size (%PicsCrds) for #s 1 #size log #size %PicsCrds[#s 1], %PicsCrds[#s 2] end_for pause_script Задержки не помогли, щас прицеплю картинки По отдельности чот не цеплялись, кинул архивом всю папку
Прикрепленные файлы
images.zip ( 4,73 килобайт )
Кол-во скачиваний: 147
|
|
|
|
BydloScripter |
20.1.2013, 0:15
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Цитата(Zeleax @ 20.1.2013, 1:09) почему то у проблемных картинок размер файла 450 байт, а у непроблемных 452.
Странно, но некоторые картинки перестают иногда выдавать ошибки, а некоторые начитают, даже если с ними ничего не делать. Цитата(Zeleax @ 20.1.2013, 1:09) Кроме того, вызывают недоумение строки: set #step 1 // лишняя
Когда переменная объявляется в цикле она автоматом становится равной 1? Цитата(Zeleax @ 20.1.2013, 1:09) for #step 1 #picnumber
Это цикл для поиска всех из 16 картинок Цитата(Zeleax @ 20.1.2013, 1:09) и set size (%crds) // что это?
обнуление временного массива с координатами найденых картинок, он перезаписывается после каждого поиска, нежелательно чтобы там оставались лишние координаты из предыдущего шага цикла.
|
|
|
|
BydloScripter |
20.1.2013, 0:24
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Вот новый лог. касячные картинки под номером 1, 5, 11, 14 хотя по 450б весят 1, 5, 11, 14 и 15Код 1:21:31 1 (, 16): 1 -1 100 1:21:35 1 (, 16): 2 0 0 1:21:38 1 (, 16): 3 0 0 1:21:41 1 (, 16): 4 0 0 1:21:44 1 (, 16): 5 -1 100 1:21:47 1 (, 16): 6 0 0 1:21:50 1 (, 16): 7 0 0 1:21:53 1 (, 16): 8 0 0 1:21:57 1 (, 16): 9 0 0 1:22:00 1 (, 16): 10 0 0 1:22:03 1 (, 16): 11 -1 100 1:22:06 1 (, 16): 12 0 0 1:22:09 1 (, 16): 13 0 0 1:22:12 1 (, 16): 14 -1 100 1:22:16 1 (, 16): 15 0 0 1:22:19 1 (, 16): 16 2 2
|
|
|
|
BydloScripter |
20.1.2013, 0:47
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Переделал картинки 5, 11, 14, 15, причём 5ю с помощью фотошопа, остальные в пэйнте, итог: Код 1:41:57 1 (, 16): 1 -1 100 1:41:58 1 (, 16): 2 0 0 1:42:00 1 (, 16): 3 0 0 1:42:01 1 (, 16): 4 0 0 1:42:03 1 (, 16): 5 -1 100 1:42:04 1 (, 16): 6 0 0 1:42:05 1 (, 16): 7 0 0 1:42:07 1 (, 16): 8 0 0 1:42:08 1 (, 16): 9 0 0 1:42:09 1 (, 16): 10 0 0 1:42:11 1 (, 16): 11 -1 100 1:42:12 1 (, 16): 12 0 0 1:42:13 1 (, 16): 13 0 0 1:42:15 1 (, 16): 14 -1 100 1:42:16 1 (, 16): 15 0 0 1:42:17 1 (, 16): 16 2 2 картинка 5 стала весить 452б, при этом всё также не работает, переделаная пэйнтом картинка 15 всё также весит 450б и по прежнему работает. Зато узнал что сохраняя картинку фотошопом в итоге получается 452б, а в пэйнте 450б, на работоспособности это не сказывается, просто я уже переделывал касячные картинки в пэйнте, поэтому они и весили на 2б меньше. Все картинки вырезались со свежесделанных скриншотов.
|
|
|
|
BydloScripter |
20.1.2013, 0:56
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Цитата(Zeleax @ 20.1.2013, 1:49) интересно, а если картинки просто поменять местами рабочие с нерабочими? пятерка в файле 4.bmp, а четверка в файле 5.bmp
Ожидаемо) Код 1:55:19 1 (, 16): 1 -1 100 1:55:21 1 (, 16): 2 0 0 1:55:22 1 (, 16): 3 0 0 1:55:23 1 (, 16): 4 -1 100 1:55:25 1 (, 16): 5 0 0 1:55:26 1 (, 16): 6 0 0 1:55:28 1 (, 16): 7 0 0 1:55:29 1 (, 16): 8 0 0 1:55:30 1 (, 16): 9 0 0 1:55:32 1 (, 16): 10 0 0 1:55:33 1 (, 16): 11 -1 100 1:55:34 1 (, 16): 12 0 0 1:55:36 1 (, 16): 13 0 0 1:55:37 1 (, 16): 14 -1 100 1:55:38 1 (, 16): 15 0 0 1:55:40 1 (, 16): 16 2 2 Щас займусь поиском програмулины, которая бы давала больше инфы о картинке чем размер и глубина цвета, чем-то они всё таки должны отличаться.
|
|
|
|
BydloScripter |
20.1.2013, 1:16
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Цитата(Zeleax @ 20.1.2013, 2:02) а в проблемных картинках случайно нет черного цвета (0) или другого? причем чтоб этот цвет отсутствовал в непроблемных? где то ж падает findimage
Есть только почти чёрный цвет R(0)G(8)B(41) Но в работающей картинке есть ещё черней) R(0)G(12)B(0)
|
|
|
|
BydloScripter |
20.1.2013, 2:01
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Маленький интересный факт: Код set #StartX 0 set #StartY 0 set #EndX 1 set #EndY 1 for #count 1 1000 set $check findimage (#StartX #StartY #EndX #EndY (11.bmp) %crds 2 80 -1 3) set #EndX #count set #EndY #count log $check #EndX, #EndY if $check = -1 log Вотэтапаварот! pause_script end_if end_for
Код 3:00:04 2 (, 8): 0 898, 898 3:00:04 2 (, 8): 0 899, 899 3:00:04 2 (, 8): 0 900, 900 3:00:04 2 (, 8): 0 901, 901 3:00:04 2 (, 8): 0 902, 902 3:00:04 2 (, 8): 0 903, 903 3:00:04 2 (, 8): 0 904, 904 3:00:04 2 (, 8): 0 905, 905 3:00:04 2 (, 8): 0 906, 906 3:00:04 2 (, 8): 0 907, 907 3:00:04 2 (, 8): 0 908, 908 3:00:04 2 (, 8): 0 909, 909 3:00:04 2 (, 8): 0 910, 910 3:00:04 2 (, 8): 0 911, 911 3:00:04 2 (, 8): 0 912, 912 3:00:04 2 (, 8): 0 913, 913 3:00:04 2 (, 8): 0 914, 914 3:00:04 2 (, 8): 0 915, 915 3:00:04 2 (, 8): 0 916, 916 3:00:04 2 (, 8): 0 917, 917 3:00:04 2 (, 8): 0 918, 918 3:00:04 2 (, 8): 0 919, 919 3:00:04 2 (, 8): 0 920, 920 3:00:04 2 (, 8): 0 921, 921 3:00:04 2 (, 8): 0 922, 922 3:00:04 2 (, 8): 0 923, 923 3:00:04 2 (, 8): 0 924, 924 3:00:04 2 (, 8): 0 925, 925 3:00:04 2 (, 8): 0 926, 926 3:00:05 2 (, 8): 0 927, 927 3:00:05 2 (, 8): 0 928, 928 3:00:05 2 (, 8): 0 929, 929 3:00:05 2 (, 8): 0 930, 930 3:00:05 2 (, 8): 0 931, 931 3:00:05 2 (, 8): -1 932, 932 3:00:05 2 (, 10): Вотэтапаварот!
|
|
|
|
BydloScripter |
20.1.2013, 2:10
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
Цитата(Zeleax @ 20.1.2013, 3:06) За пределы окна не вылезли?
нет, окно 1920х1036\ косячная картинка норм работает пока пределы зоны поиска не вылезут за 932
|
|
|
|
BydloScripter |
20.1.2013, 9:55
|
Neophyte
Сообщений: 42
Регистрация: 16.1.2013 Группа: Пользователи Наличность: 0
Пользователь №: 15.680
Возраст: 23
|
В итоге, как выяснилось, ошибка вылетает далеко не всегда при зоне поиска 1920х1036, при типе поиска 1 - всё нормально, ошибки нет, картинка находится, но очень долго. Также нет ошибки если рабочее окно перекрыто другими окнами, но и картинка в этом случае конешно не находится. Нет ошибки если вместо типа поиска поставить хэндл рабочего окна (вроде тогда он должен находить картинки и в перекрытом окне) но картинка не находится даже когда она там есть и даже если окно не перекрыто)) Также изменяется по непонятной логике максимальная зона поиска, сегодня уже Код 10:54:12 2 (, 9): 3 1026, 1026 10:54:12 2 (, 9): 3 1027, 1027 10:54:12 2 (, 9): 3 1028, 1028 10:54:12 2 (, 9): -1 1029, 1029 10:54:12 2 (, 11): Вотэтапаварот!
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|