图像模糊

题目描述

小蓝有一张黑白图像,由nxm个像素组成,其中从上到下共n行,每行从左到右 m列。每个像素由一个0到255之间的灰度值表示。 现在,小蓝准备对图像进行模糊操作,操作的方法为:对于每个像素,将以它为中心3x3区域内的所有像素(可能是9个像素或少于9个像素)求和后除以这个范围内的像素个数(取下整),得到的值就是模糊后的结果 请注意每个像素都要用原图中的灰度值计算求和。

输入描述

输入的第一行包含两个整数n,m。 第2行到第n+1行每行包含m个整数,表示每个像素的灰度值,相邻整数之间用一个空格分隔其中,1<n,m<100

输出描述

输出n行,每行m个整数,相邻整数之间用空格分隔,表示模糊后的图像。

Mycode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
n,m=map(int,input().split())
a=[]
b=[[0]*m for i in range(n)]
for i in range(n):
a.append(list(map(int,input().split())))
for i in range(n):
for j in range(m):
suma=0
c=0
for k in range(i-1,i+2):
for l in range(j-1,j+2):
if 0<=k<n and 0<=l<m:
suma=suma+a[k][l]
c=c+1
b[i][j]=suma//c
for i in b:
print(" ".join(map(str,i)))

图像模糊
https://ianwusb.blog/2024/04/08/图像模糊/
作者
Ianwusb
发布于
2024年4月8日
许可协议