2014-05-03 56 views
0

我想計算樣本的均值和協方差矩陣。即使樣本的大小隻有1,這是可能的嗎?因爲當我做:OpenCV只用一個樣本計算協方差矩陣

calcCovarMatrix(descriptor, covar, mean, CV_COVAR_ROWS, CV_32F); 

執行後covar矩陣僅僅是1x1的大且只包含0descriptor與390個不同浮動元件的行向量。

回答

1

想一想在這種情況下的平均值協方差的含義。如果你只有一個樣品,然後:

  1. 平均是你唯一的樣本

  2. 有從平均非零距離沒有樣品,因此協方差爲零。

編輯請注意,如果你想計算390個浮點值的平均值和方差,你需要使用CV_COVAR_COLUMNS,而不是CV_COVAR_ROWS

+0

CV_COVAR_COLUMNS,你確定嗎?即使我的描述符是行向量? – farahm

+0

@ user3236180正如我所說,你應該做什麼取決於你期望的結果......你想要計算(共)方差從什麼? – AldurDisciple

+0

我想從描述符矩陣來計算它,它有時可以包含一個樣本,有時甚至包含100個樣本。但是所有的樣本都以行的形式存儲在矩陣中。 – farahm