python如何将mat文件转为png

目录
  • 将mat文件转为png
  • 将图片转换为mat格式

将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})

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python读取mat文件,并保存为pickle格式的方法

    这两天在搞Theano,要把mat文件转成pickle格式载入Python. Matlab是把一维数组当做n*1的矩阵的,但Numpy里还是有vector和matrix的区别,Theano也是对二者做了区分. 直接把代码贴出来吧,好像也没什么可讲的 = = from scipy.io import loadmat import numpy, cPickle data_dict=loadmat(r'E:\dataset\CIFAR10\CIFAR10_small.mat') #need an r!

  • Python实现npy/mat文件的保存与读取

    目录 1. npy文件 2. mat文件 补充 读取mat文件并存为npy格式文件 npy文件的读取很简单 重新读取npy文件保存为mat文件 除了常用的csv文件和excel文件之外,我们还可以通过PY把数据保存文npy文件格式和mat文件格式. 1. npy文件 npy即numpy对应的文件格式,关于其保存使用的是np.save()方法,其读取使用的是np.load()方法. 具体示例如下: import numpy as np a = np.mat('1, 2, 3;4, 5, 6') p

  • Python处理mat文件的三种方式小结

    目录 处理mat文件的三种方式 scipy h5py mat73 mat4py python操作.mat文件 python读取.mat格式 mat转图片 处理mat文件的三种方式 读书的时候,处理数据都是采用matlab,但毕业后当了程序员,matlab从此在自己的电脑上消失了(安装包太大,还要license,启动也好慢,不符合程序员的需求). 但是最近公司仿真的数据是以matlab的.mat格式存储的,需要读取出来处理,那就找找python相关的库吧,没有python干不了的活!!! mat文

  • 详解python读取matlab数据(.mat文件)

    我们都知道,matlab是一个非常好用的矩阵计算分析软件,然额,matlab自带的绘图效果极为锯齿,所以,这里分享一个在python中读取matlab处理后的数据.mat文件. 1.首先,我们这里先打开matlab,随便在命令行窗输入两个变量, matlab_x=1:0.01:10; matlab_y=sin(matlab_x); 2.计算处理后,matlab右边的工作区会有两个变量值,分别为matlab_y.matlab_x 3.然后,我们将鼠标放置在工作区空白位置右键,选择保存,也可以在工作

  • python如何将mat文件转为png

    目录 将mat文件转为png 将图片转换为mat格式 将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.froma

  • python实现csv格式文件转为asc格式文件的方法

    一.背景描述 csv格式文件是一种类似于excel的文件格式 asc格式文件是一种可以用text打开的文本文件 csv转asc本来可以用arcgis顺利完成,但由于csv数据量太大(744万行),arcgis处理不了如此大的文本,所以需要通过写代码实现(注:不是用python调用arcgis工具) 二.格式说明 Csv格式: asc图片 说明:第一列为id,第二列是值,第三第四列为值所在的行列号:csv的数据共744万行,直接打开无法全部加载 asc格式: 三.举例 需要的是将csv对应的某行某

  • Python读取mat文件,并转为csv文件的实例

    初学Python,遇到需要将mat文件转为csv文件,看了很多博客,最后找到了解决办法,代码如下: #方法1 from pandas import Series,DataFrame import pandas as pd import numpy as np import h5py datapath = 'E:/workspacelxr/contem/data.mat' file = h5py.File(datapath,'r') file.keys() def Print(name):prin

  • python读取并写入mat文件的方法

    先给大家介绍下python读取并写入mat文件的方法 用matlab生成一个示例mat文件: clear;clc matrix1 = magic(5); matrix2 = magic(6); save matData.mat 用python3读取并写入mat文件: import scipy.io data = scipy.io.loadmat('matData.mat') # 读取mat文件 # print(data.keys()) # 查看mat文件中的所有变量 print(data['ma

  • python保存大型 .mat 数据文件报错超出 IO 限制的操作

    python 保存 .mat 文件的大小是有限制的,似乎是 5G 以内,如果需要保存几十个 G 的数据的话,可以选用其他方式, 比如 h5 文件 import h5py def h5_data_write(train_data, train_label, test_data, test_label, shuffled_flag): print("h5py文件正在写入磁盘...") save_path = "../save_test/" + "train_t

  • Python办公自动化之教你如何用Python将任意文件转为PDF格式

    一.word转PDF 这里借助Python的docx2pdf去完成转换操作,该库的安装命令如下: pip install docx2pdf 目标:读取文件夹下的全部word文件,然后进行转换,最后保存到对应的文件夹中. 这里辰哥新建两个word文件作为演示,打开其中一个word看看 里面不仅有文字,同时包含有图片 import os from docx2pdf import convert word_path = 'word_path' word_to_pdf = 'word_to_pdf' f

  • python读取和保存mat文件的方法

    目录 一.mat文件 二.python中读取mat文件 1.读取文件 2.保存文件 首先我们谈谈MarkDown编辑器,我感觉些倒是挺方便的,因为用惯了LaTeX,对于MarkDown还是比较容易上手的,但是我发现,MarkDown中有这样几个问题一直没能找到具体的解决方法: 图片大小的问题.在LaTeX中我们可以调整图片的大小,以适应整个文本:字体,字号大小的设置.在MarkDown里面标题倒是挺大的,但是正文却显得太小,不是很喜欢里面的字体. 主要发现上面两个问题导致编辑出来的文本挺难看.

  • Python办公自动化之将任意文件转为PDF格式

    一.word转PDF 这里借助Python的docx2pdf去完成转换操作,该库的安装命令如下: pip install docx2pdf 目标:读取文件夹下的全部word文件,然后进行转换,最后保存到对应的文件夹中. 这里辰哥新建两个word文件作为演示,打开其中一个word看看 里面不仅有文字,同时包含有图片 import os from docx2pdf import convert word_path = 'word_path' word_to_pdf = 'word_to_pdf' f

  • python文件转为exe文件的方法及用法详解

    一.简介 py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序. py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win32com client和server,和其它的独立程序.py2exe是发布在开源许可证下的. 二.安装py2exe 从 http://prdownloads.sourceforge.net/py2exe下载

随机推荐