#N canvas 343 247 1154 642 10; #X obj 897 4 gemhead; #X obj 372 500 pix_texture; #X obj 372 528 square 2; #X obj 18 26 cnv 15 220 70 empty empty empty 20 12 0 14 -195568 -66577 0; #N canvas 0 22 454 304 gemwin 0; #X obj 67 89 outlet; #X obj 67 10 inlet; #X obj 67 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 160 260 gemwin; #X msg 159 207 create \, 1; #X msg 235 208 destroy; #X msg 281 180 frame 25; #X obj 162 170 t b b b; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 2 0 10 0; #X connect 2 1 4 0; #X connect 2 1 8 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 6 0; #X connect 10 0 7 0; #X connect 10 2 9 0; #X restore 24 69 pd gemwin; #X msg 24 48 create; #X text 25 30 Create window and render; #X obj 363 232 cnv 15 700 250 empty empty empty 20 12 0 14 -24198 -66577 0; #X obj 553 -63 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 610 112 bng 15 250 50 0 empty empty end_reached 20 7 0 10 -262144 -1 -1; #X floatatom 592 77 5 0 10000 1 frame# - -; #X obj 553 -34 openpanel; #X msg 553 -14 open \$1; #X obj 552 94 pix_film; #X msg 559 29 auto \$1; #X obj 559 11 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 ; #X floatatom 506 439 30 0 0 0 - - -; #X text 511 422 distance; #X obj 730 457 route 1; #X obj 782 457 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 783 437 hsl 128 15 0 0.2 0 0 cdist empty empty -2 -8 0 10 -262144 -1 -1 0 1; #X text 805 455 criteria value; #X floatatom 701 439 10 0 0 0 - - -; #X msg 478 319 criteria \$1; #X obj 562 320 r cdist; #X text 615 314 criteria value under which the contour is recongnized ; #X msg 463 255 minsize \$1; #X floatatom 537 256 5 0 0 0 - - -; #X text 578 256 minimum size of selected contours ( default : 10x10 ); #X msg 480 290 clear; #X text 588 290 recalculates the pattern contour; #X obj 529 291 r reset; #X text 600 -61 playing a video file; #X text 618 -48 ( try estrella.mov ); #X msg 831 -72 bang; #X text 877 -79 loading a pattern image; #X text 876 -66 ( try estrella.jpg ); #X text 830 -97 Compare to a pattern; #X obj 831 4 pix_image; #X obj 833 -45 openpanel; #X obj 831 154 separator; #X msg 832 -18 open \$1; #X floatatom 984 121 5 0 0 0 - - -; #X obj 1052 94 loadbang; #X msg 1021 94 160; #X obj 953 93 r tresh; #X floatatom 507 187 5 0 0 0 - - -; #X obj 575 185 loadbang; #X msg 547 185 160; #X obj 508 205 s tresh; #X obj 962 153 pix_texture; #X obj 830 120 pix_opencv_threshold; #X obj 374 206 pix_opencv_threshold; #X obj 962 181 square 2; #X obj 830 66 translateXYZ -2 0 0; #X obj 831 34 pix_resize 320 240; #X obj 831 181 translateXYZ 4 0 0; #X obj 373 158 pix_resize 320 240; #X obj 374 356 pix_opencv_pgh_compare; #X text 17 -80 pix_opencv_pgh_compare :: compare contours calculating their PGH histograms.; #X text 17 -53 Written by Yves Degoyon ( ydegoyon@gmail.com ) using example code from OpenCV book; #X obj 683 458 < 0.05; #X text 612 326 ( adjust to your situation : default : 0.05 ); #X obj 616 0 loadbang; #X msg 616 25 colorspace RGBA; #X msg 720 25 colorspace RGB; #N canvas 0 22 450 300 vswitch 0; #X obj 144 263 outlet; #X obj 36 26 inlet; #X obj 260 29 inlet; #X obj 36 133 spigot; #X obj 260 141 spigot; #X obj 119 64 loadbang; #X msg 83 93 0; #X msg 113 93 1; #X msg 296 104 0; #X msg 326 104 1; #X obj 399 34 inlet; #X obj 399 67 select 0; #X connect 1 0 3 0; #X connect 2 0 4 0; #X connect 3 0 0 0; #X connect 4 0 0 0; #X connect 5 0 7 0; #X connect 5 0 8 0; #X connect 6 0 3 1; #X connect 7 0 3 1; #X connect 8 0 4 1; #X connect 9 0 4 1; #X connect 10 0 11 0; #X connect 11 0 7 0; #X connect 11 0 8 0; #X connect 11 1 9 0; #X connect 11 1 6 0; #X restore 374 136 pd vswitch; #X obj 443 135 tgl 15 0 empty load empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 373 83 pix_video; #X obj 373 -54 gemhead; #X msg 411 25 device 0; #X msg 420 56 driver 1; #X msg 397 -29 dialog; #X msg 402 1 device /dev/dv1394-0; #X obj 544 379 unpack f f f f f; #X text 658 379 position of detected contours; #X floatatom 567 401 5 0 0 0 - - -; #X floatatom 605 402 5 0 0 0 - - -; #X floatatom 645 401 5 0 0 0 - - -; #X floatatom 688 402 5 0 0 0 - - -; #X text 574 414 X; #X text 613 413 Y; #X text 645 413 width; #X text 686 414 height; #X obj 374 182 pix_rgba; #X obj 831 90 pix_rgba; #X obj 372 109 translateXYZ 2 0 0; #X connect 0 0 38 0; #X connect 1 0 2 0; #X connect 4 0 5 0; #X connect 5 0 4 0; #X connect 8 0 11 0; #X connect 9 0 10 0; #X connect 10 0 13 1; #X connect 11 0 12 0; #X connect 12 0 13 0; #X connect 13 0 66 1; #X connect 13 2 9 0; #X connect 14 0 13 0; #X connect 15 0 14 0; #X connect 16 0 61 0; #X connect 18 0 19 0; #X connect 20 0 22 0; #X connect 20 0 61 1; #X connect 23 0 58 0; #X connect 24 0 23 0; #X connect 26 0 58 0; #X connect 27 0 26 0; #X connect 29 0 58 0; #X connect 31 0 29 0; #X connect 34 0 39 0; #X connect 38 0 55 0; #X connect 39 0 41 0; #X connect 40 0 56 0; #X connect 41 0 38 0; #X connect 42 0 51 2; #X connect 43 0 44 0; #X connect 44 0 42 0; #X connect 45 0 42 0; #X connect 46 0 49 0; #X connect 46 0 52 2; #X connect 47 0 48 0; #X connect 48 0 46 0; #X connect 50 0 53 0; #X connect 51 0 40 0; #X connect 51 0 50 0; #X connect 51 0 58 1; #X connect 52 0 58 0; #X connect 54 0 85 0; #X connect 55 0 54 0; #X connect 56 0 13 0; #X connect 57 0 84 0; #X connect 58 0 1 0; #X connect 58 1 16 0; #X connect 58 2 74 0; #X connect 61 0 18 0; #X connect 63 0 64 0; #X connect 64 0 13 0; #X connect 65 0 13 0; #X connect 66 0 57 0; #X connect 67 0 66 2; #X connect 68 0 86 0; #X connect 69 0 68 0; #X connect 70 0 68 0; #X connect 71 0 68 0; #X connect 72 0 68 0; #X connect 73 0 68 0; #X connect 74 1 76 0; #X connect 74 2 77 0; #X connect 74 3 78 0; #X connect 74 4 79 0; #X connect 84 0 52 0; #X connect 85 0 51 0; #X connect 86 0 66 0;