2020年1月13日 星期一

05360835 沈奕韋 hw5


這次是要做出色彩的模型,而重點是RGB轉YUV

分別是:RB、GB、RG、YUV。

06360984 翁明緯 HW5

色彩模型

這次要介紹的是YUV色彩模型,裡面Y指的是亮度、UV是彩度。
我們這次的YUV模型將UV值固定Y值由使用者變更。
以下是把Y值由0~255的漸進


可以非常清楚的看出來Y值(亮度)在進行改變Y越大亮度就越高。

05360835 沈奕韋 hw4

讀取好的原圖
使用平滑濾波器後

加入胡椒鹽雜訊


使用中值濾波器

使用銳化濾波器


在銳化濾波器以前都非常簡單但是也很繁瑣
如果使用最簡單的方法的話
4個角落以及4個邊都會沒有效果
所以特別用了很多的if, else if, else去run那些特殊地方

中值濾波器因為是"中值"
而4邊和4角都沒有所謂的中值
所以是感覺上最簡單的

胡椒鹽有動了些手腳
輸入基數其實是用+1後的數值下去做運算
不會有小數點的問題

在銳化濾波器的地方遇上了蠻蠢的問題
但是因為不清楚原因所以一直改程式碼
最後請教了同學才知道只是簡單的要設範圍
讓最後結果最低是0   最高是255就沒事了

05360835 沈奕韋 hw3

        在做這作業的時候,我把Level跟Curve介面設計在一起以便操作,在Level界面可以手動輸入輸入及輸出的上界及下界值,按下"apply"便會在"修改後"旁的image框中顯示出修改後的圖片,
輸出公式如下:
myOutput = myOutputMin + (myInput - myInputMin) * ((myOutputMax - myOutputMin)/(myInputMax - myInputMin));



(a) 以Level調整完色階的結果





(b) 用Curve調整使圖片便亮



(c) 用Curve調整使圖片便暗

05360835 沈奕韋 hw2


色彩直方圖



影像色彩直方圖就是統計中的PDF,就是對每個像素點的RGB值的出現次數分別做統計,接著將色彩值出現次數的分布情形用直方圖呈現出來



1、為什麼要做直方圖均衡化
在現實的拍攝過程中,比如說視訊監控領域,由於其影象的灰度分佈集中在較窄的範圍內,這就導致了影象的細節不夠清晰。為什麼不清晰呢,因為灰度分佈較窄時,那麼,在計算對比度的時候,對比度就很小,所以就不清晰。為了使得影象變得清晰,那麼就需要使得灰度值的差別變大,為了使得灰度值的差別變大,就意味著灰度分佈就變的較寬,使得灰度值分佈變得均勻,在某個灰度級區間內,畫素的個數分佈大致相同,這樣才能使得影象的對比度增強,細節變得清晰可見。

2、直方圖均衡化的原理

直方圖均衡化就是對影象進行非線性拉伸,使得變換後的影象直方圖分佈均勻。



以下是公式







範例

06363031 楊文慶 HW5

色彩模型


RGB色彩模型:將其中一原色固定,其他兩原色用不同程度相加,可以呈現不同平面。


當其中一原色固定為0時

綠藍平面

紅綠平面

紅藍平面


當其中一原色固定為255時

紅藍平面

紅綠平面

綠藍平面

任意輸入一個數來改變模型
R為180的綠藍平面



05360835-沈奕韋-hw1

我今天要介紹的是一款名叫photoscape的軟體



PhotoScape 提供包括檢視器、編輯器、批次處理、頁面設計、相片合併、GIF 動畫製作、列印、分割、擷取畫面、選色器、批次重新命名、RAW 轉換、臉部搜尋等等,幾乎你想得到的與相片有關的功能都全部收錄在一起了



編輯修圖要先調整照片尺寸,網路上圖片寬度建議大約在400~640 px,一來不會佔去太多版面,二來長寬適中便於瀏覽,點選調整大小選擇最小長邊640px,若想復原可點選右側的上一步或下一步或重設按鈕。




