zoukankan      html  css  js  c++  java
  • matlab中文本文件与图像转化

     

    一  将图片转化为txt文本文件

    a=imread('picture.bmp');   //读取picture.bmp图片

    b=rgb2gray(a);                 //由rgb图片转化为灰度图

    c=b';                               //matlab由图片转换为矩阵是一列一列转的,txt文件数据读入矩阵也是一列一列读入的,后文以行为单位处理的话需要转置,后面还要再转置一次

    fid0=fopen('data.txt','wt');   //在matlab工作目录创建并打开一个名为data.txt的文件,形式为可写

    fprintf(fid0,'%x ',c);          //把灰度图矩阵b以16进制写入data.txt文件,没写入一个元素换一行

    fclose(fid0);                     //关闭保存该data.txt文件       

    二   将txt文本文件读取为图片

    法一:

    fid0=fopen('data.txt','r');     //data.txt已存在与matlab工作目录,以读取形式打开该文件

    [a,count]=fscanf(fid0,'%x');//a为data.txt文件数据读入的矩阵,以16进制形式,count为该矩阵元素个数

    b=reshape(a,m,[])            //将矩阵a转换为图片大小的矩阵b,图片行长为m

    c=b';                              //需要再转置一次方为图片行列方向的矩阵

    imshow(b,[]);                   //显示矩阵b为图片

    若法一提示有错误,就用法二,具体原因有时间再研究,反正我不是做图像处理的,matlab用到哪就学到哪吧!

    法二:

    a0=load(data.txt');           //将txt文件数据读取入矩阵
    b0=reshape(a0,m,[]);       //将矩阵a转换为图片大小的矩阵b,图片行长为m
    c0=b0';                           //转置,原因同上
    imshow(c0,[]);                 //显示图片

  • 相关阅读:
    打造基于CentOS7的xfce最简工作环境
    Linux下C程序的编辑,编译和运行以及调试
    修正 XE6 TListView 上方 SearchBok 右边的清除钮显示
    TabControl 显示彩色的图示 (XE6 Firemonkey)
    TSwitch 中文简繁显示支持(XE6 Android)
    改变 TMemo 的背景颜色 (Firemonkey)
    修正 XE5 Android 键盘三个问题
    Delphi 收藏
    展示 Popup 的使用方法
    ListView 下拉更新 (支持 Android)
  • 原文地址:https://www.cnblogs.com/limanjihe/p/9801238.html
Copyright © 2011-2022 走看看