2024年MathorCup数模竞赛B题问题一二三+部分代码分享

news2024/11/26 23:43:46

inputFolderPath = 'E:\oracle\images\';

outputFolderPath = 'E:\oracle\process\';

% 获取文件夹中所有图片的文件列表

imageFiles = dir(fullfile(inputFolderPath, '*.jpg'));

% 设置colorbar范围阈值

threshold = 120;

% 遍历每个图片文件

for i = 1:length(imageFiles)

% 读取图片

currentImage = imread(fullfile(inputFolderPath, imageFiles(i).name));

% 创建一个二值化图像,大于阈值的部分为1,其余部分为0

binaryImage = currentImage(:,:,1) > threshold;

% 将大于阈值的部分设为黑色,其余部分设为白色

resultImage = uint8(cat(3, ~binaryImage * 255, ~binaryImage * 255, ~binaryImage * 255));

% 保存新生成的图像到新的文件夹

[~, name, ext] = fileparts(imageFiles(i).name);

resultFileName = fullfile(outputFolderPath, [regexprep(name, '_filtered', '') ext]);

imwrite(resultImage, resultFileName);

end

 

1.降噪与细化处理:应用中值滤波和阈值法(大津算法Otsu's method)来减少噪声(去除了甲骨文内部一些白色噪点,同时将背景中大部分噪点去除,并将甲骨上边缘模糊的地方进行细化操作处理,注意保证甲骨文的清晰程度)

中值滤波降噪: 对甲骨文图像进行中值滤波操作,以减少图像中的噪声。

细化处理: 可以采用形态学操作中的细化算法对甲骨文边缘进行进一步细化,以保证甲骨文的清晰度。

 

import os
import cv2

def denoise_image(image):
    # 中值滤波
    denoised_image = cv2.medianBlur(image, 5)  # 中值滤波

    # 高斯滤波
    # denoised_image = cv2.GaussianBlur(image, (7, 7), 0)  # 高斯滤波

    return denoised_image

# 输入和输出目录
input_folder = 'E:/oracle/process1/'
output_folder = 'E:/oracle/process2/'

# 确保输出目录存在
if not os.path.exists(output_folder):
    os.makedirs(output_folder)

# 处理多张图片
for filename in os.listdir(input_folder):
    # 读取图像
    image_path = os.path.join(input_folder, filename)
    image = cv2.imread(image_path)

    # 降噪
    denoised_image = denoise_image(image)

    # 保存结果
    output_path = os.path.join(output_folder, filename)
    cv2.imwrite(output_path, denoised_image)

 

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

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

相关文章

【NLP练习】调用Gensim库训练Word2Vec模型

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 一、准备工作 1.安装Gensim库 使用pip安装: !pip install gensim2. 对原始语料分词 选择《人民的民义》的小说原文作为语料,先采用…

12.4.1 实验1:配置CDP

12.4.1 实验1:配置CDP 1、实验目的 通过本实验可以掌握: CDP特征。CDP配置和调试方法。通过CDP查看设备直连邻居信息的方法。 2、实验拓扑 配置CDP的实验拓扑如上图所示。 3、实验步骤 (1)配置路由器R1 R1(config)#interface serial 0…

js解密心得,记录一次抓包vue解密过程

背景 有个抓包结果被加密了 1、寻找入口,打断点 先正常请求一次,找到需要的请求接口。 寻找入口,需要重点关注几个关键字:new Promise 、new XMLHttpRequest、onreadystatechange、.interceptors.response.use、.interceptors.r…

SpringBoot与MyBatisPlus的依赖版本冲突问题

记录使用SpringBoot和MyBatisPlus时遇到的版本冲突问题解决。 java版本:jdk17 废话:)目前在IDEA中使用Spring官方的脚手架最低jdk版本竟然是jdk17了。 当使用SpringBoot3.0版本(3.2.4),配合使用MP3.5.2版本时报错: Er…

MongoDB的安装和使用

1.MongoDB 安装 1.1 基于Docker安装 docker run --restartalways -d --name mongo -v /opt/mongodb/data:/data/db -p 27017:27017 mongo:4.0.6 1.2 客户端工具使用 MongoDB Compass | MongoDB 2.MongoDB 使用 2.1 引用依赖包 <dependency><groupId>org.sprin…

基于单片机的智能居家火灾报警系统

摘要:采用STC15L2K32单片机设计了一种智能火灾报警系统,它是控制中心与多个不同功能的探测模块构成,实现了一个中心、多点辐射的火灾检测和报警功能。 关键词:智能居家,火灾报警系统,单片机,模块化设计。 0 引言 近些年电子技术、计算机技术为火灾报警系统和灭火系统在…

element-ui的年份范围选择器,选择的年份需等于或小于当前年份,选择的年份范围必须在三年之内

写在前面 日期限制处理&#xff08;禁用&#xff09;&#xff0c;下面我以我这边的需求为例&#xff0c; 选择的年份需等于或小于当前年份 选择的年份范围必须在三年之内 1.限制起始日期小于截止日期 1&#xff09;根据用户选中的开始日期&#xff0c;置灰不可选的日期范围&…

地理空间分析中的深度学习应用

