#N canvas 47 378 690 473 10;
#X text 452 8 GEM object;
#X obj 9 265 cnv 15 430 145 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 40 267 Inlets:;
#X text 39 352 Outlets:;
#X obj 9 227 cnv 15 430 30 empty empty empty 20 12 0 14 -195568 -66577
0;
#X text 18 226 Arguments:;
#X obj 8 56 cnv 15 430 165 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 449 37 cnv 15 200 380 empty empty empty 20 12 0 14 -228992 -66577
0;
#X text 453 20 Example:;
#X obj 450 339 cnv 15 100 60 empty empty empty 20 12 0 14 -195568 -66577
0;
#N canvas 0 0 450 300 gemwin 0;
#X obj 132 136 gemwin;
#X obj 67 89 outlet;
#X obj 67 10 inlet;
#X msg 67 70 set destroy;
#X msg 132 112 create \, 1;
#X msg 198 112 destroy;
#X msg 156 71 set create;
#X obj 67 41 route create;
#X connect 2 0 7 0;
#X connect 3 0 1 0;
#X connect 4 0 0 0;
#X connect 5 0 0 0;
#X connect 6 0 1 0;
#X connect 7 0 3 0;
#X connect 7 0 4 0;
#X connect 7 1 6 0;
#X connect 7 1 5 0;
#X restore 455 378 pd gemwin;
#X msg 455 359 create;
#X text 451 338 Create window:;
#X obj 451 133 cnv 15 185 120 empty empty empty 20 12 0 14 -24198 -66577
0;
#X obj 451 43 gemhead;
#X text 17 366 Outlet 1: gemlist;
#X text 24 281 Inlet 1: gemlist;
#X obj 451 260 pix_texture;
#X obj 451 111 pix_film;
#X obj 515 111 t f;
#X obj 464 63 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#N canvas 0 0 450 300 open 0;
#X obj 85 49 inlet;
#X obj 85 237 outlet;
#X obj 85 145 openpanel;
#X msg 85 179 open \$1;
#X msg 259 213 auto 1;
#X obj 259 189 loadbang;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 1 0;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X restore 464 91 pd open;
#X text 505 37 open a supported;
#X text 506 48 movie-clip;
#X text 523 74 macOS: quicktime;
#X text 516 64 windos: *.AVI;
#X text 523 84 linux: depends...;
#X floatatom 463 150 3 0 100 2 threshold - -;
#X obj 463 167 / 100;
#X text 71 31 Class: pix object (analysis);
#X obj 451 282 square 4;
#X msg 463 188 treshold \$1;
#X floatatom 553 150 3 0 100 2 blobsize - -;
#X obj 553 167 / 100;
#X msg 553 188 blobSize \$1;
#X text 24 296 Inlet 1: treshold <float>: minimum luminance of a pixel
to be considered part of a blob. (default=0.04);
#X text 24 325 Inlet 1: blobSize <float>: minimum relative size of
a blob. (default=0.1);
#X text 50 12 Synopsis: [pix_multiblob];
#X text 29 57 Description: blob detector (for multiple blobs);
#X text 17 73 [pix_multiblob] is able to detect multiple blobs within
an image.;
#X text 17 103 a "blob" is a number of adjacent(!) pixels with a luminance
that is bigger than the value defined by "treshold". you can set the
minimum size of a blob that is needed to be detected.;
#X text 17 156 the output is a matrix following the conventions of
the mtx-objects from zexy/iemmatrix. each row describes one detected
blob as follows: centerX(weighted) \, centerY(weighted) \, size(weighted)
\, minX \, minY \, maxX \, maxY \, size;
#X text 64 237 int: max number N of blobs to detect;
#X text 17 381 Outlet 2: (k \, 8) matrix: describing k detected blobs
(with 0<=k<N);
#X text 20 428 for motion-tracking you will also need;
#X obj 304 425 pix_movement;
#X floatatom 563 286 5 0 0 1 x - -;
#X floatatom 564 302 5 0 0 1 y - -;
#X floatatom 564 318 5 0 0 1 size - -;
#X floatatom 565 334 5 0 0 1 minX - -;
#X floatatom 565 350 5 0 0 1 minY - -;
#X floatatom 566 366 5 0 0 1 maxX - -;
#X floatatom 566 382 5 0 0 1 maxY - -;
#X floatatom 567 398 5 0 0 1 area - -;
#N canvas 0 0 687 354 showblob 0;
#X obj 67 86 inlet blobinformation;
#X msg 67 114 \$3 \$4 \$5 \$6 \$7 \$8 \$9 \$10;
#X obj 67 138 unpack 0 0 0 0 0 0 0 0;
#X obj 67 167 outlet weightedX;
#X obj 88 187 outlet weightedY;
#X obj 109 207 outlet weightedSize;
#X obj 156 236 outlet minX;
#X obj 177 256 outlet minY;
#X obj 243 236 outlet maxX;
#X obj 260 256 outlet maxY;
#X obj 348 238 outlet size;
#X text 60 45 this extracts information of the 1st detected blob;
#N canvas 517 405 450 300 rectangle 0;
#X obj 68 75 inlet;
#X obj 215 -1 inlet;
#X obj 68 257 rectangle;
#X obj 68 234 translateXYZ;
#X obj 215 69 unpack 0 0 0 0;
#X obj 215 94 +;
#X obj 254 95 +;
#X text 248 125 0..2;
#X text 250 145 -1..+1;
#X obj 340 148 -;
#X obj 377 149 -;
#X obj 193 124 - 1;
#X obj 193 147 * 4;
#X obj 222 123 - 1;
#X obj 222 146 * 4;
#X obj 340 180 * -4;
#X obj 377 180 * -4;
#X connect 0 0 3 0;
#X connect 1 0 4 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 4 0 9 0;
#X connect 4 1 5 1;
#X connect 4 1 9 1;
#X connect 4 2 6 0;
#X connect 4 2 10 0;
#X connect 4 3 6 1;
#X connect 4 3 10 1;
#X connect 5 0 11 0;
#X connect 6 0 13 0;
#X connect 9 0 15 0;
#X connect 10 0 16 0;
#X connect 11 0 12 0;
#X connect 12 0 3 1;
#X connect 13 0 14 0;
#X connect 14 0 3 2;
#X connect 15 0 2 1;
#X connect 16 0 2 2;
#X restore 346 188 pd rectangle;
#X obj 346 117 color 1 1 1 0.5;
#X obj 346 96 gemhead 70;
#X obj 346 138 alpha;
#X msg 425 164 \$6 \$8 \$7 \$9;
#X connect 0 0 1 0;
#X connect 0 0 16 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 2 1 4 0;
#X connect 2 2 5 0;
#X connect 2 3 6 0;
#X connect 2 4 7 0;
#X connect 2 5 8 0;
#X connect 2 6 9 0;
#X connect 2 7 10 0;
#X connect 13 0 15 0;
#X connect 14 0 13 0;
#X connect 15 0 12 0;
#X connect 16 0 12 1;
#X restore 541 261 pd showblob 1;
#X msg 543 112 auto \$1;
#X obj 604 114 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
1;
#X obj 451 222 pix_multiblob 6;
#X obj 225 109 +;
#X connect 10 0 11 0;
#X connect 11 0 10 0;
#X connect 14 0 18 0;
#X connect 17 0 30 0;
#X connect 18 0 57 0;
#X connect 18 2 19 0;
#X connect 19 0 18 1;
#X connect 20 0 21 0;
#X connect 21 0 18 0;
#X connect 27 0 28 0;
#X connect 28 0 31 0;
#X connect 31 0 57 0;
#X connect 32 0 33 0;
#X connect 33 0 34 0;
#X connect 34 0 57 0;
#X connect 54 0 46 0;
#X connect 54 1 47 0;
#X connect 54 2 48 0;
#X connect 54 3 49 0;
#X connect 54 4 50 0;
#X connect 54 5 51 0;
#X connect 54 6 52 0;
#X connect 54 7 53 0;
#X connect 55 0 18 0;
#X connect 56 0 55 0;
#X connect 57 0 17 0;
#X connect 57 1 54 0;
