2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2, 3  След.
 
 По видеоряду получить углы наклона и координаты воблы
Сообщение21.03.2022, 19:20 


11/08/18
363
Добрый день,

не пинайте сильно, я действительно серьезно.

Имею видеоряд, примерно как по ссылке: https://www.multi-d.com/tst_w_b_l_a/wobla.mp4 где обычным мобильником снята... вобла.

Мне надо для каждого кадра (или хотя бы примерно 5 раз в секунду) получить точное местоположение воблы - то есть линейное перемещение и углы наклона (или унитарную матрицу вращения), все относительно того, как лежала эта рыба на самом первом кадре.

Камера стоит всегда неподвижно. Вобла движется с минимальными рывками (я ее рукой буду за хвост двигать), но камера может иногда криво сфокусироваться (надо это обыгрывать как-то). Есть тень, которая может заехать в самый не подходящий момент и эта тень может меняться от эксперимента к эксперименту.

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

Точность нужна около 1-2мм.

Как я вижу сам. После вытаскивания каждых отдельных кадров ffmpeg у каждого кадра считать точки максимумов градиентов, далее пытаться их друг другу сопоставить, и на основании этого всего вытаскивать движение в виде кватерниона и линейного вектора перемещения. Далее на все координаты кватерниона и вектора перемещения еще наложить по времени эксперимента какую-нибудь регуляризацию по Тихонову, чтобы ошибки-скачки убрать. Как поступать с тенями и расфокусировкой - хз, тени точно будут создавать протяженные блоки максимума градиента, а расфокусировка - создавать эффект, что рыба вверх-вниз движется.

Также не понятно, как поступать, когда вобла видна очень частично, а это происходит, когда она сильно к камере приближается.

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

PS: 9DOF или что-то аналогичное на рыбу навесить не предлагать, во-первых, там магнетометр не работает, во-вторых точности не хватает, я уже проверял.

Спасибо!

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение21.03.2022, 22:06 


05/09/16
11519
Тут наверное нужен телефон с лидаром. В айфонах-про кажется есть.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение21.03.2022, 22:34 


11/08/18
363
Спасибо за отзыв!

wrest в сообщении #1550869 писал(а):
Тут наверное нужен телефон с лидаром. В айфонах-про кажется есть.

Айфона-про нет и, честно говоря, так бы не хотелось его покупать, тем более, что есть сомнения, что он решит эту задачу.

Вопрос вызван тем, что то, что я написал выше, я вроде могу запрограммировать, но, предполагаю, буду минимум пару недель отлаживать, но не факт, что там все будет гладко. Остальные решения (несколько лидаров направить с разных сторон на воблу) будет дольше по времени, так как и железо проектировать-паять, и софт там не на много проще.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение22.03.2022, 12:51 


18/05/15
680
ilghiz в сообщении #1550860 писал(а):
Надо по-простому

Проще съесть рыбу) А так, если известны оптические характеристики смартфона и положение воблы относительно его сенсора в начальный момент времени, то интересующие вас величины будут входить в выражения проекции воблы в качестве неизвестных параметров. Остаётся лишь написать их, easy :D

-- 22.03.2022, 14:04 --

... а, во, простой эмпирический способ: нарисуйте на пов-ти воблы прямоугольную сетку, но прежде поймите как ведет себя проекция сетки на плоскость (=обрести соответствующий опыт)

-- 22.03.2022, 14:11 --

а вообще любопытная задачка. Вы случайно там не систему наведения для партизан придумать хотите? :shock:

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение22.03.2022, 14:02 


11/08/18
363
Спасибо большое, ihq.pl за комментарии!

ihq.pl в сообщении #1550911 писал(а):
А так, если известны оптические характеристики смартфона и положение воблы относительно его сенсора в начальный момент времени, то интересующие вас величины будут входить в выражения проекции воблы в качестве неизвестных параметров. Остаётся лишь написать их, easy :D

Если бы вобла всегда плоско фигурировала бы на видеоряде - да, задача решалась бы через двухмерное Фурье, но вобла может же крутиться-вертеться, и тут задача совсем не такая простая, как Вы говорите.

ihq.pl в сообщении #1550911 писал(а):
... а, во, простой эмпирический способ: нарисуйте на пов-ти воблы прямоугольную сетку, но прежде поймите как ведет себя проекция сетки на плоскость (=обрести соответствующий опыт)


сетку нарисовать не могу. Во-первых на вобле не понятно как рисовать эту сетку, во-вторых, ее поверхность совсем не плоская, и сетка будет очень кривой со всеми вытекающими, в-третьих - нельзя, просто нельзя.

ihq.pl в сообщении #1550911 писал(а):
а вообще любопытная задачка. Вы случайно там не систему наведения для партизан придумать хотите? :shock:

Нет, к военным или околовоенным задачам это не имеет ни какого отношения. По хорошему мне это нужно разово, в продакшн это не пойдет, но надо проверить этим методом другие методы такого позиционирования.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 11:08 


