当前位置: 首页>>代码示例>>Python>>正文


Python VRT.from_gdal_dataset方法代码示例

本文整理汇总了Python中nansat.vrt.VRT.from_gdal_dataset方法的典型用法代码示例。如果您正苦于以下问题:Python VRT.from_gdal_dataset方法的具体用法?Python VRT.from_gdal_dataset怎么用?Python VRT.from_gdal_dataset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在nansat.vrt.VRT的用法示例。


在下文中一共展示了VRT.from_gdal_dataset方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __init__

# 需要导入模块: from nansat.vrt import VRT [as 别名]
# 或者: from nansat.vrt.VRT import from_gdal_dataset [as 别名]
    def __init__(self, srs=None, ext=None, ds=None, **kwargs):
        """Create Domain from GDALDataset or string options or lat/lon grids"""
        # If too much information is given raise error
        if ds is not None and srs is not None and ext is not None:
            raise ValueError('Ambiguous specification of both dataset, srs- and ext-strings.')

        # choose between input opitons:
        # ds
        # ds and srs
        # srs and ext

        # if only a dataset is given:
        #     copy geo-reference from the dataset
        if ds is not None and srs is None:
            self.vrt = VRT.from_gdal_dataset(ds)

        # If dataset and srs are given (but not ext):
        #   use AutoCreateWarpedVRT to determine bounds and resolution
        elif ds is not None and srs is not None:
            srs = NSR(srs)
            tmp_vrt = gdal.AutoCreateWarpedVRT(ds, None, srs.wkt)
            if tmp_vrt is None:
                raise NansatProjectionError('Could not warp the given dataset to the given SRS.')
            else:
                self.vrt = VRT.from_gdal_dataset(tmp_vrt)

        # If SpatialRef and extent string are given (but not dataset)
        elif srs is not None and ext is not None:
            srs = NSR(srs)
            # create full dictionary of parameters
            extent_dict = Domain._create_extent_dict(ext)

            # convert -lle to -te
            if 'lle' in extent_dict.keys():
                extent_dict = self._convert_extentDic(srs, extent_dict)

            # get size/extent from the created extent dictionary
            geo_transform, raster_x_size, raster_y_size = self._get_geotransform(extent_dict)
            # create VRT object with given geo-reference parameters
            self.vrt = VRT.from_dataset_params(x_size=raster_x_size, y_size=raster_y_size,
                                               geo_transform=geo_transform,
                                               projection=srs.wkt,
                                               gcps=[], gcp_projection='')
        elif 'lat' in kwargs and 'lon' in kwargs:
            warnings.warn('Domain(lon=lon, lat=lat) will be deprectaed!'
                          'Use Domain.from_lonlat()', NansatFutureWarning)
            # create self.vrt from given lat/lon
            self.vrt = VRT.from_lonlat(kwargs['lon'], kwargs['lat'])
        else:
            raise ValueError('"dataset" or "srsString and extentString" '
                              'or "dataset and srsString" are required')
开发者ID:nansencenter,项目名称:nansat,代码行数:53,代码来源:domain.py

示例2: test_transform_points

# 需要导入模块: from nansat.vrt import VRT [as 别名]
# 或者: from nansat.vrt.VRT import from_gdal_dataset [as 别名]
 def test_transform_points(self):
     ds = gdal.Open(self.test_file_gcps)
     vrt1 = VRT.from_gdal_dataset(ds, metadata=ds.GetMetadata())
     vrt1.tps = True
     lon, lat = vrt1.transform_points([1, 2, 3], [4, 5, 6])
     self.assertTrue(np.allclose(lon, np.array([28.23549571, 28.24337106, 28.25126129])))
     self.assertTrue(np.allclose(lat, np.array([71.52509848, 71.51913744, 71.51317568])))
     lon, lat = vrt1.transform_points([], [])
     self.assertTrue(np.allclose(lon, np.array([])))
     self.assertTrue(np.allclose(lat, np.array([])))
开发者ID:nansencenter,项目名称:nansat,代码行数:12,代码来源:test_vrt.py

