# hussainmir05/3d-camera-depth-accuracy-evaluation architecture

> Architecture diagram of the GitHub repository hussainmir05/3d-camera-depth-accuracy-evaluation, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/hussainmir05/3d-camera-depth-accuracy-evaluation
- Repository: https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation

## Overview

This repository evaluates 3D camera depth accuracy from RGB images and point clouds. The documented workflow manually defines stair ROIs on RGB images, crops corresponding point-cloud regions, fits planes, and compares plane spacing with ground truth. A parallel analysis computes point-to-plane residual metrics to characterize surface noise. The README documents the stages and reported metrics; source excerpts were unavailable, so the graph reflects documented relationships only.

Main entry points: [`camera_test.py`](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py) (SVD Plane Fits)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_segmentation["ROI Segmentation"]
  node_roi["Manual Stair ROIs<br/>[camera_test.py]"]
  node_crop["ROI Point Crops<br/>[camera_test.py]"]
end

subgraph group_geometry["Plane Geometry"]
  node_fit["SVD Plane Fits<br/>[camera_test.py]"]
  node_spacing["Plane Spacing<br/>[camera_test.py]"]
  node_residuals["Point-Plane Residuals<br/>[camera_test.py]"]
end

subgraph group_evaluation["Accuracy Evaluation"]
  node_accuracy["Spacing Error<br/>[camera_test.py]"]
  node_noise["Surface Noise Metrics<br/>[camera_test.py]"]
  node_results["Evaluation Results<br/>[camera_test.py]"]
end

node_operator(("Operator"))
node_rgb["RGB Images"]
node_cloud["Point Clouds"]
node_truth["Ground Truth"]

node_operator -->|"defines regions"| node_roi
node_rgb -->|"guides segmentation"| node_roi
node_cloud -->|"provides points"| node_crop
node_roi -->|"selects regions"| node_crop
node_crop -->|"fits planes"| node_fit
node_fit -->|"measures spacing"| node_spacing
node_fit -->|"computes residuals"| node_residuals
node_spacing -->|"compares distances"| node_accuracy
node_truth -->|"provides reference"| node_accuracy
node_residuals -->|"summarizes error"| node_noise
node_accuracy -->|"reports RMSE"| node_results
node_noise -->|"reports MAE and STD"| node_results

click node_roi "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"
click node_crop "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"
click node_fit "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"
click node_spacing "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"
click node_residuals "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"
click node_accuracy "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"
click node_noise "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"
click node_results "https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py"

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_roi,node_crop toneBlue
class node_fit,node_spacing,node_residuals toneAmber
class node_accuracy,node_noise,node_results toneMint
class node_operator,node_rgb,node_cloud,node_truth toneIndigo
```

## Components

### ROI Segmentation

- [Manual Stair ROIs](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`
- [ROI Point Crops](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`

### Plane Geometry

- [SVD Plane Fits](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`
- [Plane Spacing](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`
- [Point-Plane Residuals](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`

### Accuracy Evaluation

- [Spacing Error](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`
- [Surface Noise Metrics](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`
- [Evaluation Results](https://github.com/hussainmir05/3d-camera-depth-accuracy-evaluation/blob/main/camera_test.py): `camera_test.py`

### Other components

- **Operator**
- **RGB Images**
- **Point Clouds**
- **Ground Truth**

## Connections

- Operator → Manual Stair ROIs: defines regions
- RGB Images → Manual Stair ROIs: guides segmentation
- Point Clouds → ROI Point Crops: provides points
- Manual Stair ROIs → ROI Point Crops: selects regions
- ROI Point Crops → SVD Plane Fits: fits planes
- SVD Plane Fits → Plane Spacing: measures spacing
- SVD Plane Fits → Point-Plane Residuals: computes residuals
- Plane Spacing → Spacing Error: compares distances
- Ground Truth → Spacing Error: provides reference
- Point-Plane Residuals → Surface Noise Metrics: summarizes error
- Spacing Error → Evaluation Results: reports RMSE
- Surface Noise Metrics → Evaluation Results: reports MAE and STD
