I'm trying to warp an image using backward bilinear warping command,
The reason I'm using backward warping is because I'd like to avoid pixels estimation and holes in the destination image.
The image in the algorithm is very wide and therefor the destination warped image contains several bilinear transformations for each one of the sub source image.
My working methodology is the following:
1st, I divide the image into sub images using equispaced grid,, each block contains a different bilinear transformation for its sub image.
2nd, I'm trying to warp each one of the grid image using its backward bilinear transformations.
I'm using IPP version 4.0 gold release ( but eager to upgrade soon)
Somehow, things doesn't work as they should.
Each one of the destination sub block image (i,j) transform to the same source sub image , always to sub image number (0,0).
I managed to "hack" the usage that I have wanted by using the command as the following: , now the warping works great except from the image edge warping , when warping the left side of the image brings me back to the right side of the image, area that should be source invalid.
uchar* updatedSrcROI = srcBuffPointer + dstRoi.x + dstRoi.y*srcStride/(sizeof(uchar));
srcROI.x = srcROI.y = 0 ;
src.width = srcImageWidth ;
src.height = srcImageHeight;
ippiWarpBilinearBack_8u_C1R(updatedSrcROI , srcSize, srcWidthStep , srcROI, dstBuff, dstWidthStep, dstROI, BilinearCoef);
I have been playing around with IPP, trying to understand the methodology of backward bilinear warping, the warping doesn't seems to work well when working with different source ROI, The transformation works from destinations to source coordinates, where the source ROI seems to be out of scope, but it doesn't.
A short example of how to use bilinear wrapping would be very appreciated.
I WOULD LIKE TO SHARE MY CODE IN A PRIVATE THREAD WITH INTEL REPRESENTATIVE.
Or either call Intel representative, any help would be very appreciated, I have been stack on the same code for three days !