18/05/15
680
ilghiz в сообщении #1550913 писал(а):
задача совсем не такая простая, как Вы говорите

А я не говорил, что она простая. В общем виде она вообще не решается в силу её "некорректности". Можно было бы решить при некоторых дополнительных условиях, но эти условия, как я понял, обеспечить невозможно.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 14:29 


11/08/18
363
Спасибо, ihq.pl за комментарий!

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

Я сильно сомневаюсь, что такие задачи людям не известны, да даже в начале 90-х, когда я был студентом ВМиК, уже такие задачи обсуждались, а сейчас решений должно быть просто куча. Я просто до этого не сталкивался именно с этой областью знаний, и обладаю в основном теоретическими познаниями как такие задачи решать и в своем первом сообщении эти идеи сформулировал, и надеюсь, что таки кто-то уже решавший практически такие задачи немного скорректирует мои идеи, чтобы зазря не наступать на всем известные грабли и не повторять общеизвестных ошибок.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 18:25 


18/05/15
680
ilghiz в сообщении #1550964 писал(а):
человеческий глаз и мозг всегда идеально может распознать такие движения, отделив тени от самой воблы, осталось только правильно перенести это на алгоритмы.

хорошая тема к пиву :D .. а что, вобла уже есть
Мозг... еще бы понять что это такое. Да что мозг, понять хотя бы что такое глаз.
По поводу "некорректных" задач - это особый класс задача в физике/математике, в частности, это задачи, не имеющие единственного решения. Ваша задача.. не знаю, в принципе там отображается двумерная поверхность на двумерную плоскость. Теоретически, для реконструкции пов-ти воблы должно хватить двух проекций. Но для этого нужны данные, которых у вас нет.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 18:46 
Аватара пользователя


07/03/16

3167
ilghiz в сообщении #1550913 писал(а):
сетку нарисовать не могу

Сетку надо рисовать лазером с разверткой (как растр). Тогда и проблем с тенями не будет.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 20:12 


11/08/18
363
Спасибо большое, ihq.pl и Emergency за советы!

По поводу некорректных задач - да, представьте, я тоже в курсе, что это такое, и даже как-то несколько своих DOI на эту тему некорректно поставленных задач тут недавно выкладывал, то есть достаточно хорошо и из первых рук знаю о чем говорю, думал Вы сами догадаетесь что мне эта тематика знакома, когда до этого Тихонова упоминал, ан нет, решили Вы меня уму разуму поучить :)

Сетку лазером рисовать - этож надо железо собрать соответствующее, а мне лениво. Я, пока тут эта тема медленно обсуждается, уже метод градиентов и их сравнений заканчиваю программировать. Жалко, что к этому методу советов по существу, буду воплощать известную теорию в лоб как есть, благо простые распознавалки я уже когда-то писал, теперь попробую пораспозновать что-то реально осязаемое :)

Эта вобла, кстати, уже с пивом вчера хорошо пошла, как всегда с икрой попалась.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 21:12 


12/07/15
2941
г. Чехов
Задача из области Computer Vision. Можно выдернуть из изображений характерные точки (термин из области CV, есть такие алгоритмы), сопоставить их координаты, используя и обучая матрицу аффинных преобразований. Эта матрица и даст смещения и углы поворота. Но это все абстрактно и неточно... Но суть в этом.
Проще с бутылкой пива попробовать эксперимент.)

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 21:27 


11/08/18
363
Спасибо большое, Mihaylo, за совет!

Я как раз именно то, что Вы написали, пытаюсь сделать. Основной мой вопрос как раз был в том на что дополнительно обратить внимание, так как я характерные точки
1. из-за расфокусировки уплывают (на видео на первых секундах видна расфокусировка),
2. наличие тени дополнительно добавляет этих точек (тень хорошо видна на видео и точек она добавляет просто немерянно).

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

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

PS: эта вобла, как на моем видеоряде, похоже, во время эксперимента слегка гнулась, хоть и подсушена была довольно хорошо.

PPS: робко вопрошая у модераторов, скажите, пожалуйста, может мне надо было эту тему в "Искусственный интеллект и Машинное обучение" разделе спросить, и, если да, перенесите меня туда, пожалуйста?

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 22:14 


20/03/14
12041
ilghiz
Модераторов лучше вопрошать в ЛС, тут они могут и не заметить.
По существу: я повременю, пока неясно, куда скатится тема, в обсуждение обработки видеоизображений или достоинств воблы.

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение23.03.2022, 22:49 


11/08/18
363
Спасибо большое, Lia, за советы и поддержку!

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

 Профиль  
                  
 
 Re: По видеоряду получить углы наклона и координаты воблы
Сообщение24.03.2022, 10:13 
Аватара пользователя


07/03/16

3167
ilghiz в сообщении #1550985 писал(а):
а вот ее углы и линейное расположение так до сих пор и не посчитаны.

А вы уже формализовали плоскость воблы (нулевой угол)?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу 1, 2, 3  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group