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

Ipp5.1 with IJL 20.dll

chinmoy
Beginner
459 Views
Hi ,
I am doing a image processing and scalling down the image almost 50% of the basic image by my own algorithm.That algorithm is working fine and checked.Then i am doing image compressionbyIpp5.1 version with IJL 20.dll. The image iscompressed but text portion is not clear . I dont know the accuracy ,so is the 5.1 versionright to give me accurate one.
I am looking forward for someone.

Thanks
Chinmoy
0 Kudos
5 Replies
Vladimir_Dudnik
Employee
459 Views
Quoting - chinmoy
Hi ,
I am doing a image processing and scalling down the image almost 50% of the basic image by my own algorithm.That algorithm is working fine and checked.Then i am doing image compressionbyIpp5.1 version with IJL 20.dll. The image iscompressed but text portion is not clear . I dont know the accuracy ,so is the 5.1 versionright to give me accurate one.
I am looking forward for someone.

Thanks
Chinmoy

Ghinmy,

JPEG is lossy standard by defintion. The visual quality depend on quantization level you choose (applicable range in IJL is 1..100 where 100 means the best possible quality, note it still be lossyduring DCT rounding errors). In IJL the default level is 75 which provide pretty good compression ratio / visual quality tradeoff for natural pictures, like most of photo. When you compress image containing many high frequency details, like text, JPEG will produce artifacts at quantization stage. So you may want to choose quantization level 100 instead. The name of parameter is jquality in IJL case.

By the way, IPP 5.1 is several years old release. You may want to consider to move to the latest IPP 6.0 release. In IPP 6.0 we provide UIC (unified image codecs) high level library, which includes JPEG and JPEG2000 codecs optimized for the latest Intel platforms and utilize threading capabilities available on multi core processors.

Regards,
Vladimir
0 Kudos
chinmoy
Beginner
459 Views

Ghinmy,

JPEG is lossy standard by defintion. The visual quality depend on quantization level you choose (applicable range in IJL is 1..100 where 100 means the best possible quality, note it still be lossyduring DCT rounding errors). In IJL the default level is 75 which provide pretty good compression ratio / visual quality tradeoff for natural pictures, like most of photo. When you compress image containing many high frequency details, like text, JPEG will produce artifacts at quantization stage. So you may want to choose quantization level 100 instead. The name of parameter is jquality in IJL case.

By the way, IPP 5.1 is several years old release. You may want to consider to move to the latest IPP 6.0 release. In IPP 6.0 we provide UIC (unified image codecs) high level library, which includes JPEG and JPEG2000 codecs optimized for the latest Intel platforms and utilize threading capabilities available on multi core processors.

Regards,
Vladimir

Thanks Vladimir. I am working on a secondary monitor device .Here , i am sendng frames to my device after compressed bythis jpeg library . Main thng is that , every thing is coming fine measn photoandvideo (If losses are here then aslo not refelected to users eye) but the text in not coming clear. If i increase the text font then it is properly readable .So do you think if i use the new 6.0 version lib for my project then can i minimize the losses.
Thanks
Chinmoy



Agian i am here.I have downloaded this IPP6.0.1.070ia32 demo version library . Soto use this shall i need to build theIJL 20.dll again and if it is then can you please help me how to build this.


Thanks
Chinmoy


0 Kudos
Vladimir_Dudnik
Employee
459 Views

Chinmoy,

nothing changed since IPP 5.1 time in terms of how to get and how to build IPP samples. As you should know IPP sample package is separate download. Each sample has readme.htm file and set of build scripts.
I would recommend you to migrate from IJL C API to UIC C++ API. New JPEG codec implementation in UIC is threaded and support JPEG lossless compression mode. With lossless compression you will have bit-exact picture after decompression. Note, lossless compression mode is slower than lossy.
As I said earlier, you may get acceptable picture quality (including high frequency details, like text) if you compress with quality parameter equal 100.


Regards,
Vladimir
0 Kudos
chinmoy
Beginner
459 Views

Chinmoy,

nothing changed since IPP 5.1 time in terms of how to get and how to build IPP samples. As you should know IPP sample package is separate download. Each sample has readme.htm file and set of build scripts.
I would recommend you to migrate from IJL C API to UIC C++ API. New JPEG codec implementation in UIC is threaded and support JPEG lossless compression mode. With lossless compression you will have bit-exact picture after decompression. Note, lossless compression mode is slower than lossy.
As I said earlier, you may get acceptable picture quality (including high frequency details, like text) if you compress with quality parameter equal 100.


Regards,
Vladimir

Hi ,

Thanks for support. I have already checkedthe quality parameter with 100 but same result.So i will try with 6.0 and lets see.
Thanks again.

Chinmoy
0 Kudos
Vladimir_Dudnik
Employee
459 Views
Could you please upload here your source (not compressed) image and compressed one, so we can evaluate if level of quality losses you have is expected?

Vladimir
0 Kudos
Reply