Matlab:图像数据保存
目錄:
- 前言
- 讀取圖像
- 圖像的存儲
前言
在下載完一些數據集的做訓練的時候,發現了很多不規范的命名,因此,查詢了一下圖片存儲以及改名的方法,學習完后,寫下了本篇blog,希望大家喜歡。
讀取圖像
圖像的讀取 I=imread(‘pout.tif’);imread是讀取圖像的函數。pout.tif是matlab內置的圖像,不管在什么程序內都可以直接讀取。那么,如果我們要讀取其他位置的函數怎么做呢?這里我們來說幾種常見的情形。
%注意 (1)讀取1.jpg I=imread(‘1.jpg’); (2)讀取2.jpg I=imread(‘image\2.jpg’);%相對路徑的讀取 (3)讀取D:\1023\25\1.jpg I=imread(‘D:\1023\25\1.jpg’);%絕對路徑的讀取 (4)讀取D:\1023\25內20個圖像。 for i=1:20I=imread([‘D:\1023\25\’,num2str(i),’.jpg’]); end注:第四種情況需要注意的是,里面添加了[ ],來保證這是一個整句。num2str(i)是將i由數字轉換成字符形式。這樣就能實現循環讀取。一般來說,會將圖像跟.m文件放在一起。當圖像較多時,圖像放入image文檔中,讀取方式將(2)和(4)結合起來。利用相對路徑來讀取,這樣當程序和圖像同時放在其他電腦上時,不會因為路徑而產生問題。
那么什么時候用figure呢?當程序中只顯示一幅圖像時,直接imshow就可以。然后當圖像多的時候,就需要用到figuure;imshow(I1);figure;imshow(I2);figure;imshow(I3)
如果想要在一張圖片內,顯示好幾個圖怎么辦呢?title顯示在圖像的上方,起到提示的作用。
結果,如下:
圖像的存儲
1、圖像的存儲 imwrite函數適合保存高質量的圖像,保存結果很容易得到體現。 imwrite(I,’pout1.jpg’); 同樣,imwrite也有相對路徑和絕對路徑的存儲,以及連續的存儲方法。同imread imwrite(I,’pout1.jpg’); imwrite(I,’image\pout1.jpg’); imwrite(I,’D:\image\pout1.jpg’);需要注明的是,存儲所選擇的文件夾,需要已經建立好。那么怎么去自動建立文件夾呢?
需要用mkdir函數。 mkdir(‘D:\image\1’)%絕對路徑的建立。 mkdir(‘image\1’);%相對路徑文件夾的建立。創建之后,在Matlab文件夾內。讀取都主要選擇相對路徑,以及循環讀取。程序較為簡單。
clc;clear;closeall; I=imread('pout.tif'); figure; subplot(2,2,1);imshow(I);title('1'); subplot(2,2,2);imshow(I);title('2'); subplot(2,2,3);imshow(I);title('3'); subplot(2,2,4);imshow(I);title('4'); whos; mkdir('image') imwrite(I,'image\pout.bmp');2、直接另存為
在figure中使用菜單file——>saveas——>選擇保存形式(fig,eps,jpeg,gif,png,bmp等),這個的缺點是另存為的圖像清晰度有很大的犧牲
3、復制到剪貼板
在figure中使用菜單edit——>copy figure——>此時圖像就復制到剪貼板了,我們可以借助其他軟件(比如:畫畫,word程序)保存為需要的圖片
4、saveas命令格式
Matlab提供直接的saveas函數可以將指定figure中的圖像或者simulink中的框圖進行保存,相當于【文件】中的【另存為】
5、print函數
print函數原本不是用來進行圖像保存了,而是操作打印機的,但是這里我們可以借用下
另外有網友向我反映,有時我們只有一個Matlab圖像的fig文件,但沒有該圖像的相關坐標數據,那我們如何獲取fig圖像的數據呢,這個其實比較好辦
1、將那個fig文件保存到Matlab的搜索路徑下,雙擊打開它
2、在Matlab的command中輸入如下內容
h=get(gcf,’chidren’)
data=get(h,{‘xdata’,’ydata’,’zdat a’})
%此時圖形中所有圖像的三維數據x,y,z將會以結構體的形式保存到data變量中了 ,
但這個方法有個限制,對于圖像是不起作用的。
總結
以上是生活随笔為你收集整理的Matlab:图像数据保存的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: curl post 日志_curl命令发
- 下一篇: cdh 差异_“Sahara/CDHPl