-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathterrain_analysis.py
59 lines (40 loc) · 1.53 KB
/
terrain_analysis.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import argparse
def convert_to_rasterio(raster_data, template_raster):
return
def extract_values_from_raster(raster, shape_object):
return
def make_classifier(x, y, verbose=False):
return
def make_prob_raster_data(topo, geo, lc, dist_fault, slope, classifier):
return
def create_dataframe(topo, geo, lc, dist_fault, slope, shape, landslides):
return
def main():
parser = argparse.ArgumentParser(
prog="Landslide hazard using ML",
description="Calculate landslide hazards using simple ML",
epilog="Copyright 2024, Jon Hill"
)
parser.add_argument('--topography',
required=True,
help="topographic raster file")
parser.add_argument('--geology',
required=True,
help="geology raster file")
parser.add_argument('--landcover',
required=True,
help="landcover raster file")
parser.add_argument('--faults',
required=True,
help="fault location shapefile")
parser.add_argument("landslides",
help="the landslide location shapefile")
parser.add_argument("output",
help="the output raster file")
parser.add_argument('-v', '--verbose',
action='store_true',
default=False,
help="Print progress")
args = parser.parse_args()
if __name__ == '__main__':
main()