|
XRasterIODumpFile Method
|
영상 파일의 이미지와 메타데이터를 다른 영상 파일 형식과 xml 파일로 각각 저장한다.
출력 파일 경로를 "C:\abc.tif"로 설정시 abc.tif와 abc.xml로 영상과 메타정보가 저장된다.
입력 영상 파일 포맷이 HDF5일 경우, 각 DataSet별로 영상 파일로 저장되고 메타정보는 하나의 xml 파일로 저장된다.
Namespace: Pixoneer.NXDL.NIOAssembly: NXDLio (in NXDLio.dll) Version: 3.0.0.0
Syntaxpublic bool DumpFile(
string strFileName,
string strSaveFileName,
string strFormatKey,
XRSMetaData openOption,
XRSMetaData creationOption,
out string strError,
XThread thd
)
Parameters
- strFileName String
- [In] 입력 파일 경로
- strSaveFileName String
- [In] 출력 파일 경로
- strFormatKey String
- [In] 파일 형식 키워드. ( 예: XDM, BIP, BIL, BSQ 또는 GDAL Raster drivers의 short name(GTiff, NITF, JPEG, BMP...) )
BIP(Band Interleaved by Pixel), BIL(Band Interleaved by Line), BSQ(Band Sequential)
- openOption XRSMetaData
-
[In] Open Option을 설정한다.
* Open Option
- HDF_XSIZE_INDEX : HDF5의 DataSet dimension 중에서 가로 방향 사이즈로 사용할 값 인덱스를 설정한다.
- HDF_YSIZE_INDEX : HDF5의 DataSet dimension 중에서 세로 방향 사이즈로 사용할 값 인덱스를 설정한다.
- HDF_BAND_INDEX : HDF5의 DataSet dimension 중에서 밴드 개수로 사용할 값 인덱스를 설정한다.
- HDF_XSIZE_INDEX, HDF_YSIZE_INDEX, HDF_BAND_INDEX는 HDF5 dataset의 dimension 이 3 이상이고 dimension[2]가 2일 경우에만 적용된다.
- creationOption XRSMetaData
-
[In] Creation Option을 설정한다.
* Creation Option
- HDF_APPLY_HALFFLOAT : 입력 파일이 HDF5이고 DataSet(예:Kompsat5 L1A 영상)이 half float data type일 경우, dump할 때 half float 적용한 데이타 값으로 저장할 것인지 여부를 설정한다.
half float 적용한 data의 data type은 REAL32 로 저장된다.
- IBAND_INDEX : 입력 파일의 band가 두개일 경우, complex data type으로 파일을 dump하고자 할 때 IBand로 사용할 band index를 설정한다.
저장하고자 하는 complex data type을 dump할 파일 포맷이 지원하는 경우 정상 적용된다.
- QBAND_INDEX : 입력 파일의 band가 두개일 경우, complex data type으로 파일을 dump하고자 할 때 QBand로 사용할 band index를 설정한다.
저장하고자 하는 complex data type을 dump할 파일 포맷이 지원하는 경우 정상 적용된다.
- strError String
- [Out] 에러 발생시 오류 메시지
- thd XThread
- [In] Thread
Return Value
Boolean 성공이면 true, 실패이면 false를 반환
Example
아래는 tif 파일을 ntf 파일 포맷으로 dump하는 예제이다.
using Pixoneer.NXDL;
using Pixoneer.NXDL.NIO;
using Pixoneer.NXDL.NRS;
XRasterIO rasterIO = new XRasterIO();
string strError = "";
if (!rasterIO.Initialize(out strError))
MessageBox.Show(strError);
string strInputPath = @"F:\SAMPLE_IMAGE\test01.tif";
string strOutputPath = @"F:\SAMPLE_IMAGE\dump02.ntf";
bool bRes = rasterIO.DumpFile(strInputPath, strOutputPath, "NITF", null, null, out strError, null);
아래는 HDF5 파일을 tif 파일 포맷으로 dump하는 예제이다.
using Pixoneer.NXDL;
using Pixoneer.NXDL.NIO;
using Pixoneer.NXDL.NRS;
XRasterIO rasterIO = new XRasterIO();
string strError = "";
if (!rasterIO.Initialize(out strError))
MessageBox.Show(strError);
string strInputPath = @"F:\SAMPLE_IMAGE\test.h5";
string strOutputPath = @"F:\SAMPLE_IMAGE\dump.tif";
XRSMetaData openOption = new XRSMetaData();
openOption.SetValue("HDF_XSIZE_INDEX", "1", "OpenOption");
openOption.SetValue("HDF_YSIZE_INDEX", "0", "OpenOption");
openOption.SetValue("HDF_BAND_INDEX", "2", "OpenOption");
XRSMetaData creationOption = new XRSMetaData();
creationOption.SetValue("HDF_APPLY_HALFFLOAT", "Yes", "CreationOption");
creationOption.SetValue("IBAND_INDEX", "0", "CreationOption");
creationOption.SetValue("QBAND_INDEX", "1", "CreationOption");
bool bRes = rasterIO.DumpFile(strInputPath, strOutputPath, "GTiff", openOption, creationOption, out strError, null);
See Also