NO IMAGE

OpenCV for Unity ver2.3.8 Release!

Version 2.3.8 [Common]Updated to OpenCV4.2.0. [UWP]Added ARM64 Architecture. [WebGL]Added opencvforunity.bc with multi-threading enabled. [Common]Added FastNeuralStyleTransferExample and LibFaceDetectionExample. [Common]Added MatIndexer class and MatUtils class. [Common]Update ComicFilterExample, VideoCaptureExample, OpenPoseExample and MatBasicProcessingExample.

OpenCV for Unity ver2.3.7 Release!

Version 2.3.7 [WebGL]Fixed build errors that occur when DevelopmentBuild is enabled on the WegGL platform. [Common]Added optimization code using NativeArray class. ( require PlayerSettings.allowUnsafeCode flag, “OPENCV_USE_UNSAFE_CODE” ScriptingDefineSymbol and Unity2018.2 or later. ) [iOS]Fixed build errors that occur on the iOS platform with Unity2019.3 or later. [Common]Updated to WebCamTextureToMatHelper.cs v1.1.1.

Dlib FaceLandmark Detector ver1.2.9 Release!

Version 1.2.9 [Common]Added optimization code using NativeArray class. ( require PlayerSettings.allowUnsafeCode flag, “DLIB_USE_UNSAFE_CODE” ScriptingDefineSymbol and Unity2018.2 or later. ) [Common]Added support for Unicode file path ( objectDetectorFilePath and shapePredictorFilePath ). [Common]Added ImageOptimizationHelper to ARHeadWebCamTextureExample. [Common]Added some converter methods to OpenCVForUnityUtils.cs.

How to catch native OpenCV’s errors code (CVException handling)

In order to display the native opencv’s error code, please enclose the code in Utils.setDebugMode(true) and Utils.setDebugMode(false). Example Code: // // CVException handling example // // 32F, channels=1, 3×3 Mat m1 = new Mat (3, 3, CvType.CV_32FC1); m1.put (0, 0, 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f); // 8U, channels=1, 3×3 Mat m2 = new Mat (3, 3, CvType.CV_8UC1); m2.put (0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9); // dump Debug.Log (“”m1=”” + m1); Debug.Log (“”m1.dump()=”” + m1.dump ()); Debug.Log (“”m2=”” + m2); Debug.Log (“”m2.dump()=”” + m2.dump ()); #if UNITY_STANDALONE || UNITY_EDITOR // Publish CVException to Debug.LogError. Utils.setDebugMode (true, false); Mat m3 = m1 / m2; Utils.setDebugMode (false); // Throw CVException. Utils.setDebugMode (true, true); try { Mat m4 = m1 / m2; } catch (Exception e) { Debug.Log (“”CVException: “” + e); } Utils.setDebugMode (false); #else Debug.Log (“”The setDebugMode method is only supported on WIN, MAC and LINUX.””); #endif Execution Result: m1=Mat [ 3*3*CV_32FC1, isCont=True, isSubmat=False, nativeObj=0x820637680, dataAddr=0x820295296 ] m1.dump()=[1, 2, 3; 4, 5, 6; 7, 8, 9] m2=Mat [ 3*3*CV_8UC1, isCont=True, isSubmat=False, nativeObj=0x820637792, dataAddr=0x820619712 ] m2.dump()=[ 1, 2, 3; 4, 5, 6; 7, 8, 9] core::divide_12() : OpenCV(3.4.1-dev) C:\Users\xxxxx\Desktop\opencv\modules\core\src\arithm.cpp:683: error: (-5) When the input arrays in add/subtract/multiply/divide functions have different types, the output array type must be explicitly specified in function cv::arithm_op m3=Mat [ […]