載入圖片的操作介面
圖片載入後的成像
計算Histogram紅色直方圖
計算Histogram綠色直方圖
計算Histogram藍色直方圖
計算Histogram所有顏色直方圖
透過XE2程式練習得到均化的圖
製作程式過程說明:
暑假專題研究就開始先練習C#的程式,雖然原本對C++Builder 6 算相當熟悉,但是覺得C#的程式較好上手,所以這次作業利用C#撰寫,首先要先對作業的觀念有的了解,老師上課很清楚的介紹有關影像的色彩觀念,再加上之前有修過用OPENCV的課程,整個原理都摸清楚了,再來就是程式撰寫上的問題,而網路上其實有很多資源都可以去利用了解,像利用GetPixel就可以取出匯入圖片的色彩值,用for去跑整張圖再利用RGB三個256的陣列去存取數值做統計,就完成Histogram統計的部分,再來是畫直方圖,在C#中是用pictureBox去當成畫布,用Pen畫筆畫上去(Pen rpen = new Pen(Color.Red);),指定好顏色和起始和最後的座標即可畫線(直方圖)(G.DrawLine(rpen, 3 * i, 319, 3 * i,
320 - re[i] / 60);),這些完成後就可以達成產生圖的Histogram了,而老師最後提到的均化這部分還在了解中,由於要學校工讀的關係,很可惜沒有去星期二的加課實習部分,但後來有聽同學說老師有釋出程式碼,所以就利用老師的程式去理解,可以礙於時間關係,原本希望自己C#程式還可以包含這個功能,在之後找時間補足了。
心得:
本次作業受益良多,了解原理之外還可以寫程式練習,這次還可以一次玩兩種與演算是給自己一個挑戰,但是相對的收穫都是自己的,程式一定要親自理解做過才會真的學會,之後上課繼續吸收知識和多實做程式練習累積計己的實力!
沒有留言:
張貼留言