2008年11月21日 星期五
CH4
1.transform
image經transform成Transformed image
再經Image-processing operation成processed Transformed image
最後經Inverse transform成Processed transformed image。(圖TO文字)
2.Neighborhood processing
再說只要知道附近的pixel,就可以知道改變給予的pixel的灰階層的值。
3.Point operations 就是說不欲知道其他的灰階值!!你可以直接去改變你要的地方的灰階值!!
4-2 Arithmetic Operations
指令:1.imadd(圖檔,數值) //加
2.imsubtract(圖檔,數值) //減
3.immultiply(圖檔,數值) //乘
4.imdivide(圖檔,數值) // 除
效果:使圖片變亮變暗!!
4.3 Histograms
主要再接設用長條突來統計灰階值!!
指令:1.imadjust. 功能:調整圖像灰度值或顏色映像表。
2.plot.
功能:假如你有一堆實驗數據要化成專業的二維圖. 並且算出平均值,並畫出來 。
3.histeq. 功能:設輸入圖像為input,輸出圖像為output直方圖規定化的函數 。
4.histpwl. 功能:(巡查中!!)
4.4 Lookup Tables(簡稱LUT)
看不懂!上網查了一下!!原來是說查表這一個動作!!
如果說一個複雜的運算!!如果有一個表可以去代代數字!!那處理起來的速度就會快很多!!
EX:三角函數中!!COS123度!!如果有一表可以查!!那就可以不用花其中那複雜運算時間囉!!
資料來源:1. http://zh.wikipedia.org/wiki/%E6%9F%A5%E6%89%BE%E8%A1%A8 (中文)
2. http://en.wikipedia.org/wiki/Lookup_table (英文)
第4章
包含Transforms,Neighborhood,Point operations
Transforms:
准許使用強大的演算法,或者該說是轉換,將像素值改變為其他的資料型式
Neighborhood:
改變給予的pixel的灰階層的值,知道附近的pixel就可以改變
Point Operations:
只對該像素的灰階值做改變
以上大概是這個意思吧...
然後還有些運算的指令,像是
imadd(A,B)A加B
imsubtract(A,B)A減B
immultiply(A,B)A乘B
imdivide(A,B)A除B
簡單來說,這些運算是講pixel的運算
並且利用加減乘除四個運算之後利用最簡單的運算是y=f(x)
f去繪製一個0~255範圍的圖,這些運算可以改變一個圖的亮度等等的
在來是4-3
對於整體明暗度(亮度)相當接近的圖像作處理
至於長條圖....
好像是在說與圖案的關係
我也不是很清楚....
關於指令方面,
histogram:
將每個灰階值所出現的次數做統計。
imadjust(a,b,c,d):
將a的灰階值分布拉寬
c是整體分布範圍的變化對其作的是將全部的灰階值擠到給定[x,y]區間
d是對分布區間寬度作變化,把灰階值拉寬的樣子。
至於4-4.....
恩.....
我可以說英文真的是外星人的語言嗎....
2008年11月14日 星期五
作業
4.1 Introduction
Transforms、Neighborhood processing、Point operations
1. Transforms: P.65課本下面也有圖解釋
2. Neighborhood processing(鄰域處理)
3. Point operations:類似鄰域處理,但影像的灰階值運算似乎是獨立的
4.2
imadd(x,y)對圖像作加法運算
imsubtract(x,y)對圖做減法運算
imdivide(x,y)對圖做除法運算
immultiply(x,y)對圖做乘法運算
2008年10月31日 星期五
CH1 ~~~> CH3
又是"圖"又是"程式碼"的@"@真的很暈!!!
原文書~~英文是有越看越懂啦~~不過內容卻是越看越不懂了!!!結論發現看原文書比較困難的在於
有些字查字典找不到~~問到的翻譯又有好幾種!!像上次寫的Grayscales就看到兩種
原本買中文版和英文版是想說要中英對照看能不能火速立刻馬上知道翻譯是怎麼翻的!!結果才發
現好像不是那麼一回事=_=
寫作業都靠英文版~"~,如果要跑程式~~卻不能沒有中文版!!兩本書各有用處阿
不過比其他科買的原文書好多了~~會拿來翻拿來看而不是放在書桌上當供品
目前最有問題的應該是3.5後面的吧!! """Almost see no understand"""
CH1-->CH3
這禮拜老師要我們回顧CH1~CH3
把自己的問題統整一下
其實大家的問題都是差不多的
老師在上課時也特別針對大家提的問題做討論
所以在問題部份沒有太大疑惑
這幾個禮拜看的原文書份量
也大概是四年內看最多的時候吧
而我也慢慢的習慣去看原文書了
雖然不知道自己到底看懂了多少
雖然不知道自己學到了什麼
但是有漸漸的覺得自己英文程度再進步
在上課的部份,我個人喜歡實做的部份
可是到目前為止老師帶著我們實做的部份沒有很多
可能是老師希望我們先懂一些理論
再來去實做操作會比較簡單
或者是做起來更有心得吧
不過我還是比較喜歡實際操作
所以希望期中考後能多一點實做的部份
打了好幾個禮拜的心得了
可是我的心得總是被評C
看來我得好好檢討檢討
或許是我的表達能力不好
也或許是其他人的表達方式更棒
我也會試著去學學其它人的表達方式
用圖片來吸引注意力
用公式來讓大家引起興趣討論
但我發現老師的系統有小BUG
在互評時不應該看到文章作者
這樣認識的人就會有友情壓力所以就給A
那這樣下來,人緣不好但真的很用功的人不就吃虧了嗎?
這是我小小的一個建議~
接下來是期中考週,大家加油吧!!
CH1 => CH3
原來之前看過的!!現在再看一遍!!真的有比較會!!
啊!!之前全全看不懂得還是看不懂!!
其實我之前就很好奇!!MATLAB到底語法侍者樣的!!
後面有 ":" 就不會顯示結果!!沒有就會!!但真的是這樣嘛!!
會不會有超出我們想像的其他打答案!!
結果!!哈哈你很期待吧!!自己去看MATLAB 7!!
哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!
哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!
哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!哈哈!!
好啦!!跟你說一些些!!像你打
>>a=3,b=4,c=5; =>這樣只會顯示a跟b的值 ,c不會顯示。
>>a=3;b=4;c=5; =>這樣abc都會被顯示出來!!
所以之前ch3有很多run不出來得指令!!
看來配合MATLAB 7會友事半功倍的效果喔!!
ch1~ch3心得
而在心得部分,要po文之前我也大概瀏覽過班上大部分同學的文章,其中我滿支持許達易的看法,大部份的人為了拿高分,都只是把指令打一遍、把結果秀出來,誰貼的圖片多誰就高分,而實際上有沒有真的靜下心閱讀過,大家心知肚明,當然我並不是說所有那些show圖片的同學都不好,當然也有認真的同學,不只show出圖片,也在下面很清楚的註解哪些概念不太懂。
我想最近班上同學在專研上也開始有一些實際上的進展,在這上面必定會面對不少問題,對就是問題,其實我想說的是,要真正解決一個問題,這過程並非如此的容易,當你在面對一個大問題時,你在往下探討的時候,你會發現還有許多許多關卡你必須要闖、必須要理解,這樣你才有可能打開最後那一扇關鍵的大門,雖然在過去你可能可以很輕鬆帶過的問題,現在你卻要花大筆時間才能得到答案,但探討任何一門學問本該就是如此,所以想要在任何一種領域上成為金字塔頂端的人,要花多麼長的時間,大家可想而知了,我也不多廢話了,大家好好想想吧。
ch1-ch3心得
再搭配課本所敘述的內容才較容易去了解!
經過這些之後,
發現影像處理是一門蠻有趣的課,
不單單只是指令操作的部分,
可以做到一些其他方面做不到的,
例如:模糊,雜訊(胡椒粉),尖銳化....等等。
但是原文書真的是我在這門課的一大瓶頸,
為了要跟隨老師的腳步去認識影像處理,
只好硬逼著自己將內容搞清楚,
到目前為止.真的有算是有進步!
對一些專門的詞彙了解的較多了!
老師的教學方式算是很特別,
為了每個禮拜的心得逼得自己非去看非去試一試,
這樣其實也不錯!
現在越到後面指令跟程式也跟著複雜起來了!
所以相對的也要更吃力的去念了!
CH1~CH3 心得
比較沒有像其他課這樣的緊繃,但是認真度卻還是
可以比其他課來的認真,因為要很認真的看原文書
才能夠了解影像處理到底在說些甚麼,然後要一直
去試著打打看書上的程式.自己這樣寫會很有成就
感.就會很有趣.發現問題就會很想要去問別人.把自
己心中的疑問解開.所以老師的教學方式還蠻有用的
.但是原文書真的好難.好多看不懂的單字.要一個字
一個字的去翻譯.但是我會繼續努力.最近又要期中考
了.希望我能夠持續看書的動力.加油!!
CH1~CH3 心得
MATLAB是個很方便的軟體, 因為他提供很多指令給使用者, 但想要隨意的使用這些指令, 想要做些變化, 可能就要對指令的了解下番功夫了!!
我不太喜歡看字, 所以多從指令和圖片下手, 之後才看原文, 從第三章開始, 他針對指令做更深入的探討與使用, 有些吃力, 有些細微的地方, 可能因為基礎不夠好的關係吧,看得模模糊糊的,希望能多加油啦!!
下面是一個朋友分享給我看的, 是關於繪圖新科技的一段影片, 希望能給分享大家 :
http://www.wretch.cc/video/mb629tcj&func=single&vid=5096947
Chapter1 to Chapter3 Review
比起最初,能理解的部份變多了。
而且有些不懂的地方,老師會在課堂上講解,
如Colormap老師說明過了幾次,
使讓大家能夠理解。
回頭看看前幾次的作業,
我看到了我自己記錄有問題的地方,
再針對這幾個有疑問的地方,去翻課本,
或者是看看同學們是怎麼樣寫的。
發現老師讓我們使用BLOG來寫作業的好處,
就是可以不時回顧自己有哪些問題,
此外,
看著同學們寫的心得,
也可以讓我自己略有所獲,
可以看到我沒注意到的部份或無法自行理解的地方。
最後我還是希望可以知道p.24的pages究竟是?
還有我最無法理解的3.6希望老師稍微帶讀一些部份,
萬分感謝orz
CH1~CH3
一開始對原文不太能適應,現在雖說不上完全對原文上手,
但算是對他不排斥了吧。
不過到了第二章,因為課本有現成的指令,
很多地方就會偷懶只有打打指令,
看到印出的結果後就認為自己懂課本在說些什麼。
後來發現自己很多基本觀念不清楚,
導致第三章的後半部很多地方不懂。
目前發現的問題:
1.
第56頁的p(i,j)={1 if x(i,j)>d(i,j)
0 if x(i,j)<=d(i,j) 看不懂他的意思。
2.
uint8(floor(double(x)/2)*2)
3.
>> size(unique( c))
ans =256 1
後面的1代表什麼?
4.
cd=im2double(c);
cd=double(c);
這兩者的差別是?
主要是3-5~3-6問題最多,因為幾乎都看不懂><
CH1~CH3心得
但現在越看越順利了。
我想是因為我看同一段文章
漸漸會從知道意思的部分去推敲看不懂的地方,還是不懂才查單字。
除了看原文的能力進步以外,當然還有學到MATLAB指令上的操作
但每次嚐試失敗後似乎都不太能找出錯誤的地方
而指令的概念也越來越難了,讓我覺得有些吃力
看來考完期中考後要多下一番苦功了。
CH1~CH3
轉眼間已經要期中考了..
原文書還是有翻..但是有時候總是覺得看不太下去..
有些地方會直接跳過 直接使用 MATLAB 實作下去.
反而比較了解~
雖然看原文書..可以增進英文能力.. 但是時間總不夠用
自己反而是透過 KEY 指令 觀察圖片差異 作了解~
CH1~3(事實上我是補充CH3沒看完的地方)
Quantization and Dithering(量化跟混色)
Quantization:
(1)The number of grayscales used to represent the image
(2)most image will have 256 grayscales, which is more than enough for the needs of human vision (簡單的說,256灰階值已經超過足夠(超過)人眼的判斷)
方法:
Uniform Quantization:
To represent an image with only n grayscale, we divide the range of grayscales into n equal (or near equal) ranges and map the ranges to the values 0 to n-1.
(將圖片的陣列分為n小塊來進行區隔其數值範圍為0~n-1)
也就是當設定n=4作分隔的話,256(256灰階度)/4=64,也就是64個灰階度為1區塊
原始數值=>區塊=>計算完成後的值
0~63=>0 =>0
64~127=>1 =>64
128~191=>2 =>128
192~255=>3 =>192
使用語法:
(1)f=floor(double(x)/64);
q=uint8(f*64);
(利用此方法很容易的就將數值區分為各區塊 =>floor的用法為取比此數小的最大整數)
問題:
為何不使用
f=floor(x/64);
q=uint8(f*64);
自行解答:
在使用上uint8格式下的矩陣,會在除過以後自行”四捨五入”因而造成不一樣的結果(雖然看似差不多,但其使用上就沒辦法照上面的方式區隔,而且會出現超過255的數值)
簡單的說就變成以下方式
原始數值=>區塊(以下為大約)=>計算完成後的值
0~31=>0 =>0
32~127.49=>1 =>64
127.5~95.99936=>2 =>128
96~223.999936=>3 =>192
224~255=>4 =>256(超過灰階值範圍!!)
(一直用計算機計算@@)
以下為執行結果
“左”為從頭到尾都不轉換影像格式的(明顯亮度較亮)
“右”為有轉換為double再轉換回來的
(2)grayslice
ww=grayslice(x,4);
imshow(ww,gray(4))
(當數字越大,劃分的區塊越多,原圖也越接近)
DITHERING:
(1)Refer to the process of reducing the number of colors in an image.
(2)Dithering is necessary sometimes for display, if the image must be displayed on equipment with a limited number of colors or for printing.
=> Halftoning :
Representing an image with only two tones.
Method:
(1)dealing with such false contours involves adding random values to the image before quantization.
(2)Equivalently, for quantization to two grayscales we may compare the image to a random matrix r.
( The trick is to be devise a suitable matrix so that grayscales are represented evenly(平均地) in the result.)
=>For example(以棋盤的方式表示)
=>一個亮度約在127附近的值,其棋盤內的灰階度黑跟白很均勻的分布
=>較黑的值則有更多黑色存在於棋盤上
=>較亮的則白色較多
(詳細棋盤圖案請看Page 57,fig.3.13)
Dithering matrix: (兩種dithering matrix)
D=[0,128;192,64]
D2=[0,128,32,60;192,64,224,96;48,176,16,144;240,112,208,80]
使用方法:
簡單的說就是將圖的陣列與dithering matrix作比較,當小於等於的則取為零
以下為取得的圖(左圖為使用D去分析,右圖為使用D2去分析)
D=[0 128;192 64];
r=repmat(D,128,128);
x2=x>r;imshow(x2)
figure,imshow(x)
D2=[0,128,32,60;192,64,224,96;48,176,16,144;240,112,208,80];
r2=repmat(D2,64,64);
figure,x4=x>r2;imshow(x4)
D=[0 128;192 64];
r=repmat(D,128,128);
x=double(x);
q=floor(x/85);
x4=q+(x-85*q>r);
figure,imshow(uint8(85*x4))
上圖的結果我還不是很確定原理,好像是在加上前面量化的方式,
也就是使q量化分成了0~85個區塊,再進判斷,由Page 58的公式可以知道,他有另外保留一個q(I,j)再加上用dithering matrix判斷過的值,使圖變得更均勻
下方為只利用量化的方式呈現的圖
當沒使用dithering而使之圖變更均勻時,圖明顯較暗(所以加上dithering的效果,才會有如此的變化) =>這地方有些我想的比較難解釋出來= =
ERROR DIFFUSION(誤差分散?)(這邊不太確定,還在研究中)
=>Image量化為兩部分時,我們會考慮到灰階數值跟量化數值上的誤差
=>當量化灰階數值0~255時,會出現一些小誤差,在128附近則有較大的誤差。
=>因此將其誤差分散至各周圍的數值中
=>可使用Floyd-Steinberg Ditering 去分析(??)
心得與問題:
(1) 這次的作業對我來說有點難度,感覺有些東西要看都看得差不多了(雖然有些還不是很熟………..只是照目前的狀況,好像沒時間慢慢再看一遍了@@),所以我先放上禮拜說的CH3沒看完的部分的”重點整理”。
(2)剛剛看過了一些修同一門課的同學發的內容,我想關於影像處理作業的問題,我覺得因人而異啦,事實上心得跟問題我也沒寫很多,我的習慣大部分都是一鼓作氣把課本內容看過去,我對於自己是否有問題方面反而比較少去注意(有時候覺得自己懂了,有時候是沒想到問題),因此我就把這個當作我的整理,對我來說,每周作業是可以盯著我讀書的方式(依我的習慣,很容易不去看,而且沒出作業的話,我覺得我會沒打好基礎就直接從第四章開始讀了),也許有人認為把課文內容打出來所以分數才會比較高的作法並不合理,因為寫少的人並不代表真的不認真(認同),不過分數也跟學生互評的習慣有關(不過認為自己有收穫才是最重要的吧)。
問題:
(1)關於Spatial Resolution那邊的語法imresize的運算法還是搞不太懂,不太清楚如何在縮小圖像的時候取新的數值(想了一些用法,但是都不太對),感覺又跟課本說的不太一樣,希望這部份能有人解答
CH1~3心得
上這門課幾個禮拜下來,
收穫很多,而且比以往來的輕鬆,不會有壓力,
我很喜歡這樣的學習方式XD~
從第一章一開始的入門介紹,
到第三章開始進入程式的領域,
有著許許多多的問題,
不懂的地方大多都看同學的心得就可以通了,
不過雖說看原文書到現在也有一段時間了,
但其實我還是在摸索看它的方法,
說真的,一個字一個字查,真的很累,
我一直在想要不要用看英文閱讀測驗的方式去看它,
但後來還是打消了,畢竟看原文書的功力還是要一點一滴的累積,
遲早還是要面對的...
接下來就是期中考了~衝阿XD~
week
但也有本來好像了解的,現在看竟然要一段時間才能回想起了
有些則是根本還給老師了(傻笑),真是糟糕….
至於看原文書..有時候實在看不太懂,單字查出來的意思直接套上去會出現好笑的情況,像之前老師上課提到的漫射光,或是在看2-5後面檔案格式的時候看到thumbnail,實在是不太懂他到底想表達的是什麼 。
有些有附上程式,英文太多總是跑程式先,但有時候跑了之後出現的問題沒辦法解決,
或是根本不了解他想表達什麼,但是英文又有解說,所以還是努力的看吧
但通常程式跑了之後能了解的,有些解釋也看得懂,不知道是因為那個本身較簡單,還是產生了互補,不過有些時候也是用錯誤的觀念去想就是了
不過有時候寄望於matlab 7會讓人失望阿,因為課本講到指令那本沒寫,可能是因為太基礎了吧@@?
這次要問的就是2.3的index color,為什麼讀出來的值是那樣,英文單字都懂,但是合起來就不會啦
雖然同學有解釋過了,只大慨知道要用到索引,
其它部分不是很清楚,請老師解釋吧^^a
3-5馬賽克還是不明顯阿,只有模糊的感覺而已,調螢幕解析度也差不了多少…。
上課老師有導讀過一部分,這樣比較好理解,也希望帶一下每一章的後面幾節(3-6目前霧煞煞)能講過 。
互評有些人被投到的次數較少,這個應該要想辦法解決
像是把大家的票數都以一個值來算(好像挺麻煩),或是能多一點人來投(這個..老師雖然說用扣分來強迫投票了啦),乾脆延長投票時間好了0.0
還有隨機15個...好像有評到重複的?