danie94-lml commited on
Commit
5c861ff
·
verified ·
1 Parent(s): 18999c7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -2
app.py CHANGED
@@ -11,6 +11,7 @@ from PIL import Image
11
  import numpy as np
12
  from detectron2.data import MetadataCatalog, DatasetCatalog
13
  from detectron2.utils.visualizer import Visualizer
 
14
 
15
  # Define configuration parameters
16
  output_directories = {
@@ -42,6 +43,9 @@ def run_instance_segmentation(im, predictor, num_classes):
42
  # Calculate the total area of Inorganic Material masks
43
  total_inorganic_area = np.sum(inorganic_material_masks)
44
 
 
 
 
45
  elif num_classes == 4:
46
 
47
  # Create masks for Nest and Inorganic Material
@@ -60,19 +64,27 @@ def run_instance_segmentation(im, predictor, num_classes):
60
  rope_cloth_area = np.sum(rope_cloth_masks)
61
  total_inorganic_area = np.sum([plastic_area, fishing_net_area, rope_cloth_area])
62
 
63
- return total_nest_area, total_inorganic_area
 
 
 
64
 
65
  def click_instance_segmentation(image, model_selection, predictor):
66
  im = np.array(image)[:, :, ::-1]
67
 
68
  if st.button("Run Instance Segmentation"):
69
  num_classes = 2 if model_selection == "2 Classes" else 4
70
- total_nest_area, total_inorganic_area = run_instance_segmentation(im, predictor, num_classes)
71
 
72
  # Calculate the percentage of inorganic material within the Nest
73
  percentage_inorganic_in_nest = (total_inorganic_area / total_nest_area) * 100
74
 
75
  st.write(f"Percentage of Inorganic Material in Nest: {percentage_inorganic_in_nest:.2f}%")
 
 
 
 
 
76
 
77
 
78
  def app():
 
11
  import numpy as np
12
  from detectron2.data import MetadataCatalog, DatasetCatalog
13
  from detectron2.utils.visualizer import Visualizer
14
+ from collections import Counter
15
 
16
  # Define configuration parameters
17
  output_directories = {
 
43
  # Calculate the total area of Inorganic Material masks
44
  total_inorganic_area = np.sum(inorganic_material_masks)
45
 
46
+ # Contar la cantidad de máscaras por categoría
47
+ mask_counts = Counter(classes)
48
+
49
  elif num_classes == 4:
50
 
51
  # Create masks for Nest and Inorganic Material
 
64
  rope_cloth_area = np.sum(rope_cloth_masks)
65
  total_inorganic_area = np.sum([plastic_area, fishing_net_area, rope_cloth_area])
66
 
67
+ # Contar la cantidad de máscaras por categoría
68
+ mask_counts = Counter(classes)
69
+
70
+ return total_nest_area, total_inorganic_area, mask_counts
71
 
72
  def click_instance_segmentation(image, model_selection, predictor):
73
  im = np.array(image)[:, :, ::-1]
74
 
75
  if st.button("Run Instance Segmentation"):
76
  num_classes = 2 if model_selection == "2 Classes" else 4
77
+ total_nest_area, total_inorganic_area, mask_counts = run_instance_segmentation(im, predictor, num_classes)
78
 
79
  # Calculate the percentage of inorganic material within the Nest
80
  percentage_inorganic_in_nest = (total_inorganic_area / total_nest_area) * 100
81
 
82
  st.write(f"Percentage of Inorganic Material in Nest: {percentage_inorganic_in_nest:.2f}%")
83
+
84
+ # Mostrar la cantidad de máscaras por categoría
85
+ st.write("Mask Counts by Category:")
86
+ for category, count in mask_counts.items():
87
+ st.write(f"Category {category}: {count} masks")
88
 
89
 
90
  def app():