/ Модель

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

Лицензия
Своя лицензия
Архитектура
timm-image-classification · dense
Базовая модель
tf_efficientnetv2_s.in21k_ft_in1k
Библиотека
timm
Опубликована
13 июл 2026

car-body-classifier

Классификация изображенийИзображение → label3 профессии

Производная модели ryan12345441/car-body-classifier. Дообученная EfficientNetV2-S распознаёт один из восьми типов кузова автомобиля на RGB-изображении.

50скачиваний за 30 дней0лайковвеса обновлены13 июл 2026

Бенчмарки

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

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

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

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

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

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

Карточка модели yigechundong/car-body-classifier на Hugging Face совпадает с карточкой ryan12345441/car-body-classifier, поэтому описание составлено по ней.

Модель ryan12345441/car-body-classifier разработана Furkan Nezih Uzmez и Yusuf Kerem Alcicek из Kocaeli University. Это классификатор изображений на PyTorch и timm: дообученная EfficientNetV2-S с классификационной головой на восемь типов кузова. На вход подаётся одно RGB-изображение автомобиля; изображение приводится к размеру 224 × 224 пикселя. Модель предсказывает один из классов: SUV, VAN, STATION_WAGON, MICRO, гоночный автомобиль с открытыми колёсами, SEDAN, HATCHBACK или PICK_UP.

Модель предназначена для учебных проектов, прототипов, исследовательской оценки и экспериментов с обслуживанием моделей и API. В README сообщаются точность 96,7% и macro F1 95,4% на тестовом наборе с температурной калибровкой вероятностей. Эти результаты относятся к данным проекта; качество может снижаться на изображениях из других регионов и условий съёмки, при частичном перекрытии, необычном ракурсе, низком качестве или неоднозначном типе кузова. Классы MICRO и HATCHBACK указаны как более сложные.

Репозиторий содержит веса в форматах PyTorch и safetensors. Лицензия обозначена как other; README ограничивает применение исследовательской и оценочной деятельностью и исключает коммерческие продукты, публичный хостинг инференса и перераспространение. Перед публичным или коммерческим выпуском требуется отдельно проверить лицензии исходных наборов данных.

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

  • классификация легковых автомобилей по типу кузова
  • определение SUV, седана, хэтчбека или универсала на фото
  • распознавание фургонов, микроавтомобилей и пикапов
  • учебные демонстрации компьютерного зрения для автомобилей
  • прототипирование API классификации автомобильных изображений

Ограничения

Качество может снижаться на изображениях из доменов, отличающихся от обучающих данных, при перекрытии, необычных ракурсах и низком качестве; MICRO и HATCHBACK сложнее для распознавания. Ограниченная лицензия исключает коммерческое применение, публичный хостинг инференса и перераспространение.

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

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

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

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

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

Открыть на Hugging Face

EfficientNetV2-S Car Body Classifier

This repository contains a PyTorch/timm EfficientNetV2-S image classifier for 8 vehicle body types. The model predicts one of SUV, VAN, STATION_WAGON, MICRO, ACIK_TEKERLEKLI_F1_ARACLARI, SEDAN, HATCHBACK, or PICK_UP from a single RGB vehicle image.

The checkpoint is a fine-tuned tf_efficientnetv2_s model with an 8-class classification head. Probability outputs should be temperature-calibrated with temperature = 0.565484.

Files

FilePurpose
efficientnetv2_s_best.ptPyTorch state dict checkpoint.
model.safetensorsSafetensors copy of the same state dict for safer public download workflows.
config.jsonRepository-level model/task configuration.
metadata.jsonTraining, class, artifact, and metric metadata.
preprocessor_config.jsonImage size, normalization, and preprocessing contract.
calibration.jsonTemperature scaling configuration and raw/calibrated metrics.
requirements.txtMinimal runtime dependencies.

Intended Use

Use this model for educational or prototype vehicle body-type classification from visible car images. It is intended for controlled project demos, non-commercial research evaluation, model-serving experiments, and API integration tests where inputs are ordinary car images.

Out-of-Scope Use

Do not use this model for commercial products, public hosted inference services, redistribution, or as the sole basis for safety-critical, insurance, legal, financial, or law-enforcement decisions. Do not assume robust performance on non-car vehicles, heavily occluded vehicles, unusual viewpoints, drawings, low-quality CCTV images, or domains that differ strongly from the training data.

Dataset Provenance

The training data was assembled from multiple public Kaggle and Hugging Face image collections plus manual mapping and QA. The project used source diversity to reduce overfitting to one capture style, but the upstream licensing chain is mixed and must be treated conservatively.

SourcePlatformURLUpstream license metadata observedUse in project
Cars Body Type CroppedKagglehttps://www.kaggle.com/datasets/ademboukhris/cars-body-type-croppedCC0-1.0; source text says Stanford dataset, DuckDuckGo, and BingDirect body-style folders for SUV, VAN, SEDAN, HATCHBACK, PICK UP
Stanford Car Body Type DataKagglehttps://www.kaggle.com/datasets/mayurmahurkar/stanford-car-body-type-dataother; derived from Stanford Cars train subsetStanford-derived body-style folders
Stanford Car Dataset by Classes FolderKagglehttps://www.kaggle.com/datasets/jutrera/stanford-car-dataset-by-classes-folderother; Stanford Cars repackagingFine-grained Stanford Cars folders used for MICRO/VAN mappings
Vehicle Images DatasetKagglehttps://www.kaggle.com/datasets/lyensoetanto/vehicle-images-datasetunknownSupplemental SUV, VAN, SEDAN, PICK UP, MICRO candidates; weak labels excluded by default
Formula One CarsKagglehttps://www.kaggle.com/datasets/vesuvius13/formula-one-carsCC0-1.0; source text says DuckDuckGo scrapingOpen-wheel/F1 images
CBSCHugging Facehttps://huggingface.co/datasets/kitrofimov/cbscDataset card states images from Bing, Baidu, DuckDuckGo, Google Images, and Reddit, with license compliance reviewed by dataset authorDirect body-style classes
Stanford CarsHugging Facehttps://huggingface.co/datasets/tanganke/stanford_carsDataset card does not expose a clear license in fetched metadataStanford-derived car images and labels
AutomobilesHugging Facehttps://huggingface.co/datasets/adityab99/AutomobilesDataset card says more information neededFormula 1 / normal car supplemental images

