# zhn66776/gpr_yolo architecture

> Architecture diagram of the GitHub repository zhn66776/gpr_yolo, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/zhn66776/gpr_yolo
- Repository: https://github.com/zhn66776/gpr_yolo

## Overview

This repository is a GPR hyperbola-detection dataset and YOLOv5 experiment, rather than a self-contained application implementation. Its documented workflow is to prepare annotated GPR images, train a pretrained YOLOv5s model, evaluate it, and run inference to produce detections and visual comparisons. The tree contains dataset variants and labels, but no model code or training/inference scripts; those workflow links therefore reflect README documentation, not inspected source call wiring.

Main entry points: [`yolo_data`](https://github.com/zhn66776/gpr_yolo/tree/main/yolo_data) (Dataset variants), [`GPR-2/train/images`](https://github.com/zhn66776/gpr_yolo/tree/main/GPR-2/train/images) (Augmented scans), [`GPR-2/train/labels`](https://github.com/zhn66776/gpr_yolo/tree/main/GPR-2/train/labels) (YOLO labels), [`GPR-2/data.yaml`](https://github.com/zhn66776/gpr_yolo/blob/main/GPR-2/data.yaml) (Dataset config)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_data["GPR data"]
  node_input["GPR scans"]
  node_augmented["Augmented scans"]
  node_annotations["YOLO labels"]
  node_dataset["Dataset variants"]
  node_config["Dataset config<br/>[data.yaml]"]
end

subgraph group_model["Detection workflow"]
  node_yolov5["YOLOv5s"]
  node_training["Model training"]
end

subgraph group_results["Evaluation and output"]
  node_evaluation["Model evaluation"]
  node_weights["Trained weights"]
  node_inference["Image inference"]
  node_detections["Detection outputs"]
  node_visuals["Visual comparisons"]
end

node_analyst(("GPR analyst"))

node_input -->|"augmentations"| node_augmented
node_augmented -->|"organizes images"| node_dataset
node_annotations -->|"labels images"| node_dataset
node_config -->|"configures data"| node_training
node_dataset -->|"training data"| node_training
node_yolov5 -->|"initializes model"| node_training
node_training -->|"produces weights"| node_weights
node_weights -->|"evaluates model"| node_evaluation
node_evaluation -->|"reports metrics"| node_training
node_weights -->|"loads weights"| node_inference
node_analyst -->|"submits scans"| node_inference
node_inference -->|"saves detections"| node_detections
node_detections -->|"compared with labels"| node_visuals
node_analyst -->|"reviews"| node_visuals

click node_augmented "https://github.com/zhn66776/gpr_yolo/tree/main/GPR-2/train/images"
click node_annotations "https://github.com/zhn66776/gpr_yolo/tree/main/GPR-2/train/labels"
click node_dataset "https://github.com/zhn66776/gpr_yolo/tree/main/yolo_data"
click node_config "https://github.com/zhn66776/gpr_yolo/blob/main/GPR-2/data.yaml"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_input,node_augmented,node_annotations,node_dataset,node_config toneBlue
class node_yolov5,node_training toneAmber
class node_evaluation,node_weights,node_inference,node_detections,node_visuals toneMint
class node_analyst toneIndigo
```

## Components

### GPR data

- **GPR scans**
- [Augmented scans](https://github.com/zhn66776/gpr_yolo/tree/main/GPR-2/train/images): `GPR-2/train/images`
- [YOLO labels](https://github.com/zhn66776/gpr_yolo/tree/main/GPR-2/train/labels): `GPR-2/train/labels`
- [Dataset variants](https://github.com/zhn66776/gpr_yolo/tree/main/yolo_data): `yolo_data`
- [Dataset config](https://github.com/zhn66776/gpr_yolo/blob/main/GPR-2/data.yaml): `GPR-2/data.yaml`

### Detection workflow

- **YOLOv5s**
- **Model training**

### Evaluation and output

- **Model evaluation**
- **Trained weights**
- **Image inference**
- **Detection outputs**
- **Visual comparisons**

### Other components

- **GPR analyst**

## Connections

- GPR scans → Augmented scans: augmentations
- Augmented scans → Dataset variants: organizes images
- YOLO labels → Dataset variants: labels images
- Dataset config → Model training: configures data
- Dataset variants → Model training: training data
- YOLOv5s → Model training: initializes model
- Model training → Trained weights: produces weights
- Trained weights → Model evaluation: evaluates model
- Model evaluation → Model training: reports metrics
- Trained weights → Image inference: loads weights
- GPR analyst → Image inference: submits scans
- Image inference → Detection outputs: saves detections
- Detection outputs → Visual comparisons: compared with labels
- GPR analyst → Visual comparisons: reviews
