Intel® Integrated Performance Primitives
Community support and discussions relating to developing high-performance vision, signal, security, and storage applications.
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.

ippiResizeSqrPixel

giacomo_c_
Beginner
91 Views

I use ippiResizeSqrPixel function, which is now (IPP 7.1) deprecated to zoom and move with subpixel precision an image (Ipp32f).

In the process of trying to replace it with the suggested function ippiResizexxx, I found out that the replacement function has limitations.

The former, now deprecated function, did support an explicit zoom factor and destination offset expressed in double and  that are no longer present in the new ippiResizeXXX. Now I',m evalutating ippiWarpAffine (with c01 anda c10 coefficients at 0) as a substitute.

What do you suggest?

Thanks,

Giacomo

0 Kudos
1 Solution
Igor_A_Intel
Employee
91 Views

Imagine that you have an image 13x13 pixels - so it should be clear that each row has 13 pixels but if it's considered as a grid - it has only 12 "distances" between these pixels. Applying ResizeSqrPixel and "old" Resize with 2x size increasing you'll have different outputs - 26 pixels row for the first one and 24 "distances" (25 pixels) for the second one. WarpAffine implementation corresponds to the second approach - so you should take this fact in mind - this is what Valentin has mentioned.

regards, Igor

View solution in original post

3 Replies
Valentin_K_Intel
Employee
91 Views

Hi Giacomo,

Yes, a new resize API has the listed limitations, while ippiWarpAffine can do image transformations with subpixel precision. However there is the difference between ippiWarpAffine and ResizeSqrPixel approaches: the first function considers an image as a grid with pixels as nodes, while the second function considers pixels as "squares".

Best regards, Valentin

giacomo_c_
Beginner
91 Views

Hi Valentin,

thank you for your answer. I can't understand which is the implication of the difference that you describe. The two function operation looks very similar:  coordinate transformation (IppiResizeSqr pixel is a particular case of the more general WarpAffine) and resample using interpolation mode assigned. So where the difference that you describe come in?

Best regards, Giacomo

Igor_A_Intel
Employee
92 Views

Imagine that you have an image 13x13 pixels - so it should be clear that each row has 13 pixels but if it's considered as a grid - it has only 12 "distances" between these pixels. Applying ResizeSqrPixel and "old" Resize with 2x size increasing you'll have different outputs - 26 pixels row for the first one and 24 "distances" (25 pixels) for the second one. WarpAffine implementation corresponds to the second approach - so you should take this fact in mind - this is what Valentin has mentioned.

regards, Igor

Reply