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
12445
Тут наверное нужен телефон с лидаром. В айфонах-про кажется есть.

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


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

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

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

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

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


18/05/15
781
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
781
ilghiz в сообщении #1550913 писал(а):
задача совсем не такая простая, как Вы говорите

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

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


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

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

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

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


18/05/15
781
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
3553
г. Чехов
Задача из области 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, Супермодераторы



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

Сейчас этот форум просматривают: worm2


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

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