我有我的計算機科學類特殊的任務,我們必須這樣做,以減少圖像的尺寸如下:C++逐像素的圖像縮略
- 查找塊的平均顏色通過對每個塊的R,G和B值進行平均,n乘n像素(n由 用戶給出)。
- 將該顏色封裝到一個像素中(只是一個普通的舊數據類)。
- 使用您擁有的像素創建新圖像。
當我說找到的平均值,我的意思是每個塊的平均顏色(如下面,僅較小的):
上述圖像將產生4像素* 3PX圖像縮略圖。實際上,我們會使塊〜10px左右。如果圖像不能完全被塊大小整除,我們應該忽略多餘的像素。
圖像的像素可以直接訪問:
pixels[x][y].red = 130;
pixels[x][y].blue = 200; // etc
和圖像可以通過以下方式創建:
image x;
x.createNewImage(xSize, ySize);
pixel** xPixels = x.getPixels();
//then you can assign as above.
嘗試很多不同的事情後,我就如何仍不明朗解決這個問題。
開始創建其中n象素求n塊的平均顏色的功能,開始與N = 1 – wimh 2014-11-08 19:36:43
我想你有一種加載圖像的方法。你如何得到圖片的大小? – Christophe 2014-11-08 19:40:19
@Christophe可以通過調用圖像對象上的getWidth()和getHeight()來完成此操作。即'img.getWidth()'或'img.getHeight()' – Nick 2014-11-08 19:48:17