길이가 12769 인 오디오 신호가 있습니다. 1024 샘플의 작은 창으로 분할하여 STFT를 수행하려고합니다. 481 점이 남아있는 동안 정확한 12 개의 창을 얻을 수 있습니다. 1024 샘플을 만들기 위해 543 (1024 - 481) 점을 더 필요로하기 때문에 제로 패드에 다음 코드를 사용했습니다. a
오디오 파일입니다MATLAB에서 신호를 0으로 채우기
f = [a zeros(1,542)];
. 그러나 오류가 발생합니다.
??? 오류 사용 ==> horzcat
CAT 인수의 차원이 일관되지 않습니다.
어떻게 이것을 극복 할 수 있습니까?
를 사용하여 추가로 543 개 제로 샘플을 추가 할 수 있습니다 에이; f (1024) = 0; a의 길이는 여전히 12769로 동일합니다. 13312로 변경하면 안됩니다. – user2482542
'f = a;'f (길이 (a) +542) = 0;'이어야합니다. 더 쉬워? 나는 그렇게 생각하지 않는다. 빨리? 아마도. 읽고 이해하기가 더 힘듭니다. 명확히. – horchler
@ user2482542 문제를 해결했습니다. 이제 1024의 다음 배수로 패드를 제로화하십시오. –