顯示具有 96360554 陳佳倫 標籤的文章。 顯示所有文章
顯示具有 96360554 陳佳倫 標籤的文章。 顯示所有文章

2010年1月14日 星期四

HW7

看吧!!!這就是音波處理,我把四張圖弄成一張,這樣不會佔太多頁面。也比較一次看的清楚跟比較,左上圖為X軸縮減20,Y軸縮減200 ; 右上圖為X軸縮減20,Y軸縮減100 ;左下圖 X軸縮減10,Y軸縮減500 ;右下角 X軸縮減30,Y軸縮減500。

但你一定沒發現,我玩音波的同時,你知道哪時候不會出現嗎???
當我把X設為0時,就不會出現音波,Y軸無論設什麼數字都不會有。
當設Y為0時,會直接出現錯誤,不給你執行。


這次的作業真的很難,所以只能尋找網路的資源,但真的好難找到,都找到一些不相干的啦!
又讓我欲哭無淚,但一定又要今天以前做完,因為明天就要回家了,矛盾之間,終於完成此項作業,得來不易><

HW8

從第一週到第八週的作業,真正學到什麼東西?我或許沒學到很多,
多半都是別人的半成品,或者老師範例做出來的。不過覺得這樣還好,
至少我懂得如何去改!!!怎樣彌補,大概就是老師要我們買的那本,
如果不懂時,就可以翻閱那本,裡面東西真的很多,所以那麼才會那麼厚,也是老師為什麼選那本的原因。前面幾個作業都是老師給範例,不懂得在翻課本,再不懂...就只能請教會的同學。
後面幾週老師不給我們範例去做,大家做出來的速度,真的慢很多,也拖了兩個禮拜!!!
最後開始有幾個人交。作業大概就只剩第七週的最不會,目前我都還沒做出來!!!
傷透腦筋,雖然網路有很多資源。但好像很難找到- -感覺到後面作業,比前面難的太多,
不過後面出的作業,才是真正有學到東西的感覺。感覺只會show出圖片,還像沒什麼了不起。
沒錯= ="我一開始我以為做出來就很了不起了xd

HW5

這次作業是調色盤,然後在把它排序整齊。這次沒範例,只能一個字說明我的狀況,難。害我不知道怎麼辦。最後打了半成品的程式碼,然後請教已經繳交的同學,然後去改,最後寫出可以排序的程式碼,因為我的原本程式碼是無法排序的,案它都沒反應,經過同學的一點,就可以排序成功。兩張圖,第一張圖片就是未排序的圖。第二張圖片就是已經排序完整的圖,相當整齊漂亮。感覺一個字,爽。終於完成,一個一個步驟做出來的感覺,就是不一樣,有種莫名的成就感。越看越覺得這支金龜子真棒!!!哈

未排序↓

排序整齊(成功)↓

如果同學有上網查的話,會查到老師的網頁,代表我有認真找資料。這就是老師所PO的:BCB 的核心除了以 C++ 程式語言為基礎之外, 最重要的就是 Visual Component Library 了。BCB 把在視窗應用程式 ( window application ) 中常用的一些功能, 包裝成一個個的元件 ( component ), 這些元件通通被放到上圖的 Component Palette 中, 由於元件太多了, 因此 BCB 用分頁選單的方式, 將性質相近的元件放到同一個標籤頁中, 方便我們使用。



然後這篇是網路上人家討論的文章
看著裡面人家討論的,真的很厲害。經過這次的作業洗禮,進步了不少!
因為這次做的好像比之前開圖檔,來的好玩多。之前還再沉溺只會開圖跟show東西,就以為很了不起,其實只是皮毛。這週的作業是調色盤是吧?我要再把它延伸其他,增進自己的實力,對自己的期許。

2010年1月9日 星期六

HW6

這是前幾天就做出來的,那時候只繳交執行拍下來的圖片,開啟檔案,會show出檔名、檔案大小、幾聲道等等。對照一下。


