Main Content

흰긴수염고래 노래에서 관심 영역 추출하기

태평양 흰긴수염고래의 오디오 데이터를 4kHz로 샘플링한 파일을 불러옵니다. 이 파일은 코넬대 생물 음향학 연구 프로그램(Cornell University Bioacoustics Research Program)에서 관리하는 동물 소리 라이브러리에서 생성된 것입니다. 피치를 올려서 울음소리가 더 잘 들리도록 데이터의 시간 스케일을 1/10로 압축했습니다. 신호를 MATLAB® 타임테이블로 변환합니다.

whaleFile = fullfile(matlabroot,"examples","matlab","data","bluewhale.au");
[w,fs] = audioread(whaleFile);

whale = timetable(seconds((0:length(w)-1)'/fs),w);

% To hear, type soundsc(w,fs)

신호 분석기를 열고 타임테이블을 디스플레이로 끌어서 놓습니다. 잡음은 네 가지 특징이 두드러집니다. 첫 번째 소리는 짧게 반복되는 소리이고 나머지 세 번의 소리는 긴 울음소리입니다.

표시 탭에서 스펙트럼을 클릭하여 스펙트럼 보기를 열고 패너를 클릭하여 패너를 활성화합니다. 패너를 사용하여 약 2초 너비의 확대 창을 만듭니다. 짧게 반복되는 소리가 가운데에 오도록 확대 창을 끌어서 놓습니다. 스펙트럼은 약 900Hz에서 눈에 띄는 피크를 보여줍니다.

3개의 긴 울음소리를 추출하여 스펙트럼을 분석합니다.

  1. 첫 번째 긴 울음소리가 가운데에 오도록 패너 확대 창을 위치시킵니다. 스펙트럼에는 170Hz의 배수에 매우 가까이 위치한 8개의 뚜렷이 정의된 피크가 있습니다. 신호 추출 옆에 있는 화살표를 클릭하고 Between Time Limits를 선택합니다.

  2. 패너를 클릭하여 패너를 숨깁니다. 스페이스바를 눌러 전체 신호를 표시합니다. X축 확대를 클릭하여 두 번째 긴 울음소리가 가운데에 있는 시간 보기의 2초 간격을 확대합니다. 이 스펙트럼에도 170Hz의 배수에 피크가 있습니다. 신호 추출 옆에 있는 화살표를 클릭하고 Between Time Limits를 선택합니다.

  3. 스페이스바를 눌러 전체 신호를 표시합니다. 데이터 커서를 클릭하고 Two를 선택합니다. 시간 영역 커서를 세 번째 긴 울음소리가 있는 2초 간격 안에 놓습니다. 이번에도 170Hz의 배수에 피크가 있습니다. 신호 추출 옆에 있는 화살표를 클릭하고 Between Time Cursors를 선택합니다.

신호 테이블에서 원래 신호 이름 옆에 있는 체크박스 선택을 취소하여 디스플레이에서 제거합니다. 방금 추출한 3개의 관심 영역을 표시합니다. 스펙트럼이 거의 서로 겹칩니다. 주파수 영역 커서를 첫 번째와 세 번째 스펙트럼 피크 위치로 이동합니다. 커서 레이블의 별표는 보간된 신호 값을 나타냅니다.

참고 항목

함수

관련 예제

세부 정보