public class UAVRecordParameter extends RecordParameter
无人机的飞行记录参数(NED坐标系)
| 构造器和说明 |
|---|
UAVRecordParameter()
构造函数
|
| 限定符和类型 | 方法和说明 |
|---|---|
static Point3D |
calculatePosition(UAVRecordParameter parameter,
Location startLocation)
无人机POSE解析 => 当前位置
|
static Quaternion |
calculateRotation(UAVRecordParameter parameter)
无人机POSE解析 => 四元数
|
UAVRecordParameter |
clone() |
static java.util.ArrayList<UAVRecordParameter> |
delDuplicate(java.util.List<UAVRecordParameter> uavRecordParameters)
去掉位姿重复(位置、姿态)的无人机参数
|
static java.lang.String |
generateCsvString(java.util.List<UAVRecordParameter> uavRecordParameters)
生成CSV格式的字符串
|
float |
getCameraRelativeHeight()
获取相机相对飞行器平台的高度
|
float |
getCameraRelativePitch()
获取相机相对飞行器平台的俯仰角(以平台建立坐标系,相机在平台坐标系的姿态(绕Y轴的角度))
|
float |
getCameraRelativeRoll()
获取相机相对平台的横滚角(以平台建立坐标系,相机在平台坐标系的姿态(绕X轴的角度))
|
float |
getCameraRelativeYaw()
获取相机相对飞行器平台的偏航角(以平台建立坐标系,相机在平台坐标系的姿态(绕Z轴的角度))
|
Date |
getDateTime()
获取日期
|
java.lang.String |
getImgPath()
获取图片资源路径
|
float |
getPlatformPitch()
获取飞行器平台的俯仰角
|
float |
getPlatformRoll()
获取平台的横滚角
|
float |
getPlatformYaw()
获取飞行器平台的偏航角
|
static UAVRecordParameter |
linearCalculate(double decimalPart,
UAVRecordParameter a,
UAVRecordParameter b)
线性插值
根据系数在两个无人机参数之间插值
|
static java.util.ArrayList<UAVRecordParameter> |
linearDelDupCalculate(java.util.List<UAVRecordParameter> uavRecordParameters)
线性去重计算
|
static java.util.ArrayList<UAVRecordParameter> |
read(DatasetVector datasetVector)
读取视频数据集的记录参数
|
static java.util.ArrayList<UAVRecordParameter> |
read(VideoParameters videoParameters,
PrjCoordSys prjCoordSys)
读取视频参数
|
void |
setCameraRelativeHeight(float cameraRelativeHeight)
设置相机相对飞行器平台的高度
|
void |
setCameraRelativePitch(float cameraRelativePitch)
设置相机相对俯仰角
|
void |
setCameraRelativeRoll(float cameraRelativeRoll)
设置相机相对滚角
|
void |
setCameraRelativeYaw(float cameraRelativeYaw)
设置相机相对偏航角
|
void |
setDateTime(Date dateTime)
设置日期
|
void |
setImgPath(java.lang.String imgPath)
设置图片资源路径
|
void |
setPlatformPitch(float platformPitch)
设置平台的俯仰角
|
void |
setPlatformRoll(float platformRoll)
设置平台的横滚角
|
void |
setPlatformYaw(float platformYaw)
设置飞行器平台的偏航角
|
java.lang.String |
toCsvString()
输出CSV字符串
|
static java.lang.String |
toFieldString()
输出字段名称字符串
|
java.lang.String |
toString() |
calculateFocalLength35mmEq, calculateHorizontalFOV, calculateVerticalFOV, getFocalLength35mmEq, getHorizontalFOV, getPlatformHeight, getSensorLatitude, getSensorLongitude, getUniqueIdentifier, getUnixTimeStamp, getVerticalFOV, setFocalLength35mmEq, setHorizontalFOV, setPlatformHeight, setSensorLatitude, setSensorLongitude, setUniqueIdentifier, setUnixTimeStamp, setVerticalFOVpublic float getPlatformYaw()
public void setPlatformYaw(float platformYaw)
platformYaw - 平台偏航角,NED坐标系,绕Z轴旋转的值,单位:度public float getPlatformPitch()
public void setPlatformPitch(float platformPitch)
platformPitch - 平台的俯仰角,NED坐标系,绕Y轴旋转的值,单位:度public float getPlatformRoll()
public void setPlatformRoll(float platformRoll)
platformRoll - 平台的横滚角,NED坐标系,绕X轴旋转的值,单位:度public float getCameraRelativeYaw()
public void setCameraRelativeYaw(float cameraRelativeYaw)
cameraRelativeYaw - 相机相对偏航角public float getCameraRelativePitch()
public void setCameraRelativePitch(float cameraRelativePitch)
cameraRelativePitch - 相机相对俯仰角public float getCameraRelativeRoll()
public void setCameraRelativeRoll(float cameraRelativeRoll)
cameraRelativeRoll - 相机相对横滚角public float getCameraRelativeHeight()
public void setCameraRelativeHeight(float cameraRelativeHeight)
cameraRelativeHeight - 相机相对高度public java.lang.String getImgPath()
public void setImgPath(java.lang.String imgPath)
imgPath - 图片路径public java.lang.String toString()
toString 在类中 java.lang.Objectpublic static Quaternion calculateRotation(UAVRecordParameter parameter)
parameter - NED坐标系的无人机参数//北(X) 东(Y)地(Z)坐标系public static Point3D calculatePosition(UAVRecordParameter parameter, Location startLocation)
parameter - NED坐标系的无人机参数startLocation - 初始地理位置public static java.util.ArrayList<UAVRecordParameter> linearDelDupCalculate(java.util.List<UAVRecordParameter> uavRecordParameters)
uavRecordParameters - 源无人机参数集
在按时间戳顺序排列的无人机参数的集合中,
若某时刻的无人机参数和前一时刻的无人机参数
的位姿信息(仅指相关经纬度、高度、姿态角)相同,
则会去掉当前时刻的参数,并通过前一时刻和当前
时刻之后位姿信息不重复的时刻的参数进行插值,得
到当前时刻的参数,并替代现有当前时刻的无人机参数。
注:
最后一条记录和倒数第二条记录若相同,则不会进行更改这两个参数
public static java.util.ArrayList<UAVRecordParameter> delDuplicate(java.util.List<UAVRecordParameter> uavRecordParameters)
uavRecordParameters - 无人机参数集
仅用经纬度、高度、偏航角、俯仰角、横滚角作为判断因素
public static UAVRecordParameter linearCalculate(double decimalPart, UAVRecordParameter a, UAVRecordParameter b)
根据系数在两个无人机参数之间插值
decimalPart - 系数,范围[0,1],例如,若系数为0.5,则新参数的位置是两个源参数位置的中点a - 前一时刻的无人机参数b - 后一时刻的无人机参数public UAVRecordParameter clone() throws java.lang.CloneNotSupportedException
java.lang.CloneNotSupportedExceptionpublic java.lang.String toCsvString()
public static java.lang.String toFieldString()
字段与使用toCsvString()输出的CSV字符串相对应
public static java.lang.String generateCsvString(java.util.List<UAVRecordParameter> uavRecordParameters)
uavRecordParameters - 参数集public static java.util.ArrayList<UAVRecordParameter> read(DatasetVector datasetVector)
datasetVector - public static java.util.ArrayList<UAVRecordParameter> read(VideoParameters videoParameters, PrjCoordSys prjCoordSys)
videoParameters - VideoParameters视频参数prjCoordSys - 投影参数public Date getDateTime()
public void setDateTime(Date dateTime)
dateTime - 日期