Table of Contents

Namespace easyar

Классы

Accelerometer

Accelerometer вызывает предоставленный системой акселерометр и выводит AccelerometerResult. Когда устройство больше не нужно, вызовите close, чтобы закрыть его. После close его не следует использовать. Не рекомендуется открывать его несколько раз одновременно, так как оно может стать недоступным или потерять точность.

AccelerometerResult

Показания акселерометра. Положительное направление оси x направлено от центра устройства к правой стороне экрана. Положительное направление оси y направлено от центра устройства к верхней стороне экрана. Положительное направление оси z направлено наружу от центра устройства перпендикулярно экрану. x, y, z измеряются в m/s^2. timestamp измеряется в секундах.

AccelerometerResultSink

Входной порт результата акселерометра. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

AccelerometerResultSource

Выходной порт результата акселерометра. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

ARCoreCameraDevice

ARCoreCameraDevice реализует camera device на основе ARCore и выводит InputFrame (включая image, camera parameters, timestamp, информацию о положении 6DOF и tracking status). Перед использованием нужно загрузить libarcore_sdk_c.so с помощью java.lang.System.loadLibrary. После создания можно вызвать start/stop, чтобы начать и остановить сбор данных video stream. Когда устройство больше не нужно, можно вызвать close для закрытия. После close его не следует использовать. ARCoreCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает емкость буфера InputFrame. Если из устройства выведено больше этого количества InputFrame и они не освобождены, устройство перестанет выводить новые InputFrame, пока предыдущие InputFrame не будут освобождены. Это может привести к зависанию изображения и другим проблемам. Примечание: текущая реализация ARCore (v1.13.0) имеет утечку памяти при создании и уничтожении session. Повторное создание и уничтожение приводит к постоянному росту использования памяти, которая не освобождается после уничтожения.

ARCoreDeviceListDownloader

ARCoreDeviceListDownloader используется для загрузки обновленных калибровочных параметров списка устройств, используемых в ARCoreCameraDevice.

ARKitCameraDevice

ARKitCameraDevice реализует camera device на основе ARKit и выводит InputFrame (включая image, camera parameters, timestamp, информацию о положении 6DOF и tracking status). После создания можно вызвать start/stop, чтобы начать и остановить сбор данных video stream. Когда устройство больше не нужно, можно вызвать close для закрытия. После close его не следует использовать. ARKitCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает емкость буфера InputFrame. Если из устройства выведено больше этого количества InputFrame и они не освобождены, устройство перестанет выводить новые InputFrame, пока предыдущие InputFrame не будут освобождены. Это может привести к зависанию изображения и другим проблемам.

AttitudeSensor

AttitudeSensor вызывает предоставленный системой датчик ориентации и выводит AttitudeSensorResult. Когда устройство больше не нужно, вызовите close, чтобы закрыть его. После close его не следует использовать. Не рекомендуется открывать его несколько раз одновременно, так как оно может стать недоступным или потерять точность.

AttitudeSensorResult

Показание attitude sensor. Положительная ось x направлена от центра устройства к правой стороне экрана. Положительная ось y направлена от центра устройства к верхней части экрана. Положительная ось z направлена наружу от центра устройства перпендикулярно экрану. Устройство поворачивается на угол θ вокруг оси (x, y, z). Единичный кватернион вращения: (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)). Опорная система координат определяется как набор ориентированных стандартных ортонормированных базисов, где

Z направлена в небо и параллельна земле.

(X, Y, Z) образует правостороннюю систему.

timestamp указывается в секундах.

AttitudeSensorResultSink

Входной порт результата датчика ориентации. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

AttitudeSensorResultSource

Выходной порт результата датчика ориентации. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

BlockInfo

Модель, полученная dense reconstruction, представляется треугольной сеткой, называемой mesh. Поскольку mesh часто обновляется, для эффективности mesh всей реконструированной модели разделяется на множество mesh blocks. Mesh block состоит из куба со стороной около 1 метра и содержит такие элементы, как vertex и index. BlockInfo описывает содержимое mesh block. Здесь (x,y,z) является индексом mesh block. Умножив (x,y,z) на физический размер каждого mesh block, можно получить координаты origin этого mesh block в world coordinate system. Части, которые нужно отобразить, можно заранее отфильтровать по положению mesh block в мире, чтобы сэкономить время рендеринга.

BlockPriorResult

Аппаратная информация карты. blockIds — это ID карт. mode — режим использования предварительной информации системой, может быть soft или hard. См. BlockPriorMode.

