Namespace easyar
Klassen
- Accelerometer
Accelerometer ruft den systembereitgestellten Beschleunigungsmesser auf und gibt AccelerometerResult aus. Wenn das Gerät nicht mehr benötigt wird, rufen Sie close auf, um es zu schließen. Nach close sollte es nicht verwendet werden. Es wird nicht empfohlen, es gleichzeitig mehrmals zu öffnen, da es möglicherweise nicht verfügbar ist oder an Genauigkeit verliert.
- AccelerometerResult
Beschleunigungssensor-Messwerte. Die positive x-Achse zeigt vom Gerätemittelpunkt zur rechten Bildschirmseite. Die positive y-Achse zeigt vom Gerätemittelpunkt zur oberen Bildschirmseite. Die positive z-Achse zeigt vom Gerätemittelpunkt senkrecht zum Bildschirm nach außen. x, y, z werden in m/s^2 angegeben. timestamp wird in Sekunden angegeben.
- AccelerometerResultSink
Eingangsport für Beschleunigungssensor-Ergebnisse. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- AccelerometerResultSource
Ausgabeport für Beschleunigungsmesserergebnis. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- ARCoreCameraDevice
ARCoreCameraDevice implementiert ein ARCore-basiertes camera device und gibt InputFrame aus (einschließlich image, camera parameters, timestamp, 6DOF-Positionsinformationen und tracking status). Vor der Verwendung muss java.lang.System.loadLibrary verwendet werden, um libarcore_sdk_c.so zu laden. Nach der Erstellung kann start/stop aufgerufen werden, um das Sammeln von video stream-Daten zu starten und zu stoppen. Wenn das Gerät nicht mehr benötigt wird, kann close zum Schließen aufgerufen werden. Nach close sollte es nicht mehr verwendet werden. ARCoreCameraDevice gibt InputFrame über inputFrameSource aus; inputFrameSource sollte zur Verwendung mit InputFrameSink verbunden werden. bufferCapacity bezeichnet die Kapazität des InputFrame-Buffers. Wenn mehr als diese Anzahl von InputFrame aus dem Gerät ausgegeben und nicht freigegeben werden, gibt das Gerät keine neuen InputFrame mehr aus, bis vorherige InputFrame freigegeben wurden. Dies kann Probleme wie ein eingefrorenes Bild verursachen. Hinweis: Die aktuelle ARCore-Implementierung (v1.13.0) hat beim Erstellen und Zerstören von session ein Speicherleck. Wiederholtes Erstellen und Zerstören führt dazu, dass die Speichernutzung weiter steigt und nach der Zerstörung nicht freigegeben wird.
- ARCoreDeviceListDownloader
ARCoreDeviceListDownloader wird verwendet, um aktualisierte Kalibrierungsparameter der Geräteliste herunterzuladen, die in ARCoreCameraDevice verwendet werden.
- ARKitCameraDevice
ARKitCameraDevice implementiert ein ARKit-basiertes camera device und gibt InputFrame aus (einschließlich image, camera parameters, timestamp, 6DOF-Positionsinformationen und tracking status). Nach der Erstellung kann start/stop aufgerufen werden, um das Sammeln von video stream-Daten zu starten und zu stoppen. Wenn das Gerät nicht mehr benötigt wird, kann close zum Schließen aufgerufen werden. Nach close sollte es nicht mehr verwendet werden. ARKitCameraDevice gibt InputFrame über inputFrameSource aus; inputFrameSource sollte zur Verwendung mit InputFrameSink verbunden werden. bufferCapacity bezeichnet die Kapazität des InputFrame-Buffers. Wenn mehr als diese Anzahl von InputFrame aus dem Gerät ausgegeben und nicht freigegeben werden, gibt das Gerät keine neuen InputFrame mehr aus, bis vorherige InputFrame freigegeben wurden. Dies kann Probleme wie ein eingefrorenes Bild verursachen.
- AttitudeSensor
AttitudeSensor ruft den systembereitgestellten Lagesensor auf und gibt AttitudeSensorResult aus. Wenn das Gerät nicht mehr benötigt wird, rufen Sie close auf, um es zu schließen. Nach close sollte es nicht verwendet werden. Es wird nicht empfohlen, es gleichzeitig mehrmals zu öffnen, da es möglicherweise nicht verfügbar ist oder an Genauigkeit verliert.
- AttitudeSensorResult
Messwert des attitude sensor. Die positive x-Achse zeigt vom Geraetezentrum zur rechten Bildschirmseite. Die positive y-Achse zeigt vom Geraetezentrum zum oberen Bildschirmrand. Die positive z-Achse zeigt vom Geraetezentrum senkrecht zum Bildschirm nach aussen. Das Geraet rotiert um einen Winkel θ um die Achse (x, y, z). Das Einheits-Rotationsquaternion ist (cos(θ/2), x*sin(θ/2), y*sin(θ/2), z*sin(θ/2)). (v0, v1, v2, v3) = (cos(θ/2), x*sin(θ/2), y*sin(θ/2), z*sin(θ/2)). Das Referenzkoordinatensystem ist als Satz orientierter standardmaessiger Orthonormalbasen definiert, wobei
Z zum Himmel zeigt und parallel zum Boden ist. (X, Y, Z) ein rechtshaendiges System bildet.timestamp ist in Sekunden angegeben.
- AttitudeSensorResultSink
Eingangsport für Ergebnisse des Attitude-Sensors. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- AttitudeSensorResultSource
Ausgabeport für Lagesensorergebnis. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- BlockInfo
Das durch dense reconstruction erhaltene Modell wird durch ein Dreiecksnetz dargestellt, genannt mesh. Da mesh häufig aktualisiert wird, wird zur Effizienz das mesh des gesamten rekonstruierten Modells in viele mesh blocks unterteilt. Ein mesh block besteht aus einem Würfel mit einer Seitenlänge von etwa 1 Meter und enthält Elemente wie vertex und index. BlockInfo beschreibt den Inhalt eines mesh block. Dabei ist (x,y,z) der Index des mesh block. Durch Multiplizieren von (x,y,z) mit der physischen Größe jedes mesh block erhält man die Koordinaten des origin dieses mesh block im world coordinate system. Die anzuzeigenden Teile können anhand der Position des mesh block in der Welt vorab gefiltert werden, um Renderzeit zu sparen.
- BlockPriorResult
Vorab-Karteninformationen. blockIds sind Karten-IDs. mode ist der Modus, in dem Vorabinformationen vom System verwendet werden, und kann soft oder hard sein. Siehe BlockPriorMode.
- Buffer
Buffer speichert ein raw byte array und kann zum Zugriff auf image data verwendet werden. In the Java API, you can get the buffer from Image and then copy data to a Java byte array. In all versions of EasyAR Sense, you can access image data. Refer to Image.
- BufferDictionary
Eine Zuordnung von Dateipfaden zu Buffer. Wird verwendet, um mehrere im Speicher abgelegte Dateien darzustellen.
- BufferPool
BufferPool implementiert einen Speicherpool. Er kann für Funktionen verwendet werden, die wiederholt Speicher gleicher Größe zuweisen, z. B. benutzerdefinierter Kamerazugriff, und reduziert die Zeit für Speicherzuweisungen.
- CalibrationDownloader
CalibrationDownloader wird verwendet, um aktualisierte Kalibrierungsparameter herunterzuladen, die in MotionTracker verwendet werden. MotionTracker muss nach dem Herunterladen neu erstellt werden, damit die Aktualisierung wirksam wird.
- CallbackScheduler
Callback-Scheduler. Es gibt zwei Unterklassen, DelayedCallbackScheduler und ImmediateCallbackScheduler. DelayedCallbackScheduler wird verwendet, um Callbacks bis zum manuellen Aufruf zu verzögern, und kann in Single-Thread-Umgebungen wie verschiedenen UI-Umgebungen verwendet werden. ImmediateCallbackScheduler wird verwendet, um Callbacks sofort auszuführen, und kann in Multi-Thread-Umgebungen wie Servern oder Hintergrunddiensten verwendet werden.
- CameraDevice
CameraDevice implements a camera device that outputs InputFrame (including image, camera parameters, and timestamp). It is available on Windows, Mac, Android, and iOS. After opening, start/stop can be called to start and stop data collection. start/stop do not affect previously set camera parameters. When the device is no longer needed, close can be called to close it. It should not be used after close. CameraDevice outputs InputFrame through inputFrameSource. inputFrameSource should be connected to InputFrameSink for use. bufferCapacity indicates the capacity of the InputFrame buffer. If more than this number of InputFrame objects are output from the device and not released, the device will stop outputting new InputFrame objects until previous InputFrame objects are released. This may cause problems such as a frozen image. When used on Android, the android.permission.CAMERA permission declaration must be added to AndroidManifest.xml. When used on iOS, the NSCameraUsageDescription permission declaration must be added to Info.plist.
- CameraDeviceSelector
Wird verwendet, um die Camera API (camera1 oder camera2) unter Android auszuwählen. camera1 hat bessere Kompatibilität, enthält aber einige notwendige Informationen wie Zeitstempel nicht. camera2 hat auf einigen Geräten Kompatibilitätsprobleme. Verschiedene Optionen wählen je nach Verwendung camera1 oder camera2 aus.
- CameraParameters
camera parameters, einschließlich Bildgroße, focal length, principal point, camera-Typ und Rotationswinkel der camera relativ zur device natural orientation.
- CloudLocalizer
CloudLocalizer implementiert cloud localization.
- CloudLocalizerBlockInstance
Eine Instanz eines von CloudLocalizer lokalisierten blocks.
- CloudRecognizer
CloudRecognizer implementiert cloud recognition. Für cloud recognition muss vor der Verwendung eine cloud recognition-Bildbibliothek in der Cloud erstellt werden. Siehe EasyAR CRS-Dokumentation. Wenn diese Komponente nicht mehr benötigt wird, rufen Sie close auf, um sie zu schließen. Nach close sollte sie nicht weiter verwendet werden. Vor der Verwendung von CloudRecognizer muss ein ImageTracker eingerichtet und vorbereitet werden. Jeder zurückgegebene target sollte vor dem Tracking manuell mit loadTarget in ImageTracker geladen werden. Nach dem Laden sind recognition und tracking des target identisch mit der Verwendung eines lokalen target. Nachdem ein target erkannt wurde, können Sie ihn aus dem callback erhalten und sollten dann die target uid verwenden, um verschiedene targets zu unterscheiden. Die target runtimeID wird dynamisch erzeugt und eignet sich nicht als eindeutige Kennung für einen target bei cloud recognition.
- DelayedCallbackScheduler
Scheduler für verzögerte Callbacks. Wird verwendet, um Callbacks bis zum manuellen Aufruf zu verzögern, und kann in Single-Thread-Umgebungen wie verschiedenen UI-Umgebungen verwendet werden. Alle Member dieser Klasse sind threadsicher.
- DenseSpatialMap
DenseSpatialMap wird für die genaue dreidimensionale dichte Rekonstruktion der Umgebung verwendet. Das rekonstruierte Modell wird durch ein Dreiecksnetz dargestellt, genannt mesh. DenseSpatialMap belegt 1 camera buffer.
- EventDumpRecorder
Ereignisdump-Recorder. Wird verwendet, um einige wichtige Diagnoseinformationen in EED-Dateien zu speichern. Alle Member dieser Klasse sind threadsicher.
- FeedbackFrame
Feedback-Frame. Enthält einen Eingabeframe und einen historischen Ausgabeframe und wird für feedbackbasierte synchrone Verarbeitungskomponenten wie ImageTracker verwendet.
- FeedbackFrameFork
Feedback-Frame-Fork. Wird verwendet, um einen Feedback-Frame parallel an mehrere Komponenten zu übertragen. Alle Member dieser Klasse sind threadsicher.
- FeedbackFrameSink
Eingangsport für Feedback-Frames. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- FeedbackFrameSource
Ausgabeport für Feedback-Frame. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- FrameFilterResult
FrameFilterResult ist die Basisklasse für alle Ergebnisse von Komponenten, die synchrone Algorithmen verwenden.
- Gyroscope
Gyroscope ruft das systembereitgestellte Gyroskop auf und gibt GyroscopeResult aus. Wenn das Gerät nicht mehr benötigt wird, rufen Sie close auf, um es zu schließen. Nach close sollte es nicht verwendet werden. Es wird nicht empfohlen, es gleichzeitig mehrmals zu öffnen, da es möglicherweise nicht verfügbar ist oder an Genauigkeit verliert.
- GyroscopeResult
Gyroskop-Messwerte. Die positive x-Achse zeigt vom Gerätemittelpunkt zur rechten Bildschirmseite. Die positive y-Achse zeigt vom Gerätemittelpunkt zur oberen Bildschirmseite. Die positive z-Achse zeigt vom Gerätemittelpunkt senkrecht zum Bildschirm nach außen. x, y, z geben die Winkelgeschwindigkeit um die entsprechenden Achsen in Radiant/Sekunde an. Wenn man von einem Punkt in positiver Richtung einer Koordinatenachse auf das Gerät blickt, ist gegen den Uhrzeigersinn die positive Drehrichtung. timestamp wird in Sekunden angegeben.
- GyroscopeResultSink
Eingangsport für Gyroskop-Ergebnisse. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- GyroscopeResultSource
Ausgabeport für Gyroskopergebnis. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- Image
Image speichert Bilddaten und wird verwendet, um ein image im Speicher darzustellen. Image bietet Zugriff auf Rohdaten als Byte-Array und stellt außerdem Schnittstellen zum Zugriff auf Informationen wie width/height bereit. In allen Versionen von EasyAR Sense können Sie auf Bilddaten zugreifen. Unter iOS können Sie so darauf zugreifen
#import <easyar/buffer.oc.h> #import <easyar/image.oc.h> easyar_OutputFrame * outputFrame = [outputFrameBuffer peek]; if (outputFrame != nil) { easyar_Image * i = [[outputFrame inputFrame] image]; easyar_Buffer * b = [i buffer]; char * bytes = calloc([b size], 1); memcpy(bytes, [b data], [b size]); // use bytes here free(bytes); }Unter Android,
import cn.easyar.*; OutputFrame outputFrame = outputFrameBuffer.peek(); if (outputFrame != null) { InputFrame inputFrame = outputFrame.inputFrame(); Image i = inputFrame.image(); Buffer b = i.buffer(); byte[] bytes = new byte[b.size()]; b.copyToByteArray(0, bytes, 0, bytes.length); // use bytes here b.dispose(); i.dispose(); inputFrame.dispose(); outputFrame.dispose(); }
- ImageHelper
Image-Hilfsklasse.
- ImageTarget
ImageTarget stellt ein target für ein planares Bild dar, das von ImageTracker getrackt werden kann. Werte in ImageTarget müssen zunächst mit Methoden wie create... gefüllt werden, bevor sie gelesen werden können. Nachdem es über loadTarget erfolgreich in ImageTracker geladen wurde, kann es von ImageTracker erkannt und getrackt werden.
- ImageTargetParameters
ImageTargetParameters stellt die Parameter dar, die zum Erstellen von ImageTarget erforderlich sind.
- ImageTracker
ImageTracker implements detection and tracking of planar cards. ImageTracker occupies (1 + SimultaneousNum) camera buffers. Use camera setBufferCapacity to set no less than the total number of camera buffers occupied by all components. After creation, start/stop can be called to start and stop running. start/stop are very lightweight calls. When the component is no longer needed, close can be called to close it. It should not be used after close. ImageTracker inputs FeedbackFrame through feedbackFrameSink. FeedbackFrameSource should be connected to feedbackFrameSink for use. Before a Target can be tracked by ImageTracker, you need to load it with loadTarget/unloadTarget. The result of load/unload can be obtained through the callback passed to the interface.
- ImageTrackerConfig
Erstellungskonfiguration für ImageTracker.
- ImageTrackerResult
Ergebnis von ImageTracker.
- ImmediateCallbackScheduler
Scheduler für sofortige Callbacks. Wird verwendet, um Callbacks sofort auszuführen, und kann in Multi-Thread-Umgebungen wie Servern oder Hintergrunddiensten verwendet werden. Alle Member dieser Klasse sind threadsicher.
- InertialCameraDevice
InertialCameraDevice implements a camera device based on motion inertia, outputting InputFrame whose CameraTransformType is FiveDofRotXZ (including image, camera parameters, timestamp, pose transform matrix, and tracking status). After creation, start/stop can be called to start and stop video stream data collection. When the device is no longer needed, close can be called to close it. It should not be used after close. InertialCameraDevice outputs InputFrame through inputFrameSource. inputFrameSource should be connected to InputFrameSink for use. bufferCapacity indicates the capacity of the InputFrame buffer. If more than this number of InputFrame objects are output from the device and not released, the device will stop outputting new InputFrame objects until previous InputFrame objects are released. This may cause problems such as a frozen image.
- InputFrame
Input frame. Enthält image, camera parameters, timestamp, camera transform relativ zum world coordinate system und tracking status. Davon sind camera parameters, timestamp, camera transform relativ zum world coordinate system und tracking status optional, aber bestimmte Algorithmuskomponenten stellen bestimmte Anforderungen an den input.
- InputFrameFork
Eingabeframe-Fork. Wird verwendet, um einen Eingabeframe parallel an mehrere Komponenten zu übertragen. Alle Member dieser Klasse sind threadsicher.
- InputFramePlayer
Eingabeframe-Player. Hat einen Eingabeframe-Ausgabeport, der verwendet wird, um Eingabeframes aus einer EIF-Datei abzurufen. Alle Member dieser Klasse sind threadsicher.
- InputFrameRecorder
Eingabeframe-Recorder. Hat einen Eingabeframe-Eingabeport und einen Eingabeframe-Ausgabeport und wird verwendet, um durchlaufende Eingabeframes in einer EIF-Datei zu speichern. Alle Member dieser Klasse sind threadsicher.
- InputFrameSink
Eingangsport für Input-Frames. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- InputFrameSource
Ausgabeport für Eingabeframes. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- InputFrameThrottler
Input frame throttler. It has one input frame input port and one input frame output port, used to prevent new input frames from entering an algorithm component while the component has not finished processing the previous frame. InputFrameThrottler occupies one camera buffer. Use camera setBufferCapacity to set no fewer camera buffers than the total number occupied by all components. All members of this class are thread-safe. Note that connecting and disconnecting signalInput should not be performed while data is flowing in, otherwise it may enter a state where it cannot output. It is recommended to complete data-flow connections before starting the Camera.
- InputFrameToFeedbackFrameAdapter
Adapter von Eingabeframe zu Feedback-Frame. Hat einen Eingabeframe-Eingabeport, einen Eingabeport für historische Ausgabeframes und einen Feedback-Frame-Ausgabeport. Er kombiniert einen Eingabeframe und einen historischen Ausgabeframe zu einem Feedback-Frame und leitet ihn an Algorithmuskomponenten weiter, die Feedback-Frame-Eingabe benötigen, z. B. ImageTracker. Jedes Mal, wenn ein Eingabeframe eingegeben wird, wird er mit dem vorherigen historischen Ausgabeframe zu einem Feedback-Frame kombiniert. Wenn noch kein historischer Ausgabeframe eingegeben wurde, ist der historische Ausgabeframe im Feedback-Frame leer. InputFrameToFeedbackFrameAdapter belegt 1 camera buffer. Verwenden Sie setBufferCapacity der camera, um mindestens die Anzahl der von allen Komponenten belegten camera buffer festzulegen. Alle Member dieser Klasse sind threadsicher.
- InputFrameToOutputFrameAdapter
Adapter von Eingabeframe zu Ausgabeframe. Hat einen Eingabeframe-Eingabeport und einen Ausgabeframe-Ausgabeport. Er kapselt Eingabeframes als Ausgabeframes und ermöglicht direktes Rendering ohne Verbindung zu Algorithmuskomponenten. Alle Member dieser Klasse sind threadsicher.
- JniUtility
JNI utility class. Used to wrap Java arrays and ByteBuffer in Unity. iOS is not supported.
- LocationResult
Positionsmessung. latitude und longitude sind in Grad. altitude ist in Metern. horizontalAccuracy ist die horizontale Genauigkeit in Metern. verticalAccuracy ist die Genauigkeit in Gravitationsrichtung in Metern.
- LocationResultSink
Eingangsport für Standortergebnisse. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- LocationResultSource
Ausgabeport für Positionsergebnis. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- Log
Log-Klasse. Wird verwendet, um Logs auszugeben oder eine benutzerdefinierte Log-Ausgabefunktion festzulegen.
- Magnetometer
Magnetometer ruft das systembereitgestellte Magnetometer auf und gibt MagnetometerResult aus. Wenn das Gerät nicht mehr benötigt wird, rufen Sie close auf, um es zu schließen. Nach close sollte es nicht verwendet werden. Es wird nicht empfohlen, es gleichzeitig mehrmals zu öffnen, da es möglicherweise nicht verfügbar ist oder an Genauigkeit verliert.
- MagnetometerResult
Magnetometer-Messwerte. Die positive x-Achse zeigt vom Gerätemittelpunkt zur rechten Bildschirmseite. Die positive y-Achse zeigt vom Gerätemittelpunkt zur oberen Bildschirmseite. Die positive z-Achse zeigt vom Gerätemittelpunkt senkrecht zum Bildschirm nach außen. x, y, z werden in uT (Mikrotesla) angegeben. timestamp wird in Sekunden angegeben.
- MagnetometerResultSink
Eingangsport für Magnetometerergebnisse. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- MagnetometerResultSource
Ausgabeport für Magnetometerergebnis. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- Matrix33F
Quadratische Matrix dritter Ordnung. Die Daten sind in row-major-Reihenfolge angeordnet.
- Matrix44F
Quadratische Matrix vierter Ordnung. Die Daten sind in row-major-Reihenfolge angeordnet.
- MegaGoBlockInfo
Block-Informationen im Mega Go-Kartenpaket.
- MegaGoTargetLoadResult
Ergebnis des Ladens von target in Mega Go.
- MegaGoTracker
Stellt bereit device-side localization. MegaGoTracker occupies 2 camera buffers.
- MegaGoTrackerBlockInstance
Eine Instanz eines von MegaGoTracker lokalisierten blocks.
- MegaGoTrackerLocalizationResponse
MegaGoTracker-Lokalisierungsantwort.
- MegaGoTrackerResult
Ausgabeergebnis von MegaGoTracker. Im asynchronen Modus wird das Ergebnis über OutputFrame ausgegeben.
- MegaLandmarkFilter
MegaLandmarkFilter implementiert VPS cloud localization-Filterung.
- MegaTracker
Stellt cloud localization bereit. MegaTracker occupies 1 camera buffer.
- MegaTrackerBlockInstance
Eine Instanz eines von MegaTracker lokalisierten blocks.
- MegaTrackerLocalizationResponse
Antwort auf eine MegaTracker localization-Anfrage.
- MegaTrackerResult
Ausgabe von MegaTracker, aktualisiert mit der Frequenz von OutputFrame.
- MotionInputData
Bewegungseingabedaten. Enthaelt timestamp, transform relativ zum Weltkoordinatensystem und tracking-Status.
- MotionTrackerCameraDevice
MotionTrackerCameraDevice implements a camera device for real-scale 6DOF motion tracking, outputting InputFrame (including image, camera parameters, timestamp, 6DOF position information, and tracking status). After creation, start/stop can be called to start and stop the data stream. When the device is no longer needed, close can be called to close it. It should not be used after close. MotionTrackerCameraDevice outputs InputFrame through inputFrameSource. inputFrameSource should be connected to InputFrameSink for use.
- ObjectTarget
ObjectTarget stellt ein 3D object target dar, das von ObjectTracker getrackt werden kann. Die Größe von ObjectTarget wird durch die
obj-Datei bestimmt. Die Größe kann durch Ändern vonscalegeändert werden.scaleist standardmäßig 1. Nachdem ObjectTarget über loadTarget erfolgreich in ObjectTracker geladen wurde, kann es von ObjectTracker erkannt und getrackt werden.
- ObjectTargetParameters
ObjectTargetParameters stellt die Parameter dar, die zum Erstellen von ObjectTarget erforderlich sind.
- ObjectTracker
ObjectTracker implementiert Erkennung und Tracking von 3D object targets. ObjectTracker belegt (1 + SimultaneousNum) camera-Buffer. setBufferCapacity der camera sollte verwendet werden, um mindestens die Anzahl der camera-Buffer festzulegen, die von allen Komponenten belegt werden. Nach der Erstellung kann start/stop aufgerufen werden, um den Betrieb zu starten und zu stoppen; start/stop sind sehr leichte Aufrufe. Wenn die Komponente nicht mehr benötigt wird, kann close zum Schließen aufgerufen werden. Nach close sollte sie nicht mehr verwendet werden. ObjectTracker gibt FeedbackFrame über feedbackFrameSink ein; FeedbackFrameSource sollte zur Verwendung mit feedbackFrameSink verbunden werden. Bevor ein Target von ObjectTracker getrackt werden kann, müssen Sie es über loadTarget/unloadTarget laden. Das Ergebnis von load/unload kann über callbacks ermittelt werden, die an die Schnittstelle übergeben werden.
- ObjectTrackerResult
Ergebnis von ObjectTracker.
- OutputFrame
Ausgabeframe. Enthält den Eingabeframe und die Ausgabeergebnisse synchroner Verarbeitungskomponenten.
- OutputFrameBuffer
Ausgabeframe-Puffer. Hat einen Ausgabeframe-Eingabeport und eine Ausgabeframe-Abruffunktion, um das Abrufen von Ausgabeframes von asynchron auf synchrones Polling umzustellen, geeignet für Frame-für-Frame-Rendering. OutputFrameBuffer belegt 1 camera buffer. Verwenden Sie setBufferCapacity der camera, um mindestens die Anzahl der von allen Komponenten belegten camera buffer festzulegen. Alle Member dieser Klasse sind threadsicher.
- OutputFrameFork
Ausgabeframe-Fork. Wird verwendet, um einen Ausgabeframe parallel an mehrere Komponenten zu übertragen. Alle Member dieser Klasse sind threadsicher.
- OutputFrameJoin
Ausgabeframe-Joiner. Wird verwendet, um Ausgabeframes mehrerer Komponenten zu einem Ausgabeframe zusammenzuführen. Alle Member dieser Klasse sind threadsicher. Beachten Sie, dass das Verbinden und Trennen der mehreren Eingaben nicht erfolgen sollte, während Daten einfließen; andernfalls kann es in einem Zustand hängen bleiben, in dem keine Ausgabe möglich ist. (Es wird empfohlen, Datenflussverbindungen vor dem Start von Camera abzuschließen.)
- OutputFrameSink
Eingangsport für Output-Frames. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- OutputFrameSource
Ausgabeport für Ausgabeframes. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- ProximityLocationResult
Näherungspositionsmessung. x, y und z sind in Metern. Der Ursprung ist der map block-Ursprung. y zeigt nach oben. accuracy ist in Metern. timestamp und validTime sind in Sekunden. is2d gibt an, ob y nicht verwendet wird.
- ProximityLocationResultSink
Eingangsport für Näherungspositions-Ergebnisse. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- ProximityLocationResultSource
Ausgabeport für Näherungspositionsergebnis. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- Recorder
Recorder implementiert Bildschirmaufzeichnung für die aktuelle Rendering-Umgebung. Der aktuelle Recorder funktioniert nur unter Android (4.3 oder neuer) und in der OpenGL ES 3.0-Umgebung unter iOS. Da er von OpenGLES abhängt, müssen alle Funktionen dieser Klasse (außer requestPermissions, einschließlich Destruktor) in einem einzelnen Thread aufgerufen werden, der einen OpenGLES-Kontext enthält. Unity Only Wenn in Unity Multi-threaded rendering verwendet wird, wird der Skript-Thread vom Rendering-Thread getrennt, und updateFrame kann nicht im Rendering-Thread aufgerufen werden. Wenn Bildschirmaufzeichnung benötigt wird, sollte Multi-threaded rendering daher deaktiviert werden. Bei Verwendung unter Android muss die Berechtigungsdeklaration android.permission.RECORD_AUDIO zu AndroidManifest.xml hinzugefügt werden. Bei Verwendung unter iOS muss die Berechtigungsdeklaration NSMicrophoneUsageDescription zu Info.plist hinzugefügt werden.
- RecorderConfiguration
RecorderConfiguration ist die Startkonfiguration fuer Recorder.
- SignalSink
Signaleingangsport. Wird verwendet, um den Eingangsport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- SignalSource
Signalausgabeport. Wird verwendet, um den Ausgabeport einer Komponente offenzulegen. Alle Member dieser Klasse sind threadsicher.
- SparseSpatialMap
Stellt bereit the main functions of the SparseSpatialMap system: map generation and storage, map loading and localization, and access to environment information such as point clouds and planes for hit Test. SparseSpatialMap occupies 2 camera buffers. Use camera setBufferCapacity to set no less than the total number of camera buffers occupied by all components.
- SparseSpatialMapConfig
Wird verwendet, um die Lokalisierungsstrategie im Sparse-Spatial-Mapping zu konfigurieren.
- SparseSpatialMapManager
SparseSpatialMap-Managerklasse zur Verwaltung der Freigabefunktion von SparseSpatialMap.
- SparseSpatialMapResult
Ruft die Ausgabe des sparse mapping- und localization-Systems ab, aktualisiert mit der Frequenz von OutputFrame.
- SurfaceTracker
SurfaceTracker implementiert tracking von Umgebungsoberflächen. SurfaceTracker belegt 1 camera buffer. Verwenden Sie setBufferCapacity der camera, um mindestens die Gesamtzahl der von allen Komponenten belegten camera buffers festzulegen. Nach der Erstellung können start/stop aufgerufen werden, um die Ausführung zu starten und zu stoppen. start/stop sind sehr leichte Aufrufe. Wenn diese Komponente nicht mehr benötigt wird, rufen Sie close auf, um sie zu schließen. Nach close sollte sie nicht weiter verwendet werden. SurfaceTracker gibt InputFrame über inputFrameSink ein. Verbinden Sie InputFrameSource zur Verwendung mit inputFrameSink.
- SurfaceTrackerResult
Ergebnis von SurfaceTracker.
- Target
Target is the base class of all targets in EasyAR that can be tracked by ImageTracker or other algorithms.
- TargetInstance
TargetInstance ist ein von einem tracker verfolgtes target. TargetInstance enthaelt das urspruengliche verfolgte Target sowie den aktuellen status und die pose dieses Target.
- TargetTrackerResult
TargetTrackerResult ist die Basisklasse von ImageTrackerResult und ObjectTrackerResult.
- TextureId
TextureId kapselt Texturobjekte in Grafik-APIs. Für OpenGL/OpenGLES verwenden Sie getInt und fromInt. Für Direct3D verwenden Sie getPointer und fromPointer.
- ThreeDofCameraDevice
ThreeDofCameraDevice implementiert ein three dof camera device und gibt InputFrame aus, dessen CameraTransformType ThreeDofRotOnly ist (einschließlich image, camera parameters, timestamp, pose-Transformationsmatrix und tracking status). Nach der Erstellung kann start/stop aufgerufen werden, um das Sammeln von video stream-Daten zu starten und zu stoppen. Wenn das Gerät nicht mehr benötigt wird, kann close zum Schließen aufgerufen werden. Nach close sollte es nicht mehr verwendet werden. ThreeDofCameraDevice gibt InputFrame über inputFrameSource aus; inputFrameSource sollte zur Verwendung mit InputFrameSink verbunden werden. bufferCapacity bezeichnet die Kapazität des InputFrame-Buffers. Wenn mehr als diese Anzahl von InputFrame aus dem Gerät ausgegeben und nicht freigegeben werden, gibt das Gerät keine neuen InputFrame mehr aus, bis vorherige InputFrame freigegeben wurden. Dies kann Probleme wie ein eingefrorenes Bild verursachen.
- Vec2F
Zweidimensionaler float-Vektor.
- Vec2I
Zweidimensionaler int-Vektor.
- Vec3D
Dreidimensionaler double-Vektor.
- Vec3F
Dreidimensionaler float-Vektor.
- Vec4F
Vierdimensionaler float-Vektor.
- Vec4I
Vierdimensionaler int-Vektor.
- VideoInputFramePlayer
Input-frame-Player. Er besitzt einen input frame-Ausgabeport, der input frames aus EIF MKV-Dateien extrahiert. Alle Member dieser Klasse sind thread-safe.
- VideoInputFrameRecorder
Input frame recorder. Besitzt einen input frame input port und einen input frame output port, um durchlaufende input frames in einer EIF MKV-Datei zu speichern. Alle Mitglieder dieser Klasse sind thread-safe.
- VideoPlayer
VideoPlayer ist eine Klasse für video playback. EasyAR unterstützt normales Video, transparentes Video und streaming playback. Der Videoinhalt wird auf die an setRenderTexture übergebene texture gerendert. Diese Klasse unterstützt nur OpenGLES 3.0-texture. Da sie von OpenGLES abhängt, müssen alle Funktionen dieser Klasse (einschließlich destructor) in einem einzelnen thread mit OpenGLES-Kontext aufgerufen werden. Die aktuelle Version verlangt, dass Breite und Höhe Vielfache von 16 sind. Unterstützte Videodateiformate Windows: Media Foundation-kompatible Formate. Durch Installieren zusätzlicher Decoder können mehr Formate unterstützt werden. Siehe Supported Media Formats in Media Foundation . DirectShow wird nicht unterstützt. Mac: Nicht unterstützt. Android: Vom System unterstützte Formate. Siehe Supported media formats . iOS: Vom System unterstützte Formate. Derzeit gibt es kein gültiges Referenzdokument.
- VisionOSARKitCameraDevice
VisionOSARKitCameraDevice implementiert ein auf VisionOS ARKit basierendes camera device, das InputFrame mit image, camera parameters, timestamp, 6DOF-Pose-Informationen und tracking status ausgibt. Nach der Erstellung können start/stop aufgerufen werden, um die Erfassung von video stream-Daten zu starten und zu stoppen. Wenn das device nicht mehr benötigt wird, rufen Sie close auf, um es zu schließen. Nach close sollte es nicht weiter verwendet werden. VisionOSARKitCameraDevice gibt InputFrame über inputFrameSource aus. Verbinden Sie inputFrameSource zur Verwendung mit InputFrameSink. bufferCapacity gibt die Kapazität des InputFrame-Buffers an. Wenn mehr als diese Anzahl von InputFrame von diesem device ausgegeben und nicht freigegeben werden, gibt das device keine neuen InputFrame mehr aus, bis die vorherigen InputFrame freigegeben wurden. Dies kann Probleme wie ein eingefrorenes Bild verursachen.
- XREALCameraDevice
XREALCameraDevice implementiert ein auf XREAL Enterprise Native SDK Plugin basierendes camera device und gibt InputFrame aus (image, camera parameters, timestamp, 6DOF-Positionsinformationen und tracking status können nicht abgerufen werden). Nach der Erstellung kann start/stop aufgerufen werden, um das Sammeln von video stream-Daten zu starten und zu stoppen. Stellen Sie sicher, dass start erst aufgerufen wird, nachdem isDeviceSupported true zurückgibt. Wenn das Gerät nicht mehr benötigt wird, kann close zum Schließen aufgerufen werden. Nach close sollte es nicht mehr verwendet werden. XREALCameraDevice gibt InputFrame über inputFrameSource aus; inputFrameSource sollte zur Verwendung mit InputFrameSink verbunden werden. bufferCapacity bezeichnet die Kapazität des InputFrame-Buffers. Wenn mehr als diese Anzahl von InputFrame aus dem Gerät ausgegeben und nicht freigegeben werden, gibt das Gerät keine neuen InputFrame mehr aus, bis vorherige InputFrame freigegeben wurden. Dies kann Probleme wie ein eingefrorenes Bild verursachen.
Enumerationen
- BlockPriorMode
Arbeitsmodus der vorherigen Karteninformationen
- CameraDeviceType
Kameragerätetyp.
- CameraModelType
Kameramodelltyp.
- CameraTransformType
Kameratransformationstyp.
- CloudLocalizerStatus
Cloud-Lokalisierungsstatus.
- MegaApiType
MEGA API-Typ.
- MegaGoTargetLoadStatus
Ladestatus des Mega Go target.
- MegaGoTrackerError
MegaGoTracker-Fehler.
- MegaGoTrackerOutputUpdateStatus
Aktualisierungsstatus der MegaGoTracker-Lokalisierungsantwort für die Ausgabe.
- MegaGoTrackerStatus
Ausführungsstatus von MegaGoTracker.
- MotionTrackingStatus
Beschreibt die Qualität des Bewegungs-Trackings des Geräts.
- PixelFormat
PixelFormat stellt das Bildpixelformat dar. Die Pixelrichtung aller Formate verläuft von links nach rechts und von oben nach unten.
- StorageType
StorageType gibt an, wo Bilder, json-Dateien, Videos oder andere Dateien gespeichert werden. StorageType legt das Stammverzeichnis fest, in dem Dateien gespeichert werden. In allen zugehörigen Schnittstellen können relative Pfade von diesem Stammverzeichnis aus verwendet werden.