How tuananhsr/vra works
SemiETS is a Vietnamese scene-text spotting system, with a browser demo for image inference and a training/evaluation codebase. The user workflow is to submit an image or select a sample, run the configured spotter, and inspect polygon detections and recognized text. Its model jointly handles text localization and recognition; its training path includes semi-supervised data preparation, optimization, checkpointing, and text evaluation. The tree and excerpts support these major stages, but README content and most wiring are unavailable; uncertain links are omitted.
Main entry points: text_spotter.py Text Spotter · train_semi.py Semi Trainer · app.js Demo Client · app.py Demo Server
Components 16
Inference Demo
- Demo Client
semiets_demo/static/js/app.js - Demo Server
semiets_demo/app.py - Inference Adapter
semiets_demo/predictor.py
Data And Training
- Annotated Data
- Text Dataset Loading
semiets_vintext/adet/data/datasets/text.py - Semi-Supervised Mapping
semiets_vintext/adet/data/dataset_mapper.py - Semi Data Builder
semiets_vintext/adet/data/semi_build.py - Semi Trainer
semiets_vintext/tools/train_semi.py - Checkpoint Handling
semiets_vintext/adet/checkpoint/adet_checkpoint.py
Spotting Model
- Text Spotter
semiets_vintext/adet/modeling/text_spotter.py - Semi Spotter
semiets_vintext/adet/modeling/semi_text_spotter.py - Deformable Transformer
semiets_vintext/adet/layers/deformable_transformer.py - Spotting Losses
semiets_vintext/adet/modeling/model/losses.py
Evaluation
- Text Evaluator
semiets_vintext/adet/evaluation/text_evaluation_all.py - Evaluation Ground Truth
Other components
- Image User
Connections 18
- Image User → Demo Client: submits image
- Demo Client → Demo Server: requests prediction
- Demo Server → Inference Adapter: invokes inference
- Inference Adapter → Text Spotter: runs model
- Text Spotter → Inference Adapter: returns detections
- Demo Server → Demo Client: returns response
- Demo Client → Image User: shows results
- Annotated Data → Text Dataset Loading: provides annotations
- Text Dataset Loading → Semi Data Builder: loads records
- Semi Data Builder → Semi-Supervised Mapping: builds data pipeline
- Semi Trainer → Semi Data Builder: requests data
- Semi Trainer → Semi Spotter: trains model
- Semi Spotter → Text Spotter: uses spotting model
- Text Spotter → Deformable Transformer: computes features
- Text Spotter → Spotting Losses: computes training loss
- Semi Trainer → Checkpoint Handling: saves and loads
- Semi Trainer → Text Evaluator: runs evaluation
- Text Evaluator → Evaluation Ground Truth: reads ground truth