python如何将mat文件转为png


Posted in Python onJuly 15, 2022

将mat文件转为png

花费了很大力气做这件事,总是出现各种错误,现在终于解决了

from PIL import Image
import matplotlib.pyplot as plt
import glob
import os
import numpy as np
import mat73
 
# 数据矩阵转图片的函数
def MatrixToImage(data):
    data = data*255
    new_im = Image.fromarray(data.astype(np.uint8))
    return new_im
 
def mkdir(path):
    folder = os.path.exists(path)
    if not folder:  # 判断是否存在文件夹如果不存在则创建为文件夹
        os.makedirs(path)  # makedirs 创建文件时如果路径不存在会创建这个路径
        print("--- create new folder...  ---")
    else:
        print("---  There is this folder!  ---")
 
# Get all png files under the input folder
input_img_path = glob.glob("I:/CCCC--数据集/去噪/dnd_2017/input/*.mat")
save_path = "blur13x13/"
 
 
mkdir(save_path)  # 调用函数
i = 0
 
for file in input_img_path:
    file_name = file.split('\\')[-1]
 
    try:
        mat = mat73.loadmat(file)
        new_name = str(mat.keys())
        key_name = list(mat.keys())[-1]
        key_name = mat[key_name]
        print(key_name.shape)
        new_im = MatrixToImage(key_name)
        plt.imshow(key_name,  interpolation='nearest')
        new_im.save(save_path+'{}.png'.format(file_name))
    except Exception as e:
        pass
 
    i = i + 1
    print("The", i, "picture is currently being processed")
    continue

完整代码如上,只需要修改输入的mat文件夹路径即可~

将图片转换为mat格式

import cv2
import numpy as np
import h5py
import math
import glob
import os
import scipy.io as io
 
def save_to_mat(img,output_name):
    new_data_path = os.path.join(os.getcwd(),"matType")
    if not os.path.isdir(new_data_path):
        os.mkdir(new_data_path)
    npy_data = np.array(img,dtype= "uint16")
    np.save(new_data_path+'/{}.npy'.format(output_name),npy_data)
    npy_load = np.load(new_data_path+'/{}.npy'.format(output_name))
    io.savemat(new_data_path+'/{}.mat'.format(output_name),{'data':npy_load})

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pyv8学习python和javascript变量进行交互
Dec 04 Python
python转换摩斯密码示例
Feb 16 Python
python命令行参数解析OptionParser类用法实例
Oct 09 Python
python通过字典dict判断指定键值是否存在的方法
Mar 21 Python
python代码 if not x: 和 if x is not None: 和 if not x is None:使用介绍
Sep 21 Python
python实现12306火车票查询器
Apr 20 Python
对python内置map和six.moves.map的区别详解
Dec 19 Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
Jun 17 Python
Python实现 PS 图像调整中的亮度调整
Jun 28 Python
浅谈Pytorch中的torch.gather函数的含义
Aug 18 Python
python中读入二维csv格式的表格方法详解(以元组/列表形式表示)
Apr 24 Python
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
Apr 14 Python
python读取mat文件生成h5文件的实现
Jul 15 #Python
全网非常详细的pytest配置文件
Jul 15 #Python
Python如何加载模型并查看网络
Jul 15 #Python
Python绘制散点图之可视化神器pyecharts
Jul 07 #Python
Python可视化神器pyecharts之绘制箱形图
Jul 07 #Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 #Python
Django数据库(SQlite)基本入门使用教程
Jul 07 #Python
You might like
php 将excel导入mysql
2009/11/09 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
Extjs在exlipse中设置自动提示的方法
2010/04/07 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
利用javascript实现全部删或清空所选的操作
2014/05/27 Javascript
extjs 如何给column 加上提示
2014/07/29 Javascript
javascript父、子页面交互技巧总结
2014/08/08 Javascript
js面向对象之公有、私有、静态属性和方法详解
2015/04/17 Javascript
JavaScript基础重点(必看)
2016/07/09 Javascript
jquery根据一个值来选中select下的option实例代码
2016/08/29 Javascript
jQuery插件FusionCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/06 Javascript
JavaScript循环遍历你会用哪些之小结篇
2018/09/28 Javascript
ant design pro中可控的筛选和排序实例
2020/11/17 Javascript
使用go和python递归删除.ds store文件的方法
2014/01/22 Python
Python中使用 Selenium 实现网页截图实例
2014/07/18 Python
Python合并两个字典的常用方法与效率比较
2015/06/17 Python
浅谈Scrapy框架普通反爬虫机制的应对策略
2017/12/28 Python
python批量替换页眉页脚实例代码
2018/01/22 Python
Python实现的随机森林算法与简单总结
2018/01/30 Python
django query模块
2019/04/20 Python
Python3多线程版TCP端口扫描器
2019/08/31 Python
关于Pytorch的MLP模块实现方式
2020/01/07 Python
python开发一款翻译工具
2020/10/10 Python
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
2013/06/06 HTML / CSS
国外平面设计素材网站:The Hungry JPEG
2017/03/28 全球购物
英国最大的邮寄种子和植物公司:Thompson & Morgan
2017/09/21 全球购物
学习党课思想汇报
2013/12/29 职场文书
关于工资低的辞职信
2014/01/14 职场文书
经典而简洁的婚礼主持词
2014/03/13 职场文书
2014年教师业务学习材料
2014/05/12 职场文书
党员志愿者活动总结
2014/06/26 职场文书
大专学生求职信
2014/07/04 职场文书
个人作风建设剖析材料
2014/10/11 职场文书
MySQL 慢查询日志深入理解
2021/04/22 MySQL
高通2023 年将发布高性能PC处理器
2022/04/29 数码科技
springboot+rabbitmq实现智能家居实例详解
2022/07/23 Java/Android