Visuelle AI-Unterstützung
KI-gestützte Unterstützung für Bild- und Videoannotation mit Vision-Modellen.
Visuelle AI-Unterstützung
Neu in v2.1.0
Potato bietet KI-gestützte Unterstützung für Bild- und Videoannotationsaufgaben mithilfe verschiedener Vision-Modelle, einschließlich YOLO für Objekterkennung und vision-language models (VLLMs) wie GPT-4o, Claude und Ollama-Vision-Modelle.
Übersicht
Die visuelle AI-Unterstützung ermöglicht:
- Objekterkennung: Objekte in Bildern mit YOLO oder VLLMs automatisch erkennen und lokalisieren
- Vorausfüllen von Annotationen: Alle Objekte automatisch zur menschlichen Überprüfung erkennen
- Klassifikation: Bilder oder Regionen innerhalb von Bildern klassifizieren
- Hinweise: Anleitung geben, ohne genaue Positionen zu offenbaren
- Szenenerkennung: Zeitliche Segmente in Videos identifizieren
- Keyframe-Erkennung: Bedeutsame Momente in Videos finden
- Objektverfolgung: Objekte über Videoframes hinweg verfolgen
Unterstützte Endpunkte
YOLO-Endpunkt
Am besten für schnelle, genaue Objekterkennung mit lokaler Inferenz.
ai_support:
enabled: true
endpoint_type: "yolo"
ai_config:
model: "yolov8m.pt" # or yolov8n, yolov8l, yolov8x, yolo-world
confidence_threshold: 0.5
iou_threshold: 0.45Unterstützte Modelle:
- YOLOv8 (n/s/m/l/x Varianten)
- YOLO-World (Open-Vocabulary-Erkennung)
- Benutzerdefiniert trainierte Modelle
Ollama-Vision-Endpunkt
Für lokale vision-language model-Inferenz.
ai_support:
enabled: true
endpoint_type: "ollama_vision"
ai_config:
model: "llava:latest" # or llava-llama3, bakllava, llama3.2-vision, qwen2.5-vl
base_url: "http://localhost:11434"
max_tokens: 500
temperature: 0.1Unterstützte Modelle:
- LLaVA (7B, 13B, 34B)
- LLaVA-LLaMA3
- BakLLaVA
- Llama 3.2 Vision (11B, 90B)
- Qwen2.5-VL
- Moondream
OpenAI-Vision-Endpunkt
Für cloudbasierte visuelle Analyse mit GPT-4o.
ai_support:
enabled: true
endpoint_type: "openai_vision"
ai_config:
api_key: "${OPENAI_API_KEY}"
model: "gpt-4o" # or gpt-4o-mini
max_tokens: 1000
detail: "auto" # low, high, or autoAnthropic-Vision-Endpunkt
Für Claude mit Vision-Fähigkeiten.
ai_support:
enabled: true
endpoint_type: "anthropic_vision"
ai_config:
api_key: "${ANTHROPIC_API_KEY}"
model: "claude-sonnet-4-20250514"
max_tokens: 1024Endpunkt-Fähigkeiten
Jeder Endpunkt hat unterschiedliche Stärken:
| Endpunkt | Textgenerierung | Vision | Bbox-Ausgabe | Schlüsselwort | Begründung |
|---|---|---|---|---|---|
ollama_vision | Ja | Ja | Nein | Nein | Ja |
openai_vision | Ja | Ja | Nein | Nein | Ja |
anthropic_vision | Ja | Ja | Nein | Nein | Ja |
yolo | Nein | Ja | Ja | Nein | Nein |
Bewährte Vorgehensweisen:
- Für präzise Objekterkennung den
yolo-Endpunkt verwenden - Für Bildklassifikation mit Erklärungen ein VLLM wie
ollama_visionmit Qwen-VL oder LLaVA verwenden - Für kombinierte Workflows sowohl einen Text- als auch einen Visual-Endpunkt konfigurieren
Bildannotation mit AI
KI-gestützte Bildannotation mit Erkennungs-, Vorausfüll-, Klassifikations- und Hinweisfunktionen konfigurieren:
annotation_schemes:
- annotation_type: image_annotation
name: object_detection
description: "Detect and label objects in the image"
tools:
- bbox
- polygon
labels:
- name: "person"
color: "#FF6B6B"
- name: "car"
color: "#4ECDC4"
- name: "dog"
color: "#45B7D1"
ai_support:
enabled: true
features:
detection: true # "Detect" button - find objects
pre_annotate: true # "Auto" button - detect all
classification: false # "Classify" button - classify region
hint: true # "Hint" button - get guidance
ai_support:
enabled: true
endpoint_type: "yolo"
ai_config:
model: "yolov8m.pt"
confidence_threshold: 0.5Videoannotation mit AI
annotation_schemes:
- annotation_type: video_annotation
name: scene_segmentation
description: "Segment video into scenes"
mode: segment
labels:
- name: "intro"
color: "#4ECDC4"
- name: "action"
color: "#FF6B6B"
- name: "outro"
color: "#45B7D1"
ai_support:
enabled: true
features:
scene_detection: true # Detect scene boundaries
keyframe_detection: false
tracking: false
pre_annotate: true # Auto-segment entire video
hint: true
ai_support:
enabled: true
endpoint_type: "ollama_vision"
ai_config:
model: "llava:latest"
max_frames: 10 # Frames to sample for video analysisSeparate visuelle und Text-Endpunkte
Sie können einen separaten Endpunkt für visuelle Aufgaben konfigurieren und dabei das beste Modell für jeden Inhaltstyp verwenden:
ai_support:
enabled: true
endpoint_type: "openai" # For text annotations
ai_config:
api_key: "${OPENAI_API_KEY}"
model: "gpt-4o-mini"
# Separate visual endpoint
visual_endpoint_type: "yolo"
visual_ai_config:
model: "yolov8m.pt"
confidence_threshold: 0.5Oder ein vision-language model neben einem Textmodell verwenden:
ai_support:
enabled: true
endpoint_type: "ollama" # Main endpoint for text
visual_endpoint_type: "ollama_vision" # Visual endpoint for images
ai_config:
model: "llama3.2"
include:
all: true
visual_ai_config:
model: "qwen2.5-vl:7b"AI-Funktionen
Erkennung
Findet Objekte, die den konfigurierten Labels entsprechen, und zeichnet Vorschlagsbounding-Boxen. Vorschläge erscheinen als gestrichelte Overlays, die akzeptiert oder abgelehnt werden können.
Vorausfüllen (Auto)
Erkennt automatisch alle Objekte im Bild/Video und erstellt Vorschläge zur menschlichen Überprüfung. Nützlich zur Beschleunigung der Annotation großer Datensätze.
Klassifikation
Klassifiziert eine ausgewählte Region oder das gesamte Bild. Gibt ein vorgeschlagenes Label mit Konfidenzwert und Begründung zurück.
Hinweise
Gibt Anleitung, ohne genaue Antworten zu offenbaren. Gut für das Training von Annotatoren oder wenn menschliches Urteilsvermögen mit KI-Unterstützung gewünscht wird.
Szenenerkennung (Video)
Analysiert Videoframes, um Szenengrenzen zu identifizieren, und schlägt zeitliche Segmente mit Labels vor.
Keyframe-Erkennung (Video)
Identifiziert bedeutsame Momente in einem Video, die gute Annotationspunkte ergeben würden.
Objektverfolgung (Video)
Schlägt Objektpositionen über Frames hinweg für eine konsistente Tracking-Annotation vor.
AI-Vorschläge verwenden
- Auf die AI-Unterstützungsschaltfläche klicken (Erkennen, Auto, Hinweis usw.)
- Warten, bis Vorschläge als gestrichelte Overlays erscheinen
- Vorschlag akzeptieren: Doppelklick auf das Vorschlagsoverlay
- Vorschlag ablehnen: Rechtsklick auf das Vorschlagsoverlay
- Alle akzeptieren: "Alle akzeptieren" in der Symbolleiste klicken
- Alle löschen: "Löschen" klicken, um alle Vorschläge zu entfernen
Erkennungs-API-Antwortformat
{
"detections": [
{
"label": "person",
"bbox": {"x": 0.1, "y": 0.2, "width": 0.3, "height": 0.5},
"confidence": 0.95
}
]
}Für Hinweise:
{
"hint": "Look for objects in the lower right corner",
"suggestive_choice": "Focus on overlapping regions"
}Für Videosegmente:
{
"segments": [
{
"start_time": 0.0,
"end_time": 5.5,
"suggested_label": "intro",
"confidence": 0.85
}
]
}Anforderungen
Für YOLO-Endpunkt
pip install ultralytics opencv-pythonFür Ollama Vision
- Ollama von ollama.ai installieren
- Ein Vision-Modell herunterladen:
ollama pull llava - Ollama-Server starten (läuft standardmäßig auf
http://localhost:11434)
Für OpenAI/Anthropic Vision
- API-Key in der Umgebung oder Konfiguration setzen
- Sicherstellen, dass Zugang zu vision-fähigen Modellen vorhanden ist
Fehlerbehebung
"No visual AI endpoint configured"
Sicherstellen, dass:
ai_support.enabled: truegesetzt ist- Ein gültiger
endpoint_typemit Vision-Unterstützung gesetzt ist (yolo,ollama_vision,openai_vision,anthropic_vision) - Erforderliche Abhängigkeiten für den gewählten Endpunkt installiert sind
YOLO erkennt erwartete Objekte nicht
confidence_thresholdsenken- Sicherstellen, dass Ihre Labels den YOLO-Klassenbezeichnungen entsprechen (oder YOLO-World für benutzerdefinierte Vokabulare verwenden)
- Prüfen, ob die Modelldatei existiert und gültig ist
Ollama-Vision-Fehler
- Prüfen, ob Ollama läuft:
curl http://localhost:11434/api/tags - Sicherstellen, dass ein Vision-Modell heruntergeladen wurde:
ollama list - Prüfen, ob das Modell Vision unterstützt (llava, bakllava, llama3.2-vision usw.)
Weiterführende Informationen
- AI-Unterstützung – Textbasierte KI-Unterstützung (Hinweise, Schlüsselwörter, Begründungen)
- Bildannotation – Bildannotationswerkzeuge und -konfiguration
- Instanzanzeige – Inhaltsanzeige konfigurieren
Implementierungsdetails finden Sie in der Quelldokumentation.