Протестируйте окружающие ненулевые элементы

Это - следующая часть ниже:

2) Дополнительный вопрос:

После получения среднего числа ненулевых соседей я также хочу протестировать, если соседние элементы равны, меньше, или больше, чем среднее число ненулей. Если это больше или равно затем '1' или иначе '0'.

Примечание: если соседи с в радиусе двух или больше центров, берут самое маленькое среднее число центра для тестирования.

    0    12     9     
    4  **9**    15     
   11    19     0 

'9' в середине в радиусе 12, 15, и 19 центров, поэтому возьмите минимальное среднее число тех минут [9.000, 9.000, 8.000] =8.000

Например, когда радиус = 1 м или 1 элемент далеко.

new_x =

     0         0          0          0         0
     0         0     **9.0000**    9.0000      0
     0      4.0000     9.0000    **9.0000**    0
     0    **8.3333** **8.0000**      0         0
     0      2.0000     4.0000      8.0000      0
     0      4.0000     5.0000      8.0000      0
     0         0          0          0         0

Test_x =

     0         0           0           0         0
     0         0       **9.0000**      1         0
     0         0           1       **9.0000**    0
     0    **8.3333**   **8.0000**      0         0
     0         0           0           0         0
     0         0           0           0         0
     0         0           0           0         0

=================================================================================

1) Скажите, есть ли у меня матрица, показанная как ниже,

X =

 0     0     0     0     0
 0     0    12     9     0
 0     4     9    15     0
 0    11    19     0     0
 0     2     4     8     0
 0     4     5     8     0
 0     0     0     0     0

и я хочу найти среднее число окружающих ненулевых элементов, которое больше, чем 10. Остальная часть элементов все еще остается тем же т.е. элементами <10.

Таким образом, я хочу свое решение посмотреть что-то как,

new_x =

     0         0         0         0         0
     0         0    9.0000    9.0000         0
     0    4.0000    9.0000    9.0000         0
     0    8.3333    8.0000         0         0
     0    2.0000    4.0000    8.0000         0
     0    4.0000    5.0000    8.0000         0
     0         0         0         0         0

Нет: то, что я не только смотрю на соседей элемента, это больше, чем некоторое значение (т.е. 10 в этом случае).

Позволяет говорят любые элементы, которые это, больше, чем 10, 'центр', и мы хотим найти, что среднее число ненулей с радиусом говорит что 1 м где 1 метр = 1 элемент далеко от центра.

Примечание: Это не могло бы всегда быть на расстоянии в 1 метр в радиусе т.е. может быть 2 или больше. В этом случае это привычка быть просто вершиной, нижней частью, левой и правой из центра.

**** Также знайте о матричной границе. Например, когда радиус = 2 или больше, часть среднего числа ненулевых соседей отсутствует сторона граница. **

Например,

Для радиуса =1 м = 1 элемент далеко, new_x = среднее число [(i+1, j), (i-1, j), (я, j+1) и (я, j-1)] - вершина, нижняя часть, право, и оставленный центра.

Для радиуса =2 м = 2 элемента далеко, new_x = среднее число [(i+1, j), (i+2, j), (i-1, j), (i-2, j), (я, j+1), (я, j+2), (я, j-1), (я, j-2), (i+1, j+1), (i+1, j-1), (i-1, j-1), и (i-1, j+1)].

==================================================================

Я попробовал несколько вещей прежде, однако я не знаком с функциями.

Поэтому помогите мне решить проблему.

Заранее спасибо.

5
задан Nadhris 11 August 2010 в 02:55
поделиться