이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

convn

N차원 컨벌루션(N-D Convolution)

설명

예제

C = convn(A,B)는 배열 ABN차원 컨벌루션을 반환합니다.

예제

C = convn(A,B,shape)shape에 따라 컨벌루션의 하위 섹션을 반환합니다. 예를 들어, C = convn(A,B,'same')은 크기가 A와 동일한, 컨벌루션의 중앙부를 반환합니다.

예제

모두 축소

convn 함수의 출력값 크기를 제어할 수 있습니다. 예를 들어, 'same' 옵션은 컨벌루션의 바깥쪽 부분을 자르고 입력값과 크기가 동일한 중앙부만 반환합니다.

2x3x2 랜덤 배열 A를 2x2x2 커널 B와 컨벌루션합니다. 결과값은 size(A) + size(B) - 1인 3x4x3 배열입니다.

A = rand(2,3,2);
B = 0.25*ones(2,2,2);
C = convn(A,B)
C = 
C(:,:,1) =

    0.2037    0.2354    0.1898    0.1581
    0.4301    0.6902    0.4426    0.1825
    0.2264    0.4548    0.2527    0.0244


C(:,:,2) =

    0.2733    0.5444    0.4686    0.1975
    0.6365    1.3772    1.2052    0.4645
    0.3632    0.8327    0.7366    0.2670


C(:,:,3) =

    0.0696    0.3090    0.2788    0.0394
    0.2063    0.6869    0.7627    0.2821
    0.1367    0.3779    0.4839    0.2426

sizeC = size(A) + size(B) - 1
sizeC = 1×3

     3     4     3

크기가 A와 동일한, 컨벌루션의 중앙부를 반환합니다.

C = convn(A,B,'same')
C = 
C(:,:,1) =

    1.3772    1.2052    0.4645
    0.8327    0.7366    0.2670


C(:,:,2) =

    0.6869    0.7627    0.2821
    0.3779    0.4839    0.2426

입력 인수

모두 축소

입력 배열로, 벡터, 행렬 또는 다차원 배열로 지정됩니다.

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
복소수 지원 여부:

두 번째 입력 배열로, A와 컨벌루션할 벡터, 행렬 또는 다차원 배열로 지정됩니다. 배열 B는 크기가 A와 동일하지 않아도 됩니다.

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
복소수 지원 여부:

컨벌루션의 하위 섹션으로, 다음 값 중 하나로 지정됩니다.

  • 'full' — N차원 전체 컨벌루션을 반환합니다.

  • 'same' — 크기가 A와 동일한, 컨벌루션의 중앙부를 반환합니다.

  • 'valid' — 컨벌루션에서 모서리를 0으로 채우지 않고 계산한 부분만 반환합니다.

출력 인수

모두 축소

N차원 컨벌루션으로, 벡터, 행렬 또는 다차원 배열로 반환됩니다. AB의 차원 수가 동일한 경우 전체 컨벌루션 C = convn(A,B)의 크기는 size(A)+size(B)-1입니다.

AB 중 하나 또는 둘 모두가 single형이면 출력값도 single형입니다. 그렇지 않으면, convn가 입력값을 double형으로 변환하고 double형 값을 반환합니다.

데이터형: double | single

세부 정보

모두 축소

N차원 컨벌루션(N-D Convolution)

이산 N차원(N-D) 변수 A와 B에 대해 다음 수식으로 A와 B의 컨벌루션이 정의됩니다.

C(j1,j2,...,jN)=k1k2...kNA(k1,k2,...,kN)B(j1k1,j2k2,...,jNkN)

각 ki는 A와 B의 유효한 첨자가 되는 모든 값을 차례로 갖습니다.

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

참고 항목

|

R2006a 이전에 개발됨