2012-06-22 127 views
2

我想從圖像中提取像素並將它們繪製在藍色大理石地圖的頂部。我已經想出瞭如何將它們投影到地圖上。我只是無法弄清楚如何在投影到地圖上時着色每個像素。
我一直在使用plot()方法,當我單獨執行它們時,終端會自動殺死我的進程,因爲它必須繪製〜65000次。有另一種方法可以使用嗎?有沒有辦法在任何這些方法中使用像素顏色數組?這可能與PIL?Python:如何使用matplotlib將圖像像素投影到地圖上

rgb是具有3元組的顏色數組,即, (14,0,0)等。full_x和full_y是二維數組,其中它是#個像素x 5個不同的x,y點(使藍色大理石圖像上的像素形狀)

這就是我試圖這樣做的顏色的數組:

for i in range(len(rgb)): 
    hexV = struct.pack('BBB',*rgb[i]).encode('hex') 
    hexA.append('#' + hexV) 

m.plot(full_x, full_y, color=hexA) 

我也曾嘗試:

for i in range(len(rgb)): 
    hexV = struct.pack('BBB',*rgb[i]).encode('hex') 
    #hexA.append('#' + hexV) 
    hexA = '#' + hexV 
    m.plot(full_x[i], full_y[i], color=hexA[i]) 

這是我試圖單獨做的每個像素然後處理已自動殺死。

任何幫助將不勝感激。提前致謝。

+0

你能發佈一個可運行的代碼示例嗎?這使得調試更容易。 – stanri

+0

有幾個文件伴隨它。有沒有辦法在堆棧溢出上附加文件?或者電子郵件是最好的? – user1473085

回答

1

對於任何人誰看到這一點,並有同樣的問題:

顯然,你所用的是散射。爲了使用多種顏色映射像素/任何其他點,請使用散列與x數組,y數組和像素顏色數組。