- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello.
Since ippiPyrUp_Gauss5x5_8u_C1R is marked as deprecated. I need to implement analogous function using Pyramid API.
Following the example (http://software.intel.com/en-us/node/504506), I wrote function:
void pyrUp_Gauss(Ipp8u *pSrc, IppiSize srcRoi, int srcStep, Ipp8u *pDst, IppiSize dstRoi, int dstStep)
{
float rate = 2.f;
IppiPyramid *gPyr;
IppStatus ok = ippiPyramidInitAlloc(&gPyr, 2, srcRoi, rate);
Ipp16s iKernel[5] = { 1, 4, 6, 4, 1 };
int *gStep = gPyr->pStep;
Ipp8u **gImage = (Ipp8u**)(gPyr->pImage);
IppiSize *pRoi = gPyr->pRoi;
gImage[1] = pSrc;
gImage[0] = pDst;
gStep[1] = srcStep;
gStep[0] = dstStep;
pRoi[1] = srcRoi;
pRoi[0] = dstRoi;
IppiPyramidUpState_8u_C1R **gState = (IppiPyramidUpState_8u_C1R**) &(gPyr->pState);
ok = ippiPyramidLayerUpInitAlloc_8u_C1R(gState, srcRoi, rate, iKernel, 5, IPPI_INTER_LINEAR);
ok = ippiPyramidLayerUp_8u_C1R(gImage[1], gStep[1], pRoi[1], gImage[0], gStep[0], pRoi[0], *gState);
ok = ippiPyramidLayerUpFree_8u_C1R(*gState);
ok = ippiPyramidFree(gPyr);
}
When I run this code it fails on ippiPyramidLayerUpFree_8u_C1R with exception: Access violation reading location.
All previous IPP calls return ippStsNoErr. Input parameters are valid. When I replace this code with following code it works correct:
int len; ippiPyrUpGetBufSize_Gauss5x5(srcRoi.width, ipp8u, 1, &len); Ipp8u* buffer = ippsMalloc_8u(len); ok = ippiPyrUp_Gauss5x5_8u_C1R(pSrc, srcStep, pDst, dstStep, srcRoi, buffer); ippsFree(buffer);
I think error in my code. What do you suggest?
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I found out that ippiPyrUp_Gauss5x5_8u_C1R was marked as deprecated by mistake.
Will remove deprecation warning in the next release?
Thanks,
Alexander.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page