QR Code Tracking on HoloLens 2 with Unity fyp23027, February 13, 2024April 27, 2024 Here is the documentation/tutorial for setting up QR Code Tracking on HoloLens 2 to develop with Unity For the most updated version with images, please go to my Notion page. QR Code Tracking on HoloLens 2 with UnitySourcesQR Code Tracking Overview: https://learn.microsoft.com/en-us/windows/mixed-reality/develop/advanced-concepts/qr-code-tracking-overview#quiet-zones-around-qr-codes→ Sample Code: https://github.com/microsoft/MixedReality-QRCode-SampleQR Code Generator: http://qr.calm9.com/en/QRCode tracking with Hololens 2, XR SDK and MRTK V2.5 Tutorial: https://codeholo.com/2021/03/27/qrcode-tracking-with-hololens-2-xr-sdk-and-mrtk-v2-5/ → Sample Code: https://github.com/NSudharsan/HoloLensExamples/tree/master/QRCodeXRSDKReading JSON input with Hololens2 (Bonus: QR code alignment on a real-world object with Open XR and MRTK V2.8): https://codeholo.com/2022/08/15/reading-json-input-with-hololens2-bonus-qr-code-alignment-on-a-real-world-object-with-open-xr-and-mrtk-v2-8/SetupXR Plugin→ Project Setting ⇒ XR Plugin Manager ⇒ Select “Windows Mixed Reality”→ NOTE: MUST use “Windows Mixed Reality” ⇒ “OpenXR” will NOT work with QRCodeInstall Microsoft.MixedReality.QR package→ have NuGet for Unity installed → Package Manager ⇒ Add package from git URL ⇒ https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity→ install Microsoft.MixedReality.QR from NuGet→ NOTE: install Microsoft.MixedReality.QR will also automatically install Microsoft.VCRTForwarders.140 as dependency Enable Webcam→ Project Setting ⇒ Player ⇒ Publish Settings ⇒ Capabilities ⇒ Select “Webcam”QR Code Scripts→ reference to https://github.com/microsoft/MixedReality-QRCode-Sample→ have all the QR Code script in this zip fileQRCodeScripts.zipQRCode.cs (can edit)→ attached to the QR code object/prefab → determine what will be displayed in the scene with the QR codeQRCodesManager.cs (do NOT edit)→ main class for handling the QR SDK→ attached to QRCodeManager object → functions:StartQRTracking() & StopQRTracking()→ start & stop QR code trackingStart()→ to initialize QR Code tracking → QRCodeWatcher.IsSupportted(): check if QR Code scanning is supported on device→ QRCodeWatcher.RequestAccessAsync(): get permission for webcamSetUpQRTracking()→ IsTrackerRunning: check if tracker is running→ qrTracker.Added, qrTracker.Update, qrTracker.Removed: event listeners for new, updated, removed QR codes→ qrTracker.EnumerationCompleted: list of QR Code added in same session QRCodesSetup.cs (do NOT edit)→ starts the tracking functionality in QRCodesManager object QRCodesVisualizer.cs (can edit)→ handles all QR code visualizing in the scene and instantiates all QR codes in the local list kept in QRCodesManagerSpatialGraphNodeTracker.cs (do NOT edit)→ attached to the QR code object/prefab → to transform real-world QR code coordinates into the Unity coordinate system→ also places the virtual QR code object in the scene at the same location as the real-world QR codeSpatialGraphNode.cs (do NOT edit)→ abstract the tracking of a spatial graph static node ⇒ represent tracking info of QR code in a GUID id On and Off QR Code Button→ about MyQRCodeManager in https://codeholo.com/2021/03/27/qrcode-tracking-with-hololens-2-xr-sdk-and-mrtk-v2-5/Customize QR Code Object→ NOTE: QR Code object == object displayed after detecting the QR Code Uncategorized
SourcesQR Code Tracking Overview: https://learn.microsoft.com/en-us/windows/mixed-reality/develop/advanced-concepts/qr-code-tracking-overview#quiet-zones-around-qr-codes→ Sample Code: https://github.com/microsoft/MixedReality-QRCode-SampleQR Code Generator: http://qr.calm9.com/en/QRCode tracking with Hololens 2, XR SDK and MRTK V2.5 Tutorial: https://codeholo.com/2021/03/27/qrcode-tracking-with-hololens-2-xr-sdk-and-mrtk-v2-5/ → Sample Code: https://github.com/NSudharsan/HoloLensExamples/tree/master/QRCodeXRSDKReading JSON input with Hololens2 (Bonus: QR code alignment on a real-world object with Open XR and MRTK V2.8): https://codeholo.com/2022/08/15/reading-json-input-with-hololens2-bonus-qr-code-alignment-on-a-real-world-object-with-open-xr-and-mrtk-v2-8/SetupXR Plugin→ Project Setting ⇒ XR Plugin Manager ⇒ Select “Windows Mixed Reality”→ NOTE: MUST use “Windows Mixed Reality” ⇒ “OpenXR” will NOT work with QRCodeInstall Microsoft.MixedReality.QR package→ have NuGet for Unity installed → Package Manager ⇒ Add package from git URL ⇒ https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity→ install Microsoft.MixedReality.QR from NuGet→ NOTE: install Microsoft.MixedReality.QR will also automatically install Microsoft.VCRTForwarders.140 as dependency Enable Webcam→ Project Setting ⇒ Player ⇒ Publish Settings ⇒ Capabilities ⇒ Select “Webcam”QR Code Scripts→ reference to https://github.com/microsoft/MixedReality-QRCode-Sample→ have all the QR Code script in this zip fileQRCodeScripts.zipQRCode.cs (can edit)→ attached to the QR code object/prefab → determine what will be displayed in the scene with the QR codeQRCodesManager.cs (do NOT edit)→ main class for handling the QR SDK→ attached to QRCodeManager object → functions:StartQRTracking() & StopQRTracking()→ start & stop QR code trackingStart()→ to initialize QR Code tracking → QRCodeWatcher.IsSupportted(): check if QR Code scanning is supported on device→ QRCodeWatcher.RequestAccessAsync(): get permission for webcamSetUpQRTracking()→ IsTrackerRunning: check if tracker is running→ qrTracker.Added, qrTracker.Update, qrTracker.Removed: event listeners for new, updated, removed QR codes→ qrTracker.EnumerationCompleted: list of QR Code added in same session QRCodesSetup.cs (do NOT edit)→ starts the tracking functionality in QRCodesManager object QRCodesVisualizer.cs (can edit)→ handles all QR code visualizing in the scene and instantiates all QR codes in the local list kept in QRCodesManagerSpatialGraphNodeTracker.cs (do NOT edit)→ attached to the QR code object/prefab → to transform real-world QR code coordinates into the Unity coordinate system→ also places the virtual QR code object in the scene at the same location as the real-world QR codeSpatialGraphNode.cs (do NOT edit)→ abstract the tracking of a spatial graph static node ⇒ represent tracking info of QR code in a GUID id On and Off QR Code Button→ about MyQRCodeManager in https://codeholo.com/2021/03/27/qrcode-tracking-with-hololens-2-xr-sdk-and-mrtk-v2-5/Customize QR Code Object→ NOTE: QR Code object == object displayed after detecting the QR Code
A User Study of AR Interface in GLAM Exhibits April 27, 2024April 27, 2024 This post delves into the findings and implications of a user study conducted to investigate the impact of an AR interface on engagement and learning in museum exhibits. Let’s journey through the insights gleaned from this study. Pilot Study and Participants The study enlisted five participants, a sample size considered… Read More
Welcome to the Future of Exhibit Engagement! September 7, 2023April 27, 2024 In recent years, the advent of new Augmented Reality (AR) capable headsets has brought forth a wave of possibilities, reshaping the potential and application domain of interactive experiences. At the same time, physical exhibits in Galleries, Libraries, Archives, and Museums (GLAM) often lacked the vital element of interactivity, leading to… Read More