INTRODUCTION TO DIGITAL IMAGEPROCESSING
Chapter 4: POINT PROCESSING 再閱讀
◈ 詳細閱讀
這是上禮拜閱讀時寫的紀錄,這禮拜再閱讀後修正一些敘述。(純粹是
怕過了幾個月後忘記這本書所有內容時給自己的快速回憶紀錄,在此借
以做為詳細閱讀的證據。)
______________________________
◈ 實作心得
① Page 67/指令b1=b+128;的錯誤
上星期恰巧有實作到這個指令的發現:MATLAB 7.4版已無課本上所說的錯誤。
② Page 69 最後一段/double的誤會
"If an image matrix m is of type double and thus its gray values are in the range 0.0 to 1.0."這句話是說如果有一個矩陣m的型態為double,因而它的灰階值是介於0.0至1.0之間。立刻想到的是要將一個uint8矩陣的形態轉為double必須執行double(m),在這裡又忽然想起page67的指令"b1=uint8(double(b)+128)"裡的double(b)並沒有真的將值轉為0.0~1.0間,只是將型態改為double而已。要真的轉為0.0~1.0之間應該要執行"im2double(m)"才是。於是花了幾分鐘在驗證這句話。結論是這句話是不是表達錯誤(?),我覺得"型態為double"與"值因此就介於0.0至1.0",這之間不該是因果關係。萬一這裡的"thus"不是翻譯為"因而",那一切就是我無聊地想太多了。
③ Page 71/axis tight指令
剛好有看到一個人提出了這個指令在做什麼的疑問。本週就花了一點時間弄清楚它做了什麼。"axis tight;"是改變縱坐標的單位刻度。(假設固定histogram的大小為100*100(cm),假設原本某特定圖片的histogram縱坐標每10(cm)代表100次。使用axis tight;後,histogram的大小依然固定為100*100(cm),但該特定圖片的縱坐標每10(cm)改為代表120次)。目前尚未花時間想它的目的。直覺大概可能是像我們之前畫histogram會想要讓histogram的最高點能在histogram框內諸如此類的目的。
④ 函數圖
花了一點時間妄想用plot()顯示FIGURE4.10等函數圖。需要找一下資料看MATLAB能否或如何畫出函數圖。
⑤ Page 76/MATLAB判斷式find()
原本想實作page70的solarization,因為必須大於128才改變值,因此需要一個判斷式先判斷是否為128。這個判斷我先用了if end判斷,後來又改用find()判斷,但結果就是奇怪。由於是天還沒黑做的測試,腦中已不敷記憶,待會會再完整測試一次。如果還是奇怪的結果,再附上奇怪的程式碼說明。
______________________________
◈ 問題 :
上星期提出的問題 ④再閱讀後已自行理解:
目的是讓所有灰階值的數量能平均地分布在256個灰階上(例如可能前五個灰階值的總出限次數要佔全部總出限次數的2%,前十個要佔4%...),做法是第i個灰階的數量直接搬到第[(n0+n1+...+ni)/n]*(L-1)個灰階上這樣的方式。
⑥ Page 74 下方的gamma運算式/gamma運算式
如果說是從[a b]調整至[c d],我不懂的地方是"x-a"這部分,不知道x代表什麼。(目前覺得可能可以經由自己實驗來求解。但還是暫時先提出這個問題。)
⑦ Page 76/histogram equalization的idea
這段文章是說histogram equalization的idea是"change the histogram to one",就是histogram裡的每個bar都是同樣高度。但之後又說了"In practice this is generally not possible.",上星期宛諭有提到這個我沒注意到的問題,所以再閱讀時又更仔細看一遍,不知道為什麼這裡會說實際上不可行。(目前覺得這可能又是可經由自己寫程式來求解。但還是又暫時先提出這個問題。)
⑧ Page 81 最後一段/離散與連續
上星期沒提到這一段是因為覺得需要先自行看一下機率與統計課本,再仔細閱讀後發現他是在說明離散ˋ連續的histogram。
第一句"在equalization後,沒有histogram是uniform的,是因為圖片離散的特性。",如果沒有翻譯錯的話,不知道uniform的histogram與圖片離散特性之間的關係。在這之前也不知道什麼是圖片離散的特性。
沒有留言:
張貼留言