Форум: Форум C++Разное
Новые темы: 00
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: фильтр гаусса
 
 автор: avkrus   (22.05.2012 в 19:17)   письмо автору
 
 

Надо написать фильтр Гаусса. После попыток его написать изображение почему-то затемняется, хотя вроде по алгоритму все верно. Вот наработка. Язык С++.

double s = 0;
double r = 1.398;
double r2 = 2 * r * r;
int n = 3;
double ss;
double color;
double **w = new double *[n];

for (int i = 0; i < n; i++) {
    w[i] = new double[n];
}

for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
        ss = (i * i + j * j) / r2;
        w[i][j] = 1 / (sqrt(M_PI * r2)) * exp(ss * (-1.0));
        s += w[i][j];
    }
    for (int j = 0; j < n; j++) {

        w[i][j] = w[i][j] / s;
    }
}

for (int yi = n; yi < height - n; yi++) {
    for (int xj = n; xj < width - n; xj++) {
        for (int i = 0; i < n; i++) {
            color = 0;
            for (int j = 0; j < n; j++) {
                color += w[i][j] * LightMap[(int) (i + yi)][(int) (j + xj)];
            }
        }
        LightMap[(int) (yi)][(int) (xj)] = color;
    }
}


LightMap - двумерный массив с насыщенностью цветов изображения (градация серого) в чем ошибка?

  Ответить  
 
 автор: KernelPanic   (23.05.2012 в 01:06)   письмо автору
 
   для: avkrus   (22.05.2012 в 19:17)
 

Может коэффициент неправильно задан?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования