사례 연구

Moku:Go를 통한 기계 청각 교육

적응형 소음 제거 및 가속 신경망 화자 식별 기능을 갖춘 맞춤형 회의실 시스템

개요

우한 공과대학교(WUT)는 이중 일급 대학이며 정기적으로 중국 내 상위 10대 공과 대학에 선정됩니다. WUT는 인공 지능 및 신에너지 차량과 같은 현대 및 신흥 엔지니어링 분야를 가르치는 것을 전문으로 합니다.

Moku:Go 는 엔지니어링 교육 및 일반 산업을 위해 맞춤화된 Liquid Instruments의 최초의 소프트웨어 정의 계측 솔루션입니다. 소프트웨어 정의 기능을 통해 Moku:Go는 전자 및 통신 연구실에서 사용되는 14가지 이상의 다양한 장비를 제공할 수 있습니다. 와 함께 다중 기구 모드 (MiM)을 통해 사용자는 계측기 쌍을 결합하여 무손실 상호 연결로 동시에 실행할 수 있습니다.

Moku:Go 지원 Moku 클라우드 컴파일 (MCC)는 디지털 신호 처리 알고리즘의 생성 및 배포를 위한 호스팅 서비스입니다. MCC 사용자는 MATLAB 및 Simulink와 같은 자신이 선호하는 도구를 사용하여 알고리즘을 설계한 다음 이를 Moku:Go 장치에 쉽게 배포하여 다른 소프트웨어 정의 계측과 함께 실시간으로 실행할 수 있습니다.

난제

WUT 학생들은 많은 학생들보다 더 일찍, 더 심각하게 코로나19 팬데믹의 영향을 받았습니다. 수업을 위해 직접 모이는 것이 허용되었을 때, 마스크 의무화와 사회적 거리두기 요구 사항으로 인해 학생들은 서로의 말을 듣고, 강사의 말을 듣고, 수업에 참여하는 것이 어려워졌습니다.

이러한 과제에 대응하여 학생들은 자동 추적 기능과 실시간 음성 처리 기능을 갖춘 지능형 회의실 시스템을 설계하기로 결정했습니다. 학생들은 회의실 시스템에서 원하는 네 가지 기능을 식별했습니다.

  • 화자 식별
  • 음성 이퀄라이제이션(음색 향상)
  • 적응형 소음 제거
  • 마스크 감지

해법

학생들은 시스템 구축에 도움이 되는 최고의 장치로 Moku:Go를 선택했습니다. 이 선택은 Moku Cloud Compile과 같은 강력한 사용자 정의 옵션과 함께 다양한 애플리케이션에 대한 구성을 가능하게 하는 계측에 대한 소프트웨어 정의 접근 방식을 기반으로 했습니다. 그들은 화자 식별 및 적응형 소음 제거의 핵심 문제에 Moku:Go를 사용했습니다. 음성 이퀄라이제이션은 다음을 통해 달성할 수 있습니다. Moku:Go 디지털 필터 박스, 이 프로젝트에서 학생들은 이미 갖고 있는 간단한 FPGA 개발 보드를 사용했습니다. 마스크 감지를 시각적으로 확인하기 위해 학생들은 시중에서 판매되는 얼굴 감지 시스템을 사용했습니다.

화자를 식별하는 것은 어려운 작업이지만 배경 소음을 억제하면서 화자의 음성을 증폭시키는 데 필요합니다. 학생들은 Kendryte의 강력한 K210 엣지 컴퓨팅 가속기를 Moku:Go에 인터페이스하여 이를 달성했습니다. K210은 임베디드 시스템에서 기계 학습 작업을 가속화하기 위해 특별히 설계된 비용 효율적인 시스템 온 칩입니다. 학생들은 배열에 있는 210개의 마이크에서 입력 신호를 가져와 주요 사운드의 방향을 나타내는 아날로그 전압을 생성하는 컨볼루션 신경망을 실행하도록 KXNUMX을 프로그래밍했습니다.

