|
|
  |
Двумерное FFT на основе одномерного, Как правильно выбрать разрядность для промежуточных данных? |
|
|
|
Dec 7 2015, 19:34
|
Участник

Группа: Участник
Сообщений: 67
Регистрация: 3-02-14
Из: Интернет
Пользователь №: 80 322

|
Цитата Насколько я понимаю, полученный спектр будет симметричным, так что достаточно хранить только реальную часть примежуточной матрицы. Так ли это? Нет. Это значит что надо хранить реальную и мнимую часть, но достаточно половины отсчётов. Цитата И как выбрать разрядность для промежуточной матрицы? 8, 10 бит? Профи лучше ответят. Но насколько я понял это зависит от уровня шумов допустимых на следующем этапе обработки. И скорее вам подойдёт 16 бит.
Сообщение отредактировал Pavia - Dec 7 2015, 19:35
|
|
|
|
|
Dec 7 2015, 19:45
|
Местный
  
Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056

|
Цитата(Pavia @ Dec 7 2015, 22:34)  Нет. Это значит что надо хранить реальную и мнимую часть, но достаточно половины отсчётов. Т.е. если количество точек FFT равно 128, то достаточно будет хранить отсчёты с 0 по 63?
|
|
|
|
|
Dec 9 2015, 16:46
|

Профессионал
    
Группа: Участник
Сообщений: 1 072
Регистрация: 11-12-12
Пользователь №: 74 815

|
Если Вы собрались делать полноценное двумерное Фурье, то для представления результата нужны все полученные коэффициенты. Это в ДКП возможное число коэффициентов, при некотором допущении, получается меньшим. Выкинув половину полученных коэффициентов, вы можете получить нулевой результат при полноценном исходном кадре. Мы опять вернулись к вопросу: что ВЫ с этим двумерным Фурье потом будете делать? Если сжимать, то берите первый jpeg (не редакции 2000 года, в нем уже вейвлеты) и читайте-там все разжевано. Только там матрица 8х8 и придется напрячься, чтобы адаптировать под ВАШИ 128х128. Если использовать как фильтр шума, в системе распознания образов, то Фурье в данном случае инструмент непригодный и надо использовать ДДВП или ДДПУ с алгоритмом предложенным вами и округлением, которое надо подобрать на основе некоторого практического эксперимента с ВАШЕЙ библиотекой образов.
|
|
|
|
|
Dec 10 2015, 14:08
|
Местный
  
Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056

|
Цитата(Corner @ Dec 9 2015, 20:46)  Если Вы собрались делать полноценное двумерное Фурье, то для представления результата нужны все полученные коэффициенты. Это в ДКП возможное число коэффициентов, при некотором допущении, получается меньшим. Выкинув половину полученных коэффициентов, вы можете получить нулевой результат при полноценном исходном кадре. Мы опять вернулись к вопросу: что ВЫ с этим двумерным Фурье потом будете делать? Если сжимать, то берите первый jpeg (не редакции 2000 года, в нем уже вейвлеты) и читайте-там все разжевано. Только там матрица 8х8 и придется напрячься, чтобы адаптировать под ВАШИ 128х128. Если использовать как фильтр шума, в системе распознания образов, то Фурье в данном случае инструмент непригодный и надо использовать ДДВП или ДДПУ с алгоритмом предложенным вами и округлением, которое надо подобрать на основе некоторого практического эксперимента с ВАШЕЙ библиотекой образов. С тем, что нужно хранить все значения я теперь разобрался. FFT нужен для того, чтобы сделать взаимную коррелляцию текущего и предыдущего кадра. Таким образом я хочу определить смещение текущего фонового изображения относительно предыдущего. Всё это нужно для автоматической стабилизации изображения.
|
|
|
|
|
Dec 10 2015, 19:03
|
Местный
  
Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056

