📄 qccpack.3
字号:
.TH QCCPACK 3 "QCCPACK" "".SH NAMEQccPack \- Quantization, compression, and coding libraries and utility programs.SH DESCRIPTION.B QccPackprovides a collection of library routines and utility programs forquantization, compression, and coding of data. .B QccPack has been writtento provide very flexible and general implementations of procedures commonlyused in coding and compression applications..LPThe essential component of the .B QccPack collection is a library of procedures implementing a large variety of compression andcoding algorithms. Application programs may make use of the .B QccPacklibrary routines by linking the application against the library during compilation. Each library function is very general in its implementation so to be useful in a large variety of applications. .LPAdditionally, much of the functionality of the library routines has been provided in the form of stand-alone executable programs. The prime importance these utility programs is probably that they provide examples of how tointerface with many of the .B QccPack library routines. The utility programscould also be called from scripts to simulate the operation of complexcoding and compression systems before implementing all the system functionality into one stand-alone program. .LP.B QccPack is intended for use in the development of prototypes of codingand compression systems, and in academic research. Its main reason forexistence is to obviate the incessant re-implementation of common algorithmsfor the sake of application-specific details. For example, we don't wantto re-implement arithmetic coding every time we change the symbol-alphabetsize or the number of contexts in the arithmetic-coder adaptive model. By using .BR QccPack, we use the same implementation of arithmetic coding regardlessof our application. The drawback of this library-based approach todevelopment is the fact that the generality required of the library routinesleads to a frequent use of dynamic memory allocation which, in turn, implies that the routines execute slower than would a similar implementation that hard-coded application-specific details. For this reason, .B QccPack is intendedfor prototyping and proof-of-concept needs rather than for direct use in applications requiring high-speed operation..SH "MULTITHREAD SUPPORT"QccPack optionally supports use in multithreaded applications.Currently, QccPack does not make use of threads internally; however,if multithread support is enabled when compiling the library, anapplication program can invoke QccPack functions within multiplethreads simultaneously. In order to use QccPack in amultithreaded application, QccPack must have been compiled with threadsupport enabled and linked against the pthreads library (seethe QccPack README file and.BR pthread_create (3).)This action renders the QccPack library MT-safe, although see.BR QccMathRand (3)for one caveat..SH "QCCPACK MODULES".SS "Standard Modules"The .B QccPacklibrary routines and utility programs are partitioned into severalmodules based on their functionalities. The standard modules, whichare available for all installations of QccPack are as follows:.TP.B General See below.TP.B "Entropy Coding" See.BR QccPackENT (3).TP.B "Scalar Quantization" See.BR QccPackSQ (3).TP.B "Vector Quantization" See.BR QccPackVQ (3).TP.B "Adaptive Vector Quantization" See.BR QccPackAVQ (3).TP.B "Image Processing and Manipulation" See.BR QccPackIMG (3).TP.B "Wavelets" See.BR QccPackWAV (3).TP.B "Video Coding" See.BR QccPackVID (3).TP.B "Hyspectral Imagery" See.BR QccPackHYP (3).SS "Optional Modules"In addition to the standard modules listed above, there are optionalmodules that may or may not have been installed on your system.These optional modules may have licensing schemes different fromGPL/LGPL used for the standard QccPack modules (hence the reason forseparating them out to optional modules); refer to the documentationcoming with each module for more details..TP.B "SPIHT Encoding & Decoding of Images" See.BR QccPackSPIHT (3),if installed.TP.B "SPECK Encoding & Decoding of Images" See.BR QccPackSPECK (3),if installed.SH "QCCPACK GENERAL MODULE"This module provides general-purpose tools forquantization, compression, and coding of data. .SS "DATA TYPES AND FILE FORMAT".TP.BR QccFilter (3)generic data structure .B QccFilterfor FIR filtering of signals.TP.BR QccBitBuffer (3)generic data structure.B QccBitBufferfor bitstream packing/unpacking.TP.BR QccFifo (3)data structure for bitstream fifo.TP.BR QccDataset (3)generic vector data structure.B QccDatasetand corresponding .B DATfile format..TP.BR QccChannel (3)generic .B QccChannelstructure for channel of channel symbols and corresponding .B CHNfile format..SS "LIBRARY ROUTINES".SS Miscellaneous.TP.BR QccInit (3)QccPack library initialization.TP.BR QccExit (3)normal, non-error program exit.TP.BR QccFree (3)free memory.TP.BR QccGetProgramName (3)gets the current program name.TP.BR QccParseParameters (3)parsing of command-line parameters.SS String Handling.TP.BR QccStringMakeNull (3)makes a null string.TP.BR QccStringNull (3)check for a null string.TP.BR QccConvertToQccString (3)convert from a character array to QccString.TP.BR QccStringCopy (3)copies a QccString.TP.BR QccStringSprintf (3)formated print to a QccString.SS Environment Variables.TP.BR QccSetEnv (3)set an environment variable.TP.BR QccGetEnv (3)retrieve the value of an environment variable.SS Library Version.TP.BR QccSetUserHeader (3)set a user-defined headr message.TP.BR QccGetQccPackVersion (3)retrieve the version and date of the QccPack library.TP.BR QccCompareQccPackVersions (3)compare two sets of QccPack versions.TP.BR QccPrintQccPackVersion (3)print the version and date of the QccPack library.SS Time.TP.BR QccTimeTic (3)start timer.TP.BR QccTimeToc (3)determine elapsed time.SS Error Handling.TP.BR QccErrorAddMessage (3)add a message to the error-message list.TP.BR QccErrorPrintMessages (3)print all error messages to stderr.TP.BR QccErrorClearMessages (3)clear all messages from message queue.TP.BR QccErrorExit (3)print all error messages to stderr and cause program exit with error.TP.BR QccErrorWarning (3)print warning message immediately to stderr.SS Binary Values.TP.BR QccBinaryCharToInt (3)convert QccPack's MSB-first value to int.TP.BR QccBinaryIntToChar (3)convert int to QccPack's MSB-first value .TP.BR QccBinaryCharToFloat (3)convert QccPack's MSB-first value to float.TP.BR QccBinaryFloatToChar (3)convert float to QccPack's MSB-first value .SS "File Access".TP.BR QccFileExists (3)check for file existence.TP.BR QccFileGetExtension (3)get filename extension.TP.BR QccFileOpen (3)open file.TP.BR QccFileDescriptorOpen (3)open file pointer from file descriptor.TP.BR QccFileClose (3)close file.TP.BR QccFileRemove (3)remove file.TP.BR QccFileGetSize (3)get size of file.TP.BR QccFileGetModTime (3)get last modification time of file.TP.BR QccFileGetCurrentPosition (3)get current position in file stream.TP.BR QccFileReadChar (3)read char.TP.BR QccFileWriteChar (3)write char.TP.BR QccFileReadInt (3)read int.TP.BR QccFileWriteInt (3)write int.TP.BR QccFileReadDouble (3)read double.TP.BR QccFileWriteDouble (3)write double.TP.BR QccFileReadString (3)read string.TP.BR QccFileWriteString (3)write string.TP.BR QccFileSkipWhiteSpace (3)skip over white space and comment lines.TP.BR QccFileReadMagicNumber (3)read magic number and version information from file header.TP.BR QccFileWriteMagicNumber (3)write magic number and version information to file header.TP.BR QccFileGetMagicNumber (3)retrieve magic number from designated file.TP.BR QccFilePrintFileInfo (3)print magic number and version information to stdout.SS File-Path Searching.TP.BR QccFilePathSearch (3)searches for a specified filename in a specified path.TP.BR QccFilePathSearchOpenRead (3)searches for and opens for reading a specified filename in a specified path.SS Miscellaneous Mathematics.TP.BR QccMathMax (3)maximum of two numbers.TP.BR QccMathMin (3)minimum of two numbers.TP.BR QccMathPercent (3)percentage of two numbers.TP.BR QccMathModulus (3)signed remainder after division of two numbers.TP.BR QccMathLog2 (3)logarithm base 2.TP.BR QccMathMedian (3)median of three values.TP.BR QccMathRand (3)uniformly distributed random value.TP.BR QccMathGaussianDensity (3)Gaussian-density function.TP.BR QccMathLaplacianDensity (3)Laplacian-density function.SS Transparency.TP.BR QccAlphaOpaque (3)evaluate opacity.TP.BR QccAlphaTransparent (3)evaluate transparency.TP.BR QccAlphaTranslucent (3)evaluate translucency.SS Vector Mathematics.TP.BR QccVectorAlloc (3)allocate vector.TP.BR QccVectorFree (3)free vector.TP.BR QccVectorZero (3)zero vector.TP.BR QccVectorResize (3)resize vector.TP.BR QccVectorMean (3)calculate vector mean.TP.BR QccVectorVariance (3)calculate vector variance.TP.BR QccVectorAdd (3)add two vectors.TP.BR QccVectorSubtract (3)subtract one vector from another.TP.BR QccVectorScalarMult (3)multiply vector by scalar.TP.BR QccVectorCopy (3)vector copy.TP.BR QccVectorNorm (3)calculate vector norm.TP.BR QccVectorNormalize (3)normalize vector to unit length.TP.BR QccVectorDotProduct (3)calculate dot product of two vectors.TP.BR QccVectorAngle (3)calculate angle between two vectors.TP.BR QccVectorSquareDistance (3)calculate squared Euclidean distance between two vectors.TP.BR QccVectorSumComponents (3)sum vector components .TP.BR QccVectorMaxValue (3)find maximum component of a vector.TP.BR QccVectorMinValue (3)find minimum component of a vector.TP.BR QccVectorPrint (3)print vector to stdout.TP.BR QccVectorSortComponents (3)quicksort of vector components.TP.BR QccVectorGetSymbolProbs (3)calculate probabilities of a list of symbols.TP.BR QccVectorMoveComponentToFront (3)move specified component to front of vector.TP.BR QccVectorSubsample (3)downsample a vector by a factor of 2.TP.BR QccVectorUpsample (3)upsample a vector by a factor of 2.TP.BR QccVectorDCT (3)one-dimensional discrete cosine transform (DCT) of a signal vector.TP.BR QccVectorInverseDCT (3)one-dimensional inverse discrete cosine transform (IDCT) of a signal vector.SS Integer-Vector Mathematics.TP.BR QccVectorIntAlloc (3)allocate integer vector.TP.BR QccVectorIntFree (3)free integer vector.TP.BR QccVectorIntZero (3)zero integer vector.TP.BR QccVectorIntResize (3)resize integer vector.TP.BR QccVectorIntMean (3)calculate integer-vector mean.TP.BR QccVectorIntVariance (3)calculate integer-vector variance.TP.BR QccVectorIntAdd (3)add two integer vectors.TP.BR QccVectorIntSubtract (3)subtract one integer vector from another.TP.BR QccVectorIntScalarMult (3)multiply integer vector by scalar.TP.BR QccVectorIntCopy (3)integer-vector copy.TP.BR QccVectorIntNorm (3)calculate integer-vector norm.TP.BR QccVectorIntDotProduct (3)calculate dot product of two integer vectors.TP.BR QccVectorIntSquareDistance (3)calculate squared Euclidean distance between two integer vectors.TP.BR QccVectorIntSumComponents (3)sum integer-vector components .TP.BR QccVectorIntMaxValue (3)find maximum component of a integer vector.TP.BR QccVectorIntMinValue (3)find minimum component of a integer vector.TP.BR QccVectorIntPrint (3)print integer vector to stdout.TP.BR QccVectorIntSortComponents (3)quicksort of integer-vector components.TP.BR QccVectorIntMoveComponentToFront (3)move specified component to front of integer vector.TP.BR QccVectorIntSubsample (3)downsample a integer vector by a factor of 2.TP.BR QccVectorIntUpsample (3)upsample a integer vector by a factor of 2.SS "Matrix Mathematics".TP.BR QccMatrixAlloc (3)allocate matrix.TP.BR QccMatrixFree (3)free matrix.TP.BR QccMatrixZero (3)zero matrix.TP.BR QccMatrixResize (3)resize matrix.TP.BR QccMatrixCopy (3)copy matrix.TP.BR QccMatrixMaxValue (3)find largest element in matrix.TP.BR QccMatrixMinValue (3)find smallest element in matrix.TP.BR QccMatrixPrint (3)print matrix to stdout.TP.BR QccMatrixRowExchange (3)exchange matrix rows.TP.BR QccMatrixColExchange (3)exchange matrix columns.TP.BR QccMatrixIdentity (3)set to identity matrix.TP.BR QccMatrixTranspose (3)transpose matrix.TP.BR QccMatrixAdd (3)adds two matrices.TP.BR QccMatrixSubtract (3)subtracts one matrix from another.TP.BR QccMatrixMean (3)calculate mean of matrix elements.TP.BR QccMatrixVariance (3)calculate variance of matrix elements.TP.BR QccMatrixMaxSignalPower (3)find the largest squared row-vector norm in matrix
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -