2011-10-06 74 views
0

我正在構建一個程序,將圖像文件(無論文件類型是否最簡單)轉換爲G代碼,以便在帶有筆式繪圖儀附件的rep-rap上使用。如何處理圖像?

我想知道如果我想像素處理像素和檢查像素顏色的東西,我怎麼可以用C++做到這一點?

我真的想知道如何處理位圖圖像,逐個像素,檢查像素的顏色。

回答

0

最好的方法是使用庫,例如​​Magick++

當您加載圖像,你可以訪問它的像素數據與Blob

0

你可能會想使用已通過測試現有的庫。

但是對於娛樂/練習等,這將是一個很好的練習,並不是不可能的。與其他圖像格式相比,Bitmap Format(相對)簡單。維基百科頁面包含一些信息,包括一些C++代碼。它看起來像一旦你已經越過頭部信息,你得到一個像素數組,應該不難解析。

祝你好運。

0

大多數圖像格式由標題和實際原始圖像數據組成。一個bimpap圖像也不例外。如果你不希望使用現有的圖書館之一,或者如果你不能,你應該閱讀有關位圖格式:

http://en.wikipedia.org/wiki/BMP_file_format

一旦你明白這一點,你可以建立適當的結構/班存儲你想要的頭信息,如x,y尺寸,bpp等。還有一個指向原始圖像數據的指針。然後,你可以簡單地遍歷每一個像素,並做任何你想要的東西:)

0

一旦你破譯了圖像文件,我建議你將像素放入矩陣,第一遍。 (未來的修訂版可以使用其他方法來訪問像素)。

您可以使用矩陣乘法將變換應用於像素。您還可以通過使用數組索引來單獨訪問像素。

在Web和SO上搜索「圖形C++介紹」。