我從圖像獲取數據測量。我的意思是輪廓掃描數據。 (沿着一條線拍攝的圖像強度值) 而我想要的是從另一幅圖像的行中獲取數據並將它們進行比較。 我想知道他們是否相似。 例如,我得到:如何比較兩個波形數據?
int data1[N];
int data2[N];
我想比較它們。如果它們不相似,我想知道這些數據中最長的部分,它們是相似的。例如,如果我們從0到N - 1, 的索引來查看數據1和數據2,但它們可能在索引100 ... N - 56處它們幾乎相同,可能會發生這種情況。 通過相似性我的意思是:如果我們以wave的形式表示data1和data2,那麼相似性意味着它們表現幾乎相同,但有時可能會有所不同。我的意思是波浪的形式幾乎相似。
我照你所說的做了,但問題是閾值在圖像間不同。甚至可能在不同的掃描線上有所不同。 它不能設置爲唯一值。 – erjik 2010-07-01 05:18:27
啊!我誤解了你原來的問題,並認爲你只對掃描線的一個子集感興趣(例如,你試圖通過比較每個(例如)第10行和/或列的比較來更快地比較圖像。你正試圖比較整個圖像,然後你需要正常化這兩個圖像 我不驚訝的閾值不能設置爲一個簡單的值 - 正如我在最後一段中提到的,根據您的需要,您可能會(顯然是這樣)需要更復雜的東西 – 2010-07-01 12:13:22
我提出的簡單閾值的主要問題是,如果你試圖比較的所有圖像都具有相似的動態範圍,那麼它纔會起作用,如果情況並非如此,但您仍想使用一個簡單的閾值,您可能需要根據其中一個圖像的動態範圍(例如[最大強度 - 最小強度]的3%)來初始化閾值 順便說一句......如果圖像2部分旋轉或不同大小,我描述的機制將無法正常工作。如果是這種情況,您可能需要某種基於特徵的比較。 – 2010-07-01 12:27:07