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 相关文章推荐
python使用cookie库操保存cookie详解
Mar 03 Python
python中import reload __import__的区别详解
Oct 16 Python
python先序遍历二叉树问题
Nov 10 Python
django利用request id便于定位及给日志加上request_id
Aug 26 Python
python url 参数修改方法
Dec 26 Python
使用Python Pandas处理亿级数据的方法
Jun 24 Python
python开头的coding设置方法
Aug 08 Python
python线程的几种创建方式详解
Aug 29 Python
安装PyInstaller失败问题解决
Dec 14 Python
python——全排列数的生成方式
Feb 26 Python
python上传时包含boundary时的解决方法
Apr 08 Python
Django执行源生mysql语句实现过程解析
Nov 12 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运算符的知识大全
2011/11/03 PHP
php将字符串转化成date存入数据库的两种方式
2014/04/28 PHP
PHP抓取远程图片(含不带后缀的)教程详解
2016/10/21 PHP
PHP+ajax实现二级联动菜单功能示例
2018/08/10 PHP
php版本CKEditor 4和CKFinder安装及配置方法图文教程
2019/06/05 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
在视频前插入广告
2006/11/20 Javascript
jQuery.Highcharts.js绘制柱状图饼状图曲线图
2015/03/14 Javascript
使用jQuery.Qrcode插件在客户端动态生成二维码并添加自定义Logo
2016/09/01 Javascript
老生常谈的跨域处理
2017/01/11 Javascript
js实现京东轮播图效果
2017/06/30 Javascript
微信小程序开发animation心跳动画效果
2017/08/16 Javascript
vue2实现数据请求显示loading图
2017/11/28 Javascript
vue一个页面实现音乐播放器的示例
2018/02/06 Javascript
Node.js安装详细步骤教程(Windows版)详解
2019/09/01 Javascript
基于JavaScript实现控制下拉列表
2020/05/08 Javascript
js操作两个json数组合并、去重,以及删除某一项元素
2020/09/22 Javascript
[01:48]完美圣典齐天大圣至宝宣传片
2016/12/17 DOTA
[01:00:14]DOTA2官方TI8总决赛纪录片 真视界True Sight
2019/01/16 DOTA
[01:59][TI9趣味视频] 全明星赛奖励
2019/08/23 DOTA
Windows下Python的Django框架环境部署及应用编写入门
2016/03/10 Python
Python编程之基于概率论的分类方法:朴素贝叶斯
2017/11/11 Python
在python中使用with打开多个文件的方法
2019/01/07 Python
python3转换code128条形码的方法
2019/04/17 Python
让你的Python代码实现类型提示功能
2019/11/19 Python
Python 必须了解的5种高级特征
2020/09/10 Python
python批量生成条形码的示例
2020/10/10 Python
数据员岗位职责
2013/11/19 职场文书
自荐信怎么写呢?
2013/12/09 职场文书
《伯牙绝弦》教学反思
2014/03/02 职场文书
毕业生如何写自荐信
2014/03/26 职场文书
企业文化理念标语
2014/06/10 职场文书
大学生毕业求职信
2014/06/12 职场文书
HTML5页面音频自动播放的实现方式
2021/06/21 HTML / CSS
企业开发CSS命名BEM代码规范实践
2022/02/12 HTML / CSS
Java线程的6种状态与生命周期
2022/05/11 Java/Android