获取感知灰度图
获取感知灰度图相关功能的头文件为dji_perception.h
,本文档描述了dji_perception.h
文件中结构体和函数原型的关键信息和使用方法。
目录
宏定义、枚举与结构体
E_DjiPerceptionDirection
E_DjiPerceptionCameraPosition
T_DjiPerceptionRawImageInfo
T_DjiPerceptionImageInfo
T_DjiPerceptionCameraParameters
T_DjiPerceptionCameraParametersPacket
DjiPerceptionImageCallback函数原型
DjiPerception_Init
DjiPerception_Deinit
DjiPerception_SubscribePerceptionImage
DjiPerception_UnsubscribePerceptionImage
DjiPerception_GetStereoCameraParameters
宏定义、枚举与结构体
- define IMAGE_MAX_DIRECTION_NUM 6
- define DJI_PERCEPTION_INTRINSICS_PARAM_ARRAY_NUM 9
- define DJI_PERCEPTION_ROTATION_PARAM_ARRAY_NUM 9
- define DJI_PERCEPTION_TRANSLATION_PARAM_ARRAY_NUM 3
####typedef enum E_DjiPerceptionDirection
typedef enum {
DJI_PERCEPTION_RECTIFY_DOWN = 0,
DJI_PERCEPTION_RECTIFY_FRONT = 1,
DJI_PERCEPTION_RECTIFY_REAR = 2,
DJI_PERCEPTION_RECTIFY_UP = 3,
DJI_PERCEPTION_RECTIFY_LEFT = 4,
DJI_PERCEPTION_RECTIFY_RIGHT = 5
} E_DjiPerceptionDirection;
typedef enum E_DjiPerceptionCameraPosition
角度限制的数据结构
typedef enum {
RECTIFY_DOWN_LEFT = 1,
RECTIFY_DOWN_RIGHT = 2,
RECTIFY_FRONT_LEFT = 3,
RECTIFY_FRONT_RIGHT = 4,
RECTIFY_REAR_LEFT = 5,
RECTIFY_REAR_RIGHT = 6,
RECTIFY_UP_LEFT = 21,
RECTIFY_UP_RIGHT = 22,
RECTIFY_LEFT_LEFT = 23,
RECTIFY_LEFT_RIGHT = 24,
RECTIFY_RIGHT_LEFT = 25,
RECTIFY_RIGHT_RIGHT = 26
} E_DjiPerceptionCameraPosition;
typedef struct T_DjiPerceptionRawImageInfo
typedef struct {
uint32_t index;
uint8_t direction;
uint8_t bpp;
uint32_t width;
uint32_t height;
} T_DjiPerceptionRawImageInfo;
typedef struct T_DjiPerceptionImageInfo
typedef struct {
T_DjiPerceptionRawImageInfo rawInfo;
uint16_t dataId;
uint16_t sequence;
//see enum E_DjiPerceptionCamPosition
uint32_t dataType;
uint64_t timeStamp;
} T_DjiPerceptionImageInfo;
typedef struct T_DjiPerceptionCameraParameters
typedef struct {
uint8_t direction;
float leftIntrinsics[DJI_PERCEPTION_INTRINSICS_PARAM_ARRAY_NUM];
float rightIntrinsics[DJI_PERCEPTION_INTRINSICS_PARAM_ARRAY_NUM];
float rotationLeftInRight[DJI_PERCEPTION_ROTATION_PARAM_ARRAY_NUM];
float translationLeftInRight[DJI_PERCEPTION_TRANSLATION_PARAM_ARRAY_NUM];
} T_DjiPerceptionCameraParameters;
typedef struct T_DjiPerceptionCameraParametersPacket
typedef struct {
uint32_t timeStamp;
uint32_t directionNum;
T_DjiPerceptionCameraParameters cameraParameters[IMAGE_MAX_DIRECTION_NUM];
} T_DjiPerceptionCameraParametersPacket;
typedef function DjiPerceptionImageCallback
typedef void(*DjiPerceptionImageCallback)(T_DjiPerceptionImageInfo imageInfo, uint8_t *imageRawBuffer,
uint32_t bufferLen);
函数原型
function DjiPerception_Init
功能:感知模块初始化 | product:all |
接口初始化需要在 DjiCore_Init 之后。
T_DjiReturnCode DjiPerception_Init(void);
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
function DjiPerception_Deinit
功能: 感知模块反初始化 | product:all |
T_DjiReturnCode DjiPerception_Deinit(void);
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
function DjiPerception_SubscribePerceptionImage
功能:订阅两个立体相机在同一方向的原始图像。 | product:all |
T_DjiReturnCode DjiPerception_SubscribePerceptionImage(E_DjiPerceptionDirection direction,
DjiPerceptionImageCallback callback);
direction:direction 指定订阅的方向,参考 E_DjiPerceptionDirection
callback:回调到观察者立体相机图像和信息。
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
function DjiPerception_UnsubscribePerceptionImage
功能:取消订阅同一方向的两个立体摄像机的原始图像。 | product:all |
T_DjiReturnCode DjiPerception_UnsubscribePerceptionImage(E_DjiPerceptionDirection direction);
direction:direction 指定订阅的方向,参考 E_DjiPerceptionDirection
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
function DjiPerception_GetStereoCameraParameters
功能:获取所有立体摄像机的内部和外部参数。 | product:all |
T_DjiReturnCode DjiPerception_GetStereoCameraParameters(T_DjiPerceptionCameraParametersPacket *packet);
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode