Table of Contents

Class InputFrame

命名空间
easyar

输入帧。 包含图像、camera参数、时间戳、相机相对于世界坐标系的变换和跟踪状态。 其中,camera参数、时间戳、相机相对于世界坐标系的变换和跟踪状态均为可选,但特定的算法组件会对输入有特定的要求。

InputFrame

方法

index

索引,一个自增量,每个输入帧不同。

int easyar_InputFrame_index(const easyar_InputFrame * This)
int index()
public int index()
fun index(): Int
- (int)index
public func index() -> Int32
public virtual int index()

返回

类型 描述
Int32

image

获取图像。

void easyar_InputFrame_image(const easyar_InputFrame * This, easyar_Image * * Return)
std::shared_ptr<Image> image()
public @Nonnull Image image()
fun image(): Image
- (easyar_Image *)image
public func image() -> Image
public virtual Image image()

返回

类型 描述
Image

hasCameraParameters

是否包含camera参数。

bool easyar_InputFrame_hasCameraParameters(const easyar_InputFrame * This)
bool hasCameraParameters()
public boolean hasCameraParameters()
fun hasCameraParameters(): Boolean
- (bool)hasCameraParameters
public func hasCameraParameters() -> Bool
public virtual bool hasCameraParameters()

返回

类型 描述
Boolean

cameraParameters

获取camera参数。

void easyar_InputFrame_cameraParameters(const easyar_InputFrame * This, easyar_CameraParameters * * Return)
std::shared_ptr<CameraParameters> cameraParameters()
public @Nonnull CameraParameters cameraParameters()
fun cameraParameters(): CameraParameters
- (easyar_CameraParameters *)cameraParameters
public func cameraParameters() -> CameraParameters
public virtual CameraParameters cameraParameters()

返回

类型 描述
CameraParameters

hasTemporalInformation

是否包含时间信息(时间戳)。

bool easyar_InputFrame_hasTemporalInformation(const easyar_InputFrame * This)
bool hasTemporalInformation()
public boolean hasTemporalInformation()
fun hasTemporalInformation(): Boolean
- (bool)hasTemporalInformation
public func hasTemporalInformation() -> Bool
public virtual bool hasTemporalInformation()

返回

类型 描述
Boolean

timestamp

时间戳。单位为秒。

double easyar_InputFrame_timestamp(const easyar_InputFrame * This)
double timestamp()
public double timestamp()
fun timestamp(): Double
- (double)timestamp
public func timestamp() -> Double
public virtual double timestamp()

返回

类型 描述
Double

hasSpatialInformation

是否包含空间信息(cameraTransform和trackingStatus)。

bool easyar_InputFrame_hasSpatialInformation(const easyar_InputFrame * This)
bool hasSpatialInformation()
public boolean hasSpatialInformation()
fun hasSpatialInformation(): Boolean
- (bool)hasSpatialInformation
public func hasSpatialInformation() -> Bool
public virtual bool hasSpatialInformation()

返回

类型 描述
Boolean

cameraTransform

相机相对于世界坐标系的变换。其中camera坐标系与世界坐标系均为右手坐标系。Camera坐标系的原点为相机光心,x轴正方向为右,y轴正方向为上,z轴正方向为光线进入相机的方向。(其中的右和上,指的是相机图像中的右和上,可能和设备自然方向的可能不同。)数据的排列方式为row-major,与OpenGL的column-major相反。

easyar_Matrix44F easyar_InputFrame_cameraTransform(const easyar_InputFrame * This)
Matrix44F cameraTransform()
public @Nonnull Matrix44F cameraTransform()
fun cameraTransform(): Matrix44F
- (easyar_Matrix44F *)cameraTransform
public func cameraTransform() -> Matrix44F
public virtual Matrix44F cameraTransform()

返回

类型 描述
Matrix44F

cameraTransformType

相机变换类型。

easyar_CameraTransformType easyar_InputFrame_cameraTransformType(const easyar_InputFrame * This)
CameraTransformType cameraTransformType()
public int cameraTransformType()
fun cameraTransformType(): Int
- (easyar_CameraTransformType)cameraTransformType
public func cameraTransformType() -> CameraTransformType
public virtual CameraTransformType cameraTransformType()

返回

类型 描述
CameraTransformType

trackingStatus

获取设备运动跟踪状态: MotionTrackingStatus

easyar_MotionTrackingStatus easyar_InputFrame_trackingStatus(const easyar_InputFrame * This)
MotionTrackingStatus trackingStatus()
public int trackingStatus()
fun trackingStatus(): Int
- (easyar_MotionTrackingStatus)trackingStatus
public func trackingStatus() -> MotionTrackingStatus
public virtual MotionTrackingStatus trackingStatus()

返回

类型 描述
MotionTrackingStatus

motion

运动输入数据。

void easyar_InputFrame_motion(const easyar_InputFrame * This, easyar_OptionalOfMotionInputData * Return)
std::optional<std::shared_ptr<MotionInputData>> motion()
public @Nullable MotionInputData motion()
fun motion(): MotionInputData?
- (easyar_MotionInputData *)motion
public func motion() -> MotionInputData?
public virtual Optional<MotionInputData> motion()

返回

类型 描述
Optional<MotionInputData>

tryCreate

创建。

