All pastes #813961 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-12-12 22:16 UTC
rendered paste body
template <typename T> T* Matrix<T>::GetGaussianMask(int* size, float sigma) {                                                                                             
        T *mask = new T[size[0]*size[1]];                                                                                                                                 
                                                                                                                                                                          
        for(int y = -1* (size[1]/2) ; y <= size[1] / 2; y++) {                                                                                                            
                for(int x = -1 * (size[0] / 2); x <= size[0] / 2; x++) {                                                                                                  
                        mask[y+(size[1]/2) * size[0] + x+(size[0]/2)] = ( (1 / sigma * sqrt(2 * PI)) * exp(- (x*x + y*y) / 2*sigma*sigma) );                                                                     
                }                                                                                                                                                         
        }                                                                                                                                                                 
        return mask;                                                                                                                                                      
}