- Changed: ICON format now supports
+ Changed: ICON format now supports
writing up to 10 images.
- Fixed:Changed:
+ replaced old "arg" usage for "..." to improve better compatibility with
+ LuaJIT.
+
+ Changed:
+ control of LOHs inclusion moved from the source code to the makefile.
+
+ Changed:
+ removed compatibility with require"imlua51", now LuaBinaries must be used
+ or LUA_CPATH must be set.
+
+ Fixed: image:HasAlpha() method in
Lua was returning a number instead of a boolean, so im.ImageCreateBased
was adding an alpha channel to all new images.
- Changed: libTIFF downgraded to version
+ Changed: libTIFF downgraded to version
3.8.2 because of the JPEG support in TIFF not working on the newer
versions.
- Changed:
+ Changed: included alpha support in
imProcessSplitComponents and imProcessMergeComponents.
Included alpha support in all geometric and size operations.
-
Fixed:Fixed: invalid memory access in
imAnalyzeFindRegions when more than 16k regions where found.
-
Fixed:Fixed: memory leak in imFileOpen.
-
Fixed:Fixed: alpha support in image:CopyPlane()
and in channel indexing in Lua.
-
Fixed:Fixed: incomplete initialization of the array in
imAnalyzeMeasureArea.
New: functions
imProcessUnsharp and imProcessSharp.
-
New: function
+
New: function
imImageGetOpenGLData.
-
New: functions
+
New: functions
im.ConvertDataTypeNew, im.ConvertColorSpaceNew
and im.ConvertToBitmapNew in Lua.
-
New: file attributes
+
New: file attributes
"FileFormat", "FileCompression" and "FileImageCount" when reading from
file. Available for all formats.
-
New: ASCII compression for RAW
+
New: ASCII compression for RAW
format to access text data instead of binary.
-
Changed: libPNG updated to version
+
Changed: libPNG updated to version
1.2.39. Removed changes to the library that made it incompatible with other
libPNG distributions.
-
Changed: libLZF updated to
+
Changed: libLZF updated to
version 3.5.
-
Changed: libJPEG updated to
+
Changed: libJPEG updated to
version 7.
-
Changed: libEXIF updated to version 0.6.17.
-
Changed: libTIFF updated to version
+
Changed: libEXIF updated to version 0.6.17.
+
Changed: libTIFF updated to version
3.9.1.
-
Changed: library im_fftw3 to use
+
Changed: library im_fftw3 to use
an external library.
-
Changed: Changed:imImageCreateBased and
imConvertColorSpace now also
consider the alpha plane.
-
Changed: imProcessPrune
+
Changed:imProcessPrune
renamed to imProcessRemoveByArea, and added a new
parameter to select inside or outside the interval.
-
Changed: removed IM_UN_INC operation from imProcessUnArithmeticOp.
+
Changed:removed IM_UN_INC operation from imProcessUnArithmeticOp.
It was not an unary operation. Can simply be done in place by
imProcessArithmeticOp and IM_BIN_ADD.
-
Changed: now imProcessUnArithmeticOp,
+
Changed:now imProcessUnArithmeticOp,
imProcessArithmeticConstOp and
imProcessArithmeticOp willl crop the result to 0-255 if destiny
has data type byte.
-
Fixed:Fixed: PNG attribute TransparencyIndex. new PNG
attribute TransparencyMap. TransparentColor renamed to
TransparencyColor.
-
Fixed:Fixed: invalid convertion from MAP to GRAY when
loading imImages.
-
Fixed:Fixed: new image size computation of im.ProcessCropNew
in Lua.
-
Fixed:Fixed: loading of RAW data.
-
Fixed:Fixed:imImageClear to initialize
data just like imImageCreate does.
-
Fixed:Fixed:imImageReshape when the
image has an alpha plane. Image is not cleared anymore.
-
Fixed:Fixed: boolean parameters in
file:ReadImageData, im.ConvertDataType, im.ConvertToBitmap, im.ProcessSplitComplex,
im.ProcessQuantizeRGBUniform, im.ProcessBitPlane, im.ProcessRotateRef,
@@ -141,298 +165,298 @@
im.CalcHistogram, im.CalcGrayHistogram and
im.AnalyzeFindRegions in Lua. Changed im.Capture*
functions to use boolean values in Lua.
New: imlua_avi, imlua_wmv and imlua_jp2 libraries so the
+
New: imlua_avi, imlua_wmv and imlua_jp2 libraries so the
respective formats can be dynamically loaded
using require.
-
Changed:
+
Changed:IMPORTANT -
the "imlua_cd" library moved from IM to CD under the name "cdluaim".
-
Changed:
+
Changed:IMPORTANT - the support services
(Downloads, Mailing List and CVS) moved from LuaForge to SourceForge.
-
Changed: All dll8 and dll9 DLLs now
+
Changed: All dll8 and dll9 DLLs now
have a Manifest file that specifies the correct MSVCR*.DLL.
-
Changed:
+
Changed:
Makefiles for UNIX now uses a compact version of Tecmake that does not need
any installation, just type "make".
-
Changed: premake files are used now
+
Changed: premake files are used now
only internally and were removed from the distribution.
-
Changed:
+
Changed:
Copyright notice modified to reflect the registration at INPI (National
Institute of Intellectual Property in Brazil). License continues under the
same terms.
-
Fixed: reviewed and fixed the parameter
+
Fixed: reviewed and fixed the parameter
checking of all IMLua processing functions. Also reviewed all IMLua
parameter checking. Thanks to Lucas Lorensi.
-
Fixed: loading of TIFF format with
+
Fixed: loading of TIFF format with
old JPEG compression.
-
Fixed: loading and saving of PNM
+
Fixed: loading and saving of PNM
format when data in textual format and gray values are greatter than 255.
-
Fixed: Bicubic and Zero order
+
Fixed: Bicubic and Zero order
interpolation for all geometric operations for pixels near the image border
when increasing image size.
-
Fixed: Lua samples.
-
Fixed: ICON format in 64 bits Linux.
+
Fixed: Lua samples.
+
Fixed: ICON format in 64 bits Linux.
Version 3.3 (26/Nov/2007)
-
New: read support for ECW using the
+
New: read support for ECW using the
ERMapper ECW JPEG 2000 SDK.
-
Changed: libTIFF updated to version
+
Changed: libTIFF updated to version
3.8.2.
-
Changed: libPNG updated to version
+
Changed: libPNG updated to version
1.2.22.
-
Changed: libJasper updated to
+
Changed: libJasper updated to
libGeoJasper 1.4.0 (using Jasper version 1.900.1). Better support for
counter progress, Geo tags and several speed improvements. New GeoTIFFBox
and XMLPacket attributes.
-
Changed: renamed macro imPutImage
+
Changed: renamed macro imPutImage
to imcdCanvasPutImage, and added canvas as the first parameter.
-
Changed: renamed
+
Changed: renamed
the imImage Lua
methods to image:cdCanvasPutImageRect, image:wdCanvasPutImageRect
and image:cdCanvasGetImage, and added canvas as the first parameter. Now imlua_cd
depends on cdlua from CD version 5.0.
-
Changed: metatable names in Lua are
+
Changed: metatable names in Lua are
now the same as the C struct names.
-
Changed: new read EXIF tags support
+
Changed: new read EXIF tags support
in TIFF format (no write support yet). Renamed attributes "GeoTransMatrix"
and "IntergraphMatrix", to "GeoTransformationMatrix" and "Intergraph
TransformationMatrix" for libGeoTIFF compatibility. Better support for
known TIFF tags. New support for reading one band of a multiband gray image
in TIFF format. New support for DNG files.
-
Fixed: imConvertDataType
+
Fixed: imConvertDataType
gamma function when converting real to/from integer.
-
Fixed:small error at
+
Fixed:small error at
the image border when resampling, rotating or other geometric operations.
-
Fixed:
+
Fixed:imProcessCanny invalid division by zero when input image is all zero.
-
Fixed:
+
Fixed:imFileReadImageInfo when loading MAP images with a scrambled gray
palette. They were incorrectly converted to GREY.
-
Fixed:
+
Fixed:
support for IM_ALPHA and 32 bpp in ICO format.
-
Fixed:
+
Fixed:
number of lines returned in imProcessHoughLinesDraw.
Version 3.2 (24/Nov/2006)
-
New:imProcessRotateRef to rotate relative to a reference point.
-
New: geometric distortion imProcessSwirl.
-
New:imProcessInterlaceSplit.
-
New: function imGaussianKernelSize2StdDev.
-
New: convolutions imProcessBarlettConvolve,
+
New:imProcessRotateRef to rotate relative to a reference point.
+
New: geometric distortion imProcessSwirl.
+
New:imProcessInterlaceSplit.
+
New: function imGaussianKernelSize2StdDev.
+
New: convolutions imProcessBarlettConvolve,
imProcessPrewittConvolve, imProcessSplineEdgeConvolve,
imProcessConvolveDual and imProcessConvolveSep.
-
New: "im_kernel.h" module with simple functions to create know pre-defined kernels like sobel, laplacian, gaussian,
+
New: "im_kernel.h" module with simple functions to create know pre-defined kernels like sobel, laplacian, gaussian,
etc.
-
New:imVideoCaptureSetInOut to control input and output in capture devices.
-
New: function imBinMemoryRelease to release internal memory allocated
+
New:imVideoCaptureSetInOut to control input and output in capture devices.
+
New: function imBinMemoryRelease to release internal memory allocated
by the BinMemory file when saving.
-
New: functions for capture device information:
+
New: functions for capture device information:
imVideoCaptureDeviceExDesc, imVideoCaptureDevicePath and
imVideoCaptureDeviceVendorInfo.
-
New: function imFileOpenAs
+
New: function imFileOpenAs
to open a file of a specific format.
-
New: functions
+
New: functions
imFormatRegisterInternal and imFormatRemoveAll to
control format registration.
-
Changed:imProcessGaussianConvolve to used separable convolution and now is stddev is negative will use its
+
Changed:imProcessGaussianConvolve to used separable convolution and now is stddev is negative will use its
magnitude as the kernel size. Removed Rep functions imProcessGaussianConvolveRep,
imProcessDiffOfGaussianConvolveRep and
imGaussianStdDev2Repetitions.
-
Changed:imProcessBlend
+
Changed:imProcessBlend
to use an image instead of a constant. Old function renamed to
imProcessBlendConst.
-
Changed:imFileHandle prototype. Now the function has an index parameter to specify which handle it should return.
+
Changed:imFileHandle prototype. Now the function has an index parameter to specify which handle it should return.
index=0 is always an imBinFile* handle. Use index=1 or greater to return other internal handles that are format
dependent.
-
Changed: the Removed the include "im.h"
+
Changed: the Removed the include "im.h"
to not include "im_lib.h". "im_lib.h" must be included when necessary.
-
Changed:imAnalyzeMeasureArea and
+
Changed:imAnalyzeMeasureArea and
imAnalyzeMeasurePerimeter prototypes to include the number of regions as a
parameter. Fixed: these functions to internally initialize the results array to zero (this was necessary and not
documented).
-
Changed:imProcessFlip
+
Changed:imProcessFlip
and imProcessMirror so they can be done in-place.
-
Fixed: missing implementation of
+
Fixed: missing implementation of
imVideoCaptureOneFrame in Lua 5.
-
Fixed:imAnalyzeFindRegions when pixel is at the width-1 column.
-
Fixed: file format identification when
+
Fixed:imAnalyzeFindRegions when pixel is at the width-1 column.
+
Fixed: file format identification when
TIFF identification failed was not closing the file.
-
Fixed:imAnalyzeMeasurePerimeter when perimeter line is at the first or last lines. Thanks to Takeshi Mitsunaga.
-
Fixed: invalid return value in imVideoCaptureConnect in Lua 5.
-
Fixed:imProcessRotate for IM_MAP images.
-
Fixed:Lua binding of
+
Fixed:imAnalyzeMeasurePerimeter when perimeter line is at the first or last lines. Thanks to Takeshi Mitsunaga.
+
Fixed: invalid return value in imVideoCaptureConnect in Lua 5.
+
Fixed:imProcessRotate for IM_MAP images.
+
Fixed:Lua binding of
imFileImageSave, wrong parameters order. New: image:Save(filename, format) alias for imImage
objects.
-
Fixed:BMP format implementation when reading and writing RGBA 32 bits images.
-
Fixed:imFileLoadImageFrame and
+
Fixed:BMP format implementation when reading and writing RGBA 32 bits images.
+
Fixed:imFileLoadImageFrame and
imFileLoadBitmapFrame index parameter in Lua.
-
Fixed: alpha channel allocation in imImage.
+
Fixed: alpha channel allocation in imImage.
Version 3.1 (12/Dez/2005)
-
New: Download, Discussion List, Submission of Bugs, Support Requests and Feature Requests, are now available thanks
+
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
+
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,
+
New: video capture functions: imVideoCaptureFormatCount,
imVideoCaptureGetFormat
and imVideoCaptureSetFormat, to access the available capture video formats.
-
New: functions imFileLoadImageFrame and
+
New: functions imFileLoadImageFrame and
imFileLoadBitmapFrame to reuse the
image data when loading.
-
New: function imFileImageSave.
-
New: function imImageCreateBased.
-
New:imProcessInsert.
-
New: compression functions imCompressDataLZF and
+
New: function imFileImageSave.
+
New: function imImageCreateBased.
+
New:imProcessInsert.
+
New: compression functions imCompressDataLZF and
imCompressDataUnLZF, using
libLZF.
-
New: module for imBinFile, IM_FILEHANDLE that allows to access an already opened file using the
+
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
+
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
+
Changed: the imAnalyzeFindRegions to include an additional parameter that control if regions
touching the border are computed or not. The function imProcessPrune 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
+
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,
+ Changed: optimization flags to ON when building the library in all platforms.
+
Changed:imProcessPerimeterLine,
imAnalyzeMeasurePerimeter,
imAnalyzeMeasurePerimArea, imAnalyzeMeasureCentroid and
imAnalyzeMeasurePrincipalAxis to consider pixels that touch the borders.
-
Changed: macro name cdPutBitmap to
+
Changed: macro name cdPutBitmap to
imPutBitmap.
-
Changed: function names imImageLoad and
+
Changed: function names imImageLoad and
imImageLoadBitmap, to
imFileImageLoad and imFileImageLoadBitmap.
-
Fixed: overflow in imCalcImageStatistics fo IM_INT and IM_USHORT images.
-
Fixed: error management in system file I/O in
+
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
+
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
+
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:TIFF format read for images with multiple bands in ExtraSamples.
-
Fixed:ICON format can_sequence was 0.
-
Fixed:imProcessMergeHSI and
+
Fixed: small bug in sample iupglcap.
+
Fixed:TIFF format read for images with multiple bands in ExtraSamples.
+
Fixed:ICON format can_sequence was 0.
+
Fixed:imProcessMergeHSI and
imProcessSplitHSI documentation, and
implementation for IM_BYTE images.
-
Fixed:imProcessRangeContrastThreshold,
+
Fixed:imProcessRangeContrastThreshold,
imProcessLocalMaxThreshold and
imProcessRankClosestConvolve 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 and
+
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 and
imConvertDataType (thanks to
Takeshi Mitsunaga).
-
Fixed:imProcessZeroCrossing for the last pixel column (thanks to Takeshi Mitsunaga). Also
+
Fixed:imProcessZeroCrossing for the last pixel column (thanks to Takeshi Mitsunaga). Also
fixed for some crossings that were lost.
-
Fixed:imProcessGrayMorphConvolve for
+
Fixed:imProcessGrayMorphConvolve for
IM_FLOAT images with
IM_FLOAT kernel (thanks to Takeshi Mitsunaga).
Version 3.0.3 (14/Oct/2004)
-
New: Image Transform imProcessDistanceTransform.
-
New: group of functions Image Analysis:
+
New: Image Transform imProcessDistanceTransform.
+
New: group of functions Image Analysis:
imAnalyzeFindRegions, imAnalyzeMeasureArea,
imAnalyzeMeasurePerimArea, imAnalyzeMeasureCentroid,
imAnalyzeMeasurePrincipalAxis, imAnalyzeMeasureHoles, imProcessPerimeterLine,
imAnalyzeMeasurePerimeter, imProcessPrune,
imProcessFillHoles.
-
New:imConvertMapToRGB to help loading data as RGB.
-
New: sample iupglcap.
-
New:imProcessRenderChessboard and
+
New:imConvertMapToRGB to help loading data as RGB.
+
New: sample iupglcap.
+
New:imProcessRenderChessboard and
imProcessRenderGrid.
-
Changed:imProcessThreshold,
+
Changed:imProcessThreshold,
imProcessRangeContrastThreshold and imProcessLocalMaxThreshold now also supports
IM_USHORT and IM_INT
data types.
-
Changed: the default color conversion to binary
+
Changed: the default color conversion to binary
so it can be done for all color spaces.
-
Changed: im_process.h to split into 4 files: im_process_pont.h,
+
Changed: im_process.h to 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.
-
Changed: the border extensions in several types of convolution. Rank convolution do not extend the borders. Binary
+
Changed: 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.
-
Fixed: file read with bitmap conversion when original data changes only data type.
-
Fixed: rank convolution operations that did not accept even kernel sizes.
-
Fixed:imProcessHoughLinesDraw that was ignoring some lines.
+
Fixed: file read with bitmap conversion when original data changes only data type.
+
Fixed: rank convolution operations that did not accept even kernel sizes.
+
Fixed:imProcessHoughLinesDraw that was ignoring some lines.
Version 3.0.2 (25/Aug/2004)
-
- New: utility functions imPaletteHighContrast,
+
- New: utility functions imPaletteHighContrast, imImageLoadImage and imImageLoadBitmap.
- - New: operation imProcessNormalizeComponents.
- - Changed: name imProcessGaussianConvolve to
+ - New: operation imProcessNormalizeComponents.
+ - Changed: name imProcessGaussianConvolve to imProcessGaussianConvolveRep. New:
operation imProcessGaussianConvolve that uses a float kernel.
New: utility functions imGaussianStdDev2Repetitions and imGaussianStdDev2KernelSize.
- - Changed: name imProcessDiffOfGaussianConvolve to
+ - Changed: name imProcessDiffOfGaussianConvolve to imProcessDiffOfGaussianConvolveRep.
New: operation imProcessDiffOfGaussianConvolve that uses a float kernel.
- - Changed:IM_GAMUT_BRIGHTCONT
+ - Changed:IM_GAMUT_BRIGHTCONT
parameters to the interval [-100,100]. Fixed: IM_GAMUT_EXPAND and IM_GAMUT_BRIGHTCONT normalization.
- - Changed: logical operations, flag IM_BIT_NOT
+ - Changed: logical operations, flag IM_BIT_NOT replaced by operation imProcessBitwiseNot.
- - Changed:imImageSetAttribute count can be -1 for zero terminated data.
- - Fixed: operations imProcessBitwiseNot and
+ - Changed:imImageSetAttribute count can be -1 for zero terminated data.
+ - Fixed: operations imProcessBitwiseNot and imProcessNegative for IM_BINARY images.
- - Fixed: the color_mode_flags parameter interpretation by
+ - Fixed: the color_mode_flags parameter interpretation by imFileReadImageData.
- - Fixed:imProcessEqualizeHistogram and
+ - Fixed:imProcessEqualizeHistogram and imProcessExpandHistogram for
color images.
- - Fixed:imProcessMultipleStdDev.
- - Fixed:imProcessDifusionErrThreshold for
+ - Fixed:imProcessMultipleStdDev.
+ - Fixed:imProcessDifusionErrThreshold for IM_GRAY images.
- - Fixed: "KRN" format, internal format is topdown.
- - Fixed: initialization of TGA image_count.
+ - Fixed: "KRN" format, internal format is topdown.
+ - Fixed: initialization of TGA image_count.