請問如何做出影像浮雕的效果 |
尚未結案
|
feifei
一般會員 發表:2 回覆:1 積分:0 註冊:2002-12-17 發送簡訊給我 |
|
HomeSound
中階會員 發表:44 回覆:178 積分:94 註冊:2002-08-31 發送簡訊給我 |
引用之前文章內容 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=21806
圖像的浮雕效果實現
浮雕效果就是只將圖像的變化部分突出出來,而相同顏色部分則被淡化,使圖像出 現縱深感,
從而達到浮雕效果,這裏採用的算法是將要處理的像素取值為與處於對角線上的另一個像素間
的差值,這樣只有顏色變化區才會出現色彩,而顏色平淡區因差值機幾乎為零則變成黑色,你
可以加上一個常量來增加一些亮度:new_value=difference const_value,具體代碼如下:
void __fastcall TForm1::btnEmbossClick (TObject *Sender)
{ int red,green,blue;
const int const_value=128;
for(i=0;i< width-2;i )
for(j=0;j< height-2;j )
{ red= abs(rgb[i][j].r_color-rgb[i 1][j 1].r _color const_value);
green=abs(rgb[i][j].g_color-rgb[i 1][j 1].g _color const_value);
blue= abs(rgb[i][j].b_color-rgb[i 1][j 1].b_ color const_value);
bitmap->Canvas->Pixels[i][j]=RGB (red,green,blue);
}
Image1->Picture->Bitmap->Assign(bitmap);
}
以上僅供參考用 發表人 - HomeSound 於 2002/12/17 23:05:37
------
--==多看.多學.多聽==-- |
feifei
一般會員 發表:2 回覆:1 積分:0 註冊:2002-12-17 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |