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

📄 qcchypklt.3

📁 spiht for linux this is used to decod and encode vedio i wich all enjoy
💻 3
字号:
.TH QCCHYPKLT 3 "QCCPACK" "".SH NAMEQccHYPklt \- data structure.B QccHYPkltfor spectral KLT transform.SH SYNOPSIS.B #include "libQccPack.h".sp.BI "int QccHYPkltInitialize(QccHYPklt *" klt );.br.BI "int QccHYPkltAlloc(QccHYPklt *" klt );.br.BI "void QccHYPkltFree(QccHYPklt *" klt );.br.BI "int QccHYPkltPrint(const QccHYPklt *" klt );.br.BI "int QccHYPkltRead(QccHYPklt *" klt );.br.BI "int QccHYPkltWrite(const QccHYPklt *" klt );.SH DESCRIPTIONQccPack provides data structure.B QccHYPkltfor representing a KLT transform..LPThe components of a.B QccHYPkltstructure are a vector representing the dataset mean anda matrix representing the transform itself, as determinedby a singular value decomposition of the dataset's covariancematrix..SH "DATA STRUCTURE"The.B QccHYPkltdata structure is defined as:.RS.nftypedef struct{  QccString filename;  QccString magic_num;  int major_version;  int minor_version;  int num_bands;  QccVector mean;  QccMatrix matrix;} QccHYPklt;.fi.RE.LPThe fields of.B QccHYPkltare as follows:.TP.IR filenameThe name of the file..TP.IR magic_num ", " major_version ", " minor_versionThe magic number and version of the file..TP.IR num_bandsThe number of spectral bands the KLT is designed for..TP.IR meanThe mean vector (length =.IR num_bands )..TP.IR matrixThe transform matrix (size = .IR num_bands " x " num_bands )..SH "FILE FORMAT"For reading and writing structuresof type.BR QccHYPklt ,QccPack provides the.B KLTfile format.This file format starts with an ASCII header followed bybinary data.The ASCII header consists of magic-number/revisioninformationfollowed by any amount of white space(space, `\\t' (tab), `\\n' (newline), `\\r' (return)) and/orcomments lines (lines starting with `#').  Following this white space,additional ASCIIheader information is given, separated by blanks and newlines.Binary data follows this ASCII header information..LPThe.B KLTfile format consists of the following information:.RS.sp.BI KLT X.X.br.I "<white space>".br.I num_bands.br.I mean.br\|..br\|..br\|..br.I matrix.br\|..br\|..br\|..br.sp.REwhere.B KLTis the magic number,.I X.Xis the version number,.I "<white space>"is white space and/or comment lines, .I num_bandsis the number of bands,.I meanare the elements of the mean vector,and.I matrixare the elements of the transform matrix..I num_bandsis stored in ASCII, while the.I meanand.I matrixvalues are stored as binary(4 bytes, MSB first, see.BR QccFileWriteDouble (3)).No white space may exist between the .I meanand.I matrixvalues..SH "ROUTINES".B QccHYPkltInitialize()should be called before any use of a.B QccHYPkltstructure..B QccHYPkltInitialize()initializes the fields of.I kltto the following values:.RS.IR filename :.B NULLstring.br.IR magic_num :.B QCCFILTERBANK_MAGICNUM.br.IR major_version ", " minor_version :initialized to output of .BR QccGetQccPackVersion (3).br.IR num_bands :0.br.IR mean :.B NULL.br.IR matrix :.B NULL.br.RE.LP.B QccHYPkltAlloc()allocates the.I meanand.I matrixfields of the KLT..IR num_bandsmust be set prior to calling.BR QccHYPkltAlloc() ..LP.B QccHYPkltFree()frees the .I meanand.I matrixfields of.IR klt ..LP.B QccHYPkltPrint()prints the contents of.I kltto stdout..LP.BR QccHYPkltRead()reads a.BR QccHYPkltstructure from a file;the filename of the.BR KLT -formatfile to be read must be stored as.IR klt->filename ..LP.BR QccHYPkltWrite()writes a.BR QccHYPkltstructure to a file;the filename of the.BR KLT -formatfile to be written must be stored as.IR klt->filename ..SH "THEORY"The Karhunen-Lo鑦e transform (KLT) is a data-dependent lineartransform that is optimal in the sense that itpacks the most signal energy into a given number oftransform coefficients..LPThe KLT is often used for spectral decorrelation in a hyperspectralimage. Let.I Xbe a collection of pixel vectors; i.e.,.I Xis a.IR num_bands " x " num_pixelsmatrix, where.I num_bandsis the number of spectral bands in the hyperspectral image.Let.I ube the mean vector of the pixel vectors (a.IR num_bands " x 1"vector).The covariance matrix.I Rof.I Xis then.IR R " = " X * X ^T/ num_pixels " - " u * u ^T,where the size of .I Ris.IR num_bands " x " num_bands .The singular value decomposition of.I Ris.IR R " = " U * S * V ^T,where.I Uis the transform matrix for the KLT (size.IR num_bands " x " num_bands )..LPThe forward KLT transform is applied to the dataset in questionusing the transpose of the matrix.IR U .Specifically, for a.IR num_bands " x 1"pixel vector.IR x ,the forward KLT is.IR y " = " U ^T*( x " - " u ).The inverse KLT transform uses the matrix.IR Udirectly; i.e.,.IR x " = " U * y " + " u .Here,.IR uis the mean vector..LPIn QccPack,.BR QccHYPkltTrain (3)determines the mean vector.I uand the transform matrix.I Ugiven the set of pixel vectors in a hyperspectral image;.BR QccHYPkltTrain (3)uses.BR QccMatrixSVD (3)to perform the SVD of the covariance matrix.For application of the forward and inverse transforms to the image cube, use.BR QccHYPkltTransform (3)and.BR QccHYPkltInverseTransform (3),respectively..LPThe KLT is also called the Hotelling transform orprincipal component analysis (PCA).The name PCA is typically used when only a subset of transform coefficients(i.e., the principal components) is retained; that is,PCA typically refers to dimensionality reduction in additionto the spectral decorreltation inherent in the KLT..SH "RETURN VALUE"These routines return 0 on success, and 1 on failure..SH "SEE ALSO".BR QccHYPkltTrain (3),.BR QccHYPkltTransform (3),.BR QccHYPkltInverseTransform (3),.BR QccMatrixSVD (3),.BR QccIMGImageCube (3),.BR QccPackHYP (3),.BR QccPackIMG (3),.BR QccPack (3).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 + -