Гауссова розмитість - метод, що використовується для плавного розмивання зображень. Він передбачає створення матриці, яка буде використовуватися шляхом згортання її з пікселями зображення. У цьому завданні ваше завдання полягає в тому, щоб побудувати ту матрицю, яку використовують у розмитті Гаусса. Ви візьмете вхід r, який буде радіусом розмиття, і вхід σ, який буде стандартним відхиленням для побудови матриці з розмірами (2 r + 1 × 2 r + 1). Кожне значення в цій матриці матиме значення ( x , y ), яке залежить від його абсолютної відстані в кожному напрямку від центру і буде використовуватися для обчислення G ( x , y ), де формулаГ є
Наприклад, якщо r = 2, ми хочемо генерувати матрицю 5 x 5. По-перше, матриця значень ( x , y ) є
(2, 2) (1, 2) (0, 2) (1, 2) (2, 2)
(2, 1) (1, 1) (0, 1) (1, 1) (2, 1)
(2, 0) (1, 0) (0, 0) (1, 0) (2, 0)
(2, 1) (1, 1) (0, 1) (1, 1) (2, 1)
(2, 2) (1, 2) (0, 2) (1, 2) (2, 2)
Тоді нехай σ = 1,5 і застосуємо G до кожного ( x , y )
0.0119552 0.0232856 0.0290802 0.0232856 0.0119552
0.0232856 0.0453542 0.0566406 0.0453542 0.0232856
0.0290802 0.0566406 0.0707355 0.0566406 0.0290802
0.0232856 0.0453542 0.0566406 0.0453542 0.0232856
0.0119552 0.0232856 0.0290802 0.0232856 0.0119552
Зазвичай при розмитті зображення ця матриця буде нормалізована шляхом взяття суми всіх значень цієї матриці та ділення на неї. Для цього завдання це не потрібно, а вихідні значення, обчислені за формулою, - це те, яким повинен бути вихід.
Правила
- Це код-гольф, тому найкоротший код виграє.
- Вхід r буде невід’ємним цілим числом, а σ - додатним дійсним числом.
- Вихід повинен представляти матрицю. Він може бути відформатований як 2d масив, рядок, що представляє 2d масив, або щось подібне.
- Неточності з плаваючою комою не будуть зараховані проти вас.
Випробування
(r, σ) = (0, 0.25)
2.54648
(1, 7)
0.00318244 0.00321509 0.00318244
0.00321509 0.00324806 0.00321509
0.00318244 0.00321509 0.00318244
(3, 2.5)
0.00603332 0.00900065 0.0114421 0.012395 0.0114421 0.00900065 0.00603332
0.00900065 0.0134274 0.0170696 0.0184912 0.0170696 0.0134274 0.00900065
0.0114421 0.0170696 0.0216997 0.023507 0.0216997 0.0170696 0.0114421
0.012395 0.0184912 0.023507 0.0254648 0.023507 0.0184912 0.012395
0.0114421 0.0170696 0.0216997 0.023507 0.0216997 0.0170696 0.0114421
0.00900065 0.0134274 0.0170696 0.0184912 0.0170696 0.0134274 0.00900065
0.00603332 0.00900065 0.0114421 0.012395 0.0114421 0.00900065 0.00603332
(4, 3.33)
0.00339074 0.00464913 0.00582484 0.00666854 0.00697611 0.00666854 0.00582484 0.00464913 0.00339074
0.00464913 0.00637454 0.00798657 0.0091434 0.00956511 0.0091434 0.00798657 0.00637454 0.00464913
0.00582484 0.00798657 0.0100063 0.0114556 0.011984 0.0114556 0.0100063 0.00798657 0.00582484
0.00666854 0.0091434 0.0114556 0.013115 0.0137198 0.013115 0.0114556 0.0091434 0.00666854
0.00697611 0.00956511 0.011984 0.0137198 0.0143526 0.0137198 0.011984 0.00956511 0.00697611
0.00666854 0.0091434 0.0114556 0.013115 0.0137198 0.013115 0.0114556 0.0091434 0.00666854
0.00582484 0.00798657 0.0100063 0.0114556 0.011984 0.0114556 0.0100063 0.00798657 0.00582484
0.00464913 0.00637454 0.00798657 0.0091434 0.00956511 0.0091434 0.00798657 0.00637454 0.00464913
0.00339074 0.00464913 0.00582484 0.00666854 0.00697611 0.00666854 0.00582484 0.00464913 0.00339074