⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spihtencode.1

📁 该源码是SPIHT即分层树集合划分算法的c代码,希望对搞压缩编码的朋友们有用.
💻 1
字号:
.TH SPIHTENCODE 1 "QCCPACK" ""
.SH NAME
spihtencode, spihtdecode \-
encode/decode an image using the SPIHT algorithm
.SH SYNOPSIS
.sp
.B spihtencode
.RB "[\|" \-w
.IR  wavelet "\|]"
.RB "[\|" \-b
.IR  boundary "\|]"
.RB "[\|" \-pw
.IR  pcpfile "\|]"
.RB "[\|" \-nl
.IR  levels "\|]"
.RB "[\|" \-noac "\|]"
.RB "[\|" \-m
.IR  mask "\|]"
.RB "[\|" \-vo "\|]"
.I rate
.I imgfile
.I bitstream
.LP
.B spihtdecode
.RB "[\|" \-w
.IR  wavelet "\|]"
.RB "[\|" \-b
.IR  boundary "\|]"
.RB "[\|" \-pw
.IR  pcpfile "\|]"
.RB "[\|" \-m
.IR  mask "\|]"
.I bitstream
.I imgfile
.SH OPTIONS
.TP
.BI \-w " wavelet"
String. 
Name of the wavelet file
.RB ( FBK
or
.B LFT
format); default = "CohenDaubechiesFeauveau.9-7.lft"
.TP
.BI \-b " boundary"
String. Type of boundary extension; default = "symmetric".
.TP
.BI \-pw " pcpfile"
String. Name of file containing perceptual weights.
.TP 
.BI \-nl " levels"
Integer. Number of levels of dyadic decomposition; default value is 3 levels.
.TP
.B \-noac
Do not use arithmetic coding during encoding;
i.e., produce "binary-uncoded" output.
Default is to use arithmetic coding.
.TP
.BI \-m " mask"
String. Name of file containing the transparency mask for
shape-adaptive coding.
.TP
.B \-vo
Print only the value of the rate to stdout (terse output);
default is verbose output.
.SH DESCRIPTION
.LP
.B spihtencode
codes an image,
.IR imgfile ,
using the Set Partitioning In Hierarchical Trees (SPIHT)
algorithm by Said and Pearlman.
The SPIHT algorithm involves a 2D DWT followed by 
a progressive "bit-plane" coding of the wavelet coefficients using a
zerotree-like quantization structure.
.LP
The transform is either the usual discrete
wavelet transform (DWT) or a shape-adaptive
DWT (SA-DWT); see
.BR imgdwt (1)
for complete details.
Option
.B \-w
specifies the wavelet, 
option
.B \-b
specifies the boundary extension, and option
.B \-pw
indicates whether perceptual weighting is to be used.
The
.B \-m
option gives the image file to be used as a transparency mask
for the SA-DWT.
.I mask
must be a grayscale image
in which black in this image indicates transparency, white
indicates full opacity, and gray tones are degrees of
translucence.
If the
.B \-m
option is not given, the usual DWT is used.
.LP
The desired bitrate of the output
.I bitstream
is specified by
.IR rate ,
which is expressed in bits per pixel of the original image.
.B spihtencode
normally prints to stdout a small amount of information
concerning this target bitrate and the actual bitrate achieved.
Usually these rates are identical, but may differ slightly.
If the 
.B \-vo
(value-only) option is given, all printed output is suppressed except for
the actual bitrate.
.LP
The SPIHT algorithm normally
uses arithmetic coding of symbols as a final output step
to improve coding efficiency.  Alternatively, arithmetic coding can be
suppressed, producing what is called "binary-uncoded"
output.
.B spihtencode
supports both arithmetic-coded and binary-uncoded output modes. If option
.B \-noac
is specified, no arithmetic coding is used (i.e., binary-uncoded output).
Otherwise, the output is arithmetic-coded.
.LP
Note: the SPIHT algorithm as described originally by Said and Pearlman
in their ITCSVT paper
does not employ perceptual weighting as allowed by
.B spihtencode
(the
.B \-pw
option).  Refer to
.BR imgdwt (1)
and
.BR QccWAVPerceptualWeights (3)
for details on the implementation of perceptual weighting.
Additionally, note that the concept of
shape-adaptive coding arose in the recent MPEG-4 standard
and was not considered in the original work by Said and
Pearlman.
.LP
.B spihtdecode
performs the corresponding decoding using the SPIHT algorithm, decoding
the
.I bitstream
made by
.B spihtencode
and producing
a reconstructed image,
.IR imgfile .
For sane results, 
.IR wavelet ,
.IR boundary ,
and
.I pcpfile
should be the same as they were for
.BR spihtencode ,
and
.I mask
should be the same if an SA-DWT was used as the transform.
.B spihtdecode
automatically determines whether arithmetic decoding is needed or not.
.LP
.BR spihtencode
and
.BR spihtdecode
call
.BR QccSPIHTEncode (3)
and
.BR QccSPIHTDecode (3),
respectively, to perform SPIHT encoding and decoding.
Refer to the man pages for these functions for more information
on the details of the QccPack implementation of the SPIHT algorithm
and how it compares to the original SPIHT coder developed by
Said and Pearlman for their results.
.SH "SEE ALSO"
.BR QccSPIHTEncode (3),
.BR QccSPIHTDecode (3),
.BR imgdwt (1),
.BR squniform (1),
.BR QccWAVPerceptualWeights (3),
.BR QccWAVSubbandPyramid (3),
.BR QccPackWAV (3),
.BR QccPackIMG (3),
.BR QccPack (3)

A. Said and W. A. Pearlman,
"A New, Fast, and Efficient Image Codec Based
on Set Partitioning in Hierarchical Trees,"
.IR "IEEE Transactions on Circuits and Systems for Video Technology" ,
vol. 6, no. 3, pp. 243-250, June 1996.

.SH AUTHOR
Copyright (C) 1997-2001  James E. Fowler

.SH LICENSE
The Set Partitioning In Hierarchical Trees (SPIHT) algorithm is protected
by US Patent #5,764,807 (issued June 9, 1998) and other international
patents and patents pending. An implementation of the SPIHT algorithm is
included herein (utility programs spihtencode and spihtdecode, and spiht.c
in the QccPackSPIHT module of the QccPack library) with the permission of
PrimaComp, Inc., exclusive holder of patent rights. PrimaComp has graciously
granted a license with certain restrictions governing the terms and
conditions for use, copying, distribution, and modification of the SPIHT
algorithm implementation contained herein. Specifically, only use in
academic and non-commercial research is permitted, while all commercial
use is prohibited.  Refer to the file LICENSE-SPIHT for more details.


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -