顯示具有 01360494 林杰儒 標籤的文章。 顯示所有文章
顯示具有 01360494 林杰儒 標籤的文章。 顯示所有文章

2015年1月12日 星期一

色彩模型 01360494 林杰儒

色彩模型 01360494 林杰儒

每一個像素都有RGB,也有YUV,而我們的色彩模型
並沒有改變Y,也就是透明度,
RB,GB,GR即調色盤方便選取想要的色彩模型
RB即是將G設為零的色彩模型
GB即是將R設為零的色彩模型
GR即是將B設為零的色彩模型
一開始先將原圖的RGB找出來,並將原始Y(透明度)利用公式算出
再利用挑出色彩模型的RGB算出V及U,
並使用已知的YUV推出須改變的RGB並取代

經過這次的作業我更能了解RGB及YUV之間的關係
表面上看起來好像是無關,
但其實兩者可以互推,而利用互推之間的關西我們就可以完成圖片色彩值的轉換

程式碼:https://www.dropbox.com/s/ltz7zx7nxu3hri4/Unit1.cpp?dl=0
成品畫面:

一開始的原圖

















2015年1月6日 星期二

01360494 林杰儒 HW4 濾波器

01360494 林杰儒 HW4濾波器

我做了Pagecontrol方便功能區分,首先把圖片讀進去!


 我的弱平滑濾波器是將像素分成九宮格,再相加除已九,將對比的部分模糊掉,
藉以達到看起來平滑的效果


 而強平滑濾波器原理相同,不一樣的是將九宮格中中間部分*4,上下左右*2,藉由乘上不同的權重,達到更加平滑的效果!
而胡椒鹽則是利用random隨機製造出雜訊,將範圍定在寬高之中,在隨機雜訊顏色
若為1,則為白色,0則為黑色雜訊


 而中值濾波器則是將九宮格的值存在陣列中,再利用selection sort選出中間的值取代掉雜訊


銳化濾波器依樣將像素分為九塊,將中間的值*5,上下左右*(-1),藉由權重的對比
達到銳利線條的感覺

強銳化方法相同,但權重不同,九宮格中中間的值*9,其他都*(-1)
達到比弱銳化更加明顯的效果!


經過這次的作業,我更能理解雜訊的處理方式,以及如何將線條調整得更柔和與看起來
更銳利,讓我覺得非常受用!
程式碼:https://www.dropbox.com/s/te1v7jl59lpvf9b/Unit1.cpp?dl=0

2014年11月24日 星期一

01360494 林杰儒 作業3

01360494 林杰儒 作業3


一開始將畫面讀入

右下角與圖片的Image利用PageControl存Level,Curve的調整介面 以及 原圖,修改後的圖片


利用Level的輸入上下界及輸出上下界調整色彩值

將輸入輸出的上下界四個Edit值帶入程式中,再與原本圖片的色彩質做比較
如果輸入上界比原色彩值低,就將輸出上界取代原色彩值
如果輸入下界比原色彩值高,就將輸出上界取代原色彩值
如果在範圍之中,就帶入公式
iOutput = iOutputMin + (iInput - iInputMin) * ((iOutputMax - iOutputMin)/
(iInputMax - iInputMin));
                        
再將修改完的色彩值輸出就可以了

利用Curve來調整色彩
將曲線往上拉達到變亮效果

 將曲線往下拉達到變暗效果

對於Curve來說,只要將曲線畫出來,在將曲線上每一點的值取代原圖就可以了
但由於是一個拋物線,所以必須用到公式
y = f(x) = [(T-S)/(S^2-255S)]x^2 + (1 - 255(T-S)/(S^2-255S))x
在一開始我用Int來存計算完的數值,但會失敗,曲線畫出來不會變,後來我才發現
必須要用float來存,才會成功
在計算時,因為曲線起始點的位子不一樣,所以必須要調整
必須將Y-255


