Version History

From Emgu CV: OpenCV in .NET (C#, VB, C++ and more)
Revision as of 03:30, 11 August 2009 by Canming (talk | contribs) (Change Log)
Jump to: navigation, search

Emgu.CV-2.0.1.0

This version is available from SVN, and should be the first stable version of Emgu CV 2.0 once OpenCV is released on August.

Online Documentation

Browse

Nightly Build

Document-2.0.1.0.zip

Emgu.CV.Binary-2.0.1.0.zip

The OpenCV Dlls included in the nightly build are compiled with VS2008. You will needs to install MSVCRT 9.0 SP1 for dependency.

Change Log

  • Added cvInRange function in CvInvoke class; InRange(Image<TColor, TDepth> lower, Image<TColor, TDepth> higher) function in Image class;
  • Added cvGetNormalizedCentralMoment in CvInvoke class; GetNormalizedCentralMoment function in MCvMoments structure
  • Added cvLinearPolar in CvInvoke class
  • Added OctTree class and HOGDescriptor (Histogram-of-Oriented-Gradients) class
  • Make Map<,> class runtime serializable. This enable Debugger Visualizer for Map<,> as well.

Emgu.CV-2.0.0.0 Alpha

This is the alpha release of Emgu CV 2.0 build with OpenCV SVN rev 1918, available from Sourceforge. It is a preview of what the final version of Emgu CV 2.0 will be and is not recommended for production environment. The OpenCV Dlls included in this build are compiled with VS2008. You will needs to install MSVCRT 9.0 SP1 for dependency.

Online Documentation

Browse

Change Log

  • Emgu CV 2.0 requires .NET 3.5.
  • The included OpenCV dlls are built with Visual Studio 2008 and requires MSVCRT 9.0 SP1
  • A feature rich ImageBox with Pan and Zoom support.
  • Added Debugger Visualizer for Image, Matrix MatDN and DenseHistogram for Visual Studio 2005/2008
  • Adapt CMake as the build system for Linux, it is also used to build unmanaged code on windows.
  • Fixed a marshaling error in MCvBoostParams, MCvDTreeParams and MCvRTParams structures. The following class finally works in 2.0.0.0 release: Boost Tree, Decision Tree and Random Tree.
  • Fixed a bug in cvReduce function
  • Feature Tree can now be constructed either as Spill-Tree or K-d Tree
  • Histogram class is obsolete, it is replaced by DenseHistogram class, which
    • is runtime-serializable
    • can be calculated from Matrix.
    • can be visualized by a Debugger Visualizer
  • The following classes are new in v2.0
    • ERTrees (Extreme Random Trees)
    • HomographyMatrix
    • SURFTracker
  • The following class are now runtime-serializable
    • RotationVector3D
    • ExtrinsicCameraParameters
    • MatND
  • Improvements to Image class.
    • Added _GammaCorrect function
    • Added ExtractMSER (Maximally stable extremal regions) function
    • Make _EqualizeHist() work for color image as well: For color images, a HSV representation of the image is first obtained and the V (value) channel is histogram equalized.
  • Added GetConvexityDefacts(MemStorage, ORIENTATION) function in Seq<T> class.
  • Improved performance when retrieving Voroni-facets in PlanarSubdivision class.
  • Improved performance for the Rotate function in Image class when crop is false.
  • Removed WindowForm example and OCR example. Added VideoSurveillance, License Plate Recognition and Traffic Sign Recognition example.
  • Add cvCalcEMD2 function in CvInvoke class, thanks to yoavhacohen.
  • More functions wrapped in CvInvoke class.

Emgu.CV-1.5.0.1

This is the latest stable version of Emgu CV, available from Sourceforge.

Change Log

  • Fixed a bug in cvThreshold's return type. Thanks to Albert G.

Emgu.CV-1.5.0.0

Online Documentation

Browse

Change Log

  • The following changes requires refracting. To upgrade from 1.4.0.0 to 1.5.0.0 please see Emgu CV 1.5 Upgrade Instructions:
    • Some classes and structures are refracted, which includes:
      • Generic Point class, MCvPoint and MCvPoint2D32F structure becomes System.Drawing.Point and System.Drawing.PointF structure
      • MCvSize structure becomes System.Drawing.Size
      • Generic Rectangle class becomes System.Drawing.Rectangle structure.
      • Generic Line, LineSegment, Circle becomes its corresponding none generic structure.
    • Managed OpenCV structures (MCv***) and color structures moved to the Emgu.CV.Structure namespace. This change requires existing code to include Emgu.CV.Structure namespace.
  • The same managed dlls (Emgu.CV.dll, Emgu.Util.dll, Emgu.CV.ML.dll, Emgu.CV.UI.dll) can be used on BOTH Windows and Linux. On Linux, you will need to include the corresponding .config file for Mono to handle the PInvoke mapping.
  • Beta version of Machine Learning library wrapped in Emgu.CV.ML namespace. Machine learning algorithms wrapped includes:
  • Added VideoSurveillance namespace, which wrap OpenCV's Blob Tracking algorithms.
  • Support for multi-channel Matrix
  • Performance improvement for Seq<T>.ToArray() function
  • Performance improvement for CameraCalibration class.
  • Performance improvement for PlanarSubdivision class. On a development machine, v1.4 requires 600 millisecond to retrieve all the Delaunay's triangles for 3000 points while v1.5 needs only 19 millisecond. A 31 times performance improvement.
  • Added Simple 3D reconstruction example which extract disparity map from stereo image pair, and display the textured 3D point-cloud using Tao.GL
  • Added an OCR (a.k.a. Text Recognition) example using tessnet2
  • SURF feature example uses Feature Tree to speed up the computation.
  • Fixed a bug in CameraCalibration.CalibrateCamera function
  • More functions wrapped in CvInvoke class

Known Issues

  • OpenCV 1.1pre for windows is built on VS2005. You will need to install MSVCRT 8.0 SP1 available from

this page

  • OpenCV 1.1pre has an issue with writing videos files. If you need to write video you have to rebuild the binary following instructions from this page (You will need an Yahoo ID to view it)
  • There is a bug on gmcs compiler version 2.0. If you need to build Emgu CV on *inux. Please use gmcs 1.9.1 or version >= 2.2. (The compiled code can be run on any Mono runtime version >= 1.9.1)

Emgu.CV-1.4.0.0

Online Documentation

Browse

Change Log

  • Support for OpenCV version 1.1
  • Emgu.CV.UI namespace is now in its separate assembly (instead of the Emgu.CV assembly).
  • Better ImageBox
    • ImageBox now inherits from PictureBox instead of Control. This change allow developer to easily bind Event (e.g. MouseClick event) to the ImageBox from visual studio designer.
    • Improved histogram display for multi-channel image
    • Applying image operation using the right-click menu is more stable. If invalid parameters are specified for some operations, error message will be displayed instead of an application crash.
  • Improved performance when converting 1pbbIndexed and 8bppIndexed Bitmap to Image class
  • For .bmp and .tiff (.tif) file type, the Image class constructor by default first load them as Bitmap then convert to Image. This is necessary since the OpenCV cvLoadImage function is quite buggy when loading these image formats.
  • More depth types are supported for both the Image class and Matrix class
  • Improved PlannarSubdivision class
    • Better performance when retrieving triangles and Voroni-facets (Thanks to Albert G for the suggestion)
    • Added the Locate function
  • Added OpticalFlow class
  • Added example for face detection in VB.
  • Fix a bug in the PInvoke signature of CvInvoke.cvCalcOpticalFlowPyrLK
  • Fix a bug in CvInvoke.cvSubS function
  • Fix a bug in CvInvoke.cvInvert DllImport attribute
  • More functions mapped to CvInvoke class

Known Issues

  • OpenCV 1.1pre for windows is built on VS2005. You will need to install MSVCRT 8.0 SP1 available from

this page

  • OpenCV 1.1pre has an issue with writing videos files. If you need to write video you have to rebuild the binary following instructions from this page (You will need an Yahoo ID to view it)
  • There is a bug on gmcs compiler version >= 2.0. If you need to build Emgu CV on *inux. Please use gmcs 1.9.1 instead. (The compiled code can be run on any Mono runtime version >= 1.9.1)

Emgu.CV-1.3.0.0

Online Documentation

Browse

Change Log

  • Added Bgra color type
  • In Image class, added SByte for depth type.
  • Improved ImageBox functionality
  • Improved Histogram class
  • It is now possible to create Image<,> object from any type of Bitmap
  • Support for reading image from ".gif" and ".exig" file
  • Added MotionHistory class and Motion Detection Example
  • Added EigenObjectRecognizer class for PCA base object recognition
  • Added PlannarSubdivision class, which can be used for Delaunay's Triangulation and Voronoi's Diagram. Added PlanarSubdivision example.
  • Fix a bug in MCvConnectedComponent structure
  • Bug fixes in CvInvoke.cvCreateVideoWriter and CvInvoke.cvFloodFill function call
  • Many more functions added to CvInvoke class
  • Many more structures wrapped in Emgu CV
  • The released assemblies are now strong signed.
  • Starting from this version of Emgu CV, ImageBox uses ZedGraph to display color histogram. If ImageBox is never used in your project, you can remove it from the dependency.

Emgu.CV-1.2.2.0

Change Log

  • ImageBox Control
  • Better exception handling
  • Operators Overload
  • Can be compiled by Monodevelop
  • Support of Double as image depth
  • Bitmap get property added as a high performance alternative to ToBitmap() function
    • Note: Bitmap get property differs from ToBitmap() such that when dealing with Image<Gray, Byte> and Image<Bgr, Byte>, the image data is shared with Bitmap. Take extra caution not to use the Bitmap after the Image is disposed
  • Performance improvement on ToBitmap() function. When converting Grayscale to Bitmap, use Format8bppIndexed and a custom Color Palette instead of Format24bppRgb in version 1.1.1.0. In terms of memcopy it only copy one third of data as compares with the old version. Thanks for the tips from Sebastian Kraemer.
  • Better performance on the Width and Height properties.
  • Example of using Emgu CV in WCF to implement web service. (Both Server and Client covered).
  • More structure wrapped
  • More functions has been covered
  • Fix a bug in Circle such that it can be properly XML serialized
  • Thanks Albert Gordo for the advises and contribution of patches