2013-04-08 17 views
0

Boost多維數組與OpenCV多維數組之間的區別是什麼?Boost多維數組與OpenCV Mat

我在C++中實現了一個聚類算法,並且需要一個數據結構來存儲數據點。它應該能夠處理不同的維度數據,例如1D數據(灰度圖像),3D數據(彩色圖像)和N-D數據(特徵選擇後)。

我應該選擇哪一個?看來對於OpenCV Mat,我們需要事先掌握數據的維度。

+1

如果你打算使用opencv函數,Mat應該會更好,如果你會使用更多的提升功能,你應該繼續提升。 我會去圖書館,我更有經驗。 – 2013-04-08 23:56:33

+0

但是對於mat openCV,你必須預先定義通道的數量。沒有辦法讓一個單一的功能可以正確處理一維,三維或N-D數據? – 2013-04-09 22:23:15

回答

1

正如perfanoff所說,我會選擇你最有信心的圖書館,以及你將在代碼中使用哪些圖書館。除此之外,鑑於您正在處理圖像數據,OpenCV似乎是更好的選擇。

OpenCV Mat容器可以返回它們的type,所以你的函數可以檢查矩陣是否有1個通道,3個通道或N-D數據。您也可以使用element size函數查找通道數量。

作爲一個免責聲明,我對Boost多維數組沒有多少經驗。