aboutsummaryrefslogtreecommitdiff
path: root/pix_opencv_calibration-help.pd
blob: 41eea903cb47c7e222c9887317919a33df8bcd2f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
#N canvas 84 222 1188 810 10;
#X obj 20 33 cnv 15 430 580 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 20 -13 cnv 15 430 40 empty empty empty 20 12 0 14 -195568 -66577
0;
#X text 29 -9 Arguments:;
#X obj 19 -109 cnv 15 430 90 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 24 -145 Class: pix_opencv;
#X text 39 -100 Description: pix_opencv_calibration is an object allowing
camera less calibration. you need to move a checkboard in front of
the camera during the calibration part.;
#X text 25 -161 Synopsis: [pix_opencv_calibration];
#X text 37 37 getting started with camera calibration :;
#X text 65 123 3 Check calibration toggle to start and move the chessboard
in front of the camera (or move the camera in front of your screen).
Your computer may slow down during searching chessboard corners. When
all corners are found it takes a snapshot (and the image will be negative)
;
#X text 65 103 2 Plug a supported camera and start rendering;
#X text 66 73 1 Print the chessboard ona rigid paperboard (or just
show it on the screen);
#X text 65 194 4 When enought chessboard have been found (20 by default)
it computes transformation matrix and map to undistord the image;
#X text 65 244 5 Then all incoming images are undistord \, you can
save the transformation and distorsion matrix to files to load it next
times;
#X text 31 287 for more information about this calibration see :;
#X text 41 327 - A flexible new technique for camera calibration \,
Zhang \, 1998 \, Microsoft Research;
#X text 41 307 - Learning Opencv \, Bradski and Kaehler \, 2008 \,
O'Reilly;
#X text 50 11 none;
#X obj 455 -188 cnv 15 720 800 empty empty empty 20 12 0 14 -228992
-66577 0;
#X obj 615 374 cnv 15 400 160 empty empty empty 20 12 0 14 -4034 -66577
0;
#X obj 815 -160 gemhead;
#X obj 619 569 pix_texture;
#X obj 795 538 cnv 15 220 70 empty empty empty 20 12 0 14 -195568 -66577
0;
#N canvas 3 81 454 304 gemwin 0;
#X obj 67 89 outlet;
#X obj 67 10 inlet;
#X obj 65 41 route create;
#X msg 67 70 set destroy;
#X msg 182 68 set create;
#N canvas 87 154 247 179 Gem.init 0;
#X obj 118 46 loadbang;
#X msg 118 81 reset;
#X obj 118 113 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X restore 289 80 pd Gem.init;
#X obj 162 241 gemwin;
#X msg 342 184 destroy;
#X msg 283 161 frame 25;
#X obj 164 126 t b b b;
#X msg 161 189 dimen 640 560 \, create \, 1;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 2 0 9 0;
#X connect 2 1 4 0;
#X connect 2 1 7 0;
#X connect 3 0 0 0;
#X connect 4 0 0 0;
#X connect 7 0 6 0;
#X connect 8 0 6 0;
#X connect 9 0 10 0;
#X connect 9 2 8 0;
#X connect 10 0 6 0;
#X restore 805 584 pd gemwin;
#X msg 805 564 destroy;
#X obj 485 570 pix_texture;
#X obj 619 216 separator;
#X obj 827 -133 bng 25 250 50 0 load empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 884 42 bng 15 250 50 0 empty empty end_reached 20 7 0 10 -262144
-1 -1;
#X floatatom 866 7 5 0 10000 1 frame# - -;
#X obj 827 -104 openpanel;
#X msg 827 -84 open \$1;
#X obj 815 25 pix_film;
#X msg 833 -41 auto \$1;
#X obj 833 -59 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
1;
#X text 803 544 Create window and render;
#X msg 928 -58 colorspace RGBA;
#X msg 942 -35 colorspace RGB;
#X msg 957 -13 colorspace Grey;
#X obj 928 -86 loadbang;
#X obj 619 197 pix_separator;
#X obj 485 217 separator;
#X obj 485 198 pix_separator;
#N canvas 1 184 299 199 vswitch 0;
#X obj 36 128 outlet;
#X obj 36 26 inlet;
#X obj 130 26 inlet;
#X obj 175 27 inlet;
#X obj 81 61 == 0;
#X obj 36 83 spigot 1;
#X obj 130 84 spigot 0;
#X connect 1 0 5 0;
#X connect 2 0 6 0;
#X connect 3 0 4 0;
#X connect 3 0 6 1;
#X connect 4 0 5 1;
#X connect 5 0 0 0;
#X connect 6 0 0 0;
#X restore 485 67 pd vswitch;
#X obj 581 68 tgl 15 0 empty load empty 17 7 0 10 -262144 -1 -1 0 1
;
#X obj 485 34 pix_video;
#X obj 485 -160 gemhead;
#X msg 504 -88 dimen 640 480;
#X msg 502 -113 dimen 320 240;
#X text 681 432 load distorsion coefficients and intrinsic matrix;
#X msg 531 -18 driver v4l2;
#X msg 515 -65 driver dc1394 \, dimen 640 480 \, colorspace grey;
#X msg 540 3 driver dc1394;
#X obj 619 494 pix_opencv_calibration;
#X obj 485 165 pix_grey;
#X obj 485 236 translateXYZ 0 -2 0;
#X obj 619 236 translateXYZ 0 2 0;
#X obj 485 590 rectangle 2.666 2;
#X obj 619 590 rectangle 2.666 2;
#X msg 682 451 loadDist \$1;
#X msg 698 471 loadIntra \$1;
#X msg 652 391 writeDist \$1;
#X msg 663 413 writeIntra \$1;
#X text 651 372 write distorsion coefficients and intrinsic matrix
;
#X obj 746 117 cnv 15 420 240 empty empty empty 20 12 0 14 -4034 -66577
0;
#X obj 754 128 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X msg 754 148 calibration \$1;
#X msg 754 192 view \$1;
#X text 793 170 number of view to take during calibration;
#X floatatom 754 174 5 0 0 0 - - -;
#X obj 754 233 pack f f;
#X msg 754 253 patternSize \$1 \$2;
#X floatatom 754 215 5 0 0 0 - - -;
#X floatatom 807 215 5 0 0 0 - - -;
#X text 844 211 number of inner corners on the chessboard;
#N canvas 130 67 612 325 advance-options 0;
#X msg 55 161 findChessFlag \$1 \$2 \$3;
#X obj 68 91 t b f;
#X obj 55 142 pack f f f;
#X obj 118 111 t b f;
#X obj 55 51 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
;
#X obj 68 71 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
;
#X obj 118 91 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 55 267 outlet;
#X text 53 27 findChessBoardCorner option;
#X text 75 50 CV_CALIB_CB_ADAPTIVE_TRESH : adaptive threhold (default
1);
#X text 84 70 CV_CALIB_CB_NORMALIZE_IMAGE : normalize image (default
0);
#X text 135 91 CV_CALIB_CB_FILTER_QUADS: advance filtering (default
1);
#X connect 0 0 7 0;
#X connect 1 0 2 0;
#X connect 1 1 2 1;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 3 1 2 2;
#X connect 4 0 2 0;
#X connect 5 0 1 0;
#X connect 6 0 3 0;
#X restore 753 315 pd advance-options;
#X floatatom 754 274 5 0 0 0 - - -;
#X msg 754 292 wait \$1;
#X text 792 273 number of frame to wait between two takes during calibration
;
#X text 773 128 start callibration;
#X obj 544 166 pix_rgba;
#X obj 485 140 spigot 1;
#X text 598 66 switch source (camera / film);
#X obj 530 95 tgl 15 0 empty load empty 17 7 0 10 -262144 -1 -1 0 1
;
#X text 547 93 switch color mode ( grey / rgba );
#X msg 524 -41 device 1;
#X obj 530 118 == 0;
#X obj 544 140 spigot 0;
#X msg 753 335 reset;
#X text 797 334 reset corrections;
#X obj 748 516 print;
#X text 784 516 print some infos;
#X obj 635 351 t a;
#X connect 19 0 31 0;
#X connect 20 0 57 0;
#X connect 22 0 23 0;
#X connect 23 0 22 0;
#X connect 24 0 56 0;
#X connect 25 0 55 0;
#X connect 26 0 29 0;
#X connect 27 0 28 0;
#X connect 28 0 31 1;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
#X connect 31 0 42 1;
#X connect 31 2 27 0;
#X connect 32 0 31 0;
#X connect 33 0 32 0;
#X connect 35 0 31 0;
#X connect 35 0 44 0;
#X connect 36 0 31 0;
#X connect 37 0 31 0;
#X connect 38 0 35 0;
#X connect 38 0 33 0;
#X connect 39 0 25 0;
#X connect 40 0 54 0;
#X connect 41 0 40 0;
#X connect 42 0 80 0;
#X connect 42 0 86 0;
#X connect 43 0 42 2;
#X connect 44 0 42 0;
#X connect 45 0 44 0;
#X connect 46 0 44 0;
#X connect 47 0 44 0;
#X connect 49 0 44 0;
#X connect 50 0 44 0;
#X connect 51 0 44 0;
#X connect 52 0 20 0;
#X connect 52 1 89 0;
#X connect 53 0 41 0;
#X connect 53 0 39 0;
#X connect 54 0 24 0;
#X connect 55 0 52 0;
#X connect 58 0 52 0;
#X connect 59 0 52 0;
#X connect 60 0 52 0;
#X connect 61 0 52 0;
#X connect 64 0 65 0;
#X connect 65 0 91 0;
#X connect 66 0 91 0;
#X connect 68 0 66 0;
#X connect 69 0 70 0;
#X connect 70 0 91 0;
#X connect 71 0 69 0;
#X connect 72 0 69 1;
#X connect 74 0 91 0;
#X connect 75 0 76 0;
#X connect 76 0 91 0;
#X connect 79 0 41 0;
#X connect 79 0 39 0;
#X connect 80 0 53 0;
#X connect 82 0 85 0;
#X connect 82 0 86 1;
#X connect 84 0 44 0;
#X connect 85 0 80 1;
#X connect 86 0 79 0;
#X connect 87 0 91 0;
#X connect 91 0 52 0;