aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorThéo de la Hogue2023-11-23 02:27:59 +0100
committerThéo de la Hogue2023-11-23 02:27:59 +0100
commit2f65eeb2ed01d27817c42122c5284c9d5e608753 (patch)
treeaa58c9bfe0856eb6fcc8c62a69f63de6fe30f7c4 /docs
parent74ed30fa3417c5a1bb5f147d779250e5bbdbd521 (diff)
downloadargaze-2f65eeb2ed01d27817c42122c5284c9d5e608753.zip
argaze-2f65eeb2ed01d27817c42122c5284c9d5e608753.tar.gz
argaze-2f65eeb2ed01d27817c42122c5284c9d5e608753.tar.bz2
argaze-2f65eeb2ed01d27817c42122c5284c9d5e608753.tar.xz
Refactoring aruco markers pipeline illustrations.
Diffstat (limited to 'docs')
-rw-r--r--docs/img/aoi_3d_description.pngbin16928 -> 18836 bytes
-rw-r--r--docs/img/aruco_camera_aoi_frame.pngbin49405 -> 29756 bytes
-rw-r--r--docs/img/aruco_camera_aoi_projection.pngbin37858 -> 23343 bytes
-rw-r--r--docs/img/aruco_camera_frame.pngbin31515 -> 16033 bytes
-rw-r--r--docs/img/aruco_camera_gaze_movement_identification.pngbin36834 -> 19449 bytes
-rw-r--r--docs/img/aruco_camera_markers_detection.pngbin34318 -> 18927 bytes
-rw-r--r--docs/img/aruco_camera_pose_estimation.pngbin34695 -> 19171 bytes
-rw-r--r--docs/img/aruco_markers_description.pngbin16455 -> 15645 bytes
-rw-r--r--docs/img/aruco_markers_pipeline.pngbin0 -> 86582 bytes
-rw-r--r--docs/img/gaze_analysis_pipeline.pngbin100908 -> 92777 bytes
-rw-r--r--docs/img/scene.pngbin41117 -> 25098 bytes
-rw-r--r--docs/user_guide/aruco_markers_pipeline/aoi_3d_description.md41
-rw-r--r--docs/user_guide/aruco_markers_pipeline/aoi_3d_frame.md35
-rw-r--r--docs/user_guide/aruco_markers_pipeline/aoi_3d_projection.md6
-rw-r--r--docs/user_guide/aruco_markers_pipeline/aruco_markers_description.md42
-rw-r--r--docs/user_guide/aruco_markers_pipeline/introduction.md4
-rw-r--r--docs/user_guide/aruco_markers_pipeline/pose_estimation.md10
17 files changed, 83 insertions, 55 deletions
diff --git a/docs/img/aoi_3d_description.png b/docs/img/aoi_3d_description.png
index caf7efc..74d73f9 100644
--- a/docs/img/aoi_3d_description.png
+++ b/docs/img/aoi_3d_description.png
Binary files differ
diff --git a/docs/img/aruco_camera_aoi_frame.png b/docs/img/aruco_camera_aoi_frame.png
index f21cc8d..b05a9e0 100644
--- a/docs/img/aruco_camera_aoi_frame.png
+++ b/docs/img/aruco_camera_aoi_frame.png
Binary files differ
diff --git a/docs/img/aruco_camera_aoi_projection.png b/docs/img/aruco_camera_aoi_projection.png
index df1ec4c..a0794d9 100644
--- a/docs/img/aruco_camera_aoi_projection.png
+++ b/docs/img/aruco_camera_aoi_projection.png
Binary files differ
diff --git a/docs/img/aruco_camera_frame.png b/docs/img/aruco_camera_frame.png
index 0825f18..b92ee2a 100644
--- a/docs/img/aruco_camera_frame.png
+++ b/docs/img/aruco_camera_frame.png
Binary files differ
diff --git a/docs/img/aruco_camera_gaze_movement_identification.png b/docs/img/aruco_camera_gaze_movement_identification.png
index 34cc74f..620dc21 100644
--- a/docs/img/aruco_camera_gaze_movement_identification.png
+++ b/docs/img/aruco_camera_gaze_movement_identification.png
Binary files differ
diff --git a/docs/img/aruco_camera_markers_detection.png b/docs/img/aruco_camera_markers_detection.png
index 4066662..38c22cf 100644
--- a/docs/img/aruco_camera_markers_detection.png
+++ b/docs/img/aruco_camera_markers_detection.png
Binary files differ
diff --git a/docs/img/aruco_camera_pose_estimation.png b/docs/img/aruco_camera_pose_estimation.png
index ebc1993..833fb34 100644
--- a/docs/img/aruco_camera_pose_estimation.png
+++ b/docs/img/aruco_camera_pose_estimation.png
Binary files differ
diff --git a/docs/img/aruco_markers_description.png b/docs/img/aruco_markers_description.png
index d7c139c..f6adc35 100644
--- a/docs/img/aruco_markers_description.png
+++ b/docs/img/aruco_markers_description.png
Binary files differ
diff --git a/docs/img/aruco_markers_pipeline.png b/docs/img/aruco_markers_pipeline.png
new file mode 100644
index 0000000..4872e25
--- /dev/null
+++ b/docs/img/aruco_markers_pipeline.png
Binary files differ
diff --git a/docs/img/gaze_analysis_pipeline.png b/docs/img/gaze_analysis_pipeline.png
index 42b8630..314c0cc 100644
--- a/docs/img/gaze_analysis_pipeline.png
+++ b/docs/img/gaze_analysis_pipeline.png
Binary files differ
diff --git a/docs/img/scene.png b/docs/img/scene.png
index e7edd88..097d8f6 100644
--- a/docs/img/scene.png
+++ b/docs/img/scene.png
Binary files differ
diff --git a/docs/user_guide/aruco_markers_pipeline/aoi_3d_description.md b/docs/user_guide/aruco_markers_pipeline/aoi_3d_description.md
index b02bc9e..4228ce7 100644
--- a/docs/user_guide/aruco_markers_pipeline/aoi_3d_description.md
+++ b/docs/user_guide/aruco_markers_pipeline/aoi_3d_description.md
@@ -3,7 +3,7 @@ Describe 3D AOI
Now [scene pose is estimated](aruco_markers_description.md) thanks to ArUco markers description, [areas of interest (AOI)](../../argaze.md/#argaze.AreaOfInterest.AOIFeatures.AreaOfInterest) need to be described into the same 3D referential.
-In the example scene, the screen and the sheet are considered as areas of interest.
+In the example scene, the two screens, the control panel and the window are considered as areas of interest.
![3D AOI description](../../img/aoi_3d_description.png)
@@ -21,18 +21,31 @@ All AOI need to be described from same origin than markers in a [right-handed 3D
OBJ file format could be exported from most 3D editors.
``` obj
-o Sheet
-v 14.200000 -3.000000 28.350000
-v 35.200000 -3.000000 28.350000
-v 14.200000 -3.000000 -1.35
-v 35.200000 -3.000000 -1.35
+o Left_Screen
+v 0.000000 -0.000000 -0.000000
+v 15.000000 -0.000000 -0.000000
+v 0.000000 18.963333 -6.355470
+v 15.000000 18.963333 -6.355470
f 1 2 4 3
-o Screen
-v 2.750000 2.900000 -0.500000
-v 49.250000 2.900000 -0.500000
-v 2.750000 29.100000 -0.500000
-v 49.250000 29.100000 -0.500000
+o Right_Screen
+v 20.000000 0.000000 -0.000000
+v 35.000000 0.000000 -0.000000
+v 20.000000 18.963337 -6.355472
+v 35.000000 18.963337 -6.355472
f 5 6 8 7
+o Control_Panel
+v 49.500000 30.000000 18.333333
+v 55.500000 30.000000 18.333333
+v 49.500000 38.000000 18.333333
+v 55.500000 38.000000 18.333333
+f 9 10 12 11
+o Window
+v -57.800000 5.500000 -33.500000
+v 46.000000 15.500000 -35.000000
+v 1.500000 53.000000 -1.000000
+v 50.200000 61.000000 6.000000
+v -35.850000 35.000000 -15.000000
+f 13 14 16 15 17
```
Here are common OBJ file features needed to describe AOI:
@@ -47,7 +60,9 @@ JSON file format allows to describe AOI vertices.
``` json
{
- "Sheet": [[14.2, -3, 28.35], [35.2, -3, 28.35], [14.2, -3, -1.35], [35.2, -3, -1.35]],
- "Screen": [[2.75, 2.9, -0.5], [49.25, 2.9, -0.5], [2.75, 29.1, -0.5], [49.25, 29.1, -0.5]]
+ "Left_Screen": [[0, 0, 0], [15, 0, 0], [0, 18.963333, -6.355470], [15, 18.963333, -6.355470]],
+ "Right_Screen": [[20, 0, 0], [35, 0, 0], [20, 18.963337 -6.355472], [35 18.963337 -6.355472]],
+ "Control_Panel": [[49.5, 30, 18.333333], [55.5, 30, 18.333333], [49.5, 38, 18.333333], [55.5, 38, 18.333333]],
+ "Window": [[-57.8, 5.5, -33.5], [46, 15.5, -35], [1.5, 53, -1], [50.2, 61, 6], [-35.85 35, -15]]
}
```
diff --git a/docs/user_guide/aruco_markers_pipeline/aoi_3d_frame.md b/docs/user_guide/aruco_markers_pipeline/aoi_3d_frame.md
index f1ae1f6..eb3452f 100644
--- a/docs/user_guide/aruco_markers_pipeline/aoi_3d_frame.md
+++ b/docs/user_guide/aruco_markers_pipeline/aoi_3d_frame.md
@@ -9,7 +9,7 @@ When an 3D AOI of the scene contains others coplanar 3D AOI, like a screen with
The [ArFrame](../../argaze.md/#argaze.ArFeatures.ArFrame) class defines a rectangular area where timestamped gaze positions are projected in and inside which they need to be analyzed.
-Here is the previous extract where "Screen" AOI is defined as a frame into [ArUcoScene](../../argaze.md/#argaze.ArUcoMarkers.ArUcoScene) configuration:
+Here is the previous extract where "Left_Screen" and "Right_Screen" AOI are defined as a frame into [ArUcoScene](../../argaze.md/#argaze.ArUcoMarkers.ArUcoScene) configuration:
```json
{
@@ -24,37 +24,48 @@ Here is the previous extract where "Screen" AOI is defined as a frame into [ArUc
"layers": {
"MyLayer": {
"aoi_scene": {
- "Sheet": [[14.2, -3, 28.35], [35.2, -3, 28.35], [14.2, -3, -1.35], [35.2, -3, -1.35]],
- "Screen": [[2.75, 2.9, -0.5], [49.25, 2.9, -0.5], [2.75, 29.1, -0.5], [49.25, 29.1, -0.5]]
+ "Left_Screen": [[0, 0, 0], [15, 0, 0], [0, 18.963333, -6.355470], [15, 18.963333, -6.355470]],
+ "Right_Screen": [[20, 0, 0], [35, 0, 0], [20, 18.963337 -6.355472], [35 18.963337 -6.355472]],
+ "Control_Panel": [[49.5, 30, 18.333333], [55.5, 30, 18.333333], [49.5, 38, 18.333333], [55.5, 38, 18.333333]],
+ "Window": [[-57.8, 5.5, -33.5], [46, 15.5, -35], [1.5, 53, -1], [50.2, 61, 6], [-35.85 35, -15]]
}
}
},
"frames": {
- "Screen": {
- "size": [1920, 1080],
+ "Left_Screen": {
+ "size": [768, 1024],
"layers": {
"MyLayer": {
"aoi_scene": {
- "GeoSector": [[860, 160], [1380, 100], [1660, 400], [1380, 740], [1440, 960], [920, 920], [680, 800], [640, 560]],
"LeftPanel": {
"Rectangle": {
"x": 0,
"y": 0,
- "width": 350,
- "height": 1080
+ "width": 768,
+ "height": 180
}
},
"CircularWidget": {
"Circle": {
- "cx": 1800,
- "cy": 120,
- "radius": 80
+ "cx": 384,
+ "cy": 600,
+ "radius": 180
}
}
}
}
}
- }
+ },
+ "Right_Screen": {
+ "size": [768, 1024],
+ "layers": {
+ "MyLayer": {
+ "aoi_scene": {
+ "GeoSector": [[724, 421], [537, 658], [577, 812], [230, 784], [70, 700], [44, 533], [190, 254], [537, 212]]
+ }
+ }
+ }
+ }
}
}
}
diff --git a/docs/user_guide/aruco_markers_pipeline/aoi_3d_projection.md b/docs/user_guide/aruco_markers_pipeline/aoi_3d_projection.md
index 8c7310b..370a2ed 100644
--- a/docs/user_guide/aruco_markers_pipeline/aoi_3d_projection.md
+++ b/docs/user_guide/aruco_markers_pipeline/aoi_3d_projection.md
@@ -24,8 +24,10 @@ Here is the previous extract where one layer is added to [ArUcoScene](../../arga
"layers": {
"MyLayer": {
"aoi_scene": {
- "Sheet": [[14.2, -3, 28.35], [35.2, -3, 28.35], [14.2, -3, -1.35], [35.2, -3, -1.35]],
- "Screen": [[2.75, 2.9, -0.5], [49.25, 2.9, -0.5], [2.75, 29.1, -0.5], [49.25, 29.1, -0.5]]
+ "Left_Screen": [[0, 0, 0], [15, 0, 0], [0, 18.963333, -6.355470], [15, 18.963333, -6.355470]],
+ "Right_Screen": [[20, 0, 0], [35, 0, 0], [20, 18.963337 -6.355472], [35 18.963337 -6.355472]],
+ "Control_Panel": [[49.5, 30, 18.333333], [55.5, 30, 18.333333], [49.5, 38, 18.333333], [55.5, 38, 18.333333]],
+ "Window": [[-57.8, 5.5, -33.5], [46, 15.5, -35], [1.5, 53, -1], [50.2, 61, 6], [-35.85 35, -15]]
}
}
}
diff --git a/docs/user_guide/aruco_markers_pipeline/aruco_markers_description.md b/docs/user_guide/aruco_markers_pipeline/aruco_markers_description.md
index 6380f88..ebbeec7 100644
--- a/docs/user_guide/aruco_markers_pipeline/aruco_markers_description.md
+++ b/docs/user_guide/aruco_markers_pipeline/aruco_markers_description.md
@@ -3,7 +3,7 @@ Set up ArUco markers
First of all, ArUco markers needs to be printed and placed into the scene.
-Here is an example scene where markers are surrounding a workspace with a screen and a sheet on the table (considering the sheet stays static for the moment).
+Here is an example scene where markers are surrounding a workspace with two screens, a control panel and a window.
![Scene](../../img/scene.png)
@@ -61,23 +61,23 @@ OBJ file format could be exported from most 3D editors.
``` obj
o DICT_APRILTAG_16h5#0_Marker
-v 0.000000 0.000000 0.000000
-v 5.000000 0.000000 0.000000
-v 0.000000 5.000000 0.000000
-v 5.000000 5.000000 0.000000
-f 1//1 2//1 4//1 3//1
+v 15.000000 0.378741 0.330527
+v 20.000000 0.378741 0.330527
+v 15.000000 5.120359 -1.255996
+v 20.000000 5.120359 -1.255996
+f 1 2 4 3
o DICT_APRILTAG_16h5#1_Marker
-v -0.855050 24.000002 4.349232
-v 0.855050 24.000002 -0.349231
-v -0.855050 29.000002 4.349232
-v 0.855050 29.000002 -0.349231
-f 5//2 6//2 8//2 7//2
+v 43.500000 31.428055 18.333317
+v 48.500000 31.428055 18.333317
+v 43.500000 36.428055 18.333317
+v 48.500000 36.428055 18.333317
+f 5 6 8 7
o DICT_APRILTAG_16h5#2_Marker
-v 44.000000 0.000000 9.500000
-v 49.000000 0.000000 9.500000
-v 44.000000 -0.000000 4.500000
-v 49.000000 -0.000000 4.500000
-f 9//3 10//3 12//3 11//3
+v 38.500000 2.678055 5.498381
+v 43.500000 2.678055 5.498381
+v 38.500000 5.178055 1.168253
+v 43.500000 5.178055 1.168253
+f 9 10 12 11
```
Here are common OBJ file features needed to describe ArUco markers places:
@@ -99,16 +99,16 @@ JSON file format allows to describe markers places using translation and euler a
"marker_size": 5,
"places": {
"0": {
- "translation": [2.5, 2.5, 0],
- "rotation": [0, 0, 0]
+ "translation": [17.5, 2.75, -0.5],
+ "rotation": [-18.5, 0, 0]
},
"1": {
- "translation": [0, 26.5, 2],
+ "translation": [46, 34, 18.333],
"rotation": [0, 70, 0]
},
"2": {
- "translation": [46.5, 0, 7],
- "rotation": [-90, 0, 0]
+ "translation": [41, 4, 3.333],
+ "rotation": [-60, 0, 0]
}
}
}
diff --git a/docs/user_guide/aruco_markers_pipeline/introduction.md b/docs/user_guide/aruco_markers_pipeline/introduction.md
index 37ab055..94370f4 100644
--- a/docs/user_guide/aruco_markers_pipeline/introduction.md
+++ b/docs/user_guide/aruco_markers_pipeline/introduction.md
@@ -9,9 +9,9 @@ The OpenCV library provides a module to detect fiducial markers into a picture a
The ArGaze [ArUcoMarkers submodule](../../argaze.md/#argaze.ArUcoMarkers) eases markers creation, markers detection and 3D scene pose estimation through a set of high level classes.
-<!-- First, let's look at the schema below: it gives an overview of the main notions involved in the following chapters. -->
+First, let's look at the schema below: it gives an overview of the main notions involved in the following chapters.
-<!-- ![ArUco markers pipeline](../../img/aruco_markers_pipeline.png) -->
+![ArUco markers pipeline](../../img/aruco_markers_pipeline.png)
To build your own ArUco markers pipeline, you need to know:
diff --git a/docs/user_guide/aruco_markers_pipeline/pose_estimation.md b/docs/user_guide/aruco_markers_pipeline/pose_estimation.md
index 6b58b24..853c4a8 100644
--- a/docs/user_guide/aruco_markers_pipeline/pose_estimation.md
+++ b/docs/user_guide/aruco_markers_pipeline/pose_estimation.md
@@ -23,16 +23,16 @@ Here is an extract from the JSON [ArUcoCamera](../../argaze.md/#argaze.ArUcoMark
"marker_size": 5,
"places": {
"0": {
- "translation": [2.5, 2.5, 0],
- "rotation": [0, 0, 0]
+ "translation": [17.5, 2.75, -0.5],
+ "rotation": [-18.5, 0, 0]
},
"1": {
- "translation": [0, 26.5, 2],
+ "translation": [46, 34, 18.333],
"rotation": [0, 70, 0]
},
"2": {
- "translation": [46.5, 0, 7],
- "rotation": [-90, 0, 0]
+ "translation": [41, 4, 3.333],
+ "rotation": [-60, 0, 0]
}
}
}