|
XDMBandEpipolarDEM Class
|
한 쌍의 에피폴라(Epipolar) 이미지로부터 DEM을 추출한다.
A digital elevation model is a digital model or 3D representation of a terrain's surface.
Inheritance Hierarchy
Namespace: Pixoneer.NXDL.NRSAssembly: NXDLrs (in NXDLrs.dll) Version: 2.0.3.38
Syntaxpublic class XDMBandEpipolarDEM : XDMBand
The XDMBandEpipolarDEM type exposes the following members.
Constructors
Methods
Exampleusing Pixoneer.NXDL;
using Pixoneer.NXDL.NRS;
using Pixoneer.NXDL.NIO;
using Pixoneer.NXDL.NSM;
XRasterIO RasterIO = new XRasterIO();
String strError = "";
if (RasterIO.Initialize(out strError) == false)
{
return;
}
String strFilePathLoad1 = "D:\\Sample\\RS_Sample\\Epipolar\\po_120030_pan_0010000000.xdm";
String strFilePathLoad2 = "D:\\Sample\\RS_Sample\\Epipolar\\po_120030_pan_0000010000.xdm";
XRSLoadFile xrsFileInput1 = RasterIO.LoadFile(strFilePathLoad1, out strError, false, eIOCreateXLDMode.All_NoMsg);
XRSLoadFile xrsFileInput2 = RasterIO.LoadFile(strFilePathLoad2, out strError, false, eIOCreateXLDMode.All_NoMsg);
String strRPCPathLoad1 = "D:\\Sample\\RS_Sample\\Epipolar\\po_120030_pan_0010000000.rpc";
String strRPCPathLoad2 = "D:\\Sample\\RS_Sample\\Epipolar\\po_120030_pan_0000010000.rpc";
XRpc smL = new XRpc();
XRpc smR = new XRpc();
smL.LoadFromRPC(strRPCPathLoad1, eSensorRPCType.Ikonos, out strError);
smR.LoadFromRPC(strRPCPathLoad2, eSensorRPCType.Ikonos, out strError);
XBandParamEpipolarDEM InputParam = new XBandParamEpipolarDEM();
InputParam.SrcBandL = xrsFileInput1.GetBandAt(0);
InputParam.SrcBandR = xrsFileInput2.GetBandAt(0);
InputParam.SensorModelL = smL;
InputParam.SensorModelR = smR;
InputParam.KernelW = 11;
InputParam.KernelH = 11;
InputParam.CorrThreshold = 0.7;
InputParam.BlankValue = 0;
InputParam.ApplyCrossHair = false;
InputParam.MaxParallaxX = 100;
InputParam.MaxParallaxY = 0;
InputParam.RadiusP2G = 20;
XDMBandEpipolarDEM bandProcess = new XDMBandEpipolarDEM();
bandProcess.SetInputParam(ref InputParam);
bandProcess.Generate(0, 100, 500, 100, 500, 0.00001, 0.00001, null);
XRSSaveFile fileSave = new XRSSaveFile();
XDMBand bandCast = (XDMBand)bandProcess;
fileSave.AddBand(ref bandCast);
XThread thd = null;
String strFilePathSave = "D:\\Sample\\EpipolarDEM.xdm";
if (!RasterIO.Export(ref fileSave, strFilePathSave, "XDM", out strError, thd))
{
return;
}
See Also