雖然概念不難,可是要將其轉為程式還是會有點卡,但經過這次的練習
我對於色彩值有了更深一層的理解
程式碼:
https://www.dropbox.com/s/a9ekfpezc20o9yc/Unit1.cpp?dl=0















2014年10月22日 星期三

01360494 林杰儒 HW2

01360494   林杰儒   HW2
今天要來分析圖片的像素色彩值
所以我就挑了一張花蓮的風景照來分析

這邊要注意!!,圖片只能用bmp的圖
因為後面用的讀圖片的原件(OpenPictureDialog)只能讀取bmp的檔案

再來就是把圖片讀進去了
這裡會用到元件 
If(OpenPictureDialog1->Execute())
Image2->Picture->LoadFromFile(OpenPictureDialog1->FileName)
這樣就可以了,他是利用對話視窗來確認你要不要將圖片傳入
這邊會有布林函數,如果你按確認,會有1傳入,如果按取消,則回傳0


再來就是色彩值得輸入
bPtrImageRow=(BYTE *)Image2->Picture->Bitmap->ScanLine[i];
用指令存像素點時要記得
這邊不是RGB!而是反過來的BGR! 
我利用三個陣列來存BGR的值
藍色: iBlue[bPtrImageRow[3*j+0]]++
                             綠色: iGreen[bPtrImageRow[3*j+1]]++                          
 紅色: iRed[bPtrImageRow[3*j+2]]++

再來利用Move to()與 Line to()
將點與點之間連接
並存入對應的BGR的image裡面
就完成了!!

還有一張負片的像素分析

程式碼:https://www.dropbox.com/s/t6g5ns1nkgck99k/10741644_926650557352772_1595989763_n.cpp?dl=0

2014年9月28日 星期日

資工三乙 01360494 林杰儒 HW1

由於平時很少用一些拍照軟體,知道的不多
只知道 Instagram,camera360等等
所以就GOOGLE了一下別人推薦的拍照軟體
看到了兩款我覺得很好玩的!

其中一款Cymera
我覺得景深景淺可以自己控制很酷
而魚眼模擬功能更是讓我玩的不亦樂乎


但由於其他功能略少,所以我就挑了另一款介紹!

我今天要介紹的是 :CameraMX!!
CameraMX有很多的特效,其中Tilt-shift我覺得最好玩
他會將照片修得像小人國一樣可愛! 這後面再介紹
CameraMX對於照片的修改不只是照片上的特效
他有三種修圖可以選:特效,材質,及外框

而且可以混著用! 
自己試一下,發現有一些特效配上材質,會有不一樣的感覺
並且可以用特效來錄影,非常好玩

那馬上就來介紹一下這個軟體吧!

這是一開始的介面,是不給人一種很專業的感覺!




這是進入後的畫面,旁邊有特效可以選擇




接下來就是重頭戲,效果的實際拍攝了
因為效果太多了,所以我挑了幾個我覺得好玩且實用的介紹

這是HDR效果的拍攝
左邊是無效果,而右邊是HDR
HDR可以用來拍攝護外,因為戶外陽光較大
所以可能造成光暗不均的情況,而HDR會連拍三張照片並合成
來解決光暗不均的問題


接下來是Tilt-shift的效果
Tilt-shift(移軸攝影) 是利用人眼的對焦及景深
中間的清晰,上下的焦距模糊,使其有景深景淺的錯覺
來造成有小人國的感覺

而這是color splash
將紅色以外的顏色屏蔽,變成另一種風格的照片
這個特效可以選擇想要讓哪種顏色出現
而其他屏蔽掉

接著是萬花筒特效
看久了會有一種想吐的感覺

剩下的特效因為沒有很特殊,我就不多加詳述了





實際出去拍照以後發現到要拍出一張好照片真的不容易
光線的位置,亮暗,以及景物的深淺等
都是一門學問,是一門非常好玩的學問!