|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.05.2016, 19:52 | #1 |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
Подскажите способы установить неполное окончание анимации
Из заголовка конечно непонятно в чем задача.
В моей программе отслеживается графические изменения в окне другой программы. Я ожидаю полного окончания анимации( назовем это окончанием анимации) таким путем: - таймер на 100 миллисекунд делает скриншот, со скриншоты выделяется небольшой участок, где анимация явно присутствует. - через ScanLine произвожу сумму RGB составляющих всех пикселей изображения. - запоминаем 3 последних значения суммы RGB и сравниваем, если все 3 равны, то считаю анимацию полностью оконченной. Далее у меня идет распознование нужных участков на скриншотах( назовем это распознованием образов) с базовыми рисунками более сложным вариантом через цветоразносное расстояние ( наверное по научному это Расстояние Хэмминга). В общем путем долгого подбора коэффициентов и дополнительных критериев я добился, что на моем компе вот это сравнение трех участков с 750 базовыми изображениями занимает около 1 секунды, при этом ошибок распознования нету. Это меня устраивает. Но, теперь я полностью убираю распознование образов и мне ненужно теперь ждать полного окончания анимации. Вопрос как узнать что основной эффект анимации( а не не полностью) закончился? Т.е. я узнаю полное окончание анимации, но теперь мне нужно чтобы было быстрее и не ждать полного окончания анимации. Проблема в том что здесь нету базового изображения для сравнения, а только текущие изображения. При сравнении их между собой черт его знает что будет. P.S. полная длительность анимации может быть разная. Последний раз редактировалось Illusiony; 02.05.2016 в 20:17. |
02.05.2016, 21:21 | #2 | |
Старожил
Регистрация: 19.06.2013
Сообщений: 2,463
|
Цитата:
Репутация: полный "0"
|
|
02.05.2016, 21:34 | #3 | |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
Цитата:
Партизан, дай больше информации. |
|
02.05.2016, 21:41 | #4 | |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
Цитата:
Первое что приходит в голову, это предположить, что чем ближе конец анимации чем менее значительно будут отличаться картинки, но на самом деле, хз. Можно тупо просто ждать , например 2 секунды и ничего не анализировать, но бывает очень сильная и длительная анимация и через эти 2 сек там будет сплошной туман. Последний раз редактировалось Illusiony; 02.05.2016 в 21:49. |
|
02.05.2016, 21:48 | #5 |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
В каком смысле?
Или это сарказм? На самом деле, даже, если за 100 миллисек не успевает сделать скриншот и эти манипуляции, то на общую результативность это сильно не повлияет. В среднем у меня выходит анимация длится примерно 3 секунды, иногда 4-5 сек. |
02.05.2016, 22:32 | #6 |
Старожил
Регистрация: 19.06.2013
Сообщений: 2,463
|
Сам такое написать не смогу никогда. Дадите код, может и смогу его на форму установить... Это интересно.
Дайте Unit1.pas файл.
Репутация: полный "0"
|
03.05.2016, 00:01 | #7 | |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
Цитата:
Там много лишнего, куча закоменченного кода. В итоге 5000 строк кода вся программа. Это мой онлайн проектик, я его уже делаю переделываю и т.д. Боюсь мало кто сможет разобраться в этих дебрях) |
|
03.05.2016, 10:33 | #8 |
Участник клуба
Регистрация: 12.09.2012
Сообщений: 1,030
|
У меня у одного возник вопрос: Зачем это вдруг нужно?
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби. |
03.05.2016, 17:49 | #9 |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
Я переделываю проект. В ходе чего отказался от распознования образов.
А для распознования образов была обязательное условие полное окончание анимации для возможности безошибочного распознования. Теперь соответственно нет необходимости ждать полного окончания анимации. А время затраченное на ожидания окончания анимации очень кретично для проекта. Выигрыш или проигрыш в 1 секунду имеет значение и влияет на скорость работы проекта и нагруженность сервера. Итоговые изображения будет видеть человек, таким образом допускается небольшая размытость изображения( не оконченная анимация). |
03.05.2016, 18:59 | #10 | |
Участник клуба
Регистрация: 12.09.2012
Сообщений: 1,030
|
Цитата:
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите, как различать способы сравнения значений и параметров | KBO | Помощь студентам | 8 | 26.12.2015 00:02 |
Неполное решение, выручайте!!! | anton.dasuik | Помощь студентам | 1 | 02.02.2013 14:25 |
Подскажите как програмно установить Шрифт (Visual Basic 6) | С.М.С | Помощь студентам | 8 | 07.01.2009 02:03 |
Подскажите как установить G32 или DelphiX | Teen4jump | Общие вопросы Delphi | 3 | 26.06.2007 23:50 |