본문 바로가기

아마추어 chatgpt 활용기

음성 인식 문제 해결시도 4- PocketSphinx 라이브러리

반응형

3번째 시도 음성인식 라이브러리

음성인식행맨게임의 게임속도가 느린 것에 대하여 생각을 하면서 이것저것 찾아보다가 Google speech recognition 라이브러리는 음성인식 시 online을 활용해서 인식을 하므로 불러오는데 시간이 더 소요되어 Offline에서 사용가능 한 음성인식 라이브러리를 찾아보기로 했다.

***

PocketSphinx: PocketSphinxCMU Sphinx 프로젝트의 일부로 개발된 오픈 소스 음성인식 엔진입니다. Python에서 사용할 수 있는 Pocketsphinx-Python 라이브러리를 통해 쉽게 사용할 수 있습니다.

 

Kaldi: Kaldi는 고성능 음성인식을 위한 오픈 소스 툴킷입니다. C++로 개발되었으며, Python 바인딩을 통해 Python에서 사용할 수 있습니다.

 

Mozilla DeepSpeech: Mozilla DeepSpeech는 딥러닝 기반의 오픈 소스 음성인식 엔진입니다. Tensor Flow기반으로 개발되었으며, Python에서 사용할 수 있는 DeepSpeech-Python 라이브러리를 통해 쉽게 접근할 수 있습니다.

 

Julius: Julius는 일본어 음성인식을 위한 오픈 소스 엔진이지만, 다른 언어도 지원합니다. C로 작성되었으며, Python과의 통합을 위해 PyJulius와 같은 라이브러리를 사용할 수 있습니다.

 

이러한 라이브러리들은 오프라인 환경에서 음성인식을 수행할 수 있는 다양한 기능과 설정 옵션을 제공합니다. 각 라이브러리의 문서와 예제를 참조하여 자세한 사용 방법을 확인할 수 있습니다.***

 

하지만 PocketSphinx 설치를 한번 시도해 봤지만 잘 설치되지 않았다.

그래서 다시 한번 설치해 보기로 했다.

pip install pocketSphinx 입력했더니

 

PS C:\pythonworkspace> pip install pocketSphinx

 

결과

Defaulting to user installation because normal site-packages is not writeable

Collecting pocketSphinx

Using cached pocketsphinx-5.0.0.tar.gz (33.9 MB)

Installing build dependencies... done

Getting requirements to build wheel... done

Preparing metadata (pyproject.toml)... done

Collecting sounddevice (from pocketSphinx)

Using cached sounddevice-0.4.6-py3-none-win_amd64.whl (199 kB)

.

.

[end of output]

 

note: This error originates from a subprocess, and is likely not a problem with pip.

ERROR: Failed building wheel for pocketSphinx

Failed to build pocketSphinx

ERROR: Could not build wheels for pocketSphinx, which is required to install pyproject.toml-based projects

 

중간에 버전호환 확인 같은 작업을 하면서 설치를 진행하는 것 같다가 에러가 발생하면서 설치를 실패하였다.

 

그래서 어떻게 하면 해결할 수 있을까 하고 방법을 찾아보기 시작했다.

대체로 검색해 보니 swig나 cmake를 다운로드하여서 설치하라는 말들이 있던데 어려운 내용들 같아 보였다.

 

그렇게 2~3주가 지난 뒤 파이썬에서 pip install Pocketsphinx를 입력했더니

웬일! Pocketsphinx가 깔끔하게 설치가 되었다.

 

Pocketsphinx 설치된 모습

 

PS C:\Users\eomss\OneDrive\바탕 화면\pythonworkspace> pip install PocketsphinxDefaulting to user installation because normal site-packages is not writeableCollecting Pocketsphinx Downloading pocketsphinx-5.0.1-cp311-cp311-win_amd64.whl (29.0 MB) ━━━━━━ 29.0/3.8 eta 0:00:00

MB MB/sCollecting sounddevice (from Pocketsphinx) Using cached sounddevice-0.4.6-py3-none-win_amd64.whl (199 kB) Requirement already satisfied: CFFI>=1.0 in c:\users\eomss\appdata\roaming\python\python311\site-packages (from sounddevice->Pocketsphinx) (1.15.1) Requirement already satisfied: pycparser in c:\users\eomss\appdata\roaming\python\python311\site-packages (from CFFI>=1.0->sounddevice->Pocketsphinx) (2.21) Installing collected packages: sounddevice, PocketsphinxSuccessfully installed Pocketsphinx-5.0.1 sounddevice-0.4.6

 

 

그 이유를 찾아보니 23.5.16일 자로 pocketsphinx–5.0.1 버전이 업데이트되어 있는 것이었다..

우연히 어려운 고비하나를 자연스레 넘기게 되었다.

 

 

그럼 다시 pocketsphinx로 구현한 음성인식을 만들어 보아야겠다..