1樓:
一種方法直接讀檔案
bmp檔案的檔案頭和資訊頭共佔用54位元組 跳過54位元組直接讀取點陣圖資料
stream stream = file.openread("image.bmp"); // 開啟位**件
byte buffer = new byte[stream.length - 54]; // 緩衝區,檔案長度減去檔案頭和資訊頭的長度
stream.position = 54; // 跳過檔案頭和資訊頭
stream.read(buffer, 0, buffer.length); // 讀取點陣圖資料,點陣圖資料是顛倒的
另一種方法先載入影象 然後從中複製點陣圖資料
bitmap bmp = new bitmap(image.fromfile("image.bmp")); // 載入影象
bitmapdata bmdat = bmp.lockbits(new rectangle(point.empty, bmp.
size), imagelockmode.readonly, pixelformat.format32bppargb); // 鎖定點陣圖
byte buffer = new byte[bmdat.stride * bmdat.height]; // 緩衝區,用來裝載點陣圖資料
marshal.copy(bmdat.scan0, buffer, 0, buffer.length); // 複製點陣圖資料
bmp.unlockbits(bmdat); // 解除鎖定
2樓:匿名使用者
【求原始碼】求一個能把bmp點陣圖讀到陣列裡的c語言原始碼,網上bmp格式看不懂。。。謝謝
用c#讀取一張bmp**的資料並轉化為灰度圖儲存到檔案中 20
3樓:匿名使用者
bmp就是個矩陣,只是每個點裡面有三個數而已,直接讀
如何用matlab將讀入的bmp影象格式檔案的象素資料寫入陣列,並以文字檔案格式(*.txt)輸出。 5
4樓:大樹根
假設你有**test.bmp,可以用如下的方式讀入matlab,然後寫到txt。
img_test = imread('test.bmp');
dlmwrite('b1.txt',img_test(:,:,1));
dlmwrite('b2.txt',img_test(:,:,3));
dlmwrite('b3.txt',img_test(:,:,3));
bmp是有3個波段的,所以這裡寫了三次,分別存入三個檔案。
c 如何用檔案流將資料儲存到檔案中
玻璃麥田 ofstream myf filename ofstream檔案輸出流類,定義檔案物件myf,檔名 帶路徑 由自己設定,預設ios out ios trunc方式。即物件具有輸出能力,如檔案存在,清除檔案內容。if myf.fail 判斷開啟檔案是否失敗,失敗則返回。myf 程式設計 高手...
如何用c 的mfc繪製柱狀圖
育知同創教育 用c 的mfc繪製柱狀圖的方法如下 1 取groupbox的區域,並儲存四個值 左,上,右,下 獲取螢幕座標 cwnd getdlgitem idc static chart getwindowrect rect 計算x軸y軸基本單位 int dx rect.right rect.le...
如何將ecel中的一列中的資料輸入到c語言中的陣列
這兩樣不相同,excel是一種儲存資料的格式,c是一種運算元據的語言。用c可以操作和修改excel的內容。 5 i if xi j a j a j 1 a j x printf now array a n for i 0 i 6 i printf 4d a i printf n return 0 簡...