Wed, 05 Aug 2009 15:02:31 +0100
PTdecode: add support for uncompressed data (NOTE: *NOT* supported by the PT-2450DX)
philpem@5 | 1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
philpem@5 | 2 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
philpem@5 | 3 | <!--#include file="header.html" --> |
philpem@5 | 4 | |
philpem@5 | 5 | <table align="center" border="0" cellpadding="20" cellspacing="0" width="100%"><tbody><tr><td> |
philpem@5 | 6 | <font face="Arial,Helvetica" size="-1"> |
philpem@5 | 7 | |
philpem@5 | 8 | <img src="img/item_news.gif" alt="Latest News"> |
philpem@5 | 9 | <p> |
philpem@5 | 10 | Here are the latest news about the CImg Library project. |
philpem@5 | 11 | </p> |
philpem@5 | 12 | </font> |
philpem@5 | 13 | |
philpem@5 | 14 | <!-- ###################### --> |
philpem@5 | 15 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 16 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 17 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 18 | <b>10th postcard received !</b> |
philpem@5 | 19 | <font size="-2">(2007/08/17, 02:15pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 20 | Today, I received another postcard from Palermo/Italia ! Thanks you for this one. Unfortunately, the senders did not give |
philpem@5 | 21 | a e-mail, and thus I cannot thank them directly. But if you read me, thanks a lot ! |
philpem@5 | 22 | My postcard wall is growing slowly... |
philpem@5 | 23 | <br/><br/> |
philpem@5 | 24 | <img src="img/postcard10.jpg"></img> |
philpem@5 | 25 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 26 | |
philpem@5 | 27 | <!-- ###################### --> |
philpem@5 | 28 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 29 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 30 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 31 | <b>CImg 1.2.9 Released</b> |
philpem@5 | 32 | <font size="-2">(2008/06/26, 13:00)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 33 | The CImg 1.2.9 package has been released. There are several changes and ameliorations.<br/><br/> |
philpem@5 | 34 | <font color="#D00000"> |
philpem@5 | 35 | *-----------------------------<br/> |
philpem@5 | 36 | *-----------------------------<br/> |
philpem@5 | 37 | * Changes from 1.2.8 to 1.2.9<br/> |
philpem@5 | 38 | *-----------------------------<br/> |
philpem@5 | 39 | *-----------------------------<br/> |
philpem@5 | 40 | <br/> |
philpem@5 | 41 | * New features :<br/> |
philpem@5 | 42 | - Added new example file 'examples/captcha.cpp', which can be used to draw captcha images. This is a very |
philpem@5 | 43 | short and simple code, so it can be interesting for a first approach of CImg.<br/> |
philpem@5 | 44 | - Added functions 'CImg<T>::scale_2x()' and 'CImg<T>::scale_3x()' allowing to upscale an image |
philpem@5 | 45 | with a edge-directed algorithm (see 'http://scale2x.sourceforge.net/')/<br/> |
philpem@5 | 46 | - Added function 'CImg<T>::save_cpp()' allowing to save an image directly as a |
philpem@5 | 47 | C/C++ source code.<br/> |
philpem@5 | 48 | - Added function 'CImg<T>::draw_mandelbrot()' allowing to draw quadratic mandelbrot fractal set on images.<br/> |
philpem@5 | 49 | - Added a new demo effect 'Fish-Eye Magnification' in file 'examples/CImg_demo.cpp'.<br/> |
philpem@5 | 50 | - Added new fields in CImgDisplay for an easy test of keys pressing. Very useful for testing complicated combinations.<br/> |
philpem@5 | 51 | - Added functions to read/save gzipped files.<br/> |
philpem@5 | 52 | - Added compression option for .cimg files (requires the use of the 'zlib' library).<br/> |
philpem@5 | 53 | - Added color conversions for CMY and CMYK color bases.<br/> |
philpem@5 | 54 | <br/> |
philpem@5 | 55 | * Optimizations / Modifications :<br/> |
philpem@5 | 56 | - Big code cleaning and re-organization in file 'CImg.h', making the things more clear.<br/> |
philpem@5 | 57 | - Function 'CImg<T>::load_ascii()' has been modified to allow comments before specifying image |
philpem@5 | 58 | dimensions.<br/> |
philpem@5 | 59 | - Functions 'CImg[List]::print()' have been slightly modified to be more precise and clear. Also used |
philpem@5 | 60 | in functions 'CImg[List]::display()'.<br/> |
philpem@5 | 61 | - Improved functionalities of the image processing tool 'inrcast.cpp'.<br/> |
philpem@5 | 62 | - Improved 'CImg[List]<T>::display()' function allowing easy navigation and zooming in images.<br/> |
philpem@5 | 63 | - Add native use of ffmpeg libraries to load video sequences (Thanks to David Starkweather for his nice contribution !)<br/> |
philpem@5 | 64 | - Optimized function 'CImg<T>::permute_axes' for common used cases (planar to interleaved RGB and RGBA).<br/> |
philpem@5 | 65 | - Added parameter 'step_frame' in functions that can load video sequences, |
philpem@5 | 66 | i.e. CImg[List]<T>::load_yuv(), CImg[List]<T>::load_tiff(), CImg[List]<T>::load_ffmpeg(), so that frames |
philpem@5 | 67 | can be skipped when loading the video files.<br/> |
philpem@5 | 68 | - Removed parameter 'events_type' in CImgDisplay functions. By default, a display is always catching all user |
philpem@5 | 69 | events. Having different choices made slight problems between different architectures (and was not really |
philpem@5 | 70 | useful).<br/> |
philpem@5 | 71 | - Removed plugin 'plugins/toolbox3d.h'. Functions of the plug-ins are now natively integrated into the CImg.h file, |
philpem@5 | 72 | as well as the LibBoard library support.<br/> |
philpem@5 | 73 | - Renamed functions 'CImg<>::*pix?d()' to 'CImg<>::*at?()'.<br/> |
philpem@5 | 74 | <br/> |
philpem@5 | 75 | * Bug corrections :<br/> |
philpem@5 | 76 | - Small bug in functions 'CImg[List]::contains()' were corrected.<br/> |
philpem@5 | 77 | - Bug correction in function 'CImg<T>::[get_]stats()' : offset of min and max values were sometimes incorrect.<br/> |
philpem@5 | 78 | - Bug correction in CImgDisplay events for Windows-based OS. When mouse leaved a window, coordinates |
philpem@5 | 79 | didn't reset to -1 sometimes.<br/> |
philpem@5 | 80 | - Small non-computational bug correction in 'CImg<T>::symmetric_eigen()'.<br/> |
philpem@5 | 81 | - Removed g++ warning that occured when using 'libpng' ('warning: argument 'xxx' might be clobbered by 'longjmp' or 'vfork').<br/> |
philpem@5 | 82 | - Corrected small illumination bug with double sided 3D objects in CImg<T>::draw_object3d().<br/> |
philpem@5 | 83 | - And a lot of other small improvements and bug corrections...<br/> |
philpem@5 | 84 | <br/> |
philpem@5 | 85 | </font> |
philpem@5 | 86 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 87 | |
philpem@5 | 88 | <!-- ###################### --> |
philpem@5 | 89 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 90 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 91 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 92 | <b>CImg 1.2.8 Released</b> |
philpem@5 | 93 | <font size="-2">(2008/04/18, 13:00)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 94 | The CImg 1.2.8 package has been released. There are several changes and ameliorations.<br/><br/> |
philpem@5 | 95 | <font color="#D00000"> |
philpem@5 | 96 | *-----------------------------<br/> |
philpem@5 | 97 | *-----------------------------<br/> |
philpem@5 | 98 | * Changes from 1.2.7 to 1.2.8<br/> |
philpem@5 | 99 | *-----------------------------<br/> |
philpem@5 | 100 | *-----------------------------<br/> |
philpem@5 | 101 | <br/> |
philpem@5 | 102 | * New features :<br/> |
philpem@5 | 103 | - Added native Carbon support in CImgDisplay. Allows to run CImg on MacOSX without installing X11. |
philpem@5 | 104 | This is a beta support, so not activated by default. Define 'cimg_use_carbon' to enable it. |
philpem@5 | 105 | Many Thanks to Adrien Reboisson, Romain Blei and Jean-Marie Favreau for this nice contribution. |
philpem@5 | 106 | Any comments and contributions are welcome.<br/> |
philpem@5 | 107 | - Added variant of 'CImgList<T>::remove()' that can remove several images from a CImgList<T> list |
philpem@5 | 108 | at the same time.<br/> |
philpem@5 | 109 | - Added new numbered macros 'cimg_plugin1...8', for easy inclusion of multiple CImg plug-ins.<br/> |
philpem@5 | 110 | - Added plugin 'plugins/distance_saito.h' that implements the Saito's distance transform.<br/> |
philpem@5 | 111 | - Added function 'CImg<T>::blur_patch()' that performs a patch-based Tikhonov flow on the image. |
philpem@5 | 112 | Allows to denoise and regularize image quite well (is time-consuming anyway).<br/> |
philpem@5 | 113 | - Functions 'CImg<T>::load_tiff()', 'CImgList<T>::load_tiff()', 'CImg<T>::save_tiff()' and |
philpem@5 | 114 | 'CImgList<T>::save_tiff()' has been (re)-coded. It is now possible to read/save multi-pages tif |
philpem@5 | 115 | image files worriless.<br/> |
philpem@5 | 116 | - Native support for 'icc' compiler (Intel C++ compiler) added in the Makefile. |
philpem@5 | 117 | Just type 'make CC=icc olinux' to compile using icc (offers nice performances in code optimization).<br/> |
philpem@5 | 118 | - Started support of OpenMP directives, to allow parallelization of CImg functions in order to |
philpem@5 | 119 | improve performances. Not few used, by this could change in the future.<br/> |
philpem@5 | 120 | - Added functions to load/save video sequences using the external tool FFMPEG (http://http://ffmpeg.mplayerhq.hu/). |
philpem@5 | 121 | 'inrcast' is now able to read video sequences using FFMPEG.<br/> |
philpem@5 | 122 | - Added new color basis conversions : RGBtoHSI(), HSItoRGB(), HSLtoRGB() (Thanks to Cesar Martinez for his |
philpem@5 | 123 | contribution).<br/> |
philpem@5 | 124 | - Added example file 'examples/radon_transform.cpp', provided by David G. Starkweather (Thanks guy!).<br/> |
philpem@5 | 125 | <br/> |
philpem@5 | 126 | * Optimizations / Modifications :<br/> |
philpem@5 | 127 | - The main library file 'CImg.h' is now distributed under dual license CeCILL or CeCILL-C.<br/> |
philpem@5 | 128 | - Patched function 'CImg<T>::load_tiff()' for a better support of float-valued tiff images.<br/> |
philpem@5 | 129 | - Renamed 'CImg<T>::inverse()' as 'CImg<T>::invert()' and 'CImg<>::pseudoinverse()' as 'CImg<T>::pseudoinvert()'.<br/> |
philpem@5 | 130 | - Function 'CImg<T>::displacement_field()' has been modified to consider a multi-valued geometry |
philpem@5 | 131 | for motion detection (so color images are naturally taken into account now).<br/> |
philpem@5 | 132 | - Optimized functions 'CImg<T>::dilate()' and 'CImg<T>::erode()' |
philpem@5 | 133 | - Slightly optimized pixel access and display rendering functions.<br/> |
philpem@5 | 134 | - Used native mutex mechanism of X11 instead of the pthread library.<br/> |
philpem@5 | 135 | - Removed deprecated example file 'examples/pslider.cpp'.<br/> |
philpem@5 | 136 | - Renamed 'cimg::PI' to 'cimg::valuePI' to avoid compilation problems with some C++ compilers that define |
philpem@5 | 137 | the PI macro.<br/> |
philpem@5 | 138 | - Added specular type lightning in routines that draw 3D objects. Parameters 'specular_light' and |
philpem@5 | 139 | 'specular_shine' replace the old 'ambient_light' parameter.<br/> |
philpem@5 | 140 | <br/> |
philpem@5 | 141 | * Bug corrections :<br/> |
philpem@5 | 142 | - Bug corrected in 'CImg<T>::draw_polygon()' : wrong scanlines were drawn with some complex polygons.<br/> |
philpem@5 | 143 | - Bug corrected in 'CImg<T>::convolve()' and 'CImg<T>::correlate()'. Happened when dealing with non square |
philpem@5 | 144 | masks with even dimensions.<br/> |
philpem@5 | 145 | - Bug corrected in 'CImg<T>::save_png()' and 'CImg<T>::load_png()' when dealing with 16 bits |
philpem@5 | 146 | images in little-endian proc.<br/> |
philpem@5 | 147 | - Bug corrected in 'CImg<T>::get_coordinates()' when dealing with 2-channels images.<br/> |
philpem@5 | 148 | - Bug corrected, 2-channels images were not correctly displayed (blue channel was used instead of being 0).<br/> |
philpem@5 | 149 | - And a lot of other small bug corrections...<br/> |
philpem@5 | 150 | </font> |
philpem@5 | 151 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 152 | |
philpem@5 | 153 | <!-- ###################### --> |
philpem@5 | 154 | <font size="-1"> |
philpem@5 | 155 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 156 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 157 | <b>Contribution call : CImg survey</b> |
philpem@5 | 158 | <font size="-2">(2008/01/04, 11:11)</font></td></tr><tr><td><blockquote><font size="-1"> |
philpem@5 | 159 | I've added a CImg Library survey, in order to better know profiles of CImg users and visitors. |
philpem@5 | 160 | If you have 20 seconds of free time, you are welcome to fill it in !<br/><br/> |
philpem@5 | 161 | <b><font size="4"> |
philpem@5 | 162 | <script language="javascript" type="text/javascript"> |
philpem@5 | 163 | var PDF_surveyID = 'BE413A91D86E8CEF'; |
philpem@5 | 164 | var PDF_openText = 'Fill CImg Library survey'; |
philpem@5 | 165 | </script> |
philpem@5 | 166 | <script type="text/javascript" language="javascript" src="http://www.polldaddy.com/s.js"></script> |
philpem@5 | 167 | <noscript><a href="http://www.polldaddy.com/s/BE413A91D86E8CEF/">Fill CImg Library survey</a></noscript></font></b>. |
philpem@5 | 168 | </blockquote></td></tr></table></font><br/> |
philpem@5 | 169 | |
philpem@5 | 170 | <!-- ###################### --> |
philpem@5 | 171 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 172 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 173 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 174 | <b>CImg 1.2.6 Released</b> |
philpem@5 | 175 | <font size="-2">(2008/01/04, 11:11)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 176 | The CImg 1.2.6 package has been released. This is a small improvement but has nice small new things in it.<br/><br/> |
philpem@5 | 177 | <font color="#D00000"> |
philpem@5 | 178 | *-----------------------------<br/> |
philpem@5 | 179 | *-----------------------------<br/> |
philpem@5 | 180 | * Changes from 1.2.5 to 1.2.6<br/> |
philpem@5 | 181 | *-----------------------------<br/> |
philpem@5 | 182 | *-----------------------------<br/> |
philpem@5 | 183 | <br/> |
philpem@5 | 184 | * New features :<br/> |
philpem@5 | 185 | - Added functions 'CImg<T>::fillV(), CImg<T>::fillZV() and CImg<T>::fillYZV()' allowing to set image values |
philpem@5 | 186 | at a specified pixel and along specified axes.<br/> |
philpem@5 | 187 | - Added variant of 'CImg<T>::get_dijkstra()' allowing to use any function/class for definition of weights.<br/> |
philpem@5 | 188 | - Added new interpolation technique (moving average) in 'CImg<T>::resize()' allows very precise image resizing |
philpem@5 | 189 | (Thanks to François Lauze who provided me with some of its code).<br/> |
philpem@5 | 190 | - Added lot of new and useful neighborhood loop macros. |
philpem@5 | 191 | A new executable 'examples/generate_loop_macros.cpp' allows to generate |
philpem@5 | 192 | 2D loops for arbitrary neighborhood size. A new plugin 'plugins/loop_macros.h' has been created, containing |
philpem@5 | 193 | all loops NxN (until N=32) and NxNxN (until N=8).<br/> |
philpem@5 | 194 | - Added separate component and YCbCr color base processing in options of 'examples/greycstoration.cpp'<br/> |
philpem@5 | 195 | - Added macros 'cimg_argument?()' allowing to retrieve command lines that are not options (not beginning with a '-').<br/> |
philpem@5 | 196 | <br/> |
philpem@5 | 197 | * Optimizations / Modifications :<br/> |
philpem@5 | 198 | - Macros with neighborhood loops have been extended and simplified. Some of the previous ones have been deleted, |
philpem@5 | 199 | others have appeared. Basically, no functionnalities have been removed.<br/> |
philpem@5 | 200 | - Macro 'cimg_version' is now 126 instead of 1.26, allowing easy comparison with integer values.<br/> |
philpem@5 | 201 | - Changed traits name in cimg:: for more coherence.<br/> |
philpem@5 | 202 | <br/> |
philpem@5 | 203 | * Bug corrections :<br/> |
philpem@5 | 204 | - Corrected function 'CImg<T>::cubic_pix[1,2]d()'.<br/> |
philpem@5 | 205 | - Corrected bug in 'CImg<T>::blur_median()'.<br/> |
philpem@5 | 206 | - Corrected bug with temporary random filenames when using multi-threading.<br/> |
philpem@5 | 207 | - Corrected small bug in 'CImg<T>::draw_point()'.<br/> |
philpem@5 | 208 | - Corrected name 'CImg<T>::dijkstra()' instead of 'CImg<T>::djikstra()'.<br/> |
philpem@5 | 209 | - Corrected compilation bug in some plug-ins.<br/> |
philpem@5 | 210 | - And other small bug corrections...<br/> |
philpem@5 | 211 | </font> |
philpem@5 | 212 | |
philpem@5 | 213 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 214 | |
philpem@5 | 215 | <!-- ###################### --> |
philpem@5 | 216 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 217 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 218 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 219 | <b>CImg 1.2.5 Released</b> |
philpem@5 | 220 | <font size="-2">(2007/11/26, 15:08)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 221 | The CImg 1.2.5 package has been released. <br/><br/> |
philpem@5 | 222 | <font color="#D00000"> |
philpem@5 | 223 | *-----------------------------<br/> |
philpem@5 | 224 | *-----------------------------<br/> |
philpem@5 | 225 | * Changes from 1.2.4 to 1.2.5<br/> |
philpem@5 | 226 | *-----------------------------<br/> |
philpem@5 | 227 | *-----------------------------<br/> |
philpem@5 | 228 | <br/> |
philpem@5 | 229 | * New features :<br/> |
philpem@5 | 230 | - Added function 'CImg<T>::label_regions()' that can label deconnected regions.<br/> |
philpem@5 | 231 | - Added overload of function 'CImg<T>::draw_point()' that is able to draw point clouds.<br/> |
philpem@5 | 232 | - Added function 'CImg<T>::get_blur_bilateral()' that implements bilateral filtering.<br/> |
philpem@5 | 233 | - Added functions 'CImg<T>::get_RGBtoBayer()' and 'CImg<T>::get_BayertoRGB()' that converts between |
philpem@5 | 234 | RGB and Bayer-coded representation of an image.<br/> |
philpem@5 | 235 | - Added functions CImg[List]<T>::min(), max(), mean(), variance(), get_stats(), and contains() |
philpem@5 | 236 | to deal easily with image statistics (class CImgStats is now obsolete and has been moved to |
philpem@5 | 237 | plugin 'plugins/deprecated.h').<br/> |
philpem@5 | 238 | - Added versions of 'CImg[List]<T>::get_*()' as external functions, |
philpem@5 | 239 | so writting 'res=cos(img)*5;' is valid.<br/> |
philpem@5 | 240 | - Added postfix versions 'CImg[List]<T>::operator++(int)' and 'CImg[List]<T>::operator--(int)'.<br/> |
philpem@5 | 241 | <br/> |
philpem@5 | 242 | * Optimizations / Modifications :<br/> |
philpem@5 | 243 | - Recoded 'CImg<T>::save_magick()' to improve performances when saving images using Magick++ API.<br/> |
philpem@5 | 244 | - Recoded 'CImg<T>::draw_fill()' to avoid crashes on large (volumetric) images due to stack overflow.<br/> |
philpem@5 | 245 | Also added parameters to choose between 4 or 8 connexity for 2D images.<br/> |
philpem@5 | 246 | - Added simple point representation in 'CImg<T>::draw_graph()'.<br/> |
philpem@5 | 247 | -> Note that the gtype variable values have been redefined as well !!! <-<br/> |
philpem@5 | 248 | - Added parameter 'CImg<T>::quantize()' that allows possible value renormalization.<br/> |
philpem@5 | 249 | - Improved documentation.<br/> |
philpem@5 | 250 | - Drawing functions accept now templated color pointer, as well as templated image containing color data.<br/> |
philpem@5 | 251 | - Recoded Deriche filter. More fast and precise, some cases were buggy.<br/> |
philpem@5 | 252 | - Removed class CImgStats (moved to plugin 'plugins/deprecated.h').<br/> |
philpem@5 | 253 | - Removed unuseful image copies in some functions.<br/> |
philpem@5 | 254 | - Cleaning the code.<br/> |
philpem@5 | 255 | <br/> |
philpem@5 | 256 | * Bug corrections :<br/> |
philpem@5 | 257 | - Corrected bug in 'CImg<T>::pseudoinverse()' concerning pseudo-inversion of non-inversible matrices.<br/> |
philpem@5 | 258 | - Corrected return value in 'CImg<T>::get_RGBtoHSV()'.<br/> |
philpem@5 | 259 | - Corrected value range bug in 'CImg<T>::quantize()'.<br/> |
philpem@5 | 260 | - And other small bug corrections...<br/> |
philpem@5 | 261 | </font> |
philpem@5 | 262 | |
philpem@5 | 263 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 264 | |
philpem@5 | 265 | |
philpem@5 | 266 | <!-- ###################### --> |
philpem@5 | 267 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 268 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 269 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 270 | <b>CImg 1.2.4 Released</b> |
philpem@5 | 271 | <font size="-2">(2007/09/26, 12:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 272 | The CImg 1.2.4 package has been released. This is a minor release but with interesting stuffs anyway.<br/><br/> |
philpem@5 | 273 | <font color="#D00000"> |
philpem@5 | 274 | *-----------------------------<br/> |
philpem@5 | 275 | *-----------------------------<br/> |
philpem@5 | 276 | * Changes from 1.2.3 to 1.2.4<br/> |
philpem@5 | 277 | *-----------------------------<br/> |
philpem@5 | 278 | *-----------------------------<br/> |
philpem@5 | 279 | <br/> |
philpem@5 | 280 | * New features :<br/> |
philpem@5 | 281 | - Added macro 'cimg_for_lineXY(x,y,x0,y0,x1,y1)' that loops over an image segment (x0,y0)-(x1,y1).<br/> |
philpem@5 | 282 | - Added function 'CImg<T>::draw_polygon()' that draws a filled polygon of any shape in the instance image.<br/> |
philpem@5 | 283 | - Added macros 'cimg_load_plugin', 'cimg_save_plugin', 'cimglist_load_plugin' and 'cimglist_save_plugin' |
philpem@5 | 284 | allowing to easily add file support for your own data format.<br/> |
philpem@5 | 285 | - Added plugin 'plugins/add_fileformat.h' to show how to use these new macros to register a new |
philpem@5 | 286 | image format in CImg.<br/> |
philpem@5 | 287 | - Added version of 'CImg[List]<T>::{load,save}_cimg()' that is able to read/write only sub-images of |
philpem@5 | 288 | data stored in a (big) .cimg file.<br/> |
philpem@5 | 289 | - Added an online chat on the CImg website, so that users can interact freely.<br/> |
philpem@5 | 290 | <br/> |
philpem@5 | 291 | * Optimizations / Modifications :<br/> |
philpem@5 | 292 | - Added functions 'CImg[List]<T>::save_empty_cimg()' that can be used to work with very large images.<br/> |
philpem@5 | 293 | You can now create first an empty (big) image, then load/save sub-images into this big .cimg file, |
philpem@5 | 294 | without needing much memory.<br/> |
philpem@5 | 295 | - Slightly modified the header of .cimg files, so little/big endian info is stored.<br/> |
philpem@5 | 296 | - Reorganized some 'CImg[List]<T>::load_*()' functions, trying to avoid unnecessary memory usage.<br/> |
philpem@5 | 297 | - Recoded versions of CImg<T>::draw_triangle() that now use the Bresenham's algorithm for interpolation |
philpem@5 | 298 | (more precise, while using only integer calculus).<br/> |
philpem@5 | 299 | - Added versions of 'CImg<T>::draw_triangle()' and 'CImg<T>::draw_line()' that are able to map textures |
philpem@5 | 300 | while correctly handling the perspective correction, so that 3D mapped triangles look correct now.<br/> |
philpem@5 | 301 | <br/> |
philpem@5 | 302 | * Bug corrections :<br/> |
philpem@5 | 303 | - Corrected a small bug in get_coordinates() : channels of hyperspectral images with (dim>3) where |
philpem@5 | 304 | subsampled instead of cropped for image visualization.<br/> |
philpem@5 | 305 | - And many small bug corrections...<br/> |
philpem@5 | 306 | </font> |
philpem@5 | 307 | |
philpem@5 | 308 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 309 | |
philpem@5 | 310 | <!-- ###################### --> |
philpem@5 | 311 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 312 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 313 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 314 | <b>Online CImg Library Chat !</b> |
philpem@5 | 315 | <font size="-2">(2007/09/26, 11:12am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 316 | I've installed a pretty cool php-based online chat room dedicated to CImg users. |
philpem@5 | 317 | This is a convenient way to ask for quick informations if needed, or discuss about the features |
philpem@5 | 318 | you would like to see in future versions of CImg. |
philpem@5 | 319 | There are not many people right now, but wait and see... |
philpem@5 | 320 | You can click on the 'Online chat' section of the menu above to access the chat. |
philpem@5 | 321 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 322 | |
philpem@5 | 323 | <!-- ###################### --> |
philpem@5 | 324 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 325 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 326 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 327 | <b>CImg 1.2.3 Released</b> |
philpem@5 | 328 | <font size="-2">(2007/08/24, 03:00pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 329 | The CImg 1.2.3 package has been released. This is a quite important release, with some library modifications. |
philpem@5 | 330 | I guess upgrading to this version won't be a big problem, but this will be perhaps not as direct as latest releases. |
philpem@5 | 331 | The CHANGELOG is quite bigger than usual. A lot of work has been done during summer holidays, and I'm quite happy with |
philpem@5 | 332 | the modifications.<br/><br/> |
philpem@5 | 333 | <font color="#D00000"> |
philpem@5 | 334 | *-----------------------------<br/> |
philpem@5 | 335 | *-----------------------------<br/> |
philpem@5 | 336 | * Changes from 1.2.2 to 1.2.3<br/> |
philpem@5 | 337 | *-----------------------------<br/> |
philpem@5 | 338 | *-----------------------------<br/> |
philpem@5 | 339 | <br/> |
philpem@5 | 340 | * New features :<br/> |
philpem@5 | 341 | - Added file 'example/tron.cpp', implementing a very simple version of the |
philpem@5 | 342 | famous 'Tron' game (2 players).<br/> |
philpem@5 | 343 | - Added constructor that create a CImg<T> from the content of a CImgDisplay window.<br/> |
philpem@5 | 344 | - Added support of the 'Board' library in plugin 'plugins/toolbox3d.h', allowing |
philpem@5 | 345 | the saving of 3D objects snapshots in SVG, EPS or FIG vector-graphics formats.<br/> |
philpem@5 | 346 | - Added function 'CImgList<T>::[get]_split()' that can split all image of an |
philpem@5 | 347 | an image list into a specified axis.<br/> |
philpem@5 | 348 | - Added sphere primitive in 'CImg<T>::draw_object3d()'.<br/> |
philpem@5 | 349 | - Added function 'CImg<T>::ellipsoid()' in 'plugins/toolbox3d.h'.<br/> |
philpem@5 | 350 | - Added useful new constructors 'CImg<T>()' and 'CImgList<T>()' with variable |
philpem@5 | 351 | numbers of parameters that can define images or image lists initialized with |
philpem@5 | 352 | user-specified values. Example :<br/> |
philpem@5 | 353 | CImg<float> img(3,2,1,1, 1,2,3, 4,5,6); defines image [ 1,2,3; 4,5,6 ].<br/> |
philpem@5 | 354 | CImgList<unsigned char> list(3,1,3,1,1, 1,0,0, 0,1,0, 0,0,1); defines |
philpem@5 | 355 | list of three vectors { [1;0;0], [0;1;0], [0;0;1] }.<br/> |
philpem@5 | 356 | - Added poly-bezier curve drawing, with 'CImg<T>::draw_spline()' overload.<br/> |
philpem@5 | 357 | - Added file 'examples/jawbreaker.cpp', implementing a very funny games featuring |
philpem@5 | 358 | small colored balls.<br/> |
philpem@5 | 359 | - Added demo '3D Reflection' in 'examples/CImg_test.cpp' showing some tricky uses |
philpem@5 | 360 | with the 3D capabilities of CImg.<br/> |
philpem@5 | 361 | - Added 'CImg<T>::draw_spline()' for drawing 2D cubic Bezier curves.<br/> |
philpem@5 | 362 | - Added plugin 'plugins/jpeg_buffer.h', allowing to read/write directly image data |
philpem@5 | 363 | from/to jpeg-coded memory buffers (Many thanks to Paolo Prete who made it possible !).<br/> |
philpem@5 | 364 | - Added optional support of the LAPACK library for matrix computation.<br/> |
philpem@5 | 365 | Define macro 'cimg_use_lapack' and link your code with LAPACK to enable it |
philpem@5 | 366 | (LAPACK routines are slightly faster routines than native CImg ones).<br/> |
philpem@5 | 367 | - Added function 'CImg<T>::get_constrast_LUT8()' function which returns a 256 colors |
philpem@5 | 368 | palette that has nice properties of being well contrasted when color indices are |
philpem@5 | 369 | close to eachothers.<br/> |
philpem@5 | 370 | - Added function 'CImg<T>::get_rainbow_LUT8()' that returns a rainbow-type palette.<br/> |
philpem@5 | 371 | - Added shortcuts CTRL+PAGE[UP,DOWN] in 'CImg<T>::display_object3d()' to brighten or |
philpem@5 | 372 | darken the 3D object.<br/> |
philpem@5 | 373 | <br/> |
philpem@5 | 374 | * Optimizations / Modifications :<br/> |
philpem@5 | 375 | - In 'CImg<T>::HSVtoRGB()' and 'CImg<T>::RGBtoHSV()', the H components is now expressed in degree.<br/> |
philpem@5 | 376 | - Improved multi-key testing with CImgDisplay.<br/> |
philpem@5 | 377 | - Added and modified some 'operator<<()' and 'operator>>()' in 'CImg<T>' and 'CImgList<T>'.<br/> |
philpem@5 | 378 | - Renamed 'plugins/primitives3d.h' to 'plugins/toolbox3d.h', and added a new example |
philpem@5 | 379 | 'examples/toolbox3d.cpp' that shows how to use it.<br/> |
philpem@5 | 380 | - Renamed 'plugins/alias.h' to 'plugins/deprecated.h'.<br/> |
philpem@5 | 381 | - Moved function 'CImg<T>::resize_object3d()' to 'plugins/toolbox3d.h'.<br/> |
philpem@5 | 382 | - Simplified 'CImgList<T>::insert()' procedures, and removed functions 'CImgList<T>::insert_shared()'.<br/> |
philpem@5 | 383 | - Added functions parameters for almost all drawing functions, allowing the correct use of |
philpem@5 | 384 | patterns in line drawing (beware, some functions signatures have been slightly modified).<br/> |
philpem@5 | 385 | - Renamed 'CImg<T>::feature_selection()' as 'CImg<T>::get_coordinates()' |
philpem@5 | 386 | (for better coherence with overall function names). Include 'plugins/deprecated.h' for backward |
philpem@5 | 387 | compatibility.<br/> |
philpem@5 | 388 | - Optimized function 'CImg<T>::draw_line()'.<br/> |
philpem@5 | 389 | - Recoded function 'CImg<T>::draw_circle()', uses now the more precise Bresenham's circle |
philpem@5 | 390 | algorithm.<br/> |
philpem@5 | 391 | - Improved function 'CImg<T>::sphere()', in plugin 'toolbox3d.h', reducing drastically |
philpem@5 | 392 | the number of created points in the 3D mesh.<br/> |
philpem@5 | 393 | <br/> |
philpem@5 | 394 | * Bug corrections :<br/> |
philpem@5 | 395 | - Corrected some small bugs in CImg.h to allow the compilation with the Intel C++ Compiler (icc & icl).<br/> |
philpem@5 | 396 | - Corrected bug in copy constructor of CImgList<> that didn't make shared copy of images.<br/> |
philpem@5 | 397 | - Fixed bug in 'CImg<T>::symmetric_eigen()' : some negative eigenvalues where miscalculated when |
philpem@5 | 398 | their absolute values was also an eigenvalue of the considered matrix.<br/> |
philpem@5 | 399 | - And many small bug corrections...<br/> |
philpem@5 | 400 | </font> |
philpem@5 | 401 | |
philpem@5 | 402 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 403 | |
philpem@5 | 404 | |
philpem@5 | 405 | <!-- ###################### --> |
philpem@5 | 406 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 407 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 408 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 409 | <b>Sixth postcard received !</b> |
philpem@5 | 410 | <font size="-2">(2007/08/17, 02:15pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 411 | Today, I received another postcard from Taiwan ! That is a great pleasure to see that CImg is used |
philpem@5 | 412 | by some people in Asia. So, thanks to Pr. Kuo-Feng Hwang for your postcard, I added it to the 'growing' postcard list |
philpem@5 | 413 | in the main CImg web page :) |
philpem@5 | 414 | <br/><br/> |
philpem@5 | 415 | <img src="img/postcard6.jpg"></img> |
philpem@5 | 416 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 417 | |
philpem@5 | 418 | |
philpem@5 | 419 | <!-- ###################### --> |
philpem@5 | 420 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 421 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 422 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 423 | <b>New demo '3D Reflection' in CImg 1.2.3</b> |
philpem@5 | 424 | <font size="-2">(2007/07/24, 10:25pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 425 | During hollidays, I always take time to perform some funny code experiments. This time, |
philpem@5 | 426 | I tried to create a real-time 3D reflection effect. Of course, it uses some tricks to succed in an acceptable speed, |
philpem@5 | 427 | but I like the result, and I've added this example to the 'CImg_demo.cpp' source code. |
philpem@5 | 428 | Here is a screenshot of the resulting effect. |
philpem@5 | 429 | Click on the image to see the video.<br/><br/> |
philpem@5 | 430 | <a href="img/video_reflection.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> |
philpem@5 | 431 | |
philpem@5 | 432 | <img border="0" src="img/ss_reflection.jpg"></img> |
philpem@5 | 433 | |
philpem@5 | 434 | </a> |
philpem@5 | 435 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 436 | |
philpem@5 | 437 | |
philpem@5 | 438 | <!-- ###################### --> |
philpem@5 | 439 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 440 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 441 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 442 | <b>New game 'Jawbreaker' in CImg 1.2.3</b> |
philpem@5 | 443 | <font size="-2">(2007/07/24, 10:25pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 444 | Last night, while playing on the so-called <i>Jawbreaker</i> game in my Pocket PC, I wonder how hard it would be to |
philpem@5 | 445 | do a CImg-based version of this game. That was a good excuse to start programming ! |
philpem@5 | 446 | I think the result is quite cool so I decided to put it in the <i>CImg/examples</i> directory for the |
philpem@5 | 447 | next CImg 1.2.3 release. The source is surprisingly small (about 150 lines of code) and the game is complete. |
philpem@5 | 448 | Here is a screenshot of the result below. |
philpem@5 | 449 | Click on the image to see the video.<br/><br/> |
philpem@5 | 450 | <a href="img/video_jawbreaker.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> |
philpem@5 | 451 | |
philpem@5 | 452 | <img border="0" src="img/ss_jawbreaker.jpg"></img> |
philpem@5 | 453 | |
philpem@5 | 454 | </a> |
philpem@5 | 455 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 456 | |
philpem@5 | 457 | <!-- ###################### --> |
philpem@5 | 458 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 459 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 460 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 461 | <b>Some CImg 1.2.3 envisaged features</b> |
philpem@5 | 462 | <font size="-2">(2007/07/20, 02:32pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 463 | - I decided to (re)enable LAPACK interfacing when doing matrix computations (such as SVD, eigenvalues, system solving). |
philpem@5 | 464 | LAPACK routines are well optimized and this could save time for applications that need it. |
philpem@5 | 465 | Of course, you are not forced to use LAPACK, since native matrix algorithms already exist in CImg, but this |
philpem@5 | 466 | may increase performances in some cases.<br/> |
philpem@5 | 467 | - Also, Thanks to Paolo Prete, a new plugin <i>plugins/jpeg_array.h</i> has been added. This adds useful functions in the CImg class to read and write jpeg-compressed image data directly in memory buffer. Very useful when dealing with jpeg images coming from the network for instance (ip webcam).<br/><br/> |
philpem@5 | 468 | These features are already implemented in the CVS version, so do not hesitate to test them and tell me if everything's going right. |
philpem@5 | 469 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 470 | |
philpem@5 | 471 | <!-- ###################### --> |
philpem@5 | 472 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 473 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 474 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 475 | <b>CImg 1.2.2 Released</b> |
philpem@5 | 476 | <font size="-2">(2007/07/04, 13:27pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 477 | The CImg 1.2.2 package has been released. This is a minor release, with a very small CHANGELOG. |
philpem@5 | 478 | Basically, I want to put a updated version before the |
philpem@5 | 479 | <a href="http://www.rmll.info/">RMLL'07</a> |
philpem@5 | 480 | where I will present the CImg Library.<br/><br/> |
philpem@5 | 481 | <font color="#D00000"> |
philpem@5 | 482 | *-----------------------------<br/> |
philpem@5 | 483 | *-----------------------------<br/> |
philpem@5 | 484 | * Changes from 1.2.1 to 1.2.2<br/> |
philpem@5 | 485 | *-----------------------------<br/> |
philpem@5 | 486 | *-----------------------------<br/> |
philpem@5 | 487 | <br/> |
philpem@5 | 488 | * New features :<br/> |
philpem@5 | 489 | - Added 'CImg<T>::distance_function()' that can compute distance function to the 0-isophote.<br/> |
philpem@5 | 490 | - Added curve editor example in 'examples/curve_editor.cpp'.<br/> |
philpem@5 | 491 | <br/> |
philpem@5 | 492 | * Bug corrections :<br/> |
philpem@5 | 493 | - Corrected small bug when trying to found pathname under Windows.<br/> |
philpem@5 | 494 | - Corrected bug when using XSHM extension on Mac OS X.<br/> |
philpem@5 | 495 | - Corrected/Improved platforms detection by testing the right predefined BSD macros + extra architectures |
philpem@5 | 496 | (Thanks to Marc Espie).<br/> |
philpem@5 | 497 | - And many small bug corrections...<br/> |
philpem@5 | 498 | </font> |
philpem@5 | 499 | |
philpem@5 | 500 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 501 | |
philpem@5 | 502 | |
philpem@5 | 503 | <!-- ###################### --> |
philpem@5 | 504 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 505 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 506 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 507 | <b>CImg 1.2.2 on the way</b> |
philpem@5 | 508 | <font size="-2">(2007/07/02, 19:34pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 509 | CImg 1.2.2 has been started few days ago. I'm happy to say I've corrected lot of examples such that they perfectly compile now on Visual C++ 6.0. I've also tested it on the new 4.2.0 release of g++, and everything's fine. |
philpem@5 | 510 | I find CImg is becoming quite stable and I've less and less debugging from releases to releases, that's good news. |
philpem@5 | 511 | I've posted a version CImg-1.2.2beta of the archive in the sourceforge repository, you can already |
philpem@5 | 512 | <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">download it (package "in progress")</a> |
philpem@5 | 513 | and test it if you want. Any feedback is appreciated. |
philpem@5 | 514 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 515 | |
philpem@5 | 516 | <!-- ###################### --> |
philpem@5 | 517 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 518 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 519 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 520 | <b>New example file : curve_editor.cpp</b> |
philpem@5 | 521 | <font size="-2">(2007/06/27, 11:11am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 522 | I worked on a small 2D curve editor for a collegue and his PhD student at the lab, and I found it interesting enough to share it with CImg users, so here is a new file <i>examples/curve_editor.cpp</i> in the CImg tree (still in CVS for the moment, but will be available in the next stable release). |
philpem@5 | 523 | Basically, you can add/move/remove control points and a piecewise-polynomial curve passing through these points is computed. It's a quite small source (300 code lines with header and comments). |
philpem@5 | 524 | You can save control points, curve points or even the corresponding distance map. Maybe useful, I hope. |
philpem@5 | 525 | Here's a screenshot below. <a href="img/video_curveeditor.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;">Click here to see the video</a> |
philpem@5 | 526 | <br/><br/> |
philpem@5 | 527 | <img src="img/curve_editor.jpg"></img> |
philpem@5 | 528 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 529 | |
philpem@5 | 530 | |
philpem@5 | 531 | <!-- ###################### --> |
philpem@5 | 532 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 533 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 534 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 535 | <b>Fifth postcard received !</b> |
philpem@5 | 536 | <font size="-2">(2007/06/24, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 537 | I received a postcard today from Cambridge/UK, as well as a donation for CImg, by the same person. |
philpem@5 | 538 | Thank you so much Alexandre ! |
philpem@5 | 539 | This is very nice to see that some people are enjoying using CImg around the world, |
philpem@5 | 540 | and do not write only for bug reports. |
philpem@5 | 541 | All these postcards are displayed on the wall just behind my desk. Do not hesitate to write me, there are |
philpem@5 | 542 | still a lot of free space :) |
philpem@5 | 543 | <br/><br/> |
philpem@5 | 544 | <img src="img/postcard5.jpg"></img> |
philpem@5 | 545 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 546 | |
philpem@5 | 547 | <!-- ###################### --> |
philpem@5 | 548 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 549 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 550 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 551 | <b>CImg 1.2.1 Released</b> |
philpem@5 | 552 | <font size="-2">(2007/06/12, 15:03pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 553 | The CImg 1.2.1 package has been released. Here is the CHANGELOG :<br/><br/> |
philpem@5 | 554 | <font color="#D00000"> |
philpem@5 | 555 | *-----------------------------<br/> |
philpem@5 | 556 | *-----------------------------<br/> |
philpem@5 | 557 | * Changes from 1.2.0 to 1.2.1<br/> |
philpem@5 | 558 | *-----------------------------<br/> |
philpem@5 | 559 | *-----------------------------<br/> |
philpem@5 | 560 | <br/> |
philpem@5 | 561 | * New features :<br/> |
philpem@5 | 562 | - Added macro 'cimg_for_spiralXY', allowing to loop over an image using a spiral-shaped trajectory.<br/> |
philpem@5 | 563 | - Added shortcut 'CTRL+O' to save object as .off file in 'CImg<T>::display_object3d()'.<br/> |
philpem@5 | 564 | - Added operator bool() in CImg, CImgList, CImgStats, CImgDisplay to get |
philpem@5 | 565 | more concise code when testing if an object is empty or not.<br/> |
philpem@5 | 566 | - Added empty state for CImgDisplay, can be tested with 'CImgDisplay::is_empty()'.<br/> |
philpem@5 | 567 | - Added '.off' file support in 'inrcast'.<br/> |
philpem@5 | 568 | <br/> |
philpem@5 | 569 | * Optimizations / Modifications :<br/> |
philpem@5 | 570 | - Removed all the obsolete #define to ensure compatibility with really older versions of CImg. |
philpem@5 | 571 | You can now include the file 'plugins/alias.h' to get these #define back.<br/> |
philpem@5 | 572 | - Added functionalities and debugged 'CImg<T>::save_off()' and 'CImg<T>::load_off()'.<br/> |
philpem@5 | 573 | <br/> |
philpem@5 | 574 | * Bug corrections :<br/> |
philpem@5 | 575 | - Corrected illumination bug in 'CImg<T>::draw_object3d()'.<br/> |
philpem@5 | 576 | - Corrected bug in 'CImg<T>::crop()' family functions.<br/> |
philpem@5 | 577 | - Corrected small bugs in 'CImgList<T>' (insertion functions).<br/> |
philpem@5 | 578 | - Corrected 'CImg<T>::load_tiff()' function.<br/> |
philpem@5 | 579 | - And many small bug corrections...<br/> |
philpem@5 | 580 | </font> |
philpem@5 | 581 | |
philpem@5 | 582 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 583 | |
philpem@5 | 584 | <!-- ###################### --> |
philpem@5 | 585 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 586 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 587 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 588 | <b>Fourth postcard received !</b> |
philpem@5 | 589 | <font size="-2">(2007/06/01, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 590 | I received a postcard today from Brighton/UK. Thank you Hugo for your postcard ! |
philpem@5 | 591 | <br/><br/> |
philpem@5 | 592 | <img src="img/postcard4.jpg"></img> |
philpem@5 | 593 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 594 | |
philpem@5 | 595 | <!-- ###################### --> |
philpem@5 | 596 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 597 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 598 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 599 | <b>CImg 1.2.0 Released</b> |
philpem@5 | 600 | <font size="-2">(2007/04/18, 15:36pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 601 | The CImg 1.2.0 package has been released. Here is the CHANGELOG :<br/><br/> |
philpem@5 | 602 | <font color="#D00000"> |
philpem@5 | 603 | *-----------------------------<br/> |
philpem@5 | 604 | *-----------------------------<br/> |
philpem@5 | 605 | * Changes from 1.1.9 to 1.2.0<br/> |
philpem@5 | 606 | *-----------------------------<br/> |
philpem@5 | 607 | *-----------------------------<br/> |
philpem@5 | 608 | <br/> |
philpem@5 | 609 | * New features :<br/> |
philpem@5 | 610 | - Added function 'CImg<T>::draw_grid()' that draws a grid on the instance image<br/> |
philpem@5 | 611 | (useful when combined with CImg<T>::draw_axis and CImg<T>::draw_graph).<br/> |
philpem@5 | 612 | - Added multi-threading support in GREYCstoration plugin and command line version.<br/> |
philpem@5 | 613 | - Added support for GraphicsMagick conversion tools (http://www.graphicsmagick.org).<br/> |
philpem@5 | 614 | - Added plugin 'integral_line.h' that define functions to track integral lines in images.<br/> |
philpem@5 | 615 | - Added CTRL+key combinations in 'CImg<T>::display_object3d' and 'CImg<T>::feature_selection()' :<br/> |
philpem@5 | 616 | - CTRL+S : Save snapshot.<br/> |
philpem@5 | 617 | - CTRL+D : Double window resolution.<br/> |
philpem@5 | 618 | - CTRL+C : Divide window resolution.<br/> |
philpem@5 | 619 | - CTRL+F : Fullscreen mode.<br/> |
philpem@5 | 620 | - Added new normalization mode=3, now set by default when using CImgDisplay. Try to adapt<br/> |
philpem@5 | 621 | the display normalization to the image type.<br/> |
philpem@5 | 622 | - Added new example 'edge_explorer.cpp' (thanks to Orges Leka).<br/> |
philpem@5 | 623 | - Added new example 'greycstoration4gimp.cpp' (which is a GREYCstoration plugin for the Gimp, thanks<br/> |
philpem@5 | 624 | to Grzegorz Szwoch)<br/> |
philpem@5 | 625 | - Added functions 'CImg<T>::[get]_round()' that round values of an image.<br/> |
philpem@5 | 626 | - Added function 'CImg<T>::draw_line()' able to draw joined set of segments.<br/> |
philpem@5 | 627 | - Added interpolation_type=-1 for 'CImg<T>::resize()' corresponding to raw memory resizing, without |
philpem@5 | 628 | interpolation.<br/> |
philpem@5 | 629 | - Added function 'CImg<T>::permute_axes()' that can be used to swap order of image axes |
philpem@5 | 630 | (useful for converting ...RRRRRRGGGGGBBBBB... to ...RGBRGBRGBRGB....)<br/> |
philpem@5 | 631 | - Added support for NIFTI files (extension '.nii') added in 'CImg<T>::load_analyze()'.<br/> |
philpem@5 | 632 | - Added function 'CImg<T>::[get_]displacement_field()' that can estimate displacement field between two images.<br/> |
philpem@5 | 633 | - Added default constructor for the 'CImgDisplay' class, which creates a window initially in the 'closed' state.<br/> |
philpem@5 | 634 | - Added directory 'compilation/unix_debian_package' for easy construction of .deb package for CImg.<br/> |
philpem@5 | 635 | - Added new search parth to find 'medcon' on Windows.<br/> |
philpem@5 | 636 | <br/> |
philpem@5 | 637 | * Optimizations / Modifications :<br/> |
philpem@5 | 638 | - Renamed all '*_convert' functions to '*_imagemagick'.<br/> |
philpem@5 | 639 | - Fonction CImg<T>::draw_object3d() has been slightly optimized (light computation for |
philpem@5 | 640 | outside primitives is not done anymore).<br/> |
philpem@5 | 641 | - Small changes in cimg:: traits.<br/> |
philpem@5 | 642 | - Removed 'precision' arguments in 'CImg<T>::draw_axis()'.<br/> |
philpem@5 | 643 | - The use of non in-place arithmetical operators is now possible in plug-ins.<br/> |
philpem@5 | 644 | <br/> |
philpem@5 | 645 | * Bug corrections :<br/> |
philpem@5 | 646 | - Versions of 'CImg<T>::load_tiff()' and 'CImg<T>::save_tiff()' that use libtiff has been |
philpem@5 | 647 | debugged and improved.<br/> |
philpem@5 | 648 | - fread() and fwrite() has been recoded to handle the Windows file size limit of 64Mb over network |
philpem@5 | 649 | (this is a Windows bug !).<br/> |
philpem@5 | 650 | - GREYCstoration plugin has been modified to better deal with 16 and 32bits images.<br/> |
philpem@5 | 651 | - And many other small bug corrections....<br/> |
philpem@5 | 652 | </font> |
philpem@5 | 653 | |
philpem@5 | 654 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 655 | |
philpem@5 | 656 | <!-- ###################### --> |
philpem@5 | 657 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 658 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 659 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 660 | <b>New way of installing CImg for Debian-based Unix distributions</b> |
philpem@5 | 661 | <font size="-2">(2007/03/26, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 662 | Many thanks to François-Xavier Dupé, PhD candidate in the IMAGE team of the GREYC lab : he provided a simple script that can be used to generate a .deb package file from the CImg package. |
philpem@5 | 663 | CImg is now very simple to install on such systems thanks to its .deb package. Very nice ! |
philpem@5 | 664 | <br/> |
philpem@5 | 665 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 666 | |
philpem@5 | 667 | <!-- ###################### --> |
philpem@5 | 668 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 669 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 670 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 671 | <b>Third postcard received !</b> |
philpem@5 | 672 | <font size="-2">(2007/03/26, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 673 | I received a postcard today from Honolulu, telling me that someone is using <i>CImg and GREYCstoration in paradise</i>. |
philpem@5 | 674 | Very nice for starting a Monday morning ! Thank you Mike for your postcard, I really appreciate ! |
philpem@5 | 675 | Surprisingly, the three postcards I received so far all come from sunny places...<br/><br/> |
philpem@5 | 676 | Thank again !<br/> |
philpem@5 | 677 | David.<br/><br/> |
philpem@5 | 678 | <img src="img/postcard3.jpg"></img> |
philpem@5 | 679 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 680 | |
philpem@5 | 681 | <!-- ###################### --> |
philpem@5 | 682 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 683 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 684 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 685 | <b>CImg 1.1.9 Released</b> |
philpem@5 | 686 | <font size="-2">(2007/03/05, 19:12pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 687 | The CImg 1.1.9 package has been released. This is a minor release that should be transparent for the CImg users. |
philpem@5 | 688 | You can go to the <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Download page</a> to get the latest 1.1.9 package.<br/><br/> |
philpem@5 | 689 | Here is the CHANGELOG :<br/> |
philpem@5 | 690 | <font color="#D00000"> |
philpem@5 | 691 | *-----------------------------<br/> |
philpem@5 | 692 | *-----------------------------<br/> |
philpem@5 | 693 | * Changes from 1.1.8 to 1.1.9<br/> |
philpem@5 | 694 | *-----------------------------<br/> |
philpem@5 | 695 | *-----------------------------<br/> |
philpem@5 | 696 | <br/> |
philpem@5 | 697 | * New features :<br/> |
philpem@5 | 698 | - Added functions 'CImg<T>::sharpen()' and 'CImg<T>::get_sharpen()' that can enhance contrast in images, |
philpem@5 | 699 | using nonlinear 2D/3D multi-valued shock filters.<br/> |
philpem@5 | 700 | - Added function 'CImg<T>::contains()' and 'CImgList<T>::contains()' that can test if a pixel is |
philpem@5 | 701 | present in an image.<br/> |
philpem@5 | 702 | - Added new demo 'CImg-breakout' in 'examples/CImg_demo.cpp' (Arkanoid-style game in 64 lines of code!).<br/> |
philpem@5 | 703 | - Functions 'CImgDisplay::hide_mouse()' and 'CImgDisplay::show_mouse()' have been added, allowing to |
philpem@5 | 704 | hide/show the cursor when it is over a display window.<br/> |
philpem@5 | 705 | - Functions 'CImg<T>::[get_]structure_tensorXY[Z]()' has been added, allowing to compute the 2D or |
philpem@5 | 706 | 3D structure tensor field from an image.<br/> |
philpem@5 | 707 | - Function 'CImgDisplay::set_mouse()' is now working on Windows.<br/> |
philpem@5 | 708 | - Added load/save functions to deal directly with std::FILE structures.<br/> |
philpem@5 | 709 | - Added members 'CImgDisplay::keys[256]' and 'CImgDisplay::buttons[256]' allowing to get the latest 256 keys |
philpem@5 | 710 | or mouse buttons modifications done on the display window.<br/> |
philpem@5 | 711 | - Added function 'CImgDisplay::is_typed()' to test if a certain combination of key has been typed |
philpem@5 | 712 | on the display window.<br/> |
philpem@5 | 713 | - Added keyboard shortcut 'CTRL+S' in 'CImg<T>::display_object3d()' to be able to save snapshot of current 3d view.<br/> |
philpem@5 | 714 | <br/> |
philpem@5 | 715 | * Optimizations / Modifications :<br/> |
philpem@5 | 716 | - Recoded the greycstoration plug-in as the file 'plugins/greycstoration.h'. The command line version |
philpem@5 | 717 | 'examples/greycstoration.cpp' has been greatly improved, including tiled-mode and less memory consumption.<br/> |
philpem@5 | 718 | The use of GREYCstoration is now more easy, the code is more factorized.<br/> |
philpem@5 | 719 | <br/> |
philpem@5 | 720 | * Bug corrections :<br/> |
philpem@5 | 721 | - Plugin 'plugins/cimgmatlab.h' has been corrected.<br/> |
philpem@5 | 722 | </font> |
philpem@5 | 723 | |
philpem@5 | 724 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 725 | |
philpem@5 | 726 | <!-- ###################### --> |
philpem@5 | 727 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 728 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 729 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 730 | <b>CImg 1.1.8 Released</b> |
philpem@5 | 731 | <font size="-2">(2007/01/26, 11:06am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 732 | The CImg 1.1.8 package has been released. I guess this is a more bug-free version than the 1.1.7. |
philpem@5 | 733 | You can go to the <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Download page</a> to get the latest 1.1.8 package.<br/><br/> |
philpem@5 | 734 | Here is the CHANGELOG :<br/> |
philpem@5 | 735 | <font color="#D00000"> |
philpem@5 | 736 | *-----------------------------<br/> |
philpem@5 | 737 | *-----------------------------<br/> |
philpem@5 | 738 | * Changes from 1.1.7 to 1.1.8<br/> |
philpem@5 | 739 | *-----------------------------<br/> |
philpem@5 | 740 | *-----------------------------<br/> |
philpem@5 | 741 | <br/> |
philpem@5 | 742 | * New features :<br/> |
philpem@5 | 743 | - Added conditional use of the FFTW3 library (http://www.fftw.org) allowing more flexibility and speed |
philpem@5 | 744 | on DFT computation, when used.<br/> |
philpem@5 | 745 | - Added new macro 'cimg_help()', displays arbitrary user-defined messages when program is invoked |
philpem@5 | 746 | with the option '-h' or '--help'.<br/> |
philpem@5 | 747 | - Added new macro 'cimglist_apply()' allowing to apply a single function to all members of a list : |
philpem@5 | 748 | Ex: cimglist_apply(list,blur)(3.0f);<br/> |
philpem@5 | 749 | - Added functions 'CImg<T>::resize_object3d()', 'CImgList<T>::resize_object3d()', |
philpem@5 | 750 | 'CImg<T>::get_resize_object3d()' and 'CImgList<T>::get_resize_object3d()' to ease resizing and |
philpem@5 | 751 | centering 3d objects.<br/> |
philpem@5 | 752 | - Added function 'CImgDisplay::set_mouse()' to set the mouse pointer coordinates (X11 only).<br/> |
philpem@5 | 753 | - Added functions 'CImg<T>::atan()', 'CImg<T>::acos()', 'CImg<T>::asin()' and their get_* counterparts.<br/> |
philpem@5 | 754 | <br/> |
philpem@5 | 755 | * Optimizations / Modifications :<br/> |
philpem@5 | 756 | - 'cimg_debug' has new value signification. Can now choose between displaying error message on the console |
philpem@5 | 757 | or on modal windows, even when 'cimg_display_type' is not 0.<br/> |
philpem@5 | 758 | - Updated CImg presentation slides in 'documentation/slides_cimg.pdf', more complete now.<br/> |
philpem@5 | 759 | - Added new directories in path search for 'convert' and 'medcon' and 'temporary path'. |
philpem@5 | 760 | 'convert' or 'medcon' found in the current directory './' now override the default ones.<br/> |
philpem@5 | 761 | - Added safer support for Windows 64bits.<br/> |
philpem@5 | 762 | - Improved version of 'cimg::info()' for debugging facilities. Now displays almost every |
philpem@5 | 763 | important library variables and parameters.<br/> |
philpem@5 | 764 | - Static version of CImg<T>::sequence() now return a column vector instead of a line.<br/> |
philpem@5 | 765 | - Slightly changed the tracking algorithm and few other things in 'examples/dtmri_view.cpp', |
philpem@5 | 766 | allowing more precision in the fiber computation.<br/> |
philpem@5 | 767 | - Modified the 'CImg<T>::feature_selection()' function : replaced the moving hatch by a static |
philpem@5 | 768 | one, less fun but also less time consuming. One small selection bug for 3D volumes has been |
philpem@5 | 769 | also corrected.<br/> |
philpem@5 | 770 | - Corrected line routine for 64bits architectures.<br/> |
philpem@5 | 771 | - Replaced 'CImg<T>::scroll()' by 'CImg<T>::translate()'.<br/> |
philpem@5 | 772 | - Replaced all 'cimg_map' by more coherent names based on 'cimg_for_*'. Same for 'cimglist_map'.<br/> |
philpem@5 | 773 | Compatibility with previous versions of CImg is ensured if 'cimg_strict' is not defined.<br/> |
philpem@5 | 774 | - Recoded functions to retrieve parts of the images : get_channel(), get_slice(), ...<br/> |
philpem@5 | 775 | - Improved the cimg::system() function.<br/> |
philpem@5 | 776 | - Added some tests and display extra warnings when saving images with wrong formats.<br/> |
philpem@5 | 777 | <br/> |
philpem@5 | 778 | * Bug corrections :<br/> |
philpem@5 | 779 | - Corrected small bug in 'CImg<>::blur_anisotropic()', 'examples/greycstoration.cpp' and 'plugins/greycstoration4integration.h'.<br/> |
philpem@5 | 780 | - And lot of minor bug corrections and optimizations .....<br/> |
philpem@5 | 781 | <br/> |
philpem@5 | 782 | </font> |
philpem@5 | 783 | |
philpem@5 | 784 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 785 | |
philpem@5 | 786 | <!-- ###################### --> |
philpem@5 | 787 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 788 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 789 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 790 | <b>First donator !</b> |
philpem@5 | 791 | <font size="-2">(2007/01/22, 04:37pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 792 | I really would like to thank the anonymous user that donated some money to the CImg Library. |
philpem@5 | 793 | I don't know who you are, but you have to know that your are the very first one ! I appreciate |
philpem@5 | 794 | this attention.<br/><br/> |
philpem@5 | 795 | Of course, I also thank all other people participating to CImg by reporting bugs, sending postcards |
philpem@5 | 796 | (2 received so far !) and helping developing new piece of code.<br/> |
philpem@5 | 797 | I hope the CImg Library will be alive for a long long time. Next step : the 1.1.8 release, |
philpem@5 | 798 | integrating cool new features and improving stability.<br/><br/> |
philpem@5 | 799 | |
philpem@5 | 800 | Cheers !<br/<br/> |
philpem@5 | 801 | David.<br/> |
philpem@5 | 802 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 803 | |
philpem@5 | 804 | |
philpem@5 | 805 | <!-- ###################### --> |
philpem@5 | 806 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 807 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 808 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 809 | <b>CImg 1.1.7 Released</b> |
philpem@5 | 810 | <font size="-2">(2006/11/06, 03:15pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 811 | The CImg 1.1.7 package has been released. It adds cool new features and bug corrections, and proposes more elaborated |
philpem@5 | 812 | use of template objects. |
philpem@5 | 813 | You can go to the <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Download page</a> to get the latest 1.1.7 package.<br/><br/> |
philpem@5 | 814 | Here is the CHANGELOG :<br/> |
philpem@5 | 815 | <font color="#D00000"> |
philpem@5 | 816 | *-----------------------------<br/> |
philpem@5 | 817 | *-----------------------------<br/> |
philpem@5 | 818 | * Changes from 1.1.6 to 1.1.7<br/> |
philpem@5 | 819 | *-----------------------------<br/> |
philpem@5 | 820 | *-----------------------------<br/> |
philpem@5 | 821 | <br/> |
philpem@5 | 822 | * New features :<br/> |
philpem@5 | 823 | - Added 'operator<<()' and 'operator>>()' for bit shift operations on all images pixels.<br/> |
philpem@5 | 824 | - Added most of mathematical operators in the 'CImgList' class.<br/> |
philpem@5 | 825 | - Added new demo 'Image Waves' in 'examples/CImg_demo.cpp'.<br/> |
philpem@5 | 826 | - Added mouse wheel support on Windows.<br/> |
philpem@5 | 827 | <br/> |
philpem@5 | 828 | * Optimizations / Modifications :<br/> |
philpem@5 | 829 | - Renamed class 'CImgl' into 'CImgList', also renamed macro 'cimgl_map' to 'cimglist_map'.<br/> |
philpem@5 | 830 | Backward compatibility is assured in 1.1.7 version, but think about replacing the old names<br/> |
philpem@5 | 831 | by the new ones for future CImg versions.<br/> |
philpem@5 | 832 | - Removed 'operator<<()' which appended an image to another one<br/> |
philpem@5 | 833 | - Recoded lot of non in-place mathematical operators to avoid numerical truncations.<br/> |
philpem@5 | 834 | It may have a great influence on your code. For instance writting '0.5+img' will result in a CImg<double> |
philpem@5 | 835 | image, even if 'img' was a CImg<float>.<br/> |
philpem@5 | 836 | - Recoded most of 'CImg<T>::get_resize()' function : linear interpolation performs now really faster, and |
philpem@5 | 837 | an additional parameter allows to select between different conditions for border values.<br/> |
philpem@5 | 838 | - Recoded 'CImg<T>::draw_line()' so that it now uses a classical Bresenham algorithm, avoiding rounding errors.<br/> |
philpem@5 | 839 | <br/> |
philpem@5 | 840 | * Bug corrections :<br/> |
philpem@5 | 841 | - Corrected some functions that did not performed correctly on shared images.<br/> |
philpem@5 | 842 | - Corrected small bug in 'plugins/primitives3d.h' in function 'CImg<T>::sphere()'.<br/> |
philpem@5 | 843 | - Corrected 'CImg<T>::feature_selection()' when displaying 'CImg<bool>' images.<br/> |
philpem@5 | 844 | - Corrected 'CImg<T>::load_cimg()' : is now able to load bool images.<br/> |
philpem@5 | 845 | - And lot of minor bug corrections and optimizations .....<br/> |
philpem@5 | 846 | </font> |
philpem@5 | 847 | |
philpem@5 | 848 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 849 | |
philpem@5 | 850 | <!-- ###################### --> |
philpem@5 | 851 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 852 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 853 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 854 | <b>CImg 1.1.7 in progress...</b> |
philpem@5 | 855 | <font size="-2">(2006/10/24, 10:21am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 856 | Preparing the next CImg release 1.1.7, I've added a new small and cool effect in the example file <i>examples/CImg_demo.cpp</i>. |
philpem@5 | 857 | It roughly applies the wave equation on a height map on which a color image is mapped. |
philpem@5 | 858 | This height map is deforming itself according to falling particles, and all is displayed as a 3D gouraud rotating object.<br/> |
philpem@5 | 859 | But the best of all, is that all fits in about 60 lines of code !<br/><br/> |
philpem@5 | 860 | Here's a screenshot below, click on the image to see |
philpem@5 | 861 | <a href="img/video_waves.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;">the video</a> :<br/><br/> |
philpem@5 | 862 | |
philpem@5 | 863 | <a href="img/video_waves.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> |
philpem@5 | 864 | <img src="img/ss_waves.jpg"></a> |
philpem@5 | 865 | |
philpem@5 | 866 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 867 | |
philpem@5 | 868 | <!-- ###################### --> |
philpem@5 | 869 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 870 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 871 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 872 | <b>Call for links</b> |
philpem@5 | 873 | <font size="-2">(2006/10/05, 10:32am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 874 | I'm planning to create a '<a href="links.shtml">Links</a>' page on the CImg web site, that will propose a list of links to projects that use the CImg Library in their source code. |
philpem@5 | 875 | If you are concerned and interested to appear in this page, please send me an e-mail, or post a message in the CImg forum. |
philpem@5 | 876 | Thanks for your participation. |
philpem@5 | 877 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 878 | |
philpem@5 | 879 | <!-- ###################### --> |
philpem@5 | 880 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 881 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 882 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 883 | <b>CImg 1.1.6 released</b> |
philpem@5 | 884 | <font size="-2">(2006/09/21, 04:32pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 885 | Minor release, but fixes some bugs. |
philpem@5 | 886 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 887 | |
philpem@5 | 888 | <!-- ###################### --> |
philpem@5 | 889 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 890 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 891 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 892 | <b>CImg 1.1.5 released</b> |
philpem@5 | 893 | <font size="-2">(2006/07/19, 09:53am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 894 | Following a traditional two-month release period, I'm happy to announce the release of the CImg 1.1.5 package.<br/> |
philpem@5 | 895 | There are some important changes in the API, basically, it converges to something clear and coherent.<br/> |
philpem@5 | 896 | The changelog is :<br/> |
philpem@5 | 897 | <br/> |
philpem@5 | 898 | *-----------------------------<br/> |
philpem@5 | 899 | *-----------------------------<br/> |
philpem@5 | 900 | * Changes from 1.1.4 to 1.1.5<br/> |
philpem@5 | 901 | *-----------------------------<br/> |
philpem@5 | 902 | *-----------------------------<br/> |
philpem@5 | 903 | <br/> |
philpem@5 | 904 | * New features :<br/> |
philpem@5 | 905 | - Added Poisson noise capability in CImg<T>::noise() (This patch has been proposed by Jerome Boulanger)<br/> |
philpem@5 | 906 | - Added wheel mouse support in 'CImgDisplay', now used in 'CImg<>::feature_selection()' to go through slices of |
philpem@5 | 907 | 3D volumes (unfortunately for X11 systems only).<br/> |
philpem@5 | 908 | - Added function 'CImgDisplay::toggle_fullscreen()' to allow easy and dynamic fullscreen switching of a display.<br/> |
philpem@5 | 909 | - Added screen resolution switching capabilities when using the Xrandr extension, under X11 (#define cimg_use_xrandr).<br/> |
philpem@5 | 910 | - Added support for ImageMagick++ built-in library (parts of the patch proposed by Christoph Hormann).<br/> |
philpem@5 | 911 | - And lot of small functions to ease the life...<br/> |
philpem@5 | 912 | <br/> |
philpem@5 | 913 | * Optimizations / Modifications :<br/> |
philpem@5 | 914 | - CeCiLL-C license now applies for the file 'CImg.h'. This license (close to the LGPL one) is more adapted |
philpem@5 | 915 | for library components as CImg. The examples stay in previous CeCiLL license (close to the GPL one).<br/> |
philpem@5 | 916 | - Recoded 'CImg<T>::draw_axe?()' (where ? can be 'X','Y' or 'XY') so that it can now be used to draw non-linear values along axes |
philpem@5 | 917 | (for instance logarithmic-varying labels).<br/> |
philpem@5 | 918 | - Attribute 'force' has been removed in 'CImgDisplay::resize()'.<br/> |
philpem@5 | 919 | - Recoded most constructors and assign functions in CImg<T> and CImgl<T>.<br/> |
philpem@5 | 920 | - Recoded most of the CImgDisplay class to allow more flexibility and refreshing speed.<br/> |
philpem@5 | 921 | - Renamed 'CImgDisplay::title()' to 'CImgDisplay::set_title()'. 'CImgDisplay::title' is now a class variable |
philpem@5 | 922 | that stores the current title of the display window.<br/> |
philpem@5 | 923 | - 'CImgDisplay::closed', 'CImgDisplay::resized', 'CImgDisplay::fullscreen' and 'CImgDisplay::moved' have been |
philpem@5 | 924 | renamed to 'CImgDisplay::is_closed', 'CImgDisplay::is_resized', 'CImgDisplay::is_fullscreen' and |
philpem@5 | 925 | 'CImgDisplay::is_moved', for more coherent variable names.<br/> |
philpem@5 | 926 | - 'CImg<T>::display_object3d()' : can now specify an input pose matrix, as well as get the output pose matrix, |
philpem@5 | 927 | after the user rotated the object. Also, this function has been optimized.<br/> |
philpem@5 | 928 | <br/> |
philpem@5 | 929 | * Bug corrections :<br/> |
philpem@5 | 930 | - Corrected sorting bug in 'CImg<T>::symmetric_eigen()' and 'CImg<T>::SVD()'<br/> |
philpem@5 | 931 | - When using shared memory images, some 'CImg<T>::get_*()' methods returned a shared memory image too.<br/> |
philpem@5 | 932 | - And lot of minor bug corrections and optimizations .....<br/> |
philpem@5 | 933 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 934 | |
philpem@5 | 935 | <!-- ###################### --> |
philpem@5 | 936 | <font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 937 | <table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> |
philpem@5 | 938 | <tbody><tr bgcolor="#ccccee"><td> |
philpem@5 | 939 | <b>Previous News</b> |
philpem@5 | 940 | <font size="-2">(2006/07/19, 09:53am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> |
philpem@5 | 941 | The system for posting news has changed, and you can see old news by <a href="http://www.livejournal.com/users/cimg/">going there</a>. |
philpem@5 | 942 | </font></blockquote></td></tr></table></font><br/> |
philpem@5 | 943 | |
philpem@5 | 944 | |
philpem@5 | 945 | <hr noshade="noshade" size="1" width="100%"> |
philpem@5 | 946 | <a href="http://sourceforge.net"> |
philpem@5 | 947 | <img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></a> |
philpem@5 | 948 | |
philpem@5 | 949 | </td></tr></tbody> |
philpem@5 | 950 | |
philpem@5 | 951 | <!-- Start of StatCounter Code --> |
philpem@5 | 952 | <script type="text/javascript" language="javascript"> |
philpem@5 | 953 | <!-- |
philpem@5 | 954 | var sc_project=895001; |
philpem@5 | 955 | var sc_invisible=1; |
philpem@5 | 956 | var sc_partition=7; |
philpem@5 | 957 | var sc_security="5ea85181"; |
philpem@5 | 958 | //--> |
philpem@5 | 959 | </script> |
philpem@5 | 960 | |
philpem@5 | 961 | <script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> |
philpem@5 | 962 | <!-- End of StatCounter Code --> |
philpem@5 | 963 | |
philpem@5 | 964 | </body> |
philpem@5 | 965 | </html> |