Python 实现图像模糊化:输入像素值,输出处理后图像(附代码及详细解释)
以下是使用 Python 实现对图像进行模糊化处理的代码: ```python # 读取输入的行数 n 和列数 m n, m = map(int, input().split()) # 初始化图像矩阵 image = [] # 读取图像的每个像素点的值 for _ in range(n): row = list(map(int, input().split())) image.append(row) # 初始化模糊处理后的图像矩阵 blurred_image = [row[:] for row in image] # 对中间的像素点进行模糊处理 for i in range(1, n - 1): for j in range(1, m - 1): # 计算当前像素点及其上下左右相邻四个像素点值的总和 total = image[i][j] + image[i - 1][j] + image[i + 1][j] + image[i][j - 1] + image[i][j + 1] # 计算平均值并向下取整 blurred_image[i][j] = total // 5 # 输出模糊处理后的图像 for row in blurred_image: print(" ".join(map(str, row))) ``` 代码解释: 1. 输入读取: - 首先读取输入的行数 `n` 和列数 `m`。 - 然后通过循环读取 `n` 行,每行包含 `m` 个整数,将其存储在 `image` 矩阵中。 2. 初始化模糊图像矩阵: - `blurred_image` 初始化为 `image` 的副本,这样可以保证四周最外侧的像素点的值不变。 3. 模糊处理: - 使用两层循环遍历中间的像素点(即不包括四周最外侧的像素点)。 - 对于每个中间像素点,计算其自身及其上下左右相邻四个像素点值的总和。 - 将总和除以 5 并向下取整,得到新的像素值,更新 `blurred_image` 矩阵。 4. 输出结果: - 遍历 `blurred_image` 矩阵,将每行的元素转换为字符串并用空格连接起来,然后输出。 复杂度分析: - 时间复杂度:$O(n * m)$,其中 $n$ 是行数,$m$ 是列数。因为需要遍历矩阵中的每个元素。 - 空间复杂度:$O(n * m)$,主要用于存储模糊处理后的图像矩阵。 ######[AI问答 | 555点数解答 | 2025-12-09 12:22:26]
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)457
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)342
- 巧判小朋友同桌意愿:满足需求还是无解难题?(字节豆包 | 599点数解答 | 2025-11-16 20:06:12)66
- 巧用代码判断:能否让 2n 个小朋友都拥有满意同桌?(字节豆包 | 445点数解答 | 2025-11-16 20:07:02)77
- 探寻数组中最长摆动子序列长度:思路剖析与代码优化(GPT | 758点数解答 | 2024-12-23 23:18:29)263
- 独家剖析:求解数组最长摆动子序列长度的代码实现与改进建议(GPT | 350点数解答 | 2024-12-23 23:20:54)260
- 缜密逻辑,全新无名杀“风餐”技能代码精心打造与深度解析 (字节豆包 | 469点数解答 | 2025-04-05 11:37:06)239
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)414
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)405
- CentOS下Java进程出现futex_wait_queue_me问题的处理全流程(阿里通义 | 283点数解答 | 2023-11-20 14:51:26)457
- 替雷利珠单抗致免疫相关性糖尿病:病例报道与机制探讨,为临床用药敲响警钟( | 164点数解答 | 2024-10-11 14:52:52)263
- Java 实现“myframe”窗口:含复制与关闭功能!(字节豆包 | 385点数解答 | 2024-11-12 14:15:28)198