tilib-0.9.1-vc6

所属分类:图形图像处理
开发工具:C/C++
文件大小:42KB
下载次数:69
上传日期:2007-04-19 13:09:59
上 传 者zmshy2128
说明:  经典算法spiht的c语言实现代码,用于图象压缩
(classical algorithm spiht the c code language for image compression)

文件列表:
ari.c (5141, 2004-02-09)
ari.h (2186, 2004-02-09)
bitio.c (2753, 2004-02-09)
bitio.h (1584, 2004-02-09)
butterworth.c (18473, 2004-02-09)
butterworth.h (1566, 2004-02-09)
color.c (2118, 2004-02-09)
color.h (1224, 2004-02-09)
daub97.c (8155, 2004-02-09)
daub97.h (1856, 2004-02-09)
errcodes.h (1396, 2004-02-09)
extend.c (3755, 2004-02-09)
extend.h (1524, 2004-02-09)
license.txt (18315, 2004-02-09)
nodelist.c (3006, 2004-02-09)
nodelist.h (1599, 2004-02-09)
pbm.c (2054, 2003-04-04)
pbm.h (761, 2003-04-05)
spiht.c (24364, 2004-02-09)
spiht.h (2043, 2004-02-09)
split.c (4738, 2004-02-09)
split.h (1782, 2004-02-09)
ticodec.c (8321, 2004-02-13)
tilib.c (15629, 2004-02-09)
tilib.dsp (5764, 2004-02-10)
tilib.dsw (533, 2003-10-04)
tilib.h (2018, 2004-02-09)

[ Introduction ] TiLib (Tiny Library) is a wavelet-based lossy image compression library. Library provides simple memory-to-memory interface. TiLib supports famous Daubechies 9/7 biorthogonal wavelet filter and Butterworth biorthogonal wavelet filter. All transforms are implemented in a fast lifting mode. Finally, TiLib uses SPIHT algorithm to encode transformed coefficients. TiLib can work with either 8-bit grayscale or 24-bit truecolor images. TiLib supports precise rate control and fully embedded encoding. This package includes simple codec (ticodec) that shows how to use TiLib for image coding. You will see that TiLib API is straightforward. [ change log ] 0.9.0 * initial version 0.9.1 * modified Butterworth filter * improved command line parsing * separate TiLib package for Win32 (VC6 project) and UNIX (autoconf) * some minor bug fixes in ticodec [ ticodec usage ] usage: ticodec [-e|-d] [-i:infile] [-o:outfile] [-l:levels] [-s:size] [-y:Y% -b:Cb% -r:Cr%] [-B|-D] Options: -e encode image -d decode image -i input file -o output file All other options are valid ony for encoding (-e option). -l number of transform levels, i.e. number of scales -s desired encoded image size in bytes (at least 26 bytes) -B use Butterworth wavelet filter -D use Daubechies 9/7 wavelet filter -y, -b and -r options are a bit tricky Color image consists of 3 channels, called RGB. However, in image compression the most common colorspace is YCbCr. In TiLib, each channel is encoded separately (as there were 3 grayscale images). That`s why, when you say "-s:1000" it`s not clear how to compress each of Y, Cb, Cr channels. TiLib allows you to mix encoded streams for Y, Cb and Cr channels with specified ratio. For example, "-s:1000 -y:90 -b:8 -r:2" means encode Y channel of the input image to 900 bytes, Cb - to 80 bytes and Cr - to 20. Obviously, Y% + Cb% + Cr% must be equal to 100%. This is true for our example. Indeed, 90% (900 bytes) + 8% (80 bytes) + 2% (20 bytes) = 100% (1000 bytes). The default values for Y, Cb, Cr are 90%, 5%, 5% respectively. Now everything must be clear. If not, ask me =) [ To do or not to do? ] Well, nothing planned yet =) [ Contact me ] http://www.entropyware.info xander@entropyware.info [ P.S. ] If this program works, than it was written by Alexander Simakov, if not, than I don`t known who wrote it ;) And the last, but not the least: if you use TiLib or ticodec in your projects, please let me known. I will be very happy ;)

近期下载者

相关文件


收藏者