Constantine
FFT это один большой ручник в коде
Pepe 🐸
Но если интересно читай статью . Там 16 и 24 тайлы их надо свернуть
Constantine
Он нужен когда без него реально нельзя
Pepe 🐸
Pepe 🐸
Так что не вся свертка нужна
Constantine
Ты объект 16*16 в квадрате 24*24 искать не втупую собираешься?
Constantine
Ты же догадываешься, что тебе нужно будет провести два фурье
Constantine
У фурье там множитель логарифм делить на логарифм логарифма
Pepe 🐸
Pepe 🐸
И потом ещё инверсное
Constantine
Технически у тебя два фурье R -> C, шаблон видимо подготовлен
Pepe 🐸
Constantine
Или 81 поиск втупую с расчетом корреляции напрямую
Constantine
Без даблов, без всего
Constantine
Чистенький расчетик
Constantine
Если процессор умеет в векторные операции он такое будет проводить мгновенно
Constantine
так 16 в 24 или 16 в 1000?
Constantine
А вообще я бы на таких размерах изучал, как там аналог карацубы делается, а не фурье, он может быть еще кое-как
Pepe 🐸
Вообще как с массивами работают , если тебе нужно массив перебрать, тебе же важно в каком порядке делать?
Constantine
По строкам, если хранение по строкам
Constantine
Размер 1024 хороший знак
Constantine
Двумерные фурье требуют перестановок строк/столбцов
Pepe 🐸
И потом как применить fftw к такому
Constantine
Надо делать перестановку со сжатием блоков 2*2, если речь про фурье R -> C
Constantine
И вкладывать в структуру типа Q
Pepe 🐸
Pepe 🐸
Constantine
Можно, но тебе не нужно фурье
Constantine
Тебе совершенно точно не нужно писать самому фурье
Pepe 🐸
Constantine
Я в свое время писал нормальный алгоритм примерно неделю
Anonymous
форматнул винчак несколько дней назад, устанавливать стадию лень. Пишу онлайн 😂 а че, оч даже удобно как оказалось
Constantine
Потому что там полный пипец и любую опечатку ты будешь час искать
Constantine
https://pastebin.com/gbgpXuGC
Constantine
вот что такое самописное фурье блджад, я его нашел
Constantine
ошибись в любом знаке и ищи джва часа
Pepe 🐸
Какое нибудь текстовое... Статью или книгу
Constantine
https://pastebin.com/GA2DFWWn
Constantine
вот он, язь здровенный
Constantine
Q это кватернионы, они есть в гугле
Constantine
хотя.. здесь это может совершенно случайно быть C+C
Constantine
a*x.a - i *x.i - j * x.j - k*x.k,
a*x.i + i *x.a + j*x.k - k*x.j,
a*x.j + j *x.a + k*x.i - i*x.k,
a*x.k + k *x.a + i*x.j - j*x.i
Constantine
таблица умножения
Constantine
Нам целый курсач этим мозги имели
Constantine
Если кратко, то не обязательно проводить Фурье в С
Constantine
Можно проводить в другом теле
Constantine
В данном случае используются тела размера 4, чтобы вложить вещественные и все осталось квадратным
Constantine
Потом идет распаковка и получается результирующее фурье
Constantine
Если известно, что результат получится вещественный, нужно написать что-то такое
Constantine
Сложить вещественную и мнимую часть инпута, провести фурье как вещественного, взять разницу вещественной и мнимой части аутпута
Ioann_
Но судя по твоей задаче - я что то похожее, но в 3D делал иначе, но тоже за счет аналогии со свертками. Т.е без FFT
Ioann_
Evgenii
ep
Так что там с мобилками, подскажет кто :)?
Там встатье сравнивается с этим:
http://research.nvidia.com/publication/flexisp-flexible-camera-image-processing-framework
Насколько я понял, оно на GPU тоже работает
Ioann_
можно
Интересно, довольно таки. Спасибо - знать буду, может и использовать.
Pepe 🐸
Anonymous
Почему есть много с++ компиляторов онлайн и ни одного с отладкой ? )
Stanislav
Aidar
Aidar
ну хотя смотря на каких
Aidar
Aidar
или ты хочешь отладку на javascript?
Aidar
с эммуляцией x86
Stanislav
Anonymous
Aidar
на плюсах
я имел ввиду исполнение проги твоей джаваскриптом
Anonymous
vladislav
Дебаг онлайн, без смс, без регистрации
Ioann_
на мобилках же есть compute shaders и opencl нет разве?
Честно - не разбираюсь, что есть на мобилках. Я сразу по пеку натачивался. Не все же мне в этом мире знать и уметь. Но теперь знаю, что вроде как есть. Это радует, надеюсь - что опенцль в помощь, и тогда переписывать не нужно будет:)