传感器型号¶
这个班级 otb::SensorTransformBase
是传感器模型的基类。它继承自 otb::Transform
,它继承自 itk::Transform
。它在数据类型以及输入和输出维度上模板化。所有传感器模型类都应该继承它,并实现以下方法:
SetMetadataModel
这需要一个boost::any
表示模型的对象;IsValidSensorModel
如果模型设置正确,则返回TRUE;TransformPoint
这就是转变的过程。
RPC传感器型号¶

该结构 otb::Projection::RPCParam
用于存储RPC模型的参数。它是基于 GDAL's RPC structure 。
RPC模型存储在 otb::ImageMetadata
对象,使用键 MDGeom::RPC
。这些班级 otb::RPCTransformBase
, otb::RPCForwardTransform
和 otb::RPCInverseTransform
用于使用该模型执行正反变换。
抽象类 otb::RPCTransformBase
包含SetMetadataModel方法的实现,该方法从 otb::ImageMetadata
并实例化一个 otb::GDALRPCTransformer
。
这些班级 otb::RPCForwardTransform
和 otb::RPCInverseTransform
每个都实现一个版本的 TransformPoint
方法,该方法使用 otb::GDALRPCTransformer
。
合成孔径雷达传感器模型¶

该结构 otb::SARParam
用于存储合成孔径雷达模型的参数。有关可用参数的详尽列表,请参阅 otb::SARParam
,请参阅 Doxygen 。
SAR模型存储在 otb::ImageMetadata
对象,使用键 MDGeom::SAR
。这些班级 otb::SarTransformBase
, otb::SarForwardTransform
和 otb::SarInverseTransform
用于使用该模型执行正反变换。
抽象类 otb::SarTransformBase
包含SetMetadataModel方法的实现,该方法接收 otb::SARParam
描述来自 otb::ImageMetadata
并实例化一个 otb::SarSensorModel
。
这些班级 otb::SarForwardTransform
和 otb::SarInverseTransform
每个都实现一个版本的 TransformPoint
方法,该方法使用 otb::SarSensorModel
。
传感器变送器厂¶
这个班级 SensorTransformFactory
旨在基于可用的元数据自动实例化最佳传感器变换。一个人应该使用函数 CreateTransform
它是在变换中使用的标量类型以及输入和输出空间的维度上模板化的。它将指向ImageMetadata对象的指针和转换方向(正向或反向)作为参数。它向Transform对象返回std::Unique_ptr。
#include "otbSensorTransformFactory.h"
auto sensorModel = otb::SensorTransformFactory::GetInstance().CreateTransform <double, 2, 3>(imageMetadataPointer, TransformDirection::FORWARD);
auto worldPoint = sensorModel->TransformPoint(sensorPoint);