OpenCV for Unity ver2.3.0 Release!
- Author: Enox Software
- Category: Update
- Tags: OpenCV for Unity
Version 2.3.0
[iOS]Added a function to automatically remove the simulator architecture(i386,x86_64) at build time. [Common] Improved OpenCVForUnityMenuItem.setPluginImportSettings() method.Related posts
Dlib FaceLandmark Detector ver1.1.3 Release!
Version 1.1.3[Common]Fixed to improve the pose estimation performance.[Common] Changed DetectLandmarkArray (int left, int top, int width, int height) to DetectLandmarkArray (double left, double top, double width, double height).[WebGL]Fixed Utils.getFilePathAsync() method.
- Author: Enox Software
- Category: Update
- Tags: Dlib FaceLandmark Detector
OpenCV for Unity ver2.3.1 Release!
Version 2.3.1 [Common]Updated to OpenCV3.4.2. [Android,UWP]Fixed Utils.setDebugMode() method on the IL2CPP backend. [Common]Added DnnObjectDetectionExample and DnnObjectDetectionWebCamTextureExample.
- Author: Enox Software
- Category: Update
- Tags: OpenCV for Unity
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 [ […]
- Author: Enox Software
- Category: Tips
- Tags: OpenCV for Unity