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

tried deconvolution at large size, it does not work.

johnx
Beginner
224 Views

Hi All,

I appreciate it if someone can help me to solve this issue.I tried the deconvolution with Lucy and FFT method. Thanks for some help from here. Both calls work well in code. There is no error in execution. But the result does not make any sense. Can someone help to create a large example to verify those two routines? I have tried without any meaningful result.

Here is matrix size I use. the image center is (cx, cy),

source (500x500): 10.0*cos(0.01*(j-cx)*0.5)*cos(0.01*(i-cy)*0.5)

kernel (51x51): exp(-(j-cx)*(j-cx)/(2*6.375*6.375)-(i-cy)*(i-cy)/(2*6.375*6.375))

0 Kudos
1 Reply
Vladimir_Dudnik
Employee
224 Views

Hello,

there is comment from developer

for loops like

for(i=0;i

for(j=0;j

((Ipp32f*)Kernel)[i*kersize+j]=exp(-(j-cx)*(j-cx)/(2*6.375*6.375)-(i-cy)*(i-cy)/(2*6.375*6.375));

for(i=0;i<500;i++)

for(j=0;j<500;j++){

((Ipp32f*)tmpSrc)[i*tmpStep+j]=10.0*cos(0.01*(j-cx)*0.5)*cos(0.01*(i-cy)*0.5);

image center should be 250, 250, meaning that cx=250 and cy=250.

As a result, we should get shooth gradation from black to white in center.

But kernel consist from almost all zeros.

So you get zero output image. It is not possible to restore something from zero.

Regards,
Vladimir

0 Kudos
Reply