📄 libqccpackwav.h
字号:
int num_frames, int num_rows, int num_cols, int spatial_num_scales, const QccWAVWavelet *wavelet);int QccWAVWaveletShapeAdaptivePacketDWT3D(const QccVolume input_data, const QccVolume input_mask, QccVolume output_data, QccVolume output_mask, int num_frames, int num_rows, int num_cols, int temporal_num_scales, int spatial_num_scales, const QccWAVWavelet *wavelet);int QccWAVWaveletInverseShapeAdaptivePacketDWT3D(const QccVolume input_data, const QccVolume input_mask, QccVolume output_data, QccVolume output_mask, int num_frames, int num_rows, int num_cols, int temporal_num_scales, int spatial_num_scales, const QccWAVWavelet *wavelet);/* dmwt.c */int QccWAVMultiwaveletDMWT1D(const QccDataset *input_signal, QccDataset *output_signal, int num_scales, const QccWAVMultiwavelet *multiwavelet);int QccWAVMultiwaveletInverseDMWT1D(const QccDataset *input_signal, QccDataset *output_signal, int num_scales, const QccWAVMultiwavelet *multiwavelet);/* rdwt.c */int QccWAVWaveletRedundantDWT1D(const QccVector input_signal, QccMatrix output_signals, int signal_length, int num_scales, const QccWAVWavelet *wavelet);void QccWAVWaveletRedundantDWT1DSubsampleGetPattern(int subband, int num_scales, int pattern, int *index_skip, int *start_index, const QccWAVWavelet *wavelet);int QccWAVWaveletRedundantDWT1DSubsample(const QccMatrix input_signals, QccVector output_signal, int signal_length, int num_scales, int subsample_pattern, const QccWAVWavelet *wavelet);int QccWAVWaveletInverseRedundantDWT1D(const QccMatrix input_signals, QccVector output_signal, int signal_length, int num_scales, const QccWAVWavelet *wavelet);QccMatrix *QccWAVWaveletRedundantDWT2DAlloc(int num_rows, int num_cols, int num_scales);void QccWAVWaveletRedundantDWT2DFree(QccMatrix *rdwt, int num_rows, int num_scales);int QccWAVWaveletRedundantDWT2D(const QccMatrix input_matrix, QccMatrix *output_matrices, int num_rows, int num_cols, int num_scales, const QccWAVWavelet *wavelet);void QccWAVWaveletRedundantDWT2DSubsampleGetPattern(int subband, int num_scales, int pattern_row, int pattern_col, int *index_skip, int *offset_row, int *offset_col, const QccWAVWavelet *wavelet);int QccWAVWaveletRedundantDWT2DSubsample(const QccMatrix *input_matrices, QccMatrix output_matrix, int num_rows, int num_cols, int num_scales, int subsample_pattern_row, int subsample_pattern_col, const QccWAVWavelet *wavelet);int QccWAVWaveletInverseRedundantDWT2D(const QccMatrix *input_matrices, QccMatrix output_matrix, int num_rows, int num_cols, int num_scales, const QccWAVWavelet *wavelet);int QccWAVWaveletRedundantDWT2DCorrelationMask(const QccMatrix *input_matrices, QccMatrix output_matrix, int num_rows, int num_cols, int num_scales, int start_scale, int stop_scale);/* subband_pyramid.c */#define QCCWAVSUBBANDPYRAMID_MAGICNUM "SBP"typedef struct{ QccString filename; QccString magic_num; int major_version; int minor_version; int num_levels; int num_rows; int num_cols; int origin_row; int origin_col; int subsample_pattern_row; int subsample_pattern_col; QccMatrix matrix;} QccWAVSubbandPyramid;int QccWAVSubbandPyramidInitialize(QccWAVSubbandPyramid *subband_pyramid);int QccWAVSubbandPyramidAlloc(QccWAVSubbandPyramid *subband_pyramid);void QccWAVSubbandPyramidFree(QccWAVSubbandPyramid *subband_pyramid);int QccWAVSubbandPyramidNumLevelsToNumSubbands(int num_levels);int QccWAVSubbandPyramidNumSubbandsToNumLevels(int num_subbands);int QccWAVSubbandPyramidCalcLevelFromSubband(int subband, int num_levels);int QccWAVSubbandPyramidSubbandSize(const QccWAVSubbandPyramid *subband_pyramid, int subband, int *subband_num_rows, int *subband_num_cols);int QccWAVSubbandPyramidSubbandOffsets(const QccWAVSubbandPyramid *subband_pyramid, int subband, int *row_offset, int *col_offset);void QccWAVSubbandPyramidSubbandToQccString(int subband, int num_levels, QccString qccstring);int QccWAVSubbandPyramidPrint(const QccWAVSubbandPyramid *subband_pyramid);int QccWAVSubbandPyramidRead(QccWAVSubbandPyramid *subband_pyramid);int QccWAVSubbandPyramidWrite(const QccWAVSubbandPyramid *subband_pyramid);int QccWAVSubbandPyramidCopy(QccWAVSubbandPyramid *subband_pyramid1, const QccWAVSubbandPyramid *subband_pyramid2);int QccWAVSubbandPyramidZeroSubband(QccWAVSubbandPyramid *subband_pyramid, int subband);int QccWAVSubbandPyramidSubtractMean(QccWAVSubbandPyramid *subband_pyramid, double *mean, const QccSQScalarQuantizer *quantizer);int QccWAVSubbandPyramidAddMean(QccWAVSubbandPyramid *subband_pyramid, double mean);int QccWAVSubbandPyramidCalcCoefficientRange(const QccWAVSubbandPyramid *subband_pyramid, const QccWAVWavelet *wavelet, int level, double *max_value, double *min_value);int QccWAVSubbandPyramidAddNoiseSquare(QccWAVSubbandPyramid *subband_pyramid, int subband, double start, double width, double noise_variance);int QccWAVSubbandPyramidSplitToImageComponent(const QccWAVSubbandPyramid *subband_pyramid, QccIMGImageComponent *output_images);int QccWAVSubbandPyramidSplitToDat(const QccWAVSubbandPyramid *subband_pyramid, QccDataset *output_datasets, const int *vector_dimensions);int QccWAVSubbandPyramidAssembleFromImageComponent(const QccIMGImageComponent *input_images, QccWAVSubbandPyramid *subband_pyramid);int QccWAVSubbandPyramidAssembleFromDat(const QccDataset *input_datasets, QccWAVSubbandPyramid *subband_pyramid, const int *vector_dimensions);int QccWAVSubbandPyramidRasterScan(const QccWAVSubbandPyramid *subband_pyramid, QccVector scanned_coefficients);int QccWAVSubbandPyramidInverseRasterScan(QccWAVSubbandPyramid *subband_pyramid, const QccVector scanned_coefficients);int QccWAVSubbandPyramidDWT(QccWAVSubbandPyramid *subband_pyramid, int num_levels, const QccWAVWavelet *wavelet);int QccWAVSubbandPyramidInverseDWT(QccWAVSubbandPyramid *subband_pyramid, const QccWAVWavelet *wavelet);int QccWAVSubbandPyramidShapeAdaptiveDWT(QccWAVSubbandPyramid *subband_pyramid, QccWAVSubbandPyramid *mask, int num_levels, const QccWAVWavelet *wavelet);int QccWAVSubbandPyramidInverseShapeAdaptiveDWT(QccWAVSubbandPyramid *subband_pyramid, QccWAVSubbandPyramid *mask, const QccWAVWavelet *wavelet);int QccWAVSubbandPyramidRedundantDWTSubsample(const QccMatrix *input_matrices, QccWAVSubbandPyramid *subband_pyramid, const QccWAVWavelet *wavelet);/* samask.c */int QccWAVShapeAdaptiveMaskBAR(const QccMatrix mask, int num_rows, int num_cols, double *bar_value);int QccWAVShapeAdaptiveMaskBoundingBox(const QccWAVSubbandPyramid *mask, int subband, int *bounding_box_origin_row, int *bounding_box_origin_col, int *bounding_box_num_rows, int *bounding_box_num_cols);/* perceptual_weights.c */#define QCCWAVPERCEPTUALWEIGHTS_MAGICNUM "PCP"typedef struct{ QccString filename; QccString magic_num; int major_version; int minor_version; int num_subbands; QccVector perceptual_weights;} QccWAVPerceptualWeights;int QccWAVPerceptualWeightsInitialize(QccWAVPerceptualWeights *perceptual_weights);int QccWAVPerceptualWeightsAlloc(QccWAVPerceptualWeights *perceptual_weights);void QccWAVPerceptualWeightsFree(QccWAVPerceptualWeights *perceptual_weights);int QccWAVPerceptualWeightsRead(QccWAVPerceptualWeights *perceptual_weights);int QccWAVPerceptualWeightsWrite(const QccWAVPerceptualWeights *perceptual_weights);int QccWAVPerceptualWeightsPrint(const QccWAVPerceptualWeights *perceptual_weights);int QccWAVPerceptualWeightsApply(QccWAVSubbandPyramid *subband_pyramid, const QccWAVPerceptualWeights *perceptual_weights);int QccWAVPerceptualWeightsRemove(QccWAVSubbandPyramid *subband_pyramid, const QccWAVPerceptualWeights *perceptual_weights);/* subband_pyramid_dwt_sq.c */int QccWAVSubbandPyramidDWTSQEncode(const QccIMGImageComponent *image, QccChannel *channels, const QccSQScalarQuantizer *quantizer, double *image_mean, int num_levels, const QccWAVWavelet *wavelet, const QccWAVPerceptualWeights *perceptual_weights);int QccWAVSubbandPyramidDWTSQDecode(const QccChannel *channels, QccIMGImageComponent *image, const QccSQScalarQuantizer *quantizer, double image_mean, int num_levels,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -