我正在做遙感項目。在matlab上使用HDF非常簡單。但我想用網格計算(Ubuntu)實現這一點。所以我正在嘗試八度。我有HDF4葉綠素文件。普通圖像處理將通過八度音程輕鬆完成。但我想知道八度中的hdfread,hdftool。我在八度圖像中添加了一個圖像包。任何人都可以告訴我如何閱讀和如何使用hdf數據。是否有任何要添加的軟件包?請讓我知道這件事。如何在Octave中讀取hdf數據
- 如何讀取HDF數據
- 如何加載HDF數據
- 如何從
我正在做遙感項目。在matlab上使用HDF非常簡單。但我想用網格計算(Ubuntu)實現這一點。所以我正在嘗試八度。我有HDF4葉綠素文件。普通圖像處理將通過八度音程輕鬆完成。但我想知道八度中的hdfread,hdftool。我在八度圖像中添加了一個圖像包。任何人都可以告訴我如何閱讀和如何使用hdf數據。是否有任何要添加的軟件包?請讓我知道這件事。如何在Octave中讀取hdf數據
對於HDF5,Octave可以在沒有額外包裝的情況下加載它。
對於HDF4,您可以使用h4tonccf或OPeNDDAP hdf4_handler將其轉換爲NetCDF文件,然後通過NetCDF調用通過Octave的octcdf軟件包進行加載。我們提供了一個完整的例子在這裏完全倍頻程源代碼:
http://hdfeos.org/software/octave.php
以下是通過OPeNDAP通過倍頻創建了一個示例NASA HDF4情節。
謝謝你的回覆。 – prabu
高密度纖維板具體功能尚未在八度尚未實現HDF數據檢索圖像。但是,Octave可以使用更加標準的load
命令來處理該格式。只要做load path-to-hdf-file
,你就會在內存中加載一個結構體。
請參閱幫助郵件歸檔文件上的以下文章:How to read HDF data和read data subsets from HDF5。
謝謝你的回答。我已經做到了。但它帶有錯誤。如果八度支持hdf4及其操作,那麼對我而言,它將非常有用,而不是使用matlab。 – prabu
@prabu如果你想讓人幫你,你需要指定你得到的錯誤(和Octave版本)。 – carandraug
我相信你可以轉換HDF4數據與appropriate conversion tools,例如以HDF5 h4toh5
。
在八度,加載.h5文件(加檢查)是簡單的:
octave:1> load secondhdf5.h5
octave:2> whos
Variables in the current scope:
Attr Name Size Bytes Class
==== ==== ==== ===== =====
dbldata 4x3 96 double
fltdata 4x3 96 double
intdata 4x3 48 int32
Total is 36 elements using 240 bytes
octave:3> size(dbldata)
ans =
4 3
順便提一句, 'secondhdf5.h5' 的內容如下:
$ h5dump secondhdf5.h5
HDF5 "secondhdf5.h5" {
GROUP "/" {
DATASET "dbldata" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { (3, 4)/(3, 4) }
DATA {
(0,0): 1.1, 1.2, 1.3, 1.4,
(1,0): 2.1, 2.2, 2.3, 2.4,
(2,0): 3.1, 3.2, 3.3, 3.4
}
}
DATASET "fltdata" {
DATATYPE H5T_IEEE_F32LE
DATASPACE SIMPLE { (3, 4)/(3, 4) }
DATA {
(0,0): 1.1, 1.2, 1.3, 1.4,
(1,0): 2.1, 2.2, 2.3, 2.4,
(2,0): 3.1, 3.2, 3.3, 3.4
}
}
DATASET "intdata" {
DATATYPE H5T_STD_I32BE
DATASPACE SIMPLE { (3, 4)/(3, 4) }
DATA {
(0,0): 1, 2, 3, 4,
(1,0): 5, 6, 7, 8,
(2,0): 9, 10, 11, 12
}
}
}
}
Octave < = 4.0中的HDF5支持僅適用於Octave自身通過簡單文件IO功能寫入的文件。如果您的數據來自其他地方,那麼它有許多缺點,例如無法讀取單個任意數據集或其中的一部分數據集。
目前,針對讀/寫數據集和屬性更完整和Matlab兼容的功能,請參閱模塊
https://github.com/stegro/hdf5oct
編輯:我對這個項目做出了貢獻。
請在某處披露您與該項目的關係,否則您的帖子可能被視爲廣告或垃圾郵件,可能是錯誤的。 – skuntsel
'hdfread'和'hdftool'還沒有在Octave中實現(我在看版本3.6.4)... –