public void learnFern ( boolean positive , ImageRectangle r ) { float rectWidth = r . getWidth ( ) ; float rectHeight = r . getHeight ( ) ; float c_x = r . x0 + ( rectWidth - 1 ) / 2f ; float c_y = r . y0 + ( rectHeight - 1 ) / 2f ; for ( int i = 0 ; i < ferns . length ; i ++ ) { // first learn it with no noise int value = computeFernValue ( c_x , c_y , rectWidth , rectHeight , ferns [ i ] ) ; TldFernFeature f = managers [ i ] . lookupFern ( value ) ; increment ( f , positive ) ; } }
Learns a fern from the specified region . No noise is added .