python-图像模糊处理(赛氪OJ)

news2025/1/12 20:50:44

[题目描述]
给定 n 行 m 列的图像各像素点的灰度值,要求用如下方法对其进行模糊化处理:
1. 四周最外侧的像素点灰度值不变。
2. 中间各像素点新灰度值为该像素点及其上下左右相邻四个像素点原灰度值的平均(四舍五入)
输入:
输入共 n + 1 行,第一行包含两个整数 n,m (1 <= n,m <= 100),表示图像包含像素点的行数和列数。
接下来 n 行,每行 m 个整数,表示图像的每个像素点灰度,相邻两个整数之间用一个空格隔开。
输出:
输出共 n 行,每行 m 个整数,表示模糊处理后的图像,相邻整数用一个空格分隔开。
样例输入1
4 5
100 0 100 0 50
50 100 200 0 0
50 50 100 100 200
100 100 50 50 100

样例输出1
100 0 100 0 50
50 80 100 60 0
50 80 100 90 200
100 100 50 50 100

提示:
保证输入的每个像素点灰度的大小均在 0 ~ 255 之间。
来源/分类(难度系数:一星)


完整代码展示:
a,b=map(int,input().split())
c=[]
for i in range(a):
    d=list(map(int,input().split()))
    c.append(d)
if len(c)<3:
    e=0
    while e<len(c):
        sum=""
        for j in range(0,len(c[e])):
            sum+="{} ".format(c[e][j])
        print(sum)
        e+=1
else:
    e=0
    while e<len(c):
        sum=""
        for k in range(0,len(c[e])):
            if e>=1 and k>=1 and e<=len(c)-2 and k<=len(c[e])-2:
                sum+="{} ".format(round((c[e][k]+c[e-1][k]+c[e][k-1]+c[e+1][k]+c[e][k+1])/5))
            else:
                sum+="{} ".format(c[e][k])
        print(sum)
        e+=1


代码解释:
a,b=map(int,input().split())
 c=[]
 for i in range(a):
       d=list(map(int,input().split()))
       c.append(d)                 
              ”,,让用户输入矩阵的行数a和列数b。建立空列表c,让用户依次输入矩阵的每一行,并将其添加进列表c,以此循环a次。
if len(c)<3:
      e=0
      while e<len(c):
             sum=""
             for j in range(0,len(c[e])):
                   sum+="{} ".format(c[e][j])
             print(sum)
             e+=1                                        
 ”,当行数小于3时,不对矩阵中任何元素进行处理,打印原矩阵。
else:
       e=0
       while e<len(c):
               sum=""
               for k in range(0,len(c[e])):
                     if e>=1 and k>=1 and e<=len(c)-2 and k<=len(c[e])-2:
                          sum+="{} ".format(round((c[e][k]+c[e-1][k]+c[e][k-1]+c[e+1][k]+c[e][k+1])/5))
                    else:
                           sum+="{} ".format(c[e][k])
              print(sum)
              e+=1           
                                                  ”,当矩阵行数大于等于3时,对矩阵的非边缘元素进行题目所给的模糊处理(将其值替换为它及它上下左右的元素的和的平均值)。打印处理过后的矩阵。(解题核心:根据对矩阵的理解可判断行数列数大于等于2,且行数小于等于a-1,列数小于等于b-1的元素均为非边缘元素;非边缘元素周围的元素即该元素行,列数加减1的元素。)


运行效果展示:

d3fb93fe4a594a3fa39aff798a1fcb0a.jpg

a57e740956304f27aeb52fb2fcf7f716.jpg 

           (声明:以上内容均为原创) 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1888784.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pydub、ffmpeg 音频文件声道转换、采样率更改

转换成mono单声道 from pydub import AudioSegment# 加载MP3文件 mp3_file_path r"E:\allchat\output.wav" audio_segment AudioSegment.from_mp3(mp3_file_path)# 转换为单声道 audio_segment audio_segment.set_channels(1)# 导出为单声道MP3文件 mono_mp3_fil…

LinuxRT启动Veristand项目的配置文件

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

c语言回顾-数组(全网最详细,哈哈哈)

目录 前言&#xff0c;和小编一起感受数组的魅力&#xff01;&#xff01;&#xff01; 1.数组的概念 2.一维数组的创建和初始化 2.1数组创建 2.2数组的初始化 2.3数组的类型 3.一维数组的使用 3.1数组下标 3.2数组元素的输入输出 小结&#xff1a; 4.一维数组在内存…

SpringBoot环境集成 sms4j短信聚合

SpringBoot环境集成 sms4j短信聚合 官方文档 前言 在正式使用sms4j短信功能之前&#xff0c;请详细阅读本文档&#xff0c;依照本篇流程进行操作和配给&#xff0c;即可解决大部分问题&#xff0c;如对我们的文档有建议&#xff0c;请联系开发者团队&#xff0c; 我们将根据可…

Spring与Quartz整合

Quartz框架是一个轻量级的任务调度框架&#xff0c;它提供了许多内置的功能&#xff0c;包括&#xff1a;支持作业的调度、集群调度、持久化、任务持久化、任务依赖、优先级、并发控制、失败重试等。同时也支持自定义作业类型和触发器类型。与Spring整合步骤如下&#xff1a; …

怎么参与场外期权?

今天期权懂带你了解怎么参与场外期权&#xff1f; 目前个人投资者暂时还不能直接参与场外个股期权&#xff0c;因为场外个股期权现在只能机构来进行交易。 所以个人投资者目前只能通过机构通道来进行操作&#xff0c;类似期权懂&#xff0c;找到期权懂经理&#xff0c;然后通…

思维,CF 739A - Alyona and mex

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 739A - Alyona and mex 二、解题报告 1、思路分析 我们考虑区间mex运算的值最大也就是区间长度&#xff0c;所以我们最大值的上界就是所有区间中的最小长度&#xff0c;假如记为mi 我们一定可以构造出答案…

详解HTTP:常用的密钥交换算法RSA与ECDHE

HTTPS 常用的密钥交换算法&#xff1a;RSA 与 ECDHE 在 HTTPS 中&#xff0c;密钥交换算法扮演了至关重要的角色&#xff0c;确保数据在传输过程中的安全性。目前常用的密钥交换算法主要有两种&#xff1a;RSA 和 ECDHE。相比于较为传统的 RSA&#xff0c;ECDHE 由于具备前向安…

软连接迁移 Docker 的默认安装(存储)目录

前言 经常我们会拿到一些别人装好的服务器&#xff0c;需要在这些系统上启动我们的docker服务。 但是这些“专业人员”呢&#xff0c;有时候就会有非常不专业的操作&#xff0c;比如他把根目录/只划分50GB&#xff0c;/home却有51TB。这个时候就会导致我们的服务器还有很多空间…

java+mysql教师管理系统

完整源码地址 教师信息管理系统使用命令行交互的方式及数据库连接实现教师信息管理系统&#xff0c;该系统旨在实现教师信息的管理&#xff0c;并根据需要进行教师信息展示。该软件的功能有如下功能 (1)基本信息管理(教师号、姓名、性别、出生年月、职称、学历、学位、教师类型…

工业实时操作系统对比:鸿道Intewell跟rt-linux有啥区别

Intewell和RT-Linux是两种不同的实时操作系统&#xff08;RTOS&#xff09;&#xff0c;它们具有各自独特的特点和优势。以下是Intewell操作系统的一些关键特性&#xff0c;以及与RT-Linux的比较&#xff1a; 自主研发&#xff1a;Intewell是由科东软件自主研发的工业嵌入式实…

监控与安全服务

kali 系统 nmap扫描 网段的扫描 使用脚本扫描 使用john破解密码 哈希算法是一种单向加密的算法&#xff0c;也就是将原始数据生成一串“乱码”只能通过原始数据&#xff0c;生成这串“乱码”&#xff0c;但是不能通过“乱码”回推出原始数据相同的原始数据&#xff0c;生成的乱…

数据治理体系建设方案

数据治理体系建设方案 在当前的大数据时代&#xff0c;数据已经成为企业核心资产之一&#xff0c;其管理与治理的重要性愈加凸显。有效的数据治理体系不仅能提升数据质量和数据使用的效率&#xff0c;还能为企业创造更多的商业价值。本文将详细阐述数据治理的重要性、核心要素…

星辰资讯 | TiUP v1.16 发版,支持 PD 微服务

如果你对 TiDB 还不太了解&#xff0c;或者你对数据库安装部署的认知仍然停留在手动和脚本时代&#xff0c;那么&#xff0c;请先戳这里了解一下 TiUP 神器&#xff1a; 震惊&#xff01;数据库小白装国产数据库只需10分钟&#xff01; TiDB 7.x 源码编译之 TiUP 篇 TiUP&#…

师傅们 ~ 2024HW一手资料

各位师傅们&#xff0c;2024HW来了&#xff01; 从2026年开始&#xff0c;随着我国对网络安全的重视&#xff0c;涉及单位不断增加&#xff0c;越来越多单位和个人都加入到HW当中。 2024HW就在眼前&#xff0c; 那么还有不了解或者还没投简历面试的朋友们&#xff0c;需要注意…

Python23 使用Tensorflow实现线性回归

TensorFlow 是一个开源的软件库&#xff0c;用于数值计算&#xff0c;特别适用于大规模的机器学习。它由 Google 的研究人员和工程师在 Google Brain 团队内部开发&#xff0c;并在 2015 年首次发布。TensorFlow 的核心是使用数据流图来组织计算&#xff0c;使得它可以轻松地利…

​​​​Linux LVS 负载均衡群集

在业务量达到一定量的时候&#xff0c;往往单机的服务是会出现瓶颈的。此时最常见的方式就是通过负载均衡来进行横向扩展。其中我们最常用的软件就是 Nginx。通过其反向代理的能力能够轻松实现负载均衡&#xff0c;当有服务出现异常&#xff0c;也能够自动剔除。但是负载均衡服…

GB28181百万路视频接入

重定向 国标28181在设计时就考虑了&#xff0c;省区县多层级接入&#xff0c;接入上限就考虑了呼叫重定向&#xff1a; IETF RFC3261 规定的SIP逻辑实体,负责规划SIP呼叫路由。它将获得的呼叫下一跳地址信息 告诉呼叫方,以使呼叫方根据此地址直接向下一跳发出请求,此后重定向服…

在 WebGPU 与 Vulkan 之间做出正确的选择(Making the Right Choice between WebGPU vs Vulkan)

在 WebGPU 与 Vulkan 之间做出正确的选择&#xff08;Making the Right Choice between WebGPU vs Vulkan&#xff09; WebGPU 和 Vulkan 之间的主要区别WebGPU 是什么&#xff1f;它适合谁使用&#xff1f;Vulkan 是什么&#xff1f;它适合谁使用&#xff1f;WebGPU 和 Vulkan…

Vue3Echarts实用的双层饼图

在公司客户端项目开发中&#xff0c;用来区分已处理与未处理两个状态的双层饼图&#xff0c;以下是项目案例&#xff1a; 下载Echarts //npm npm install echarts --save//淘宝镜像cnpm(安装速度快) cnpm install echarts --save//yarn yarn add echarts 代码示例 <temp…