然後再來是我更新過的,也就是我再加強的地方,跟參考別人有什麼補上去的,只要將檔案執行,案那個open就會自動出現資料夾的檔案,在選擇你要的開啟。

然後看到別人作業多了好多排,暫停的鈕及快轉等等,所以我就把它填加了上去。感覺比較好看,也比較豐富。感覺起來就是不一樣。程度提升,哈哈。



這次做完的心得,感覺要open聲音檔時,那時簡直要我們的命,真的是難上加難,前面的調色盤都未完成,就要再繳兩次的聲音處理,真的塞車了,作業擠在一次,最後還是順利一項一項的完成。今天老師有說,到的人有加分,我可是有加到分數呢。後幾週的作業,老師上課都給我們自由時間,給我們去打,查了不少的資料。這次的作業,很難...也很好玩,相當的矛盾= ="


2009年12月2日 星期三

HW4

不知道大家有沒有發覺到,還是我個人問題?大家這週做出來的程式,再執行時一定發現,
水平解析度、垂直解析度為什麼有時候會出現零?明明程式碼是對的???為什麼會出現零呢?
我有跟很多人對照過,程式碼都是沒問題的,大家都是差不多的= ="但為什麼會這樣,
我也不知道!只知道一個很怪的小原因,如果從網頁直接下載圖,直接儲存成bmp黨(如下圖↓)
從網路存下來的bmp黨,檔案執行時,水平解析度與垂直解析度出現錯誤,會變成零。
(如下圖↓)

但如果從網頁儲存為jpg黨,再轉成bmp黨(如下圖↓)

當jpg檔轉成bmp檔時,再打開檔案執行一次,就可以正確跑出水平解析度與垂直解析度。
顯示的數字不再是零,出現的是72 dpi。(如下圖↓)

然後我們對照一下,執行的檔案是否有錯誤,這時把圖檔顯示內容打開對照。
垂直解析度與水平解析度、寬度、高度都正確show出來!!!


那為什麼會這樣?我真的不知道,只是發現,換個方式去打開,就可以正確跑出。
但不是每次都是錯誤的,有時存下來的bmp黨,打開執行,有時也是正確的,
也不竟為是完全錯誤的。


寫完此項作業的心得,感覺很有成就,因為我發現到這個小問題,還很多人說,奇怪???
同一個範例,為什麼你跑的出解析度我跑不出來呢???
終於被我姊開小小的謎題,大概是bug...

2009年11月3日 星期二

HW3

這作業再由上週的轉詼諧的圖片,再去更改的,要跑出BM、四串數字、圖的大小、圖寬、圖高。如果老師課堂沒給我們一部分的程式碼,大概還在電腦前面發呆,不過老師給我們時,我還在那滿頭霧水,最後還沒下課時,偷偷摸摸的跟人檢討出來,就在該堂把這次的作業交了,因為那時成功的show出BM、四串數、圖的大小、圖寬、圖高。當在執行時,沒出現圖,直接出現BM、四串數字、圖的大小、圖寬、圖高,最後才跑出圖片,所以我就再執行了一次,把圖留下
來,下面就是我的成果。

這裡show出BM,視窗顯示此圖片為BMP檔↓


這裡show出4串數字↓


這裡show出圖的大小佔用多少位元組↓


這裡show出圖片的寬度↓


這裡show出圖片的高度↓



這次的作業相當有趣,非常的有成就,轉成詼諧又顯示BM、四串數字、圖的大小、圖寬、圖高,相當的好玩。


這個作業老師已經評比過,只有65分,對我來說不是很滿意,所以我又加強它的程式碼。為什麼其他同學的會比我高分呢,大概就是高在...他們同一張圖同時秀出四項東西,不像我分了那麼多張圖,各秀出那些東西,看起來很凌亂,那時給老師的圖還是全螢幕,現在的圖有修剪過了。後來我又回去找我第三週的作業程式碼去改,下圖就是我已改過的程式碼,將他同時秀在同一張圖上。

非常滿意,現在都會自己改程式碼,做小變化,繼續保持下去。有機會會再修老師的課。


