aboutsummaryrefslogtreecommitdiff
path: root/pix_opencv_contours_boundingrect-help.pd
diff options
context:
space:
mode:
Diffstat (limited to 'pix_opencv_contours_boundingrect-help.pd')
-rw-r--r--pix_opencv_contours_boundingrect-help.pd371
1 files changed, 174 insertions, 197 deletions
diff --git a/pix_opencv_contours_boundingrect-help.pd b/pix_opencv_contours_boundingrect-help.pd
index bbc7a5f..035f46a 100644
--- a/pix_opencv_contours_boundingrect-help.pd
+++ b/pix_opencv_contours_boundingrect-help.pd
@@ -1,59 +1,70 @@
-#N canvas 1444 52 1427 767 10;
-#X obj 580 466 cnv 15 550 250 empty empty empty 20 12 0 14 -24198 -66577
+#N canvas 182 109 1202 794 10;
+#X obj 2 42 cnv 15 430 560 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X floatatom 717 652 5 0 0 0 - - -;
-#X floatatom 803 666 5 0 0 0 - - -;
-#X floatatom 725 815 5 0 0 0 - - -;
-#X floatatom 760 815 5 0 0 0 - - -;
-#X floatatom 797 815 5 0 0 0 - - -;
-#X floatatom 831 815 5 0 0 0 - - -;
-#X obj 722 786 unpack 0 0 0 0 0;
-#X obj 730 736 route 0 1 2 3 4;
-#X text 790 754 For each contour detected;
-#X text 29 172 It is useful as a motion tracker if you have well isolated
+#X obj 2 -4 cnv 15 430 40 empty empty empty 20 12 0 14 -195568 -66577
+0;
+#X text 11 0 Arguments:;
+#X obj 2 -99 cnv 15 430 90 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X text 7 -137 Class: pix_opencv;
+#X text 32 17 none;
+#X obj 437 -158 cnv 15 710 760 empty empty empty 20 12 0 14 -228992
+-66577 0;
+#X obj 589 283 cnv 15 550 250 empty empty empty 20 12 0 14 -24198 -66577
+0;
+#X floatatom 693 467 5 0 0 0 - - -;
+#X floatatom 788 481 5 0 0 0 - - -;
+#X floatatom 693 581 5 0 0 0 - - -;
+#X floatatom 728 581 5 0 0 0 - - -;
+#X floatatom 765 581 5 0 0 0 - - -;
+#X floatatom 799 581 5 0 0 0 - - -;
+#X obj 693 558 unpack 0 0 0 0 0;
+#X obj 693 536 route 0 1 2 3 4;
+#X text 794 539 For each contour detected;
+#X text 16 50 It is useful as a motion tracker if you have well isolated
silouets of the objects you want to track.;
-#X msg 621 480 mode \$1;
-#X obj 682 481 hradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144
+#X msg 618 293 mode \$1;
+#X obj 679 294 hradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144
-1 -1 0;
-#X text 751 482 retrieval mode ( see cvFindContours );
-#X obj 717 506 hradio 15 1 0 5 empty empty empty 0 -8 0 10 -262144
+#X text 748 295 retrieval mode ( see cvFindContours );
+#X obj 714 319 hradio 15 1 0 5 empty empty empty 0 -8 0 10 -262144
-1 -1 0;
-#X text 799 506 retrieval method ( see cvFindContours );
-#X msg 650 505 method \$1;
-#X msg 673 528 maxmove \$1;
-#X floatatom 747 529 5 0 0 0 - - -;
-#X floatatom 771 553 5 0 0 0 - - -;
-#X msg 683 550 ftolerance \$1;
-#X text 808 551 frame tolerance for identification ( default 5 );
-#X text 30 138 pix_opencv_contours_boundingrect :: Calculates up-right
+#X text 796 319 retrieval method ( see cvFindContours );
+#X msg 647 318 method \$1;
+#X msg 670 341 maxmove \$1;
+#X floatatom 744 342 5 0 0 0 - - -;
+#X floatatom 768 366 5 0 0 0 - - -;
+#X msg 680 363 ftolerance \$1;
+#X text 805 364 frame tolerance for identification ( default 5 );
+#X text 9 -93 pix_opencv_contours_boundingrect :: Calculates up-right
bounding rectangle of all contours of a binary image.;
-#X text 29 211 This object considers a contour to be analyzed any group
+#X text 16 89 This object considers a contour to be analyzed any group
of white pixels in a black background \, for this reason you will find
useful to use pdp_bgsubstract or pdp_threshold to obtain a correct
input for pix_opencv_contours_boundingrect.;
-#X text 29 265 pix_opencv_contours_boundingrect works detecting any
+#X text 16 143 pix_opencv_contours_boundingrect works detecting any
white areas in the input image \, it's important to set max/min values
of the areas you want to detect to filter non interesting noise or
areas \, also sometimes you will need to use pix_opencv_morphology
to transform the contours of the shapes to be analyzed..;
-#X floatatom 833 719 5 0 0 0 - - -;
-#X text 871 720 number of contours;
-#X msg 698 575 nightmode \$1;
-#X obj 788 576 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+#X floatatom 788 518 5 0 0 0 - - -;
+#X text 826 519 number of contours;
+#X msg 695 388 nightmode \$1;
+#X obj 785 389 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
-#X obj 777 597 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+#X obj 774 410 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
-#X obj 790 619 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+#X obj 787 432 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
-#X msg 717 596 draw \$1;
-#X text 804 595 draw bounding rectangle ( default : on );
-#X msg 732 617 show \$1;
-#X text 817 616 draw the detected contours ( default : off );
-#X text 811 576 hide original image ( default : off );
-#X obj 715 44 gemhead;
-#X obj 596 842 pix_texture;
-#X obj 33 40 cnv 15 220 70 empty empty empty 20 12 0 14 -195568 -66577
-0;
+#X msg 714 409 draw \$1;
+#X text 801 408 draw bounding rectangle ( default : on );
+#X msg 729 430 show \$1;
+#X text 814 429 draw the detected contours ( default : off );
+#X text 808 389 hide original image ( default : off );
+#X obj 614 -145 gemhead;
+#X obj 599 541 pix_texture;
+#X obj 919 -153 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;
@@ -84,31 +95,31 @@ to transform the contours of the shapes to be analyzed..;
#X connect 9 0 6 0;
#X connect 10 0 7 0;
#X connect 10 2 9 0;
-#X restore 43 84 pd gemwin;
-#X msg 43 66 create;
-#X obj 444 838 pix_texture;
-#X obj 596 371 separator;
-#X obj 727 71 bng 25 250 50 0 load empty empty 0 -6 0 8 -262144 -1
+#X restore 929 -109 pd gemwin;
+#X msg 929 -127 create;
+#X obj 447 541 pix_texture;
+#X obj 599 184 separator;
+#X obj 626 -118 bng 25 250 50 0 load empty empty 0 -6 0 8 -262144 -1
-1;
-#X obj 784 246 bng 15 250 50 0 empty empty end_reached 20 7 0 10 -262144
+#X obj 683 57 bng 15 250 50 0 empty empty end_reached 20 7 0 10 -262144
-1 -1;
-#X floatatom 766 211 5 0 10000 1 frame# - -;
-#X obj 727 100 openpanel;
-#X msg 727 120 open \$1;
-#X obj 715 229 pix_film;
-#X msg 733 163 auto \$1;
-#X obj 733 145 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
+#X floatatom 665 22 5 0 10000 1 frame# - -;
+#X obj 626 -89 openpanel;
+#X msg 626 -69 open \$1;
+#X obj 614 40 pix_film;
+#X msg 632 -26 auto \$1;
+#X obj 632 -44 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
1;
-#X text 41 46 Create window and render;
-#X msg 828 146 colorspace RGBA;
-#X msg 933 146 colorspace RGB;
-#X msg 1037 146 colorspace Grey;
-#X obj 828 118 loadbang;
-#X obj 595 342 pix_separator;
-#X obj 444 374 separator;
-#X obj 444 345 pix_separator;
-#X obj 444 409 translateXYZ -2 0 0;
-#X obj 596 406 translateXYZ 2 0 0;
+#X text 927 -147 Create window and render;
+#X msg 727 -43 colorspace RGBA;
+#X msg 733 -24 colorspace RGB;
+#X msg 750 -1 colorspace Grey;
+#X obj 727 -71 loadbang;
+#X obj 599 155 pix_separator;
+#X obj 447 187 separator;
+#X obj 447 158 pix_separator;
+#X obj 447 222 translateXYZ -2 0 0;
+#X obj 599 219 translateXYZ 2 0 0;
#N canvas 0 22 450 300 vswitch 0;
#X obj 144 263 outlet;
#X obj 36 26 inlet;
@@ -137,139 +148,105 @@ to transform the contours of the shapes to be analyzed..;
#X connect 11 0 8 0;
#X connect 11 1 9 0;
#X connect 11 1 6 0;
-#X restore 536 267 pd vswitch;
-#X obj 604 267 tgl 15 0 empty load empty 17 7 0 10 -262144 -1 -1 0
-1;
-#X obj 478 39 gemhead;
-#X msg 517 152 device 0;
-#X msg 526 183 driver 1;
-#X msg 503 98 dialog;
-#X msg 508 128 device /dev/dv1394-0;
-#X text 875 815 ( First contour ) Xorigin Yorigin Width Height;
-#X text 752 648 min area in pixels (default 10x10);
-#X text 840 664 max area in pixels (default 320x240);
-#X obj 536 296 pix_resize 320 240;
-#X text 790 528 maximum move of a countour ( default 20 );
-#X floatatom 762 432 5 0 0 0 - - -;
-#X obj 596 439 pix_opencv_bgsubstract;
-#X floatatom 802 872 5 0 0 0 - - -;
-#X obj 1159 591 loadbang;
-#X obj 802 848 *;
-#X obj 802 891 s area;
-#X msg 766 399 set;
-#X text 800 401 reset background reference;
-#X obj 969 943 timeroll;
-#X obj 908 913 autoscale;
-#X msg 963 891 0;
-#X obj 602 685 pix_opencv_contours_boundingrect;
-#X obj 478 227 pix_video;
-#X obj 1243 910 autoscale;
-#X msg 1298 888 0;
-#X obj 1242 943 timeroll;
-#X obj 1202 863 mean_n 25;
-#X text 923 338 TODO ::: in some cases i want to reuse losts tags inmediately
+#X restore 447 96 pd vswitch;
+#X obj 515 96 tgl 15 0 empty load empty 17 7 0 10 -262144 -1 -1 0 1
+;
+#X obj 447 -150 gemhead;
+#X msg 486 -37 device 0;
+#X msg 495 -6 driver 1;
+#X msg 472 -91 dialog;
+#X msg 477 -61 device /dev/dv1394-0;
+#X text 843 581 ( First contour ) Xorigin Yorigin Width Height;
+#X text 728 463 min area in pixels (default 10x10);
+#X text 825 479 max area in pixels (default 320x240);
+#X obj 447 116 pix_resize 320 240;
+#X text 787 341 maximum move of a countour ( default 20 );
+#X floatatom 765 245 5 0 0 0 - - -;
+#X obj 599 252 pix_opencv_bgsubstract;
+#X obj 527 394 loadbang;
+#X msg 769 212 set;
+#X text 803 214 reset background reference;
+#X obj 599 498 pix_opencv_contours_boundingrect;
+#X obj 447 38 pix_video;
+#X text 16 268 TODO ::: in some cases i want to reuse losts tags inmediately
\, a message to do it is needed;
-#X msg 927 890 240;
-#X msg 1262 887 240;
-#X text 924 297 KNOWN BUGS :: in some input data all the blobs are
-tagged with 0 label (if maxmove is very high????) ... if i put maxmove
-to zero blobs are tagged in a crazy way....;
-#X obj 749 988 -;
-#X msg 723 958 240;
-#X obj 723 934 t b;
-#X msg 1162 624 50;
-#X obj 834 431 loadbang;
-#X msg 799 433 50;
-#X obj 531 320 pix_rgba;
-#X obj 443 919 square 2;
-#X obj 595 914 square 2;
-#X obj 1199 819 loadbang;
-#X connect 1 0 84 1;
-#X connect 2 0 84 2;
-#X connect 4 0 94 1;
-#X connect 4 0 96 0;
-#X connect 5 0 77 0;
-#X connect 6 0 77 1;
-#X connect 7 0 3 0;
-#X connect 7 1 4 0;
-#X connect 7 2 5 0;
-#X connect 7 3 6 0;
-#X connect 8 0 7 0;
-#X connect 11 0 84 0;
-#X connect 12 0 11 0;
-#X connect 14 0 16 0;
-#X connect 16 0 84 0;
-#X connect 17 0 84 0;
-#X connect 18 0 17 0;
-#X connect 19 0 20 0;
-#X connect 20 0 84 0;
-#X connect 27 0 84 0;
-#X connect 28 0 27 0;
-#X connect 29 0 31 0;
-#X connect 30 0 33 0;
-#X connect 31 0 84 0;
-#X connect 33 0 84 0;
-#X connect 36 0 48 0;
-#X connect 37 0 102 0;
-#X connect 39 0 40 0;
-#X connect 40 0 39 0;
-#X connect 41 0 101 0;
-#X connect 42 0 60 0;
-#X connect 43 0 46 0;
-#X connect 44 0 45 0;
-#X connect 45 0 48 1;
+#X text 17 227 KNOWN BUGS :: in some input data all the blobs are tagged
+with 0 label (if maxmove is very high????) ... if i put maxmove to
+zero blobs are tagged in a crazy way....;
+#X msg 527 414 50;
+#X obj 837 244 loadbang;
+#X msg 802 246 50;
+#X obj 447 135 pix_rgba;
+#X obj 447 561 square 2;
+#X obj 599 561 square 2;
+#X text 16 308 See also pix_opencv_contour_convexhull that output also
+a contour rotation;
+#X text 8 -153 Synopsis: [pix_opencv_contours_boundingrect];
+#X connect 8 0 85 1;
+#X connect 9 0 85 2;
+#X connect 14 0 10 0;
+#X connect 14 1 11 0;
+#X connect 14 2 12 0;
+#X connect 14 3 13 0;
+#X connect 15 0 14 0;
+#X connect 18 0 85 0;
+#X connect 19 0 18 0;
+#X connect 21 0 23 0;
+#X connect 23 0 85 0;
+#X connect 24 0 85 0;
+#X connect 25 0 24 0;
+#X connect 26 0 27 0;
+#X connect 27 0 85 0;
+#X connect 34 0 85 0;
+#X connect 35 0 34 0;
+#X connect 36 0 38 0;
+#X connect 37 0 40 0;
+#X connect 38 0 85 0;
+#X connect 40 0 85 0;
+#X connect 43 0 55 0;
+#X connect 44 0 94 0;
#X connect 46 0 47 0;
-#X connect 47 0 48 0;
-#X connect 48 0 61 1;
-#X connect 48 2 44 0;
-#X connect 49 0 48 0;
-#X connect 50 0 49 0;
-#X connect 52 0 48 0;
-#X connect 52 0 85 0;
-#X connect 53 0 48 0;
-#X connect 54 0 48 0;
-#X connect 55 0 52 0;
-#X connect 55 0 50 0;
-#X connect 56 0 42 0;
-#X connect 57 0 59 0;
-#X connect 58 0 57 0;
-#X connect 59 0 41 0;
-#X connect 60 0 74 0;
-#X connect 61 0 71 0;
-#X connect 62 0 61 2;
-#X connect 63 0 85 0;
-#X connect 64 0 85 0;
-#X connect 65 0 85 0;
-#X connect 66 0 85 0;
-#X connect 67 0 85 0;
-#X connect 71 0 100 0;
-#X connect 73 0 74 1;
-#X connect 74 0 84 0;
-#X connect 75 0 78 0;
-#X connect 76 0 97 0;
-#X connect 77 0 75 0;
-#X connect 79 0 74 0;
-#X connect 82 0 81 0;
-#X connect 83 0 82 0;
-#X connect 84 0 37 0;
-#X connect 84 1 8 0;
-#X connect 84 2 25 0;
-#X connect 85 0 61 0;
-#X connect 86 0 88 0;
-#X connect 87 0 86 0;
-#X connect 89 0 86 0;
-#X connect 91 0 82 0;
-#X connect 92 0 86 0;
-#X connect 94 0 82 0;
-#X connect 94 0 89 0;
-#X connect 95 0 94 0;
-#X connect 96 0 95 0;
-#X connect 97 0 1 0;
-#X connect 98 0 99 0;
-#X connect 99 0 73 0;
-#X connect 100 0 58 0;
-#X connect 100 0 56 0;
-#X connect 103 0 91 0;
-#X connect 103 0 83 0;
-#X connect 103 0 92 0;
-#X connect 103 0 87 0;
+#X connect 47 0 46 0;
+#X connect 48 0 93 0;
+#X connect 49 0 67 0;
+#X connect 50 0 53 0;
+#X connect 51 0 52 0;
+#X connect 52 0 55 1;
+#X connect 53 0 54 0;
+#X connect 54 0 55 0;
+#X connect 55 0 68 1;
+#X connect 55 2 51 0;
+#X connect 56 0 55 0;
+#X connect 57 0 56 0;
+#X connect 59 0 55 0;
+#X connect 59 0 86 0;
+#X connect 60 0 55 0;
+#X connect 61 0 55 0;
+#X connect 62 0 59 0;
+#X connect 62 0 57 0;
+#X connect 63 0 49 0;
+#X connect 64 0 66 0;
+#X connect 65 0 64 0;
+#X connect 66 0 48 0;
+#X connect 67 0 81 0;
+#X connect 68 0 78 0;
+#X connect 69 0 68 2;
+#X connect 70 0 86 0;
+#X connect 71 0 86 0;
+#X connect 72 0 86 0;
+#X connect 73 0 86 0;
+#X connect 74 0 86 0;
+#X connect 78 0 92 0;
+#X connect 80 0 81 1;
+#X connect 81 0 85 0;
+#X connect 82 0 89 0;
+#X connect 83 0 81 0;
+#X connect 85 0 44 0;
+#X connect 85 1 15 0;
+#X connect 85 2 32 0;
+#X connect 86 0 68 0;
+#X connect 89 0 8 0;
+#X connect 90 0 91 0;
+#X connect 91 0 80 0;
+#X connect 92 0 65 0;
+#X connect 92 0 63 0;