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 相关文章推荐
查看Django和flask版本的方法
May 14 Python
Python操作mongodb数据库的方法详解
Dec 08 Python
用python爬取租房网站信息的代码
Dec 14 Python
Python可变和不可变、类的私有属性实例分析
May 31 Python
简单了解django索引的相关知识
Jul 17 Python
pycharm如何实现跨目录调用文件
Feb 28 Python
keras处理欠拟合和过拟合的实例讲解
May 25 Python
Pyinstaller打包Scrapy项目的实现步骤
Sep 22 Python
基于Python爬取股票数据过程详解
Oct 21 Python
Pytorch 实现变量类型转换
May 17 Python
Python 解决空列表.append() 输出为None的问题
May 23 Python
一篇文章弄懂Python关键字、标识符和变量
Jul 15 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
全国FM电台频率大全 - 21 海南省
2020/03/11 无线电
yii2.0之GridView自定义按钮和链接用法
2014/12/15 PHP
php将从数据库中获得的数据转换成json格式并输出的方法
2018/08/21 PHP
RR vs IO BO3 第二场2.13
2021/03/10 DOTA
JavaScript 中的事件教程
2007/04/05 Javascript
jQuery创建自己的插件(自定义插件)的方法
2010/06/10 Javascript
jquery下异步提交表单 异步跨域提交表单
2010/11/17 Javascript
jQuery 瀑布流 绝对定位布局(二)(延迟AJAX加载图片)
2012/05/23 Javascript
js如何判断不同系统的浏览器类型
2013/10/28 Javascript
一个JavaScript去除字符串末尾的空白实例代码
2014/09/22 Javascript
bootstrap jquery dataTable 异步ajax刷新表格数据的实现方法
2017/02/10 Javascript
vue中keep-alive的用法及问题描述
2018/05/15 Javascript
微信小程序下拉菜单效果的实例代码
2019/05/14 Javascript
使用Layui搭建后台管理界面的操作方法
2019/09/20 Javascript
python实现代理服务功能实例
2013/11/15 Python
python文件比较示例分享
2014/01/10 Python
python实现的二叉树算法和kmp算法实例
2014/04/25 Python
Python实现计算最小编辑距离
2016/03/17 Python
Python学习小技巧之列表项的排序
2017/05/20 Python
Python实现运行其他程序的四种方式实例分析
2017/08/17 Python
python 弹窗提示警告框MessageBox的实例
2019/06/18 Python
python3中的eval和exec的区别与联系
2019/10/10 Python
python反转列表的三种方式解析
2019/11/08 Python
浅谈keras中loss与val_loss的关系
2020/06/22 Python
Europcar德国:全球汽车租赁领域的领导者
2018/08/15 全球购物
华为菲律宾官方网站:HUAWEI Philippines
2021/02/23 全球购物
毕业生物理教师求职信
2013/10/17 职场文书
英文版餐饮运营管理求职信
2013/11/06 职场文书
2014年单位植树节活动方案
2014/03/23 职场文书
离婚协议书怎么写
2014/09/12 职场文书
2015年党员承诺书
2015/01/21 职场文书
二手车转让协议书
2015/01/29 职场文书
2015年民主评议党员工作总结
2015/05/19 职场文书
家庭教育教师培训学习体会
2016/01/14 职场文书
MYSQL优化之数据表碎片整理详解
2022/04/03 MySQL
Win11安全功能升级:内置防网络钓鱼功能
2022/04/08 数码科技