{ "patcher" : { "fileversion" : 1, "rect" : [ 172.0, 44.0, 1029.0, 753.0 ], "bgcolor" : [ 0.941176, 0.921569, 0.870588, 1.0 ], "bglocked" : 0, "defrect" : [ 172.0, 44.0, 1029.0, 753.0 ], "openrect" : [ 0.0, 0.0, 0.0, 0.0 ], "openinpresentation" : 0, "default_fontsize" : 12.0, "default_fontface" : 0, "default_fontname" : "Arial", "gridonopen" : 0, "gridsize" : [ 15.0, 15.0 ], "gridsnaponopen" : 0, "toolbarvisible" : 1, "boxanimatetime" : 200, "imprint" : 0, "enablehscroll" : 1, "enablevscroll" : 1, "devicewidth" : 0.0, "boxes" : [ { "box" : { "maxclass" : "comment", "varname" : "comments[1]", "text" : "Warning: cv.jit.faces uses technology that may be covered by US patents 20060280370 and 20080187213. You should investigate licensing before using this object in commercial applications.", "linecount" : 5, "numoutlets" : 0, "patching_rect" : [ 50.0, 340.0, 239.0, 70.0 ], "id" : "obj-3", "fontname" : "Arial", "fontsize" : 11.0, "presentation_rect" : [ 50.0, 342.0, 0.0, 0.0 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 1.0, 1.0, 1.0, 0.396078 ], "patching_rect" : [ 45.0, 334.0, 250.0, 81.0 ], "border" : 1, "id" : "obj-1", "bordercolor" : [ 1.0, 0.0, 0.0, 0.647059 ], "rounded" : 0, "presentation_rect" : [ 45.0, 334.0, 0.0, 0.0 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "number", "triscale" : 0.9, "numoutlets" : 2, "maximum" : 4, "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ], "patching_rect" : [ 491.0, 323.0, 35.0, 18.0 ], "id" : "obj-82", "outlettype" : [ "int", "bang" ], "fontname" : "Arial", "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], "fontsize" : 10.0, "numinlets" : 1, "minimum" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "route nfaces", "numoutlets" : 2, "patching_rect" : [ 421.0, 322.0, 66.0, 18.0 ], "id" : "obj-81", "outlettype" : [ "", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "text" : "Query the \"nfaces\" attribute to know the number of detected faces. Useful for detecting when no face has been found.", "linecount" : 3, "numoutlets" : 0, "patching_rect" : [ 690.0, 330.0, 196.0, 41.0 ], "id" : "obj-71", "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "message", "text" : "getnfaces", "numoutlets" : 1, "patching_rect" : [ 623.0, 330.0, 58.0, 16.0 ], "id" : "obj-72", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "read haarFaceCascade1.xml", "numoutlets" : 1, "patching_rect" : [ 623.0, 307.0, 150.0, 16.0 ], "id" : "obj-73", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "number", "triscale" : 0.9, "numoutlets" : 2, "maximum" : 4, "bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ], "patching_rect" : [ 623.0, 242.0, 35.0, 18.0 ], "id" : "obj-74", "outlettype" : [ "int", "bang" ], "fontname" : "Arial", "htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ], "fontsize" : 10.0, "numinlets" : 1, "minimum" : 1 } } , { "box" : { "maxclass" : "comment", "text" : "You can change the model used to perform face recognition with the \"model\" attribute. There are four such models provided with cv.jit. Furthermore you can manually select the files used with the \"read\" message. Other useable files are provided with the OpenCV distribution along with tools for computing them. With the proper files, cv.jit.faces can recognize shapes other than front-view faces.", "linecount" : 6, "numoutlets" : 0, "patching_rect" : [ 685.0, 230.0, 317.0, 75.0 ], "id" : "obj-75", "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "message", "text" : "read", "numoutlets" : 1, "patching_rect" : [ 623.0, 283.0, 29.0, 16.0 ], "id" : "obj-76", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "model $1", "numoutlets" : 1, "patching_rect" : [ 623.0, 261.0, 56.0, 16.0 ], "id" : "obj-77", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "newobj", "text" : "prepend frgb", "numoutlets" : 1, "patching_rect" : [ 672.0, 499.0, 73.0, 18.0 ], "id" : "obj-33", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "swatch", "numoutlets" : 2, "patching_rect" : [ 672.0, 462.0, 128.0, 32.0 ], "id" : "obj-35", "outlettype" : [ "", "float" ], "compatibility" : 1, "numinlets" : 3 } } , { "box" : { "maxclass" : "comment", "text" : "The utility abstraction cv.jit.faces.draw superimposes bounding boxes on the image sent to its right inlet. You can use the attribute \"frgb\" to set the colour used.", "linecount" : 5, "numoutlets" : 0, "patching_rect" : [ 670.0, 392.0, 175.0, 64.0 ], "id" : "obj-36", "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "output-description[2]", "text" : "Use as small an input as possible, for performance.", "linecount" : 2, "numoutlets" : 0, "patching_rect" : [ 459.0, 268.0, 135.0, 29.0 ], "id" : "obj-30", "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "cv.jit.resize @size 160 120", "numoutlets" : 2, "patching_rect" : [ 325.0, 275.0, 130.0, 18.0 ], "id" : "obj-29", "outlettype" : [ "jit_matrix", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "cv.jit.faces.draw", "numoutlets" : 1, "patching_rect" : [ 325.0, 361.0, 82.0, 18.0 ], "id" : "obj-27", "outlettype" : [ "jit_matrix" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "newobj", "text" : "cv.jit.faces", "numoutlets" : 2, "patching_rect" : [ 325.0, 322.0, 57.0, 18.0 ], "id" : "obj-26", "outlettype" : [ "jit_matrix", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "output-description[1]", "text" : "Works only on greyscale images!", "numoutlets" : 0, "patching_rect" : [ 394.0, 232.0, 157.0, 18.0 ], "id" : "obj-7", "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "cvjit_random_bg_colour", "hidden" : 1, "numoutlets" : 3, "patching_rect" : [ 59.0, 508.0, 117.0, 18.0 ], "id" : "obj-6", "outlettype" : [ "int", "int", "int" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 0 } } , { "box" : { "maxclass" : "newobj", "text" : "bgcolor", "hidden" : 1, "numoutlets" : 0, "patching_rect" : [ 59.0, 532.546204, 165.5, 18.0 ], "id" : "obj-10", "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 4 } } , { "box" : { "maxclass" : "comment", "varname" : "copyright-comment", "text" : "Copyright ©2003-2010", "numoutlets" : 0, "frgb" : [ 0.0, 0.0, 0.0, 0.901961 ], "patching_rect" : [ 50.0, 671.0, 111.0, 18.0 ], "id" : "obj-17", "fontname" : "Arial", "fontsize" : 10.0, "textcolor" : [ 0.0, 0.0, 0.0, 0.901961 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "support-comment", "text" : "Support:\nInternational Academy of Media Arts & Sciences (IAMAS) \n– Gifu, Japan", "linecount" : 3, "numoutlets" : 0, "patching_rect" : [ 50.0, 628.5, 243.0, 38.0 ], "id" : "obj-18", "fontname" : "Arial", "fontsize" : 9.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "email-comment", "text" : "jmp@jmpelletier.com\n", "numoutlets" : 0, "frgb" : [ 0.0, 0.0, 0.0, 0.901961 ], "patching_rect" : [ 185.0, 606.0, 105.0, 18.0 ], "id" : "obj-19", "fontname" : "Arial", "fontsize" : 10.0, "textcolor" : [ 0.0, 0.0, 0.0, 0.901961 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "me-comment", "text" : "By Jean-Marc Pelletier\n", "numoutlets" : 0, "patching_rect" : [ 50.0, 604.0, 135.0, 20.0 ], "id" : "obj-22", "fontname" : "Arial", "fontsize" : 12.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "output-comment", "text" : "Output", "numoutlets" : 0, "patching_rect" : [ 55.5, 301.0, 44.0, 19.0 ], "id" : "obj-31", "fontname" : "Arial", "fontsize" : 11.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "input-comment", "text" : "Input", "numoutlets" : 0, "patching_rect" : [ 60.0, 273.0, 35.0, 19.0 ], "id" : "obj-34", "fontname" : "Arial", "fontsize" : 11.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "input-description", "text" : "Single-plane char", "numoutlets" : 0, "patching_rect" : [ 110.0, 273.0, 175.0, 19.0 ], "id" : "obj-37", "fontname" : "Arial", "fontsize" : 11.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "output-description", "text" : "4-plane single-row float32", "numoutlets" : 0, "patching_rect" : [ 110.0, 301.0, 175.0, 19.0 ], "id" : "obj-38", "fontname" : "Arial", "fontsize" : 11.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "varname" : "io-cat-panel", "numoutlets" : 0, "bgcolor" : [ 0.556863, 0.556863, 0.556863, 0.2 ], "patching_rect" : [ 50.0, 268.0, 55.0, 57.0 ], "border" : 1, "id" : "obj-39", "bordercolor" : [ 1.0, 1.0, 1.0, 0.647059 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "varname" : "output-panel", "numoutlets" : 0, "bgcolor" : [ 0.615686, 0.607843, 0.607843, 0.2 ], "patching_rect" : [ 50.0, 296.0, 240.0, 29.0 ], "border" : 1, "id" : "obj-42", "bordercolor" : [ 1.0, 1.0, 1.0, 0.647059 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "varname" : "input-panel", "numoutlets" : 0, "bgcolor" : [ 0.615686, 0.607843, 0.607843, 0.2 ], "patching_rect" : [ 50.0, 268.0, 240.0, 29.0 ], "border" : 1, "id" : "obj-44", "bordercolor" : [ 1.0, 1.0, 1.0, 0.647059 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "varname" : "copyright-panel", "numoutlets" : 0, "bgcolor" : [ 1.0, 1.0, 1.0, 0.403922 ], "patching_rect" : [ 45.0, 599.0, 250.0, 95.0 ], "border" : 1, "id" : "obj-49", "bordercolor" : [ 0.0, 0.0, 0.0, 0.647059 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "varname" : "comments", "text" : "cv.jit.faces scans through a greyscale image and tries to find regions that resemble frontal views of human faces. Because the algorithm is rather computationally intensive, it works best on small matrices. Ideally, the smallest face to be detected should be about 20 pixels wide.\nWhile it can be used alone for face tracking, a more efficient use of resources would be to use cv.jit.faces in tandem with a proper tracking object, such as cv.jit.track, only performing face detection when necessary.", "linecount" : 11, "numoutlets" : 0, "patching_rect" : [ 50.0, 95.0, 243.0, 146.0 ], "id" : "obj-62", "fontname" : "Arial", "fontsize" : 11.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "varname" : "comments-panel", "numoutlets" : 0, "bgcolor" : [ 1.0, 1.0, 1.0, 0.647059 ], "patching_rect" : [ 45.0, 90.0, 250.0, 168.0 ], "border" : 1, "id" : "obj-65", "bordercolor" : [ 0.0, 0.0, 0.0, 0.517647 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "varname" : "io-panel", "numoutlets" : 0, "bgcolor" : [ 1.0, 1.0, 1.0, 0.403922 ], "patching_rect" : [ 45.0, 263.0, 250.0, 67.0 ], "border" : 1, "id" : "obj-5", "bordercolor" : [ 0.0, 0.0, 0.0, 0.517647 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 0.0, 0.0, 1.0, 0.05098 ], "patching_rect" : [ 315.0, 318.0, 78.0, 27.0 ], "border" : 1, "id" : "obj-9", "bordercolor" : [ 0.0, 0.0, 1.0, 0.733333 ], "rounded" : 30, "numinlets" : 1 } } , { "box" : { "maxclass" : "jit.fpsgui", "numoutlets" : 2, "patching_rect" : [ 325.0, 646.0, 80.0, 36.0 ], "id" : "obj-70", "outlettype" : [ "", "" ], "fontname" : "Arial", "fontsize" : 12.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "jit.rgb2luma", "numoutlets" : 2, "patching_rect" : [ 325.0, 233.0, 62.0, 18.0 ], "id" : "obj-69", "outlettype" : [ "jit_matrix", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "jit.pwindow", "numoutlets" : 2, "patching_rect" : [ 325.0, 393.0, 320.0, 240.0 ], "id" : "obj-67", "outlettype" : [ "", "" ], "numinlets" : 1 } } , { "box" : { "maxclass" : "message", "text" : "0", "hidden" : 1, "numoutlets" : 1, "patching_rect" : [ 427.0, 130.0, 31.0, 16.0 ], "id" : "obj-64", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "0", "hidden" : 1, "numoutlets" : 1, "patching_rect" : [ 633.0, 149.0, 31.0, 16.0 ], "id" : "obj-63", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "newobj", "text" : "sel 1", "hidden" : 1, "numoutlets" : 2, "patching_rect" : [ 388.0, 128.0, 32.0, 18.0 ], "id" : "obj-61", "outlettype" : [ "bang", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "comment", "text" : "Use pre-recorded movie", "numoutlets" : 0, "frgb" : [ 1.0, 1.0, 1.0, 1.0 ], "patching_rect" : [ 512.0, 102.0, 163.0, 19.0 ], "id" : "obj-60", "fontname" : "Arial", "fontsize" : 11.0, "textcolor" : [ 1.0, 1.0, 1.0, 1.0 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "text" : "Use live camera input", "numoutlets" : 0, "frgb" : [ 1.0, 1.0, 1.0, 1.0 ], "patching_rect" : [ 350.0, 102.0, 116.0, 19.0 ], "id" : "obj-59", "fontname" : "Arial", "fontsize" : 11.0, "textcolor" : [ 1.0, 1.0, 1.0, 1.0 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "sel 1 0", "hidden" : 1, "numoutlets" : 3, "patching_rect" : [ 553.0, 128.0, 40.0, 18.0 ], "id" : "obj-57", "outlettype" : [ "bang", "bang", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "toggle", "numoutlets" : 1, "patching_rect" : [ 487.0, 101.0, 20.0, 20.0 ], "id" : "obj-51", "outlettype" : [ "int" ], "numinlets" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "qmetro 2", "numoutlets" : 1, "patching_rect" : [ 487.0, 128.0, 50.0, 18.0 ], "id" : "obj-52", "outlettype" : [ "bang" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "stop", "numoutlets" : 1, "patching_rect" : [ 593.0, 151.0, 29.0, 16.0 ], "id" : "obj-53", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "start", "numoutlets" : 1, "patching_rect" : [ 553.0, 151.0, 30.0, 16.0 ], "id" : "obj-54", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "read", "numoutlets" : 1, "patching_rect" : [ 514.0, 151.0, 31.0, 16.0 ], "id" : "obj-55", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "newobj", "text" : "jit.qt.movie 320 240 @unique 1", "numoutlets" : 2, "patching_rect" : [ 487.0, 178.0, 149.0, 18.0 ], "id" : "obj-56", "outlettype" : [ "jit_matrix", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "toggle", "numoutlets" : 1, "patching_rect" : [ 325.0, 101.0, 20.0, 20.0 ], "id" : "obj-50", "outlettype" : [ "int" ], "numinlets" : 1 } } , { "box" : { "maxclass" : "newobj", "text" : "qmetro 2", "numoutlets" : 1, "patching_rect" : [ 325.0, 128.0, 50.0, 18.0 ], "id" : "obj-48", "outlettype" : [ "bang" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "settings", "numoutlets" : 1, "patching_rect" : [ 431.0, 151.0, 45.0, 16.0 ], "id" : "obj-47", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "close", "numoutlets" : 1, "patching_rect" : [ 391.0, 151.0, 34.0, 16.0 ], "id" : "obj-46", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "message", "text" : "open", "numoutlets" : 1, "patching_rect" : [ 352.0, 151.0, 33.0, 16.0 ], "id" : "obj-45", "outlettype" : [ "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 2 } } , { "box" : { "maxclass" : "newobj", "text" : "cv.jit.grab 320 240", "numoutlets" : 2, "patching_rect" : [ 325.0, 178.0, 92.0, 18.0 ], "id" : "obj-43", "outlettype" : [ "jit_matrix", "" ], "fontname" : "Arial", "fontsize" : 10.0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 0.0, 0.0, 0.0, 0.2 ], "patching_rect" : [ 315.0, 90.0, 366.0, 130.0 ], "border" : 1, "id" : "obj-58", "bordercolor" : [ 0.5, 0.5, 0.5, 0.5 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "fpic", "numoutlets" : 0, "patching_rect" : [ 769.0, 7.0, 255.0, 72.0 ], "pic" : "cvtitle.png", "id" : "obj-2", "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 0.0, 0.0, 0.0, 0.0 ], "patching_rect" : [ 15.0, 45.0, 778.0, 4.0 ], "border" : 1, "id" : "obj-20", "bordercolor" : [ 0.0, 0.0, 0.0, 0.207843 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "text" : "Find faces in an image", "numoutlets" : 0, "frgb" : [ 0.258824, 0.258824, 0.258824, 1.0 ], "patching_rect" : [ 45.0, 45.0, 441.0, 29.0 ], "id" : "obj-16", "fontname" : "Arial", "fontsize" : 20.0, "textcolor" : [ 0.258824, 0.258824, 0.258824, 1.0 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "comment", "text" : "cv.jit.faces", "numoutlets" : 0, "frgb" : [ 0.258824, 0.258824, 0.258824, 1.0 ], "patching_rect" : [ 45.0, 15.0, 565.0, 41.0 ], "id" : "obj-15", "fontname" : "Arial", "fontface" : 1, "fontsize" : 30.028469, "textcolor" : [ 0.258824, 0.258824, 0.258824, 1.0 ], "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 0.0, 0.0, 0.0, 0.101961 ], "patching_rect" : [ 317.0, 385.0, 336.0, 256.0 ], "border" : 1, "id" : "obj-147", "bordercolor" : [ 0.5, 0.5, 0.5, 0.5 ], "rounded" : 15, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 0.776471, 0.776471, 0.776471, 0.0 ], "patching_rect" : [ 317.0, 225.0, 244.0, 34.0 ], "border" : 1, "id" : "obj-141", "bordercolor" : [ 0.5, 0.5, 0.5, 0.5 ], "rounded" : 15, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 0.776471, 0.776471, 0.776471, 0.0 ], "patching_rect" : [ 317.0, 262.0, 286.0, 41.0 ], "border" : 1, "id" : "obj-32", "bordercolor" : [ 0.5, 0.5, 0.5, 0.5 ], "rounded" : 15, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 1.0, 1.0, 1.0, 0.396078 ], "patching_rect" : [ 663.0, 384.0, 190.0, 139.0 ], "border" : 1, "id" : "obj-68", "bordercolor" : [ 1.0, 0.0, 0.0, 0.647059 ], "rounded" : 0, "numinlets" : 1 } } , { "box" : { "maxclass" : "panel", "numoutlets" : 0, "bgcolor" : [ 1.0, 1.0, 1.0, 0.396078 ], "patching_rect" : [ 616.0, 227.0, 391.0, 148.0 ], "border" : 1, "id" : "obj-80", "bordercolor" : [ 1.0, 0.0, 0.0, 0.647059 ], "rounded" : 0, "numinlets" : 1 } } ], "lines" : [ { "patchline" : { "source" : [ "obj-67", 0 ], "destination" : [ "obj-70", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-56", 0 ], "destination" : [ "obj-69", 0 ], "hidden" : 0, "midpoints" : [ 496.5, 205.5, 334.5, 205.5 ] } } , { "patchline" : { "source" : [ "obj-63", 0 ], "destination" : [ "obj-50", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-64", 0 ], "destination" : [ "obj-51", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-61", 0 ], "destination" : [ "obj-64", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-57", 0 ], "destination" : [ "obj-63", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-50", 0 ], "destination" : [ "obj-61", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-57", 1 ], "destination" : [ "obj-53", 0 ], "hidden" : 1, "midpoints" : [ 573.0, 149.0, 602.5, 149.0 ] } } , { "patchline" : { "source" : [ "obj-57", 0 ], "destination" : [ "obj-54", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-51", 0 ], "destination" : [ "obj-57", 0 ], "hidden" : 1, "midpoints" : [ 496.5, 124.0, 562.5, 124.0 ] } } , { "patchline" : { "source" : [ "obj-53", 0 ], "destination" : [ "obj-56", 0 ], "hidden" : 0, "midpoints" : [ 602.5, 173.0, 496.5, 173.0 ] } } , { "patchline" : { "source" : [ "obj-54", 0 ], "destination" : [ "obj-56", 0 ], "hidden" : 0, "midpoints" : [ 562.5, 173.0, 496.5, 173.0 ] } } , { "patchline" : { "source" : [ "obj-55", 0 ], "destination" : [ "obj-56", 0 ], "hidden" : 0, "midpoints" : [ 523.5, 173.0, 496.5, 173.0 ] } } , { "patchline" : { "source" : [ "obj-52", 0 ], "destination" : [ "obj-56", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-51", 0 ], "destination" : [ "obj-52", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-50", 0 ], "destination" : [ "obj-48", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-48", 0 ], "destination" : [ "obj-43", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-45", 0 ], "destination" : [ "obj-43", 0 ], "hidden" : 0, "midpoints" : [ 361.5, 173.0, 334.5, 173.0 ] } } , { "patchline" : { "source" : [ "obj-46", 0 ], "destination" : [ "obj-43", 0 ], "hidden" : 0, "midpoints" : [ 400.5, 173.0, 334.5, 173.0 ] } } , { "patchline" : { "source" : [ "obj-47", 0 ], "destination" : [ "obj-43", 0 ], "hidden" : 0, "midpoints" : [ 440.5, 173.0, 334.5, 173.0 ] } } , { "patchline" : { "source" : [ "obj-43", 0 ], "destination" : [ "obj-69", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-6", 0 ], "destination" : [ "obj-10", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-6", 1 ], "destination" : [ "obj-10", 1 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-6", 2 ], "destination" : [ "obj-10", 2 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-26", 0 ], "destination" : [ "obj-27", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-69", 0 ], "destination" : [ "obj-29", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-29", 0 ], "destination" : [ "obj-26", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-27", 0 ], "destination" : [ "obj-67", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-29", 0 ], "destination" : [ "obj-27", 1 ], "hidden" : 0, "midpoints" : [ 334.5, 307.0, 397.5, 307.0 ] } } , { "patchline" : { "source" : [ "obj-35", 0 ], "destination" : [ "obj-33", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-33", 0 ], "destination" : [ "obj-27", 0 ], "hidden" : 0, "midpoints" : [ 681.5, 530.0, 658.0, 530.0, 658.0, 356.0, 334.5, 356.0 ] } } , { "patchline" : { "source" : [ "obj-74", 0 ], "destination" : [ "obj-77", 0 ], "hidden" : 0, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-77", 0 ], "destination" : [ "obj-26", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-76", 0 ], "destination" : [ "obj-26", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-73", 0 ], "destination" : [ "obj-26", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-72", 0 ], "destination" : [ "obj-26", 0 ], "hidden" : 1, "midpoints" : [ ] } } , { "patchline" : { "source" : [ "obj-26", 1 ], "destination" : [ "obj-81", 0 ], "hidden" : 0, "midpoints" : [ 372.5, 349.0, 411.0, 349.0, 411.0, 315.0, 430.5, 315.0 ] } } , { "patchline" : { "source" : [ "obj-81", 0 ], "destination" : [ "obj-82", 0 ], "hidden" : 0, "midpoints" : [ 430.5, 344.0, 488.0, 344.0, 488.0, 320.0, 500.5, 320.0 ] } } ] } }