Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6704 Discussions

Missing documentation for param_jpeg2k.precision

Thomas_Jensen1
Beginner
340 Views
In IPP 6.1.5 UIC samples, when Encoding or Decoding a JPeg2000 image, the param struct must be filled in.
One member is "precision", with values J2K_16 and J2K_32; for example "param_jpeg2k.precision = J2K_16".

I miss documentation for this parameter. What is it for, and what are the requirements and/or effects of using it?

0 Kudos
1 Solution
Vladimir_Dudnik
Employee
340 Views
Yes, for 8u images it is allowed and sufficient to use 16-bit precision for internal computations. For 16-bit images it is required to use 32-bit precision in internal computations.

View solution in original post

0 Kudos
7 Replies
Vladimir_Dudnik
Employee
340 Views
Hello,


this parameter control arithmetic precision of internal computatations. When it is J2K_32 it mean 32-bit internal computations will be used and when it is J2K_16 then 16-bit computations will be used where it appropriate. 16-bit computation path allow to reduce a little bit internal memory buffers size.

Regards,
Vladimir
0 Kudos
Thomas_Jensen1
Beginner
340 Views
Thanks, but I was looking for an answer as I wrote in my question; Since J2K_16 indeed is faster, and since it uses less memory, can I always use that, also for 16u images, without problems?
0 Kudos
Vladimir_Dudnik
Employee
340 Views
No. For 16-bit input data internal computations have to use higher precision to avoid artifacts. IPP JPEG2000 codec will ignore that parameter and force 32-bit computations in that case.

Vladimir
0 Kudos
Thomas_Jensen1
Beginner
340 Views
So, to conclude:

- For 16u images, is it a requirement to use J2K_32?
- For 8u images, is it sufficient to use J2K_16?
- For 8u images, is it allowed to use J2K_16?

This information is not available in the IPP samples.
0 Kudos
Vladimir_Dudnik
Employee
341 Views
Yes, for 8u images it is allowed and sufficient to use 16-bit precision for internal computations. For 16-bit images it is required to use 32-bit precision in internal computations.
0 Kudos
Thomas_Jensen1
Beginner
340 Views
Thanks.

You could pass this on to your IPP Sample documentation collegues.
0 Kudos
Vladimir_Dudnik
Employee
340 Views
Sure. Unfortunately it is too late for IPP 7.0 release but weconstantly work onimprovement ofdocumentation.
0 Kudos
Reply