Skip to content

Commit 0a375e5

Browse files
Rampex1Zhouvaughantnrc
authored
DEV: Accuracy and Repeatability Testers (#79)
* DEV: Accuracy and Repeatability Testers, Data Collection --------- Co-authored-by: Zhou <[email protected]> Co-authored-by: Thomas Vaughan <[email protected]>
1 parent fd0ba9d commit 0a375e5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+45813
-105
lines changed

data/slicer_test_config_1.json

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
{
2+
"startup_mode": "detecting_and_solving",
3+
"detectors": [
4+
{
5+
"label": "d101",
6+
"ip_address": "192.168.0.101",
7+
"port": 8001,
8+
"camera_parameters": [
9+
{
10+
"key": "FramesPerSecond",
11+
"value": 30.0
12+
},
13+
{
14+
"key": "Gain",
15+
"value": 16.0
16+
},
17+
{
18+
"key": "AutoExposureGain",
19+
"value": false
20+
},
21+
{
22+
"key": "Exposure (us)",
23+
"value": 2000
24+
},
25+
{
26+
"key": "Brightness",
27+
"value": 0.1
28+
},
29+
{
30+
"key": "Contrast",
31+
"value": 1.0
32+
},
33+
{
34+
"key": "Sharpness",
35+
"value": 1.0
36+
}
37+
],
38+
"marker_parameters": [
39+
{
40+
"key": "cornerRefinementMethod",
41+
"value": "SUBPIX"
42+
}
43+
],
44+
"fixed_transform_to_reference":
45+
{
46+
"values": [
47+
-0.17424811713221883,
48+
-0.5384339232294528,
49+
0.8244552771324932,
50+
647.8448669433594,
51+
0.9793105594802856,
52+
-0.007264050200192773,
53+
0.20223269188016801,
54+
319.42423782348635,
55+
-0.10290005717338768,
56+
0.8426364244977953,
57+
0.528559773671138,
58+
374.32372589111327,
59+
0.0,
60+
0.0,
61+
0.0,
62+
1.0
63+
]
64+
}
65+
},
66+
{
67+
"label": "d102",
68+
"ip_address": "192.168.0.102",
69+
"port": 8001,
70+
"camera_parameters": [
71+
{
72+
"key": "FramesPerSecond",
73+
"value": 30.0
74+
},
75+
{
76+
"key": "Gain",
77+
"value": 16.0
78+
},
79+
{
80+
"key": "AutoExposureGain",
81+
"value": false
82+
},
83+
{
84+
"key": "Exposure (us)",
85+
"value": 2000
86+
},
87+
{
88+
"key": "Brightness",
89+
"value": 0.1
90+
},
91+
{
92+
"key": "Contrast",
93+
"value": 1.0
94+
},
95+
{
96+
"key": "Sharpness",
97+
"value": 1.0
98+
}
99+
],
100+
"marker_parameters": [
101+
{
102+
"key": "cornerRefinementMethod",
103+
"value": "SUBPIX"
104+
}
105+
],
106+
"fixed_transform_to_reference": {
107+
"values": [
108+
0.1808964725570389,
109+
-0.520314593131516,
110+
0.8345952254780791,
111+
635.3875076293946,
112+
0.9716493259091376,
113+
-0.03680026542350834,
114+
-0.23354513038185565,
115+
-145.30454483032227,
116+
0.1522302653112682,
117+
0.8531813785117115,
118+
0.49890628547264915,
119+
346.73107986450196,
120+
0.0,
121+
0.0,
122+
0.0,
123+
1.0
124+
]
125+
}
126+
}
127+
]
128+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
Here is an organisation of where all the collected data is stored:
2+
3+
board_builder/data_recording.json:
4+
This is where all the data_recording is collected. It is refreshed for each new run i.e. when a new BoardBuilder() is created.
5+
self._write_detector_data_to_recording_file in BoardBuilder does that, but it is commented out for now as it slows down the GUI writing to the file each frame
6+
7+
board_builder/test/accuracy/accuracy_test_results:
8+
Stores information related to the accuracy tester such as RMS, parameters, projected frames, etc.
9+
10+
board_builder/test/repeatability/collected_data:
11+
Data about the predicted board collected during in-lab experiment that will be used for repeatability testing
12+
13+
board_builder/test/repeatability/repeatability_test_results:
14+
Stores information related to the repeatability tester such as mean, standard deviation, mean/reference corners, etc.

src/board_builder/__init__.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1 @@
11
from .board_builder import BoardBuilder
2-
from .structures.pose_location import PoseLocation
3-
from .utils.board_builder_pose_solver import BoardBuilderPoseSolver

0 commit comments

Comments
 (0)