void easyar_InputFrame_tryCreate(easyar_Image * image, easyar_CameraParameters * cameraParameters, double timestamp, easyar_Matrix44F cameraTransform, easyar_CameraTransformType cameraTransformType, easyar_MotionTrackingStatus trackingStatus, easyar_OptionalOfInputFrame * Return)
static std::optional<std::shared_ptr<InputFrame>> tryCreate(std::shared_ptr<Image> image, std::shared_ptr<CameraParameters> cameraParameters, double timestamp, Matrix44F cameraTransform, CameraTransformType cameraTransformType, MotionTrackingStatus trackingStatus)
public static @Nullable InputFrame tryCreate(@Nonnull Image image, @Nonnull CameraParameters cameraParameters, double timestamp, @Nonnull Matrix44F cameraTransform, int cameraTransformType, int trackingStatus)
companion object fun tryCreate(image: Image, cameraParameters: CameraParameters, timestamp: Double, cameraTransform: Matrix44F, cameraTransformType: Int, trackingStatus: Int): InputFrame?
+ (easyar_InputFrame *)tryCreate:(easyar_Image *)image cameraParameters:(easyar_CameraParameters *)cameraParameters timestamp:(double)timestamp cameraTransform:(easyar_Matrix44F *)cameraTransform cameraTransformType:(easyar_CameraTransformType)cameraTransformType trackingStatus:(easyar_MotionTrackingStatus)trackingStatus
public static func tryCreate(_ image: Image, _ cameraParameters: CameraParameters, _ timestamp: Double, _ cameraTransform: Matrix44F, _ cameraTransformType: CameraTransformType, _ trackingStatus: MotionTrackingStatus) -> InputFrame?
public static Optional<InputFrame> tryCreate(Image image, CameraParameters cameraParameters, double timestamp, Matrix44F cameraTransform, CameraTransformType cameraTransformType, MotionTrackingStatus trackingStatus)

参数

名称 类型 描述
image Image
cameraParameters CameraParameters
timestamp Double
cameraTransform Matrix44F
cameraTransformType CameraTransformType
trackingStatus MotionTrackingStatus

返回

类型 描述
Optional<InputFrame>

createWithImageAndCameraParametersAndTemporal

创建,只包含图像、camera参数和时间戳。

void easyar_InputFrame_createWithImageAndCameraParametersAndTemporal(easyar_Image * image, easyar_CameraParameters * cameraParameters, double timestamp, easyar_InputFrame * * Return)
static std::shared_ptr<InputFrame> createWithImageAndCameraParametersAndTemporal(std::shared_ptr<Image> image, std::shared_ptr<CameraParameters> cameraParameters, double timestamp)
public static @Nonnull InputFrame createWithImageAndCameraParametersAndTemporal(@Nonnull Image image, @Nonnull CameraParameters cameraParameters, double timestamp)
companion object fun createWithImageAndCameraParametersAndTemporal(image: Image, cameraParameters: CameraParameters, timestamp: Double): InputFrame
+ (easyar_InputFrame *)createWithImageAndCameraParametersAndTemporal:(easyar_Image *)image cameraParameters:(easyar_CameraParameters *)cameraParameters timestamp:(double)timestamp
public static func createWithImageAndCameraParametersAndTemporal(_ image: Image, _ cameraParameters: CameraParameters, _ timestamp: Double) -> InputFrame
public static InputFrame createWithImageAndCameraParametersAndTemporal(Image image, CameraParameters cameraParameters, double timestamp)

参数

名称 类型 描述
image Image
cameraParameters CameraParameters
timestamp Double

返回

类型 描述
InputFrame

createWithImageAndCameraParameters

创建,只包含图像和camera参数。使用该方法创建的输入只能用于 CloudRecognizer ,其它功能都无法工作。

void easyar_InputFrame_createWithImageAndCameraParameters(easyar_Image * image, easyar_CameraParameters * cameraParameters, easyar_InputFrame * * Return)
static std::shared_ptr<InputFrame> createWithImageAndCameraParameters(std::shared_ptr<Image> image, std::shared_ptr<CameraParameters> cameraParameters)
public static @Nonnull InputFrame createWithImageAndCameraParameters(@Nonnull Image image, @Nonnull CameraParameters cameraParameters)
companion object fun createWithImageAndCameraParameters(image: Image, cameraParameters: CameraParameters): InputFrame
+ (easyar_InputFrame *)createWithImageAndCameraParameters:(easyar_Image *)image cameraParameters:(easyar_CameraParameters *)cameraParameters
public static func createWithImageAndCameraParameters(_ image: Image, _ cameraParameters: CameraParameters) -> InputFrame
public static InputFrame createWithImageAndCameraParameters(Image image, CameraParameters cameraParameters)

参数

名称 类型 描述
image Image
cameraParameters CameraParameters

返回

类型 描述
InputFrame

createWithImage

创建,只包含图像。使用该方法创建的输入只能用于 CloudRecognizer ,其它功能都无法工作。

void easyar_InputFrame_createWithImage(easyar_Image * image, easyar_InputFrame * * Return)
static std::shared_ptr<InputFrame> createWithImage(std::shared_ptr<Image> image)
public static @Nonnull InputFrame createWithImage(@Nonnull Image image)
companion object fun createWithImage(image: Image): InputFrame
+ (easyar_InputFrame *)createWithImage:(easyar_Image *)image
public static func createWithImage(_ image: Image) -> InputFrame
public static InputFrame createWithImage(Image image)

参数

名称 类型 描述
image Image

返回

类型 描述
InputFrame