#N canvas 35 25 662 452 10; #X text 452 8 GEM object; #X obj 9 265 cnv 15 430 135 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 40 267 Inlets:; #X text 39 362 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 77 cnv 15 200 320 empty empty empty 20 12 0 14 -228992 -66577 0; #X text 453 60 Example:; #X obj 544 330 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 549 369 pd gemwin; #X msg 549 350 create; #X text 545 329 Create window:; #X obj 451 173 cnv 15 185 120 empty empty empty 20 12 0 14 -24198 -66577 0; #X obj 451 83 gemhead; #X text 17 376 Outlet 1: gemlist; #X text 24 281 Inlet 1: gemlist; #X obj 451 300 pix_texture; #X obj 451 151 pix_film; #X obj 515 151 t f; #X obj 464 103 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 131 pd open; #X text 505 77 open a supported; #X text 506 88 movie-clip; #X text 523 114 macOS: quicktime; #X text 516 104 windos: *.AVI; #X text 523 124 linux: depends...; #X floatatom 463 190 3 0 100 2 threshold - -; #X obj 463 207 / 100; #X text 50 12 Synopsis: [pix_blobtracker]; #X text 71 31 Class: pix object (analysis); #X text 29 57 Description: blob detector and tracker; #X obj 451 262 pix_blobtracker; #X obj 451 322 square 4; #X msg 463 228 treshold \$1; #X floatatom 553 190 3 0 100 2 blobsize - -; #X obj 553 207 / 100; #X msg 553 228 blobSize \$1; #N canvas 0 0 450 300 showblobs 0; #X obj 67 113 route 1 2 3 4 5 6; #N canvas 0 0 451 339 showblob 0; #X obj 76 184 gemhead; #X obj 76 266 translateXYZ; #X obj 102 58 pack; #X obj 102 34 inlet x|y; #X obj 76 225 color 1 1 1; #X obj 219 75 loadbang; #X obj 219 122 random 256; #X obj 219 143 / 256; #X obj 219 185 hsv2rgb; #X msg 219 166 \$1 1 1; #X obj 219 97 t b b; #X obj 76 286 sphere 0.2; #X msg 249 233 0; #X msg 216 233 0.2; #X obj 216 254 f; #X obj 298 47 t b; #X obj 298 24 inlet reset; #X obj 139 183 t f b; #X obj 102 85 unpack; #X obj 102 108 * 8; #X obj 102 131 - 4; #X obj 145 106 * 8; #X obj 145 129 - 4; #X connect 0 0 4 0; #X connect 1 0 11 0; #X connect 2 0 18 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 10 0; #X connect 6 0 7 0; #X connect 7 0 9 0; #X connect 8 0 4 1; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 10 1 12 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 11 1; #X connect 15 0 12 0; #X connect 16 0 15 0; #X connect 17 0 1 2; #X connect 17 1 13 0; #X connect 18 0 19 0; #X connect 18 1 21 0; #X connect 19 0 20 0; #X connect 20 0 1 1; #X connect 21 0 22 0; #X connect 22 0 17 0; #X restore 67 136 pd showblob; #N canvas 0 0 451 339 showblob 0; #X obj 76 184 gemhead; #X obj 76 266 translateXYZ; #X obj 102 58 pack; #X obj 102 34 inlet x|y; #X obj 76 225 color 1 1 1; #X obj 219 75 loadbang; #X obj 219 122 random 256; #X obj 219 143 / 256; #X obj 219 185 hsv2rgb; #X msg 219 166 \$1 1 1; #X obj 219 97 t b b; #X obj 76 286 sphere 0.2; #X msg 249 233 0; #X msg 216 233 0.2; #X obj 216 254 f; #X obj 298 47 t b; #X obj 298 24 inlet reset; #X obj 139 183 t f b; #X obj 102 85 unpack; #X obj 102 108 * 8; #X obj 102 131 - 4; #X obj 145 106 * 8; #X obj 145 129 - 4; #X connect 0 0 4 0; #X connect 1 0 11 0; #X connect 2 0 18 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 10 0; #X connect 6 0 7 0; #X connect 7 0 9 0; #X connect 8 0 4 1; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 10 1 12 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 11 1; #X connect 15 0 12 0; #X connect 16 0 15 0; #X connect 17 0 1 2; #X connect 17 1 13 0; #X connect 18 0 19 0; #X connect 18 1 21 0; #X connect 19 0 20 0; #X connect 20 0 1 1; #X connect 21 0 22 0; #X connect 22 0 17 0; #X restore 86 155 pd showblob; #N canvas 0 0 451 339 showblob 0; #X obj 76 184 gemhead; #X obj 76 266 translateXYZ; #X obj 102 58 pack; #X obj 102 34 inlet x|y; #X obj 76 225 color 1 1 1; #X obj 219 75 loadbang; #X obj 219 122 random 256; #X obj 219 143 / 256; #X obj 219 185 hsv2rgb; #X msg 219 166 \$1 1 1; #X obj 219 97 t b b; #X obj 76 286 sphere 0.2; #X msg 249 233 0; #X msg 216 233 0.2; #X obj 216 254 f; #X obj 298 47 t b; #X obj 298 24 inlet reset; #X obj 139 183 t f b; #X obj 102 92 unpack; #X obj 102 115 * 8; #X obj 102 138 - 4; #X obj 145 113 * 8; #X obj 145 136 - 4; #X connect 0 0 4 0; #X connect 1 0 11 0; #X connect 2 0 18 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 10 0; #X connect 6 0 7 0; #X connect 7 0 9 0; #X connect 8 0 4 1; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 10 1 12 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 11 1; #X connect 15 0 12 0; #X connect 16 0 15 0; #X connect 17 0 1 2; #X connect 17 1 13 0; #X connect 18 0 19 0; #X connect 18 1 21 0; #X connect 19 0 20 0; #X connect 20 0 1 1; #X connect 21 0 22 0; #X connect 22 0 17 0; #X restore 105 174 pd showblob; #N canvas 0 0 451 339 showblob 0; #X obj 76 184 gemhead; #X obj 76 266 translateXYZ; #X obj 102 58 pack; #X obj 102 34 inlet x|y; #X obj 76 225 color 1 1 1; #X obj 219 75 loadbang; #X obj 219 122 random 256; #X obj 219 143 / 256; #X obj 219 185 hsv2rgb; #X msg 219 166 \$1 1 1; #X obj 219 97 t b b; #X obj 76 286 sphere 0.2; #X msg 249 233 0; #X msg 216 233 0.2; #X obj 216 254 f; #X obj 298 47 t b; #X obj 298 24 inlet reset; #X obj 139 183 t f b; #X obj 102 85 unpack; #X obj 102 108 * 8; #X obj 102 131 - 4; #X obj 145 106 * 8; #X obj 145 129 - 4; #X connect 0 0 4 0; #X connect 1 0 11 0; #X connect 2 0 18 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 10 0; #X connect 6 0 7 0; #X connect 7 0 9 0; #X connect 8 0 4 1; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 10 1 12 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 11 1; #X connect 15 0 12 0; #X connect 16 0 15 0; #X connect 17 0 1 2; #X connect 17 1 13 0; #X connect 18 0 19 0; #X connect 18 1 21 0; #X connect 19 0 20 0; #X connect 20 0 1 1; #X connect 21 0 22 0; #X connect 22 0 17 0; #X restore 124 193 pd showblob; #N canvas 0 0 451 339 showblob 0; #X obj 76 184 gemhead; #X obj 76 266 translateXYZ; #X obj 102 60 pack; #X obj 102 34 inlet x|y; #X obj 76 225 color 1 1 1; #X obj 219 75 loadbang; #X obj 219 122 random 256; #X obj 219 143 / 256; #X obj 219 185 hsv2rgb; #X msg 219 166 \$1 1 1; #X obj 219 97 t b b; #X obj 76 286 sphere 0.2; #X msg 249 233 0; #X msg 216 233 0.2; #X obj 216 254 f; #X obj 298 47 t b; #X obj 298 24 inlet reset; #X obj 139 183 t f b; #X obj 102 85 unpack; #X obj 102 108 * 8; #X obj 102 131 - 4; #X obj 145 106 * 8; #X obj 145 129 - 4; #X connect 0 0 4 0; #X connect 1 0 11 0; #X connect 2 0 18 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 10 0; #X connect 6 0 7 0; #X connect 7 0 9 0; #X connect 8 0 4 1; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 10 1 12 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 11 1; #X connect 15 0 12 0; #X connect 16 0 15 0; #X connect 17 0 1 2; #X connect 17 1 13 0; #X connect 18 0 19 0; #X connect 18 1 21 0; #X connect 19 0 20 0; #X connect 20 0 1 1; #X connect 21 0 22 0; #X connect 22 0 17 0; #X restore 143 212 pd showblob; #N canvas 0 0 451 339 showblob 0; #X obj 76 184 gemhead; #X obj 76 266 translateXYZ; #X obj 102 58 pack; #X obj 102 34 inlet x|y; #X obj 76 225 color 1 1 1; #X obj 219 75 loadbang; #X obj 219 122 random 256; #X obj 219 143 / 256; #X obj 219 185 hsv2rgb; #X msg 219 166 \$1 1 1; #X obj 219 97 t b b; #X obj 76 286 sphere 0.2; #X msg 249 233 0; #X msg 216 233 0.2; #X obj 216 254 f; #X obj 298 47 t b; #X obj 298 24 inlet reset; #X obj 139 183 t f b; #X obj 102 85 unpack; #X obj 102 108 * 8; #X obj 102 131 - 4; #X obj 145 106 * 8; #X obj 145 129 - 4; #X connect 0 0 4 0; #X connect 1 0 11 0; #X connect 2 0 18 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 10 0; #X connect 6 0 7 0; #X connect 7 0 9 0; #X connect 8 0 4 1; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 10 1 12 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 11 1; #X connect 15 0 12 0; #X connect 16 0 15 0; #X connect 17 0 1 2; #X connect 17 1 13 0; #X connect 18 0 19 0; #X connect 18 1 21 0; #X connect 19 0 20 0; #X connect 20 0 1 1; #X connect 21 0 22 0; #X connect 22 0 17 0; #X restore 162 231 pd showblob; #X obj 67 86 inlet blobinformation; #X connect 0 0 1 0; #X connect 0 1 2 0; #X connect 0 2 3 0; #X connect 0 3 4 0; #X connect 0 4 5 0; #X connect 0 5 6 0; #X connect 7 0 0 0; #X restore 541 301 pd showblobs; #X text 17 78 [pix_blobtracker] is able to detect multiple blobs within an image and tries to keep track of which blob is which to keep indices consistant while the blobs are moving.; #X text 16 127 [pix_blobtracker] is an abstraction based on [pix_multiblob] for blob-detection and some mtx-objects from "iemmatrix" (which you need to have installed on your system!) to do the actual tracking. ; #X text 64 237 int: max number of blobs to detect; #X text 21 187 like [pix_multiblob] this object only takes the luminance into account for blob-tracking; #X text 20 408 see also:; #X obj 104 405 pix_multiblob; #X text 24 296 Inlet 1: treshold : minimum luminance of a pixel to be considered part of a blob. (default=0.04); #X text 24 325 Inlet 1: blobSize : minimum relative size of a blob. (default=0.1); #X connect 10 0 11 0; #X connect 11 0 10 0; #X connect 14 0 18 0; #X connect 17 0 33 0; #X connect 18 0 32 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 34 0; #X connect 32 0 17 0; #X connect 32 1 38 0; #X connect 34 0 32 0; #X connect 35 0 36 0; #X connect 36 0 37 0; #X connect 37 0 32 0;