Быстрая 1D свертка с собственным C ++?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Быстрая 1D свертка с собственным C ++?

Сообщение Anonymous »

Предположим, у меня есть два массива данных: < /p>
double data[4096] = { .... };
double b[3] = {.25, .5, .25};
< /code>
Я бы хотел быстрая и портативная реализация свертки. Для использования синтаксиса Numpy < /p>
result = numpy.convolve(data, b, "same")
< /code>
Размер ядра невелик, 3 или 5, и мне, возможно, придется конвертироваться с ядром с нулями (придавая масштаб, возможно, для дальнейшей оптимизации). < /p>
double b[5] = {.25, .0, .5, .0, .25};
< /code>
У меня есть ощущение, что C ++ имеет оптимизированный код для этого, но я не могу понять, как его использовать. В качестве альтернативы, есть ли другие библиотеки с портативной реализацией свертки, в идеале оптимизированной для общих платформ?

Подробнее здесь: https://stackoverflow.com/questions/723 ... th-eigen-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»