Difference between revisions of "Version History"

From Emgu CV: OpenCV in .NET (C#, VB, C++ and more)
Jump to: navigation, search
(Added 3.3 release note.)
 
(30 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Emgu.CV-3.0.0==
+
==Emgu.CV-3.3.0==
 
 
Coming soon...
 
 
 
Instruction to convert 2.4.x code to 3.0 can be found [[Tutorial#Upgrading_from_Emgu_CV_2.x_to_3.x | here]]
 
  
 
===Online Documentation===
 
===Online Documentation===
[{{SERVER}}/wiki/files/3.0.0/document/index.html Browse]
+
[{{SERVER}}/wiki/files/3.3.0/document/index.html Browse]
  
 
===Change Log===
 
===Change Log===
 +
* 3.3.0 is based on the Open CV 3.3 release
 +
* 3.3.0 Windows release is built with Visual Studio 2017. CUDA release is built with CUDA 9.0
 +
 
====Enhancements====
 
====Enhancements====
* Based on Open CV 3.0.0 release. For details, please see [http://opencv.org/opencv-3-0.html Open CV 3.0 release note]
+
* Added .Net Standard 1.4 compilation support, thanks to Bernd Baumanns. You will need to compile from source code using the solution file under Solution\Windows.Desktop\Emgu.CV.sln and compile the project Emgu.CV.World.NetStandard1_4.
 +
* Added Saliency module.
 +
* Added ImgHash module.
 +
* Added AKAZEFeatureFinder
 +
* Return the essential mat in CvInvoke.FindEssentialMat
 +
* Added TrackerMedianFlow, TrackerBoosting, TrackerMIL, TrackerTLD, TrackerKCF and TrackerGOTURN from Tracking
 +
* Updated DNN module to match the Open CV 3.3 syntax
 +
* Change FPS type from int to double in VideoWriter
 +
* Added AnisotropicDiffusion and RollingGuidanceFilter in Ximgproc
 +
* Added AlignExposures from Photo
 +
* Added ApplyChannelGains from Xphoto
 +
* Added MSDDetector from Xfeatures2D
 +
* Added SVMSGD from Ml
  
  
==Emgu.CV-3.0.0-rc1==
+
====Bug Fixes====
Instruction to convert 2.4.x code to 3.0 can be found [[Tutorial#Upgrading_from_Emgu_CV_2.x_to_3.x | here]]
+
* Fixed a bug in iOS when loading PNG with ImreadModes.Grayscale
===Online Documentation===
+
* Fixed a bug in RotationMatrix2D.CreateRotationMatrix
[{{SERVER}}/wiki/files/3.0.0-rc1/document/index.html Browse]
+
* Fixed issue #35
 +
* Fixed issue #57
 +
* Fixed issue #70
  
===Change Log===
+
==Emgu.CV-3.2.0==
====Enhancements====
 
* Based on Open CV 3.0.0-rc1 release. For details, please see [http://opencv.org/opencv-3-0-rc1.html Open CV 3.0 rc1 release note]
 
* Added Windows Phone 8.1 support
 
* Added Unity 5.0 support
 
  
==Emgu.CV-3.0.0-alpha==
 
 
===Online Documentation===
 
===Online Documentation===
[{{SERVER}}/wiki/files/3.0.0-alpha/document/index.html Browse]
+
[{{SERVER}}/wiki/files/3.2.0/document/index.html Browse]
 
 
===Change Log===
 
====Enhancements====
 
* Based on [http://opencv.org/opencv-3-0-alpha.html Open CV 3.0.0-alpha] release. For details, please see [http://opencv.org/opencv-3-0-alpha.html Open CV 3.0 alpha release note]
 
* Use Open CV C++ interfaces instead of the C interface
 
* Support for Open CV's T-API
 
  
==Emgu.CV-2.4.10==
 
===Online Documentation===
 
[{{SERVER}}/wiki/files/2.4.10/document/index.html Browse]
 
 
===Change Log===
 
===Change Log===
====Enhancements====
+
* 3.2.0 is based on the Open CV 3.2 release
* Base on Open CV 2.4.10 release
+
* 3.2.0 supports Xamarin.Mac running under OSX. For the commercial license, we have included the pre-compiled OSX binary, along with demos that use Emgu CV with Xamarin.Mac for developing native OSX application, and a Xamarin.Forms project, where you can share your codes between Windows Store, Android, iOS and OSX platforms. Emgu CV for Mac OSX is also compatible with Visual Studio for Mac!
 +
* 3.2.0 upgraded Tesseract OCR 4.0-dev from v3.04. CUBE OCR engine has been replaced with the better LSTM OCR engine.
  
==Emgu.CV-2.4.9 Beta==
 
====Bug Fixes====
 
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=82 Bug 82], [{{SERVER}}/bugs/show_bug.cgi?id=25 Bug 25], [{{SERVER}}/bugs/show_bug.cgi?id=70 Bug 70], [{{SERVER}}/bugs/show_bug.cgi?id=75 Bug 75]
 
 
====Enhancements====
 
====Enhancements====
* Added support for Windows Store App
+
* Added XObjdetect module
* Fixed bugs in Android version. Android release is now out of beta
+
* Added back Bioinspired module
* OpenCL module and lots of functions added in this module.
+
* Added CvInvoke.GetOptimalNewCameraMatrix, CvInvoke.GroupRectangles, CvInvoke.InitCameraMatrix2D, CvInvoke.FilterSpeckles function
* updated opencv to the latest GIT version
+
* Added XImgprocInvoke.BilateralTextureFilter function, XImgprocInvoke.WeightedMedianFilter function, XImgproc.Thinning function, XImgproc.SelectiveSearchSegmentation class
* More color conversion type supported
+
* Added XFeatures2D.VGG, XFeatures2D.BoostDesc, XFeature2D.PCTSignatures, XFeatures2D.PCTSignaturesSQFD class
* Added LevMarqSparse bundle adjustment
+
* Added VariantionalRefinement class
* Added CvInvoke.cvChamferMatching
+
* Added Face.BIF class
* Added cvFastNlMeanDenoising
+
* Added XPhoto.Bm3dDenoising function
* Added CLAHE
+
* Added additional CalibType to match those in Open CV 3.2 release.
* Make cvFilter2D to support border type
+
* Added Stitch mode for Stitcher constructor.
* Added Dual TV L1 Optical Flow
+
* Added customizable Aruco dictionary.
* Added CvEstimateAffine3D
+
* Added MSER.DetectRegions function
* Added GpuVibe and GpuMOG2
+
* Added Dnn Tensorflow importer. Added Dnn.Blob.BatchFromImages function.
* Added CvInvoke.cvMinMaxIdx
+
* Added TextInvoke.MSERsToERStats function
* Added CvInvoke.cvDecodeImage
+
* For Tesseract OCR, Added TessResultRenderer, multiple GetText function, and separated Tesseract.SetImage and Tesseract.Recognize calls.
 +
* The non-cuda version of windows installer has included debugger visualizer for Visual Studio 2017.
 +
* Add scale / shift support to Matrix Convert<> [[https://github.com/emgucv/emgucv/pull/19 #19]]. Thanks to [[https://github.com/jaydcarlson jaydcarlson]]
 +
* Adds support for using DPMDetector class from opencv [[https://github.com/emgucv/emgucv/pull/24 #24]]. Thanks to [[https://github.com/jbruening jbruening]]
  
==Emgu.CV-2.4.9 Alpha==
 
 
====Bug Fixes====
 
====Bug Fixes====
* Fixed a bug in 2.4.2 where there the gpu build have a dependency on NVidia graphic card driver. This is a problem of Open CV 2.4.2 release. The 2.4.9 GPU build no longer required the present of NVidia graphic card driver on client machine
+
* Fixed a bug in the implementation of System.Drawing.Rectangle.Intersect & System.Drawing.RectangleF.Intersect
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=67 Bug 67]. Fixed GpuInvoke.MatchTemplate & GpuInvoke.MinMaxLoc.
+
* Fixed a bug in Image<Rgb, Byte>.Save function.
* Fixed a bug in tesseract ocr whitelist.  
+
* Fixed [[https://github.com/emgucv/emgucv/issues/13 issue #13 GC.AddMemoryPressure(StructSize.MIplImage) missing in Image.MapDataToImage()]]
 +
* Fixed [[https://github.com/emgucv/emgucv/issues/9 issue #9 Import Blob Image to Neural Net]]
 +
* Fixed [[https://github.com/emgucv/emgucv/issues/5 issue #5 Spelling mistake]]
  
====Enhancements====
+
==Emgu.CV-3.1.0-r16.12==
* Universal packing that combines both x86 and x64 binary in one package
 
* updated opencv to the latest GIT version
 
* Added BOWImageDescriptorExtractor, BOWKMeansTrainer
 
* Added Brisk
 
* Added armv7s and removed armeabi support for iOS.
 
* Android and iOS enhancements.
 
  
==Emgu.CV-2.4.2==
 
 
===Online Documentation===
 
===Online Documentation===
[{{SERVER}}/wiki/files/2.4.2/document/Index.html Browse]
+
[{{SERVER}}/wiki/files/3.1.0-r16.12/document/index.html Browse]
 +
 
 
===Change Log===
 
===Change Log===
====Bug Fixes====
+
* 3.1-r16.12 is based on the same Open CV 3.1 release, it has better coverage on Open CV functions, support more platforms and comes with bug fixes.  
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=60 Bug 60] & [{{SERVER}}/bugs/show_bug.cgi?id=61 Bug 61]. Fixed GpuInvoke.MatchTemplate & GpuInvoke.MinMaxLoc.
+
* 3.1-r16.12 CUDA build is based on CUDA 8.0 and support latest NVIDIA devices (e.g GTX 1080)
* Fixed dependency issues in Ubuntu package.
+
 
 
====Enhancements====
 
====Enhancements====
* Added OSX package in release build
+
* Commercial release for Windows Phone now include '''supports for UWP''' ( *An UWP project can target both Windows 10 Store and Windows Phone).
* Added VideoStab module
+
* Emgu CV for Xamarin iOS and Android is now compatible with the free version of Xamarin iOS and Android for Visual Studio & Xamarin Studio for Mac.
* Merge the cvexten_gpu unmanaged module to cvextern module
+
* Commercial release now '''support Xamarin Forms''' for Android, iOS and Windows UWP.
* Added CascadeClassifier class
+
* Added Emgu.CV.Aruco namespace that wraps Open CV's Aruco module.
* Added GpuMatchTemplateBuf class
+
* Added Emgu.CV.Dnn namespace that wraps Open CV's Dnn module. (Only support Windows Desktop, Linux and Android).
* Added Added EigenFaceRecognier, FisherFaceRecognizer and LBPHFaceRecognizer class
+
* Added Emgu.CV.Fuzzy namespace that wraps Open CV's Fuzzy module.
* Added CvInvoke.ApplyColorMap function.
+
* Added Emgu.CV.LineDescriptor namespace that wraps Open CV's LineDescriptor module.
* More color conversion code.
+
* Added Emgu.CV.Plot namespace that wraps Open CV's Plot module.
* Added CvInvoke.cvRectangleR function.
+
* Added Emgu.CV.Tracking namespace that wraps Open CV's Tracking module.
* Added sparse optical flow to GpuPyrLKOpticalFlow.
+
* Added Emgu.CV.Viz3d class that wraps Open CV's Viz3d module.
* Added DenseFeatureDetector, GFTTDetector, OpponentColorDescriptorExtractor.
+
* Added FlannBasedMatcher and AgastFeatureDetector for Features2D
* Added Freak descriptor extractor.
+
* Added Tonemap, Decolor and SeamlessClone, MergeExposures, CalibrateCRF from the Photo module.
* Use OpenTK for Simple3DReconstruction in Emgu CV example
+
* Added CovariantEstimation, SuperpixelLSC, SuperpixelSLIC, GraphSegmentation from the XImgproc module.
 +
* Added Get and Set WriterProperty to VideoWriter.  
 +
* Added Wrapper implementation for Stitching module, Stitcher.Stitch now returns the status.
 +
* Added IsValidWord, GetHOCRText for Tesseract OCR.  
 +
* Added GetTextSize in CvInvoke
 +
* Renamed Capture to VideoCapture to match the OpenCV class name.
 +
* Added Cuda.MulSpectrums.
 +
* Added GetBackgroundImage for BackgroundSubtractor.
  
====Android====
+
====Bug Fixes====
* Added x86 support for Android.
+
* Fixed a debugger visualizer crashing issue.
 +
* Fixed a bug when loading PNG files into Mat.
 +
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=142  bug 142]
 +
* Fixed a bug in ANN_MLP.setActivationFunction
  
====Known Issues====
+
==Emgu.CV-3.1.0==
* On Android, Open CV's drawing functions will crash. Please use Android's drawing functions instead.
 
  
==Emgu.CV-2.4.0==
 
 
===Online Documentation===
 
===Online Documentation===
[{{SERVER}}/wiki/files/2.4.0/document/Index.html Browse]
+
[{{SERVER}}/wiki/files/3.1.0/document/index.html Browse]
===Change Log===
 
* Added [[Emgu CV for iOS |commercial iOS version]] for iPhone and iPad
 
* Added [[Emgu CV for Android| Android beta version]] for public testing 
 
* Added Emgu.CV.ML.GBTrees
 
* Added BackgroundSubtractorMOG, BackgroundSubtractorMOG2
 
* Retina model
 
* BroxOpticalFlow
 
* Added CvBlob library
 
* More color conversion code. Added CV_INTER_LANCZOS4 interpolation type
 
* Event based Capture class
 
* Added ORBDetector
 
* Added Opponent SIFT, Opponent Brief functions
 
* Added Features2DToolbox.DrawKeypoints function
 
 
 
* Gpu components are built with CUDA 4.2
 
* More class in Emgu.CV.GPU:
 
** TargetArchs
 
** GpuFarnebackOpticalFlow
 
** GpuGoodFeaturesToTrackDetector
 
** GpuPyrLKOpticalFlow
 
** Stitcher for image stitching
 
* Renamed GpuDevice to GpuDeviceInfo.
 
* More functions in Emgu.CV.Gpu.GpuInvoke class including:AddWeighted, Pow, Gemm, Reduce, Rotate, CopyMakeBorder, SetDevice, MorphologyEx, GpuMatResize, GpuMatReshape, Canny
 
* Added stream support for many functions in Emgu.CV.GPU including: GpuInvoke.Remap, GpuBruteForceMatcher.KnnSingleMatch, etc.
 
* Added GpuHOGDescriptor.GetPeopleDetector48x96.
 
* Updated Gpu morphology operation to match latest opencv code.
 
* More parameters for GpuInvoke.Remap function.
 
  
==Emgu.CV-2.3.0==
 
===Online Documentation===
 
[{{SERVER}}/wiki/files/2.3.0/document/Index.html Browse]
 
 
===Change Log===
 
===Change Log===
* Added Emgu.CV.OCR using tesseract 3.0
+
* 3.1 release no longer support CUDA on x86, CUDA 7.0 release has dropped x86 support.
* More functions in Emgu.CV.GPU including
 
** Build with CUDA 4.0
 
** Added GpuCascadeClassifier for face detection using GPU
 
** Added GpuSURFDetector for SURF using GPU
 
** Added GpuBruteForceMatcher
 
** Added GpuDisparityBilateralFilter
 
** And too many to be listed.
 
* Added LatentSvmDetector
 
* Added CvInvoke.Solve, CvInvoke.cvEstimateRigidTransform functions
 
* Added BriefDescriptorExtractor
 
* Added <code>SURFDetector.ComputeDescriptorsRaw(Image<Bgr, Byte> image, VectorOfKeyPoint keyPoints)</code> function to computer SURF descriptors using Opponent Color.
 
* Modified FindChessboardCorners such that if no corners is found, null is returned. Modified DrawChessboardCorners to accommodate the change.
 
* Improved Feature2DTracker
 
* Added adaptive threshold as an exposable object in the ImageBox.
 
* Fix POSIT's PInvoke module: It should be Calib3d instead of Imgproc
 
* Added support for ImageBox to display GpuImage.
 
* Added GridAdaptedFeatureDetector
 
* Added BruteForceMatcher
 
* Added KinectCapture class. (Only supported in the emgucv package that is build with openni)
 
  
==Emgu.CV-2.2.1==
+
====Enhancements====
===Online Documentation===
+
* Based on Open CV 3.1.0 release. For details, please see [http://opencv.org/opencv-3-1.html Open CV 3.1 release note]
[{{SERVER}}/wiki/files/2.2.1/document/Index.html Browse]
+
* In this release, all projects except Emgu.CV.UI have been converted to shared projects. There is a new <code>Emgu.CV.World</code> project that references all the shared projects ( except Emgu.CV.UI ) and can be compiled to a single dll.
===Change Log===
+
* Unity 3D release have Windows 10 support. Windows Store and Windows Phone for Visual Studio will only support Windows 8.1 project type. We will bring Windows 10 UWP project type support for Visual Studio project in the next release.
* The [[Licensing:#Commercial_License|commercial version]] is built with [http://software.intel.com/en-us/articles/intel-composer-xe Intel Composer XE 2011], [http://software.intel.com/en-us/articles/intel-ipp/ IPP 7.0] for optimal performance. It is also built with the commercial version of [http://www.threadingbuildingblocks.org TBB] for multi-threading support.
+
* Emgu CV for Xamarin Android release now supports x86_64 and arm64_v8a architectures.
* Beta support of GPU processing is included in Emgu.CV.GPU project. (Note: API might be changed in the next version as this is currently under heavy development)
+
* Added Tesseract OCR support for Windows Phone 8.1 and Windows Store 8.1
* [[Pedestrian Detection in CSharp | Pedestrian Detection Example]] will use GPU if a compatible device is detected in the running system.
+
* Added XamarinForms demo for Android and IOS.
* Build with OpenCV 2.2 branch rev. 4644
+
* Added fish-eye calibration class.
* This version is compiled with VS2008 (The GPU module can only be compiled with VS2008). You will needs to '''install MSVCRT 9.0 SP1 for dependency''', the windows installer will do this for you automatically. If you download the zip file, you need to run the redistributable included in the package.
+
* Added ConnectedComponents in CvInvoke.
 
+
* Added the optional mask parameter to CvInvoke.MatchTemplate function
==Emgu.CV-2.2.0.0==
+
* Added functions to allow programmatically select the Open CL device (CvInvoke.OclSetDefaultDevice)
===Online Documentation===
+
* Added SimpleBlobDetectorParams such that we can change the default parameters for SimpleBlobDetector
[{{SERVER}}/wiki/files/2.2.0.0/document/Index.html Browse]
 
  
===Change Log ===
 
 
====Bug Fixes====
 
====Bug Fixes====
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=11 Bug 11]: Image<TColor, TDepth>._MorphologyEx and MorphologyEx exists a bug of ArgumentNullException
+
* Fixed a bug in UMat.Split, added dot product for UMat
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=12 Bug 12]: Miss finding contours functions step by step
+
* Fixed a bug in FloodFill where the bounding rectangle is not being returned.
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=14 Bug 14]: Wrong cvCalibrateCamera2 DllImport declaration causes FPU stack overflow
+
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=133 Bug 133] & [{{SERVER}}/bugs/show_bug.cgi?id=166 Bug 166]
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=15 Bug 15]: Wrong DllImport prototype for cvUndistort2 leads to asserts in OpenCV
+
==Emgu.CV-3.0.0==
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=21 Bug 21]: Expose HOGDescriptor's compute function to further feed into learning algorithms
 
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=23 Bug 23]: Change the calling convention of all Pinvoke calls to CallingConvention.CDEL
 
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=30 Bug 30]: (for MCvKalman structure) multiple kinds of members with same name
 
* Fixed the signature for cvProjectPoints2, cvStereoCalibrate, cvStereoRectifyUncalibrate and cvStereoRectify.
 
* Fixed the signature for CvInvoke.cvStartReadSeq.
 
* Fixed a memory leak in DenseHistogram class.
 
  
====Enhancements====
+
Instruction to convert 2.4.x code to 3.0 can be found [[Tutorial#Upgrading_from_Emgu_CV_2.x_to_3.x | here]]
* Added support for Visual Studio 2010
 
* Added CvGaussBGStatModel. Thanks to jacovdm.
 
* Added Features2D namespace for feature detectors.  
 
**Moved all feature detectors to the Features2D namespace.
 
**Added SIFTDetector.
 
**Added FastDetector.
 
**Added Features2DTracker as a more generic replacement for SURFTracker.
 
**Renamed MCvSurfParams to SURFDetector.
 
* Added Emgu.Tiff namespace for writing Geotiff and tile-tiff.
 
* Eliminated the dependency on zlib.net. Use the unmanaged zlib in OpenCV for compression and decompression.
 
* Added Quaternions rotation implementation
 
* Added support for fast conversion from Format32bppRgb to Image<,> class
 
* Added Check range function for CvArray
 
* Added Flann.Index3D for indexing 3D points
 
* Added two QT related fields for MCvFont to match OpenCV svn
 
* Wrapped CvInvoke.cvPyrMeanShiftFiltering function
 
* Changed the RTreeClassifier.Train function signature to match OpenCV svn
 
* Use BufferedStream to improve the performance of BinaryFileStorage
 
* Updated IntrinsicCameraParameters to support 8 distortion coefficient.
 
* Added DataLogger class for unmanaged code (C/ C++) to log data / message back to managed code via callback.
 
  
==Emgu.CV-2.1.0.0==
 
 
===Online Documentation===
 
===Online Documentation===
[{{SERVER}}/wiki/files/2.1.0.0/document/Index.html Browse]
+
[{{SERVER}}/wiki/files/3.0.0/document/index.html Browse]
  
===Change Log ===
+
===Change Log===
* Updated to use OpenCV 2.1
+
====Enhancements====
* Configured CMake to build Rpm package on Fedora
+
=====Compares to 3.0.0-rc1=====
* Configured CMake to build Debian package on Ubuntu
+
* Based on Open CV 3.0.0 release. For details, please see [http://opencv.org/opencv-3-0.html Open CV 3.0 release note]
* Added StereoSGBM class
+
* All versions of Emgu CV except the CUDA builds now use a single unmanaged dll (cvextern.dll) instead of the multiple dlls in prior releases (cvextern.dll, opencv_core{xxx}.dll, opencv_imgproc{xxx}.dll, etc). We are able to dramatically reduce the size of the dll compares to the old multi-file releases. For example, 3.0.0 open source final release, x86, non-cuda unmanaged binary contains a single cvextern.dll that is ~10MB in size. While the same build in 2.4.10 open source final release contains 19 files that is ~18MB in size. All CUDA build will still use the multi-file deployment model. We would like to make our CUDA build a single-dll release but we are having technical difficulty linking against static library that contains CUDA device code (The resulting binary will always cause Stack Overflow when CUDA code are called).
* Added GrabCut in Image<,> and CvInvoke class
+
* Android version is now build with OpenMP support from Android NDK r10e. This enable multi-threading on mobile devices. Our Android demo app, such as Face Detection program now runs 4 times faster on a Quad-core android phone (tested on an HTC One M7).
* Added cvEigenVV function to CvInvoke class
+
* Added support for Debugger Visualizer for Visual Studio 2015
* Added Parameters property in SVM class
+
* Dropped support for Debugger Visualizer for Visual Studio 2008
* Added auto-tuned Index and radius search in Flann.Index class
+
* The 64 bit unmanaged dlls are built with CUDA 7.0
* Added DetectFeature and ComputeDescriptor function in MCvSURFParams
+
* The 32 bit unmanaged dlls are built with CUDA 6.5. The reason is that CUDA 7.0 no longer provide 32bit NPP library, which is necessary to compile 32-bit Open CV CUDA build. Moving forward, future versions of Emgu CV may not include 32bit CUDA release if NVidia drop supports for 32 bit NPP library in CUDA SDK.
* Added filter in ImageViewer when image save dialog is opened
 
* Added FAST_CHECK enumeration to CALIB_CB_TYPR for CvInvoke.cvFindChessboardCorners
 
* Added Quaternions structure for 3D rotation
 
* Added Cuboid class to define a 3D region
 
* Added GeodeticCoordinate structure to represent Latitude, Longitude and Altitude
 
* Added TransformationWGS84 to transform GeodeticCoordinate to local coordinate and back 
 
* Added SparseMatrix
 
* Added more functions in MCvPoint3D64f structure
 
* Added cvCvtPixToPlane in CvInvoke class
 
* Fixed a bug in cvMulTransposed function signature
 
* Fixed a bug in HOGDescriptor's detectMultiScale function when no object is detected
 
* Fixed a bug in Farneback optical flow
 
* Fixed a bug in AdaptiveSkinDetector.Process function
 
* Fixed a bug in BlobTracker constructor when using BLOBTRACKER_TYPE.CC, thanks to jaco
 
* Fixed run-time serialization bug on Image<,> class when ROI is specified
 
* Fixed the save image bug, where Bitmap.Save(String filename) always results in saving to PNG format, regardless of the filename extension.
 
* Capture class can now accept URL for network streaming. Fixed [{{SERVER}}/bugs/show_bug.cgi?id=6 Bug 6], thanks to Christian Richardt.  
 
* Fixed a bug in DenseHistogram.BackProjectPatch & CvInvoke.cvCalcBackProjectPatch function. See [{{SERVER}}/bugs/show_bug.cgi?id=7 Bug 7] and [{{SERVER}}/bugs/show_bug.cgi?id=8 Bug 8], thanks to xrwang.
 
  
===Known Issues===
+
=====Highlights since 2.4.10=====  
* Emgu.CV.VideoSurveillance.BGCodeBookModel is broken, not sure if this is bug in Emgu or OpenCV, any help on fixing this is welcome.
+
* Windows Phone 8.1 support
* Emgu.CV.VideoSurveillance.BGStatModel<Bgr>'s constructor with Emgu.CV.CvEnum.BG_STAT_TYPE.GAUSSIAN_BG_MODEL is failing. There is a bug in OpenCV 2.1, it has been reported and fixed in current OpenCV svn.
+
* Unity 5.0 support
 +
* Using Open CV's C++ interface
 +
* Open CV's T-API support
 +
* Optional parameters support in Emgu CV library
 +
* Emgu CV 3.0 can use OpenCL (GPU computing) on certain Android devices. A list of OpenCL supported Android phone can be found [http://arrayfire.com/opencl-on-mobile-devices/ here]. Note that Open CV requires OpenCL 1.2, so only android phone with OpenCL 1.2 profile will be able to run Emgu CV OpenCL programs.
  
==Emgu.CV-2.0.1.0==
+
==Emgu.CV-3.0.0-rc1==
 +
Instruction to convert 2.4.x code to 3.0 can be found [[Tutorial#Upgrading_from_Emgu_CV_2.x_to_3.x | here]]
 
===Online Documentation===
 
===Online Documentation===
[{{SERVER}}/wiki/files/2.0.1.0/Index.html Browse]
+
[{{SERVER}}/wiki/files/3.0.0-rc1/document/index.html Browse]
  
===Change Log ===
+
===Change Log===
* '''Based on OpenCV 2.0'''
+
====Enhancements====
* Added Octree class and [[Pedestrian_Detection_in_CSharp| HOGDescriptor (Histogram-of-Oriented-Gradients)]] class
+
* Based on Open CV 3.0.0-rc1 release. For details, please see [http://opencv.org/opencv-3-0-rc1.html Open CV 3.0 rc1 release note]
* Added Flann.Index for fast approximate nearest neighbors.
+
* Added Windows Phone 8.1 support
* Added FAST corner detector
+
* Added Unity 5.0 support
* Added LePetit key point detector
 
* Rename MCvStarDetectorParams to StarDetector
 
* Added OpticalFlow.Farneback and CvInvoke.CvCalcOpticalFlowFarneback function
 
* 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
 
* Make Map<,> class runtime serializable. This enable [[Debugger Visualizer]] for Map<,> as well.
 
* Fixed a bug in InPaint function
 
* Fixed a bug in Image<TColor, TDepth>.SmoothBilatral, [{{SERVER}}/bugs/show_bug.cgi?id=5 bug 5]. Thanks to Brendan Tompkins
 
* Fixed a bug in concate horizontal. Thanks to Luca
 
 
 
==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 [http://sourceforge.net/project/showfiles.php?group_id=216500  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 [http://www.microsoft.com/downloads/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=en MSVCRT 9.0 SP1] for dependency'''.
 
  
 +
==Emgu.CV-3.0.0-alpha==
 
===Online Documentation===
 
===Online Documentation===
[{{SERVER}}/wiki/files/2.0.0.0/Index.html Browse]
+
[{{SERVER}}/wiki/files/3.0.0-alpha/document/index.html Browse]
  
 
===Change Log===
 
===Change Log===
* [[Emgu CV]] 2.0 requires .NET 3.5.
+
====Enhancements====
* The included [[OpenCV]] dlls are built with Visual Studio 2008 and requires [http://www.microsoft.com/downloads/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=en MSVCRT 9.0 SP1]
+
* Based on [http://opencv.org/opencv-3-0-alpha.html Open CV 3.0.0-alpha] release. For details, please see [http://opencv.org/opencv-3-0-alpha.html Open CV 3.0 alpha release note]
* A feature rich [[ImageBox]] with [[ImageBox#PanAndZoom | Pan and Zoom]] support.
+
* Use Open CV C++ interfaces instead of the C interface
* Added [[Debugger Visualizer]] for Image, Matrix MatDN and DenseHistogram for Visual Studio 2005/2008
+
* Support for Open CV's T-API
* 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, [[Mushroom Poisonous Prediction (Decision Tree) in CSharp | Decision Tree ]] and Random Tree.
+
 
* Fixed [{{SERVER}}/bugs/show_bug.cgi?id=3 a bug in cvReduce function]
+
==Version History 2.x Archive==
* Feature Tree can now be constructed either as Spill-Tree or K-d Tree
+
[[Version History 2.x]]
* 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 ([http://en.wikipedia.org/wiki/Maximally_stable_extremal_regions 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.
 
  
==Version Histroy 1.x archive==
+
==Version History 1.x Archive==
 
[[Version History 1.x]]
 
[[Version History 1.x]]

Latest revision as of 18:02, 31 October 2017

Emgu.CV-3.3.0

Online Documentation

Browse

Change Log

  • 3.3.0 is based on the Open CV 3.3 release
  • 3.3.0 Windows release is built with Visual Studio 2017. CUDA release is built with CUDA 9.0

Enhancements

  • Added .Net Standard 1.4 compilation support, thanks to Bernd Baumanns. You will need to compile from source code using the solution file under Solution\Windows.Desktop\Emgu.CV.sln and compile the project Emgu.CV.World.NetStandard1_4.
  • Added Saliency module.
  • Added ImgHash module.
  • Added AKAZEFeatureFinder
  • Return the essential mat in CvInvoke.FindEssentialMat
  • Added TrackerMedianFlow, TrackerBoosting, TrackerMIL, TrackerTLD, TrackerKCF and TrackerGOTURN from Tracking
  • Updated DNN module to match the Open CV 3.3 syntax
  • Change FPS type from int to double in VideoWriter
  • Added AnisotropicDiffusion and RollingGuidanceFilter in Ximgproc
  • Added AlignExposures from Photo
  • Added ApplyChannelGains from Xphoto
  • Added MSDDetector from Xfeatures2D
  • Added SVMSGD from Ml


Bug Fixes

  • Fixed a bug in iOS when loading PNG with ImreadModes.Grayscale
  • Fixed a bug in RotationMatrix2D.CreateRotationMatrix
  • Fixed issue #35
  • Fixed issue #57
  • Fixed issue #70

Emgu.CV-3.2.0

Online Documentation

Browse

Change Log

  • 3.2.0 is based on the Open CV 3.2 release
  • 3.2.0 supports Xamarin.Mac running under OSX. For the commercial license, we have included the pre-compiled OSX binary, along with demos that use Emgu CV with Xamarin.Mac for developing native OSX application, and a Xamarin.Forms project, where you can share your codes between Windows Store, Android, iOS and OSX platforms. Emgu CV for Mac OSX is also compatible with Visual Studio for Mac!
  • 3.2.0 upgraded Tesseract OCR 4.0-dev from v3.04. CUBE OCR engine has been replaced with the better LSTM OCR engine.

Enhancements

  • Added XObjdetect module
  • Added back Bioinspired module
  • Added CvInvoke.GetOptimalNewCameraMatrix, CvInvoke.GroupRectangles, CvInvoke.InitCameraMatrix2D, CvInvoke.FilterSpeckles function
  • Added XImgprocInvoke.BilateralTextureFilter function, XImgprocInvoke.WeightedMedianFilter function, XImgproc.Thinning function, XImgproc.SelectiveSearchSegmentation class
  • Added XFeatures2D.VGG, XFeatures2D.BoostDesc, XFeature2D.PCTSignatures, XFeatures2D.PCTSignaturesSQFD class
  • Added VariantionalRefinement class
  • Added Face.BIF class
  • Added XPhoto.Bm3dDenoising function
  • Added additional CalibType to match those in Open CV 3.2 release.
  • Added Stitch mode for Stitcher constructor.
  • Added customizable Aruco dictionary.
  • Added MSER.DetectRegions function
  • Added Dnn Tensorflow importer. Added Dnn.Blob.BatchFromImages function.
  • Added TextInvoke.MSERsToERStats function
  • For Tesseract OCR, Added TessResultRenderer, multiple GetText function, and separated Tesseract.SetImage and Tesseract.Recognize calls.
  • The non-cuda version of windows installer has included debugger visualizer for Visual Studio 2017.
  • Add scale / shift support to Matrix Convert<> [#19]. Thanks to [jaydcarlson]
  • Adds support for using DPMDetector class from opencv [#24]. Thanks to [jbruening]

Bug Fixes

Emgu.CV-3.1.0-r16.12

Online Documentation

Browse

Change Log

  • 3.1-r16.12 is based on the same Open CV 3.1 release, it has better coverage on Open CV functions, support more platforms and comes with bug fixes.
  • 3.1-r16.12 CUDA build is based on CUDA 8.0 and support latest NVIDIA devices (e.g GTX 1080)

Enhancements

  • Commercial release for Windows Phone now include supports for UWP ( *An UWP project can target both Windows 10 Store and Windows Phone).
  • Emgu CV for Xamarin iOS and Android is now compatible with the free version of Xamarin iOS and Android for Visual Studio & Xamarin Studio for Mac.
  • Commercial release now support Xamarin Forms for Android, iOS and Windows UWP.
  • Added Emgu.CV.Aruco namespace that wraps Open CV's Aruco module.
  • Added Emgu.CV.Dnn namespace that wraps Open CV's Dnn module. (Only support Windows Desktop, Linux and Android).
  • Added Emgu.CV.Fuzzy namespace that wraps Open CV's Fuzzy module.
  • Added Emgu.CV.LineDescriptor namespace that wraps Open CV's LineDescriptor module.
  • Added Emgu.CV.Plot namespace that wraps Open CV's Plot module.
  • Added Emgu.CV.Tracking namespace that wraps Open CV's Tracking module.
  • Added Emgu.CV.Viz3d class that wraps Open CV's Viz3d module.
  • Added FlannBasedMatcher and AgastFeatureDetector for Features2D
  • Added Tonemap, Decolor and SeamlessClone, MergeExposures, CalibrateCRF from the Photo module.
  • Added CovariantEstimation, SuperpixelLSC, SuperpixelSLIC, GraphSegmentation from the XImgproc module.
  • Added Get and Set WriterProperty to VideoWriter.
  • Added Wrapper implementation for Stitching module, Stitcher.Stitch now returns the status.
  • Added IsValidWord, GetHOCRText for Tesseract OCR.
  • Added GetTextSize in CvInvoke
  • Renamed Capture to VideoCapture to match the OpenCV class name.
  • Added Cuda.MulSpectrums.
  • Added GetBackgroundImage for BackgroundSubtractor.

Bug Fixes

  • Fixed a debugger visualizer crashing issue.
  • Fixed a bug when loading PNG files into Mat.
  • Fixed bug 142
  • Fixed a bug in ANN_MLP.setActivationFunction

Emgu.CV-3.1.0

Online Documentation

Browse

Change Log

  • 3.1 release no longer support CUDA on x86, CUDA 7.0 release has dropped x86 support.

Enhancements

  • Based on Open CV 3.1.0 release. For details, please see Open CV 3.1 release note
  • In this release, all projects except Emgu.CV.UI have been converted to shared projects. There is a new Emgu.CV.World project that references all the shared projects ( except Emgu.CV.UI ) and can be compiled to a single dll.
  • Unity 3D release have Windows 10 support. Windows Store and Windows Phone for Visual Studio will only support Windows 8.1 project type. We will bring Windows 10 UWP project type support for Visual Studio project in the next release.
  • Emgu CV for Xamarin Android release now supports x86_64 and arm64_v8a architectures.
  • Added Tesseract OCR support for Windows Phone 8.1 and Windows Store 8.1
  • Added XamarinForms demo for Android and IOS.
  • Added fish-eye calibration class.
  • Added ConnectedComponents in CvInvoke.
  • Added the optional mask parameter to CvInvoke.MatchTemplate function
  • Added functions to allow programmatically select the Open CL device (CvInvoke.OclSetDefaultDevice)
  • Added SimpleBlobDetectorParams such that we can change the default parameters for SimpleBlobDetector

Bug Fixes

  • Fixed a bug in UMat.Split, added dot product for UMat
  • Fixed a bug in FloodFill where the bounding rectangle is not being returned.
  • Fixed Bug 133 & Bug 166

Emgu.CV-3.0.0

Instruction to convert 2.4.x code to 3.0 can be found here

Online Documentation

Browse

Change Log

Enhancements

Compares to 3.0.0-rc1
  • Based on Open CV 3.0.0 release. For details, please see Open CV 3.0 release note
  • All versions of Emgu CV except the CUDA builds now use a single unmanaged dll (cvextern.dll) instead of the multiple dlls in prior releases (cvextern.dll, opencv_core{xxx}.dll, opencv_imgproc{xxx}.dll, etc). We are able to dramatically reduce the size of the dll compares to the old multi-file releases. For example, 3.0.0 open source final release, x86, non-cuda unmanaged binary contains a single cvextern.dll that is ~10MB in size. While the same build in 2.4.10 open source final release contains 19 files that is ~18MB in size. All CUDA build will still use the multi-file deployment model. We would like to make our CUDA build a single-dll release but we are having technical difficulty linking against static library that contains CUDA device code (The resulting binary will always cause Stack Overflow when CUDA code are called).
  • Android version is now build with OpenMP support from Android NDK r10e. This enable multi-threading on mobile devices. Our Android demo app, such as Face Detection program now runs 4 times faster on a Quad-core android phone (tested on an HTC One M7).
  • Added support for Debugger Visualizer for Visual Studio 2015
  • Dropped support for Debugger Visualizer for Visual Studio 2008
  • The 64 bit unmanaged dlls are built with CUDA 7.0
  • The 32 bit unmanaged dlls are built with CUDA 6.5. The reason is that CUDA 7.0 no longer provide 32bit NPP library, which is necessary to compile 32-bit Open CV CUDA build. Moving forward, future versions of Emgu CV may not include 32bit CUDA release if NVidia drop supports for 32 bit NPP library in CUDA SDK.
Highlights since 2.4.10
  • Windows Phone 8.1 support
  • Unity 5.0 support
  • Using Open CV's C++ interface
  • Open CV's T-API support
  • Optional parameters support in Emgu CV library
  • Emgu CV 3.0 can use OpenCL (GPU computing) on certain Android devices. A list of OpenCL supported Android phone can be found here. Note that Open CV requires OpenCL 1.2, so only android phone with OpenCL 1.2 profile will be able to run Emgu CV OpenCL programs.

Emgu.CV-3.0.0-rc1

Instruction to convert 2.4.x code to 3.0 can be found here

Online Documentation

Browse

Change Log

Enhancements

  • Based on Open CV 3.0.0-rc1 release. For details, please see Open CV 3.0 rc1 release note
  • Added Windows Phone 8.1 support
  • Added Unity 5.0 support

Emgu.CV-3.0.0-alpha

Online Documentation

Browse

Change Log

Enhancements


Version History 2.x Archive

Version History 2.x

Version History 1.x Archive

Version History 1.x