關於影像分割... |
答題得分者是:taishyang
|
jrshue
一般會員 ![]() ![]() 發表:2 回覆:3 積分:1 註冊:2003-08-16 發送簡訊給我 |
麻煩個位大大幫個忙....
我的問題是,我想將一個image中分成9塊,不是針對整個image,而是只對其中的局部分區作處理,我的image是300*300的,想把其中9個20*20作處理,但是我用for回圈寫,例如:
int x,y,gray,sum1,mean1,mean2,sum2,sum3,mean3,sum4,mean4,sum5,mean5,sum6,mean6;//,sum7,sum8,sum9,mean1,,mean7,mean8,mean9;
{
//case 1:
for(x=60;x<80;x )
{
for(y=60;y<80;y )
{
TCColor c=Image1->Canvas->Pixels[x][y];
gray=((byte)c.Red (byte)c.Green (byte)c.Blue)/3;
sum1 =gray;
}
}
mean1=sum1/400;
Label7->Caption=mean1;}
//case 2:
{for(x=140;x<160;x )
{
for(y=60;y<80;y )
{
TCColor c=Image1->Canvas->Pixels[x][y];
gray=((byte)c.Red (byte)c.Green (byte)c.Blue)/3;
sum2 =gray;
}
}
mean2=sum2/400;
Label8->Caption=mean2;}
//case 3:
{for(x=220;x<240;x )
{
for(y=60;y<80;y )
{
TCColor c=Image1->Canvas->Pixels[x][y];
gray=((byte)c.Red (byte)c.Green (byte)c.Blue)/3;
sum3 =gray;
}
}
mean3=sum3/400;
Label9->Caption=mean3;}
以下類推... 但是我發現,單一作一個區塊可以,但是做兩個以上有點怪怪的,請問各位大大,小弟是回圈的方法寫錯了嗎?
我有請教過別人,他說要我用byte宣告,但是結果似乎也是不行,到底哪裡出了問題,可以請大家幫個忙嗎?
ps.我想得到的答案,是希望在0~255之間的值
|
taishyang
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
jrshue您好:
您可以參考下小弟的拙作【發表】圖檔的切割與合併
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=32813
更改其中的範圍應該就可以了 順心
|
jrshue
一般會員 ![]() ![]() 發表:2 回覆:3 積分:1 註冊:2003-08-16 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |