InputFrame Class

这个类型是C#语言的 EasyAR Sense API: InputFrame 。页面中部分描述可能与Unity环境无关。

部分Sense接口已经封装成Unity组件,直接使用可能是不必要的。

Description

输入帧。

包含图像、camera参数、时间戳、相机相对于世界坐标系的变换和跟踪状态。

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


Methods

index

C#

public virtual int index()

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

image

C#

public virtual Image image()

获取图像。

hasCameraParameters

C#

public virtual bool hasCameraParameters()

是否包含camera参数。

cameraParameters

C#

public virtual CameraParameters cameraParameters()

获取camera参数。

hasTemporalInformation

C#

public virtual bool hasTemporalInformation()

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

timestamp

C#

public virtual double timestamp()

时间戳。单位为秒。

hasSpatialInformation

C#

public virtual bool hasSpatialInformation()

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

cameraTransform

C#

public virtual Matrix44F cameraTransform()

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

cameraTransformType

C#

public virtual CameraTransformType cameraTransformType()

相机变换类型。

trackingStatus

C#

public virtual MotionTrackingStatus trackingStatus()

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

tryCreate

C#

public static Optional<InputFrame> tryCreate( Image image, CameraParameters cameraParameters, double timestamp, Matrix44F cameraTransform, CameraTransformType cameraTransformType, MotionTrackingStatus trackingStatus)

创建。

createWithImageAndCameraParametersAndTemporal

C#

public static InputFrame createWithImageAndCameraParametersAndTemporal( Image image, CameraParameters cameraParameters, double timestamp)

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

createWithImageAndCameraParameters

C#

public static InputFrame createWithImageAndCameraParameters( Image image, CameraParameters cameraParameters)

创建,只包含图像和camera参数。

createWithImage

C#

public static InputFrame createWithImage( Image image)

创建,只包含图像。