File size: 1,351 Bytes
39aea81 b22e508 39aea81 4de000c |
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 |
---
license: apache-2.0
---
# Camera Angle
This model predicts an image's cinematic camera angle [low, neutral, high, overhead, dutch]. The model is a DinoV2 with registers backbone (initiated with `facebook/dinov2-with-registers-large` weights) and trained on a diverse set of two thousand human-annotated images.
## How to use:
```python
import torch
from PIL import Image
from transformers import AutoImageProcessor
from transformers import AutoModelForImageClassification
image_processor = AutoImageProcessor.from_pretrained("facebook/dinov2-with-registers-large")
model = AutoModelForImageClassification.from_pretrained('aslakey/camera_angle')
model.eval()
# example dutch angle image
# model labels [low, neutral, high, overhead, dutch]
image = Image.open('dutch_angle.jpg')
inputs = image_processor(image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
# technically multi-label training, but argmax works too!
predicted_label = outputs.logits.argmax(-1).item()
print(model.config.id2label[predicted_label])
```
## Performance:
| Camera Angle | Precision | Recall |
|--------------|-----------|--------|
| Low | 72% | 91% |
| Neutral | 86% | 70% |
| High | 87% | 75% |
| Overhead | 67% | 70% |
| Dutch (low coverage) | 50% | 50% | |