- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
HI,
The formula that is explained in the following URI seems to be incorrect.
http://software.intel.com/en-us/node/443698
The documentation says,
pDst[x, y] = Clip1c(((pSrc[x, y] * iWeight1 + pSrc2[x, y] * iWeight2 + 2^(ulog2wd - 1)) >> (ulog2wd + 1) + ((iOffset1 + iOffset2 + 1) >>2),
but the correct calculation is as follows:
pDst[x, y] = Clip1c((pSrc[x, y] * iWeight1 + pSrc2[x, y] * iWeight2 + 2^ulog2wd) >> (ulog2wd + 1) ++ ((iOffset1 + iOffset2 + 1) >>1)).
- exponent part (ulog2wd - 1 -> ulog2wd)
- shift value for offset (2 -> 1)
- correspondence of parenthesis
Thanks,
Eijit
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Eijit,
you are right, the real formula used in the function is the next:
weighted_sample = ((((Ipp32s)pSrc1[xpos]*iWeight1 + (Ipp32s)pSrc2[xpos]*iWeight2 + (Ipp32s)(1<<ulog2wd))>>(ulog2wd+1))) + ((iOffset1 + iOffset2 + 1)>>1);
so it's just a misprint in the manual - thank you for catching this, will be fixed in the next version of the manual.
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