File size: 2,311 Bytes
586dd8f
d2a2955
 
586dd8f
d2a2955
586dd8f
 
 
 
 
d2a2955
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
---
title: QuickDraw Sketch Recognition API
emoji: ๐ŸŽจ
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
license: mit
---

# QuickDraw Sketch Recognition API

Real-time sketch recognition API for VR/AR applications. Recognizes 46 different hand-drawn objects using a CNN trained on Google's QuickDraw dataset.

## ๐ŸŽฏ Try It Out

Once the Space is running, you can:

### Test via Swagger UI
Visit the API docs at: `https://issa-ennab-quickdraw-api.hf.space/docs`

### Test via cURL
```bash
# Health check
curl https://issa-ennab-quickdraw-api.hf.space/health

# Get supported classes
curl https://issa-ennab-quickdraw-api.hf.space/classes

# Make a prediction (replace with your base64 image)
curl -X POST https://issa-ennab-quickdraw-api.hf.space/predict/base64 \
  -H "Content-Type: application/json" \
  -d '{"image_base64": "YOUR_BASE64_IMAGE", "top_k": 3}'
```

### Unity/VR Integration
```csharp
private string apiUrl = "https://issa-ennab-quickdraw-api.hf.space/predict/base64";
```

## ๐Ÿ“‹ Supported Classes (46 total)

**Animals:** cat, dog, bird, fish, bear, butterfly, spider  
**Buildings:** house, castle, barn, bridge, lighthouse, church  
**Transportation:** car, airplane, bicycle, truck, train  
**Nature:** tree, flower, sun, moon, cloud, mountain  
**Objects:** apple, banana, book, chair, table, cup, umbrella  
**Body Parts:** face, eye, hand, foot  
**Shapes:** circle, triangle, square, star  
**Tools:** sword, axe, hammer, key, crown  
**Music:** guitar, piano

## ๐Ÿ”ง API Endpoints

- `GET /` - API information
- `GET /health` - Health check
- `GET /classes` - List all supported classes
- `POST /predict` - Upload image file for prediction
- `POST /predict/base64` - Send base64 encoded image (recommended for VR)

## ๐ŸŽฎ Perfect For

- VR/AR drawing applications
- Educational games
- Real-time sketch recognition
- Interactive art tools

## ๐Ÿ“Š Model Performance

- **Accuracy:** 84.89% on validation set
- **Inference Time:** ~50-80ms on CPU
- **Model Size:** 2.9 MB
- **Input:** 28x28 grayscale images

## ๐Ÿ“– Full Documentation

[GitHub Repository](https://github.com/Beakal-23/Augmented-Reality--Image-Detector-Final-Project-)

## ๐Ÿš€ Built With

- FastAPI for the REST API
- TensorFlow/Keras for the CNN model
- Google QuickDraw dataset
- Docker for deployment