Buffer

Buffer хранит raw byte array и может использоваться для доступа к image data. 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

Отображение путей файлов в Buffer. Используется для представления нескольких файлов, размещенных в памяти.

BufferPool

BufferPool реализует пул памяти. Он может использоваться для функций, которые многократно выделяют память одинакового размера, например для пользовательского доступа к камере, уменьшая время выделения памяти.

CalibrationDownloader

CalibrationDownloader используется для загрузки обновленных калибровочных параметров, используемых в MotionTracker. После загрузки необходимо заново создать MotionTracker, чтобы изменения вступили в силу.

CallbackScheduler

Планировщик обратных вызовов. Есть два подкласса: DelayedCallbackScheduler и ImmediateCallbackScheduler. DelayedCallbackScheduler используется для откладывания обратных вызовов до ручного вызова и может применяться в однопоточных средах, например в различных UI-средах. ImmediateCallbackScheduler используется для немедленного выполнения обратных вызовов и может применяться в многопоточных средах, например на серверах или в фоновых службах.

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

Используется для выбора Camera API (camera1 или camera2) на Android. camera1 имеет лучшую совместимость, но не содержит некоторой необходимой информации, например меток времени. camera2 имеет проблемы совместимости на некоторых устройствах. Разные варианты выбирают camera1 или camera2 в зависимости от назначения.

CameraParameters

camera parameters, включая размер изображения, focal length, principal point, тип camera и угол поворота camera относительно device natural orientation.

CloudLocalizer

CloudLocalizer реализует cloud localization.

CloudLocalizerBlockInstance

Экземпляр block, локализованный CloudLocalizer.

CloudLocalizerResult
CloudRecognizationResult
CloudRecognizer

CloudRecognizer реализует cloud recognition. Для использования cloud recognition необходимо создать в облаке библиотеку изображений cloud recognition. См. документацию EasyAR CRS. Когда этот компонент больше не нужен, вызовите close, чтобы закрыть его. После close использовать его не следует. Перед использованием CloudRecognizer необходимо настроить и подготовить ImageTracker. Любой возвращенный target перед отслеживанием следует вручную загрузить в ImageTracker с помощью loadTarget. После загрузки распознавание и отслеживание target такие же, как при использовании локального target. После распознавания target его можно получить из callback, а затем следует использовать target uid для различения разных target. Target runtimeID создается динамически и не подходит как уникальный идентификатор target при cloud recognition.

DelayedCallbackScheduler

Планировщик отложенных обратных вызовов. Используется для откладывания обратных вызовов до ручного вызова и может применяться в однопоточных средах, например в различных UI-средах. Все члены этого класса потокобезопасны.

DenseSpatialMap

DenseSpatialMap используется для точной трехмерной плотной реконструкции окружения. Реконструированная модель представляется треугольной сеткой, называемой mesh. DenseSpatialMap занимает 1 camera buffer.

DeviceAuxiliaryInfo
Engine
EventDumpRecorder

Регистратор дампа событий. Используется для сохранения ключевой диагностической информации в файлы EED. Все члены этого класса являются потокобезопасными.

FeedbackFrame

Кадр обратной связи. Содержит входной кадр и исторический выходной кадр, используется для компонентов синхронной обработки с обратной связью, таких как ImageTracker.

FeedbackFrameFork

Разветвитель для кадр обратной связи. Используется для параллельной передачи одного кадр обратной связи в несколько компонентов. Все члены этого класса являются потокобезопасными.

FeedbackFrameSink

Входной порт feedback frame. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

FeedbackFrameSource

Выходной порт кадра обратной связи. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

FrameFilterResult

FrameFilterResult является базовым классом для всех результатов компонентов, использующих синхронные алгоритмы.

Gyroscope

Gyroscope вызывает предоставленный системой гироскоп и выводит GyroscopeResult. Когда устройство больше не нужно, вызовите close, чтобы закрыть его. После close его не следует использовать. Не рекомендуется открывать его несколько раз одновременно, так как оно может стать недоступным или потерять точность.

GyroscopeResult

Показания гироскопа. Положительное направление оси x направлено от центра устройства к правой стороне экрана. Положительное направление оси y направлено от центра устройства к верхней стороне экрана. Положительное направление оси z направлено наружу от центра устройства перпендикулярно экрану. x, y, z обозначают угловую скорость вращения вокруг соответствующих осей в радианах/секунду. Если смотреть на устройство из точки в положительном направлении оси координат, направление против часовой стрелки является положительным направлением вращения. timestamp измеряется в секундах.