Because some upstream sources have other or unknown license metadata and some were collected through web search or community platforms, this repository uses a restricted research/evaluation license rather than an open-source or commercial-use license.

Classes

The model emits probabilities in this fixed order:

IndexLabel
0SUV
1VAN
2STATION_WAGON
3MICRO
4ACIK_TEKERLEKLI_F1_ARACLARI
5SEDAN
6HATCHBACK
7PICK_UP

Inference

Install dependencies:

pip install -r requirements.txt

Run single-image inference from a cloned repository:

from pathlib import Path

import timm
import torch
import torch.nn.functional as F
from PIL import Image
from torchvision import transforms

repo_dir = Path(".")
labels = [
    "SUV",
    "VAN",
    "STATION_WAGON",
    "MICRO",
    "ACIK_TEKERLEKLI_F1_ARACLARI",
    "SEDAN",
    "HATCHBACK",
    "PICK_UP",
]

model = timm.create_model("tf_efficientnetv2_s", pretrained=False, num_classes=len(labels))

# Prefer model.safetensors for public download workflows. The .pt checkpoint is
# retained for compatibility with the original project package.
try:
    from safetensors.torch import load_file

    state = load_file(repo_dir / "model.safetensors")
except ImportError:
    state = torch.load(repo_dir / "efficientnetv2_s_best.pt", map_location="cpu", weights_only=True)
if isinstance(state, dict) and "model_state_dict" in state:
    state = state["model_state_dict"]
model.load_state_dict(state)
model.eval()

preprocess = transforms.Compose(
    [
        transforms.Resize(224, interpolation=transforms.InterpolationMode.BICUBIC),
        transforms.CenterCrop(224),
        transforms.ToTensor(),
        transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),
    ]
)

image = Image.open("example.jpg").convert("RGB")
inputs = preprocess(image).unsqueeze(0)

with torch.no_grad():
    logits = model(inputs)
    probs = F.softmax(logits / 0.565484, dim=1).squeeze(0)

pred_idx = int(probs.argmax().item())
print({"label": labels[pred_idx], "confidence": float(probs[pred_idx])})

Preprocessing

Validation, evaluation, and inference use the same deterministic preprocessing:

StepValue
Color modeRGB
Resize224 px, bicubic
Crop224 x 224 center crop
Normalization mean[0.485, 0.456, 0.406]
Normalization std[0.229, 0.224, 0.225]

Training used additional safe augmentations such as horizontal flip, mild random resized crop, rotation, and color jitter. Vertical flip was intentionally disabled because upside-down vehicles are not label-preserving.

Evaluation

The packaged metadata reports the following final calibrated model metrics:

SplitAccuracyMacro F1Weighted F1NLLBrierECE 15 bins
Validation, calibrated0.9704390.9572920.9705650.1369170.0493350.009176
Test, calibrated0.9666300.9540430.9667790.1524940.0550110.009874

Per-class validation F1 from training metadata:

ClassValidation F1
SUV0.972405
VAN0.988434
STATION_WAGON0.960352
MICRO0.887417
ACIK_TEKERLEKLI_F1_ARACLARI0.996005
SEDAN0.976542
HATCHBACK0.927184
PICK_UP0.950000

The test metrics in metadata.json and calibration.json are the source of truth for this packaged model. An additional project-level evaluation file may contain a newer or separate raw evaluation run; do not mix those values without verifying the exact checkpoint and split.

Training Details

FieldValue
Architecturetf_efficientnetv2_s
Base weightsImageNet pretrained
Fine-tuningFull fine-tuning
Classes8
Seed20260506
OptimizerAdamW
Learning rate0.0003
Weight decay0.0001
Batch size32
Configured epochs30
Best epoch13
Label smoothing0.05
Imbalance handlingClass weights
PrecisionFP32

Limitations and Biases

Performance depends on the training data distribution and may degrade on unseen regions, camera setups, image styles, vehicle modifications, unusual body kits, partial vehicles, or ambiguous classes. MICRO and HATCHBACK are relatively harder classes in the reported metrics. The training dataset provenance and license must be reviewed before public or commercial release.

Safety and Ethics

The model classifies vehicle body type only. It should not be used to infer protected attributes, identify people, or make high-stakes decisions. Downstream applications should disclose uncertainty and provide human review for ambiguous images.

License

This repository is released under the restricted research and evaluation license in LICENSE.md. It is not open source and is not approved for commercial reuse, redistribution, public hosted inference, or production deployment. This conservative license is used because the upstream training data license chain contains mixed, unknown, and web-scraped sources.

Citation

No formal paper citation is available for this project. If you use this model, please cite the project repository and this model card:

Maintainers

  • Furkan Nezih Uzmez, Kocaeli University Computer Engineering
  • Yusuf Kerem Alcicek, Kocaeli University Computer Engineering

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

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

GPU в ailist

Универсальный рантайм · timm · image-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
tf_efficientnetv2_s
Ревизия весов
9a78c52

0 моделей