深度学习与地理信息系统 (GIS) 的结合彻底改变了地理空间分析和遥感的格局。这种结合将遥感和地理空间分析领域带到了全球研究人员和科学家的前沿。 深度学习是机器学习的一个复杂子集&#xff08;更多关于机器学习的内容&#xff0c;请参阅我的其他文章&#xff09;&#xff0…

Harmony鸿蒙南向外设驱动开发-Camera

功能简介 OpenHarmony相机驱动框架模型对上实现相机HDI&#xff08;Hardware Device Interface&#xff09;接口&#xff0c;对下实现相机Pipeline模型&#xff0c;管理相机各个硬件设备。 该驱动框架模型内部分为三层&#xff0c;依次为HDI实现层、框架层和设备适配层。各层基…

【c 语言】结构体的定义格式及变量初始化

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;C语言 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进步&…

vue3 依赖-组件tablepage-vue3说明文档,列表页快速开发,使用思路及范例(Ⅳ)其他配置项

vue3 依赖-组件tablepage-vue3说明文档&#xff0c;列表页快速开发&#xff0c;使用思路及范例&#xff08;Ⅰ&#xff09;配置项文档 vue3 依赖-组件tablepage-vue3说明文档&#xff0c;列表页快速开发&#xff0c;使用思路及范例&#xff08;Ⅱ&#xff09;搜索及数据获取配…

可视化大屏的应用(13):在智慧校园的九项应用

实时数据展示 可视化大屏可以将各类实时数据以图表、图形等形式展示出来&#xff0c;如学生人数、教职工分布、教室使用情况、图书馆座位情况等。通过直观的数据展示&#xff0c;帮助学校管理人员和教职工了解校园的运行状况&#xff0c;及时做出决策和调整。 信息发布与通知 …

BERT论文解读及情感分类实战

文章目录 简介BERT文章主要贡献BERT模型架构技术细节任务1 Masked LM&#xff08;MLM&#xff09;任务2 Next Sentence Prediction (NSP)模型输入 下游任务微调GLUE数据集SQuAD v1.1 和 v2.0NER 情感分类实战IMDB影评情感数据集数据集构建模型构建超参数设置训练结果注意事项 简…

MES实施优势有哪些?MES制造执行系统的主要内容

各个行业之间也开始进入到了激烈的竞争当中&#xff0c;很多企业为了能够有效提升企业竞争力&#xff0c;都会通过提升自身实力的方式来提升竞争力。一些制造业也会在经营过程当中使用到MES系统&#xff0c;那么&#xff0c;mes系统的优势有哪些呢&#xff1f; 1、优化企业现场…

O2OA开发平台如何查看数据表结构?

在访问后端api地址&#xff0c;页面最下方有列示平台的各个服务&#xff0c;点击进入可查看具体的表内容 后端api地址&#xff1a; http://{hostIP}/x_program_center/jest/list.html 其中&#xff1a;{hostIP}为中心服务器所在域名或者IP地址 如下图&#xff1a;

位像素海外仓管理系统对接ERP系统教程,一对一教学

在海外仓管理过程中&#xff0c;对接ERP系统的重要性不言而喻的。这种对接不仅能让数据实时共享&#xff0c;还能让海外仓管理者优化整个供应链管理流程。 因此&#xff0c;今天小编就来教大家&#xff0c;海外仓仓库系统是怎么对接ERP物流系统的&#xff1f; 1.分析需求 在对接…

C/C++:实现一个柱状统计图

C/C&#xff1a;实现一个柱状统计图 如果想要实现一个柱状统计图&#xff0c;其实有两点需要考虑&#xff1a; 数据的存储方式数据的收集数据的显示 我们以统计字符的个数为例子&#xff0c;进行说明。 首先是数据的存储方式&#xff0c;怎么存储最好呢&#xff1f; C的STL…

数据结构课程设计(八)---排序算法比较 [排序]

1.8.1 题目内容 1.8.1-A [问题描述] 利用随机函数产生10个样本&#xff0c;每个样本有50000个随机整数&#xff08;并使第一个样本是正序&#xff0c;第二个样本是逆序&#xff09;&#xff0c;利用直接插入排序、希尔排序&#xff0c;冒泡排序、快速排序、选择排序、堆排序&a…

搭建Maven的Nexus3私服

搭建Maven的Nexus3私服 1、常见的Maven私服产品 Apache的ArchivaJFrog的ArtifactorySonatype的Nexus&#xff08;[ˈneksəs]&#xff09;&#xff08;当前最流行、使用最广泛&#xff09; 2. windows java8安装和配置私服Nexus3 参考&#xff1a; https://zhuanlan.zhihu…

【INNODB引擎篇】深奥探究Innodb存储引擎

&#x1f525;作者主页&#xff1a;小林同学的学习笔录 &#x1f525;mysql专栏&#xff1a;小林同学的专栏 目录 1.InnoDB引擎 1.1 逻辑存储结构 1.2 架构 1.2.1 概述 1.2.2 内存结构 1.2.3 磁盘结构 1.2.4 后台线程 1.3 事务原理 1.3.1 事务基础 1.3.2 redo log 1.…