本文整理汇总了Python中gdal.GDT_Int16方法的典型用法代码示例。如果您正苦于以下问题:Python gdal.GDT_Int16方法的具体用法?Python gdal.GDT_Int16怎么用?Python gdal.GDT_Int16使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类gdal
的用法示例。
在下文中一共展示了gdal.GDT_Int16方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: getDTfromGDAL
# 需要导入模块: import gdal [as 别名]
# 或者: from gdal import GDT_Int16 [as 别名]
def getDTfromGDAL(gdal_dt):
"""
Returns datatype (numpy/scipy) from gdal_dt.
Parameters
----------
gdal_dt : datatype
data.GetRasterBand(1).DataType
Return
----------
dt : datatype
"""
if gdal_dt == gdal.GDT_Byte:
dt = 'uint8'
elif gdal_dt == gdal.GDT_Int16:
dt = 'int16'
elif gdal_dt == gdal.GDT_UInt16:
dt = 'uint16'
elif gdal_dt == gdal.GDT_Int32:
dt = 'int32'
elif gdal_dt == gdal.GDT_UInt32:
dt = 'uint32'
elif gdal_dt == gdal.GDT_Float32:
dt = 'float32'
elif gdal_dt == gdal.GDT_Float64:
dt = 'float64'
elif gdal_dt == gdal.GDT_CInt16 or gdal_dt == gdal.GDT_CInt32 or gdal_dt == gdal.GDT_CFloat32 or gdal_dt == gdal.GDT_CFloat64:
dt = 'complex64'
else:
print('Data type unkown')
# exit()
return dt
示例2: getGDALGDT
# 需要导入模块: import gdal [as 别名]
# 或者: from gdal import GDT_Int16 [as 别名]
def getGDALGDT(dt):
"""
Need arr.dtype.name in entry.
Returns gdal_dt from dt (numpy/scipy).
Parameters
----------
dt : datatype
Return
----------
gdal_dt : gdal datatype
"""
if dt == 'bool' or dt == 'uint8':
gdal_dt = gdal.GDT_Byte
elif dt == 'int8' or dt == 'int16':
gdal_dt = gdal.GDT_Int16
elif dt == 'uint16':
gdal_dt = gdal.GDT_UInt16
elif dt == 'int32':
gdal_dt = gdal.GDT_Int32
elif dt == 'uint32':
gdal_dt = gdal.GDT_UInt32
elif dt == 'int64' or dt == 'uint64' or dt == 'float16' or dt == 'float32':
gdal_dt = gdal.GDT_Float32
elif dt == 'float64':
gdal_dt = gdal.GDT_Float64
elif dt == 'complex64':
gdal_dt = gdal.GDT_CFloat64
else:
print('Data type non-suported')
# exit()
return gdal_dt
示例3: gdal_dataset
# 需要导入模块: import gdal [as 别名]
# 或者: from gdal import GDT_Int16 [as 别名]
def gdal_dataset(out_fname, columns, rows, driver="GTiff", bands=1,
dtype='float32', metadata=None, crs=None,
geotransform=None, creation_opts=None):
"""
Initialises a py-GDAL dataset object for writing image data.
"""
if dtype == 'float32':
gdal_dtype = gdal.GDT_Float32
elif dtype == 'int16':
gdal_dtype = gdal.GDT_Int16
else:
# assume gdal.GDT val is passed to function
gdal_dtype = dtype
# create output dataset
driver = gdal.GetDriverByName(driver)
outds = driver.Create(out_fname, columns, rows, bands, gdal_dtype, options=creation_opts)
# geospatial info
outds.SetGeoTransform(geotransform)
outds.SetProjection(crs)
# add metadata
if metadata is not None:
for k, v in metadata.items():
outds.SetMetadataItem(k, str(v))
return outds
示例4: open_data
# 需要导入模块: import gdal [as 别名]
# 或者: from gdal import GDT_Int16 [as 别名]
def open_data(filename):
'''
The function open and load the image given its name.
The type of the data is checked from the file and the scipy array is initialized accordingly.
Input:
filename: the name of the file
Output:
im: the data cube
GeoTransform: the geotransform information
Projection: the projection information
'''
data = gdal.Open(filename, gdal.GA_ReadOnly)
if data is None:
print('Impossible to open ' + filename)
# exit()
nc = data.RasterXSize
nl = data.RasterYSize
d = data.RasterCount
# Get the type of the data
gdal_dt = data.GetRasterBand(1).DataType
if gdal_dt == gdal.GDT_Byte:
dt = 'uint8'
elif gdal_dt == gdal.GDT_Int16:
dt = 'int16'
elif gdal_dt == gdal.GDT_UInt16:
dt = 'uint16'
elif gdal_dt == gdal.GDT_Int32:
dt = 'int32'
elif gdal_dt == gdal.GDT_UInt32:
dt = 'uint32'
elif gdal_dt == gdal.GDT_Float32:
dt = 'float32'
elif gdal_dt == gdal.GDT_Float64:
dt = 'float64'
elif gdal_dt == gdal.GDT_CInt16 or gdal_dt == gdal.GDT_CInt32 or gdal_dt == gdal.GDT_CFloat32 or gdal_dt == gdal.GDT_CFloat64:
dt = 'complex64'
else:
print('Data type unkown')
# exit()
# Initialize the array
if d == 1:
im = np.empty((nl, nc), dtype=dt)
else:
im = np.empty((nl, nc, d), dtype=dt)
if d == 1:
im[:, :] = data.GetRasterBand(1).ReadAsArray()
else:
for i in range(d):
im[:, :, i] = data.GetRasterBand(i + 1).ReadAsArray()
GeoTransform = data.GetGeoTransform()
Projection = data.GetProjection()
data = None
return im, GeoTransform, Projection
示例5: Feature_to_Raster
# 需要导入模块: import gdal [as 别名]
# 或者: from gdal import GDT_Int16 [as 别名]
def Feature_to_Raster(input_shp, output_tiff,
cellsize, field_name=False, NoData_value=-9999):
"""
Converts a shapefile into a raster
"""
# Input
inp_driver = ogr.GetDriverByName('ESRI Shapefile')
inp_source = inp_driver.Open(input_shp, 0)
inp_lyr = inp_source.GetLayer()
inp_srs = inp_lyr.GetSpatialRef()
# Extent
x_min, x_max, y_min, y_max = inp_lyr.GetExtent()
x_ncells = int((x_max - x_min) / cellsize)
y_ncells = int((y_max - y_min) / cellsize)
# Output
out_driver = gdal.GetDriverByName('GTiff')
if os.path.exists(output_tiff):
out_driver.Delete(output_tiff)
out_source = out_driver.Create(output_tiff, x_ncells, y_ncells,
1, gdal.GDT_Int16)
out_source.SetGeoTransform((x_min, cellsize, 0, y_max, 0, -cellsize))
out_source.SetProjection(inp_srs.ExportToWkt())
out_lyr = out_source.GetRasterBand(1)
out_lyr.SetNoDataValue(NoData_value)
# Rasterize
if field_name:
gdal.RasterizeLayer(out_source, [1], inp_lyr,
options=["ATTRIBUTE={0}".format(field_name)])
else:
gdal.RasterizeLayer(out_source, [1], inp_lyr, burn_values=[1])
# Save and/or close the data sources
inp_source = None
out_source = None
# Return
return output_tiff
示例6: Feature_to_Raster
# 需要导入模块: import gdal [as 别名]
# 或者: from gdal import GDT_Int16 [as 别名]
def Feature_to_Raster(input_shp, output_tiff, cellsize, field_name=False, NoData_value=-9999):
"""
Converts a shapefile into a raster
"""
# Input
inp_driver = ogr.GetDriverByName('ESRI Shapefile')
inp_source = inp_driver.Open(input_shp, 0)
inp_lyr = inp_source.GetLayer()
inp_srs = inp_lyr.GetSpatialRef()
# Extent
x_min, x_max, y_min, y_max = inp_lyr.GetExtent()
x_ncells = int((x_max - x_min) / cellsize)
y_ncells = int((y_max - y_min) / cellsize)
# Output
out_driver = gdal.GetDriverByName('GTiff')
if os.path.exists(output_tiff):
out_driver.Delete(output_tiff)
out_source = out_driver.Create(output_tiff, x_ncells, y_ncells,1, gdal.GDT_Int16)
print("+"*50)
print(x_ncells, y_ncells,1, gdal.GDT_Int16)
out_source.SetGeoTransform((x_min, cellsize, 0, y_max, 0, -cellsize))
out_source.SetProjection(inp_srs.ExportToWkt())
out_lyr = out_source.GetRasterBand(1)
out_lyr.SetNoDataValue(NoData_value)
# Rasterize
# print(inp_lyr)
if field_name:
gdal.RasterizeLayer(out_source, [1], inp_lyr,options=["ATTRIBUTE={0}".format(field_name)])
else:
gdal.RasterizeLayer(out_source, [1], inp_lyr, burn_values=[1])
# Save and/or close the data sources
inp_source = None
out_source = None
# Return
return output_tiff
#geo_silhouettes
开发者ID:richieBao,项目名称:python-urbanPlanning,代码行数:46,代码来源:Exploratory Spatial Data Analysis in PySAL.py