Syclops is a tool for creating synthetic data from 3D virtual environments.
-
+
---
diff --git a/docs/docs/developement/architecture.md b/docs/docs/developement/architecture.md
index 13b591b..1f76a4b 100644
--- a/docs/docs/developement/architecture.md
+++ b/docs/docs/developement/architecture.md
@@ -3,7 +3,7 @@
The following section provides an overview of the architectural structure of Syclops, helping developers and users understand the interplay between different components.
## Repository Overview
-![An overview of how the different repositories work together to create synthetic data in Syclops](/img/docs/syclops_overview.png)
+![An overview of how the different repositories work together to create synthetic data in Syclops](../img/docs/syclops_overview.png)
| Component/Folder | Description |
|:---:|:---:|
@@ -18,7 +18,7 @@ The following section provides an overview of the architectural structure of Syc
The following is a list of relevant files:
- **syclops**
- - **cli.py**: Contains the code for the syclops [CLI interface](/usage/command_line). It also orchestrates the preprocessing, postprocessing, and starting of Blender for the synthetic data generation.
+ - **cli.py**: Contains the code for the syclops [CLI interface](../usage/command_line.md). It also orchestrates the preprocessing, postprocessing, and starting of Blender for the synthetic data generation.
- **syclops/preprocessing**
- **preprocesor.py**: Script that gets called before the scene generation. It adjusts the job description and can create additional files that are needed for the scene generation.
- **syclops/postprocessing**
diff --git a/docs/docs/index.md b/docs/docs/index.md
index 3ff6ceb..03fe90d 100644
--- a/docs/docs/index.md
+++ b/docs/docs/index.md
@@ -1,9 +1,10 @@
# Introduction
-
Syclops is a tool for creating synthetic data from 3D virtual environments.
---
# 🎯 Features
@@ -18,9 +19,10 @@
📦 Easy to use and extend with a modular architecture
# 🔍 Annotations
-
-
-
+
+ ![Syclops Output](img/renders/outputs.gif){ width="400" }
+
+
Syclops supports a variety of annotated outputs for different use cases. The following outputs are currently supported:
diff --git a/docs/docs/usage/command_line.md b/docs/docs/usage/command_line.md
index 0193e30..c8de231 100644
--- a/docs/docs/usage/command_line.md
+++ b/docs/docs/usage/command_line.md
@@ -30,4 +30,4 @@ Following is a list of the command line arguments for `syclops`:
| `-log` | Display all log messages in the console. | `False` | Boolean |
| `-tv` | Live display of the procedural textures in a job config. | `None` | String |
| `-if` | Path to the install folder. | `None` | String |
-| `-d` | Debugging mode. See [Debugging](/developement/debugging) | `False` | String [scene, blender-code, pipeline-code]
\ No newline at end of file
+| `-d` | Debugging mode. See [Debugging](../developement/debugging.md) | `False` | String [scene, blender-code, pipeline-code]
\ No newline at end of file
diff --git a/docs/docs/usage/faq.md b/docs/docs/usage/faq.md
index 1f872f0..400fd50 100644
--- a/docs/docs/usage/faq.md
+++ b/docs/docs/usage/faq.md
@@ -12,7 +12,7 @@ A: Make sure you have the correct version of Python installed (3.9 or higher) an
### Q: How do I add new assets to my project?
-A: To add new assets, create an `assets.yaml` file in your project directory that defines the asset library and its assets. Then, run `syclops -c` to crawl the assets and update the catalog. For more information, see the [Assets documentation](/usage/assets/assets).
+A: To add new assets, create an `assets.yaml` file in your project directory that defines the asset library and its assets. Then, run `syclops -c` to crawl the assets and update the catalog. For more information, see the [Assets documentation](./assets/assets.md).
### Q: I'm getting an error message saying an asset file is missing. What should I do?
@@ -22,17 +22,17 @@ A: Check that the file paths in your `assets.yaml` file are correct and that the
### Q: My job configuration isn't working as expected. How can I debug it?
-A: You can use the `-d` flag to enable debugging mode in Syclops. Use `-d scene` to open the scene in Blender for visual debugging, or `-d blender-code` and `-d pipeline-code` to debug the Blender and pipeline code, respectively. For more information, see the [Debugging documentation](/developement/debugging).
+A: You can use the `-d` flag to enable debugging mode in Syclops. Use `-d scene` to open the scene in Blender for visual debugging, or `-d blender-code` and `-d pipeline-code` to debug the Blender and pipeline code, respectively. For more information, see the [Debugging documentation](../developement/debugging.md).
### Q: How do I use dynamic evaluators in my job configuration?
-A: Dynamic evaluators allow you to randomize parameter values for each frame in your scene. To use them, replace a fixed value in your job configuration with a dynamic evaluator expression, such as `uniform: [0, 1]` for a uniform random value between 0 and 1. For more examples, see the [Dynamic Evaluators documentation](/usage/job_description/dynamic_evaluators).
+A: Dynamic evaluators allow you to randomize parameter values for each frame in your scene. To use them, replace a fixed value in your job configuration with a dynamic evaluator expression, such as `uniform: [0, 1]` for a uniform random value between 0 and 1. For more examples, see the [Dynamic Evaluators documentation](./job_description/dynamic_evaluators.md).
## Rendering
### Q: My renders are taking a long time. How can I speed them up?
-A: To speed up rendering, you can try reducing the number of samples per pixel in your sensor configuration, or using a lower resolution for your output images. You can also make sure you're using GPU rendering if you have a compatible graphics card. For more tips, see the [Sensor Configuration documentation](/usage/job_description/sensor_configuration).
+A: To speed up rendering, you can try reducing the number of samples per pixel in your sensor configuration, or using a lower resolution for your output images. You can also make sure you're using GPU rendering if you have a compatible graphics card. For more tips, see the [Sensor Configuration documentation](./job_description/config_descriptions/camera.md).
### Q: I'm getting artifacts or noise in my rendered images. What can I do?
diff --git a/docs/docs/usage/job_description/config_descriptions/object_position.md b/docs/docs/usage/job_description/config_descriptions/object_position.md
index 60464bf..306d2c0 100644
--- a/docs/docs/usage/job_description/config_descriptions/object_position.md
+++ b/docs/docs/usage/job_description/config_descriptions/object_position.md
@@ -35,7 +35,7 @@ syclops_output_object_positions:
debug_breakpoint: true
```
-In the example configuration, the global positions of objects within the scene will be captured with the identifier `obj_pos_1`. Additionally, if the [scene debugging](/developement/debugging/#visually-debug-a-job-file) is active, the scene will break and open in Blender before rendering.
+In the example configuration, the global positions of objects within the scene will be captured with the identifier `obj_pos_1`. Additionally, if the [scene debugging](../../../developement/debugging.md#visually-debug-a-job-file) is active, the scene will break and open in Blender before rendering.
## Metadata Output
diff --git a/docs/docs/usage/job_description/config_descriptions/pixel_annotation.md b/docs/docs/usage/job_description/config_descriptions/pixel_annotation.md
index 20ffacb..3b7d449 100644
--- a/docs/docs/usage/job_description/config_descriptions/pixel_annotation.md
+++ b/docs/docs/usage/job_description/config_descriptions/pixel_annotation.md
@@ -5,7 +5,7 @@ The Pixel Annotation Output is dedicated to providing various pixel-level annota
## Inter Class Segmentation
In Syclops it is possible to have multiple class labels for a single object. This means, that a plant can have the segmentation labels `stem` and `leaf` at the same time.
-![Inter Class Segmentation](/img/docs/inter_class_seg.png)
+![Inter Class Segmentation](../../../img/docs/inter_class_seg.png)
It has to be configured in the scene description for the object that should have multiple labels. The following example shows how to configure it:
@@ -61,7 +61,7 @@ syclops_output_pixel_annotation:
- debug_breakpoint: true
```
-In the provided configuration, a variety of pixel annotations are set up, each with their unique identifiers. Additionally, if the [scene debugging](/developement/debugging/#visually-debug-a-job-file) is active, the scene will break and open in Blender before rendering.
+In the provided configuration, a variety of pixel annotations are set up, each with their unique identifiers. Additionally, if the [scene debugging](../../../developement/debugging.md#visually-debug-a-job-file) is active, the scene will break and open in Blender before rendering.
## Metadata Output
diff --git a/docs/docs/usage/job_description/config_descriptions/rgb.md b/docs/docs/usage/job_description/config_descriptions/rgb.md
index 37174a7..0c3e42e 100644
--- a/docs/docs/usage/job_description/config_descriptions/rgb.md
+++ b/docs/docs/usage/job_description/config_descriptions/rgb.md
@@ -30,7 +30,7 @@ syclops_output_rgb:
debug_breakpoint: true
```
-In this configuration, the RGB output with the identifier "MainView" will have a quality of 200 samples per pixel. Additionally, if the [scene debugging](/developement/debugging/#visually-debug-a-job-file) is active, the scene will break and open in Blender before rendering.
+In this configuration, the RGB output with the identifier "MainView" will have a quality of 200 samples per pixel. Additionally, if the [scene debugging](../../../developement/debugging.md#visually-debug-a-job-file) is active, the scene will break and open in Blender before rendering.
## Metadata Output
diff --git a/docs/docs/usage/job_description/config_descriptions/structured_light.md b/docs/docs/usage/job_description/config_descriptions/structured_light.md
index b324972..4b3f1ef 100644
--- a/docs/docs/usage/job_description/config_descriptions/structured_light.md
+++ b/docs/docs/usage/job_description/config_descriptions/structured_light.md
@@ -2,7 +2,7 @@
The Structured Light Output generates structured light patterns projected onto the scene, which can be used for 3D reconstruction and depth estimation.
-![Dot projected image with stereo reconstruction on the right](/img/docs/dot_projection.png)
+![Dot projected image with stereo reconstruction on the right](../../../img/docs/dot_projection.png)
## Configuration Parameters
@@ -15,7 +15,7 @@ The following table describes each configuration parameter for the Structured Li
| `intensity` | float | The intensity of the projected light pattern. | **Required** |
| `scale` | float | The scale of the light pattern, controlling the density of the dots. | **Required** |
| `samples` | integer | The number of samples per pixel for rendering the structured light image. Higher values result in better quality but slower rendering. | **Required** |
-| `debug_breakpoint` | boolean | If set to `true` and the [scene debugging](/developement/debugging/#visually-debug-a-job-file) is active, the rendering process will pause and open Blender before proceeding. | Optional |
+| `debug_breakpoint` | boolean | If set to `true` and the [scene debugging](../../../developement/debugging.md#visually-debug-a-job-file) is active, the rendering process will pause and open Blender before proceeding. | Optional |
## Example Configuration
diff --git a/docs/docs/usage/job_description/validation.md b/docs/docs/usage/job_description/validation.md
index 7f3bdaa..0a9eaaa 100644
--- a/docs/docs/usage/job_description/validation.md
+++ b/docs/docs/usage/job_description/validation.md
@@ -5,7 +5,10 @@ Syclops generates a YAML schema that defines the job configuration rules. This s
During asset crawling, Syclops looks for all schema files of the plugins and creates a single ```schema.yaml``` in the install folder.
In order to use the linting features for the job descriptions, the IDE has to be pointed towards the schema file.
-
+
+ ![Linting](../../img/docs/linting.gif){ width="500" }
+ Linting of job description
+
=== "VSCode"
For Visual Studio Code, the [YAML extension](https://marketplace.visualstudio.com/items?itemName=redhat.vscode-yaml) needs to be installed.
diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml
index a38d608..e0cf465 100644
--- a/docs/mkdocs.yml
+++ b/docs/mkdocs.yml
@@ -1,4 +1,8 @@
site_name: Syclops Documentation
+site_description: Documentation for the Syclops synthetic data generation tool
+site_author: Anton Elmiger
+site_url: https://dfki-ni.github.io/syclops/
+
theme:
name: material
features: