History
Version 3.1 (12 Dez 2005)
- New Download, Discussion List, Submission of Bugs, Support Requests and Feature Requests, are now available thanks to the LuaForge site.
- New Binding for Lua 5
- New support for alpha in imImage.
- New organization of the documentation.
- New in ICON format the TransparencyIndex is used to for
IM_MAP
images without an alpha channel. - New video capture functions:
imVideoCaptureFormatCount
,imVideoCaptureGetFormat
andimVideoCaptureSetFormat
, to access the available capture video formats. - New functions
imFileLoadImageFrame
andimFileLoadBitmapFrame
to reuse the image data when loading. - New function
imFileImageSave
. - New function
imImageCreateBased
. - New
imProcessInsert
. - New compression functions
imCompressDataLZF
andimCompressDataUnLZF
, using libLZF. - New module for imBinFile,
IM_FILEHANDLE
that allows to access an already opened file using the system file handle as file name. Thanks to Frederico Abraham. - Changed in JPEG file format YcbCr are now automatically converted to RGB when loaded. RGB images were already
automatically converted to YCbCr when saved. Now this behavior can be controlled by the
AutoYCbCr
attribute. - Changed the
imAnalyzeFindRegions
to include an additional parameter that control if regions touching the border are computed or not. The functionimProcessPrune
now will only eliminate the regions in the selected size range. - Changed third party libraries, updated to newest versions: libExif, libTIFF, libPNG and zlib. Added OLD JPEG support in libTIFF.
-
Changed optimization flags to ON when building the library in all platforms.
- Changed
imProcessPerimeterLine
,imAnalyzeMeasurePerimeter
,imAnalyzeMeasurePerimArea
,imAnalyzeMeasureCentroid
andimAnalyzeMeasurePrincipalAxis
to consider pixels that touch the borders. - Changed macro name
cdPutBitmap
toimPutBitmap
. - Changed function names
imImageLoad
andimImageLoadBitmap
, toimFileImageLoad
andimFileImageLoadBitmap
. - Fixed overflow in imCalcImageStatistics fo IM_INT and IM_USHORT images.
- Fixed error management in system file I/O in UNIX.
- Fixed some small defines for 64-bits compatibility in libExif, libPNG and libJPEG.
- Fixed incorrect interpretation of 16 bit data from PNG files.
- Fixed
imFileReadImageInfo
can be called many times with the same index that will return the correct result without accessing the file again. - Fixed small bug in sample
iupglcap
. - Fixed bug in TIFF format read for images with multiple bands in ExtraSamples.
- Fixed ICON format
can_sequence
was 0. - Fixed
imProcessMergeHSI
andimProcessSplitHSI
documentation, and implementation forIM_BYTE
images. - Fixed
imProcessRangeContrastThreshold
,imProcessLocalMaxThreshold
andimProcessRankClosestConvolve
when processing near the border. - Fixed invalid file permissions in UNIX when saving a new file.
- Fixed name for
imProcessLocalMaxThresEstimate
. - Fixed
imProcessReduceBy4
for images with odd width and/or height. - Fixed
imAttribTableSet
when replacing an attribute (thanks to Takeshi Mitsunaga). - Fixed memory leaks in
imConvertToBitmap
andimConvertDataType
(thanks to Takeshi Mitsunaga). - Fixed
imProcessZeroCrossing
for the last pixel column (thanks to Takeshi Mitsunaga). Also fixed for some crossings that were lost. - Fixed
imProcessGrayMorphConvolve
forIM_FLOAT
images withIM_FLOAT
kernel (thanks to Takeshi Mitsunaga).
Version 3.0.3 (14 Oct 2004)
- Improved C API of
im
AttribTable
. New utility classimAttribArray
. - Fixed file read with bitmap conversion when original data changes only data type.
- Improved
imProcessThreshold
,imProcessRangeContrastThreshold
andimProcessLocalMaxThreshold
now also supportsIM_USHORT
andIM_INT
data types. - Rank convolution operations did not accept even kernel sizes.
- New group of functions Image Analysis:
imAnalyzeFindRegions
,imAnalyzeMeasureArea
,imAnalyzeMeasurePerimArea
,imAnalyzeMeasureCentroid
,imAnalyzeMeasurePrincipalAxis
,imAnalyzeMeasureHoles
,imProcessPerimeterLine
,imAnalyzeMeasurePerimeter
,imProcessPrune
,imProcessFillHoles
. - New Image Transform
imProcessDistanceTransform
. - The default color conversion to binary now can be done for all color spaces.
- Fixed bug in
imProcessHoughLinesDraw
that was ignoring some lines. - New
imConvertMapToRGB
to help loading data as RGB. - New sample
iupglcap
. im_process.h
was split into 4 files:im_process_pont.h
,im_process_loc.h
,im_process_glo.h
,im_process_ana.h
. But it still exists and includes the new files for compatibility.- New
imProcessRenderChessboard
andimProcessRenderGrid
. - Improved the border extensions in several types of convolution. Rank convolution do not extend the borders. Binary morphology use zero extension. Gray morphology do not extend the borders.
Version 3.0.2 (25 Aug 2004)
- New utility functions
imPaletteHighContrast
,imImageLoadImage
andimImageLoadBitmap
.
- New operationimProcessNormalizeComponents
.
- Changed nameimProcessGaussianConvolve
toimProcessGaussianConvolveRep
. New operationimProcessGaussianConvolve
that uses a float kernel. New utility functionsimGaussianStdDev2Repetitions
andimGaussianStdDev2KernelSize
.
- Changed nameimProcessDiffOfGaussianConvolve
toimProcessDiffOfGaussianConvolveRep
. New operationimProcessDiffOfGaussianConvolve
that uses a float kernel.
- ChangedIM_GAMUT_BRIGHTCONT
parameters to the interval [-100,100]. FixedIM_GAMUT_EXPAND
andIM_GAMUT_BRIGHTCONT
normalization.
- Removed logical operation flagIM_BIT_NOT
. Replaced by operationimProcessBitwiseNot
.
- Improved inimImageSetAttribute
count can be -1 for zero terminated data.
- Fixed operationsimProcessBitwiseNot
andimProcessNegative
forIM_BINARY
images.
- Fixed bug in thecolor_mode_flags
parameter interpretation byimFileReadImageData
.
- Fixed bug inimProcessEqualizeHistogram
andimProcessExpandHistogram
for color images.
- Fixed bug inimProcessMultipleStdDev
.
- Fixed bug inimProcessDifusionErrThreshold
forIM_GRAY
images.
- Fixed bug in "KRN
" format, internal format is topdown.
- Fixed bug in initialization of TGA image_count.
Version 3.0.1 (22 Apr 2004)
- Improved compatibility with the old version, it was missing the load of Map images with
imLoadRGB
.
- The FFTW code was from version 2.1.3, not from 2.1.5 as suposed, it was updated. The FFT functions were condensed in only one file with an "#ifdef" for FFTW version 2 and 3. The FFT functions also were renamed to remove the "W" that belongs only to the FFTW library.
- TheSetAttribute
functions now accept NULL in data to remove the attribute.
- NewimProcessCrossCorrelation
andimProcessAutoCorrelation
functions.
- TheimCalcGrayHistogram
function now can calculate the histogram ofIM_MAP
andIM_BINARY
images.
Version 3.0 (April 2004)
A major rewrite of the library. Everything changed, check the manual, but backward compatibility is kept for old applications. A new API more flexible, new formats, support for attributes and video, image capture and image processing. New color spaces and data types. The library now got a professional look for scientific applications.
Version 2.6 (May 2002)
Correction of bug in resolution reading and writing for format JPEG.
Version 2.5 (August 2001)
Correction of bug in the default GIF compression. Two new callbacks: transparency color index for GIF files and image description for TIFF files.
Version 2.4 (February 2000)
Change in the treatment of LZW compression in formats TIFF and GIF. Now compression is no longer the default.
Version 2.3 (June 1998)
Close function of the access driver for files in memory corrected. JPEG library updated to 6b. Correction of a problem with the reading of some JPEG files.
Version 2.2 (November 1997)
The definition of the counter callback was changed to inform, in a parameter, the type of access being performed, either reading or writing. Type imCallback defined to make type casting easier when using function imRegisterCallback. Correction of a problem with the makefile in UNIX, which was generating link errors in some platforms.
Version 2.1 (October 1997)
Correction of a problem with internal memory liberation when reading Map images in TIFF files. Conversion RGB to Map is now made using the algorithm implemented by LibJPEG. The algorithm of imResize was improved for cases in which the size is being reduced instead of increased. Correction of a problem with functions imImageInfo and imFileFormat: when the provided file was not in a format recognized by IM, there was an error in format TGA which caused these functions to access an invalid memory area.
Version 2.0 (September 1997)
The library was virtually rewritten to implement a new structure which allowed greater flexibility, simplifying the addition of new formats. Formats TGA, PCL, JPEG and LED were added to the list of supported formats, and new functions were added: imMap2RGB, imRGB2Gray, imMap2Gray, imResize, imStretch.
Version 1.1 (June 1996)
Small corrections to increase portability. Changes in return codes. Identifiers were created to return codes and predefined parameters. Online manual concluded.