示例3: test_find_complex_band

# 需要导入模块: from nansat.vrt import VRT [as 别名]
# 或者: from nansat.vrt.VRT import from_gdal_dataset [as 别名]
    def test_find_complex_band(self):
        a = np.random.randn(100,100)
        vrt1 = VRT.from_array(a)
        vrt2 = VRT.from_array(a.astype(np.complex64))

        vrt3 = VRT.from_gdal_dataset(vrt1.dataset)
        vrt3.create_bands([{'src': {'SourceFilename': vrt1.filename}},
                           {'src': {'SourceFilename': vrt2.filename}}])

        self.assertEqual(vrt1._find_complex_band(), None)
        self.assertEqual(vrt2._find_complex_band(), 1)
        self.assertEqual(vrt3._find_complex_band(), 2)
开发者ID:nansencenter,项目名称:nansat,代码行数:14,代码来源:test_vrt.py

示例4: test_split_complex_bands

# 需要导入模块: from nansat.vrt import VRT [as 别名]
# 或者: from nansat.vrt.VRT import from_gdal_dataset [as 别名]
    def test_split_complex_bands(self):
        a = np.random.randn(100,100)
        vrt1 = VRT.from_array(a.astype(np.complex64))
        vrt2 = VRT.from_array(a)
        vrt3 = VRT.from_array(a.astype(np.complex64))

        vrt4 = VRT.from_gdal_dataset(vrt1.dataset)
        vrt4.create_bands([{'src': {'SourceFilename': vrt1.filename}, 'dst': {'name': 'vrt1'}},
                           {'src': {'SourceFilename': vrt2.filename}, 'dst': {'name': 'vrt2'}},
                           {'src': {'SourceFilename': vrt3.filename}, 'dst': {'name': 'vrt3'}}])

        vrt4.split_complex_bands()

        self.assertEqual(vrt4.dataset.RasterCount,5)
        self.assertEqual(vrt4.dataset.GetRasterBand(1).GetMetadataItem(str('name')), 'vrt2')
        self.assertEqual(vrt4.dataset.GetRasterBand(2).GetMetadataItem(str('name')), 'vrt1_real')
        self.assertEqual(vrt4.dataset.GetRasterBand(3).GetMetadataItem(str('name')), 'vrt1_imag')
        self.assertEqual(vrt4.dataset.GetRasterBand(4).GetMetadataItem(str('name')), 'vrt3_real')
        self.assertEqual(vrt4.dataset.GetRasterBand(5).GetMetadataItem(str('name')), 'vrt3_imag')
开发者ID:nansencenter,项目名称:nansat,代码行数:21,代码来源:test_vrt.py

示例5: test_from_gdal_dataset

# 需要导入模块: from nansat.vrt import VRT [as 别名]
# 或者: from nansat.vrt.VRT import from_gdal_dataset [as 别名]
 def test_from_gdal_dataset(self, _init_from_gdal_dataset):
     ds = gdal.Open(self.test_file_gcps)
     vrt = VRT.from_gdal_dataset(ds)
     self.assertIsInstance(vrt, VRT)
     self.assertTrue(_init_from_gdal_dataset.called_once())
开发者ID:nansencenter,项目名称:nansat,代码行数:7,代码来源:test_vrt.py

示例6: test_get_super_vrt

# 需要导入模块: from nansat.vrt import VRT [as 别名]
# 或者: from nansat.vrt.VRT import from_gdal_dataset [as 别名]
 def test_get_super_vrt(self):
     ds = gdal.Open(self.test_file_gcps)
     vrt1 = VRT.from_gdal_dataset(ds, metadata=ds.GetMetadata())
     vrt2 = vrt1.get_super_vrt()
     self.assertIsInstance(vrt2.vrt, VRT)
     self.assertEqual(vrt2.dataset.GetMetadataItem(str('AREA_OR_POINT')), 'Area')
开发者ID:nansencenter,项目名称:nansat,代码行数:8,代码来源:test_vrt.py


注:本文中的nansat.vrt.VRT.from_gdal_dataset方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。