期末心得:
之前因為有修過朗師開的數媒概論
所以對老師的教學方式並不陌生
老師的教學方式是比較主動性的
回家後自己是一定要去是這寫程式
在課堂上
不會有太多時間可以來練習寫程式
所以 想學的人
回家後自然會練習
學的東西自然也會比較多
在後半段的課程中
老師就乾脆提供程式碼
讓我們回家自己copy來run
這樣我覺得還不錯
可以不用把時間花在研究程式碼該如何寫
而是把時間花在理解程式碼為何是這樣寫
----------------------------------------------
因為專研也是有關於影像處理的部分
所以上起課來自然會比較認真一點點
畢竟專研也許會用到
在濾波器 梯度銳化那邊
學到的東西 還算不少
2010年1月16日 星期六
2010年1月7日 星期四
2009年12月17日 星期四
2009年10月16日 星期五
hw2
這次的作業
主要是要讓圖片旋轉
乍看之下很簡單
可是實際上他的程式碼要不是網路上有滿多可以參考的程式
單靠自己想破頭也是想不出來的
x = (int)( ( i - xcenter )*cos(1.05) - ( j - ycenter )*sin(1.05) + xcenter ) ;
y = (int)( ( i - xcenter )*sin(1.05) + ( j - ycenter )*cos(1.05) + ycenter ) ;
這是從網路上得到的程式碼
首先遇到的問題是....

這是第一次旋轉後的結果
顯然圖片的左邊被蓋掉了
問了同學才知道
這是位移的問題
for(i=0;i+150;i++)
{
for(j=0;j+150;j++)
{
int x=0,y=0;
x=(int)((i*cosine-j*sine)+200);
y=(int)((i*sine+j*cosine)-100);
Image2->Canvas->Pixels[j][i]=Image1->Canvas->Pixels[y][x];
首先紅色字部分的是讓陣列擴大
因為圖旋轉後
他的長寬會不一樣
所以陣列值要把他放大
再來
藍色字的部分
x=(int)((i*cosine-j*sine)+200);
這是讓X座標的圖點旋轉兼位移
y=(int)((i*sine+j*cosine)-100);
這是讓Y座標的圖點旋轉兼位移
只要從以上這些值修改 就可以讓旋轉後的圖片
可以顯示出完整的圖片
for(i=0;i
{
for(j=0;j
{
int x=0,y=0;
x=(int)((i*cosine-j*sine)+300);
y=(int)((i*sine+j*cosine)-200);
Image2->Canvas->Pixels[j][i]=Image1->Canvas->Pixels[y][x];
}
}
這是修改後的值 可以讓圖片完整顯示出來
THE END
訂閱:
文章 (Atom)