[ VIGRA Homepage | Class Index | Function Index | File Index | Main Page ]

details vigra/stdimage.hxx VIGRA

00001 /************************************************************************/
00002 /*                                                                      */
00003 /*               Copyright 1998-2002 by Ullrich Koethe                  */
00004 /*       Cognitive Systems Group, University of Hamburg, Germany        */
00005 /*                                                                      */
00006 /*    This file is part of the VIGRA computer vision library.           */
00007 /*    ( Version 1.4.0, Dec 21 2005 )                                    */
00008 /*    The VIGRA Website is                                              */
00009 /*        http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/      */
00010 /*    Please direct questions, bug reports, and contributions to        */
00011 /*        koethe@informatik.uni-hamburg.de          or                  */
00012 /*        vigra@kogs1.informatik.uni-hamburg.de                         */
00013 /*                                                                      */
00014 /*    Permission is hereby granted, free of charge, to any person       */
00015 /*    obtaining a copy of this software and associated documentation    */
00016 /*    files (the "Software"), to deal in the Software without           */
00017 /*    restriction, including without limitation the rights to use,      */
00018 /*    copy, modify, merge, publish, distribute, sublicense, and/or      */
00019 /*    sell copies of the Software, and to permit persons to whom the    */
00020 /*    Software is furnished to do so, subject to the following          */
00021 /*    conditions:                                                       */
00022 /*                                                                      */
00023 /*    The above copyright notice and this permission notice shall be    */
00024 /*    included in all copies or substantial portions of the             */
00025 /*    Software.                                                         */
00026 /*                                                                      */
00027 /*    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND    */
00028 /*    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES   */
00029 /*    OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND          */
00030 /*    NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT       */
00031 /*    HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,      */
00032 /*    WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING      */
00033 /*    FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR     */
00034 /*    OTHER DEALINGS IN THE SOFTWARE.                                   */                
00035 /*                                                                      */
00036 /************************************************************************/
00037  
00038  
00039 #ifndef VIGRA_STDIMAGE_HXX
00040 #define VIGRA_STDIMAGE_HXX
00041 
00042 #include "vigra/sized_int.hxx"
00043 #include "vigra/tuple.hxx"
00044 #include "vigra/basicimage.hxx"
00045 #include "vigra/iteratortraits.hxx"
00046 #include "vigra/accessor.hxx"
00047 #include "vigra/rgbvalue.hxx"
00048 
00049 namespace vigra { 
00050 
00051 /** \addtogroup StandardImageTypes Standard Image Types
00052 
00053     \brief The most common instantiations of the \ref vigra::BasicImage template
00054 */
00055 //@{
00056 
00057     /** Byte (8-bit unsigned) image.
00058         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00059         their const counterparts to access the data.
00060         
00061         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00062         Namespace: vigra
00063     */
00064 typedef BasicImage<UInt8> BImage;
00065 
00066     /** Byte (8-bit unsigned) image.
00067         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00068         their const counterparts to access the data.
00069         
00070         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00071         Namespace: vigra
00072     */
00073 typedef BasicImage<UInt8> UInt8Image;
00074 
00075     /** Signed byte (8-bit signed) image.
00076         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00077         their const counterparts to access the data.
00078         
00079         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00080         Namespace: vigra
00081     */
00082 typedef BasicImage<Int8> Int8Image;
00083 
00084     /** Short integer (16-bit signed) image.
00085         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00086         their const counterparts to access the data.
00087         
00088         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00089         Namespace: vigra
00090     */
00091 typedef BasicImage<Int16> SImage;
00092 
00093     /** Short integer (16-bit unsigned) image.
00094         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00095         their const counterparts to access the data.
00096         
00097         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00098         Namespace: vigra
00099     */
00100 typedef BasicImage<UInt16> UInt16Image;
00101 
00102     /** Short integer (16-bit signed) image.
00103         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00104         their const counterparts to access the data.
00105         
00106         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00107         Namespace: vigra
00108     */
00109 typedef BasicImage<Int16> Int16Image;
00110 
00111     /** Integer (32-bit signed) image.
00112         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00113         their const counterparts to access the data.
00114         
00115         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00116         Namespace: vigra
00117     */
00118 typedef BasicImage<Int32> IImage;
00119 
00120     /** Integer (32-bit unsigned) image.
00121         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00122         their const counterparts to access the data.
00123         
00124         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00125         Namespace: vigra
00126     */
00127 typedef BasicImage<UInt32> UInt32Image;
00128 
00129     /** Integer (32-bit signed) image.
00130         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00131         their const counterparts to access the data.
00132         
00133         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00134         Namespace: vigra
00135     */
00136 typedef BasicImage<Int32> Int32Image;
00137 
00138     /** Float (float) image.
00139         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00140         their const counterparts to access the data.
00141         
00142         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00143         Namespace: vigra
00144     */
00145 typedef BasicImage<float> FImage;
00146 
00147 
00148     /** Double (double) image.
00149         It uses \ref vigra::BasicImageIterator and \ref vigra::StandardAccessor and 
00150         their const counterparts to access the data.
00151    
00152        <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00153         Namespace: vigra
00154  */
00155 typedef BasicImage<double> DImage;
00156 
00157 
00158     /** Byte (3x 8-bit unsigned) RGB image.
00159         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::UInt8>".
00160         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00161         their const counterparts to access the data.
00162         
00163         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00164         Namespace: vigra
00165     */
00166 typedef BasicImage<RGBValue<UInt8> > BRGBImage;
00167 
00168     /** Byte (3x 8-bit unsigned) RGB image.
00169         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::UInt8>".
00170         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00171         their const counterparts to access the data.
00172         
00173         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00174         Namespace: vigra
00175     */
00176 typedef BasicImage<RGBValue<UInt8> > UInt8RGBImage;
00177 
00178     /** Byte (3x 8-bit signed) RGB image.
00179         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::UInt8>".
00180         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00181         their const counterparts to access the data.
00182         
00183         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00184         Namespace: vigra
00185     */
00186 typedef BasicImage<RGBValue<Int8> > Int8RGBImage;
00187 
00188     /** Short (3x 16-bit signed) RGB image.
00189         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::Int16>".
00190         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00191         their const counterparts to access the data.
00192         
00193         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00194         Namespace: vigra
00195     */
00196 typedef BasicImage<RGBValue<Int16> > SRGBImage;
00197 
00198     /** Short (3x 16-bit unsigned) RGB image.
00199         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::Int16>".
00200         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00201         their const counterparts to access the data.
00202         
00203         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00204         Namespace: vigra
00205     */
00206 typedef BasicImage<RGBValue<UInt16> > UInt16RGBImage;
00207 
00208     /** Short (3x 16-bit signed) RGB image.
00209         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::Int16>".
00210         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00211         their const counterparts to access the data.
00212         
00213         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00214         Namespace: vigra
00215     */
00216 typedef BasicImage<RGBValue<Int16> > Int16RGBImage;
00217 
00218     /** Integer (3x 32-bit signed) RGB image.
00219         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::Int32>".
00220         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00221         their const counterparts to access the data.
00222         
00223         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00224         Namespace: vigra
00225     */
00226 typedef BasicImage<RGBValue<Int32> > IRGBImage;
00227 
00228     /** Integer (3x 32-bit unsigned) RGB image.
00229         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::Int32>".
00230         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00231         their const counterparts to access the data.
00232         
00233         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00234         Namespace: vigra
00235     */
00236 typedef BasicImage<RGBValue<UInt32> > UInt32RGBImage;
00237 
00238     /** Integer (3x 32-bit signed) RGB image.
00239         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<vigra::Int32>".
00240         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00241         their const counterparts to access the data.
00242         
00243         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00244         Namespace: vigra
00245     */
00246 typedef BasicImage<RGBValue<Int32> > Int32RGBImage;
00247 
00248 
00249     /** Floating-point (3x float) RGB image.
00250         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<float>".
00251         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00252         their const counterparts to access the data.
00253         
00254         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00255         Namespace: vigra
00256     */
00257 typedef BasicImage<RGBValue<float> > FRGBImage;
00258 
00259 
00260     /** Double-precision floating-point (3x double) RGB image.
00261         The pixel type is \ref vigra::RGBValue "vigra::RGBValue<double>".
00262         It uses \ref vigra::BasicImageIterator and \ref vigra::RGBAccessor and 
00263         their const counterparts to access the data.
00264         
00265         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00266         Namespace: vigra
00267     */
00268 typedef BasicImage<RGBValue<double> > DRGBImage;
00269 
00270     /** Floating-point TinyVector image.
00271         The pixel type is \ref vigra::TinyVector "vigra::TinyVector<float, 2>".
00272         It uses \ref vigra::BasicImageIterator and \ref vigra::VectorAccessor and 
00273         their const counterparts to access the data.
00274         
00275         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00276         Namespace: vigra
00277     */
00278 typedef BasicImage<TinyVector<float, 2> > FVector2Image; 
00279 
00280     /** Floating-point TinyVector image.
00281         The pixel type is \ref vigra::TinyVector "vigra::TinyVector<float, 3>".
00282         It uses \ref vigra::BasicImageIterator and \ref vigra::VectorAccessor and 
00283         their const counterparts to access the data.
00284         
00285         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00286         Namespace: vigra
00287     */
00288 typedef BasicImage<TinyVector<float, 3> > FVector3Image; 
00289 
00290     /** Floating-point TinyVector image.
00291         The pixel type is \ref vigra::TinyVector "vigra::TinyVector<float, 4>".
00292         It uses \ref vigra::BasicImageIterator and \ref vigra::VectorAccessor and 
00293         their const counterparts to access the data.
00294         
00295         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00296         Namespace: vigra
00297     */
00298 typedef BasicImage<TinyVector<float, 4> > FVector4Image; 
00299 
00300     /** Floating-point TinyVector image.
00301         The pixel type is \ref vigra::TinyVector "vigra::TinyVector<double, 2>".
00302         It uses \ref vigra::BasicImageIterator and \ref vigra::VectorAccessor and 
00303         their const counterparts to access the data.
00304         
00305         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00306         Namespace: vigra
00307     */
00308 typedef BasicImage<TinyVector<double, 2> > DVector2Image; 
00309 
00310     /** Floating-point TinyVector image.
00311         The pixel type is \ref vigra::TinyVector "vigra::TinyVector<double, 3>".
00312         It uses \ref vigra::BasicImageIterator and \ref vigra::VectorAccessor and 
00313         their const counterparts to access the data.
00314         
00315         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00316         Namespace: vigra
00317     */
00318 //typedef BasicImage<TinyVector<double, 3> > DVector3Image; 
00319 typedef BasicImage<TinyVector<double, 3> > DVector3Image; 
00320 
00321     /** Floating-point TinyVector image.
00322         The pixel type is \ref vigra::TinyVector "vigra::TinyVector<double, 4>".
00323         It uses \ref vigra::BasicImageIterator and \ref vigra::VectorAccessor and 
00324         their const counterparts to access the data.
00325         
00326         <b>\#include</b> "<a href="stdimage_8hxx-source.html">vigra/stdimage.hxx</a>"<br>
00327         Namespace: vigra
00328     */
00329 typedef BasicImage<TinyVector<double, 4> > DVector4Image; 
00330 
00331 //@}
00332 
00333 } // namespace vigra
00334 
00335 #endif // VIGRA_STDIMAGE_HXX

© Ullrich Köthe (koethe@informatik.uni-hamburg.de)
Cognitive Systems Group, University of Hamburg, Germany

html generated using doxygen and Python
VIGRA 1.4.0 (21 Dec 2005)