Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

ippiFilterGaussianBorder

Adriaan_van_Os
New Contributor I
436 Views

The ippiFilterGaussianBorder puzzles me, notably the sigma parameter. Compared to doing the Gaussian Blur with a matrix, ippiFilterGaussianBorder gives me what looks like unprecise results. This is with a typical kernel size 15 or 31. Of course, a Gaussian Blur is separable, so we can replace the matrix with two one-dimensional matrices.

Can you give an example of a matrix or two separable matrices where ippiFilterGaussianBorder is (or should be) equivalent to ippiFilterBorder ?

Regards,

Adriaan van Os

 

0 Kudos
4 Replies
Adriaan_van_Os
New Contributor I
436 Views

Asking above question again. Either my understanding of ippiFilterGaussianBorder is wrong, or it has some bugs. 

Can you give an example of a matrix or two separable matrices where ippiFilterGaussianBorder is (or should be) equivalent to ippiFilterBorder ?

Regards,

Adriaan van Os

0 Kudos
Igor_A_Intel
Employee
436 Views

Hi Adriaan van Os,

for kernelSize = 15 and sigma = .5.5 coefficients are the next:

k0 = 0.038978182

k1 = 0.048321572

k2 = 0.057956705

k3 = 0.067252662

k4 = 0.075501995

k5 = 0.082006926

k6 = 0.086175894

k7 = 0.087612126

k8 = 0.086175894

k9 = 0.082006926

k10 = 0.075501995

k11 = 0.067252662

k12 = 0.057956705

k13 = 0.048321572

k14 = 0.038978182

the filter itself is separable - therefore row/column coefficients are the same. The only 1 fact that is not reflected in the documentation - that these coefficients are normalized on their initial sum (coeff are obtained according to the formula in the manual and then divided by their sum).

regards, Igor

0 Kudos
Adriaan_van_Os
New Contributor I
436 Views

Thanks.

What sigma is ".5.5" ?

Regards,

Adriaan van Os

0 Kudos
Igor_A_Intel
Employee
436 Views

Hi,

this one (in bold):

IPPAPI(IppStatus, ippiFilterGaussianInit,(IppiSize roiSize, Ipp32u kernelSize, Ipp32f sigma,
                  IppiBorderType borderType, IppDataType dataType, int numChannels,
                  IppFilterGaussianSpec* pSpec, Ipp8u* pBuffer))
 

regards, Igor

0 Kudos
Reply