|
Цитата(Corner @ Dec 10 2015, 20:33)  Как определяют фон... Сначала делают межкадровое вычитание. Потом делают инверсию модуля с сохранением знака, чтобы участки с малой разницей между кадрами стали максимально яркими. Это и есть фоновые участки. Результат обрабатывают Фурье, вейвлетами или преобразованием Уолша. Тут уже для поиска движения подходят разные методы. Сразу скажу, при такой обработке нужна максимально высокая точность и обрезать биты не рекомендуется. Для вашего случая результат будет 15 битный после строк и 22 битный после столбцов. Обрежете сильнее, на малоконтрастных изображениях начнет косячить стабилизатор. К сожалению, просто межкадровое вычитание делать не получиться, т.к. за время одного кадра камера может повернуться весьма значительно. Хотя может быть я не до конца понял Ваш алгоритм... Если кратко описать задачу, то мне нужно получить две вещи: 1. Стабилизировать изображение движущейся камеры, причём она может вращаться как по оси X, так и по оси Y. Т.е. нужно убрать тряску которая возникает при вращении опорно-поворотного устройства. 2. Определить смещение изображения и после этого сделать межкадровое вычитание, чтобы определить координаты движущегося объекта и отцентрировать по нему видеокамеру.
|
|
|
|
|
Jan 26 2016, 20:13
|
Частый гость
 
Группа: Участник
Сообщений: 86
Регистрация: 10-01-13
Пользователь №: 75 145

|
Цитата(BSACPLD @ Dec 7 2015, 22:03)  И как выбрать разрядность для промежуточной матрицы? 8, 10 бит? Делал похожую штуку, для достижения нормальной точности пришлось перейти на 32 бит float
|
|
|
|
Guest_TSerg_*
|
Jan 26 2016, 21:22
|
Guests

|
Цитата(Burenkov Sergey @ Jan 26 2016, 23:13)  Делал похожую штуку, для достижения нормальной точности пришлось перейти на 32 бит float Информативность Вашего поста близка к нулю, это же очевидно, нэ? И, да - поясните, что Вы подразумеваете под 32 бит float? Неужели IEEE754 и single? А, какую именно модель подстандарта? Интелловскую "расслабленную" или более корректную? А, тест «Floating point paranoia» проходили на своей платформе? Нет? Ну.. батенька.
|
|
|
|
|
Jan 27 2016, 09:49
|
Частый гость
 
Группа: Участник
Сообщений: 86
Регистрация: 10-01-13
Пользователь №: 75 145

|
Цитата(TSerg @ Jan 27 2016, 00:22)  Информативность Вашего поста близка к нулю, это же очевидно, нэ? Нэ Цитата(TSerg @ Jan 27 2016, 00:22)  И, да - поясните, что Вы подразумеваете под 32 бит float? Неужели IEEE754 и single? Да Цитата(TSerg @ Jan 27 2016, 00:22)  А, какую именно модель подстандарта? Интелловскую "расслабленную" или более корректную? А, тест «Floating point paranoia» проходили на своей платформе? Нет? Не знаю что такое расслабленная и более корректная модель)) Каюсь, понадеялся что ребята из альтеры разрулили это за меня в своем ффт мегакоре
|
|
|
|
|
Jan 27 2016, 10:14
|

я только учусь...
     
Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839

|
Цитата(Burenkov Sergey @ Jan 27 2016, 11:49)  Нэ
Да
Не знаю что такое расслабленная и более корректная модель)) Каюсь, понадеялся что ребята из альтеры разрулили это за меня в своем ффт мегакоре Я понимаю краткость сестра таланта. В этой ветке делятся алгоритмами или разбираются в алгоритмах/математике. Совет: Ответы/посты, информативность которых сводиться к нулю, лучше просто не давайте здесь. Если же отвечаете давайте более менее полный ответ на вопрос, чтобы было понятно другим. Иначе в будущем можете получить на свои вопросы ответы в Вашем стиле...
--------------------
If it doesn't work in simulation, it won't work on the board.
"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
|
|
|
|
|
Jan 27 2016, 10:24
|
Частый гость
 
Группа: Участник
Сообщений: 86
Регистрация: 10-01-13
Пользователь №: 75 145

|
Цитата(Maverick @ Jan 27 2016, 13:14)  Я понимаю краткость сестра таланта. В этой ветке делятся алгоритмами или разбираются в алгоритмах/математике. Совет: Ответы/посты, информативность которых сводиться к нулю, лучше просто не давайте здесь. Если же отвечаете давайте более менее полный ответ на вопрос, чтобы было понятно другим.
Иначе получите на свои вопросы ответы в Вашем стиле... Я весь алгоритм не могу расписать, т.к. алгоритм не мой, я подписывал NDA. Человек спросил про разрядность, я описал свой опыт в этом вопросе. Написал потому что если человек сделает на 16 бит все систему, то как только он начнет с реальной камерой работать, поймет что пол проекта надо переписывать. 32 битный флоат по умолчанию предполагает IEEE754, по крайней мере везде, где я с этим сталкивался, в том числе в альтервской коре, которую я использую.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|