함수 > 벡터 및 행렬 > 기타 배열 함수 > 컨볼루션 및 상호 상관
  
컨볼루션 및 상호 상관
convolve(S, K, [BC], [OV]) - 임의 위상을 사용하여 두 벡터(1D) 또는 두 행렬(2D) 간의 컨볼루션을 수행합니다.
시간을 컨볼루션하면 주파수가 곱해지고 그 반대의 경우도 마찬가지이며, 이는 디지털 필터링에 유용합니다.
crosscorr(S, K, [BC], [OV]) - 임의 위상을 사용하여 두 벡터(1D 상관 관계) 또는 두 행렬(2D 상관 관계) 간의 상호 상관 관계 연산을 수행합니다.
상관 관계는 컨볼루션과 동일하지만 시간의 시퀀스 하나가 역전됩니다. 이는 시스템의 충격 반응을 구하는 데 주로 사용됩니다.
crosscorr 함수는 이미지의 상관 관계를 구하는 데 사용할 수 있습니다.
crosscorr 함수는 더 이상 사용되지 않는 correlcorrel2d 함수의 기능을 결합한 것입니다.
인수
S는 입력 신호를 나타내는 벡터 또는 행렬입니다. 배열 요소는 실수 또는 복소수 값일 수 있습니다.
K는 커널을 나타내는 벡터 또는 행렬입니다. 배열 요소는 실수 또는 복소수 값일 수 있습니다.
BC는 선택적 인수(정수)로, 상관 관계 연산을 수행하는 동안 행렬 경계를 처리하는 방법을 지정함으로써 수행할 컨볼루션 유형을 결정합니다. BC는 0(기본값), 1, 2 또는 3으로 설정될 수 있습니다. 각각의 값은 다음을 나타냅니다.
0: 선형(또는 0 채우기) - 행렬 경계 밖의 픽셀이 0으로 처리됩니다.
1: 원형(또는 주기적 래핑) - 행렬 경계 밖의 픽셀이 행렬의 주기적 연속성으로 처리됩니다.
2: 반사 - 행렬 경계 밖의 픽셀이 행렬의 윤곽선을 따라 거울로 반사한 것처럼 처리됩니다.
3: 연속 - 행렬 경계 밖의 픽셀이 행렬의 마지막 값으로 사용됩니다.
OV는 선택적 인수로서 두 번째 신호의 이동을 적용할지 여부를 결정하는 정수 값이거나 두 개의 정수 값으로 이루어진 벡터입니다. 이는 커널 행렬 K와 입력 신호 행렬 S의 중첩되는 초기 행 및 열(위상 상관 관계)을 지정하는 데 사용됩니다. 벡터의 첫째 요소는 행 중첩을 지정하고 둘째 요소는 열 중첩을 지정합니다.
최소 중첩은 1보다 크고 최대 중첩은 커널 크기보다 작아야 합니다.
0 위상 상관 관계의 경우 커널이 홀수 크기의 행렬이라고 가정했을 때 커널의 원점이 커널의 중심에 위치하도록 중첩을 반드시 정의해야 합니다. 이 경우 두 중첩 매개변수를 커널의 행과 열 수에서 각각 절반을 뺀 값으로 설정해야 합니다.
1D 상호 상관 관계의 경우 행 중첩이 1로 설정됩니다.
2D 상호 상관 관계의 경우 기본 중첩이 다음과 같이 설정됩니다.
Row_overlap = K_rows − K_rows/2
Column_overlap = K_columns − K_columns/2