Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
Announcements
FPGA community forums and blogs have moved to the Altera Community. Existing Intel Community members can sign in with their current credentials.

Conversion from aRGB format

photo_tom
Beginner
1,372 Views

I have an image in memorythat is sourced inaRGB format and I need use some of the functionality in IPP. However, I do not see an efficient way to covert between aRGB of my imageto RGB0 formatused by IPPwithout exporting from my aRGB image to a file and then re-importing into IPP.

After looking at the help files for IPP, there does not seem to be another way to do it. Are there any suggestions?

0 Kudos
6 Replies
renegr
New Contributor I
1,372 Views

ippiSwapChannels_8u_C4IR

- or do you mean Adobe RGB? Then you need ICC processing which isn't part of IPP

0 Kudos
photo_tom
Beginner
1,372 Views

That looks like I might be able to get it to work, but it I'm not sure. I'm not understanding the documentation well.

However, you gave me an idea to wonder if I could do this with a shift. After downloading another help file, I found ippsLShiftC_32s_I function. If I run this shift 32bits left for 8 bits, I should get the pattern I need.

Thnaks for suggestion.

0 Kudos
Naveen_G_Intel
Employee
1,372 Views

Hi,

Use ippiCopy_8u_AC4C3R, refer to ippiman.pdf, refer to Image Data Exchange and Initialization Functions

http://software.intel.com/sites/products/documentation/hpc/ipp/pdf/ippiman.pdf

Regards,

Naveen Gv

0 Kudos
Tamer_Assad
Innovator
1,372 Views

Hi Tom,

You have received the best answer from Naveen Gv (Intel).

For additional information, I have an extended discussion with Artem Vorobiev (Intel) please read this thread:(ippiYCbCr444ToYCbCr420_8u_C2P3R) is there any? + Y211)

URL: http://software.intel.com/en-us/forums/showthread.php?t=71620&o=d&s=lr

Regards,

Tamer

0 Kudos
renegr
New Contributor I
1,372 Views
If I understood it right, the problem is that the alpha channel is on the first byte - but ippiCopy_8u_AC4C3R assumes the alpha channel on the fourth byte. The A0C4C3R channel format isn't supported in Copy function. Furthermore it can't be executed inplace. So I think shifting or swapping channels is the more correct way. And both can be done inplace if speed is needed. According to ps_ippi.exe SwapChannels seems to be a little bit faster than shifting.
0 Kudos
photo_tom
Beginner
1,372 Views

Thanks for update, that is sort of what I was wondering. I think I'm going to go with shift/swap channels, then copy in final program.

0 Kudos
Reply