- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
we use the Intel_IPPI_ippiWarpPerspectiveQuad_8u_C1R of Intel IPP V7.0 with the interpolation IPPI_INTER_CUBIC.
We tested the software with IBM Purify and it shows an exception and memoryleaks (in both debug and release).
If we use another interpolation like IPPI_INTER_LINEAR or IPPI_INTER_LANZCOS we have no exceptions and memoryleaks, so we think this is a bug of the IPPI.
I attached the purify result as a png image.
Best regards,
Marco
Here is a source code example:
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
int iNOL(2048);
int iNOC(2048);
Ipp8u* pSrc = new Ipp8u[iNOL*iNOC];
int isrcStep = iNOC;
IppiSize SrcSize;
SrcSize.height = iNOL;
SrcSize.width = iNOC;
IppiRect srcROI;
srcROI.x = 0;
srcROI.y = 0;
srcROI.width = iNOC;
srcROI.height = iNOL;
double srcQuad[4][2] = {
{ 878, 985 },
{ 1083, 980 },
{ 1083, 1014 },
{ 879, 1019 } };
Ipp8u* pDst = new Ipp8u[iNOL*iNOC];
int dstStep = iNOC;
IppiRect dstROI;
dstROI.x = 0;
dstROI.y = 0;
dstROI.width = iNOC;
dstROI.height = iNOL;
const double dstQuad[4][2] = {
{ 0, 0},
{ iNOC - 1, 0},
{ iNOC - 1, iNOL - 1},
{ 0, iNOL - 1} };
int interpolation = IPPI_INTER_CUBIC;//IPPI_INTER_NN;//IPPI_INTER_LINEAR;//IPPI_INTER_CUBIC; // IPPI_SMOOTH_EDGE
// ippiWarpPerspectiveQuad_8u_C1R
// IPPI_INTER_NN -> OK
// IPPI_INTER_LINEAR -> No Exception but MemoryLeak
// IPPI_INTER_CUBIC -> Exception and MemoryLeak
// IPPI_INTER_SUPER -> OK
// IPPI_INTER_LANCZOS -> OK
// ippiWarpPerspective_8u_C1R
// IPPI_INTER_NN -> OK
// IPPI_INTER_LINEAR -> OK
// IPPI_INTER_CUBIC -> Exception and MemoryLeak
try
{
IppStatus status = ippiWarpPerspectiveQuad_8u_C1R(pSrc, SrcSize, isrcStep, srcROI, srcQuad, pDst, dstStep, dstROI, dstQuad, interpolation);
cout << "IppStatus: " << status << endl;
}
catch (...)
{
cerr << "Error :o(" << endl;
}
delete [] pDst;
delete [] pSrc;
return 0;
}
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
i checked the behaviour with the latest version of IPP (7.1 win32/64) with Inspector XE 2013 and I see no problems with code you provided. Please check it with Inspector and let us know the results.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Marco,
thorought testing of your example hasn't shown any issues in IPP - guess something is wrong with Purify tool. Can you reproduce exceptions/leaks in the real application? This is not the first such pseudo-issue with Purify - guess its logic breaks sometimes on non-trivial asm tricks...
Regards, Igor

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page