Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
8 Views

which resize function to use for 32 bit image

I have a image which format is RGBA. When resize it, ippiResize_8u_AC4R seems is the function to call. However I also see ippiResize_8u_C4R could do the job. Which function has better performance?
0 Kudos
8 Replies
Highlighted
8 Views

We use AC4 specificator for functions which consider forth channel as an alpha channel. No operation will be performed on alpha channel. Functions with C4 specificator process all four channels in the same way.

Vladimir
0 Kudos
Highlighted
Beginner
8 Views

Quoting - gangli59
I have a image which format is RGBA. When resize it, ippiResize_8u_AC4R seems is the function to call. However I also see ippiResize_8u_C4R could do the job. Which function has better performance?

Thanks for the answer. I will use ippiResize_8u_AC4R.
0 Kudos
Highlighted
Employee
8 Views


For better performance on latest processor, youmay use ippiResizeSqrPixel_8u_AC4Rinsteadsince ippiResize* will bedeprecated in future release.

Here is one related KB article :http://software.intel.com/en-us/articles/deprecated-ipp-api-in-version-60/

Regards,
Ying

0 Kudos
Highlighted
Beginner
8 Views

Quoting - (Intel)

For better performance on latest processor, youmay use ippiResizeSqrPixel_8u_AC4Rinsteadsince ippiResize* will bedeprecated in future release.

Here is one related KB article :http://software.intel.com/en-us/articles/deprecated-ipp-api-in-version-60/

Regards,
Ying


Thnks for point out. I tried ippiResizeSqr function. It 's performance is same as ippiResize. However the new function can resize to a regioninto target image. It is a big plus.

I work on a function to render an image to a DIBsection bitmap. Most of time the soruce image is 8/16/24 bits image, and the render target is a 32 bits DIB. I really hope the ippiResizeSqr can do color converting too.
0 Kudos
Highlighted
Beginner
8 Views

Quoting - gangli59

Thnks for point out. I tried ippiResizeSqr function. It 's performance is same as ippiResize. However the new function can resize to a regioninto target image. It is a big plus.

I work on a function to render an image to a DIBsection bitmap. Most of time the soruce image is 8/16/24 bits image, and the render target is a 32 bits DIB. I really hope the ippiResizeSqr can do color converting too.

Just found out in my test, the ippiResizeSqrPixel_8u_C1R is 2% slower than ippiResize_8u_C1R. I was expected the newer function be faster!
0 Kudos
Highlighted
New Contributor I
8 Views

The function performs only resize transform without any color converting.
Right, the performance of both functionalities is similar but only for single-thread task.
The function ippiResizeSqrPixel has been parallelized and shows 2-4 times better performance than ippiResize on the multi-core machines.

Thanks,
Yuri

0 Kudos
Highlighted
Beginner
8 Views

The function performs only resize transform without any color converting.
Right, the performance of both functionalities is similar but only for single-thread task.
The function ippiResizeSqrPixel has been parallelized and shows 2-4 times better performance than ippiResize on the multi-core machines.

Thanks,
Yuri


I do ran the test on 4 cores machine, did not see any multi thread kick in. How do you turn on the multi thread feature? My test program is static linked to the merged library.
0 Kudos
Highlighted
8 Views

Hello,

IPP provided in both threaded and not threaded variants. Threaded variant is IP DLLs (they are always use internal threading) and threaded static libraries (those with '_t' in the name.

You probably use non threaded static libraries and that is why you do not see performance improvements on multi-core systems.

Regards,
Vladimir
0 Kudos