vancauwe commited on
Commit
0ccc47d
·
1 Parent(s): b092e67

feat: correct definition of body boxes

Browse files
app/assets/fonts/LiberationSans-Regular.ttf ADDED
Binary file (134 kB). View file
 
app/assets/images/bird_boxed.png CHANGED
app/boxes_define.py CHANGED
@@ -3,21 +3,21 @@ from shapely.geometry import box
3
 
4
  bounding_boxes = [
5
  # 'Head incl. eyes',
6
- box(250, 375, 350, 500),
7
  # 'Beak and mouth region',
8
- box(200, 450, 250, 500),
9
- # 'Feathers/Wings',
10
- box(10, 10, 50, 50),
11
  # 'Legs',
12
- box(325, 575, 450, 675),
13
  # 'Body'
14
- box(500, 500, 500, 500)
15
  ]
16
 
17
  # Create a GeoDataFrame from these boxes
18
  gdf = gpd.GeoDataFrame({'geometry': bounding_boxes,
19
  'name': ['Head incl. eyes',
20
- 'Beak and mouth region',
21
- 'Feathers/Wings',
22
  'Legs',
23
  'Body']})
 
3
 
4
  bounding_boxes = [
5
  # 'Head incl. eyes',
6
+ box(250, 375, 350, 485),
7
  # 'Beak and mouth region',
8
+ box(200, 450, 250, 485),
9
+ # 'Feathers/Wings/Tail',
10
+ box(50, 100, 725, 355),
11
  # 'Legs',
12
+ box(325, 585, 450, 675),
13
  # 'Body'
14
+ box(275, 510, 500, 565)
15
  ]
16
 
17
  # Create a GeoDataFrame from these boxes
18
  gdf = gpd.GeoDataFrame({'geometry': bounding_boxes,
19
  'name': ['Head incl. eyes',
20
+ 'Beak',
21
+ 'Feathers/Wings/Tail',
22
  'Legs',
23
  'Body']})
app/boxes_map.py CHANGED
@@ -9,16 +9,18 @@ def draw_bounding_boxes(image_path, gdf):
9
  draw = ImageDraw.Draw(image)
10
 
11
  # Optional: Load a font (requires a TTF file)
12
- try:
13
- font = ImageFont.truetype("arial.ttf", 15)
14
- except IOError:
15
- font = ImageFont.load_default()
 
 
16
 
17
  # Draw each bounding box on the image
18
  for _, row in gdf.iterrows():
19
  xmin, ymin, xmax, ymax = row['geometry'].bounds
20
- draw.rectangle([xmin, ymin, xmax, ymax], outline="red", width=2)
21
- draw.text((xmin, ymin-10), row['name'], fill="red", font=font)
22
 
23
  image.save(image_path+'bird_boxed.png', "PNG")
24
 
 
9
  draw = ImageDraw.Draw(image)
10
 
11
  # Optional: Load a font (requires a TTF file)
12
+ # try:
13
+ font = ImageFont.truetype("assets/fonts/LiberationSans-Regular.ttf",
14
+ 20)
15
+ # except IOError:
16
+ # print("default")
17
+ # font = ImageFont.load_default()
18
 
19
  # Draw each bounding box on the image
20
  for _, row in gdf.iterrows():
21
  xmin, ymin, xmax, ymax = row['geometry'].bounds
22
+ draw.rectangle([xmin, ymin, xmax, ymax], outline="purple", width=2)
23
+ draw.text((xmin, ymin-22), row['name'], fill="black", font=font)
24
 
25
  image.save(image_path+'bird_boxed.png', "PNG")
26