0
我正在使用xcorr2(A,A)來計算自相關。但是,輸出比A大。我應該如何修剪輸出以找到正確的自相關矩陣?例如,我的A矩陣是51x51,輸出將是101x101。很顯然,中心點與自身的相關性最大,在這種情況下位於(26,26),但在新的自相關圖中位於(51,51)。我需要一個通用的方法來修剪最終輸出。在MATLAB中修正自相關結果
我正在使用xcorr2(A,A)來計算自相關。但是,輸出比A大。我應該如何修剪輸出以找到正確的自相關矩陣?例如,我的A矩陣是51x51,輸出將是101x101。很顯然,中心點與自身的相關性最大,在這種情況下位於(26,26),但在新的自相關圖中位於(51,51)。我需要一個通用的方法來修剪最終輸出。在MATLAB中修正自相關結果
通常你必須採取M個點從M/2至3M/2在1 ST尺寸,並且N個點從N/2在2 第二尺寸3N/2,假設A是一個M乘N矩陣:
[M, N] = size(A);
cor = xcorr2(A); %# Shorter form of xcorr(A, A)
C = cor(ceil(M/2):floor(3 * M/2), ceil(N/2):floor(3 * N/2))
這裏C
將是修剪輸出。
編輯:
對於任何兩個矩陣A
和B
,的xcorr2(A, B)
的結果將是一個(M 甲 + M 乙 -1)×(N 甲 + N 乙 - 1)矩陣。但是,在這裏,如果矩陣的維數不相等,則必須自行決定要提取哪個部分。如果你想提取重要的中心部分,你可以這樣做:
[MA, NA] = size(A);
[MB, NB] = size(B);
v = [MA + MB, NA + NB]/4; %# Just a temporary vector
cor = xcorr2(A, B);
C = cor(ceil(v(1)):floor(3 * v(1)), ceil(v(2)):floor(3 * v(2))
@ Eitan:謝謝。它的工作原理:) – Nicole
@ Eitan:A和B的互相關是什麼?我的意思是,在A和B有不同尺寸的情況下? – Nicole
請看我更新的答案。 –