Microsoft MVP성태의 닷넷 이야기
c#이용한 음성인식에 질문드립니다. [링크 복사], [링크+제목 복사]
조회: 11967
글쓴 사람
김보경
홈페이지
첨부 파일
 

음성인식 과정중에 특징추출 부분이있는데 선형예측계수 캡스트럼 주파수대역별에너지 등을 사용한다고 합니다. 그럼 c# speech recognition에서는 이런 것들을 사용하는건지 아니면 독자적인 알고리즘 같은게 있는지 만약 선형예측계수 등을 사용한다면 어떤식으로 사용해서 어떻게 적용하는지 궁금합니다. 그리고 음성인식 비교 부분에서 위의 특징추출한 후 특징벡터로 인식하는데 그때 인식알고리즘인 HMM DTW VQ ANN등이 있는데 c# speech recognition은 이중에서 어떤것을 사용하는지 아니면 아에 사용을 하지않는지 궁금합니다. 기존에 있는 API라 속을 들여다 보기 힘드네요 그리고 만약 c# 음성인식을 사용해서 음성을 인식할때 HMM 을 사용한다면 어떤식으로 사용하여 적용하는지 자세하게 알려주시면 감사드리겠습니다. 또 만약 인식 알고리즘을 사용하지 않는다면 어떤식으로 c#음성인식은 음성을 인식하는지, 또 c#음성인식에 HMM 을 적용시켜 음성인식을 향상 시킬수 있는 방법이 있는지 있다면 어떤식으로 하는지 궁금합니다. 음성인식 관련 공부중인데 지식이 많이 부족하네요. 많은 조언 부탁드립니다. 제가 물어본 질문외에도 c#안에 라이브러리 원리에대해서 아시면 아시는대로 설명해주셔도 감사할거같아요ㅠㅠ






[최초 등록일: ]
[최종 수정일: 5/27/2015]


비밀번호

댓글 작성자
 



2015-05-26 04시27분
이 질문은 저의 지식 범위를 넘어섰습니다. ^^ 일단 아는데까지 설명드리면, C# Speech Recognition은 C#이라는 수식어를 떼고 마이크로소프트 윈도우에서 제공하는 음성인식 엔진이라고 보면 됩니다. 근데, 딱히 이 엔진에 대한 내부 소개글은 찾을 수가 없습니다. 겨우 찾아낸 것이 다음의 문서인데,

An HMM-Like Dynamic Time Warping Scheme for Automatic Speech Recognition
; http://www.hindawi.com/journals/mpe/2014/898729/

"
Nowadays, the popular DTW speech recognition has been seen to be largely utilized in the sensing-based applications [11], such as the Microsoft Kinect sensing device.
"

Kinect 음성엔진이 윈도우 음성인식 내장 엔진의 발전형이라고 알고 있기 때문에, 특성면에서 봤을 때 아마도 윈도우 SR은 기본 엔진이 DTW라고 보입니다.

근데, 윈도우 SR 엔진이 다양한 플러그인 기법이 도입되어 있기 때문에 기본 엔진에 다른 음성인식 알고리즘도 쉽게 덧씌울 수 있는 것 같습니다. 따라서, 특정 윈도우 머신을 100% DTW 엔진이 사용되고 있다고 가정해서는 안됩니다. 질문 중에 "C# 음성 인식에 HMM을 적용 시켜..."라고 했는데, 원하시면 플러그인으로 향상시킬 수 있습니다. 구체적인 방법은 마이크로소프트의 문서를 참조하시기 바랍니다. (저는 도메인 지식이 없으므로 딱히 설명드릴 것이 없습니다.)

참고로, 윈도우 10에 탑재될 Cortana를 비롯해 대부분의 상용 음성 인식 엔진은 DNN을 기반으로 한다고 합니다.

Speech recognition - Deep Neural Networks and Other Deep Learning Models
; http://en.wikipedia.org/wiki/Speech_recognition

"
More importantly, all major commercial speech recognition systems (e.g., Microsoft Cortana, Xbox, Skype Translator, Google Now, Apple Siri, Baidu and iFlyTek voice search, and a range of Nuance speech products, etc.) nowadays are based on deep learning method
"


정성태

... 31  32  33  34  35  36  37  38  39  40  [41]  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4826김솔지4/11/201710007CxImage 문자 출력 [1]
4825플메4/10/201710389덱스트 업로드 하는데 구성요소 서비스에 엑셀이 안뜨네요..ㅜㅜ [1]파일 다운로드1
4824김상경4/9/20179781win7에서 vb6.0을 이용해서 프로그램을 만들었습니다.(제가 만든건 아니고 옆 동료가 만들었습니다.) [1]파일 다운로드1
4823조상현3/28/201710820windows event log 에 대한 정보는 어디서 얻을 수 있을까요? [1]
4822부우3/24/201712473글수정이 안되어 다시올려드립니다ㅠ [12]파일 다운로드2
4821부우3/22/201726095파일이나 어셈블리 중 하나를 로드에러 좀 봐주세요 [9]파일 다운로드1
4820듀이3/20/201710899오차 없이 동시에 명령을 보내게 가능한가요? [2]파일 다운로드1
4819popo3/20/201712246C# sslstream 사용시 Cipher List 설정 [3]
4818부우3/16/201721093DllImport 사용시 진입점을 찾을수 없습니다 [2]
4817yun3/15/201710454서피스프로4의 HYPER-V로 윈도우7을 깔았는데... [1]
4816부우3/15/201713195C++ DLL함수 사용 질문드립니다 [10]
4815김지용3/14/20179257.net core linux 오류 [2]
4814김솔지3/13/201710329인쇄 시 , 출력화면을 이미지 파일로 저장하고 싶습니다. [1]파일 다운로드1
4813spow...3/8/201711871멀티 스레드 환경에서 처리하여야 할 목록을 효율적으로 사용하는 기법 질문 드립니다 [2]
4812popo2/23/201711943.NET Window ClassName 변경 질문 드립니다. [1]
4809힘찬도약2/15/201715008C# 가상 시리얼 [4]
4808이길용2/9/201713749WCF 외부 접속 관련해서 질문드립니다ㅠ [1]
4807헬조선식...2/8/201720329WPF의 속도에 대해서 궁금합니다. [3]
4803헬조선식...2/7/201713751WPF로 메신져 메세지 박스 구현 문의 [2]
4802spow...2/6/201710781특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은? [7]
4804spow...2/7/201710654    답변글 [답변]: 특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은?
4805spow...2/7/201710330    답변글 [답변]: 특정 범위의 값을 다른 값으로 치환하는 메소드를 만들어야 할 때 가장 빠른 방법은? (글삭제가 안돼 재첨부합니다)파일 다운로드1
4801spow...2/3/201710215C#의 참조 동작관련하여 아이디어 문의 드립니다 [4]
4800오세운2/1/201714282C# 에서 C++ DLL임포트 질문입니다. [2]
4798guest1/29/201711635picturebox의 image.dispose [1]
4797김철환1/13/201711569책에 관한 질문입니다 [3]
... 31  32  33  34  35  36  37  38  39  40  [41]  42  43  44  45  ...