2008年10月15日 星期三

第五週 第二章心得

點圖可以放大!

第五周

終於到了第二章,大概翻過後,有明顯地看到幾個有框框的指令
於是乎,要開啟MATLAB 這個程式,來動手DIY。
第一個指令是
w=imread('buffalo.tif');
好奇的是,一開始我忘了打分號,結果再輸入指令那邊變成這樣↓



整個陣列數值都列出來了,輸入完指令後
隨即會把buffalo.tif這圖片轉成矩陣方式存在W矩陣內如下↓



接著再輸入
Figure, imshow(w), pixval on
Show出W矩陣



之後就秀出buffalo.tif這個圖片
然而imshow(‘buffalo.tif’)
也是可以直接秀出圖片,與Figure, imshow(w), pixval on 之間的差別嘛
好像差在於pixval on 在指令那邊會多秀出一些資訊
以及在圖片左下角有串數據,
在書上有說明pixval on,是由c*r = p,c是行(直的 ),r是列(橫的 — )
而p 則是gray value (灰色數值),因為buffalo.tif是8-bit grayscale(灰階)
image而那pixel value(像素數值) 是整數的範圍在0~255。
而imshow()這個則是只秀出圖片。

2-2
講到RGB image,在24那張圖,明顯的表現出RGB三原色用三維空間的數值來表示範圍是從原先的0~255,轉換為0~1的比例。
再來是這個指令 size(a),可以看到該圖片是以幾乘幾的矩陣儲存的



當我們想知道RGB value 在某個特定的位置,我們可以用indexing methods(索引的方法)。
當我輸入a(100,200,2),按照書上的說明會回傳在row 100和column 200位置的第二個顏色Green的數值。
但實際上我輸入後,卻跳出說Index exceeds matrix dimensions.
索引超出矩陣範圍??
解答:事後我才發現我是再找RGB的數值,可是我卻拿灰階的圖片去找,難怪會跳出說找不到。
換成由RGB所構成的圖後,就沒問題了,能如願地找到



Impixel(a,200,100)這個指令更是直接回傳RGB三個數值,與
a(100,200,1:3)這個指令是用分三次表示出RGB的數值還來的簡潔
Impixel(a,200,100)這個指令是藉由pixval on。



2-3

Information about your image(關於你的影像的資訊)
如上所說是有關於你的影像的一些較細節的資訊
像有些資訊通常我們是沒有用,我們大部分只看檔案大小…等等如下↓



2-4
Data types and conversion(資料類型和轉換)
Data types in MATLAB 詳看第28頁 TABLE2.1

Int8   8 bit 整數 範圍:-128~127
uInt8   8 bit 整數 範圍:0~255
Int16   16 bit 整數 範圍:-32768~32767
uInt16  16 bit 整數 範圍:-128~127
Double 兩倍精確的實數 範圍:Machine specific(這是什麼?)

Converting images in MATLAB 詳見第28頁 TABLE2.2

Ind2gray indexed to grayscale 形式:y=ind2gray(x,map);
gray2Ind grayscale to indexed 形式:[y,map]=gray2ind(x);
rgb2gray RGB to grayscale 形式:y=rgb2gray(x);
gray2rgb grayscale to RGB 形式:y= gray2rgb (x);
rgb2Ind RGB to indexed 形式:[y,map]= rgb2Ind (x);
Ind2rgb indexed to RGB 形式:y=ind2rgb (x,map);


覺得指令蠻口語的to 直接是2
還有就是形式那邊的x, y 是指什麼?矩陣?還是要轉換的那兩張影像?

2-5
Image file and formats(影像檔案和形式)

Image 有有四個不同的類型:binary(黑白)、grayscale(灰階)、colored(RGB)、indexed(索引)
對影像資料的儲存有很多很棒的不同形式
像MATLAB 支援了以下形式:
JPEG、TIFF、GIF、BMP、PNG、HDF、PCX、XWD、ICO、CUR等
我們常見常用的就是JPEG、BMP、GIF等等
2-5.3之後就開始對上述的做簡潔的說明
詳見第33頁至第38頁。

疑問:什麼時候要加"分號"呢?
答:沒有加分號的情況, MATLAB 會把執行結果直接顯示在螢幕上, 有加分號則不會顯示! by yklee

沒有留言:

張貼留言