/ Модель

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

Лицензия
MIT
Библиотека
pytorch
Опубликована
5 авг 2026

steel-defect-resnet18

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

Модель ResNet18 классифицирует изображения поверхности горячекатаной стали по шести типам дефектов и поддерживает визуализацию Grad-CAM.

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

Бенчмарки

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

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

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

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

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

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

vivekkopthsd/steel-defect-resnet18 — модель компьютерного зрения на базе ResNet18, дообученная для классификации поверхностных дефектов горячекатаной стали по базе NEU-DET. Она относит изображение к одному из шести классов: окалина, пятна, сетка трещин, точечная коррозия, включения или царапины. Для анализа причин классификации предусмотрены тепловые карты Grad-CAM.

Модель обучена на примерно 1 770 изображениях NEU Surface Defect Database. В README сообщается о точности 0,985 и macro F1 0,985 на отложенной выборке из 264 изображений. Эти результаты относятся к указанному экспериментальному разбиению и не гарантируют качество на других производственных линиях или условиях съёмки.

Модель предназначена для классификации изображений дефектов и учебных или исследовательских экспериментов по визуальному контролю стали. Для применения к конкретному производству требуется проверка на его изображениях, освещении и оборудовании. Лицензия — MIT; автор отдельно рекомендует не считать модель готовой системой производственной инспекции.

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

  • классификация дефектов поверхности стального проката
  • поиск царапин на горячекатаной стали
  • распознавание окалины и включений на снимках стали
  • выявление пятен, сетки трещин и точечной коррозии
  • анализ ошибочных классификаций с помощью Grad-CAM

Ограничения

Результаты приведены для отложенной выборки NEU-DET и не гарантируют качество на других производственных линиях или при иных условиях освещения; автор рекомендует валидировать модель для конкретного применения. Модель не позиционируется как готовая система производственной инспекции.

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

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

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

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

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

Открыть на Hugging Face

Steel Defect Classification — ResNet18 (NEU-DET)

Classifies hot-rolled steel surface defects into 6 classes (rolled-in scale, patches, crazing, pitted surface, inclusion, scratches) with a ResNet18 fine-tuned on the real NEU-DET database. Grad-CAM heatmaps included for explainability.

Results (held-out test, 264 images — stratified 70/15/15, seed 42)

MetricValue
Test accuracy0.985
Test ROC-AUC (one-vs-rest)0.9999
Macro F10.985
ClassPrecisionRecallF1
Rolled-in Scale1.0001.0001.000
Patches1.0000.9770.989
Crazing0.9571.0000.978
Pitted Surface1.0000.9550.977
Inclusion0.9770.9770.977
Scratches0.9781.0000.989

Training

  • Base: ResNet18 (ImageNet-pretrained), final FC replaced with 6-way head
  • Data: NEU Surface Defect Database — ~1,770 images (200×200 grayscale, ~295/class; canonical 300/class; a few upstream images absent from the mirror)
  • Augmentation (train only): horizontal/vertical flip, rotation ±10°, translate ±5%
  • Optimization: Adam (lr 1e-3, wd 1e-4), ReduceLROnPlateau, weighted cross-entropy, early stopping (patience 8) with best-epoch restore — stopped at epoch 16, best epoch 7
  • Hardware: CPU (Ryzen 9 7950X, 16 threads), ~35 min; seed 42

Usage

import json
import torch
from safetensors.torch import load_file
from torchvision import models
from torchvision.transforms import Compose, Resize, ToTensor, Normalize

cfg = json.load(open("config.json"))
model = models.resnet18(weights=None)
model.fc = torch.nn.Linear(model.fc.in_features, len(cfg["class_names"]))
model.load_state_dict(load_file("model.safetensors"))
model.eval()

tf = Compose([Resize((cfg["img_size"], cfg["img_size"])), ToTensor(),
              Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])])
img = tf(Image.open("patch.jpg").convert("RGB")).unsqueeze(0)
prob = torch.softmax(model(img), 1)[0]
label = cfg["class_names"][prob.argmax().item()]
print(f"{label}: {prob.max().item():.3f}")

Grad-CAM overlays for each class and misclassified samples: figures/gradcam_all_classes.png, figures/gradcam_misclassified.png.

Notes

  • Images are mirrored as JPEG from the canonical BMP distribution (identical content).
  • Research/educational use — not a production inspection system; validate per line/lighting.

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

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

GPU в ailist

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

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

Архитектура ? неизвестна transformers в образе рантайма.

Ревизия весов
496a640

0 моделей