@@ -15,14 +15,13 @@ def toBase64(image):
15
15
png_as_text = base64 .b64encode (buffer ).decode ('utf-8' )
16
16
return png_as_text
17
17
18
- def process (image , max_size = 200 ,taps = 3 , downscale = 10 ):
19
- resized_image = resize .resize (image ,max_size )
20
- height , width , _ = resized_image .shape
21
- recoloured_image = recolour .find_silver (resized_image )
22
- houses , percentage , housearea = contours .get_contour_nodes (recoloured_image )
23
- print (downscale )
18
+ def process (image , meters_squared_per_pixel , size ,taps = 3 , grid = 20 ):
19
+ downscale = int (size / grid )
20
+ height , width , _ = image .shape
21
+ recoloured_image = recolour .find_silver (image )
22
+ houses , percentage , housearea = contours .get_contour_nodes (recoloured_image , meters_squared_per_pixel )
24
23
tap_locations = TapWork .greedy_brute (houses ,taps ,(height ,width ), downscale )
25
- image = TapWork .draw_network (houses ,tap_locations ,resized_image , ( height , width ) )
24
+ image = TapWork .draw_network (houses ,tap_locations , size , image , meters_squared_per_pixel )
26
25
population = round (housearea / 7 )
27
26
recommendation = round (population / 250 )
28
27
if recommendation == 0 :
@@ -33,9 +32,9 @@ def process(image, max_size=200,taps=3, downscale=10):
33
32
def giveLocation ():
34
33
lon = request .args .get ('long' )
35
34
lat = request .args .get ('lat' )
36
- max_size = request .args .get ('size' )
35
+ size = request .args .get ('size' )
37
36
taps = request .args .get ('taps' )
38
- downscale = request .args .get ('downscale ' )
37
+ grid = request .args .get ('grid ' )
39
38
zoom = request .args .get ('zoom' )
40
39
print (lon ,lat )
41
40
if lon is None or lat is None :
@@ -44,19 +43,16 @@ def giveLocation():
44
43
return response
45
44
if zoom is None :
46
45
zoom = 19
47
- image = map_downloader .download_patch ((lat ,lon ), credentials .API_KEY , zoom = int (zoom ))
48
- image_array = numpy .asarray (bytearray (image .content ), dtype = numpy .uint8 )
49
- map_image = cv2 .imdecode (image_array , - 1 )
50
- if max_size is not None and taps is not None and downscale is not None :
51
- result = process (map_image , max_size = int (max_size ),taps = int (taps ), downscale = int (downscale ))
52
- elif max_size is not None and taps is not None :
53
- result = process (map_image , max_size = int (max_size ),taps = int (taps ))
54
- elif max_size is not None :
55
- result = process (map_image , max_size = int (max_size ))
46
+ if size is None :
47
+ size = 1000
48
+
49
+ map_image , meters_squared_per_pixel = map_downloader .download_patch ((lat ,lon ), credentials .API_KEY , size , zoom = int (zoom ))
50
+ if size is not None and taps is not None and grid is not None :
51
+ result = process (map_image , meters_squared_per_pixel , int (size ),taps = int (taps ), grid = int (grid ))
56
52
elif taps is not None :
57
- result = process (map_image , taps = taps )
53
+ result = process (map_image , meters_squared_per_pixel , int ( size ), taps = int ( taps ) )
58
54
else :
59
- result = process (map_image )
55
+ result = process (map_image , meters_squared_per_pixel , int ( size ) )
60
56
61
57
return jsonify (result )
62
58
0 commit comments