圖一、原圖 |
圖二、灰階圖 |
圖三、3D圖 |
步驟:拍出原圖後用WORD把原圖轉成灰階圖,並透過DEPTHY生成3D圖。
Homework1:畫出影像直方圖與使用累積直方圖進行直方圖均化處理。
影像直方圖的算法:
統計圖片的每個像素點的RGB直存放到陣列裡,再將RGB陣列的值放到圖表內。
累計直方圖的算法:
統計圖片的每個像素點的RGB值將小於等於1-255的累積量置入一個長度為255的陣列內,並除以影像像素點的總和得到每個RGB值出現的機率。
將影像直方圖產生的像素色彩值陣列乘以各個色彩值的機率再乘以255(RGB值的個數);即為 公式:g(x,y) = cdf( f(x,y) ) * 255
demo code: https://github.com/zwei-c/image
C#版本
空間濾波器實作
Homework3:平滑、銳化、中值濾波器實作
空間域的影像處理會直接針對影像的像素色彩值進行處理,取代原先的像素色彩值,先前作業的直方圖均化、色階或是曲線調整也都是用這種方式來進行影像處理。
本次作業所實作的為平滑(Smoothing)、銳化(Sharping)及中值(Median)濾波器。
首先,會開啟原始影像,如圖1,並在影像上進行椒鹽雜訊(Salt and Pepper Noise),如圖2。
在進行本次作業時,程式撰寫步驟為:
1、導入原始影像,儲存影像之長與寬數值。
2、撰寫椒鹽雜訊。
3、撰寫中值、銳化、平滑濾波器之程式碼,並顯示處理結果。
PhotoShop Levels and Curves 功能實作
Homework2:撰寫出 Levels and Curves 功能
Photoshop的色階(Levels)調整功能主要分成輸入與輸出色階,分別會有上界與下界,意指色階只會在這範圍之中。輸入色階低於下界時會調整為輸出色階的下界值;反之輸入色階高於上界值則會調整為輸出色階的上界值。
Photoshop的曲線(Curve)調整功能是透過輸出入色階的調整函數還進行影像處理,與色階調整的差別在於函數圖形的線條可以是曲線,接著依照函數所計算出的數值來對影像進行處理。
首先,由於有兩項影像處理之功能,因此以tabsheet來做Levels與Curve的分頁,並畫上預設的函數圖形,如圖1。
導入影像後,左側上的影像為原始影像,下方則是處理後的影像,在經由Apply按鈕後進行影像處理,如圖2。
經由輸入與輸出中的上下界數值更改以後,影像處理後的結果顯示較為黯淡,如圖3。
再來是Curve分頁,分頁中畫出了預設的函數圖形,如圖4。滑鼠移動至上圖後會顯示游標之座標於Apply上方,點擊後會以紅點來標示點擊位置,並且根據此座標來重新計算出新的曲線函數圖形,如圖5。
在進行本次作業時,程式撰寫步驟為:
1、導入原始影像,儲存影像之長、寬數值
2、預設 Levels 輸入、輸出之上下界數值,並繪製預設函數圖
3、四個值在更動時,函數會立即重新計算並更新圖形
4、根據函數,Apply按鈕對原始影像進行處理,並顯示在下方做比對
5、繪製預設 Curve 之函數圖
6、抓取游標於圖上之移動位置,並記錄點擊位置
7、根據函數,Apply按鈕對原始影像進行處理,並顯示在下方做比對
Color Histogram and Histogram Equalization
Homework1:畫出影像直方圖與使用累積直方圖進行直方圖均化處理。
首先要畫出如圖1之影像色彩直方圖需要先統計紅、藍、綠之三原色色彩數量,並將結果以直條圖的方式呈現。
直方圖均化(Histogram Equalization)是一種自動調整影像對比的處理方式,其方法只需要將原影像之像素色彩值的累積密度函數乘上最大色階值即可。
原影像:f
像素色彩:f(x,y)
調整後影像:g
g的像素色彩值:g(x,y)
公式:g(x,y) = cdf( f(x,y) ) * 255
經由直方圖均化處理後的影像如圖2中左下角的圖片。
在進行本次作業時,程式撰寫步驟為:
1、讀入影像,儲存影像之長、寬數值
2、影像色彩值統計
3、累積直方圖統計
4、直方圖均化計算
3D原理:一般的2D(2 Dimensions)所指的是透過點與線所組合而成的2D平面,而3D(3 Dimensions)則是透過點、線、面三維矩陣所產生的立體面。對於人體來說,我們眼前所看到的畫面是由左右眼兩個單獨畫面所組成、聚焦的3D立體畫面。
透過所謂的立體化過程(Stereopsis),我們的大腦將左右兩眼所各自接受到的單獨畫面進行合併,並且在立體化的過程中將看到的畫面合併成具有三維立體面,且具備景深的3D立體畫面。
以下為拍攝的兩張照片如圖1、圖2:
直方圖均衡化:這種方法通常用來增加許多圖像的全局對比度,尤其是當圖像的有用數據的對比度相當接近的時候。通過這種方法,亮度可以更好地在直方圖上分布。這樣就可以用於增強局部的對比度而不影響整體的對比度,直方圖均衡化通過有效地擴展常用的亮度來實現這種功能。
以下圖片為成果和程式碼。
HW2 3D影像
原理:
一般的2D(2 Dimensions)所指的是透過點與線所組合而成的2D平面,而3D(3 Dimensions)則是透過點、線、面所產生的立體面。對於人眼來說,眼前所看到的畫面是由左右眼兩個單獨畫面所組成的3D立體畫面。大腦將左右兩眼所各自接受到的單獨畫面進行合併,並且在立體化的過程中將看到的畫面合併成具有三維立體面,且具備景深的3D立體畫面。
因此藉由此原理便可製作一張3D立體影像,步驟如下:
(1)先拍攝一張物體,如圖1.
(2)再將鏡頭往右或左橫移不到5公分後。再拍一張,如圖2.
(3)將兩張合在一起便可得到圖3.的立體照片,此立體照片藉由3D眼鏡觀看,便可看出立體
HW1 影像直方圖統計
程式執行後,先從程式介面中的File鍵匯入彩色圖片。如圖1.所示
圖1.匯入的原圖
再點擊procces鍵裡的histogram,便可得到原圖的三個顏色的直方圖,這三種顏色分別是藍色、綠色、紅色。其原理是將這三種顏色在圖片中出現的機率,分別以統計圖表示,如圖2.所示。
圖2.圖片三種顏色的直方圖
圖3.則是原圖進行直方圖均衡化後,三原色被平均分佈的樣貌。
圖3.直方圖均衡化後的圖片