dennis
Uploaded by
18 SLIDES
391 VIEWS
180LIKES

Matlab 教學

DESCRIPTION

Matlab 教學. Speaker :陳珮妮 Date : 2013/03/21. MATLAB 的影像格式. MATLAB 最常處理的影像格式為索引影像 ( Indexed Images ) 顯示此類型影像的語法如下: image(X) colormap (map) 其中 X 為影像的資料矩陣, map 為色盤矩陣。 色盤矩陣的大小為 K×3 ,每個橫列由三個元素所組成,分別是 R (紅) 、 G (綠)、 B (藍),每個元素的範圍為 0~1

1 / 18

Download Presentation

Matlab 教學

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Matlab教學 Speaker:陳珮妮 Date:2013/03/21

  2. MATLAB的影像格式 • MATLAB 最常處理的影像格式為索引影像(Indexed Images) • 顯示此類型影像的語法如下: image(X) colormap(map) 其中X為影像的資料矩陣,map為色盤矩陣。 • 色盤矩陣的大小為K×3,每個橫列由三個元素所組成,分別是R(紅)、G(綠)、B(藍),每個元素的範圍為0~1 • X的值為1~K,也就是當X(i, j)的值為p,則像素點(i, j) 的顏色為map(p, :)這一列的向量所決定。

  3. 影像檔案的讀取與寫入 • imread指令可用於讀取影像檔案。 • imwrite則可用於寫入影像檔案。 • 這兩個指令可以處理的影像格式有下列幾種:

  4. imfinfo指令 • imfinfo指令可傳回影像檔案的各項資訊,例如: • info1=imfinfo('simulinkteam.jpg') • info2=imfinfo('sbtree.gif') • 對於不同的檔案格式,imfinfo傳回的資訊項目可能有所不同。 • info2=imfinfo('sbtree.gif') • info2 = • Filename: 'sbtree.gif' • FileModDate: '10-九月-1997 14:53:14' • FileSize: 7121 • Format: 'GIF' • FormatVersion: '87a' • Width: 99 • Height: 80 • BitDepth: 8 • ColorType: 'indexed' • FormatSignature: 'GIF87a' • BackgroundColor: 0 • AspectRatio: 0 • ColorTable: [256x3 double] • Interlaced: 'no' • info1=imfinfo(‘simulinkteam.jpg') • info1 = • Filename: 'simulinkteam.jpg' • FileModDate: '28-三月-2000 17:30:36' • FileSize: 24071 • Format: 'jpg' • FormatVersion: '' • Width: 234 • Height: 126 • BitDepth: 24 • ColorType: 'truecolor' • FormatSignature: '' • NumberOfSamples: 3 • CodingMethod: 'Huffman' • CodingProcess: 'Sequential' • Comment: {[1x70 char]}

  5. 特效目錄 • Grayscale 灰階 • Negative 負片效果 • Flipping vertically  垂直翻轉 • Flipping horizontally  水平翻轉 • Switching top left and bottom right  垂直水平翻轉 • Darkening色調加深 • Lightening色調加亮 • Scrolling vertically  垂直滾動 • Scrolling horizontally  水平滾動 • Zooming in   放大 • Zommingout  縮小 • Blurring模糊

  6. Gray figure灰階圖片 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • imwrite(gri,'gray.jpg');

  7. Negative 負片效果 • ori= imread('Shunsuke.jpg'); %讀入圖片 • gri= rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • nei= imcomplement(gri); %將灰階圖片做負片化 • imshow(nei); • imwrite(nei,'negative.jpg');

  8. Flipping vertically  垂直翻轉 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • fvim= gri(end:-1:1, :,:); %將灰階圖片垂直翻轉 • fvim = flipud(gri); %將灰階圖片垂直翻轉,沿水平軸 • imshow(fvim); • imwrite(fvim,'flipping vertically.jpg');

  9. Flipping horizontally  水平翻轉 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • fhim= fliplr(gri); %將灰階圖片水平翻轉,沿垂軸 • imshow(fhim); • imwrite(fhim, 'flipping horizontally.jpg');

  10. Switching top left and bottom right  垂直水平翻轉 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • sim = fliplr(fvim); %將垂直翻轉的圖片在做水平翻轉 • imshow(sim); • imwrite(sim,'switchin.jpg');

  11. Darkening  色調加深 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • %brighten(-0.8); %亮度變深,目前指令沒有改變對上一個圖像加深 • dim = imadjust(gri,[ ],[ ],2); %亮度變深 • imshow(dim); • imwrite(dim,'darkening.jpg');

  12. Lightening  色調加亮 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • brighten(0.8); %亮度變亮,目前指令沒有改變對上一個圖像加亮

  13. Scrolling vertically  垂直滾動 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • svim= circshift(gri,[-300,0]); %垂直滾動,[a,b],a 決定垂直滾動負值像上正值向下 • imshow(svim); • imwrite(svim,'scroll vertically.jpg');

  14. Scrolling horizontally  水平滾動 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • shim = circshift(gri,[0,-300]); %水平滾動,[a,b],b 決定水平滾動負值像左正值向右 • imshow(shim); • imwrite(shim,'scroll horizontally.jpg');

  15. Zooming in   放大 • [X Y] = size(gri); %把灰階突的大小存到矩陣 • ziim = imresize(gri,2); %把灰階圖放大 • imshow(ziim); • imwrite(ziim,'zooming in.jpg'); • zim = imcrop(ziim,[500 500 X Y]); %裁切放大後的灰階圖從(500,500)的位置開始,裁下原灰階圖的大小 • imshow(zim); • imwrite(zim,'zooming in end.jpg');

  16. Zomming out  縮小 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • zoim= imresize(gri,[50 50]); %縮小到50*50的大小 • imshow(zoim); • imwrite(zoim,'zooming out.jpg');

  17. Blurring  模糊 • ori = imread('Shunsuke.jpg'); %讀入圖片 • gri = rgb2gray(ori); %將RGB圖片轉成Gray figure • imshow(gri); • b = fspecial('average',[10 10]); %制定一個20*20的平均濾波 • bim = imfilter(gri,b); %將平均濾波加入到灰階圖中,使圖變模糊 • imshow(bim); • imwrite(bim,'blurring.jpg');

  18. Q&A

More Related