AkashDataScience commited on
Commit
94627ea
·
1 Parent(s): 609e92c

Updated readme and other optimization

Browse files
Files changed (2) hide show
  1. README.md +29 -2
  2. app.py +4 -4
README.md CHANGED
@@ -1,5 +1,32 @@
1
  ---
2
- license: mit
3
  title: Shirt Detection
 
 
 
 
 
4
  sdk: gradio
5
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
 
2
  title: Shirt Detection
3
+ colorFrom: red
4
+ colorTo: gray
5
+ app_file: app.py
6
+ pinned: false
7
+ license: mit
8
  sdk: gradio
9
+ ---
10
+
11
+ # App for shirt/tshirt detection using YOLOv9
12
+
13
+ ## Features
14
+ - Image input/output: Upload image and check predictions
15
+ - Confidence Thresold: Confidence Thresold from NMS
16
+ - IoU Thresold: IoU thresold to remove overlapping detection boxes
17
+
18
+ ## Usage
19
+ - Upload an image
20
+ - Change settings as requied
21
+ - Hit submit and view results
22
+
23
+ ## Features
24
+ - GradCAM: To understand what models has actully learned. Adjust opacity and model layer for grad-cam.
25
+ - Miss classified images: Plot of images missclassified by model
26
+ - Image input/output: Upload image and check predictions
27
+ - Top classes: Show top n classes with high prediction confidence.
28
+
29
+ ## Usage
30
+ - Upload an image
31
+ - Change settings as requied
32
+ - Hit submit and view results
app.py CHANGED
@@ -10,6 +10,9 @@ from utils.general import check_img_size, Profile, non_max_suppression, scale_bo
10
 
11
  weights = "runs/train/best_striped.pt"
12
  data = "data.yaml"
 
 
 
13
 
14
  def resize_image_pil(image, new_width, new_height):
15
 
@@ -34,9 +37,6 @@ def resize_image_pil(image, new_width, new_height):
34
 
35
  def inference(input_img, conf_thres, iou_thres):
36
  im0 = input_img.copy()
37
- # Load model
38
- device = select_device('cpu')
39
- model = DetectMultiBackend(weights, device=device, dnn=False, data=data, fp16=False)
40
  stride, names, pt = model.stride, model.names, model.pt
41
  imgsz = check_img_size((640, 640), s=stride) # check image size
42
 
@@ -89,7 +89,7 @@ examples = [["image_1.jpg", 0.25, 0.45], ["image_2.jpg", 0.25, 0.45],
89
 
90
  demo = gr.Interface(inference,
91
  inputs = [gr.Image(width=320, height=320, label="Input Image"),
92
- gr.Slider(0, 1, 0.25, label="Confidance Thresold"),
93
  gr.Slider(0, 1, 0.45, label="IoU Thresold")],
94
  outputs= [gr.Image(width=640, height=640, label="Output")],
95
  title=title,
 
10
 
11
  weights = "runs/train/best_striped.pt"
12
  data = "data.yaml"
13
+ # Load model
14
+ device = select_device('cpu')
15
+ model = DetectMultiBackend(weights, device=device, dnn=False, data=data, fp16=False)
16
 
17
  def resize_image_pil(image, new_width, new_height):
18
 
 
37
 
38
  def inference(input_img, conf_thres, iou_thres):
39
  im0 = input_img.copy()
 
 
 
40
  stride, names, pt = model.stride, model.names, model.pt
41
  imgsz = check_img_size((640, 640), s=stride) # check image size
42
 
 
89
 
90
  demo = gr.Interface(inference,
91
  inputs = [gr.Image(width=320, height=320, label="Input Image"),
92
+ gr.Slider(0, 1, 0.25, label="Confidence Threshold"),
93
  gr.Slider(0, 1, 0.45, label="IoU Thresold")],
94
  outputs= [gr.Image(width=640, height=640, label="Output")],
95
  title=title,