Я хочу реализовать некоторые алгоритмы обработки изображений, предназначенные для работы на beagleboard .Эти алгоритмы широко используют свертки.Я пытаюсь найти хорошую реализацию C для двумерной свертки (возможно, используя быстрое преобразование Фурье).Я также хочу, чтобы алгоритм мог работать на DSP beagleboard, потому что я слышал, что DSP оптимизирован для таких операций (с его командой умножения-накопления).
У меня нет опыта вполе, так что я думаю, что это не будет хорошей идеей, чтобы реализовать свертку самостоятельно (я, вероятно, не буду делать это так же хорошо, как тот, кто понимает всю математику за ней).Я полагаю, что где-то существует хорошая сверточная реализация C для DSP, но я не смог ее найти?
Может ли кто-нибудь помочь?
РЕДАКТИРОВАТЬ: Оказалось, что ядро довольномаленький.Его размеры 2X2 или 3X3.Так что, думаю, я не ищу реализацию на основе FFT.Я искал свертку в сети, чтобы увидеть ее определение, чтобы я мог реализовать ее прямым способом (я действительно не знаю, что такое свертка).Все, что я нашел, это что-то с умноженными интегралами, и я понятия не имею, как это сделать с матрицами.Может ли кто-нибудь дать мне кусок кода (или псевдокод) для случая ядра 2X2?