如有照片過暗情形,可點選亮度,色彩按鈕或亮度,色彩按鈕旁邊的下拉式選單來選擇變亮選單參數,若執行一次變亮後,覺得照片還是不夠亮,可再重複執行變亮效果搭配強、中、弱等參數作細部修正微調,也可將對比度、色相、飽和度等其他各種效果互相搭配使用。





亮度修正







油墨效果





灰階效果



PhotoScape 還有內建其他功能,包括拼貼、動畫製作、列印等等

如果你是 Windows 的使用者,偶爾需要修修照片、或者加入文字、調整亮度色調、修改尺寸等等,可以使用這款功能好用又免費的軟體呦!!!






06363031 楊文慶 HW4

空間濾波:針對空間遇上的像素色彩進行處理。
平滑空間濾波:將要處理的像素與四周的像素相加再除以9,來模糊化與減少雜訊。
原始圖案
平滑空間濾波處理
可以看到圖片變得模糊


中值濾波:將要處理的像素與周圍的像素取中位數,用來處理雜訊。我們先用在圖片上隨機加上胡椒雜訊,再用中值濾波處理。
撒上胡椒

中值濾波處理
可以看到雜訊變少了,但是圖片沒有那麼清楚了


銳化處理:用來強化影像細節。
原始圖片

銳化處理
齒輪變得更清楚,以及擒縱夾板(右邊的夾板)的雕花可以看到陰影更清楚了

心得:在做銳化濾波時,我沒注意到處理後數值可能超過範圍,圖片一直有問題。直到我看到其他人提出這個問題才注意到。
沒有注意範圍的下場



2020年1月12日 星期日

06360321 鄭子輿 HW5

YUV色彩模型與色彩轉換
YUV色彩模型:Y為亮度,U、V為彩度,因為人的眼睛對於亮度較為敏感,彩度較不敏感,因此可以減少對彩度的取樣,達到省空間的效果。

界面總攬
Y:使用者字定義UV平面亮度
Set new Y in YUV palette:用當前亮度值重新畫UV平面
Before conversion image:轉換前的影像
Origin image:最原始的影像


YUV palette

利用整數轉換公式將YUV palette的值轉換成RGB畫在圖片相對應的位置上
公式如下
clip是自己寫的函數,為了預防轉換公式後色彩值超出0~255的範圍,所以要將超出的色彩值定義在範圍內。

下面分別為亮度0、亮度128、亮度255的UV平面



色彩轉換:將原始影像RGB轉換成亮度+palette內點選的UV彩度=色彩轉換後的影像。

RGB轉亮度的公式
原始影像

各種色彩轉換後的影像



心得:測試過程中發現先使用其他功能調整完影像後再使用色彩轉換會將最原始的影像做轉換,而其他功能的效果就消失了,因此需判斷在進入色彩轉換頁面時複製當前圖片,進行色彩轉換時拷貝當前圖片再轉換,判斷方法如下
CopyImage()是自己寫的函數。


魔術棒有bug,所以無法po上來了QQ,以下是自己研究繪製簡單圖形的部分,不算加分,純分享。
Canvas繪圖
下圖為圓形+正13邊形+正13角星的圖形
在Canvas上繪製圓形+正N邊形+正N角星方法:

圓形參數式
X = A + R * cos( θ )
Y = B + R * sin( θ )

(A,B)為圓心偏移原點(0,0)位置
R為圓半徑
0 <= θ < 360

利用上面圓形參數式即可化出圓形
程式碼:


正N邊形+正N角星
作法:得出其中一條直線參數式之後再使用旋轉矩陣劃出每一個邊。

θ = 360 / N
假設O為圓心

上圖左邊公式為正N邊形其中一個邊的直線參數式
AB線段為正N邊形其中一條直線
OA線段與OB線段間角度為θ

上圖右邊公式為正N角星的其中一個邊的直線參數式
AC線段為正N角星其中一條直線
OA線段與OC線段間角度為2*θ

個別求出參數式之後再使用旋轉矩陣將其他直線畫出來
旋轉矩陣公式:
程式碼: