2010年12月16日 星期四

HW3

HW3-1

-Sony 3D展-
心得:
當天一大早就到阪急百貨等待十一點入場
入場後拿了3D眼鏡繼續等待......
現場真的是滿震撼的
看到大家以3D呈現在螢幕上覺得很逗趣
在一開始的舞台show就介紹了許多sony 3D相關產品
未來很多產品應該也都會以3D呈現吧...還滿期待的!

大舞台結束後也參觀了許多不同的展示區...
遊戲3D賽車區感覺很吸引大家 排了好長的隊 但沒有很吸引我就是了...

讓我比較印象深刻的是一開始的舞台show 很震撼

另外還有α數位(單眼)相機 拍攝出來的影像居然也能以3D呈現
這就非常的吸引我... 引發我購物的慾望!!!!!

最後是環保區
sony不知道將什麼技術運用在家電上
(這區跟3D有關係嗎...?)
電視開著 在一段時間內會自動偵測周圍還有沒有人在活動
如果沒有的話 就會將電源調整至最低 以節省電源...
還有利用回收的塑膠作筆記型電腦 外觀看起來其實還滿漂亮的
而且重量比一般筆電輕。

其他區其實就還好 都差不多...

闖關贈品拿了一個滑鼠墊
也不是所有東西都需要戴上3D眼鏡才真的看的到3D
滑鼠墊上的圖案就是一個例子

看完3D展後還滿感動的
以前其實也沒想過3D技術可以被運用的這麼好
看完了這次的3D展 收穫還滿多的...
希望以後還有機會看到sony辦這種展覽囉!


HW3-2

-自製3D-

其實用BCB還滿好做的
只是在顏色調的比例上試比較久而已















我不管怎麼調 顏色都是綠色比較多
測到最後還滿生氣的...

後來效果比較好的是這張
(國父紀念館)



























以下都滿失敗的
所以是要用紅色綠色的眼鏡去看嗎...






























這個作業還滿容易就完成的
只要取左眼和右眼不同的影像
再取紅色和藍色最後再做融合就完成嚕!
但失敗品很多.....
我不知道怎樣調比例會最好 :((


另外,這是用同學的BCB融合出來的
效果比較好



















雖然都是用BCB寫的 跑出來的效果都不一樣
這張藍色玻璃紙放在右邊看 效果比較好
有和同學討論過 寫的方法不太一樣
同一個點只拿一張的綠色值的話 才不會造成我那種效果...
所以要去試試看嚕!


0108 我再次修改了一下程式 效果果然好多了













































我多讓程式做了一個判斷

ucRed2=(GetRValue(Image2->Canvas->Pixels[i][j]));
ucGreen2=(GetGValue(Image2->Canvas->Pixels[i][j]));
temp=(GetBValue(Image2->Canvas->Pixels[i][j]))*2;


if(temp>255) ucBlue2=255;
else
    ucBlue2=(unsigned char)temp;
    Image2->Canvas->Pixels[i][j]=(TColor) RGB(ucRed2,ucGreen2,ucBlue2 );

多設一個變數temp來收GetBValue*2的值
去讓他做判斷看有沒有超過255
一開始寫的程式沒有這樣做 當它如果超過255
程式就會隨機塞一個亂數值給它 所以跑出來的圖不會是理想中的圖
而這樣寫的話 可以避免此狀況 跑出來的圖效果就會是自己想要的
(這是取藍色值的紅色值的比照辦理)

程式其實很容易寫
但需要的照片卻很難拍
我試了很多張 就是找不到效果比較佳的
這次的作業還不錯 看誰的拍照功力較強 3D就會較明顯嚕...


最後還有一種是老師的方法
進入左眼影像:
只留紅色, 將綠色、藍色之色彩值設為 0

ucRed1 = (GetRValue(Image1->Canvas->Pixels[i][j]));
ucGreen1 = (GetGValue(Image1->Canvas->Pixels[i][j]))*0;
ucBlue1 = (GetBValue(Image1->Canvas->Pixels[i][j]))*0;
Image1->Canvas->Pixels[i][j]= (TColor) RGB(ucRed1,ucGreen1,ucBlue1 );

進入右眼影像:
保留綠色、藍色, 將紅色之色彩值設為 0

ucRed2 = (GetRValue(Image2->Canvas->Pixels[i][j]))*0;
ucGreen2 = (GetGValue(Image2->Canvas->Pixels[i][j]));
ucBlue2 = (GetBValue(Image2->Canvas->Pixels[i][j]));
Image2->Canvas->Pixels[i][j]= (TColor) RGB(ucRed2,ucGreen2,ucBlue2 );

合成圖:
從左眼影像取得紅色色彩,從右眼影像取得綠色、藍色(青色) 之色彩值

ucRed3 = (GetRValue(Image1->Canvas->Pixels[i][j]));
ucGreen3 = (GetGValue(Image2->Canvas->Pixels[i][j]));
ucBlue3 = GetBValue(Image2->Canvas->Pixels[i][j]);
Image3->Canvas->Pixels[i][j]= (TColor) RGB(ucRed3,ucGreen3,ucBlue3);


這我也有試 這應該是最成功的吧
只是我的照片拍不好... 照片OK的話 這個的3D合成圖就很OK嚕!!!









































這最後一個作業做了好多不同的方法噢
其實也是在取值部分做一些改變而已...
哈哈 真的很有趣... 我決定去練習拍照了!!!!!

沒有留言:

張貼留言