GyroscopeResultSink

Входной порт результата гироскопа. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

GyroscopeResultSource

Выходной порт результата гироскопа. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

Image

Image хранит данные изображения и используется для представления image в памяти. Image предоставляет доступ к исходным данным в виде массива байтов, а также интерфейсы для доступа к информации, такой как width/height. Во всех версиях EasyAR Sense можно получить доступ к данным изображения. В iOS доступ можно получить так

#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);
}

В 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

Вспомогательный класс изображения.

ImageTarget

ImageTarget представляет target для плоского изображения, который может отслеживаться ImageTracker. Значения внутри ImageTarget перед чтением должны быть сначала заполнены методами вроде create... После успешной загрузки в ImageTracker через loadTarget он может обнаруживаться и отслеживаться ImageTracker.

ImageTargetParameters

ImageTargetParameters представляет параметры, необходимые для создания ImageTarget.

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

Конфигурация создания ImageTracker.

ImageTrackerResult

Результат ImageTracker.

ImmediateCallbackScheduler

Планировщик немедленных обратных вызовов. Используется для немедленного выполнения обратных вызовов и может применяться в многопоточных средах, например на серверах или в фоновых службах. Все члены этого класса потокобезопасны.

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. Содержит image, camera parameters, timestamp, transform camera относительно world coordinate system и tracking status. Среди них camera parameters, timestamp, transform camera относительно world coordinate system и tracking status являются необязательными, но конкретные алгоритмические компоненты предъявляют особые требования к input.

InputFrameFork

Разветвитель для входной кадр. Используется для параллельной передачи одного входной кадр в несколько компонентов. Все члены этого класса являются потокобезопасными.

InputFramePlayer

Проигрыватель входных кадров. Имеет выходной порт входного кадра, используется для извлечения входных кадров из файла EIF. Все члены этого класса являются потокобезопасными.

InputFrameRecorder

Регистратор входных кадров. Имеет входной порт входного кадра и выходной порт входного кадра, используется для сохранения проходящих входных кадров в файл EIF. Все члены этого класса являются потокобезопасными.

InputFrameSink

Входной порт input frame. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

InputFrameSource

Выходной порт входного кадра. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

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

Адаптер входного кадра в кадр обратной связи. Имеет входной порт входного кадра, входной порт исторического выходного кадра и выходной порт кадра обратной связи. Он объединяет входной кадр и исторический выходной кадр в кадр обратной связи и передает его компонентам алгоритмов, которым требуется вход кадра обратной связи, например ImageTracker. Каждый раз при вводе входного кадра он объединяется с предыдущим историческим выходным кадром в кадр обратной связи. Если исторический выходной кадр еще не вводился, исторический выходной кадр в кадре обратной связи пуст. InputFrameToFeedbackFrameAdapter занимает 1 camera buffer. Используйте setBufferCapacity камеры, чтобы установить значение не меньше числа camera buffer, занятых всеми компонентами. Все члены этого класса являются потокобезопасными.

InputFrameToOutputFrameAdapter

Адаптер входного кадра в выходной кадр. Имеет входной порт входного кадра и выходной порт выходного кадра. Он упаковывает входные кадры в выходные кадры, позволяя выполнять прямой рендеринг без подключения алгоритмических компонентов. Все члены этого класса являются потокобезопасными.

JniUtility

JNI utility class. Used to wrap Java arrays and ByteBuffer in Unity. iOS is not supported.

LocationResult

Показание местоположения. latitude и longitude указаны в градусах. altitude указана в метрах. horizontalAccuracy — горизонтальная точность, в метрах. verticalAccuracy — точность в направлении гравитации, в метрах.

LocationResultSink

Входной порт результата местоположения. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

LocationResultSource

Выходной порт результата местоположения. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

Log

Класс журнала. Используется для вывода журналов или настройки пользовательской функции вывода журнала.

Magnetometer

Magnetometer вызывает предоставленный системой магнитометр и выводит MagnetometerResult. Когда устройство больше не нужно, вызовите close, чтобы закрыть его. После close его не следует использовать. Не рекомендуется открывать его несколько раз одновременно, так как оно может стать недоступным или потерять точность.

MagnetometerResult

