Previously I was using IPP 6.0 and doing pyramid construction. I did this using the ippConvolveValid functions, 2:1 integral decimation (c++ code), 1:2 expansion (c++ code), and the ippSub function. Using IPP 8.0 I performed the same tasks, and obtained identical results using the new ippiPyramid functions as described in the example in the documentation. My code is now very similar to the example.
However, the new methods are much slower than the previous methods (about 7x slower). I am wondering if the reason is that the new methods are more generic allowing for bilinear sampling? Can we force integer 2:1 sampling? Can it be optimized further?
While the new code is much simpler, I can't use the new functions due to their speed.
I am doing a 4 level laplacian pyramid with symmetrical filter of length 5.
Happy to provide any other information if this helps.