線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:764
推到 Plurk!
推到 Facebook!

請問關於這個影像儲存的矩陣.....

答題得分者是:keikojason
xdio2
一般會員


發表:60
回覆:29
積分:17
註冊:2004-07-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-21 01:35:49 IP:61.59.xxx.xxx 未訂閱
我想問的是泰祥版主在影像處理區那邊的精華文章中 他寫的影像處理程式中一個矩陣處理的問題(應該算是基礎觀念吧..) 紅色之處便是我要問的地方 請問當他存到p1這個矩陣中時 矩陣的像素排列方式相較於原本在Bmp中的像素儲存 p1存的像素排列方式是不是等於Bmp像素排列方式左轉九十度? 因為像素的Pixels[X][Y]好像跟我們矩陣存放的方式不太一樣 請大大賜教 感謝~    
int p1[640][480];    void __fastcall TForm1::Button5Click(TObject *Sender)
{
 if (Image1->Picture->Bitmap->Empty==true)
 ShowMessage("請載入圖檔!!");
 Graphics::TBitmap *Bmp = new Graphics::TBitmap();
 Byte *ptr;
 Bmp->Assign(Image1->Picture->Bitmap );     for (int i=0;iHeight;i   )
   {
    ptr=(Byte*)Bmp->ScanLine[i];
  for (int j=0;jWidth; j   )
    {
     p1[j][i]=ptr[j*3];
    }
   }     for (int i=0;iHeight;i   )
   {
    ptr=(Byte*)Bmp->ScanLine[i];
  for (int j=0;jWidth; j   )
    {
     ptr[j*3]=Filter(j,i);
     ptr[j*3 1]=Filter(j,i);
     ptr[j*3 2]=Filter(j,i);
    }
   }
 Image2->Picture->Assign(Bmp);
 delete Bmp;}
 
keikojason
初階會員


發表:37
回覆:63
積分:45
註冊:2004-05-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-21 07:55:18 IP:218.169.xxx.xxx 未訂閱
那一行作用是將Image1讀取進來儲存在p1[j][i],而你問的好像是圖像是因為用的回圈不一樣,假設你是for (int i=0;iHeight;i ),則圖像高度480;for (int j=0;jWidth; j ),則圖像寬度,與你一開始的設定p1[j][i]=p1[640][480],圖像呈現出來就變成一個橫向的圖→640↓480...不知道這是你想要的答案...你可以參考看看大家互相指教()
xdio2
一般會員


發表:60
回覆:29
積分:17
註冊:2004-07-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-21 14:03:46 IP:61.59.xxx.xxx 未訂閱
引言: 那一行作用是將Image1讀取進來儲存在p1[j][i],而你問的好像是圖像是因為用的回圈不一樣,假設你是for (int i=0;iHeight;i ),則圖像高度480;for (int j=0;jWidth; j ),則圖像寬度,與你一開始的設定p1[j][i]=p1[640][480],圖像呈現出來就變成一個橫向的圖→640↓480...不知道這是你想要的答案...你可以參考看看大家互相指教()
keikojason 大大你是說在p1的像素 其實就是個橫過來左轉九十度的原圖囉? 我想問的就是這個部分 Pixels[x][y]的存法跟我們過去寫的矩陣存法其實不太一樣吧? 是嗎?
keikojason
初階會員


發表:37
回覆:63
積分:45
註冊:2004-05-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-10-21 15:26:10 IP:163.28.xxx.xxx 未訂閱
其實Pixels[x][y]嚴格來說應該不是矩陣,是假設成一個二維矩陣,在C的寫法實際是一維表示,真正的矩陣是二維
for(int i=0;i<4;i  )
for(int j=0;j<4;j  )
{
Pixels[i][j]............
}
由上列式子中它一樣是用一維計算分別對[i]與[j]做計算,先做i在做j而不是對Pixels[i][j]一起做運算----不知道是否你要答案..互相指教
系統時間:2024-06-27 3:02:07
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!