How intellindust-ai-lab/edgecrafter works
EdgeCrafter is a compact vision-model repository with separate detection/instance-segmentation and pose-estimation packages. Its main workflow configures a task, builds a solver, trains or validates against COCO-style data, and produces predictions; inference and ONNX export are additional deployment paths. The graph also preserves the documented task-specific model capabilities. Training entry points and portions of the runtime are sampled; links for unsampled subsystems are limited to the workflow their module structure and README support.
Main entry points: ec_engine.py Det/seg engine · ecdetseg/train.py Det/seg entry · ecpose/train.py Pose entry · ec_solver.py Det/seg solver
Components 29
Configuration and training
- Det/seg entry
ecdetseg/train.py - Pose entry
ecpose/train.py - YAML config
ecdetseg/engine/core/yaml_config.py - Component registry
ecdetseg/engine/core/workspace.py - Det/seg solver
ecdetseg/engine/solver/ec_solver.py - Pose solver
ecpose/engine/solver/pose_solver.py
Data preparation
- Detection datasets
ecdetseg/engine/data/dataset - Pose dataset
ecpose/engine/data/dataset - Det/seg transforms
ecdetseg/engine/data/transforms - Pose transforms
ecpose/engine/data/transforms - Det/seg loader
ecdetseg/engine/data/dataloader.py - Pose loader
ecpose/engine/data/dataloader.py
Task models
- Detection model
ecdetseg/engine/edgecrafter/modeling.py - Segmentation head
ecdetseg/engine/edgecrafter/segmentation_head.py - Pose model
ecpose/engine/edgecrafter/ecpose.py
Training and evaluation
- Det/seg engine
ecdetseg/engine/solver/ec_engine.py - Pose engine
ecpose/engine/solver/pose_engine.py - COCO evaluation
ecdetseg/engine/data/dataset/coco_eval.py - Pose metrics
ecpose/engine/misc/metrics.py
Inference and deployment
- Det/seg ONNX export
ecdetseg/tools/deployment/export_onnx.py - Pose ONNX export
ecpose/tools/deployment/export_onnx.py - Torch inference
ecdetseg/tools/inference/torch_inf.py - Pose Torch inference
ecpose/tools/inference/torch_inf.py - Det/seg ONNX inference
ecdetseg/tools/inference/onnx_inf.py - Pose ONNX inference
ecpose/tools/inference/onnx_inf.py
Other components
- Researcher
- COCO data
- ONNX Runtime
- Predictions
Connections 36
- Researcher → Det/seg entry: select task
- Researcher → Pose entry: select task
- Det/seg entry → YAML config: loads config
- Pose entry → YAML config: loads config
- Det/seg entry → Det/seg solver: builds solver
- Pose entry → Pose solver: builds solver
- YAML config → Component registry: constructs components
- Det/seg solver → Det/seg engine: trains or validates
- Pose solver → Pose engine: trains or validates
- COCO data → Detection datasets: provides annotations
- COCO data → Pose dataset: provides annotations
- Detection datasets → Det/seg transforms: transforms samples
- Pose dataset → Pose transforms: transforms samples
- Det/seg transforms → Det/seg loader: batches samples
- Pose transforms → Pose loader: batches samples
- Det/seg solver → Det/seg loader: uses batches
- Pose solver → Pose loader: uses batches
- Det/seg engine → Detection model: runs model
- Det/seg engine → Segmentation head: runs segmentation
- Pose engine → Pose model: runs model
- Det/seg engine → COCO evaluation: updates evaluator
- Pose engine → Pose metrics: computes metrics
- Detection model → Predictions: produces detections
- Segmentation head → Predictions: produces masks
- Pose model → Predictions: produces keypoints
- Researcher → Torch inference: runs inference
- Researcher → Pose Torch inference: runs inference
- Torch inference → Detection model: loads model
- Pose Torch inference → Pose model: loads model
- Researcher → Det/seg ONNX export: exports model
- Researcher → Pose ONNX export: exports model
- Researcher → Det/seg ONNX inference: runs inference
- Researcher → Pose ONNX inference: runs inference
- Det/seg ONNX inference → ONNX Runtime: runs session
- Pose ONNX inference → ONNX Runtime: runs session
- ONNX Runtime → Predictions: returns predictions