Package com.openinventor.ldm.compressors
Class SoJp3dDataCompressor
- java.lang.Object
-
- com.openinventor.inventor.Inventor
-
- com.openinventor.ldm.compressors.SoDataCompressor
-
- com.openinventor.ldm.compressors.SoJp3dDataCompressor
-
public class SoJp3dDataCompressor extends SoDataCompressor
JP3D data compression. This class implements a wavelet compression scheme based on JP3D compression, an extension of the standard JPEG2000 algorithms specifically designed for volume data. It supports lossless and lossy compression. This is controlled by setCompressionLevel (seeSoDataCompressor
or SoConvertedParameters). A compression level of 0 specifies the lossless mode. Any other value specifies the target PSNR (Peak Signal to Noise Ratio).Typical values for compression level (PSNR):
- 0 specifies lossless mode.
- 70 stands for "near lossless" mode (~0.03% error). Most of the volume will be encoded losslessly, but some parts will be encoded with a little error.
- 40 is the "visually lossless" mode (~1% error). Some error will be introduced, but visually the volume will appear the same.
Limitations:
- The maximum precision supported is 16 bits.
Data values larger than 16 bits, for example float or 32 bit integer, will be converted to 16 bit integers, potentially making the compression lossy.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
-
Field Summary
-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description SoJp3dDataCompressor()
Constructor.
-
Method Summary
-
Methods inherited from class com.openinventor.ldm.compressors.SoDataCompressor
allocateCompressedBuffer, crc32, getAppropriateCompressor, getCompressedBuffer, getCompressionFormatName, getCompressionLevel, isLossless, setCompressionLevel
-
Methods inherited from class com.openinventor.inventor.Inventor
dispose, getNativeResourceHandle
-
-