/ Модель

Характеристики

Лицензия
Apache 2.0
Базовая модель
owlvit-base-patch16
Библиотека
zeromodels
Опубликована
29 июл 2026

owlvit-base-patch16

Поиск объектов без дообученияИзображение, текст → bounding_boxes3 профессии

Конверсия OWL-ViT на Keras 3 обнаруживает на изображениях объекты по свободным текстовым запросам без фиксированного списка классов.

59скачиваний за 30 дней0лайковвеса обновлены26 авг 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

zeromodels/owlvit-base-patch16 — конверсия модели OWL-ViT от Google в формате Keras 3, распространяемая проектом zeromodels. Это модель обнаружения объектов с открытым словарём: она находит на изображениях объекты, описанные свободными текстовыми запросами, без фиксированного набора классов. Архитектура использует визуальный и текстовый энкодеры в стиле CLIP и лёгкую голову предсказания рамок для каждого патча изображения; кандидаты оцениваются по косинусному сходству с текстовыми запросами.

Модель предназначена для поиска объектов по текстовому описанию, в том числе классов, не заданных при обучении. Реализация Keras 3 рассчитана на запуск с TensorFlow, Torch или JAX. Для модели указана лицензия Apache 2.0. Порог обнаружения для открытого словаря часто требуется выбирать ниже, чем у детекторов с фиксированными классами.

Сценарии применения

  • поиск на изображении объектов по текстовому описанию
  • обнаружение объектов с классами, не заданными заранее
  • поиск предметов на фотографиях по списку текстовых запросов

Ограничения

Для открытого словаря часто нужны более низкие пороги обнаружения, чем для детекторов с фиксированными классами. Для корректной обработки следует использовать Processor, соответствующий варианту модели.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

See our collection for all versions of OWL-ViT.

Run OWL-ViT with Keras 3: JAX, PyTorch, or TensorFlow

GitHub Docs Collection

zeromodels/owlvit-base-patch16

Paper: Simple Open-Vocabulary Object Detection with Vision Transformers (arXiv:2205.06230) · HF Papers

OWL-ViT detects objects described by free text, with no fixed class list. It starts from a CLIP-style vision and text encoder, then drops CLIP's pooling and attaches a lightweight box head to every patch token. Each patch becomes a detection candidate, scored by cosine similarity against your text queries.

For more details on the model, please go to Google's original model card.

Pure-Keras 3 conversion of google/owlvit-base-patch16 for zeromodels. One implementation runs unmodified on TensorFlow / Torch / JAX.

This is an open-vocabulary object detection checkpoint (OwlViTDetect): pass free-text prompts at inference time.

✨ Quick start

import os
os.environ["KERAS_BACKEND"] = "torch"  # or "jax" / "tensorflow"

from PIL import Image
from zeromodels.models.owlvit import (
    OwlViTDetect,
    OwlViTProcessor,
    OwlViTImageProcessor,
)

model = OwlViTDetect.from_weights("zeromodels/owlvit-base-patch16")
processor = OwlViTProcessor.from_weights("zeromodels/owlvit-base-patch16")
image_processor = OwlViTImageProcessor.from_weights("zeromodels/owlvit-base-patch16")

image = Image.open("your_image.jpg").convert("RGB")
prompts = ["a photo of a mug", "a photo of a knife"]
inputs = processor(text=[prompts], images=image)
output = model(
    {
        "input_ids": inputs["input_ids"],
        "pixel_values": inputs["pixel_values"],
    }
)
results = image_processor.post_process_object_detection(
    output,
    threshold=0.1,
    target_sizes=[(image.height, image.width)],
    text_labels=[prompts],
)[0]
for score, name, box in zip(
    results["scores"], results["text_labels"], results["boxes"]
):
    print(f"{name}: {float(score):.3f} {box}")

Load any OWL-ViT / OWLv2 variant the same way with from_weights("zeromodels/<variant>") (use OwlViTDetect for this repo):

VariantHubFamily
owlvit-base-patch32zeromodels/owlvit-base-patch32OWL-ViT
owlvit-base-patch16zeromodels/owlvit-base-patch16OWL-ViT
owlvit-large-patch14zeromodels/owlvit-large-patch14OWL-ViT
owlv2-base-patch16zeromodels/owlv2-base-patch16OWLv2
owlv2-base-patch16-ensemblezeromodels/owlv2-base-patch16-ensembleOWLv2
owlv2-base-patch16-finetunedzeromodels/owlv2-base-patch16-finetunedOWLv2
owlv2-large-patch14zeromodels/owlv2-large-patch14OWLv2
owlv2-large-patch14-ensemblezeromodels/owlv2-large-patch14-ensembleOWLv2
owlv2-large-patch14-finetunedzeromodels/owlv2-large-patch14-finetunedOWLv2

Tips

  • Set KERAS_BACKEND before importing Keras / zeromodels.
  • Prefer Processor.from_weights(...) so image size matches the variant.
  • Open-vocab thresholds are often much lower than closed-set detectors (try 0.1).
  • OWLv2 pads to square before resize; pass the original (height, width) as target_sizes carefully (see the OWLv2 docs for the padding trap).
  • See OWL-ViT docs and Loading Weights.
  • Community / upstream safetensors still work via the hf: prefix, e.g. OwlViTDetect.from_weights("hf:google/owlvit-base-patch16").

Special Thanks

A huge thank you to the Google OWL-ViT authors for creating and releasing these models.

License: Apache 2.0.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · zeromodels

Нельзя запустить

В репозитории нет весов в формате PyTorch/safetensors.

Ревизия весов
dfffeb8

0 моделей