protected void computeWeights ( int numSamples , double numSigmas ) { weights = new float [ numSamples * numSamples ] ; float w [ ] = new float [ numSamples ] ; for ( int i = 0 ; i < numSamples ; i ++ ) { float x = i / ( float ) ( numSamples - 1 ) ; w [ i ] = ( float ) UtilGaussian . computePDF ( 0 , 1 , 2f * numSigmas * ( x - 0.5f ) ) ; } for ( int y = 0 ; y < numSamples ; y ++ ) { for ( int x = 0 ; x < numSamples ; x ++ ) { weights [ y * numSamples + x ] = w [ y ] * w [ x ] ; } } }
compute the weights by convolving 1D gaussian kernel