vishnu23 commited on
Commit
efe4682
·
1 Parent(s): 25fafa3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -12
app.py CHANGED
@@ -17,24 +17,24 @@ sam = SamGeo(
17
  )
18
 
19
  def get_all_file_paths(directory):
20
-
21
  # initializing empty file paths list
22
  file_paths = []
23
-
24
  # crawling through directory and subdirectories
25
  for root, directories, files in os.walk(directory):
26
  for filename in files:
27
  # join the two strings in order to form the full filepath.
28
  filepath = os.path.join(root, filename)
29
  file_paths.append(filepath)
30
-
31
  # returning all file paths
32
- return file_paths
33
 
34
  def get_shape_files(image):
35
  filename, file_extension = os.path.splitext(image.name)
36
- print(filename,file_extension)
37
- if file_extension=='.tif':
38
  #mkdir for app
39
  storage='app_store'
40
  if os.path.exists(storage):
@@ -47,7 +47,7 @@ def get_shape_files(image):
47
  pass
48
  else:
49
  os.mkdir(zip_folder)
50
-
51
  out_file=f'{storage}/out_files'
52
  if os.path.exists(out_file):
53
  pass
@@ -57,10 +57,15 @@ def get_shape_files(image):
57
  # load_model()
58
  sam.generate(image.name, output=f"{out_file}/masks.tif", foreground=True, unique=True)
59
  sam.tiff_to_vector(f"{out_file}/masks.tif", out_file)
 
 
 
 
 
60
 
61
  # writing files to a zipfile
62
  file_paths=get_all_file_paths(out_file)
63
-
64
  # for file_name in file_paths:
65
  # print(file_name)
66
 
@@ -68,10 +73,10 @@ def get_shape_files(image):
68
  # writing each file one by one
69
  for file in file_paths:
70
  zip.write(file)
71
-
72
- print('All files zipped successfully!')
73
 
74
- return f'{zip_folder}/shapefile.zip'
 
 
75
  # get_shape_files(image)
76
  else:
77
  return "Try uploading .tif file for processing!."
@@ -86,6 +91,7 @@ with my_app:
86
  img_source = gr.File(label="Please select source tif")
87
  source_image_loader = gr.Button("Get Shape File")
88
  with gr.Column():
 
89
  output = gr.outputs.File("zip")
90
- source_image_loader.click(get_shape_files,img_source,output)
91
  my_app.launch(debug = True)
 
17
  )
18
 
19
  def get_all_file_paths(directory):
20
+
21
  # initializing empty file paths list
22
  file_paths = []
23
+
24
  # crawling through directory and subdirectories
25
  for root, directories, files in os.walk(directory):
26
  for filename in files:
27
  # join the two strings in order to form the full filepath.
28
  filepath = os.path.join(root, filename)
29
  file_paths.append(filepath)
30
+
31
  # returning all file paths
32
+ return file_paths
33
 
34
  def get_shape_files(image):
35
  filename, file_extension = os.path.splitext(image.name)
36
+ # print(filename,file_extension)
37
+ if file_extension in ['.tif','tiff']:
38
  #mkdir for app
39
  storage='app_store'
40
  if os.path.exists(storage):
 
47
  pass
48
  else:
49
  os.mkdir(zip_folder)
50
+
51
  out_file=f'{storage}/out_files'
52
  if os.path.exists(out_file):
53
  pass
 
57
  # load_model()
58
  sam.generate(image.name, output=f"{out_file}/masks.tif", foreground=True, unique=True)
59
  sam.tiff_to_vector(f"{out_file}/masks.tif", out_file)
60
+ sam.show_anns(axis="off", alpha=1, output=f"{out_file}/annotations.tif")
61
+
62
+ #converting tif to jpg
63
+ image = cv2.imread(f"{out_file}/annotations.tif")
64
+ cv2.imwrite("{}/{}.jpg".format(out_file,'converted'), image)
65
 
66
  # writing files to a zipfile
67
  file_paths=get_all_file_paths(out_file)
68
+
69
  # for file_name in file_paths:
70
  # print(file_name)
71
 
 
73
  # writing each file one by one
74
  for file in file_paths:
75
  zip.write(file)
 
 
76
 
77
+ print('All files zipped successfully!')
78
+
79
+ return f"{out_file}/converted.jpg",f'{zip_folder}/shapefile.zip'
80
  # get_shape_files(image)
81
  else:
82
  return "Try uploading .tif file for processing!."
 
91
  img_source = gr.File(label="Please select source tif")
92
  source_image_loader = gr.Button("Get Shape File")
93
  with gr.Column():
94
+ image=gr.Image()
95
  output = gr.outputs.File("zip")
96
+ source_image_loader.click(get_shape_files,img_source,[image,output])
97
  my_app.launch(debug = True)