Показания магнитометра. Положительное направление оси x направлено от центра устройства к правой стороне экрана. Положительное направление оси y направлено от центра устройства к верхней стороне экрана. Положительное направление оси z направлено наружу от центра устройства перпендикулярно экрану. x, y, z измеряются в uT (микротеслах). timestamp измеряется в секундах.

MagnetometerResultSink

Входной порт результата магнитометра. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

MagnetometerResultSource

Выходной порт результата магнитометра. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

Matrix33F

Квадратная матрица третьего порядка. Данные расположены в порядке row-major.

Matrix44F

Квадратная матрица четвертого порядка. Данные расположены в порядке row-major.

MegaGoBlockInfo

Информация block в пакете карты Mega Go.

MegaGoTargetLoadResult

Результат загрузки target в Mega Go.

MegaGoTracker

Предоставляет device-side localization. MegaGoTracker occupies 2 camera buffers.

MegaGoTrackerBlockInstance

Экземпляр block, локализованный MegaGoTracker.

MegaGoTrackerLocalizationResponse

Ответ локализации MegaGoTracker.

MegaGoTrackerResult

Выходной результат MegaGoTracker. В асинхронном режиме результат выводится через OutputFrame.

MegaLandmarkFilter

MegaLandmarkFilter реализует фильтрацию VPS cloud localization.

MegaLandmarkFilterResult
MegaTracker

Предоставляет cloud localization. MegaTracker occupies 1 camera buffer.

MegaTrackerBlockInstance

Экземпляр block, локализованный MegaTracker.

MegaTrackerLocalizationResponse

Ответ на запрос MegaTracker localization.

MegaTrackerResult

Вывод MegaTracker, обновляемый с частотой OutputFrame.

MotionInputData

Входные данные движения. Содержит timestamp, transform относительно мировой системы координат и status tracking.

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 представляет 3D object target, который может отслеживаться ObjectTracker. Размер ObjectTarget определяется файлом obj. Размер можно изменить, изменив scale. scale по умолчанию равен 1. После успешной загрузки ObjectTarget в ObjectTracker через loadTarget он может обнаруживаться и отслеживаться ObjectTracker.

ObjectTargetParameters

ObjectTargetParameters представляет параметры, необходимые для создания ObjectTarget.

ObjectTracker

ObjectTracker реализует обнаружение и tracking 3D object target. ObjectTracker занимает (1 + SimultaneousNum) буферов camera. Следует использовать setBufferCapacity у camera, чтобы установить количество буферов camera не меньше общего числа буферов, занятых всеми компонентами. После создания можно вызвать start/stop для запуска и остановки работы; start/stop являются очень легкими вызовами. Когда компонент больше не нужен, можно вызвать close для закрытия. После close его не следует использовать. ObjectTracker вводит FeedbackFrame через feedbackFrameSink; FeedbackFrameSource следует подключить к feedbackFrameSink для использования. Перед тем как Target сможет отслеживаться ObjectTracker, нужно загрузить его через loadTarget/unloadTarget. Результат load/unload можно получить через callback, переданный в интерфейс.

ObjectTrackerResult

Результат ObjectTracker.

OutputFrame

Выходной кадр. Содержит входной кадр и результаты вывода компонентов синхронной обработки.

OutputFrameBuffer

Буфер выходных кадров. Имеет входной порт выходного кадра и функцию получения выходного кадра, используется для преобразования получения выходных кадров из асинхронного в синхронный опрос, подходит для покадрового рендеринга. OutputFrameBuffer занимает 1 camera buffer. Используйте setBufferCapacity камеры, чтобы установить значение не меньше числа camera buffer, занятых всеми компонентами. Все члены этого класса являются потокобезопасными.

OutputFrameFork

Разветвитель для выходной кадр. Используется для параллельной передачи одного выходной кадр в несколько компонентов. Все члены этого класса являются потокобезопасными.

OutputFrameJoin

Объединитель выходных кадров. Используется для объединения выходных кадров нескольких компонентов в один выходной кадр. Все члены этого класса являются потокобезопасными. Обратите внимание, что подключение и отключение его нескольких входов не следует выполнять во время поступления данных; иначе он может застрять в состоянии без вывода. (Рекомендуется завершить подключение потоков данных до запуска Camera.)

OutputFrameSink

Входной порт output frame. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

OutputFrameSource

Выходной порт выходного кадра. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

PlaneData
PoseUtility
ProximityLocationResult

Показание близкого местоположения. x, y и z указаны в метрах. Начало координат — начало map block. y направлена вверх. accuracy указана в метрах. timestamp и validTime указаны в секундах. is2d указывает, не используется ли y.

