3d convolution in C ++

I am looking for some source code that implements 3d convolution. Ideally, I need C ++ code or CUDA code. I would appreciate if anyone could point me to a good and quick implementation :-)

Greetings

+3
source share
3 answers

Do you realize that convolution is usually done with fft? see for example http://en.wikipedia.org/wiki/Convolution

so you need fft library.

The fastest way to calculate convolution is offered at http://www.fftw.org/ (for a traditional central processing unit).

cuda, cufft - http://www.gsic.titech.ac.jp/~ccwww/tebiki/tesla_e/tesla6_e.html

+3

? , SDK 3.0 FDTD3d, 3d- . 2.3 SDK 3dfd, ( ).

, , .

0

Intel has a very good example - using SSE + OpenMP and its serial version. This code is mainly intended for profiling a sequential and parallel approach, but this is done in a glorious way. http://software.intel.com/en-us/articles/16bit-3d-convolution-sse4openmp-implementation-on-penryn-cpu/

0
source

Source: https://habr.com/ru/post/1726378/


All Articles