BhumikaMak commited on
Commit
53bfd89
·
1 Parent(s): 41ccda6

Fix: No module named utils.google_utils.

Browse files
Files changed (1) hide show
  1. app.py +5 -6
app.py CHANGED
@@ -10,6 +10,7 @@ from pytorch_grad_cam import EigenCAM
10
  from pytorch_grad_cam.utils.image import show_cam_on_image, scale_cam_image
11
  from PIL import Image
12
  import gradio as gr
 
13
  # Global Color Palette
14
  COLORS = np.random.uniform(0, 255, size=(80, 3))
15
 
@@ -39,15 +40,14 @@ def draw_detections(boxes, colors, names, img):
39
  lineType=cv2.LINE_AA)
40
  return img
41
 
42
-
43
  # Load the appropriate YOLO model based on the version
44
  def load_yolo_model(version="yolov5"):
45
  if version == "yolov3":
46
  model = torch.hub.load('ultralytics/yolov3', 'yolov3', pretrained=True)
47
  elif version == "yolov5":
48
- model = torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True)
49
  elif version == "yolov8":
50
- model = torch.hub.load('ultralytics/yolov5:v7.0', 'yolov5', pretrained=True) # YOLOv8 is part of the yolov5 repo starting from v7.0
51
  else:
52
  raise ValueError(f"Unsupported YOLO version: {version}")
53
 
@@ -55,7 +55,6 @@ def load_yolo_model(version="yolov5"):
55
  model.cpu()
56
  return model
57
 
58
- # Main function for Grad-CAM visualization
59
  # Main function for Grad-CAM visualization
60
  def process_image(image, yolo_versions=["yolov5"]):
61
  image = np.array(image)
@@ -74,10 +73,10 @@ def process_image(image, yolo_versions=["yolov5"]):
74
  for yolo_version in yolo_versions:
75
  # Load the model based on YOLO version
76
  model = load_yolo_model(yolo_version)
77
- target_layers = [model.model.model.model[-2]] # Assumes last layer is used for Grad-CAM
78
 
79
  # Run YOLO detection
80
- results = model([rgb_img])
81
  boxes, colors, names = parse_detections(results)
82
  detections_img = draw_detections(boxes, colors, names, rgb_img.copy())
83
 
 
10
  from pytorch_grad_cam.utils.image import show_cam_on_image, scale_cam_image
11
  from PIL import Image
12
  import gradio as gr
13
+
14
  # Global Color Palette
15
  COLORS = np.random.uniform(0, 255, size=(80, 3))
16
 
 
40
  lineType=cv2.LINE_AA)
41
  return img
42
 
 
43
  # Load the appropriate YOLO model based on the version
44
  def load_yolo_model(version="yolov5"):
45
  if version == "yolov3":
46
  model = torch.hub.load('ultralytics/yolov3', 'yolov3', pretrained=True)
47
  elif version == "yolov5":
48
+ model = torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True) # Load yolov5 small model
49
  elif version == "yolov8":
50
+ model = torch.hub.load('ultralytics/yolov5:v7.0', 'yolov5', pretrained=True) # YOLOv8 is part of yolov5 repo starting v7.0
51
  else:
52
  raise ValueError(f"Unsupported YOLO version: {version}")
53
 
 
55
  model.cpu()
56
  return model
57
 
 
58
  # Main function for Grad-CAM visualization
59
  def process_image(image, yolo_versions=["yolov5"]):
60
  image = np.array(image)
 
73
  for yolo_version in yolo_versions:
74
  # Load the model based on YOLO version
75
  model = load_yolo_model(yolo_version)
76
+ target_layers = [model.model.model[-2]] # Assumes last layer is used for Grad-CAM
77
 
78
  # Run YOLO detection
79
+ results = model(rgb_img)
80
  boxes, colors, names = parse_detections(results)
81
  detections_img = draw_detections(boxes, colors, names, rgb_img.copy())
82