ProximityLocationResultSink

Входной порт результата близкого местоположения. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

ProximityLocationResultSource

Выходной порт результата близкого местоположения. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

Recorder

Recorder реализует запись экрана для текущей среды рендеринга. Текущий Recorder работает только на Android (4.3 или новее) и в среде OpenGL ES 3.0 на iOS. Поскольку он зависит от OpenGLES, все функции этого класса (кроме requestPermissions, включая деструктор) должны вызываться в одном потоке, содержащем контекст OpenGLES. Unity Only В Unity, если используется Multi-threaded rendering, поток скриптов отделяется от потока рендеринга, и updateFrame нельзя вызвать в потоке рендеринга. Поэтому, если требуется запись экрана, функцию Multi-threaded rendering следует отключить. При использовании на Android необходимо добавить объявление разрешения android.permission.RECORD_AUDIO в AndroidManifest.xml. При использовании на iOS необходимо добавить объявление разрешения NSMicrophoneUsageDescription в Info.plist.

RecorderConfiguration

RecorderConfiguration является конфигурацией запуска для Recorder.

SceneMesh
SignalSink

Входной порт сигнала. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.

SignalSource

Выходной порт сигнала. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.

SparseSpatialMap

Предоставляет 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

Используется для настройки стратегии локализации в разреженном пространственном картографировании.

SparseSpatialMapManager

Класс менеджера SparseSpatialMap, используемый для управления совместным доступом SparseSpatialMap.

SparseSpatialMapResult

Получает вывод системы sparse mapping и localization, обновляемый с частотой OutputFrame.

Storage
SurfaceTracker

SurfaceTracker реализует tracking поверхностей окружения. SurfaceTracker занимает 1 camera buffer. Используйте setBufferCapacity у camera, чтобы задать значение не меньше общего количества camera buffers, занятых всеми компонентами. После создания можно вызывать start/stop для запуска и остановки работы. start/stop являются очень легкими вызовами. Когда этот компонент больше не нужен, вызовите close, чтобы закрыть его. После close использовать его не следует. SurfaceTracker вводит InputFrame через inputFrameSink. Для использования подключите InputFrameSource к inputFrameSink.

SurfaceTrackerResult

Результат SurfaceTracker.

Target

Target is the base class of all targets in EasyAR that can be tracked by ImageTracker or other algorithms.

TargetInstance

TargetInstance - это target, отслеженный tracker. TargetInstance включает исходный отслеженный Target, а также текущие status и pose этого Target.

TargetTrackerResult

TargetTrackerResult является базовым классом для ImageTrackerResult и ObjectTrackerResult.

TextureId

TextureId инкапсулирует текстурные объекты в графических API. Для OpenGL/OpenGLES используйте getInt и fromInt. Для Direct3D используйте getPointer и fromPointer.

ThreeDofCameraDevice

ThreeDofCameraDevice реализует camera device three dof и выводит InputFrame, у которого CameraTransformType равен ThreeDofRotOnly (включая image, camera parameters, timestamp, матрицу преобразования pose и tracking status). После создания можно вызвать start/stop, чтобы начать и остановить сбор данных video stream. Когда устройство больше не нужно, можно вызвать close для закрытия. После close его не следует использовать. ThreeDofCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает емкость буфера InputFrame. Если из устройства выведено больше этого количества InputFrame и они не освобождены, устройство перестанет выводить новые InputFrame, пока предыдущие InputFrame не будут освобождены. Это может привести к зависанию изображения и другим проблемам.

Vec2F

Двумерный вектор float.

Vec2I

Двумерный вектор int.

Vec3D

Трехмерный вектор double.

Vec3F

Трехмерный вектор float.

Vec4F

Четырехмерный вектор float.

Vec4I

Четырехмерный вектор int.

VideoInputFramePlayer

Проигрыватель input frame. Имеет выходной порт input frame, используемый для извлечения input frames из файлов EIF MKV. Все члены этого класса потокобезопасны.

VideoInputFrameRecorder

Input frame recorder. Имеет input frame input port и input frame output port, используемые для сохранения проходящих input frames в файл EIF MKV. Все члены этого класса являются thread-safe.

VideoPlayer

