UNPKG

opencv

Version:
1,513 lines (1,504 loc) 410 kB
<?xml version="1.0"?> <!-- 22x5 Eye pair detector computed with 7000 positive samples ////////////////////////////////////////////////////////////////////////// | Contributors License Agreement | IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. | By downloading, copying, installing or using the software you agree | to this license. | If you do not agree to this license, do not download, install, | copy or use the software. | | Copyright (c) 2006, Modesto Castrillon-Santana (IUSIANI, University of | Las Palmas de Gran Canaria, Spain). | All rights reserved. | | Redistribution and use in source and binary forms, with or without | modification, are permitted provided that the following conditions are | met: | | * Redistributions of source code must retain the above copyright | notice, this list of conditions and the following disclaimer. | * Redistributions in binary form must reproduce the above | copyright notice, this list of conditions and the following | disclaimer in the documentation and/or other materials provided | with the distribution. | * The name of Contributor may not used to endorse or promote products | derived from this software without specific prior written permission. | | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Back to | Top ////////////////////////////////////////////////////////////////////////// RESEARCH USE: If you are using any of the detectors or involved ideas please cite one of these papers: @ARTICLE{Castrillon07-jvci, author = "Castrill\'on Santana, M. and D\'eniz Su\'arez, O. and Hern\'andez Tejera, M. and Guerra Artal, C.", title = "ENCARA2: Real-time Detection of Multiple Faces at Different Resolutions in Video Streams", journal = "Journal of Visual Communication and Image Representation", year = "2007", vol = "18", issue = "2", month = "April", pages = "130-140" } @INPROCEEDINGS{Castrillon07-swb, author = "Castrill\'on Santana, M. and D\'eniz Su\'arez, O. and Hern\'andez Sosa, D. and Lorenzo Navarro, J. ", title = "Using Incremental Principal Component Analysis to Learn a Gender Classifier Automatically", booktitle = "1st Spanish Workshop on Biometrics", year = "2007", month = "June", address = "Girona, Spain", file = F } A comparison of this and other face related classifiers can be found in: @InProceedings{Castrillon08a-visapp, 'athor = "Modesto Castrill\'on-Santana and O. D\'eniz-Su\'arez, L. Ant\'on-Canal\'{\i}s and J. Lorenzo-Navarro", title = "Face and Facial Feature Detection Evaluation" booktitle = "Third International Conference on Computer Vision Theory and Applications, VISAPP08" year = "2008", month = "January" } More information can be found at http://mozart.dis.ulpgc.es/Gias/modesto_eng.html or in the papers. COMMERCIAL USE: If you have any commercial interest in this work please contact mcastrillon@iusiani.ulpgc.es --> <opencv_storage> <parojos type_id="opencv-haar-classifier"> <size> 22 5</size> <stages> <_> <!-- stage 0 --> <trees> <_> <!-- tree 0 --> <_> <!-- root node --> <feature> <rects> <_> 3 1 15 2 -1.</_> <_> 8 1 5 2 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.2526662945747376</threshold> <left_val>-0.7711064219474793</left_val> <right_val>0.8083379864692688</right_val></_></_> <_> <!-- tree 1 --> <_> <!-- root node --> <feature> <rects> <_> 17 3 5 2 -1.</_> <_> 17 4 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>5.6097120977938175e-003</threshold> <left_val>-0.7382487058639526</left_val> <right_val>0.3885168135166168</right_val></_></_> <_> <!-- tree 2 --> <_> <!-- root node --> <feature> <rects> <_> 8 0 6 5 -1.</_> <_> 10 0 2 5 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.1529859006404877</threshold> <left_val>-0.5524439215660095</left_val> <right_val>0.6428967118263245</right_val></_></_> <_> <!-- tree 3 --> <_> <!-- root node --> <feature> <rects> <_> 16 1 3 3 -1.</_> <_> 17 2 1 1 9.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0415615215897560</threshold> <left_val>0.4628770947456360</left_val> <right_val>-0.5341588854789734</right_val></_></_> <_> <!-- tree 4 --> <_> <!-- root node --> <feature> <rects> <_> 1 2 20 2 -1.</_> <_> 1 2 10 1 2.</_> <_> 11 3 10 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.4064395129680634</threshold> <left_val>0.0170928593724966</left_val> <right_val>-4.6732509765625000e+003</right_val></_></_> <_> <!-- tree 5 --> <_> <!-- root node --> <feature> <rects> <_> 16 2 5 2 -1.</_> <_> 16 3 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0296334698796272</threshold> <left_val>-0.4434844851493835</left_val> <right_val>0.5070301294326782</right_val></_></_> <_> <!-- tree 6 --> <_> <!-- root node --> <feature> <rects> <_> 1 3 1 2 -1.</_> <_> 1 4 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>1.0285720054525882e-004</threshold> <left_val>-0.6646639108657837</left_val> <right_val>0.3020784854888916</right_val></_></_></trees> <stage_threshold>-1.7232350111007690</stage_threshold> <parent>-1</parent> <next>-1</next></_> <_> <!-- stage 1 --> <trees> <_> <!-- tree 0 --> <_> <!-- root node --> <feature> <rects> <_> 3 1 15 2 -1.</_> <_> 8 1 5 2 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.3342517912387848</threshold> <left_val>-0.6565846204757690</left_val> <right_val>0.7222465276718140</right_val></_></_> <_> <!-- tree 1 --> <_> <!-- root node --> <feature> <rects> <_> 16 2 5 2 -1.</_> <_> 16 3 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0346819795668125</threshold> <left_val>-0.6552636027336121</left_val> <right_val>0.5463399887084961</right_val></_></_> <_> <!-- tree 2 --> <_> <!-- root node --> <feature> <rects> <_> 3 1 3 3 -1.</_> <_> 4 2 1 1 9.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0534898117184639</threshold> <left_val>0.4989432096481323</left_val> <right_val>-0.5077415108680725</right_val></_></_> <_> <!-- tree 3 --> <_> <!-- root node --> <feature> <rects> <_> 10 0 4 5 -1.</_> <_> 10 0 2 5 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.1027211993932724</threshold> <left_val>-0.2844530940055847</left_val> <right_val>0.4049448966979981</right_val></_></_> <_> <!-- tree 4 --> <_> <!-- root node --> <feature> <rects> <_> 0 3 3 2 -1.</_> <_> 0 4 3 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>1.4077969535719603e-004</threshold> <left_val>-0.7902024984359741</left_val> <right_val>0.3444094955921173</right_val></_></_> <_> <!-- tree 5 --> <_> <!-- root node --> <feature> <rects> <_> 10 0 4 5 -1.</_> <_> 10 0 2 5 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.2322703003883362</threshold> <left_val>-0.1301804929971695</left_val> <right_val>0.4313975870609283</right_val></_></_> <_> <!-- tree 6 --> <_> <!-- root node --> <feature> <rects> <_> 8 0 4 5 -1.</_> <_> 10 0 2 5 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0804133936762810</threshold> <left_val>-0.4637677967548370</left_val> <right_val>0.4882495105266571</right_val></_></_></trees> <stage_threshold>-1.4015640020370483</stage_threshold> <parent>0</parent> <next>-1</next></_> <_> <!-- stage 2 --> <trees> <_> <!-- tree 0 --> <_> <!-- root node --> <feature> <rects> <_> 5 0 12 3 -1.</_> <_> 9 0 4 3 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.3527685105800629</threshold> <left_val>-0.6308009028434753</left_val> <right_val>0.6519911885261536</right_val></_></_> <_> <!-- tree 1 --> <_> <!-- root node --> <feature> <rects> <_> 16 1 3 4 -1.</_> <_> 16 3 3 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0732240602374077</threshold> <left_val>-0.5955833792686462</left_val> <right_val>0.4883106946945190</right_val></_></_> <_> <!-- tree 2 --> <_> <!-- root node --> <feature> <rects> <_> 3 0 4 1 -1.</_> <_> 4 1 2 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>-0.0226341206580400</threshold> <left_val>0.4198729097843170</left_val> <right_val>-0.5654544234275818</right_val></_></_> <_> <!-- tree 3 --> <_> <!-- root node --> <feature> <rects> <_> 8 0 6 5 -1.</_> <_> 10 0 2 5 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.2229817062616348</threshold> <left_val>-0.3186086118221283</left_val> <right_val>0.4877224862575531</right_val></_></_> <_> <!-- tree 4 --> <_> <!-- root node --> <feature> <rects> <_> 0 2 5 2 -1.</_> <_> 0 3 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0183574296534061</threshold> <left_val>-0.4086276888847351</left_val> <right_val>0.3995149135589600</right_val></_></_> <_> <!-- tree 5 --> <_> <!-- root node --> <feature> <rects> <_> 20 3 1 2 -1.</_> <_> 20 4 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>1.2711199815385044e-004</threshold> <left_val>-0.4723080098628998</left_val> <right_val>0.2052184939384460</right_val></_></_> <_> <!-- tree 6 --> <_> <!-- root node --> <feature> <rects> <_> 4 4 3 1 -1.</_> <_> 5 4 1 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.0108341602608562</threshold> <left_val>0.1331830024719238</left_val> <right_val>-0.7791494727134705</right_val></_></_> <_> <!-- tree 7 --> <_> <!-- root node --> <feature> <rects> <_> 17 3 5 2 -1.</_> <_> 17 4 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-7.9301595687866211e-003</threshold> <left_val>-0.5978981256484985</left_val> <right_val>0.0493724681437016</right_val></_></_> <_> <!-- tree 8 --> <_> <!-- root node --> <feature> <rects> <_> 2 1 12 1 -1.</_> <_> 8 1 6 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.2945961058139801</threshold> <left_val>-9.9943317472934723e-003</left_val> <right_val>-3.9346069335937500e+003</right_val></_></_> <_> <!-- tree 9 --> <_> <!-- root node --> <feature> <rects> <_> 20 3 1 2 -1.</_> <_> 20 4 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0239798706024885</threshold> <left_val>0.0653594881296158</left_val> <right_val>-0.5048499107360840</right_val></_></_> <_> <!-- tree 10 --> <_> <!-- root node --> <feature> <rects> <_> 1 3 1 2 -1.</_> <_> 1 4 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>1.0285720054525882e-004</threshold> <left_val>-0.6223191022872925</left_val> <right_val>0.1374989002943039</right_val></_></_> <_> <!-- tree 11 --> <_> <!-- root node --> <feature> <rects> <_> 4 2 16 2 -1.</_> <_> 8 2 8 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.1328265964984894</threshold> <left_val>-0.3416162133216858</left_val> <right_val>0.2717226147651672</right_val></_></_> <_> <!-- tree 12 --> <_> <!-- root node --> <feature> <rects> <_> 7 3 8 2 -1.</_> <_> 7 3 4 1 2.</_> <_> 11 4 4 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0373767800629139</threshold> <left_val>-0.7467133998870850</left_val> <right_val>0.1147433966398239</right_val></_></_> <_> <!-- tree 13 --> <_> <!-- root node --> <feature> <rects> <_> 13 3 5 2 -1.</_> <_> 13 4 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>7.3414398357272148e-003</threshold> <left_val>-0.3496235907077789</left_val> <right_val>0.1292906999588013</right_val></_></_></trees> <stage_threshold>-1.9015949964523315</stage_threshold> <parent>1</parent> <next>-1</next></_> <_> <!-- stage 3 --> <trees> <_> <!-- tree 0 --> <_> <!-- root node --> <feature> <rects> <_> 3 1 15 2 -1.</_> <_> 8 1 5 2 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.3591364920139313</threshold> <left_val>-0.5852038860321045</left_val> <right_val>0.5831562876701355</right_val></_></_> <_> <!-- tree 1 --> <_> <!-- root node --> <feature> <rects> <_> 17 2 1 2 -1.</_> <_> 17 2 1 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>-9.2016262933611870e-003</threshold> <left_val>0.2337868064641953</left_val> <right_val>-0.5213131904602051</right_val></_></_> <_> <!-- tree 2 --> <_> <!-- root node --> <feature> <rects> <_> 5 2 2 1 -1.</_> <_> 5 2 1 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>-0.0154673596844077</threshold> <left_val>0.3357514142990112</left_val> <right_val>-0.5408478975296021</right_val></_></_> <_> <!-- tree 3 --> <_> <!-- root node --> <feature> <rects> <_> 8 0 6 5 -1.</_> <_> 10 0 2 5 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.1552383005619049</threshold> <left_val>-0.4648830890655518</left_val> <right_val>0.4395757913589478</right_val></_></_> <_> <!-- tree 4 --> <_> <!-- root node --> <feature> <rects> <_> 5 2 1 2 -1.</_> <_> 5 2 1 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>-0.0103788999840617</threshold> <left_val>0.2285542041063309</left_val> <right_val>-0.4747259914875031</right_val></_></_> <_> <!-- tree 5 --> <_> <!-- root node --> <feature> <rects> <_> 20 2 2 2 -1.</_> <_> 20 2 1 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>-7.5254109688103199e-003</threshold> <left_val>0.3016864955425263</left_val> <right_val>-0.2849124968051910</right_val></_></_> <_> <!-- tree 6 --> <_> <!-- root node --> <feature> <rects> <_> 0 2 2 2 -1.</_> <_> 1 2 1 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>-1.2629480625037104e-004</threshold> <left_val>0.2231729030609131</left_val> <right_val>-0.3981136083602905</right_val></_></_> <_> <!-- tree 7 --> <_> <!-- root node --> <feature> <rects> <_> 12 0 2 1 -1.</_> <_> 12 0 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>1.2507449719123542e-004</threshold> <left_val>-0.3672328889369965</left_val> <right_val>0.1385204941034317</right_val></_></_> <_> <!-- tree 8 --> <_> <!-- root node --> <feature> <rects> <_> 3 4 3 1 -1.</_> <_> 4 4 1 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-9.0782120823860168e-003</threshold> <left_val>-0.6827750802040100</left_val> <right_val>0.1098302975296974</right_val></_></_> <_> <!-- tree 9 --> <_> <!-- root node --> <feature> <rects> <_> 6 2 10 2 -1.</_> <_> 11 2 5 1 2.</_> <_> 6 3 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0498007684946060</threshold> <left_val>-0.7118374705314636</left_val> <right_val>0.0958777666091919</right_val></_></_> <_> <!-- tree 10 --> <_> <!-- root node --> <feature> <rects> <_> 4 2 1 2 -1.</_> <_> 4 2 1 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>0.1072968021035194</threshold> <left_val>-0.0198284294456244</left_val> <right_val>-2.6988120117187500e+003</right_val></_></_> <_> <!-- tree 11 --> <_> <!-- root node --> <feature> <rects> <_> 20 3 2 2 -1.</_> <_> 20 4 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-2.9545628931373358e-003</threshold> <left_val>-0.5966340899467468</left_val> <right_val>0.1437848955392838</right_val></_></_> <_> <!-- tree 12 --> <_> <!-- root node --> <feature> <rects> <_> 8 0 2 1 -1.</_> <_> 9 0 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>1.2507449719123542e-004</threshold> <left_val>-0.4219875931739807</left_val> <right_val>0.1265437006950378</right_val></_></_> <_> <!-- tree 13 --> <_> <!-- root node --> <feature> <rects> <_> 20 3 2 2 -1.</_> <_> 20 4 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0507127307355404</threshold> <left_val>0.0368256606161594</left_val> <right_val>-0.7281960844993591</right_val></_></_> <_> <!-- tree 14 --> <_> <!-- root node --> <feature> <rects> <_> 0 3 2 2 -1.</_> <_> 0 4 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>1.4936710067559034e-004</threshold> <left_val>-0.5385984778404236</left_val> <right_val>0.1298418939113617</right_val></_></_> <_> <!-- tree 15 --> <_> <!-- root node --> <feature> <rects> <_> 2 1 20 4 -1.</_> <_> 12 1 10 2 2.</_> <_> 2 3 10 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.2437365055084229</threshold> <left_val>0.0569615103304386</left_val> <right_val>-0.7102329134941101</right_val></_></_> <_> <!-- tree 16 --> <_> <!-- root node --> <feature> <rects> <_> 1 0 5 4 -1.</_> <_> 1 1 5 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0600150190293789</threshold> <left_val>0.2469456046819687</left_val> <right_val>-0.2502039074897766</right_val></_></_> <_> <!-- tree 17 --> <_> <!-- root node --> <feature> <rects> <_> 10 4 12 1 -1.</_> <_> 10 4 6 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0874126628041267</threshold> <left_val>0.0585523098707199</left_val> <right_val>-0.2872526943683624</right_val></_></_> <_> <!-- tree 18 --> <_> <!-- root node --> <feature> <rects> <_> 0 4 12 1 -1.</_> <_> 6 4 6 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0909190475940704</threshold> <left_val>-0.6881564855575562</left_val> <right_val>0.0880744829773903</right_val></_></_> <_> <!-- tree 19 --> <_> <!-- root node --> <feature> <rects> <_> 10 2 6 3 -1.</_> <_> 12 2 2 3 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.1481955051422119</threshold> <left_val>-0.0833467096090317</left_val> <right_val>0.5128626227378845</right_val></_></_> <_> <!-- tree 20 --> <_> <!-- root node --> <feature> <rects> <_> 8 2 6 3 -1.</_> <_> 10 2 2 3 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.2177619934082031</threshold> <left_val>-0.1130203977227211</left_val> <right_val>0.4898183941841126</right_val></_></_></trees> <stage_threshold>-1.8471280336380005</stage_threshold> <parent>2</parent> <next>-1</next></_> <_> <!-- stage 4 --> <trees> <_> <!-- tree 0 --> <_> <!-- root node --> <feature> <rects> <_> 2 1 16 2 -1.</_> <_> 6 1 8 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.2408764064311981</threshold> <left_val>-0.5451133251190186</left_val> <right_val>0.4999712109565735</right_val></_></_> <_> <!-- tree 1 --> <_> <!-- root node --> <feature> <rects> <_> 13 1 5 4 -1.</_> <_> 13 3 5 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0914550274610519</threshold> <left_val>-0.5453007221221924</left_val> <right_val>0.3651191890239716</right_val></_></_> <_> <!-- tree 2 --> <_> <!-- root node --> <feature> <rects> <_> 7 0 4 3 -1.</_> <_> 9 0 2 3 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0629608929157257</threshold> <left_val>-0.4504084885120392</left_val> <right_val>0.3127841949462891</right_val></_></_> <_> <!-- tree 3 --> <_> <!-- root node --> <feature> <rects> <_> 16 1 3 3 -1.</_> <_> 17 2 1 1 9.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0448659397661686</threshold> <left_val>0.3819159865379334</left_val> <right_val>-0.4031482040882111</right_val></_></_> <_> <!-- tree 4 --> <_> <!-- root node --> <feature> <rects> <_> 5 2 1 2 -1.</_> <_> 5 2 1 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>-0.0137748196721077</threshold> <left_val>0.2556776106357575</left_val> <right_val>-0.5279502272605896</right_val></_></_> <_> <!-- tree 5 --> <_> <!-- root node --> <feature> <rects> <_> 9 2 4 3 -1.</_> <_> 10 2 2 3 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0309309698641300</threshold> <left_val>-0.3218415975570679</left_val> <right_val>0.3261575996875763</right_val></_></_> <_> <!-- tree 6 --> <_> <!-- root node --> <feature> <rects> <_> 1 3 2 2 -1.</_> <_> 1 4 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>2.8891479596495628e-003</threshold> <left_val>-0.5894880890846252</left_val> <right_val>0.1343344002962112</right_val></_></_> <_> <!-- tree 7 --> <_> <!-- root node --> <feature> <rects> <_> 17 4 3 1 -1.</_> <_> 18 4 1 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>8.0474298447370529e-003</threshold> <left_val>0.1313284933567047</left_val> <right_val>-0.6860215067863464</right_val></_></_> <_> <!-- tree 8 --> <_> <!-- root node --> <feature> <rects> <_> 2 4 3 1 -1.</_> <_> 3 4 1 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>9.5555791631340981e-003</threshold> <left_val>0.0981872826814651</left_val> <right_val>-0.6792752742767334</right_val></_></_> <_> <!-- tree 9 --> <_> <!-- root node --> <feature> <rects> <_> 13 0 6 1 -1.</_> <_> 15 0 2 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-3.1676879152655602e-003</threshold> <left_val>0.1139028966426849</left_val> <right_val>-0.2320346981287003</right_val></_></_> <_> <!-- tree 10 --> <_> <!-- root node --> <feature> <rects> <_> 4 0 5 2 -1.</_> <_> 4 1 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0164961200207472</threshold> <left_val>0.2569769024848938</left_val> <right_val>-0.2660340964794159</right_val></_></_> <_> <!-- tree 11 --> <_> <!-- root node --> <feature> <rects> <_> 13 0 6 1 -1.</_> <_> 15 0 2 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0964340418577194</threshold> <left_val>-0.6803668737411499</left_val> <right_val>0.0261034406721592</right_val></_></_> <_> <!-- tree 12 --> <_> <!-- root node --> <feature> <rects> <_> 3 0 6 1 -1.</_> <_> 5 0 2 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0101298801600933</threshold> <left_val>0.2653768062591553</left_val> <right_val>-0.2865482866764069</right_val></_></_> <_> <!-- tree 13 --> <_> <!-- root node --> <feature> <rects> <_> 9 0 4 1 -1.</_> <_> 10 0 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>3.5491649759933352e-004</threshold> <left_val>-0.4500123858451843</left_val> <right_val>0.1557054072618485</right_val></_></_> <_> <!-- tree 14 --> <_> <!-- root node --> <feature> <rects> <_> 3 2 3 1 -1.</_> <_> 4 2 1 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0108793601393700</threshold> <left_val>0.2852602899074554</left_val> <right_val>-0.2204159051179886</right_val></_></_> <_> <!-- tree 15 --> <_> <!-- root node --> <feature> <rects> <_> 18 4 3 1 -1.</_> <_> 19 4 1 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0133209601044655</threshold> <left_val>-0.6286336183547974</left_val> <right_val>0.0756023898720741</right_val></_></_> <_> <!-- tree 16 --> <_> <!-- root node --> <feature> <rects> <_> 1 4 3 1 -1.</_> <_> 2 4 1 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>9.1701131314039230e-003</threshold> <left_val>0.1067252978682518</left_val> <right_val>-0.5646225214004517</right_val></_></_> <_> <!-- tree 17 --> <_> <!-- root node --> <feature> <rects> <_> 9 0 4 5 -1.</_> <_> 9 0 2 5 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.1756207942962647</threshold> <left_val>0.6023464798927307</left_val> <right_val>-0.1105926036834717</right_val></_></_> <_> <!-- tree 18 --> <_> <!-- root node --> <feature> <rects> <_> 6 2 10 2 -1.</_> <_> 6 2 5 1 2.</_> <_> 11 3 5 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0341055616736412</threshold> <left_val>0.1336347013711929</left_val> <right_val>-0.4956767857074738</right_val></_></_> <_> <!-- tree 19 --> <_> <!-- root node --> <feature> <rects> <_> 8 2 8 2 -1.</_> <_> 12 2 4 1 2.</_> <_> 8 3 4 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0643843710422516</threshold> <left_val>-0.5880644917488098</left_val> <right_val>0.0320239402353764</right_val></_></_> <_> <!-- tree 20 --> <_> <!-- root node --> <feature> <rects> <_> 6 2 8 2 -1.</_> <_> 6 2 4 1 2.</_> <_> 10 3 4 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0460324808955193</threshold> <left_val>-0.6143289804458618</left_val> <right_val>0.0994031131267548</right_val></_></_> <_> <!-- tree 21 --> <_> <!-- root node --> <feature> <rects> <_> 16 1 5 3 -1.</_> <_> 16 2 5 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0384022481739521</threshold> <left_val>0.1604094058275223</left_val> <right_val>-0.1873051971197128</right_val></_></_> <_> <!-- tree 22 --> <_> <!-- root node --> <feature> <rects> <_> 0 1 21 3 -1.</_> <_> 7 2 7 1 9.</_></rects> <tilted>0</tilted></feature> <threshold>-0.4709807038307190</threshold> <left_val>-0.8141909837722778</left_val> <right_val>0.0628029108047485</right_val></_></_></trees> <stage_threshold>-1.7498610019683838</stage_threshold> <parent>3</parent> <next>-1</next></_> <_> <!-- stage 5 --> <trees> <_> <!-- tree 0 --> <_> <!-- root node --> <feature> <rects> <_> 8 2 6 2 -1.</_> <_> 10 2 2 2 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.4078958034515381</threshold> <left_val>-2.1667710097972304e-004</left_val> <right_val>4.0943940429687500e+003</right_val></_></_> <_> <!-- tree 1 --> <_> <!-- root node --> <feature> <rects> <_> 5 0 12 3 -1.</_> <_> 8 0 6 3 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.2218903005123138</threshold> <left_val>-0.5719025731086731</left_val> <right_val>0.3176411092281342</right_val></_></_> <_> <!-- tree 2 --> <_> <!-- root node --> <feature> <rects> <_> 3 1 3 3 -1.</_> <_> 4 2 1 1 9.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0679081231355667</threshold> <left_val>0.4214872121810913</left_val> <right_val>-0.4698249995708466</right_val></_></_> <_> <!-- tree 3 --> <_> <!-- root node --> <feature> <rects> <_> 14 2 2 1 -1.</_> <_> 14 2 1 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>8.1082796677947044e-003</threshold> <left_val>0.1225956007838249</left_val> <right_val>-0.4136815965175629</right_val></_></_> <_> <!-- tree 4 --> <_> <!-- root node --> <feature> <rects> <_> 9 1 2 3 -1.</_> <_> 10 1 1 3 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0175196807831526</threshold> <left_val>-0.3862532973289490</left_val> <right_val>0.3089705109596252</right_val></_></_> <_> <!-- tree 5 --> <_> <!-- root node --> <feature> <rects> <_> 17 1 5 4 -1.</_> <_> 17 3 5 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0811933875083923</threshold> <left_val>-0.6375020742416382</left_val> <right_val>0.3839319050312042</right_val></_></_> <_> <!-- tree 6 --> <_> <!-- root node --> <feature> <rects> <_> 2 2 16 2 -1.</_> <_> 6 2 8 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.1475138068199158</threshold> <left_val>-0.4631600081920624</left_val> <right_val>0.2451909929513931</right_val></_></_> <_> <!-- tree 7 --> <_> <!-- root node --> <feature> <rects> <_> 20 2 2 1 -1.</_> <_> 20 2 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-4.6391459181904793e-003</threshold> <left_val>0.2801133990287781</left_val> <right_val>-0.3114584088325501</right_val></_></_> <_> <!-- tree 8 --> <_> <!-- root node --> <feature> <rects> <_> 0 2 2 1 -1.</_> <_> 1 2 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-2.5532179279252887e-004</threshold> <left_val>0.2138828039169312</left_val> <right_val>-0.4466992020606995</right_val></_></_> <_> <!-- tree 9 --> <_> <!-- root node --> <feature> <rects> <_> 17 1 5 4 -1.</_> <_> 17 3 5 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.3518253862857819</threshold> <left_val>0.0239298101514578</left_val> <right_val>-0.8244767785072327</right_val></_></_> <_> <!-- tree 10 --> <_> <!-- root node --> <feature> <rects> <_> 0 1 5 4 -1.</_> <_> 0 3 5 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0724168568849564</threshold> <left_val>-0.3899424076080322</left_val> <right_val>0.1848614960908890</right_val></_></_> <_> <!-- tree 11 --> <_> <!-- root node --> <feature> <rects> <_> 12 0 4 1 -1.</_> <_> 13 1 2 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>-0.0123144201934338</threshold> <left_val>0.1169440001249313</left_val> <right_val>-0.1624529063701630</right_val></_></_> <_> <!-- tree 12 --> <_> <!-- root node --> <feature> <rects> <_> 7 3 8 2 -1.</_> <_> 7 3 4 1 2.</_> <_> 11 4 4 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0420644916594028</threshold> <left_val>0.1099952012300491</left_val> <right_val>-0.7158398032188416</right_val></_></_> <_> <!-- tree 13 --> <_> <!-- root node --> <feature> <rects> <_> 5 0 12 4 -1.</_> <_> 11 0 6 2 2.</_> <_> 5 2 6 2 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.1470896005630493</threshold> <left_val>0.0647203177213669</left_val> <right_val>-0.7278063297271729</right_val></_></_> <_> <!-- tree 14 --> <_> <!-- root node --> <feature> <rects> <_> 10 3 2 2 -1.</_> <_> 10 3 1 1 2.</_> <_> 11 4 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>-8.5739437490701675e-003</threshold> <left_val>-0.6512069702148438</left_val> <right_val>0.0646309629082680</right_val></_></_> <_> <!-- tree 15 --> <_> <!-- root node --> <feature> <rects> <_> 20 3 2 2 -1.</_> <_> 20 4 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>2.4884249432943761e-004</threshold> <left_val>-0.3854041993618012</left_val> <right_val>0.1037364006042481</right_val></_></_> <_> <!-- tree 16 --> <_> <!-- root node --> <feature> <rects> <_> 8 0 2 1 -1.</_> <_> 9 0 1 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>3.0264389351941645e-004</threshold> <left_val>-0.3517409861087799</left_val> <right_val>0.1335210949182510</right_val></_></_> <_> <!-- tree 17 --> <_> <!-- root node --> <feature> <rects> <_> 15 0 4 3 -1.</_> <_> 15 1 4 1 3.</_></rects> <tilted>0</tilted></feature> <threshold>-0.0396366305649281</threshold> <left_val>0.3242065906524658</left_val> <right_val>-0.1959009021520615</right_val></_></_> <_> <!-- tree 18 --> <_> <!-- root node --> <feature> <rects> <_> 10 0 2 5 -1.</_> <_> 11 0 1 5 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0399224609136581</threshold> <left_val>-0.1189560964703560</left_val> <right_val>0.4463477134704590</right_val></_></_> <_> <!-- tree 19 --> <_> <!-- root node --> <feature> <rects> <_> 9 1 6 4 -1.</_> <_> 11 1 2 4 3.</_></rects> <tilted>0</tilted></feature> <threshold>-0.1424928009510040</threshold> <left_val>0.5641438961029053</left_val> <right_val>-0.0645077601075172</right_val></_></_> <_> <!-- tree 20 --> <_> <!-- root node --> <feature> <rects> <_> 6 1 9 4 -1.</_> <_> 9 1 3 4 3.</_></rects> <tilted>0</tilted></feature> <threshold>0.3615724146366119</threshold> <left_val>-0.1685543954372406</left_val> <right_val>0.3474895954132080</right_val></_></_> <_> <!-- tree 21 --> <_> <!-- root node --> <feature> <rects> <_> 20 3 2 2 -1.</_> <_> 20 4 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0400573015213013</threshold> <left_val>0.0593593604862690</left_val> <right_val>-0.5140206813812256</right_val></_></_> <_> <!-- tree 22 --> <_> <!-- root node --> <feature> <rects> <_> 0 3 2 2 -1.</_> <_> 0 4 2 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>3.2065549748949707e-004</threshold> <left_val>-0.5201929211616516</left_val> <right_val>0.1044785976409912</right_val></_></_> <_> <!-- tree 23 --> <_> <!-- root node --> <feature> <rects> <_> 2 3 20 2 -1.</_> <_> 12 3 10 1 2.</_> <_> 2 4 10 1 2.</_></rects> <tilted>0</tilted></feature> <threshold>0.0759185999631882</threshold> <left_val>0.0590211711823940</left_val> <right_val>-0.6039643287658691</right_val></_></_> <_> <!-- tree 24 --> <_> <!-- root node --> <feature> <rects> <_> 4 0 2 1 -1.</_> <_> 4 0 1 1 2.</_></rects> <tilted>1</tilted></feature> <threshold>8.8088903576135635e-003</threshold> <left_val>-0.3051787912845612</left_val> <right_val>0.1959865987300873</right_val></_></_> <_> <!-- tree 25 --> <_> <!-- root node --> <feature> <rects> <_> 17 4 3 1 -1.</_> <_> 18 4 1 1 3.</_></rects> <tilted>0</ti