/ Модель

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

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

owlv2-base-patch16-ensemble

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

Конверсия OWLv2 от Google для обнаружения объектов на изображениях по свободным текстовым запросам.

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

Бенчмарки

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

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

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

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

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

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

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

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

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

  • поиск объектов на изображении по текстовому описанию
  • обнаружение объектов из пользовательского списка классов
  • разметка изображений с открытым набором категорий

Ограничения

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

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

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

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

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

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

Открыть на Hugging Face

See our collection for all versions of OWLv2.

Run OWLv2 with Keras 3: JAX, PyTorch, or TensorFlow

GitHub Docs Collection

zeromodels/owlv2-base-patch16-ensemble

Paper: Scaling Open-Vocabulary Object Detection (arXiv:2306.09683) · HF Papers

OWLv2 keeps OWL-ViT's dual-tower skeleton and per-patch detection head, and scales it with self-training on web image-text pairs. It adds an objectness head (a learned is-this-patch-an-object score) and pads images to a square before resizing, which matters for post-processing target sizes.

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

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

This is an open-vocabulary object detection checkpoint (Owlv2Detect): 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.owlv2 import (
    Owlv2Detect,
    Owlv2Processor,
    Owlv2ImageProcessor,
)

model = Owlv2Detect.from_weights("zeromodels/owlv2-base-patch16-ensemble")
processor = Owlv2Processor.from_weights("zeromodels/owlv2-base-patch16-ensemble")
image_processor = Owlv2ImageProcessor.from_weights("zeromodels/owlv2-base-patch16-ensemble")

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 Owlv2Detect 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 OWLv2 docs and Loading Weights.
  • Community / upstream safetensors still work via the hf: prefix, e.g. Owlv2Detect.from_weights("hf:google/owlv2-base-patch16-ensemble").

Special Thanks

A huge thank you to the Google OWLv2 authors for creating and releasing these models.

License: Apache 2.0.

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

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

GPU в ailist

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

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

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

Ревизия весов
04cbd3e

0 моделей