VideoPlayer — класс playback видео. EasyAR поддерживает обычное видео, прозрачное видео и streaming playback. Видео будет отрендерено в texture, переданную в setRenderTexture. Этот класс поддерживает только texture OpenGLES 3.0. Поскольку он зависит от OpenGLES, все функции этого класса (включая destructor) должны вызываться в одном thread, содержащем контекст OpenGLES. Текущая версия требует, чтобы ширина и высота были кратны 16. Поддерживаемые форматы видеофайлов Windows: форматы, совместимые с Media Foundation. Установка дополнительных декодеров может добавить поддержку большего числа форматов. См. Supported Media Formats in Media Foundation . DirectShow не поддерживается. Mac: не поддерживается. Android: форматы, поддерживаемые системой. См. Supported media formats . iOS: форматы, поддерживаемые системой. В настоящее время нет действующего справочного документа.

VisionOSARKitCameraDevice

VisionOSARKitCameraDevice реализует camera device на основе VisionOS ARKit, выводящий InputFrame, содержащий image, camera parameters, timestamp, информацию о 6DOF pose и tracking status. После создания можно вызвать start/stop, чтобы начать и остановить сбор данных video stream. Когда device больше не нужен, вызовите close, чтобы закрыть его. После close использовать его не следует. VisionOSARKitCameraDevice выводит InputFrame через inputFrameSource. Для использования подключите inputFrameSource к InputFrameSink. bufferCapacity указывает емкость буфера InputFrame. Если из этого device будет выведено больше этого количества InputFrame и они не будут освобождены, device больше не будет выводить новые InputFrame, пока предыдущие InputFrame не будут освобождены. Это может вызвать такие проблемы, как зависание изображения.

XREALCameraDevice

XREALCameraDevice реализует camera device на основе XREAL Enterprise Native SDK Plugin и выводит InputFrame (image, camera parameters, timestamp, информацию о положении 6DOF и tracking status получить нельзя). После создания можно вызвать start/stop, чтобы начать и остановить сбор данных video stream. Убедитесь, что start вызывается только после того, как isDeviceSupported вернет true. Когда устройство больше не нужно, можно вызвать close для закрытия. После close его не следует использовать. XREALCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает емкость буфера InputFrame. Если из устройства выведено больше этого количества InputFrame и они не освобождены, устройство перестанет выводить новые InputFrame, пока предыдущие InputFrame не будут освобождены. Это может привести к зависанию изображения и другим проблемам.

Перечисления

AndroidCameraApiType
ARCoreCameraDeviceFocusMode
ARCoreDeviceListDownloadStatus
ARKitCameraDeviceFocusMode
BlockPriorMode

Рабочий режим априорной информации карты

CalibrationDownloadStatus
CameraDeviceFocusMode
CameraDevicePreference
CameraDevicePresetProfile
CameraDeviceType

Тип устройства камеры.

CameraModelType

Тип модели камеры.

CameraState
CameraTransformType

Тип преобразования камеры.

CloudLocalizerStatus

Состояние облачной локализации.

CloudRecognizationStatus
EngineOperatingSystem
ImageTrackerMode
InertialCameraDeviceFocusMode
LocalizationMode
LogLevel
MegaApiType

Тип MEGA API.

MegaGoTargetLoadStatus

Состояние загрузки target Mega Go.

MegaGoTrackerError

Ошибка MegaGoTracker.

MegaGoTrackerOutputUpdateStatus

Состояние обновления вывода ответом локализации MegaGoTracker.

MegaGoTrackerStatus

Состояние работы MegaGoTracker.

MegaLandmarkFilterStatus
MegaTrackerLocalizationStatus
MotionTrackerCameraDeviceFocusMode
MotionTrackerCameraDeviceFPS
MotionTrackerCameraDeviceQualityLevel
MotionTrackerCameraDeviceResolution
MotionTrackerCameraDeviceTrackingMode
MotionTrackingStatus

Описывает качество отслеживания движения устройства.

PermissionStatus
PixelFormat

PixelFormat представляет формат пикселей изображения. Направление пикселей во всех форматах — слева направо и сверху вниз.

PlaneType
RecordProfile
RecordStatus
RecordVideoOrientation
RecordVideoSize
RecordZoomMode
StorageType

StorageType указывает место хранения изображений, json-файлов, видео или других файлов. StorageType задает корневой каталог хранения файлов. Во всех связанных интерфейсах можно использовать относительные пути от этого корневого каталога.

TargetStatus
ThreeDofCameraDeviceFocusMode
ValidationState
VideoInputFrameRecorderCompletionReason
VideoInputFrameRecorderVideoCodec
VideoStatus
VideoType