簡體   English   中英

如何加載圖像並遍歷其像素?

[英]How can I load an image and iterate through its pixels?

我的問題很簡單,假設我有一個圖像並且我想將它加載到我的程序中,以便我可以獲得每個像素的顏色。 我怎么能那樣做? 簡而言之,我想要一種給我像素顏色的方法。

struct color{
    double r, g, b;
    color(){}
    color(float red, float green, float blue){r = red; g = green; b = blue;}
};

color GetPixel(string imageName, int x, int y){
    //if(x < 0 || x >= width of image) return color(0,0,0);
    //if(y < 0 || y >= height of image) return color(0,0,0);
    //do stuff
    return colorForPixelXY;
}

最好我想在本地進行,而不使用任何外部庫。

STB 圖像庫是單個文件,header 只是一個“庫”,您可以在項目中免費包含和使用它。 對於像您這樣的情況,這是一種行業標准。 強烈推薦。

https://github.com/nothings/stb

也就是說,在 C++ 中讀取 PNM/PPM 文件非常容易,因為它基本上是一個文本文件。 任何圖像 package 都可以獲取您的 BMP、JPG 並將其保存到 PNM,您甚至可以將其包含在可執行二進制文件中。

讀取 PPM 文件並將其存儲在數組中; 編碼為 C

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM