prithivMLmods commited on
Commit
26ac38c
·
verified ·
1 Parent(s): 8a6767c

Delete dog_breed.py

Browse files
Files changed (1) hide show
  1. dog_breed.py +0 -161
dog_breed.py DELETED
@@ -1,161 +0,0 @@
1
- import gradio as gr
2
- import spaces
3
- from transformers import AutoImageProcessor, SiglipForImageClassification
4
- from PIL import Image
5
- import torch
6
-
7
- # Load model and processor
8
- model_name = "prithivMLmods/Dog-Breed-120"
9
- model = SiglipForImageClassification.from_pretrained(model_name)
10
- processor = AutoImageProcessor.from_pretrained(model_name)
11
-
12
- @spaces.GPU
13
- def dog_breed_classification(image):
14
- """Predicts the dog breed for an image."""
15
- image = Image.fromarray(image).convert("RGB")
16
- inputs = processor(images=image, return_tensors="pt")
17
-
18
- with torch.no_grad():
19
- outputs = model(**inputs)
20
- logits = outputs.logits
21
- probs = torch.nn.functional.softmax(logits, dim=1).squeeze().tolist()
22
-
23
- labels = {
24
- "0": "affenpinscher",
25
- "1": "afghan_hound",
26
- "2": "african_hunting_dog",
27
- "3": "airedale",
28
- "4": "american_staffordshire_terrier",
29
- "5": "appenzeller",
30
- "6": "australian_terrier",
31
- "7": "basenji",
32
- "8": "basset",
33
- "9": "beagle",
34
- "10": "bedlington_terrier",
35
- "11": "bernese_mountain_dog",
36
- "12": "black-and-tan_coonhound",
37
- "13": "blenheim_spaniel",
38
- "14": "bloodhound",
39
- "15": "bluetick",
40
- "16": "border_collie",
41
- "17": "border_terrier",
42
- "18": "borzoi",
43
- "19": "boston_bull",
44
- "20": "bouvier_des_flandres",
45
- "21": "boxer",
46
- "22": "brabancon_griffon",
47
- "23": "briard",
48
- "24": "brittany_spaniel",
49
- "25": "bull_mastiff",
50
- "26": "cairn",
51
- "27": "cardigan",
52
- "28": "chesapeake_bay_retriever",
53
- "29": "chihuahua",
54
- "30": "chow",
55
- "31": "clumber",
56
- "32": "cocker_spaniel",
57
- "33": "collie",
58
- "34": "curly-coated_retriever",
59
- "35": "dandie_dinmont",
60
- "36": "dhole",
61
- "37": "dingo",
62
- "38": "doberman",
63
- "39": "english_foxhound",
64
- "40": "english_setter",
65
- "41": "english_springer",
66
- "42": "entlebucher",
67
- "43": "eskimo_dog",
68
- "44": "flat-coated_retriever",
69
- "45": "french_bulldog",
70
- "46": "german_shepherd",
71
- "47": "german_short-haired_pointer",
72
- "48": "giant_schnauzer",
73
- "49": "golden_retriever",
74
- "50": "gordon_setter",
75
- "51": "great_dane",
76
- "52": "great_pyrenees",
77
- "53": "greater_swiss_mountain_dog",
78
- "54": "groenendael",
79
- "55": "ibizan_hound",
80
- "56": "irish_setter",
81
- "57": "irish_terrier",
82
- "58": "irish_water_spaniel",
83
- "59": "irish_wolfhound",
84
- "60": "italian_greyhound",
85
- "61": "japanese_spaniel",
86
- "62": "keeshond",
87
- "63": "kelpie",
88
- "64": "kerry_blue_terrier",
89
- "65": "komondor",
90
- "66": "kuvasz",
91
- "67": "labrador_retriever",
92
- "68": "lakeland_terrier",
93
- "69": "leonberg",
94
- "70": "lhasa",
95
- "71": "malamute",
96
- "72": "malinois",
97
- "73": "maltese_dog",
98
- "74": "mexican_hairless",
99
- "75": "miniature_pinscher",
100
- "76": "miniature_poodle",
101
- "77": "miniature_schnauzer",
102
- "78": "newfoundland",
103
- "79": "norfolk_terrier",
104
- "80": "norwegian_elkhound",
105
- "81": "norwich_terrier",
106
- "82": "old_english_sheepdog",
107
- "83": "otterhound",
108
- "84": "papillon",
109
- "85": "pekinese",
110
- "86": "pembroke",
111
- "87": "pomeranian",
112
- "88": "pug",
113
- "89": "redbone",
114
- "90": "rhodesian_ridgeback",
115
- "91": "rottweiler",
116
- "92": "saint_bernard",
117
- "93": "saluki",
118
- "94": "samoyed",
119
- "95": "schipperke",
120
- "96": "scotch_terrier",
121
- "97": "scottish_deerhound",
122
- "98": "sealyham_terrier",
123
- "99": "shetland_sheepdog",
124
- "100": "shih-tzu",
125
- "101": "siberian_husky",
126
- "102": "silky_terrier",
127
- "103": "soft-coated_wheaten_terrier",
128
- "104": "staffordshire_bullterrier",
129
- "105": "standard_poodle",
130
- "106": "standard_schnauzer",
131
- "107": "sussex_spaniel",
132
- "108": "test",
133
- "109": "tibetan_mastiff",
134
- "110": "tibetan_terrier",
135
- "111": "toy_poodle",
136
- "112": "toy_terrier",
137
- "113": "vizsla",
138
- "114": "walker_hound",
139
- "115": "weimaraner",
140
- "116": "welsh_springer_spaniel",
141
- "117": "west_highland_white_terrier",
142
- "118": "whippet",
143
- "119": "wire-haired_fox_terrier",
144
- "120": "yorkshire_terrier"
145
- }
146
-
147
- predictions = {labels[str(i)]: round(probs[i], 3) for i in range(len(probs))}
148
- return predictions
149
-
150
- # Create Gradio interface
151
- iface = gr.Interface(
152
- fn=dog_breed_classification,
153
- inputs=gr.Image(type="numpy"),
154
- outputs=gr.Label(label="Prediction Scores"),
155
- title="Dog Breed Classification",
156
- description="Upload an image to classify it into one of the 121 dog breed categories."
157
- )
158
-
159
- # Launch the app
160
- if __name__ == "__main__":
161
- iface.launch()