Dbnetpp Repvit Ch
Lightweight text detection model combining DBNet++ with RepViT backbone, optimized for efficient inference. Pretrained on Chinese text detection datasets.
Source du modèle
- Type
- Other
- Taille du fichier
- 12,1 MB
- Version
- vRevision 191d8c6
- Mis à jour
- 16 sept. 2026
- Téléchargements
- 0
- Source
- Hugging Face
Description de la source
DBNet++ RepViT (Chinese)
Lightweight text detection model combining DBNet++ with RepViT backbone, optimized for efficient inference. Pretrained on Chinese text detection datasets.
Model Details
| Component | Configuration |
|---|---|
| Architecture | DBNet++ (Differentiable Binarization) |
| Backbone | RepViT (lightweight ViT-inspired CNN) |
| Neck | RSEFPN (in: [48, 96, 192, 384], out: 96) |
| Head | DBNetPPHead (inner: 24, k: 50) |
| Parameters | ~3M |
| Input Size | 640x640 (flexible) |
Training Data
This model was converted from OpenOCR pretrained weights, trained on Chinese text detection datasets.
Recommended datasets for fine-tuning:
- MSRA-TD500 (Chinese + English)
- ICDAR2017 RCTW (Chinese)
- CTW1500
Note: For English-only text detection, fine-tuning on English datasets (ICDAR2015, Total-Text) is recommended.
Usage
With Hugging Face
from huggingface_hub import hf_hub_download
import torch
# Download model
model_path = hf_hub_download(
repo_id="thisisiron/dbnetpp_repvit_ch",
filename="dbnetpp_repvit_ch.pth"
)
# Load weights
state_dict = torch.load(model_path, map_location="cpu")
With OCR-Factory
import torch
from ocrfactory.models.detect import DBNetPP
# Build model
model = DBNetPP(
backbone={"name": "RepViT"},
neck={
"name": "RSEFPN",
"in_channels": [48, 96, 192, 384],
"out_channels": 96,
"shortcut": True
},
head={
"name": "DBNetPPHead",
"in_channels": 96,
"inner_channels": 24,
"k": 50,
"use_asf": False
}
)
# Load weights
state_dict = torch.load("dbnetpp_repvit_ch.pth", map_location="cpu")
model.load_state_dict(state_dict, strict=True)
model.eval()
# Inference
x = torch.randn(1, 3, 640, 640)
with torch.no_grad():
output = model(x)
shrink_map = output["shrink_map"] # (1, 1, 640, 640)
Training Config (YAML)
architecture:
backbone:
name: RepViT
neck:
name: RSEFPN
in_channels: [48, 96, 192, 384]
out_channels: 96
shortcut: true
head:
name: DBNetPPHead
in_channels: 96
inner_channels: 24
k: 50
use_asf: false
Performance
| Dataset | Precision | Recall | H-mean |
|---|---|---|---|
| MSRA-TD500 | - | - | - |
Performance metrics will be updated after benchmarking.
References
- OpenOCR: https://github.com/Topdu/OpenOCR
- RepViT: https://github.com/THU-MIG/RepViT
- DBNet++: Real-Time Scene Text Detection with Differentiable Binarization and Adaptive Scale Fusion
License
Apache 2.0
Sources
1 source
Sources
1 sourceVérifié 1 sept.
Artefacts du modèle
1 artefact
Artefacts du modèle
1 artefactExtraits de sources
2 extraits
Extraits de sources
2 extraits--- license: apache-2.0 language: - zh - en tags: - text-detection - ocr - dbnet - repvit - pytorch datasets: - chinese-text-detection pipeline_tag: image-segmentation --- # DBNet++ RepViT (Chinese) Lightweight text detection model combining DBNet++ with RepViT backbone, optimized for efficient inference. Pretrained on **Chinese text detection datasets**. ## Model Details | Component | Configuration | |-----------|--------------| | Architecture | DBNet++ (Differentiable Binarization) | | Backbone | RepViT (lightweight ViT-inspired CNN) | | Neck | RSEFPN (in: [48, 96, 192, 384], out: 96) | | Head | DBNetPPHead (inner: 24, k: 50) | | Parameters | ~3M | | Input Size | 640x640 (flexible) | ## Training Data This model was converted from [OpenOCR](https://github.com/Topdu/OpenOCR) pretrained weights, trained on **Chinese text detection datasets**. **Recommended datasets for fine-tuning:** - MSRA-TD500 (Chinese + English) - ICDAR2017 RCTW (Chinese) - CTW1500 **Note:** For English-only text detection, fine-tuning on English datasets (ICDAR2015, Total-Text) is recommended. ## Usage ### With Hugging Face ```python from huggingface_hub import hf_hub_download import torch # Download model model_path = hf_hub_download( repo_id="thisisiron/dbnetpp_repvit_ch", filename="dbnetpp_repvit_ch.pth" ) # Load weights state_dict = torch.load(model_path, map_location="cpu") ``` ### With OCR-Factory ```python import torch from ocrfactory.models.detect import DBNetPP # Build model model = DBNetPP( backbone={"name": "RepViT"}, neck={ "name": "RSEFPN", "in_channels": [48, 96, 192, 384], "out_channels": 96, "shortcut": True }, head={ "name": "DBNetPPHead", "in_channels": 96, "inner_channels": 24, "k": 50, "use_asf": False } ) # Load weights state_dict = torch.load("dbnetpp_repvit_ch.pth", map_location="cpu") model.load_state_dict(state_dict, strict=True) model.eval() # Inference x = torch.randn(1, 3, 640, 640) with torch.no_grad(): output = model(x) shrink_map = output["shrink_map"] # (1, 1, 640, 640) ``` ### Training Config (YAML) ```yaml architecture: backbone: name: RepViT neck: name: RSEFPN in_channels: [48, 96, 192, 384] out_channels: 96 shortcut: true head: name: DBNetPPHead in_channels: 96 inner_channels: 24 k: 50 use_asf: false ``` ## Performance | Dataset | Precision | Recall | H-mean | |---------|-----------|--------|-----...
Source context: 0 downloads · 0 likes · Pipeline image-segmentation · Repo indicnode/dbnetpp_repvit_ch
