2015-10-26 71 views
-2

我在.xlsx文件中有一個.bmp文件及其灰度值的矩陣表示形式。最初我以爲我只是從.xlsx文件中獲取值並將其硬編碼到一個數組中,但我只是打開它,並且有太多的值需要手工輸入。我正在尋找幫助,通過只讀取.bmp或.xlsx文件(以較容易的方式)重新創建這些二維數組值。我最初想到用C++編寫這個程序,但我並不介意獲得Python或Java解決方案。我從來沒有這樣做過,所以我在尋找一個小白友好的解決方案如何將.bmp或.xlsx轉換爲二維數組

+0

您可以使用Java中的'ImageIO'類讀取多種圖像格式。 – Kayaman

回答

1

在C++中最簡單的方法可能會使用一個庫如LibXL

類似以下內容:

load("yourFile.xlsx"); 
Sheet* sheet = getSheet(0); // Index of sheet you want 

for(int i=sheet->firstRow(); i<sheet->lastRow(); i++) 
{ 
    for(int j=sheet->firstCol(); i<sheet->lastCol(); j++) 
    { 
    cout << readStr(i, j) << endl; 
    } 
} 
1

的Python

from scipy.ndimage import imread 

image = imread('image.bmp') 

如果你想要做的圖像處理,看看到scikit圖像和枕頭庫。

+0

如果你能解釋如何得到scipy,這可能是完美的。我試着跟隨他們的網站,但我不知道我在做什麼(OS X) –

+0

最簡單的方法可能是安裝Anaconda python發行版或使用自制軟件。 – MaxNoe

+0

https://www.continuum.io/downloads – MaxNoe