📄 qccwavwaveletdyadicdwt3dint.3
字号:
.TH QCCWAVWAVELETDYADICDWT3DINT 3 "QCCPACK" "".SH NAMEQccWAVWaveletDyadicDWT3DInt, QccWAVWaveletInverseDyadicDWT3DInt \- integer-valued separable dyadic 3D discrete wavelet transform andinverse transform for a 3D signal.SH SYNOPSIS.B #include "libQccPack.h".sp.BI "int QccWAVWaveletDyadicDWT3DInt(QccVolumeInt " volume ", int " num_frames ", int " num_rows ", int " num_cols ", int " origin_frame ", int " origin_row ", int " origin_col ", int " subsample_pattern_frame ", int " subsample_pattern_row ", int " subsample_pattern_col ", int " num_scales ", const QccWAVWavelet *" wavelet );.sp.BI "int QccWAVWaveletInverseDyadicDWT3DInt(QccVolumeInt " volume ", int " num_frames ", int " num_rows ", int " num_cols ", int " origin_frame ", int " origin_row ", int " origin_col ", int " subsample_pattern_frame ", int " subsample_pattern_row ", int " subsample_pattern_col ", int " num_scales ", const QccWAVWavelet *" wavelet );.SH DESCRIPTION.B QccWAVWaveletDyadicDWT3DInt()performs an integer-valued separable dyadic 3Ddiscrete wavelet transform (DWT) of a three-dimensional signal,.IR volume ,which is represented as a volume of.IR num_framesframes,.IR num_rows rows, and.I num_colscolumns..IR origin_frame ,.IR origin_row ,and.I origin_colindicates the frame, row, and column indices, respectively, of the uppercorner of the image cube.Usually, one assumes that the upper corner of the image cube isindexed as (0, 0, 0) - in this case, .IR origin_frame ,.IR origin_row ,and.I origin_colwould all be zero..I num_scalesgives the number of scales, or levels, of the decomposition..BR QccWAVWaveletDyadicDWT3DInt()implements a dyadic, or octave, decomposition of.IR volume ;that is, the low-low-low subband (baseband)is recursively decomposed into one lowpass band andseven highpass bands for each level of decomposition, each of which beingone eighth the size of the baseband that was decomposed..BR QccWAVWaveletDyadicDWT3DInt()calls.BR QccWAVWaveletAnalysis3DInt (3)for each level of decomposition, using the basebandsubband for the current level of decomposition as input.As a result, the transform recursively decomposes the upper corner ofthe input volume..I waveletmust indicate an integer-valued lifting scheme (see.BR QccWAVLiftingSchemeInteger (3))..LP.B QccWAVWaveletInverseDyadicDWT3DInt()performs the corresponding separable dyadic 3D inverse DWT of.IR volumewhich is assumed to have been producedby.BR QccWAVWaveletDyadicDWT3DInt() ..I num_scalesgives the number of levels of decomposition that exist in.IR volume ..B QccWAVWaveletInverseDyadicDWT3DInt()calls.BR QccWAVWaveletSynthesis3DInt (3)for each level of synthesis..LP.IR subsample_pattern_frame ,.IR subsample_pattern_row ,and.I subsample_pattern_colindicate the even- or odd-phase subsampling to be used at each levelof frame, row, and column decomposition.In most applications, even subsampling at alllevels is desired, in which case .IR subsample_pattern_frame ,.IR subsample_pattern_row ,and.I subsample_pattern_colshould all be set to zero.In more general settings, when some mixture of even- and odd-phase subsamplingis desired, .IR subsample_pattern_frame ,.IR subsample_pattern_row ,and.I subsample_pattern_colcan be integers between 0 and.IR "(2 ^ num_levels) - 1" .In these integers, the .IR j thbit (where.I j= 1 is the least-significant bit) indicates whether the.IR j thlevel of decomposition employseven or odd subsampling (0 = even, 1 = odd).For example, if.I subsample_pattern_rowis 5, then the first and third row decompositions use odd-phasesubsampling, while all others use even subsampling..LPUse.BR QccWAVSubbandPyramid3DIntDWT (3)and.BR QccWAVSubbandPyramid3DIntInverseDWT (3)to perform a separable dyadic 3D DWT or inverse DWT on a.B QccWAVSubbandPyramid3DIntdata structure (which is the recommended way to do it, since the.B QccWAVSubbandPyramid3DIntstructure stores the number of levels of decomposition along withthe transform coefficients)..SH "INTEGER-TO-INTEGER WAVELET TRANSFORMS"Transforms generally provide perfect reconstruction in that theinverse transform will perfectly invert transform coefficientsinto an exact representation of the original signal.However, when implemented in floating-point arithmetic, the potentialfor loss arises due to the limits of finite precision in both theforward and inverse transforms.On the other hand,transforms that map integer-valued signals into integer-valuedtransforms coefficients can guarantee perfect reconstruction, providedan inverse transform can be found.For this reason, lifting schemes, in which inverse transforms aretrivial, are favored for theimplementation of integer-valued wavelet transforms. Typically,the general approach proposed by Calderbank.IR "et al" .is followed wherein rounding of floating-point values to integers is performedat each prediction and update step in a lifting scheme.Integer versions of several popular biorthogonal wavelets werecreated in this manner by Calderbank.IR "et al" .,as well as by Xiong.IR "et al" ..LPIn traditional floating-point lifting, the prediction and update stepsare generally followed by a single application of scaling by a constantin order to produce the usual unitary normalization.This scaling step is somewhat problematic for integer-valued liftingsince the scaling constant is usually not an integer.In applications wherein unitary scaling is not required(e.g., in some applications that process each subband completelyindependently), the scaling step is simply dropped in orderto implement an integer-valued version of the transform.Alternatively, one can append three additional lifting steps to implement the scaling; these additional lifting steps can then be renderedinteger-valued via appropriate rounding (e.g., Xiong.IR "et al" .)making the transforms approximately normalized.This latter approach of scaling via additional lifting stepsis employed in the integer-valuedlifting schemes implemented in QccPack..SH "RETURN VALUES"These routinesreturn 0 on success and 1 on error..SH "SEE ALSO".BR QccWAVWaveletAnalysis3DInt (3),.BR QccWAVWaveletSynthesis3DInt (3),.BR QccWAVSubbandPyramid3DIntDWT (3),.BR QccWAVSubbandPyramid3DIntInverseDWT (3),.BR QccWAVWaveletPacketDWT3DInt (3),.BR QccWAVWaveletInversePacketDWT3DInt (3),.BR QccWAVWavelet (3),.BR QccPackWAV (3),.BR QccPack (3).LPA. R. Calderbank, I. Daubechies, W. Sweldens, B.-L. Yeo, "LosslessImage Compression Using Integer to Integer Wavelet Transforms", in.IR "Proceedings of the International Conference on Image Processing" ,Lausanne, Switzerland, pp. 596-599, September 1997.Z. Xiong, X. Wu, S. Cheng, J. Hua, "Lossy-to-Lossless Compression ofMedical Volumetric Data Using Three-Dimensional Integer Wavelet Transforms,".IR "IEEE Transactions on Medical Imaging" ,vol. 22, pp. 459-470, March 2003.I. Daubechies and W. Sweldens,"Factoring Wavelet Transforms Into Lifting Steps,".IR "J. Fourier Anal. Appl." ,vol. 4, no. 3, pp. 245-267, 1998.B.-J. Kim, Z. Xiong, and W. A. Pearlman,"Low Bit-Rate Scalable Video Coding with 3-D Set Partitioningin Hierarchical Trees (3-D SPIHT),".IR "IEEE Transactions on Circuits and Systems for Video Technology" ,vol. 10, no. 8, pp. 1374-1387, December 2000..SH AUTHORCopyright (C) 1997-2009 James E. Fowler.\" The programs herein are free software; you can redistribute them an.or.\" modify them under the terms of the GNU General Public License.\" as published by the Free Software Foundation; either version 2.\" of the License, or (at your option) any later version..\" .\" These programs are distributed in the hope that they will be useful,.\" but WITHOUT ANY WARRANTY; without even the implied warranty of.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the.\" GNU General Public License for more details..\" .\" You should have received a copy of the GNU General Public License.\" along with these programs; if not, write to the Free Software.\" Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -