Skip to page content
SAVRN
Search Plan a project

Open-weight model · Image segmentation

car-damage-photo-integrity-v9

by Sai Charan Obuladinne obuladinnesai/car-damage-photo-integrity-v9

car-damage-photo-integrity-v9 is an open-weight model for image segmentation from Sai Charan Obuladinne, released under Apache License 2.0. It has 29M parameters. At 16-bit it needs about 0.1 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index. It draws 89 downloads a month.

A PyTorch research model for detecting and localizing AI-edited regions in car-damage photos.

Parameters29M
Context—
Weights117.8 MB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads89

Runs On

What it takes to serve car-damage-photo-integrity-v9 (29M parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.

PrecisionWeightsMemory neededCheapest setupPer hourAlso fits
16-bit 0.1 GB 0.1 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
8-bit 0.0 GB 0.0 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
4-bit 0.0 GB 0.0 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00

Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Oct 18, 2026.

car-damage-photo-integrity-v9 on every accelerator the SAVRN Index prices, at every precision

Model Card

By Sai Charan Obuladinne, published under apache-2.0, revision ca741a32b868.

A PyTorch research model for detecting and localizing AI-edited regions in car-damage photos. It focuses on localized inpainting that adds, removes or exaggerates vehicle damage, and returns a tamper heatmap, an image-level suspicion score and a threshold-based flag. Use it to explore image manipulation detection, diffusion inpainting detection and vehicle-photo integrity with the supplied local inference code. It does not assess damage severity, estimate repair costs or prove fraud. Fully AI-generated scenes are a documented weak case. Author: Sai Charan Obuladinne · Framework: PyTorch · Weights: Safetensors · Declared repository license: Apache-2.0; see the upstream-data caveat below.…

Read Sai Charan Obuladinne's full model card

Car Damage Photo Integrity v9 — AI Edit Detection and Image Forgery Localization

A PyTorch research model for detecting and localizing AI-edited regions in car-damage photos. It focuses on localized inpainting that adds, removes or exaggerates vehicle damage, and returns a tamper heatmap, an image-level suspicion score and a threshold-based flag.

Use it to explore image manipulation detection, diffusion inpainting detection and vehicle-photo integrity with the supplied local inference code. It does not assess damage severity, estimate repair costs or prove fraud. Fully AI-generated scenes are a documented weak case.

Author: Sai Charan Obuladinne · Framework: PyTorch · Weights: Safetensors · Declared repository license: Apache-2.0; see the upstream-data caveat below.

Who is this model for?

  • Computer-vision developers exploring image manipulation detection with local PyTorch inference.
  • Image-forensics researchers studying image forgery localization and tamper heatmaps.
  • Generative-image researchers evaluating localized edits produced by diffusion inpainting.
  • Automotive-image developers exploring vehicle-photo integrity alongside separate car-damage detection systems.

Download the checkpoint and inference code using the quick-start below. The model returns an image-level suspicion score and a localization heatmap; it does not assess damage severity or certify authenticity.

Quick-start: local PyTorch inference

This is a custom LocNet model. It does not load through the v4/v5 transformers.pipeline("image-classification") interface.

Create a Python environment and install the inference dependencies:

python -m venv .venv
# Linux/macOS:
source .venv/bin/activate
# Windows PowerShell alternative:
# .venv\Scripts\Activate.ps1
python -m pip install torch torchvision timm safetensors pillow numpy huggingface_hub

Choose the appropriate PyTorch build for your hardware. Download the four runtime files and run an authorized non-sensitive photo:

hf download obuladinnesai/car-damage-photo-integrity-v9 model.safetensors config.json inference.py model_v9.py --revision 4b7b6ea59cc125119794b2f5a49efb966ec3e5ff --local-dir car-damage-v9
cd car-damage-v9
python inference.py /path/to/photo.jpg --device cpu --condition upload --heatmap heat.png

The pinned revision makes the example reproducible. Later releases may require a different revision and updated instructions. The download uses the public checkpoint; no HF token is required for this public release.

The upload condition resizes the image to a maximum side of 1600 pixels, then re-encodes as JPEG quality 85. It uses the corresponding published threshold. jpeg_q90 re-encodes every photo as JPEG quality 90 and is the default condition. native is available but is not recommended for benchmark comparisons because file-format differences affected the original evaluation.

Python usage

Run from the downloaded repository folder:

from inference import load_model, score_image

net, cfg, device = load_model(device="cpu")
result = score_image(net, cfg, device, "photo.jpg", condition="upload")
print({key: result[key] for key in ("score", "threshold", "flagged", "condition")})
heatmap = result["heatmap"]

Inputs and outputs

Item Meaning
Input RGB-convertible image, such as JPEG or PNG; use relevant car-damage photos for domain evaluation
score Mean of the 256 highest stride-2 map logits; higher indicates greater model suspicion of editing
threshold Condition-specific operating threshold from config.json
flagged Whether the score meets or exceeds that threshold
heatmap Floating-point map in [0, 1] at the preprocessed image dimensions
heat.png Grayscale visualization saved by the CLI when requested

The CLI prints one JSON line per image, including image, score, threshold, flagged, condition, and max_heat. Scores can be negative and are not fraud probabilities. Heatmap values are model outputs, not independently verified masks or calibrated probabilities. A photo below threshold is not certified authentic.

Runtime verification

The released weights at the pinned revision loaded and completed CPU inference on an artificial 384×256 RGB smoke-test image in Python 3.12 on Linux. The CLI returned JSON and saved a matching-size heatmap. This verifies basic execution only; the artificial image is not an accuracy test.

Tested core packages: PyTorch 2.14.1+cpu, torchvision 0.29.1+cpu, timm 1.0.30, Safetensors 0.8.0, Pillow 12.3.0, NumPy 2.5.2, huggingface_hub 2.1.1. GPU/MPS execution, large-image resource requirements and benchmark reproduction were not independently tested in this check.

Published evaluation: detection at a 2% benchmark false-positive rate

The following are author-reported results on eval_v6: 600 real CarDD validation/test photos and 1,240 positive images (1,140 localized edits plus 100 SDXL fully generated scenes). The report states that source photos are separate from training; this was not independently audited here.

Condition Positive images detected (TPR) AUROC
All images re-encoded as JPEG quality 90 85.3% 0.948
Maximum side 1600 px + JPEG quality 85 81.6% 0.933

For each condition, the threshold was set separately using the 600 real evaluation images, to flag 12 of them (2%). This is an empirical benchmark operating point, not a guarantee of a 2% false-positive rate on future photos. It is not overall accuracy. New deployment data need separate calibration and evaluation.

Read the full v7/v9 report. Download the HTML file and open it locally if the Hub does not render it.

The released v9 checkpoint and inference code are available in this repository. Any statement in an earlier report that v9 weights are unreleased is outdated.

Small edits, compression and fully generated scenes

Reported detection rates in the upload condition:

Subgroup Detection rate
Small localized edits (0.5–3% of image area) 61.3%
Medium localized edits (3–12%) 90.3%
Large localized edits (12–35%) 97.1%
Fully generated SDXL scenes (100 images) 41.0%

Results cover the reported generators and preprocessing conditions; they do not establish performance on every editor or a general-purpose authenticity task.

Architecture and scoring

  • Encoder: ConvNeXt-Tiny (timm/convnext_tiny.fb_in22k), initialized from ImageNet-22k according to the training description.
  • Noise-residual stream: fixed SRM high-pass filters plus learned filters.
  • Decoder: FPN/U-Net-style fusion, producing a one-channel edit-logit map at stride 2.
  • Image score: mean of the top 256 map logits.
  • Size: 29,427,715 parameters in the published configuration; approximately 118 MB of FP32 Safetensors weights.

The network operates in one pass on the preprocessed resolution. The upload preprocessing can resize before inference. The loader constructs the custom architecture with pretrained=False and loads the released state dictionary.

Training data and reproducibility

The author describes training with CarDD-train inpaints produced with Stable Diffusion 1.5, SDXL, Kandinsky 2.2 and LaMa, plus synthetic small paste-back edits. Real-photo sources are reported as CarDD, Open Images and 1,500 private photos that are not released. Source permissions and private-photo provenance need confirmation from the owner.

The recorded overall inpaint count is 3,298, while the current per-editor counts sum to 3,293; this discrepancy needs reconciliation. Do not treat either as an independently audited count.

The released checkpoint is described as training step 16,000 of 20,000, using pixel-level BCE and Dice loss plus an image-level loss. Training and evaluation scripts are in code/. The repository does not bundle all source data, generated images, masks or third-party model repositories.

Intended use and limitations

Suitable for research and developer experiments in image forgery localization, AI-edit detection and car-photo integrity. This model finds suspicious edited regions; it does not detect physical damage severity or estimate repair cost.

  • Human review remains necessary; outputs are not forensic proof of editing, fraud or authenticity.
  • Small edits and fully generated scenes are important failure cases.
  • Performance can change across domains, devices, compression, edit tools and newer generators.
  • The published threshold was selected on evaluation real images; validate on a separate relevant set before adopting an operating threshold.
  • No independent mask-quality benchmark, calibrated probability claim, or production deployment validation is established by the rates above.
  • Do not use the output alone for adverse decisions about people or claims.
  • Use images you are authorized to process. For private material, choose an approved local workflow rather than uploading it to a public demo.

Licensing and data permissions

The repository declares Apache-2.0. This declaration does not establish permission for every upstream dataset or private photo.

The shawnmichael/CarDD mirror lists Apache-2.0, but the original CarDD licensing form requires permission for research use, commercial use and redistribution. Consult the original terms and the owner's permission records before representing the model or its examples as commercially cleared. The implications for this release require confirmation; this card does not resolve them.

Version navigation

The v5 repository contains earlier code and reports, plus a nested copy of v9 weights. Its root weights are v5, not v9. V6–v8 weights are not released according to that card.

V9 adds localized-edit detection and heatmaps. Earlier whole-image classifiers serve a different task; this is not a universal upgrade for fully synthetic-image detection.

Feedback

Test the checkpoint locally and share reproducible feedback in Community discussions. Include the checkpoint revision, preprocessing condition, dependency versions, relevant image provenance and observed output. Do not upload sensitive personal, employer or claim material. Authorized failure cases are useful alongside successful examples.

Preprocessing check (Oct 13, 2026): one real CC BY 3.0 car-damage photo scored under JPEG q90 and upload preprocessing, both correctly not flagged. See reports/v9_preprocessing_check.html.

Preprocessing sanity check

On October 13, 2026, one authorized, unedited CC BY 3.0 car-damage image was tested under two preprocessing conditions:

Condition Score Threshold Result Max heat
JPEG Q90 -5.03 4.19 Not flagged 0.010
Upload preprocessing -3.27 4.19 Not flagged 0.053

Both conditions produced effectively blank heatmaps and completed successfully on CPU in approximately 10 seconds. This is a single-image preprocessing sanity check, not a new accuracy benchmark.

View the full preprocessing report

Identity and Version

Repository
obuladinnesai/car-damage-photo-integrity-v9
Publisher
Sai Charan Obuladinne
Task
Image segmentation
Modality
Image
Library
pytorch
Parameters
29M parameters
Languages
car-damage
Revision
ca741a32b8686cf65b9ee8421c9514ab2adcbdaf
First published
2026-10-06
Last updated
2026-10-17

Files and Weights

22 files, 118.7 MB in total. The weights are 1 file totalling 117.8 MB in safetensors.

Weights1 file · 117.8 MB
Configuration12 files · 70.6 KB
Documentation3 files · 13.9 KB
Other5 files · 896.1 KB
Repository1 file · 1.5 KB
Every file
FileTypeSizeSHA-256
model.safetensorsWeights117.8 MB ea2a1b23ac75
code/export_weights.pyConfiguration4.2 KB —
code/fulleval_v9.pyConfiguration20.9 KB —
code/gate_v9.pyConfiguration3.2 KB —
code/model_v9.pyConfiguration2.9 KB —
code/prep_v9.pyConfiguration5.3 KB —
code/probe/run_radar_probe.pyConfiguration3.9 KB —
code/probe/run_trufor_probe.pyConfiguration5.9 KB —
code/score_miss_v9.pyConfiguration3.0 KB —
code/train_v9.pyConfiguration10.3 KB —
config.jsonConfiguration3.2 KB —
inference.pyConfiguration4.9 KB —
model_v9.pyConfiguration2.9 KB —
README.mdDocumentation12.0 KB —
code/README.mdDocumentation1.1 KB —
code/probe/README.mdDocumentation817 B —
code/run_v9.shOther575 B —
reports/report_v7_vs_v9.htmlOther14.8 KB —
reports/v9_preprocessing_check.htmlOther440.2 KB —
requirements.txtOther476 B —
v9_preprocessing_check.htmlOther440.2 KB —
.gitattributesRepository1.5 KB —

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
117.8 MB
Download from Sai Charan Obuladinne

Released by Sai Charan Obuladinne through its official repository on Hugging Face. Read the license.

Built From

  • Derived from timm/convnext_tiny.fb_in22k
  • Trained on (disclosed) shawnmichael/CarDD

Memory Requirements

PrecisionWeights in memory
As published117.8 MB
16-bit0.1 GB
8-bit0.0 GB
4-bit0.0 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About car-damage-photo-integrity-v9

How much GPU memory does car-damage-photo-integrity-v9 need?

About 0.1 GB at 16-bit and 0 GB at 4-bit: the weights (29M parameters) plus a working margin. A long context needs more.

What is the cheapest GPU to run car-damage-photo-integrity-v9 on?

At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.

Can I use car-damage-photo-integrity-v9 commercially?

Yes. car-damage-photo-integrity-v9 is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

Similar Models

Model · Image segmentation

segformer_b2_clothes

Mateusz Dziemian

SegFormer model fine-tuned on ATR dataset for clothes segmentation but can also be used for human segmentation. The dataset on hugging face is called "mattmdjaga/humanparsingdataset". Labels: 0: "Background", 1: "Hat", 2: "Hair", 3: "Sunglasses", 4: "Upper-clothes", 5: "Skirt", 6: "Pants", 7: "Dress", 8: "Belt", 9: "Left-shoe", 10: "Right-shoe", 11: "Face", 12: "Left-leg", 13: "Right-leg", 14: "Left-arm", 15: "Right-arm", 16: "Bag", 17: "Scarf" The license for this model can be found here.

Open weights other 27M parameters transformers

Model · Image segmentation

rf-detr-seg-nano

Roboflow

RF-DETR is a real-time detection transformer family introduced in RF-DETR: Neural Architecture Search for Real-Time Detection Transformers by Robinson et al. and integrated in Transformers via PR #36895. RF-DETR is an end-to-end instance segmentation model that combines ideas from LW-DETR and Deformable DETR: a DINOv2-with-registers style ViT backbone (with an RF-DETR windowing pattern for efficient attention), a multi-scale projector between encoder and decoder, and a multi-scale deformable DETR decoder extended with an instance-segmentation head. You can use the raw model for instance segmentation; it predicts per-instance masks together with bounding boxes and class scores. See the model…

Open weights apache-2.0 34M parameters transformers

This repository contains the Hugging Face Transformers conversion of the official VidEoMT checkpoint yt2019vitsmall52.8.pth from tue-mps/VidEoMT. The metrics above are the numbers reported by the authors in the official model zoo. Use processor.postprocessinstancesegmentation, processor.postprocesspanopticsegmentation, or processor.postprocesssemanticsegmentation depending on the target task.

Open weights 24M parameters transformers

Model · Image segmentation

DART-Seg

Koushik45048545309

Text-prompted 3D CT segmentation. Name a structure, get its mask. 286 anatomical structures and lesions, 39M parameters, trained from scratch. ONLY PROMPT FOR THE STRUCTURES YOU NEED. Prompting for unnecessary or anatomically absent structures may cause hallucinations and false-positive segmentations. After inferece, DART-Seg may produce fragments. Use the below postprocessing to fix that. Quote prompts and paths that contain spaces, e.g. --prompts "left kidney" or --image "my scan.nii.gz". Python API (run from inside the downloaded folder so dartseg.py is importable): - Residual 3D U-Net; each prompt's text embedding attends to image features and produces its mask. All prompts share one…

Open weights cc-by-nc-sa-4.0 39M parameters pytorch

Model · Image segmentation

maskformer-swin-tiny-coco

AI at Meta

MaskFormer model trained on COCO panoptic segmentation (tiny-sized version, Swin backbone). It was introduced in the paper Per-Pixel Classification is Not All You Need for Semantic Segmentation and first released in this repository. Disclaimer: The team releasing MaskFormer did not write a model card for this model so this model card has been written by the Hugging Face team. MaskFormer addresses instance, semantic and panoptic segmentation with the same paradigm: by predicting a set of masks and corresponding labels. Hence, all 3 tasks are treated as if they were instance segmentation. You can use this particular checkpoint for semantic segmentation. See the model hub to look for other…

Open weights other 42M parameters transformers

Model · Image segmentation

RMBG-1.4

BRIA AI

RMBG v1.4 is our state-of-the-art background removal model, designed to effectively separate foreground from background in a range of categories and image types. This model has been trained on a carefully selected dataset, which includes: general stock images, e-commerce, gaming, and advertising content, making it suitable for commercial use cases powering enterprise content creation at scale. The accuracy, efficiency, and versatility currently rival leading source-available models. It is ideal where content safety, legally licensed datasets, and bias mitigation are paramount. Developed by BRIA AI, RMBG v1.4 is available as a source-available model for non-commercial use. To purchase a…

Open weights other 44M parameters transformers