Skip to content
imaged

Image classification

ResNet-50

The well-understood ImageNet baseline, 102 MB on disk.

BSD-3-Clause
Explore model

About this model

ResNet-50 is the long-standing ImageNet reference backbone. The build uses torchvision IMAGENET1K_V2, the tuned recipe that adds about 4 points of top-1 accuracy over V1. Around 25.5M parameters, fp32 ONNX is 102 MB.

On M1 Max, CoreML hits 17 ms warm, about 6.6 times faster than CPU. Cold CoreML pays for first-call MLProgram compile.

What you can build

  • Use as a known baseline when comparing newer architectures.
  • Tag photos with high-confidence ImageNet labels on Apple Silicon.
  • Run a stable, well-studied classifier in a research pipeline.
  • Feed predictions into a label-smoothing or distillation workflow.

Variants & downloads

Choose the build for your app

Model files are being prepared.

Explore the model’s examples, source links, and integration notes while download variants are added.

Performance

Results depend on the device, runtime, and test conditions. Each measurement keeps its own context.

M1 Max, macOS 15, ONNX Runtime 1.17

See original catalog hardware notes · CPU

111.6 ms

Warm inference

Catalog reference · variant unspecifiedCold start (ms): 120.28

Reference result from the existing catalog; conversion variant and measurement date were not recorded.

M1 Max, macOS 15, ONNX Runtime 1.17

See original catalog hardware notes · CoreML

17.0 ms

Warm inference

Catalog reference · variant unspecifiedCold start (ms): 385.13

Reference result from the existing catalog; conversion variant and measurement date were not recorded.

RTX 2060, Ubuntu 24.04, ONNX Runtime 1.24.3

See original catalog hardware notes · CUDA

8.5 ms

Warm inference

Catalog reference · variant unspecified

Reference result from the existing catalog; conversion variant and measurement date were not recorded.

Integration examples

Vision SDK integration

cpp

#include "imaged/sdk.hpp"
#include "imaged/families/classifier/classifier_family.hpp"

imaged::SDK::AI ai;
auto& config = ai.getOptions();
config.set("classifier.model", "weights/resnet50.onnx");
config.set("classifier.labels", "weights/labels.txt");
config.set("classifier.topK", 5);

imaged::SDK::ClassifierFamily family;
family.load(config);

imaged::SDK::Image image;
image.load("photo.jpg");

auto result = family.run(&image);
auto& classes = std::get<imaged::SDK::ClassificationResult>(result).classes;