1樓:匿名使用者
bmp格式檔案是點陣圖,裡面儲存的是畫素點的紅\綠\藍三原色的亮度,並沒有儲存什麼特定的圖形,所以bmp檔案不能直接讀取出特定圖形的個數.
當然通過圖形識別技術,也是可以識別出直線,圓等幾何資訊.
文字識別技術可以識別出其中包含的文字資訊
臉部識別技術可以識別出人臉部的特徵資訊.
這些演算法都比較複雜.都是不能直接識別的.
當然也有能直接讀出特定圖形的檔案格式,這些格式統稱向量圖,比如.dwg(autocad), .dxf, .wmf等.
其檔案內容就是記錄**的什麼地方有什麼圖形.
2樓:匿名使用者
自己找個庫或自己看看bmp檔案格式自己解析
3樓:匿名使用者
讀取檔案方法:先定義一個int型別的檔案描述符變數,再用open函式(適合在unix或linux環境下,若是在windows環境下應先定義一個file型別的指標變數,再呼叫fopen函式)開啟所要讀取的bmp檔案即可。如果你要更改bmp檔案的顏色,那麼就看你對bmp格式的**的儲存原理知道多少了,bmp是無失真壓縮**的一種演算法,一般是由**頭部,檔案頭部,顏色表等組成,要改變顏色,就需要改變顏色表中的內容,當然由於bmp演算法在不斷改進,其過程和組成部分可能有變化,上面的僅是一般情況。
如何用c語言程式設計來顯示一個bmp檔案
4樓:匿名使用者
bool bitblt( hdc hdcdest, // 點陣圖顯示目標裝置環境中 int nxdest, // 點陣圖顯示在客戶區的x座標 int nydest, // 點陣圖顯示在客戶區的y座標 int nwidth, // 點陣圖顯示的寬度 int nheight, // 點陣圖顯示的長度 hdc hdcsrc
如何用c語言顯示bmp** 10
5樓:匿名使用者
呵呵,你是想做什麼層面?
1:從0開始解析bmp檔案,然後繪製
弄清楚bmp檔案結構,參見下面一片日誌
靠著硬解析,在螢幕上一個畫素一個畫素的建立原有的bmp影象。
2:win32api;這個得靠loadimage這個api。
具體用法請查閱msdn。問度娘msdn loadimage即可。
3:使用gui開發框架,在控制元件上繪製**。超簡單。
你們要求是什麼。對著一個個看,如果你是做課程設計等大型作業的話,肯定是選1。我看選2,3一點技術含量也沒有。調api或者相應方法完成,對於底層資料結構不瞭解,學了等於沒學。
**量是成倍的差距。數十倍。
怎麼用c語言中的fopen函式開啟bmp格式的影象檔案
6樓:匿名使用者
#include
#include
int main ()
while ((iread = fread (szbuf, 1, sizeof (szbuf), fpphoto)) > 0)
fwrite (szbuf, 1, iread, fptarget) ;
while ((iread = fread (szbuf, 1, sizeof (szbuf), fptext)) > 0)
fwrite (szbuf, 1, iread, fptarget) ;
fclose (fpphoto) ;
fclose (fptext) ;
fclose (fptarget) ;
return 0 ;}
7樓:匿名使用者
fopen看到的檔案都是位元組流。
你可以和開啟任何檔案一樣開啟bmp,但你獨到的是位元組流。
用c語言讀取24位點陣圖bmp檔案
8樓:空雪夢見
如果橫向的一行叫做一個「掃描線」的話
那麼每條掃描線的第一個位元組一定是對齊到4位元組邊界的就比如,假設一條掃描線21個畫素,那麼一條掃描線就是21*3=63位元組
實際上每條掃描線會佔用64位元組,因為下一條掃描線的第一個位元組要對齊到4位元組邊界
(所謂對齊到邊界,就是 除4餘0)
注意:以上是憑印象說的。檔案裡儲存和記憶體裡儲存是不是一樣的不太確定……
最簡單的解決方案,你要載入的bmp都確定寬是4的倍數就可以了
9樓:頂峰風光無限
行畫素錯了一位,導致影象傾斜了。
c語言怎麼判斷檔案是.bmp檔案
10樓:匿名使用者
檔案頭部前2位是0x42 0x4d 對應ascii碼的bm
c語言,怎樣讀取一個bmp**?
怎麼樣在c語言中顯示bmp**,我要完整正確的程式,急!
11樓:未來需努力點綴
lz 你好
c語言要顯示bmp點陣圖需要使用win32的api , 具體如下:
bool bitblt(
hdc hdcdest, // 點陣圖顯示目標裝置環境中int nxdest, // 點陣圖顯示在客戶區的x座標int nydest, // 點陣圖顯示在客戶區的y座標int nwidth, // 點陣圖顯示的寬度int nheight, // 點陣圖顯示的長度hdc hdcsrc, // 源裝置環境(包含需要顯示的bmp點陣圖)
int nxsrc, // 在當前點陣圖中顯示的開始x位置int nysrc, // 在當前點陣圖中顯示的開始y位置dword dwrop // 對映模式
);以下是源**:
程式執行效果:
希望能幫助你哈
ps:附件是整個工程 , 用vs2008建立的專案 , 裡面包含相應資源
12樓:匿名使用者
單純靠c語言是難以實現的老兄,要麼用api,或者用mfc
如何用c語言程式從bmp格式的**中讀取**的灰度值
13樓:尼瑪真響亮
lz我可以給你一個我以前寫過的簡單解析bmp的**。可以取出rgb,再算灰度估計就很容易了吧。
C語言讀取黑白BMP圖,如何用C語言程式從bmp格式的圖片中讀取圖片的灰度值
1.黑白bmp檔案圖的畫素大多是從62位元組 從0數起 開始。具體從哪一位元組開始,決定於檔案中第10位元組 從0數起 開始處4位元組的整形數是多少.因為檔案頭後面不是緊接著畫素值.2.黑白bmp圖的一個畫素用一個bit表示。一般0表示背景 預設為白色 1表示前景色 預設為黑色 即一個位元組代表相鄰...
如何用C語言迴圈讀取檔案內容,怎麼用C語言讀取 TXT檔案中的字串
迴圈讀取一個檔案的內容。這樣做沒有任何意義,不如把讀取的內容保持在變數當中,節省空間時間。如果非要反覆讀取的話可以使用rewind函式把檔案指標重置。函式名 rewind 功 能 將檔案內部的位置指標重新指向一個流 資料流 檔案 的開頭注意 不是檔案指標而是檔案內部的位置指標,隨著對檔案的讀寫檔案的...
c語言程式設計為什麼要多檔案呢,C語言中,如何用多個檔案編寫程式
源 確實是多檔案的。不過編譯好的目標 在執行期調入記憶體後就無所謂檔案的概念了,然而不同 段之間的界限仍然存在。模組化主要有以下幾個優點 1.便於複用 通用性強的重複的功能只要寫一遍就可以了,下次要用在其它程式上時只要更改很小的部分或者可以不用更改。2.便於多人協作。在設計軟體之初就可以很清楚地分配...