新增影片

2009年10月21日 星期三

HW2

以下是我當時撰寫的程式碼:

int X,Y,node;

for(X=1;X<801;x++)

for(Y=1;Y<601;y++)

{

node=(GetRValue(Image1->Canvas->Pixels[X][Y]) //Pixels[X][Y]) 位於(XY)座標的像素

+GetGValue(Image1->Canvas->Pixels[X][Y])

+GetBValue(Image1->Canvas->Pixels[X][Y]))/2;

Image2->Canvas->Pixels[X][Y]=RGB(node,node,node);

}

RGB 三原色相加除以3就能弄出灰階。
Gray=(GetRValue(Image1->Canvas->Pixels[X][Y])+GetGValue(Image1->Canvas->Pixels[X][Y])+GetBValue(Image1->Canvas->Pixels[X][Y]))/3;

那時問東問西,終於問到一個同學跟我說到要相加在除3才會成功。

所以回家馬上試試看,結果成功了。我做的圖,就是當前最的開心農場,弄成詼諧了耶^^為了怕失敗,所以再做了一張圖做確認,也成功無誤。


在BCB的範例中,灰階調色盤的建立如下例:

// 定義調色盤結構
typedef struct {
TLogPalette lpal;
TPaletteEntry dummy[256];
} LogPal;

// 建立灰階調色盤
LogPal GrayPalette;
GrayPalette.lpal.palVersion = 0x300;
GrayPalette.lpal.palNumEntries = 256;
for(int Index = 0; Index < pered =" (unsigned" pegreen =" (unsigned" peblue =" (unsigned" peflags =" (unsigned">
建立完調色盤的內容,要產生給TBitmap的調色盤則用

Graphics::TBitmap *NewBMP = new Graphics::TBitmap();
NewBMP->PixelFormat = pf8bit; // 指定為 8bpp 的BMP
NewBMP->Width = width; // 你的影像寬度
NewBMP->Height = height; // 你的影像高度
NewBMP->Palette = CreatePalette(&GrayPalette.lpal); // 建立灰階調色盤

如果是8bits的彩色圖檔,不同索引值對應的顏色資訊就由上面的peRed、peGreen、peBlue來決定。CreatePalette()是Windows API,由調色盤資訊建立調色盤。
如果是讀入一張8bits的圖檔(到TImage1中),可以利用GetPaletteEntries()來取得調色盤中的顏色資訊。用法如下:

PALETTEENTRY pe[256]; // 接收調色盤資訊的陣列

GetPaletteEntries(
Image1->Picture->Bitmap->Palette, // handle of logical color palette
0, // first entry to retrieve
256, // number of entries to retrieve
pe // address of array receiving entries
);


心得:以上資料是我當時在做詼諧時,找到的相關資料,所以說呢...網路真的是很好的朋友,不懂時,可以請教它,不過當你要找時,不是那麼簡單找到的,也是要一篇一篇的閱讀,這篇才是你要的答案。


2009年10月8日 星期四

HW1

這項作業非常有趣,這兩張圖就是我做的成果,感覺非常好玩有趣^^
而且這超級瑪莉超可愛的拉XD
我覺得最有趣神奇的地方就是指標指到哪,
他就會顯示那一區塊的顏色,
就算只有一點點的小區塊,他也能分辨清楚!
真的超神奇的啦!!!


記得前幾次上課都是公假,
上個禮拜是我第一次上課。
一來上課...結果真的看不太懂,
而且我也沒買到書。
只好跟之前有修過的學長,
跟他們借來用。

老師首先敎我們影像處理技術,
看老師做好像很簡單,
但實際操作時,
果然我一大堆的不會,到處問東問西。

然後到今天要交作業時,果然忘光光,
後來又是到處問同學誰會。
班上都是一群熱心的人,

但我才赫然發現我的信箱沒認證!
救命啊~
在11點多時才送出我的學號班級姓名,

不過我想老師應該睡了,所以只能等到明天早上了。
最後總結
我的作業終於順利完成繳交^^