Search Unity

  1. New Unity Live Help updates. Check them out here!

    Dismiss Notice

[RELEASED] OpenCV for Unity

Discussion in 'Assets and Asset Store' started by EnoxSoftware, Oct 30, 2014.

  1. rpassareti_

    rpassareti_

    Joined:
    Jan 18, 2018
    Posts:
    4
    hi

    i'm using OpenCV with RealTime FaceRecognition Example, and I'm having some trouble saving the faces.

    If I start the Demo Scene, save and load faces, without stopping the application, works without problem.

    But when I stop the application, start again, load the faces that I saved, add a new face on it and try to save, the file that creates with the faces infos, when I hit the save button, it delete all the information of the other faces that was there, and save nothing on it.

    any idea/help?

    thanks

    Using:
    Unity 2019.2.3f1
    OpenCV v2.3.7
    RealTime FaceRecognition v1.0.5
    macOS Mojave v10.14.6
     
  2. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Thank you very much for reporting.
    Does this problem occur on UnityEditor?
     
  3. unity_WPzfLehdpNGaDQ

    unity_WPzfLehdpNGaDQ

    Joined:
    May 2, 2018
    Posts:
    3
    Hi,
    I'm using Full Version of OpenCV for unity and when I'm running on editor everything works just fine. While building for Android everything is fine also, no error is displayed. But when running on device it gives this exception:

    Code (CSharp):
    1.  
    2. DllNotFoundException: opencvforunity
    3. E/Unity   ( 7431):   at (wrapper managed-to-native) OpenCVForUnity.CoreModule.Mat.core_Mat_n_1Mat__III(int,int,int)
    4. E/Unity   ( 7431):   at OpenCVForUnity.CoreModule.Mat..ctor (System.Int32 rows, System.Int32 cols, System.Int32 type) [0x00006] in <d591942a2b0f4719857f74efe6d52c69>:0
    5.  
    I followed your setup video. My StreamingAssets folder is Assetf folder and I did set Plugin import settings.
    I'm using Unity 2019.2.17f1 and Windows 10.
    I would really appreciate thay if you can provide detailed solution with every step.
    Thank you.
     
  4. rpassareti_

    rpassareti_

    Joined:
    Jan 18, 2018
    Posts:
    4
    yes
    on editor and on windows build/osx build
     
  5. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Is Target Architectures set as follows?
    android_importsettings.PNG
    android_importsettings1.PNG
    android_importsettings2.PNG
     
  6. unity_WPzfLehdpNGaDQ

    unity_WPzfLehdpNGaDQ

    Joined:
    May 2, 2018
    Posts:
    3
  7. rpassareti_

    rpassareti_

    Joined:
    Jan 18, 2018
    Posts:
    4

    I think I found the problem and the solution

    I changed the class to only save 1 face of the person, and when you load, and try to save a new one face only of a new person, it crashes
    so I changed to keep saving every faces as possible inside a time.

    so the problem was created and solved :D
     
  8. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    The problem seems to occur when training the collected faces fails.
    As a workaround, add the following code to WebCamTextureRealTimeFaceRecognitionExample.cs at line 847.

    Code (CSharp):
    1.  
    2.                         // If the reconstructed face is incorrect, return to COLLECT FACES mode.
    3.                         if (reconstructedFace.empty())
    4.                             m_mode = MODES.MODE_COLLECT_FACES;
    5.  
     
  9. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    OpenCVForUnity 2.3.4 and earlier versions support Android 4.
     
  10. Livedtrid

    Livedtrid

    Joined:
    Mar 12, 2015
    Posts:
    3
    Hello, I have a problem with Hololens 2, I tried to build UWP ARM32 and ARM64, I cannot get the camera to work. The Log says: OnWebCamTextureToMatHelperErrorOccurred TIMEOUT.
    Everything works just fine on Hololens 1.

    Unity 2019.1.14f1
    MRTK 2.2.0
    OpenCV4Unity 2.3.8
     
  11. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Is the project you tried using HoloLensCameraStream?
    https://github.com/EnoxSoftware/HoloLensWithOpenCVForUnityExample

    Is WebCam in the Capabilities setting enabled?
    windowsstoreappcapabilities.PNG
     
  12. xylss

    xylss

    Joined:
    Mar 15, 2017
    Posts:
    3
    hi, i would like to ask if i want to compare two photos similarity, for example i have one photo in database then in game i screenshot, can i compare these two photos? can this asset help me to do the job?
     
  13. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Feature2DExample is included in OpenCVForUnity.
    https://github.com/EnoxSoftware/Ope...atures2d/Feature2DExample/Feature2DExample.cs
    feature2d.png

    Since this asset is a clone of OpenCV4.2.0 Java, you are able to use the same API as OpenCV4.2.0 Java.
     
  14. charith-madusanka

    charith-madusanka

    Joined:
    Feb 10, 2017
    Posts:
    4
    how to detect unity 3D game objects inside the unity editor?
    without 2D image.

    Example?
     
  15. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    charith-madusanka likes this.
  16. edwinerdiyana

    edwinerdiyana

    Joined:
    Dec 10, 2019
    Posts:
    9
    Hi Enox Software... I beg for your help. Can you generate code for applying the SURF or KAZE algorithm in OpenCVFoUnity to augmented reality. I really need, please. :(
     
  17. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Unfortunately, I don't have ARExample using SURF or KAZE algorithms.
    MarkerLessARExample uses the ORB algorithm, but if you want to use other algorithms, change the detector and extractor to other algorithms.
    https://github.com/EnoxSoftware/Mar...ample/MarkerLessAR/PatternDetector.cs#L97-L98
     
  18. edwinerdiyana

    edwinerdiyana

    Joined:
    Dec 10, 2019
    Posts:
    9
    When i try to use the SURF parameter in OpenCVForUnity, the webcam always force close. Can you help me?
     
  19. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    The native library included in OpenCVForUnity is built with the OPENCV_ENABLE_NONFREE flag disabled. To use the SIFT and SURF algorithms, rebuild OPENCV library with OPENCV_ENABLE_NONFREE enabled. For more details, see the section on “How to use OpenCV Dynamic Link Library with customized build settings” in ReadMe.pdf.
     
  20. edwinerdiyana

    edwinerdiyana

    Joined:
    Dec 10, 2019
    Posts:
    9
    Okay... I did not understand to do that. Can you make it for me? I beg you to help me. : ')
     
  21. edwinerdiyana

    edwinerdiyana

    Joined:
    Dec 10, 2019
    Posts:
    9
    If you want, I want you to make a configuration with SURF / SIFT that can be used. And give it to me. : ')
     
  22. NGC6543

    NGC6543

    Joined:
    Jun 3, 2015
    Posts:
    211
    Hi @EnoxSoftware, I recently tried to build my iOS app using Unity Cloud Build, and encountered an issue.
    I have a custom script that uploads the final .ipa to Appstore, and while trying to upload the binary, it is rejected with following errors :
    The UCB used Xcode 11.2.1 to build the ipa.
    I used to test with local build and it was built and ran OK. So this seems to be the problem when you actually submit to Appstore.

    For the unsupported architecture, I can change it to ARM64 only from the Unity Inspector, but I'm not sure what I can do with the later ones. If you have any insight, please let me know.

    + Edit
    It was indeed the Appstore problem. Locally built app also rejected from the Appstore saying the same problem. I'll try to download the latest OpenCVForUnity from the AssetStore and see if that fixes the issue.

    + Edit
    Updating to 2.3.8 soloved the issue. (ios post build works)
     
    Last edited: Jan 30, 2020
    EnoxSoftware likes this.
  23. unity_WPzfLehdpNGaDQ

    unity_WPzfLehdpNGaDQ

    Joined:
    May 2, 2018
    Posts:
    3
    Hi, I'm trying to use MatIndexer class and in documentation it says that it's supposed to be in OpenCVForUnity.UtilsModule.MatIndexer. But compiler says that MatIndexer is not in that namespace. Any help? Thank you!
     
  24. hein30

    hein30

    Joined:
    Nov 8, 2018
    Posts:
    4
    Hi, I am trying to run example scenes for HoloLens on HL2, and it does not work with the following error shown in the attached image. Any help? Thank you.
     

    Attached Files:

  25. hein30

    hein30

    Joined:
    Nov 8, 2018
    Posts:
    4
    I built the HoloLensCamStream plug-in in ARM mode.
     
  26. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    I haven't actually tried it, but I think that for the HoloLensCameraStream plug-in to work with HoloLens 2, a new HoloLensCameraStream.dll with ARM64 architecture needs to be built and added to the project.
    The same topic within issues:
    https://github.com/VulcanTechnologies/HoloLensCameraStream/issues/63
     
  27. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    1. Build the OpenCV dynamic library.
    Download OpenCV 4.2.0 repository ( git: opencv , opencv-contrib ).

    BUILD_SHARED_LIBS=1
    OPENCV_ENABLE_NONFREE:BOOL=1

    cmake_nonfree_settings.PNG

    2. Copy “OpenCVForUnity\Extra\dll_version\Windows\” to “OpenCVForUnity\Plugins\Windows\”. And, Copy the built dll file to “OpenCVForUnity\Plugins\Windows\”.
    win_dynamic_importsettings.PNG


    nonfree_surf_example.PNG
    Code (CSharp):
    1. using UnityEngine;
    2. using UnityEngine.SceneManagement;
    3. using System.Collections;
    4. using OpenCVForUnity.CoreModule;
    5. using OpenCVForUnity.ImgprocModule;
    6. using OpenCVForUnity.Features2dModule;
    7. using OpenCVForUnity.UnityUtils;
    8. using OpenCVForUnity.Xfeatures2dModule;
    9.  
    10. namespace OpenCVForUnityExample
    11. {
    12.     /// <summary>
    13.     /// Feature2D Example
    14.     /// An example of descriptor extraction and descriptor matching.
    15.     /// http://docs.opencv.org/3.1.0/d5/dde/tutorial_feature_description.html
    16.     /// </summary>
    17.     public class Feature2DExample : MonoBehaviour
    18.     {
    19.         // Use this for initialization
    20.         void Start ()
    21.         {
    22.             Texture2D imgTexture = Resources.Load ("lena") as Texture2D;
    23.            
    24.             Mat img1Mat = new Mat (imgTexture.height, imgTexture.width, CvType.CV_8UC3);
    25.             Utils.texture2DToMat (imgTexture, img1Mat);
    26.             Debug.Log ("img1Mat.ToString() " + img1Mat.ToString ());
    27.  
    28.             Mat img2Mat = new Mat (imgTexture.height, imgTexture.width, CvType.CV_8UC3);
    29.             Utils.texture2DToMat (imgTexture, img2Mat);
    30.             Debug.Log ("img2Mat.ToString() " + img2Mat.ToString ());
    31.  
    32.  
    33.             float angle = UnityEngine.Random.Range (0, 360), scale = 1.0f;
    34.  
    35.             Point center = new Point (img2Mat.cols () * 0.5f, img2Mat.rows () * 0.5f);
    36.  
    37.             Mat affine_matrix = Imgproc.getRotationMatrix2D (center, angle, scale);
    38.  
    39.             Imgproc.warpAffine (img1Mat, img2Mat, affine_matrix, img2Mat.size ());
    40.  
    41.  
    42.             //ORB detector = ORB.create ();
    43.             //ORB extractor = ORB.create ();
    44.             SURF detector = SURF.create();
    45.             SURF extractor = SURF.create();
    46.  
    47.             MatOfKeyPoint keypoints1 = new MatOfKeyPoint ();
    48.             Mat descriptors1 = new Mat ();
    49.  
    50.             detector.detect (img1Mat, keypoints1);
    51.             extractor.compute (img1Mat, keypoints1, descriptors1);
    52.  
    53.             MatOfKeyPoint keypoints2 = new MatOfKeyPoint ();
    54.             Mat descriptors2 = new Mat ();
    55.        
    56.             detector.detect (img2Mat, keypoints2);
    57.             extractor.compute (img2Mat, keypoints2, descriptors2);
    58.  
    59.  
    60.             DescriptorMatcher matcher = DescriptorMatcher.create (DescriptorMatcher.BRUTEFORCE_L1);
    61.             MatOfDMatch matches = new MatOfDMatch ();
    62.  
    63.             matcher.match (descriptors1, descriptors2, matches);
    64.  
    65.  
    66.             Mat resultImg = new Mat ();
    67.  
    68.             Features2d.drawMatches (img1Mat, keypoints1, img2Mat, keypoints2, matches, resultImg);
    69.  
    70.  
    71.             Texture2D texture = new Texture2D (resultImg.cols (), resultImg.rows (), TextureFormat.RGBA32, false);
    72.        
    73.             Utils.matToTexture2D (resultImg, texture);
    74.  
    75.             gameObject.GetComponent<Renderer> ().material.mainTexture = texture;
    76.         }
    77.    
    78.         // Update is called once per frame
    79.         void Update ()
    80.         {
    81.    
    82.         }
    83.  
    84.         /// <summary>
    85.         /// Raises the back button click event.
    86.         /// </summary>
    87.         public void OnBackButtonClick ()
    88.         {
    89.             SceneManager.LoadScene ("OpenCVForUnityExample");
    90.         }
    91.     }
    92. }
     
  28. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Does AccessingPixelValueExample of MatBasicProcessingExample work without problems?
    https://github.com/EnoxSoftware/Ope...mple/MatBasicProcessingExample.cs#L2054-L2084
     
  29. edwinerdiyana

    edwinerdiyana

    Joined:
    Dec 10, 2019
    Posts:
    9
    thanks... but i cant build in android. what command to activate non free module?
    " python ../opencv/platforms/android/build_sdk.py ../build ../opencv
    --ndk_path=C://android-ndk --sdk_path=C://android-sdk
    --extra_modules_path=../opencv_contrib/modules --use_android_buildtools. "
    There is no command to activate non free module.
     
  30. kotsopoulos

    kotsopoulos

    Joined:
    Nov 6, 2014
    Posts:
    20
    Hi Enox, iwant to purchase your asset
    But i want to try it first. I have trained a custom tolo model and i downloaded your asset (free trial), it works fine
    But when i was going to build an apk it crushed
    upload_2020-2-5_15-4-47.png

    In order to build on android i have to purchase the asset first?
     
  31. pekarnik1

    pekarnik1

    Joined:
    Sep 11, 2019
    Posts:
    5
    Hi all! Do someone know the way to put some 3d object "inside the mouth" I need to put ar spoon inside it, but as I know I can't get a 3d mesh like in spark or lens studio. Maybe opencvforunity have some trick way to do it?
     
  32. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Could you add the parameters you want to add after this line?
    https://github.com/opencv/opencv/blob/master/platforms/android/build_sdk.py#L222

    OPENCV_ENABLE_NONFREE="ON"
     
  33. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    The trial version is only compatible with the editor.
    https://enoxsoftware.com/opencvforunity/get_asset/
     
  34. cecarlsen

    cecarlsen

    Joined:
    Jun 30, 2006
    Posts:
    558
    Hi @EnoxSoftware

    Thanks for a great OpenCV integration. Usually things work out smoothly, but now FaceMarkExample crashes on start in 2019.3.0f6 on Windows 10, version 2.3.8. Does this crash report give any clues?

    All the best
    Carl Emil

    Code (CSharp):
    1. Crash!!!
    2. SymInit: Symbol-SearchPath: 'C:/Program Files/Unity/Hub/Editor/2019.3.0f6/Editor/Data/Mono;.;C:\Users\ce\Repos\HC4;C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor;C:\WINDOWS;C:\WINDOWS\system32;SRV*C:\websymbols*http://msdl.microsoft.com/download/symbols;', symOptions: 534, UserName: 'ce'
    3. OS-Version: 10.0.0
    4. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\Unity.exe:Unity.exe (00007FF727FE0000), size: 135790592 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2019.3.0.43809
    5. C:\WINDOWS\SYSTEM32\ntdll.dll:ntdll.dll (00007FFD1EAE0000), size: 2031616 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.418
    6. C:\WINDOWS\System32\KERNEL32.DLL:KERNEL32.DLL (00007FFD1CCE0000), size: 729088 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.329
    7. C:\WINDOWS\System32\KERNELBASE.dll:KERNELBASE.dll (00007FFD1BC80000), size: 2764800 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.535
    8. C:\WINDOWS\System32\CRYPT32.dll:CRYPT32.dll (00007FFD1C0D0000), size: 1347584 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.592
    9. C:\WINDOWS\System32\ucrtbase.dll:ucrtbase.dll (00007FFD1BB50000), size: 1024000 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    10. C:\WINDOWS\System32\MSASN1.dll:MSASN1.dll (00007FFD1B9E0000), size: 73728 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    11. C:\WINDOWS\System32\USER32.dll:USER32.dll (00007FFD1E420000), size: 1654784 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.592
    12. C:\WINDOWS\System32\win32u.dll:win32u.dll (00007FFD1BC50000), size: 135168 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.592
    13. C:\WINDOWS\System32\GDI32.dll:GDI32.dll (00007FFD1CB90000), size: 155648 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    14. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\OpenImageDenoise.dll:OpenImageDenoise.dll (00007FFC9DA70000), size: 38039552 (result: 0), SymType: '-deferred-', PDB: ''
    15. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\libfbxsdk.dll:libfbxsdk.dll (00007FFCABBB0000), size: 8511488 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2018.1.1.0
    16. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\optix.6.0.0.dll:optix.6.0.0.dll (00007FFCE3BA0000), size: 208896 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 6.0.0.0
    17. C:\WINDOWS\System32\gdi32full.dll:gdi32full.dll (00007FFD1BF30000), size: 1654784 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.535
    18. C:\WINDOWS\System32\msvcp_win.dll:msvcp_win.dll (00007FFD1C9C0000), size: 647168 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    19. C:\WINDOWS\System32\ADVAPI32.dll:ADVAPI32.dll (00007FFD1E760000), size: 667648 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.329
    20. C:\WINDOWS\System32\msvcrt.dll:msvcrt.dll (00007FFD1D700000), size: 647168 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 7.0.18362.1
    21. C:\WINDOWS\System32\sechost.dll:sechost.dll (00007FFD1E380000), size: 618496 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    22. C:\WINDOWS\System32\RPCRT4.dll:RPCRT4.dll (00007FFD1CBC0000), size: 1179648 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.476
    23. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\RadeonImageFilters64.dll:RadeonImageFilters64.dll (00007FFCB93E0000), size: 1310720 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 1.4.0.0
    24. C:\WINDOWS\System32\SHELL32.dll:SHELL32.dll (00007FFD1DC00000), size: 7229440 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.535
    25. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\OpenRL.dll:OpenRL.dll (0000000180000000), size: 12779520 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 1.5.100.0
    26. C:\WINDOWS\System32\cfgmgr32.dll:cfgmgr32.dll (00007FFD1CA60000), size: 303104 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    27. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\umbraoptimizer64.dll:umbraoptimizer64.dll (00007FFCB8F60000), size: 1306624 (result: 0), SymType: '-deferred-', PDB: ''
    28. C:\WINDOWS\System32\SETUPAPI.dll:SETUPAPI.dll (00007FFD1D0D0000), size: 4653056 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    29. C:\WINDOWS\System32\WS2_32.dll:WS2_32.dll (00007FFD1D850000), size: 454656 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    30. C:\WINDOWS\System32\shcore.dll:shcore.dll (00007FFD1CDA0000), size: 692224 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    31. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\libcef.dll:libcef.dll (00007FFC9A8A0000), size: 52219904 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 3.2062.1930.0
    32. C:\WINDOWS\System32\bcrypt.dll:bcrypt.dll (00007FFD1CAB0000), size: 155648 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    33. C:\WINDOWS\System32\WLDAP32.dll:WLDAP32.dll (00007FFD1D060000), size: 425984 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    34. C:\WINDOWS\System32\Normaliz.dll:Normaliz.dll (00007FFD1E620000), size: 32768 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    35. C:\WINDOWS\System32\combase.dll:combase.dll (00007FFD1D8C0000), size: 3366912 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    36. C:\WINDOWS\System32\PSAPI.DLL:PSAPI.DLL (00007FFD1EA90000), size: 32768 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    37. C:\WINDOWS\System32\bcryptPrimitives.dll:bcryptPrimitives.dll (00007FFD1BAD0000), size: 524288 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.295
    38. C:\WINDOWS\SYSTEM32\HID.DLL:HID.DLL (00007FFD1A4E0000), size: 57344 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    39. C:\WINDOWS\System32\SHLWAPI.dll:SHLWAPI.dll (00007FFD1D540000), size: 335872 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    40. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\ispc_texcomp.dll:ispc_texcomp.dll (00007FFCB89C0000), size: 1609728 (result: 0), SymType: '-deferred-', PDB: ''
    41. C:\WINDOWS\System32\windows.storage.dll:windows.storage.dll (00007FFD1C220000), size: 7860224 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.535
    42. C:\WINDOWS\System32\COMDLG32.dll:COMDLG32.dll (00007FFD1E810000), size: 851968 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.418
    43. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\WinPixEventRuntime.dll:WinPixEventRuntime.dll (00007FFD04490000), size: 45056 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 1.0.1812.6001
    44. C:\WINDOWS\System32\profapi.dll:profapi.dll (00007FFD1B9C0000), size: 126976 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    45. C:\WINDOWS\System32\ole32.dll:ole32.dll (00007FFD1D5A0000), size: 1400832 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.113
    46. C:\WINDOWS\System32\powrprof.dll:powrprof.dll (00007FFD1BA00000), size: 303104 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    47. C:\WINDOWS\System32\OLEAUT32.dll:OLEAUT32.dll (00007FFD1CF90000), size: 802816 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.535
    48. C:\WINDOWS\System32\UMPDC.dll:UMPDC.dll (00007FFD1B9B0000), size: 65536 (result: 0), SymType: '-deferred-', PDB: ''
    49. C:\WINDOWS\System32\IMM32.dll:IMM32.dll (00007FFD1E690000), size: 188416 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    50. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\tbb.dll:tbb.dll (00007FFCD8FD0000), size: 413696 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2017.0.2016.1004
    51. C:\WINDOWS\System32\kernel.appcore.dll:kernel.appcore.dll (00007FFD1BA50000), size: 69632 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    52. C:\WINDOWS\System32\cryptsp.dll:cryptsp.dll (00007FFD1C9A0000), size: 94208 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    53. C:\WINDOWS\SYSTEM32\OPENGL32.dll:OPENGL32.dll (00007FFD03F80000), size: 1400832 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    54. C:\WINDOWS\SYSTEM32\D3DCOMPILER_47.dll:D3DCOMPILER_47.dll (00007FFD157B0000), size: 4530176 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    55. C:\WINDOWS\SYSTEM32\VCRUNTIME140.dll:VCRUNTIME140.dll (00007FFD08170000), size: 94208 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 14.24.28127.4
    56. C:\WINDOWS\System32\WINTRUST.dll:WINTRUST.dll (00007FFD1BA70000), size: 376832 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    57. C:\WINDOWS\SYSTEM32\MSVCP140.dll:MSVCP140.dll (00007FFD07890000), size: 626688 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 14.24.28127.4
    58. C:\WINDOWS\SYSTEM32\MSVCP100.dll:MSVCP100.dll (000000006F970000), size: 622592 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.40219.325
    59. C:\WINDOWS\SYSTEM32\VERSION.dll:VERSION.dll (00007FFD11E50000), size: 40960 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    60. C:\WINDOWS\SYSTEM32\MSVCR100.dll:MSVCR100.dll (000000006F890000), size: 860160 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.40219.325
    61. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\embree.dll:embree.dll (00007FFC9FEC0000), size: 16711680 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2.14.0.0
    62. C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.18362.592_none_e6c0b1911312be02\COMCTL32.dll:COMCTL32.dll (00007FFCFAA00000), size: 2641920 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 6.10.18362.592
    63. C:\WINDOWS\SYSTEM32\WINSPOOL.DRV:WINSPOOL.DRV (00007FFD06710000), size: 561152 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    64. C:\WINDOWS\SYSTEM32\WINHTTP.dll:WINHTTP.dll (00007FFD0A570000), size: 983040 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    65. C:\WINDOWS\SYSTEM32\USERENV.dll:USERENV.dll (00007FFD1B8A0000), size: 151552 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    66. C:\WINDOWS\SYSTEM32\urlmon.dll:urlmon.dll (00007FFD09C90000), size: 1925120 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 11.0.18362.449
    67. C:\WINDOWS\SYSTEM32\dhcpcsvc.DLL:dhcpcsvc.DLL (00007FFD117A0000), size: 114688 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    68. C:\WINDOWS\System32\NSI.dll:NSI.dll (00007FFD1E370000), size: 32768 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    69. C:\WINDOWS\SYSTEM32\WTSAPI32.dll:WTSAPI32.dll (00007FFD15790000), size: 77824 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    70. C:\WINDOWS\SYSTEM32\CRYPTBASE.DLL:CRYPTBASE.DLL (00007FFD1B390000), size: 49152 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    71. C:\WINDOWS\SYSTEM32\Secur32.dll:Secur32.dll (00007FFD08190000), size: 49152 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    72. C:\WINDOWS\SYSTEM32\IPHLPAPI.DLL:IPHLPAPI.DLL (00007FFD1AED0000), size: 237568 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    73. C:\WINDOWS\SYSTEM32\MSVCP120.dll:MSVCP120.dll (00007FFCC9D60000), size: 679936 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 12.0.21005.1
    74. C:\WINDOWS\SYSTEM32\OLEACC.dll:OLEACC.dll (00007FFD067A0000), size: 413696 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 7.2.18362.1
    75. C:\WINDOWS\SYSTEM32\MSVCR120.dll:MSVCR120.dll (00007FFCC8980000), size: 978944 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 12.0.21005.1
    76. C:\WINDOWS\SYSTEM32\WINMM.dll:WINMM.dll (00007FFD16660000), size: 147456 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    77. C:\WINDOWS\SYSTEM32\USP10.dll:USP10.dll (00007FFD08B40000), size: 102400 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.476
    78. C:\WINDOWS\SYSTEM32\GLU32.dll:GLU32.dll (00007FFD11A30000), size: 180224 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    79. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\SketchUpAPI.dll:SketchUpAPI.dll (00007FFCA6830000), size: 8978432 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 19.0.753.0
    80. C:\WINDOWS\SYSTEM32\MSWSOCK.dll:MSWSOCK.dll (00007FFD1B1C0000), size: 421888 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    81. C:\WINDOWS\SYSTEM32\PROPSYS.dll:PROPSYS.dll (00007FFD14DC0000), size: 978944 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 7.0.18362.267
    82. C:\WINDOWS\SYSTEM32\iertutil.dll:iertutil.dll (00007FFD02EB0000), size: 2777088 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 11.0.18362.449
    83. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\SketchUpCommonPreferences.dll:SketchUpCommonPreferences.dll (00007FFCD32B0000), size: 483328 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 19.0.753.20342
    84. C:\WINDOWS\SYSTEM32\WINMMBASE.dll:WINMMBASE.dll (00007FFD16530000), size: 184320 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    85. C:\WINDOWS\SYSTEM32\SSPICLI.DLL:SSPICLI.DLL (00007FFD1B8D0000), size: 192512 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    86. C:\WINDOWS\SYSTEM32\dxcore.dll:dxcore.dll (00007FFD1A620000), size: 131072 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    87. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\FreeImage.dll:FreeImage.dll (00000233B35F0000), size: 6414336 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 3.18.0.0
    88. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\OpenRL_pthread.dll:OpenRL_pthread.dll (00000233B3C10000), size: 61440 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2.9.0.0
    89. C:\WINDOWS\system32\uxtheme.dll:uxtheme.dll (00007FFD199A0000), size: 626688 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    90. C:\WINDOWS\System32\clbcatq.dll:clbcatq.dll (00007FFD1D7A0000), size: 663552 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2001.12.10941.16384
    91. C:\WINDOWS\system32\wbem\wbemprox.dll:wbemprox.dll (00007FFD00420000), size: 69632 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    92. C:\WINDOWS\SYSTEM32\wbemcomn.dll:wbemcomn.dll (00007FFD01D90000), size: 540672 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    93. C:\WINDOWS\system32\wbem\wbemsvc.dll:wbemsvc.dll (00007FFD00E20000), size: 81920 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    94. C:\WINDOWS\system32\wbem\fastprox.dll:fastprox.dll (00007FFCFEC20000), size: 1052672 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    95. C:\WINDOWS\SYSTEM32\amsi.dll:amsi.dll (00007FFCFF6B0000), size: 86016 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    96. C:\ProgramData\Microsoft\Windows Defender\platform\4.18.2001.7-0\MpOav.dll:MpOav.dll (00007FFCFD520000), size: 286720 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 4.18.2001.7
    97. C:\WINDOWS\SYSTEM32\dhcpcsvc6.DLL:dhcpcsvc6.DLL (00007FFD10900000), size: 90112 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    98. C:\WINDOWS\SYSTEM32\DNSAPI.dll:DNSAPI.dll (00007FFD1AF10000), size: 827392 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    99. C:\WINDOWS\system32\rsaenh.dll:rsaenh.dll (00007FFD1AD30000), size: 208896 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    100. C:\WINDOWS\System32\imagehlp.dll:imagehlp.dll (00007FFD1E740000), size: 118784 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    101. C:\WINDOWS\SYSTEM32\gpapi.dll:gpapi.dll (00007FFD1A5D0000), size: 139264 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    102. C:\Windows\System32\cryptnet.dll:cryptnet.dll (00007FFD06B40000), size: 192512 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    103. C:\WINDOWS\SYSTEM32\WINNSI.DLL:WINNSI.DLL (00007FFD11C80000), size: 45056 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    104. C:\WINDOWS\System32\MSCTF.dll:MSCTF.dll (00007FFD1CE50000), size: 1265664 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.535
    105. C:\WINDOWS\SYSTEM32\TextInputFramework.dll:TextInputFramework.dll (00007FFD05DE0000), size: 647168 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    106. C:\WINDOWS\SYSTEM32\CoreUIComponents.dll:CoreUIComponents.dll (00007FFD13FB0000), size: 3317760 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.207
    107. C:\WINDOWS\SYSTEM32\CoreMessaging.dll:CoreMessaging.dll (00007FFD16450000), size: 868352 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    108. C:\WINDOWS\SYSTEM32\ntmarta.dll:ntmarta.dll (00007FFD1AB10000), size: 200704 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    109. C:\WINDOWS\SYSTEM32\wintypes.dll:wintypes.dll (00007FFD13A70000), size: 1388544 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    110. C:\WINDOWS\System32\netprofm.dll:netprofm.dll (00007FFD14670000), size: 253952 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    111. C:\WINDOWS\System32\npmproxy.dll:npmproxy.dll (00007FFD0D7C0000), size: 65536 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    112. C:\WINDOWS\System32\fwpuclnt.dll:fwpuclnt.dll (00007FFD100B0000), size: 487424 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.207
    113. C:\Windows\System32\rasadhlp.dll:rasadhlp.dll (00007FFD097B0000), size: 40960 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    114. C:\WINDOWS\system32\explorerframe.dll:explorerframe.dll (00007FFD031F0000), size: 2117632 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.418
    115. C:\WINDOWS\System32\MMDevApi.dll:MMDevApi.dll (00007FFD0DF30000), size: 466944 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    116. C:\WINDOWS\System32\DEVOBJ.dll:DEVOBJ.dll (00007FFD1B750000), size: 172032 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    117. C:\WINDOWS\SYSTEM32\AUDIOSES.DLL:AUDIOSES.DLL (00007FFD0E740000), size: 1429504 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.449
    118. C:\WINDOWS\SYSTEM32\d3d11.dll:d3d11.dll (00007FFD15C10000), size: 2469888 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    119. C:\WINDOWS\SYSTEM32\dxgi.dll:dxgi.dll (00007FFD1A6B0000), size: 962560 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    120. C:\WINDOWS\System32\DriverStore\FileRepository\nvrzi.inf_amd64_d4265d8d0e69f12a\nvldumdx.dll:nvldumdx.dll (00007FFD11A90000), size: 974848 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 26.21.14.3648
    121. C:\WINDOWS\System32\DriverStore\FileRepository\nvrzi.inf_amd64_d4265d8d0e69f12a\nvwgf2umx.dll:nvwgf2umx.dll (00007FFC96E00000), size: 40218624 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 26.21.14.3648
    122. C:\WINDOWS\system32\nvspcap64.dll:nvspcap64.dll (00007FFCD37E0000), size: 2887680 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 3.20.0.118
    123. C:\WINDOWS\SYSTEM32\dbghelp.dll:dbghelp.dll (00007FFD1A2E0000), size: 2048000 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    124. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\tbbmalloc.dll:tbbmalloc.dll (00007FFCB0CF0000), size: 372736 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2017.0.2016.1004
    125. C:\WINDOWS\SYSTEM32\opencl.dll:opencl.dll (00007FFCB0CD0000), size: 118784 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2.2.1.0
    126. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\radeonrays.dll:radeonrays.dll (00007FFC96D70000), size: 552960 (result: 0), SymType: '-deferred-', PDB: ''
    127. C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\Data\MonoBleedingEdge\EmbedRuntime\mono-2.0-bdwgc.dll:mono-2.0-bdwgc.dll (00007FFC96600000), size: 7774208 (result: 0), SymType: '-deferred-', PDB: ''
    128. C:\ProgramData\Microsoft\VisualStudio\Setup\x64\Microsoft.VisualStudio.Setup.Configuration.Native.dll:Microsoft.VisualStudio.Setup.Configuration.Native.dll (00007FFCAB3A0000), size: 327680 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 2.3.2200.14893
    129. C:\WINDOWS\system32\dataexchange.dll:dataexchange.dll (00007FFD08B60000), size: 237568 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    130. C:\WINDOWS\system32\dcomp.dll:dcomp.dll (00007FFD15E70000), size: 1945600 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    131. C:\WINDOWS\system32\twinapi.appcore.dll:twinapi.appcore.dll (00007FFD19A40000), size: 2465792 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.592
    132. C:\WINDOWS\system32\RMCLIENT.dll:RMCLIENT.dll (00007FFD19EA0000), size: 167936 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    133. C:\WINDOWS\SYSTEM32\xinput9_1_0.dll:xinput9_1_0.dll (00007FFCC7D40000), size: 28672 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    134. C:\WINDOWS\SYSTEM32\XInput1_4.dll:XInput1_4.dll (00007FFCC7D20000), size: 69632 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.329
    135. C:\WINDOWS\SYSTEM32\inputhost.dll:inputhost.dll (00007FFD05CC0000), size: 1155072 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    136. C:\WINDOWS\SYSTEM32\dwmapi.dll:dwmapi.dll (00007FFD19ED0000), size: 184320 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.267
    137. C:\WINDOWS\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_7c83d7d86ddaeb22\igd10iumd64.dll:igd10iumd64.dll (00007FFD0EA20000), size: 21028864 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 26.20.100.7261
    138. C:\WINDOWS\SYSTEM32\ncrypt.dll:ncrypt.dll (00007FFD1B490000), size: 155648 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    139. C:\WINDOWS\SYSTEM32\NTASN1.dll:NTASN1.dll (00007FFD1B450000), size: 241664 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    140. C:\WINDOWS\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_7c83d7d86ddaeb22\igdgmm64.dll:igdgmm64.dll (00007FFD0D920000), size: 1384448 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 26.20.100.7261
    141. C:\WINDOWS\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_7c83d7d86ddaeb22\igc64.dll:igc64.dll (00007FFD0B110000), size: 37052416 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 26.20.100.7261
    142. C:\WINDOWS\system32\NLAapi.dll:NLAapi.dll (00007FFD11C60000), size: 114688 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.387
    143. C:\Users\ce\Repos\HC4\Assets\ThirdParty\OpenCVForUnity\Plugins\Windows\x86_64\opencvforunity.dll:opencvforunity.dll (00007FFC52440000), size: 55947264 (result: 0), SymType: '-deferred-', PDB: ''
    144. C:\WINDOWS\SYSTEM32\MFPlat.DLL:MFPlat.DLL (00007FFD12070000), size: 2072576 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.207
    145. C:\WINDOWS\SYSTEM32\MFReadWrite.dll:MFReadWrite.dll (00007FFCDC390000), size: 1282048 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    146. C:\WINDOWS\SYSTEM32\MF.dll:MF.dll (00007FFD12280000), size: 532480 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.476
    147. C:\WINDOWS\SYSTEM32\MFCORE.DLL:MFCORE.DLL (00007FFCC7610000), size: 4112384 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.535
    148. C:\WINDOWS\SYSTEM32\ksuser.dll:ksuser.dll (00007FFD12C30000), size: 36864 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    149. C:\WINDOWS\SYSTEM32\RTWorkQ.DLL:RTWorkQ.DLL (00007FFD11F60000), size: 192512 (result: 0), SymType: '-deferred-', PDB: '', fileVersion: 10.0.18362.1
    150.  
    151. ========== OUTPUTTING STACK TRACE ==================
    152.  
    153. 0x00007FFC54372414 (opencvforunity) tracking_TrackerCSRT_setInitialMask_10
    154. 0x00007FFC53A6EA12 (opencvforunity) objdetect_CascadeClassifier_empty_10
    155. 0x00000235BDF8441A (Mono JIT Code) (wrapper managed-to-native) OpenCVForUnity.ObjdetectModule.CascadeClassifier:objdetect_CascadeClassifier_empty_10 (intptr)
    156. 0x00000235BDF842CB (Mono JIT Code) [C:\Users\ce\Repos\HC4\Assets\ThirdParty\OpenCVForUnity\org\opencv\objdetect\CascadeClassifier.cs:124] OpenCVForUnity.ObjdetectModule.CascadeClassifier:empty ()
    157. 0x00000235BDF7E48B (Mono JIT Code) [C:\Users\ce\Repos\HC4\Assets\ThirdParty\OpenCVForUnity\Examples\ContribModules\face\FaceMarkExample\FaceMarkExample.cs:139] OpenCVForUnityExample.FaceMarkExample:Run ()
    158. 0x00000235BDF7D7FB (Mono JIT Code) [C:\Users\ce\Repos\HC4\Assets\ThirdParty\OpenCVForUnity\Examples\ContribModules\face\FaceMarkExample\FaceMarkExample.cs:100] OpenCVForUnityExample.FaceMarkExample:Start ()
    159. 0x0000023651472168 (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
    160. 0x00007FFC9672CBB0 (mono-2.0-bdwgc) [c:\build\output\unity-technologies\mono\mono\mini\mini-runtime.c:2809] mono_jit_runtime_invoke
    161. 0x00007FFC966B2122 (mono-2.0-bdwgc) [c:\build\output\unity-technologies\mono\mono\metadata\object.c:2921] do_runtime_invoke
    162. 0x00007FFC966BB11F (mono-2.0-bdwgc) [c:\build\output\unity-technologies\mono\mono\metadata\object.c:2968] mono_runtime_invoke
    163. 0x00007FF72ADE5BAE (Unity) scripting_method_invoke
    164. 0x00007FF72ADDF88D (Unity) ScriptingInvocation::Invoke
    165. 0x00007FF72ADAEABC (Unity) MonoBehaviour::InvokeMethodOrCoroutineChecked
    166. 0x00007FF72ADAEBE8 (Unity) MonoBehaviour::InvokeMethodOrCoroutineChecked
    167. 0x00007FF72ADAA5F9 (Unity) MonoBehaviour::DelayedStartCall
    168. 0x00007FF72A462988 (Unity) DelayedCallManager::Update
    169. 0x00007FF72A88E05F (Unity) `InitPlayerLoopCallbacks'::`2'::EarlyUpdateScriptRunDelayedStartupFrameRegistrator::Forward
    170. 0x00007FF72A8780C8 (Unity) ExecutePlayerLoop
    171. 0x00007FF72A87819D (Unity) ExecutePlayerLoop
    172. 0x00007FF72A87D394 (Unity) PlayerLoop
    173. 0x00007FF728C957BB (Unity) PlayerLoopController::UpdateScene
    174. 0x00007FF728C7E76D (Unity) PlayerLoopController::EnterPlayMode
    175. 0x00007FF728C90CB4 (Unity) PlayerLoopController::SetIsPlaying
    176. 0x00007FF728C93A6F (Unity) Application::TickTimer
    177. 0x00007FF7295D6C10 (Unity) MainMessageLoop
    178. 0x00007FF7295E09AA (Unity) WinMain
    179. 0x00007FF72C55C602 (Unity) __scrt_common_main_seh
    180. 0x00007FFD1CCF7BD4 (KERNEL32) BaseThreadInitThunk
    181. 0x00007FFD1EB4CED1 (ntdll) RtlUserThreadStart
    182.  
    183. ========== END OF STACKTRACE ===========
    184.  
     
  35. edwinerdiyana

    edwinerdiyana

    Joined:
    Dec 10, 2019
    Posts:
    9
  36. edwinerdiyana

    edwinerdiyana

    Joined:
    Dec 10, 2019
    Posts:
    9
    help me to fix this. :(

    CvException: CvType.CV_32SC2 != m.type() || m.cols()!=1
    Mat [ -1*-1*CV_8UC1, isCont=False, isSubmat=False, nativeObj=0x971494256, dataAddr=0x0 ]
    OpenCVForUnity.UtilsModule.Converters.Mat_to_vector_Mat (OpenCVForUnity.CoreModule.Mat m, System.Collections.Generic.List`1 mats) (at Assets/OpenCVForUnity/org/opencv/utils/Converters.cs:336)
    OpenCVForUnity.UtilsModule.Converters.Mat_to_vector_vector_DMatch (OpenCVForUnity.CoreModule.Mat m, System.Collections.Generic.List`1 lvdm) (at Assets/OpenCVForUnity/org/opencv/utils/Converters.cs:900)
    OpenCVForUnity.Features2dModule.DescriptorMatcher.knnMatch (OpenCVForUnity.CoreModule.Mat queryDescriptors, System.Collections.Generic.List`1 matches, Int32 k) (at Assets/OpenCVForUnity/org/opencv/features2d/DescriptorMatcher.cs:405)
    OpenCVMarkerLessAR.PatternDetector.getMatches (OpenCVForUnity.CoreModule.Mat queryDescriptors, OpenCVForUnity.CoreModule.MatOfDMatch matches) (at Assets/MarkerLessARExample/MarkerLessAR/PatternDetector.cs:378)
    OpenCVMarkerLessAR.PatternDetector.findPattern (OpenCVForUnity.CoreModule.Mat image, OpenCVMarkerLessAR.PatternTrackingInfo info) (at Assets/MarkerLessARExample/MarkerLessAR/PatternDetector.cs:226)
    MarkerLessARExample.WebCamTextureMarkerLessARExample.Update () (at Assets/MarkerLessARExample/WebCamTextureMarkerLessARExample/WebCamTextureMarkerLessARExample.cs:339)
     
  37. kotsopoulos

    kotsopoulos

    Joined:
    Nov 6, 2014
    Posts:
    20
    I purchased your asset
    I tested the YoloObject detection scene and it works fine with the yolov3-tiny model (demo model)
    But when i integrate my custom yolov3-tiny(trained with custom dataset), it doesnt detect anything. Do i have to change something in camera frames or something like that
    Also Do you have a scene with object detection that takes as an input frozen_graph.pb for faster_rcnn (not mask_rcnn)?
     
    Last edited: Feb 6, 2020
  38. link1375

    link1375

    Joined:
    Nov 9, 2017
    Posts:
    9
    I think my problem is the same as this
    but I want to provide my code. Maybe this helps.

    This is what I wrote https://pastebin.com/x5hgTGfT, inspired by https://docs.opencv.org/3.4/d7/dff/tutorial_feature_homography.html but using ORB instead of SURF.

    Code (CSharp):
    1.  
    2. CvException: CvType.CV_32SC2 != m.type() ||  m.cols()!=1
    3. Mat [ -1*-1*CV_8UC1, isCont=False, isSubmat=False, nativeObj=0x1437861847440, dataAddr=0x0 ]
    4. OpenCVForUnity.UtilsModule.Converters.Mat_to_vector_Mat (OpenCVForUnity.CoreModule.Mat m, System.Collections.Generic.List`1[T] mats) (at Assets/OpenCVForUnity/org/opencv/utils/Converters.cs:336)
    5. OpenCVForUnity.UtilsModule.Converters.Mat_to_vector_vector_DMatch (OpenCVForUnity.CoreModule.Mat m, System.Collections.Generic.List`1[T] lvdm) (at Assets/OpenCVForUnity/org/opencv/utils/Converters.cs:900)
    6. OpenCVForUnity.Features2dModule.DescriptorMatcher.knnMatch (OpenCVForUnity.CoreModule.Mat queryDescriptors, OpenCVForUnity.CoreModule.Mat trainDescriptors, System.Collections.Generic.List`1[T] matches, System.Int32 k) (at Assets/OpenCVForUnity/org/opencv/features2d/DescriptorMatcher.cs:332)
    7. FeatureDetection.FindMarkerInImage (System.Boolean drawDetectedMarkers) (at Assets/Scripts/FeatureDetection.cs:71)
    8. FeatureDetection.Update () (at Assets/Scripts/FeatureDetection.cs:54)
    Interestingly, I get no error, if I use
    matcher.knnMatch(desObject, knnMatches, 2);
    instead of
    matcher.knnMatch(desObject, desScene, knnMatches, 2);

    I use UnityVersion 2019.1.3f1 and OpenCVForUnity Version 2.3.8

    see the below quote for a more specific analysis.
     
    Last edited: Feb 13, 2020
  39. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Is "haarcascade_frontalface_alt.xml" in the "Assets / StreamingAssets" folder?
    move_sp_file.PNG
     
  40. sienadigital

    sienadigital

    Joined:
    Nov 8, 2017
    Posts:
    1
    I have purchased the OpenCV assets, but am having problems running the FaceTrackerARExample script in the editor or as a standalone windows app.

    Line 558 in FaceTrackerARExample.cs is where the problem is.
    Code (CSharp):
    1. if (tvec.get (2, 0) [0] > 0 && tvec.get (2, 0) [0] < 1200 * ((float)rgbaMat.cols () / (float)webCamTextureToMatHelper.requestedWidth)) {
    It seems like tvec.get (2, 0) is returning null. I can fix the error by adding a null check, but I am not able to get the head overlay or eye or mouth effects to turn on and track my face. It seems like the variable tvec.get (2, 0) is always returning null.

    What can I do to get this example to work. Do I need the Dlib FaceLandmark Detector?
     
  41. Labecki

    Labecki

    Joined:
    Apr 14, 2015
    Posts:
    16
    I am using the ArUco Module and cannot figure out how to get the marker IDs of the detected markers.
    Code (CSharp):
    1. Aruco.detectMarkers(rgbMat, dictionary, corners, ids, detectorParams, rejectedCorners, camMatrix, distCoeffs);
    The detectMarkers method produces an ids Mat object, but that object does not seem to contain the ids of the detected markers. I have not been able to find anything in the API that will get the target ids. I did notice one answer in this forum that involved going through a list (or array) of
     
  42. kotsopoulos

    kotsopoulos

    Joined:
    Nov 6, 2014
    Posts:
    20
    Ι made maskRnnExample scene to take Mat from camera of the target device device, based on the DnnObjectDetectionExampleWebCamtexture.cs and i put a faster-RCNN
    Everything work fine but the frames of the camera are very low (5fps), how can i fix it

    Code (CSharp):
    1. #if !(PLATFORM_LUMIN && !UNITY_EDITOR)
    2.  
    3. #if !UNITY_WSA_10_0
    4.  
    5. using System;
    6. using System.Collections;
    7. using System.Collections.Generic;
    8. using System.Linq;
    9. using UnityEngine;
    10. using UnityEngine.UI;
    11. using UnityEngine.SceneManagement;
    12. using OpenCVForUnity.CoreModule;
    13. using OpenCVForUnity.DnnModule;
    14. using OpenCVForUnity.ImgprocModule;
    15. using OpenCVForUnity.UnityUtils;
    16. using OpenCVForUnity.UnityUtils.Helper;
    17.  
    18. namespace OpenCVForUnityExample
    19. {
    20.     /// <summary>
    21.     /// Dnn ObjectDetection Example
    22.     /// Referring to https://github.com/opencv/opencv/blob/master/samples/dnn/object_detection.cpp.
    23.     /// </summary>
    24.     [RequireComponent(typeof(WebCamTextureToMatHelper))]
    25.     public class FasterRCNNCamExample : MonoBehaviour
    26.     {
    27.  
    28.         [TooltipAttribute("Path to a binary file of model contains trained weights. It could be a file with extensions .caffemodel (Caffe), .pb (TensorFlow), .t7 or .net (Torch), .weights (Darknet).")]
    29.         public string model;
    30.  
    31.         [TooltipAttribute("Path to a text file of model contains network configuration. It could be a file with extensions .prototxt (Caffe), .pbtxt (TensorFlow), .cfg (Darknet).")]
    32.         public string config;
    33.  
    34.         [TooltipAttribute("Optional path to a text file with names of classes to label detected objects.")]
    35.         public string classes;
    36.  
    37.         [TooltipAttribute("Optional list of classes to label detected objects.")]
    38.         public List<string> classesList;
    39.  
    40.         [TooltipAttribute("Confidence threshold.")]
    41.         public float confThreshold;
    42.  
    43.         [TooltipAttribute("Preprocess input image by multiplying on a scale factor.")]
    44.         public float scale;
    45.  
    46.         [TooltipAttribute("Preprocess input image by subtracting mean values. Mean values should be in BGR order and delimited by spaces.")]
    47.         public Scalar mean;
    48.  
    49.         [TooltipAttribute("Indicate that model works with RGB input images instead BGR ones.")]
    50.         public bool swapRB;
    51.  
    52.         [TooltipAttribute("Preprocess input image by resizing to a specific width.")]
    53.         public int inpWidth;
    54.  
    55.         [TooltipAttribute("Preprocess input image by resizing to a specific height.")]
    56.         public int inpHeight;
    57.  
    58.         Texture2D texture;
    59.         WebCamTextureToMatHelper webCamTextureToMatHelper;
    60.         Mat bgrMat;
    61.         Net net;
    62.         FpsMonitor fpsMonitor;
    63.  
    64.         List<string> classNames;
    65.         List<string> outBlobNames;
    66.         List<string> outBlobTypes;
    67.  
    68.         string classes_filepath;
    69.         string config_filepath;
    70.         string model_filepath;
    71.  
    72. #if UNITY_WEBGL && !UNITY_EDITOR
    73.         IEnumerator getFilePath_Coroutine;
    74. #endif
    75.  
    76.         // Use this for initialization
    77.         void Start()
    78.         {
    79.             fpsMonitor = GetComponent<FpsMonitor>();
    80.  
    81.             webCamTextureToMatHelper = gameObject.GetComponent<WebCamTextureToMatHelper>();
    82.             Application.targetFrameRate = 30;
    83.  
    84. #if UNITY_WEBGL && !UNITY_EDITOR
    85.             getFilePath_Coroutine = GetFilePath();
    86.             StartCoroutine(getFilePath_Coroutine);
    87. #else
    88.             if (!string.IsNullOrEmpty(classes)) classes_filepath = Utils.getFilePath("dnn/" + classes);
    89.             if (!string.IsNullOrEmpty(config)) config_filepath = Utils.getFilePath("dnn/" + config);
    90.             if (!string.IsNullOrEmpty(model)) model_filepath = Utils.getFilePath("dnn/" + model);
    91.             Run();
    92. #endif
    93.         }
    94.  
    95. #if UNITY_WEBGL && !UNITY_EDITOR
    96.         private IEnumerator GetFilePath()
    97.         {
    98.             if (!string.IsNullOrEmpty(classes))
    99.             {
    100.                 var getFilePathAsync_0_Coroutine = Utils.getFilePathAsync("dnn/" + classes, (result) =>
    101.                 {
    102.                     classes_filepath = result;
    103.                 });
    104.                 yield return getFilePathAsync_0_Coroutine;
    105.             }
    106.  
    107.             if (!string.IsNullOrEmpty(config))
    108.             {
    109.                 var getFilePathAsync_1_Coroutine = Utils.getFilePathAsync("dnn/" + config, (result) =>
    110.                 {
    111.                     config_filepath = result;
    112.                 });
    113.                 yield return getFilePathAsync_1_Coroutine;
    114.             }
    115.  
    116.             if (!string.IsNullOrEmpty(model))
    117.             {
    118.                 var getFilePathAsync_2_Coroutine = Utils.getFilePathAsync("dnn/" + model, (result) =>
    119.                 {
    120.                     model_filepath = result;
    121.                 });
    122.                 yield return getFilePathAsync_2_Coroutine;
    123.             }
    124.  
    125.             getFilePath_Coroutine = null;
    126.  
    127.             Run();
    128.         }
    129. #endif
    130.  
    131.         // Use this for initialization
    132.         void Run()
    133.         {
    134.             //if true, The error log of the Native side OpenCV will be displayed on the Unity Editor Console.
    135.             Utils.setDebugMode(true);
    136.  
    137.             if (!string.IsNullOrEmpty(classes))
    138.             {
    139.                 classNames = readClassNames(classes_filepath);
    140.                 if (classNames == null)
    141.                 {
    142.                     Debug.LogError(classes_filepath + " is not loaded. Please see \"StreamingAssets/dnn/setup_dnn_module.pdf\". ");
    143.                 }
    144.             }
    145.             else if (classesList.Count > 0)
    146.             {
    147.                 classNames = classesList;
    148.             }
    149.  
    150.             if (string.IsNullOrEmpty(config_filepath) || string.IsNullOrEmpty(model_filepath))
    151.             {
    152.                 Debug.LogError(config_filepath + " or " + model_filepath + " is not loaded. Please see \"StreamingAssets/dnn/setup_dnn_module.pdf\". ");
    153.             }
    154.             else
    155.             {
    156.                 net = Dnn.readNetFromTensorflow(model_filepath, config_filepath);
    157.  
    158.                 outBlobNames = getOutputsNames(net);
    159.  
    160.                 outBlobTypes = getOutputsTypes(net);
    161.             }
    162.  
    163.  
    164. #if UNITY_ANDROID && !UNITY_EDITOR
    165.             // Avoids the front camera low light issue that occurs in only some Android devices (e.g. Google Pixel, Pixel2).
    166.             webCamTextureToMatHelper.avoidAndroidFrontCameraLowLightIssue = true;
    167. #endif
    168.             webCamTextureToMatHelper.Initialize();
    169.         }
    170.  
    171.         /// <summary>
    172.         /// Raises the webcam texture to mat helper initialized event.
    173.         /// </summary>
    174.         public void OnWebCamTextureToMatHelperInitialized()
    175.         {
    176.             Debug.Log("OnWebCamTextureToMatHelperInitialized");
    177.  
    178.             Mat webCamTextureMat = webCamTextureToMatHelper.GetMat();
    179.  
    180.  
    181.             texture = new Texture2D(webCamTextureMat.cols(), webCamTextureMat.rows(), TextureFormat.RGBA32, false);
    182.  
    183.             gameObject.GetComponent<Renderer>().material.mainTexture = texture;
    184.  
    185.             gameObject.transform.localScale = new Vector3(webCamTextureMat.cols(), webCamTextureMat.rows(), 1);
    186.             Debug.Log("Screen.width " + Screen.width + " Screen.height " + Screen.height + " Screen.orientation " + Screen.orientation);
    187.  
    188.             if (fpsMonitor != null)
    189.             {
    190.                 fpsMonitor.Add("width", webCamTextureMat.width().ToString());
    191.                 fpsMonitor.Add("height", webCamTextureMat.height().ToString());
    192.                 fpsMonitor.Add("orientation", Screen.orientation.ToString());
    193.             }
    194.  
    195.  
    196.             float width = webCamTextureMat.width();
    197.             float height = webCamTextureMat.height();
    198.  
    199.             float widthScale = (float)Screen.width / width;
    200.             float heightScale = (float)Screen.height / height;
    201.             if (widthScale < heightScale)
    202.             {
    203.                 Camera.main.orthographicSize = (width * (float)Screen.height / (float)Screen.width) / 2;
    204.             }
    205.             else
    206.             {
    207.                 Camera.main.orthographicSize = height / 2;
    208.             }
    209.  
    210.  
    211.             bgrMat = new Mat(webCamTextureMat.rows(), webCamTextureMat.cols(), CvType.CV_8UC3);
    212.         }
    213.  
    214.         public void OnWebCamTextureToMatHelperDisposed()
    215.         {
    216.             Debug.Log("OnWebCamTextureToMatHelperDisposed");
    217.  
    218.             if (bgrMat != null)
    219.                 bgrMat.Dispose();
    220.  
    221.             if (texture != null)
    222.             {
    223.                 Texture2D.Destroy(texture);
    224.                 texture = null;
    225.             }
    226.         }
    227.  
    228.         public void OnWebCamTextureToMatHelperErrorOccurred(WebCamTextureToMatHelper.ErrorCode errorCode)
    229.         {
    230.             Debug.Log("OnWebCamTextureToMatHelperErrorOccurred " + errorCode);
    231.         }
    232.  
    233.         // Update is called once per frame
    234.         void Update()
    235.         {
    236.             if (webCamTextureToMatHelper.IsPlaying() && webCamTextureToMatHelper.DidUpdateThisFrame())
    237.             {
    238.  
    239.                 Mat rgbaMat = webCamTextureToMatHelper.GetMat();
    240.  
    241.                 if (net == null)
    242.                 {
    243.                     Imgproc.putText(rgbaMat, "model file is not loaded.", new Point(5, rgbaMat.rows() - 30), Imgproc.FONT_HERSHEY_SIMPLEX, 0.7, new Scalar(255, 255, 255, 255), 2, Imgproc.LINE_AA, false);
    244.                     Imgproc.putText(rgbaMat, "Please read console message.", new Point(5, rgbaMat.rows() - 10), Imgproc.FONT_HERSHEY_SIMPLEX, 0.7, new Scalar(255, 255, 255, 255), 2, Imgproc.LINE_AA, false);
    245.                 }
    246.                 else
    247.                 {
    248.  
    249.                     Imgproc.cvtColor(rgbaMat, bgrMat, Imgproc.COLOR_RGBA2BGR);
    250.  
    251.                     // Create a 4D blob from a frame.
    252.                     Size inpSize = new Size(inpWidth > 0 ? inpWidth : bgrMat.cols(),
    253.                                        inpHeight > 0 ? inpHeight : bgrMat.rows());
    254.                     Mat blob = Dnn.blobFromImage(bgrMat, scale, inpSize, mean, true, false);
    255.  
    256.                     float frameWidth = bgrMat.cols();
    257.                     float frameHeight = bgrMat.rows();
    258.  
    259.                     // Run a model.
    260.                     net.setInput(blob);
    261.  
    262.  
    263.                     TickMeter tm = new TickMeter();
    264.                     tm.start();
    265.  
    266.                     List<Mat> outputBlobs = new List<Mat>();
    267.                     net.forward(outputBlobs, outBlobNames);
    268.  
    269.                     Mat boxes = outputBlobs[0];
    270.                     int numDetections = boxes.size(2);
    271.  
    272.                     //reshape from 4D to two 2D.
    273.                     float[] data = new float[boxes.size(3)];
    274.                     boxes = boxes.reshape(1, (int)boxes.total() / boxes.size(3));
    275.  
    276.                     tm.stop();
    277.  
    278.                     processMat(rgbaMat, data, boxes, blob);
    279.  
    280.                     /*Imgproc.cvtColor(rgbaMat, bgrMat, Imgproc.COLOR_BGR2RGB);
    281.  
    282.                     Texture2D texture = new Texture2D(img.cols(), img.rows(), TextureFormat.RGBA32, false);
    283.  
    284.                     Utils.matToTexture2D(img, texture);
    285.  
    286.                     gameObject.GetComponent<Renderer>().material.mainTexture = texture;
    287.  
    288.                     net.Dispose();*/
    289.  
    290.                     for (int i = 0; i < outputBlobs.Count; i++)
    291.                     {
    292.                         outputBlobs[i].Dispose();
    293.                     }
    294.                     blob.Dispose();
    295.                 }
    296.  
    297.                 Utils.fastMatToTexture2D(rgbaMat, texture);
    298.             }
    299.         }
    300.  
    301.         private void processMat(Mat frame, float[] data, Mat boxes, Mat blob)
    302.         {
    303.             for (int i = 0; i < boxes.rows(); i++)
    304.             {
    305.  
    306.                 boxes.get(i, 0, data);
    307.  
    308.                 float score = data[2];
    309.  
    310.                 if (score > confThreshold)
    311.                 {
    312.                     int class_id = (int)(data[1]);
    313.  
    314.                     if (class_id == 3)
    315.                        continue;
    316.  
    317.                     float left = (float)(data[3] * frame.cols());
    318.                     float top = (float)(data[4] * frame.rows());
    319.                     float right = (float)(data[5] * frame.cols());
    320.                     float bottom = (float)(data[6] * frame.rows());
    321.  
    322.                     left = (int)Mathf.Max(0, Mathf.Min(left, frame.cols() - 1));
    323.                     top = (int)Mathf.Max(0, Mathf.Min(top, frame.rows() - 1));
    324.                     right = (int)Mathf.Max(0, Mathf.Min(right, frame.cols() - 1));
    325.                     bottom = (int)Mathf.Max(0, Mathf.Min(bottom, frame.rows() - 1));
    326.  
    327.                     Debug.Log("class_id: " + class_id + " class_name " + classNames[class_id] + " left: " + left + " top: " + top + " right: " + right + " bottom: " + bottom);
    328.  
    329.                     //draw boxes
    330.                     drawPred(class_id, confThreshold, (int)left, (int)top, (int)right, (int)bottom, frame);
    331.  
    332.                 }
    333.             }
    334.  
    335.             boxes.Dispose();
    336.             blob.Dispose();
    337.         }
    338.  
    339.         /// <summary>
    340.         /// Raises the destroy event.
    341.         /// </summary>
    342.         void OnDestroy()
    343.         {
    344.             webCamTextureToMatHelper.Dispose();
    345.  
    346.             if (net != null)
    347.                 net.Dispose();
    348.  
    349.             Utils.setDebugMode(false);
    350.  
    351. #if UNITY_WEBGL && !UNITY_EDITOR
    352.             if (getFilePath_Coroutine != null)
    353.             {
    354.                 StopCoroutine(getFilePath_Coroutine);
    355.                 ((IDisposable)getFilePath_Coroutine).Dispose();
    356.             }
    357. #endif
    358.         }
    359.  
    360.         /// <summary>
    361.         /// Reads the class names.
    362.         /// </summary>
    363.         /// <returns>The class names.</returns>
    364.         /// <param name="filename">Filename.</param>
    365.         private List<string> readClassNames(string filename)
    366.         {
    367.             List<string> classNames = new List<string>();
    368.  
    369.             System.IO.StreamReader cReader = null;
    370.             try
    371.             {
    372.                 cReader = new System.IO.StreamReader(filename, System.Text.Encoding.Default);
    373.  
    374.                 while (cReader.Peek() >= 0)
    375.                 {
    376.                     string name = cReader.ReadLine();
    377.                     classNames.Add(name);
    378.                 }
    379.             }
    380.             catch (System.Exception ex)
    381.             {
    382.                 Debug.LogError(ex.Message);
    383.                 return null;
    384.             }
    385.             finally
    386.             {
    387.                 if (cReader != null)
    388.                     cReader.Close();
    389.             }
    390.  
    391.             return classNames;
    392.         }
    393.  
    394.         /// <summary>
    395.         /// Draws the pred.
    396.         /// </summary>
    397.         /// <param name="classId">Class identifier.</param>
    398.         /// <param name="conf">Conf.</param>
    399.         /// <param name="left">Left.</param>
    400.         /// <param name="top">Top.</param>
    401.         /// <param name="right">Right.</param>
    402.         /// <param name="bottom">Bottom.</param>
    403.         /// <param name="frame">Frame.</param>
    404.         private void drawPred(int classId, float conf, int left, int top, int right, int bottom, Mat frame)
    405.         {
    406.             Imgproc.rectangle(frame, new Point(left, top), new Point(right, bottom), new Scalar(0, 255, 0, 255), 2);
    407.  
    408.             string label = conf.ToString();
    409.             if (classNames != null && classNames.Count != 0)
    410.             {
    411.                 if (classId < (int)classNames.Count)
    412.                 {
    413.                     label = classNames[classId] + ": " + label;
    414.                 }
    415.             }
    416.  
    417.             int[] baseLine = new int[1];
    418.             Size labelSize = Imgproc.getTextSize(label, Imgproc.FONT_HERSHEY_SIMPLEX, 0.5, 1, baseLine);
    419.  
    420.             top = Mathf.Max(top, (int)labelSize.height);
    421.             Imgproc.rectangle(frame, new Point(left, top - labelSize.height),
    422.                 new Point(left + labelSize.width, top + baseLine[0]), Scalar.all(255), Core.FILLED);
    423.             Imgproc.putText(frame, label, new Point(left, top), Imgproc.FONT_HERSHEY_SIMPLEX, 0.5, new Scalar(0, 0, 0, 255));
    424.         }
    425.  
    426.         /// <summary>
    427.         /// Gets the outputs names.
    428.         /// </summary>
    429.         /// <returns>The outputs names.</returns>
    430.         /// <param name="net">Net.</param>
    431.         private List<string> getOutputsNames(Net net)
    432.         {
    433.             List<string> names = new List<string>();
    434.  
    435.  
    436.             MatOfInt outLayers = net.getUnconnectedOutLayers();
    437.             for (int i = 0; i < outLayers.total(); ++i)
    438.             {
    439.                 names.Add(net.getLayer(new DictValue((int)outLayers.get(i, 0)[0])).get_name());
    440.             }
    441.             outLayers.Dispose();
    442.  
    443.             return names;
    444.         }
    445.  
    446.         /// <summary>
    447.         /// Gets the outputs types.
    448.         /// </summary>
    449.         /// <returns>The outputs types.</returns>
    450.         /// <param name="net">Net.</param>
    451.         private List<string> getOutputsTypes(Net net)
    452.         {
    453.             List<string> types = new List<string>();
    454.  
    455.  
    456.             MatOfInt outLayers = net.getUnconnectedOutLayers();
    457.             for (int i = 0; i < outLayers.total(); ++i)
    458.             {
    459.                 types.Add(net.getLayer(new DictValue((int)outLayers.get(i, 0)[0])).get_type());
    460.             }
    461.             outLayers.Dispose();
    462.  
    463.             return types;
    464.         }
    465.     }
    466. }
    467. #endif
    468.  
    469. #endif
    Here is my script
     
  43. charith-madusanka

    charith-madusanka

    Joined:
    Feb 10, 2017
    Posts:
    4
  44. link1375

    link1375

    Joined:
    Nov 9, 2017
    Posts:
    9
    This method should work properly I guess. Just run
    Aruco.drawDetectedMarkers(rgbMat, corners);
    afterwards, convert the
    rgbMat
    to a texture and output this texture in Unity. If a marker was found, then you will see this in the image and the ids Mat shouldn't be empty.
    Also maybe you have chosen a wrong
    ArucoDictioniary
    for detection?
     
  45. Labecki

    Labecki

    Joined:
    Apr 14, 2015
    Posts:
    16
    The id numbers were appearing in the image on screen, but I wanted to work internally directly with the id integers. I eventually found that
    Code (CSharp):
    1. int id = (int)ids.get(i, 0)[0];
    Returns the id values.
     
  46. link1375

    link1375

    Joined:
    Nov 9, 2017
    Posts:
    9
    Yes, that is the way you loop over a
    Mat
    I guess. So it is working now?
     
  47. EnoxSoftware

    EnoxSoftware

    Joined:
    Oct 29, 2014
    Posts:
    1,196
    Thank you very much for reporting.
    This bug has been fixed. Could you try the latest version (1.2.1 )?
     
  48. Labecki

    Labecki

    Joined:
    Apr 14, 2015
    Posts:
    16
    Yes, that did get me the ids. Thank you.

    I find the interface for the Mat class to be a bit unclear (the example scenes treat them like black boxes). I would also like to get the values for the positions of the markers. I tried doing this by using the positions of the AR objects, but the values did not seem to be correct if understood to be in real-world meters. I am guessing that the "corners" mat for each detected marker will contain the positions of the corners for that marker, but I do not know how to get those values.

    For a given corner c, what method(s) would I call to get the corner positions?
    Or, of there is some other way to get the positions of the markers, that would help a bunch.
     
  49. alabecki

    alabecki

    Joined:
    Aug 20, 2019
    Posts:
    1
    Update:
    It looks like I can get the transform position of the i'th marker with
    Code (CSharp):
    1. tvecs.get(i, 0);
    How does one obtain the rotation of the i'th marker?
    Code (CSharp):
    1. rvecs.get(i, 0);
    will get me a Vector3, but the rotation should be a Quaternion.
     
  50. cecarlsen

    cecarlsen

    Joined:
    Jun 30, 2006
    Posts:
    558
    Ah, apologies. Once I moved the Streaming Assets folder, I was provided with a nice warning telling mere where to download the model and where to place it. Perhaps the same could be done for the entire Streaming Assets folder so that idiots like me (who forget to read the readme) would be guided on the right path.
     
unityunity