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

ippFilterSharpen_8u_C1R crash

kamildobk1
Beginner
452 Views
I get access violation in
t7_ownPrevColV_8u()
movq xmm0, mmword ptr [esi]
when trying to useabove function on640x480 picture. With smaller images everything seems to be ok. There is no crashif Iadd 550 tosource and destination pointer.
I have WindowsXP,Pentium4/HT2, IPP4.1
BTW:
Where can I find release noteswith list of fixes for each IPP version ?
0 Kudos
6 Replies
Vladimir_Dudnik
Employee
452 Views
Hi,
could you please share code snippet to show how do you call this functions?
Regards,
Vladimir
0 Kudos
Vladimir_Dudnik
Employee
452 Views
BTW,
Regarding IPP manual,youshould calculate starting point to applay this filter with formulae:

strtSrc = (Ipp8u*)pSrc - ( kHeight - anchor.y - 1 ) * srcStep - ( kWidth - anchor.x - 1 );

so foryour image (ifyou want to filter the whole image) strtSrc point should be at the upper left corner of the border and he should pass pSrc pointer to the function. It is users responsibility to provide appropriate border for correct function work.

Fffffbbbbbbbbbb
fffffbbbbbbbbbb
ffAffiiiiiiiiii
fffffiiiiiiiiii
fffffiiiiiiiiii
bbiiiiiiiiiiiii
bbiiiiiiiiiiiii

Here is an example for 5x5 mask, C1 image and anchor in the center of the kernel:

f = filter mask
b = border
i = image
A = the anchor point and it should point to the same position as pSrc
F = the upper left corner or strtSrc point, from which filtering begins.

Regards,
Vladimir

0 Kudos
Maciej_K_
Beginner
452 Views
Uff, now I see. This is in the chapter introduction and I read only documentation for the ippSharpen() function and couldn't find anything about border restrictions.

Thank you,
Kamil
0 Kudos
Vladimir_Dudnik
Employee
452 Views
Hi Kamil,
great, I'm glad you solved issue. Do you have any comments about interface, usability or performance ofIPP functions you use? Are you satisfied with functionality offered by IPP?
Regards,
Vladimir
0 Kudos
jimawary_lauril1
Beginner
452 Views
Hi
I think that may be, the errors that I'm havingwith filters, owe to this problem also.
(see the post "Getting started whit ipps...")
Since other functions work perfectly, on the other hand, when I use some function of filters if the image is big, sometimes it crash.
Is the well-read one this part of the manual but I do not understand it well.
StrtSrc = (Ipp8u *) pSrc - (kHeight - anchor.y - 1) * srcStep - (kWidth - anchor.x - 1);
Where do I obtain the value of anchor.x and anchor.y?
KWidth does it refer to the total width of the image?
This one is the code that I was using:

status = ippiFilterMax_8u_C3R( (Ipp8u*)pSrc->DataPtr() , pSrc->Step() ,(Ipp8u*)pDst->DataPtr(), pDst->Step(), pSrc->Size(), mask, anchor);

And it works very well whit small images.

Thank you in advance.

0 Kudos
Vladimir_Dudnik
Employee
452 Views
Hi,
filter window have achor point, so your image you are going to filter should be extended in memory to provide neccessary borders outside actual image
Vladimir

Message Edited by vdudnik on 05-13-2005 07:49 AM

0 Kudos
Reply