Mon, 03 Aug 2009 14:21:23 +0100
added keepme for ptdecode obj directory
philpem@5 | 1 | -------------------------------------------------------------------------------- |
philpem@5 | 2 | -------------------------------------------------------------------------------- |
philpem@5 | 3 | ____ _ _ ____ |
philpem@5 | 4 | (_ _)( )_( )( ___) |
philpem@5 | 5 | )( ) _ ( )__) |
philpem@5 | 6 | (__) (_) (_)(____) |
philpem@5 | 7 | ___ ____ __ __ ___ __ ____ ____ ____ __ ____ _ _ |
philpem@5 | 8 | / __)(_ _)( \/ )/ __) ( ) (_ _)( _ \( _ \ /__\ ( _ \( \/ ) |
philpem@5 | 9 | ( (__ _)(_ ) (( (_-. )(__ _)(_ ) _ < ) / /(__)\ ) / \ / |
philpem@5 | 10 | \___)(____)(_/\/\_)\___/ (____)(____)(____/(_)\_)(__)(__)(_)\_) (__) |
philpem@5 | 11 | |
philpem@5 | 12 | |
philpem@5 | 13 | C++ Template Image Processing Library |
philpem@5 | 14 | |
philpem@5 | 15 | ( http://cimg.sourceforge.net ) |
philpem@5 | 16 | |
philpem@5 | 17 | v.1.3.0 |
philpem@5 | 18 | |
philpem@5 | 19 | -------------------------------------------------------------------------------- |
philpem@5 | 20 | |
philpem@5 | 21 | # Summary |
philpem@5 | 22 | #--------- |
philpem@5 | 23 | |
philpem@5 | 24 | The CImg Library is an open-source C++ toolkit for image processing. |
philpem@5 | 25 | It consists in a single header file 'CImg.h' providing a minimal set of C++ |
philpem@5 | 26 | classes and methods that can be used in your own sources, to load/save, |
philpem@5 | 27 | process and display images. Very portable (Unix/X11,Windows, MacOS X, FreeBSD, .. ), |
philpem@5 | 28 | efficient, easy to use, it's a pleasant library for developping image processing |
philpem@5 | 29 | algorithms in C++. |
philpem@5 | 30 | |
philpem@5 | 31 | # Authors and contributors : |
philpem@5 | 32 | #---------------------------- |
philpem@5 | 33 | |
philpem@5 | 34 | - David Tschumperle (project manager) ( http://www.greyc.ensicaen.fr/~dtschump/ ) |
philpem@5 | 35 | |
philpem@5 | 36 | - Haz-Edine Assemlal |
philpem@5 | 37 | - Vincent Barra |
philpem@5 | 38 | - Romain Blei |
philpem@5 | 39 | - Yohan Bentolila |
philpem@5 | 40 | - Jerome Boulanger |
philpem@5 | 41 | - Frederic Devernay |
philpem@5 | 42 | - Francois-Xavier Dupe |
philpem@5 | 43 | - Eric Fausett |
philpem@5 | 44 | - Jean-Marie Favreau |
philpem@5 | 45 | - Sebastien Fourey |
philpem@5 | 46 | - Alexandre Fournier |
philpem@5 | 47 | - Vincent Garcia |
philpem@5 | 48 | - Jinwei Gu |
philpem@5 | 49 | - Jean-Daniel Guyot |
philpem@5 | 50 | - Matt Hanson |
philpem@5 | 51 | - Sebastien Hanel |
philpem@5 | 52 | - Christoph Hormann |
philpem@5 | 53 | - Werner Jainek |
philpem@5 | 54 | - Daniel Kondermann |
philpem@5 | 55 | - Pierre Kornprobst |
philpem@5 | 56 | - Orges Leka |
philpem@5 | 57 | - Francois Lauze |
philpem@5 | 58 | - Xie Long |
philpem@5 | 59 | - Thomas Martin |
philpem@5 | 60 | - Cesar Martinez |
philpem@5 | 61 | - Jean Martinot |
philpem@5 | 62 | - Nikita Melnichenko |
philpem@5 | 63 | - Baptiste Mougel |
philpem@5 | 64 | - Renaud Peteri |
philpem@5 | 65 | - Martin Petricek |
philpem@5 | 66 | - Paolo Prete |
philpem@5 | 67 | - Adrien Reboisson |
philpem@5 | 68 | - Klaus Schneider |
philpem@5 | 69 | - Konstantin Spirin |
philpem@5 | 70 | - David G. Starkweather |
philpem@5 | 71 | - Rainer Steffens |
philpem@5 | 72 | - Grzegorz Szwoch |
philpem@5 | 73 | - Thierry Thomas |
philpem@5 | 74 | - Yu-En-Yun |
philpem@5 | 75 | - Vo Duc Khanh |
philpem@5 | 76 | - Phillip Wood |
philpem@5 | 77 | - Bug Zhao |
philpem@5 | 78 | - Haibo Zheng |
philpem@5 | 79 | |
philpem@5 | 80 | # Institution |
philpem@5 | 81 | #------------- |
philpem@5 | 82 | |
philpem@5 | 83 | GREYC Image / CNRS UMR 6072 / FRANCE |
philpem@5 | 84 | |
philpem@5 | 85 | The CImg Library project started in 2000, at the INRIA-Sophia |
philpem@5 | 86 | Antipolis/France ( http://www-sop.inria.fr/ ), in the ROBOTVIS / ODYSSEE Team. |
philpem@5 | 87 | Since October 2004, it is maintained and developed in the Image team of |
philpem@5 | 88 | the GREYC Lab (CNRS, UMR 6072), in Caen/France. |
philpem@5 | 89 | Team web page : http://www.greyc.ensicaen.fr/EquipeImage/ |
philpem@5 | 90 | |
philpem@5 | 91 | # Licenses |
philpem@5 | 92 | #---------- |
philpem@5 | 93 | |
philpem@5 | 94 | The source code of the CImg Library is distributed under |
philpem@5 | 95 | two distinct licenses : |
philpem@5 | 96 | |
philpem@5 | 97 | - The main library file 'CImg.h' is *dual-licensed* : |
philpem@5 | 98 | It can be either distributed under the CeCILL-C or CeCILL license. |
philpem@5 | 99 | (see files 'Licence_CeCILL-C_V1-en.txt' and 'Licence_CeCILL_V2-en.txt'). |
philpem@5 | 100 | Both are Free-Software licenses : |
philpem@5 | 101 | |
philpem@5 | 102 | * CeCILL-C is adapted to the distribution of |
philpem@5 | 103 | library components, and is close in its terms to the well known GNU LGPL license |
philpem@5 | 104 | (the 'CImg.h' file can thus be used in closed-source products under certain |
philpem@5 | 105 | conditions, please read carefully the license file). |
philpem@5 | 106 | |
philpem@5 | 107 | * CeCILL is close to (and even compatible with) the GNU GPL license. |
philpem@5 | 108 | |
philpem@5 | 109 | - Most of the other files are distributed under the CeCiLL license |
philpem@5 | 110 | (file 'Licence_CeCILL_V2-en.txt'). See the file header to see what license applies. |
philpem@5 | 111 | |
philpem@5 | 112 | These two CeCiLL licenses ( http://www.cecill.info/index.en.html ) have been |
philpem@5 | 113 | created under the supervision of the three biggest research institutions on |
philpem@5 | 114 | computer sciences in France : |
philpem@5 | 115 | |
philpem@5 | 116 | - CNRS ( http://www.cnrs.fr/ ) |
philpem@5 | 117 | - CEA ( http://www.cea.fr/ ) |
philpem@5 | 118 | - INRIA ( http://www.inria.fr/ ) |
philpem@5 | 119 | |
philpem@5 | 120 | You have to RESPECT these licenses. More particularly, please carefully read |
philpem@5 | 121 | the license terms before using the CImg library in commercial products. |
philpem@5 | 122 | |
philpem@5 | 123 | # Package structure : |
philpem@5 | 124 | #-------------------- |
philpem@5 | 125 | |
philpem@5 | 126 | The main package directory CImg/ is organized as follows : |
philpem@5 | 127 | |
philpem@5 | 128 | - README.txt : This file. |
philpem@5 | 129 | - CHANGES.txt : A list of changes between consecutive CImg versions. |
philpem@5 | 130 | - Licence_CeCILL-C_V1-en.txt : A copy of the CeCiLL-C license file. |
philpem@5 | 131 | - Licence_CeCILL_V2-en.txt : A copy of the CeCiLL license. |
philpem@5 | 132 | - CImg.h : The single header file that constitutes the library itself. |
philpem@5 | 133 | - examples/ : A directory containing lot of example programs performing |
philpem@5 | 134 | various things, based on the CImg library. |
philpem@5 | 135 | - html/ : A directory containing a copy of the CImg web page in html |
philpem@5 | 136 | format. The reference documentation is generated |
philpem@5 | 137 | automatically with the tool 'doxygen' (http://www.doxygen.org). |
philpem@5 | 138 | - resources/ : A directory containing some resources files for compiling |
philpem@5 | 139 | CImg examples or packages with various C++ compilers and OS. |
philpem@5 | 140 | - plugins/ : A directory containing CImg plug-ins files that can be used to |
philpem@5 | 141 | add specific extra functionalities to the CImg library. |
philpem@5 | 142 | |
philpem@5 | 143 | # Getting started |
philpem@5 | 144 | #----------------- |
philpem@5 | 145 | |
philpem@5 | 146 | If you are new to CImg, you should first try to compile the different examples |
philpem@5 | 147 | provided in the 'examples/' directory, to see what CImg is capable of |
philpem@5 | 148 | (as CImg is a template library, no compilation is mandatory of course). |
philpem@5 | 149 | Look at the 'resources/' directory to ease this see how to compile these examples |
philpem@5 | 150 | on different plateforms. |
philpem@5 | 151 | |
philpem@5 | 152 | Then, you can look at the documentation 'html/reference/' to learn more about CImg |
philpem@5 | 153 | functions and classes. Finally, you can participate to the 'Forum' or 'Chat' sections |
philpem@5 | 154 | of the CImg web page and ask for help if needed. |
philpem@5 | 155 | |
philpem@5 | 156 | # Current list of available CImg plug-ins |
philpem@5 | 157 | #----------------------------------------- |
philpem@5 | 158 | |
philpem@5 | 159 | -------------------------------------------------------------------------------- |
philpem@5 | 160 | - CImg IPL ('plugins/cimgIPL.h') (November 2008). |
philpem@5 | 161 | |
philpem@5 | 162 | This plug-in allows the conversion between CImg and IplImage structures |
philpem@5 | 163 | (used in openCV). |
philpem@5 | 164 | |
philpem@5 | 165 | by Haibo Zheng (haibo.zheng - at - gmail.com) |
philpem@5 | 166 | |
philpem@5 | 167 | -------------------------------------------------------------------------------- |
philpem@5 | 168 | - Draw gradient ('plugins/draw_gradient.h') (November 2008). |
philpem@5 | 169 | |
philpem@5 | 170 | This plug-in can be used to draw color gradient in images. |
philpem@5 | 171 | |
philpem@5 | 172 | by Jerome Boulanger (http://www.irisa.fr/vista/Equipe/People/Jerome.Boulanger.html), |
philpem@5 | 173 | |
philpem@5 | 174 | -------------------------------------------------------------------------------- |
philpem@5 | 175 | - Add file format ('plugins/add_fileformat.h') (September 2007). |
philpem@5 | 176 | |
philpem@5 | 177 | This plug-in shows how to easily add support for your own file format in |
philpem@5 | 178 | CImg. This can be interesting, since the additional format will be recognized |
philpem@5 | 179 | in functions 'CImg<T>::save()' and 'CImg<T>::load()' functions. |
philpem@5 | 180 | |
philpem@5 | 181 | by David Tschumperle (http://www.greyc.ensicaen.fr/~dtschump/). |
philpem@5 | 182 | IMAGE Team / GREYC (CNRS UMR 6072), Caen / FRANCE. |
philpem@5 | 183 | Home page of the team : http://www.greyc.ensicaen.fr/EquipeImage/ |
philpem@5 | 184 | |
philpem@5 | 185 | -------------------------------------------------------------------------------- |
philpem@5 | 186 | - JPEG Buffer ('plugins/jpeg_buffer.h') (July 2007). |
philpem@5 | 187 | |
philpem@5 | 188 | This plug-in provides functions to read/write images stored in jpeg format |
philpem@5 | 189 | directly in memory buffers. Interesting when dealing for instance with |
philpem@5 | 190 | images coming from webcams and stored in memory. |
philpem@5 | 191 | |
philpem@5 | 192 | by Paolo Prete. |
philpem@5 | 193 | |
philpem@5 | 194 | -------------------------------------------------------------------------------- |
philpem@5 | 195 | - Integral Line ('plugins/integral_line.h') (March 2007). |
philpem@5 | 196 | |
philpem@5 | 197 | Implementation of functions that retrieve integral lines from vector fields |
philpem@5 | 198 | using different types of interpolation. |
philpem@5 | 199 | |
philpem@5 | 200 | by David Tschumperle (http://www.greyc.ensicaen.fr/~dtschump/). |
philpem@5 | 201 | IMAGE Team / GREYC (CNRS UMR 6072), Caen / FRANCE |
philpem@5 | 202 | Home page of the team : http://www.greyc.ensicaen.fr/EquipeImage/ |
philpem@5 | 203 | |
philpem@5 | 204 | -------------------------------------------------------------------------------- |
philpem@5 | 205 | - GREYCstoration ('plugins/greycstoration.h') (May 2006). |
philpem@5 | 206 | |
philpem@5 | 207 | Implementation of the GREYCstoration algorithm for image denoising. |
philpem@5 | 208 | This version is adapted for an easy integration in third parties |
philpem@5 | 209 | software, since it is non-blocking and returns a progression indice |
philpem@5 | 210 | that can be used in progress bars. |
philpem@5 | 211 | |
philpem@5 | 212 | by David Tschumperle (http://www.greyc.ensicaen.fr/~dtschump/). |
philpem@5 | 213 | IMAGE Team / GREYC (CNRS UMR 6072), Caen / FRANCE |
philpem@5 | 214 | Home page of the team : http://www.greyc.ensicaen.fr/EquipeImage/ |
philpem@5 | 215 | |
philpem@5 | 216 | -------------------------------------------------------------------------------- |
philpem@5 | 217 | - NL Means and Noise Analysis ('plugins/nlmeans.h' and |
philpem@5 | 218 | 'plugins/noise_analysis.h') (May 2006). |
philpem@5 | 219 | |
philpem@5 | 220 | Implementation of the Non-Local Means algorithm as described in [1] and [2]. |
philpem@5 | 221 | The variance of the noise can be automatically estimated using the method |
philpem@5 | 222 | inspired from [3]. |
philpem@5 | 223 | |
philpem@5 | 224 | [1] Buades, A.; Coll, B.; Morel, J.-M.: A non-local algorithm for image |
philpem@5 | 225 | denoising. IEEE Computer Society Conference on Computer Vision and Pattern |
philpem@5 | 226 | Recognition, 2005. CVPR 2005. Vol 2, 20-25 June 2005 Page(s):60 - 65 |
philpem@5 | 227 | |
philpem@5 | 228 | [2] Buades, A. Coll, B. and Morel, J.: A review of image denoising algorithms, |
philpem@5 | 229 | with a new one. Multiscale Modeling and Simulation: A SIAM |
philpem@5 | 230 | Interdisciplinary Journal 4 (2004) 490-530 |
philpem@5 | 231 | |
philpem@5 | 232 | [3] Gasser, T. Sroka,L. Jennen Steinmetz,C. Residual variance and residual |
philpem@5 | 233 | pattern nonlinear regression. Biometrika 73 (1986) 625-659 |
philpem@5 | 234 | |
philpem@5 | 235 | by Jerome Boulanger (http://www.irisa.fr/vista/Equipe/People/Jerome.Boulanger.html), |
philpem@5 | 236 | Charles Kervrann and Patrick Bouthemy thanks to ACI IMPBio (MODYNCELL5D Project). |
philpem@5 | 237 | VISTA / IRISA-INRIA, Rennes / FRANCE |
philpem@5 | 238 | Home page of the team : http://www.irisa.fr/vista/ |
philpem@5 | 239 | MIA / INRA, Unite de Jouy-en-Josas / FRANCE. |
philpem@5 | 240 | |
philpem@5 | 241 | -------------------------------------------------------------------------------- |
philpem@5 | 242 | - Plug in for Matlab mex files ('plugins/cimgmatlab.h') (May 2006). |
philpem@5 | 243 | |
philpem@5 | 244 | Implement a CImg<T> constructor from a matlab array, a CImg<T> assignment |
philpem@5 | 245 | operator from a matlab array and a method that exports a CImg<T> object to |
philpem@5 | 246 | a Matlab array. |
philpem@5 | 247 | For a bit more, http://www.itu.dk/people/francois/cimgmatlab.html |
philpem@5 | 248 | |
philpem@5 | 249 | by Francois Lauze (http://www.itu.dk/people/francois/index.html) |
philpem@5 | 250 | The IT University of Copenhagen, Image Group. |
philpem@5 | 251 | |
philpem@5 | 252 | -------------------------------------------------------------------------------- |
philpem@5 | 253 | |
philpem@5 | 254 | # End of file |
philpem@5 | 255 | #------------ |