Gaussian blurเป็นวิธีที่ใช้สำหรับการทำให้ภาพเบลออย่างราบรื่น มันเกี่ยวข้องกับการสร้างเมทริกซ์ซึ่งจะใช้โดยการโน้มน้าวกับพิกเซลของภาพ ในการท้าทายนี้งานของคุณคือการสร้างเมทริกซ์ที่ใช้ในการเบลอแบบเกาส์ คุณจะใช้อินพุท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