학생들은 K210의 주요 스피커 방향 신호를 Moku:Go PID 컨트롤러 (그림 1) 시스템의 고성능 마이크가 가리키는 실제 방향을 나타내는 신호와 함께. PID 컨트롤러 장비는 방향 오류를 찾기 위해 이러한 값의 차이를 취하고 서보 모터를 구동하여 기본 마이크가 스피커를 가리키도록 원활하게 재배치했습니다.

그림 1: 마이크 위치 지정을 위해 구성된 PID 컨트롤러

비례 이득은 PID 컨트롤러의 튜닝을 지배하는 반면, 적분기 및 미분기 포화 기능은 저주파 및 고주파에서 이득의 작고 제한된 증가를 제공했습니다. 저주파에서 적분기는 방향 찾기 알고리즘의 체계적인 오류와 편향을 보상합니다. 작은 차동 이득은 댐핑을 제공하여 마이크 움직임을 부드럽게 합니다.

학생 시스템의 마지막 단계는 적응형 소음 제거였습니다. 이 강력한 기술은 잡음이 있는 신호와 환경 잡음의 흐름이라는 두 가지 입력을 사용합니다. 지능적으로 자동으로 필터를 조정하여 원래 신호에서 환경 노이즈를 가장 잘 제거합니다. 이 경우, 학생들은 스피커를 향한 기본 마이크의 신호를 수신하고 마이크 어레이에서 환경 소음을 샘플링했습니다.

잡음 제거에 사용되는 알고리즘 중 하나는 LMS(최소 평균 제곱) 적응 필터링입니다. 그러나 현장 프로그래밍 가능 게이트 어레이를 위한 LMS 적응형 필터를 작성하는 것은 대부분의 대학 수준 신호 처리 커리큘럼 범위를 벗어나는 복잡한 작업입니다. MCC는 학생들이 MathWorks Simulink를 사용하여 표준 빌딩 블록에서 LMS 알고리즘을 구축 및 테스트하고 Moku:Go 장치에서 실행할 수 있도록 격차를 해소했습니다.

결과

적응형 회의실 시스템은 진정한 학제간 팀 노력이었습니다. 신경망, 컴퓨터 공학, 제어 시스템에 익숙한 학생들은 화자 식별 시스템을 구축 및 검증하고, 신경망을 훈련하고, PID 컨트롤러를 조정했습니다.

적응형 소음 제거가 가장 큰 과제였습니다. 학생들은 Moku:Go 데이터 로거 MATLAB/Simulink 생태계에서 설계를 테스트, 반복 및 개선할 수 있도록 실제 상황에서 신호를 캡처합니다. 시스템을 검증한 후 HDL Coder를 사용하여 VHDL로 내보내고 최종 시스템 검사를 실행했습니다. 이러한 시뮬레이션 실행 중 하나가 그림 2에 나와 있습니다. 여기서 맨 윗줄에 표시된 이상적인 음성 신호는 LMS 적응형 필터에 공급되기 전에 배경 잡음(두 번째 줄)으로 인위적으로 휩싸였습니다. 필터는 신속하게 잡음 프로필에 맞춰 자체적으로 조정되어 음성을 복구했습니다(마지막 행, 그림 2).

그림 2: 실제 데이터에 대한 적응형 소음 제거 시스템 VHDL의 시뮬레이션된 성능

실제 데이터를 사용하여 오프라인으로 검증한 후 VHDL을 MCC로 가져오고 설계를 구축한 다음 Moku:Go 장치에서 실행했습니다.

결론

Moku:Go는 현실적이고 시급한 문제를 해결하면서 실시간 디지털 신호 처리(DSP) 및 기계 학습 기술에 대한 학생들의 이해를 높이는 완전한 적응형 회의실 시스템의 핵심을 형성했습니다. Moku:Go의 궁극적인 유연성은 단일 장치의 용도를 변경하여 제어 시스템, 필터 및 복잡한 DSP를 개발할 수 있음을 의미합니다. HDL Coder와 MCC의 통합은 복잡한 신호 처리를 신속하게 테스트하고 배포하는 데 매우 효과적이었습니다.

Moku:Go 및 코스웨어 제공에 대해 자세히 알아보려면 다음 교육팀에 직접 문의하세요. edu@liquidinstruments.com.