KR101579533B1 - 차량 및 그 제어 방법 - Google Patents

차량 및 그 제어 방법 Download PDF

Info

Publication number
KR101579533B1
KR101579533B1 KR1020140139642A KR20140139642A KR101579533B1 KR 101579533 B1 KR101579533 B1 KR 101579533B1 KR 1020140139642 A KR1020140139642 A KR 1020140139642A KR 20140139642 A KR20140139642 A KR 20140139642A KR 101579533 B1 KR101579533 B1 KR 101579533B1
Authority
KR
South Korea
Prior art keywords
voice
data
language
external device
input
Prior art date
Application number
KR1020140139642A
Other languages
English (en)
Inventor
김형진
Original Assignee
현대자동차주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대자동차주식회사 filed Critical 현대자동차주식회사
Priority to KR1020140139642A priority Critical patent/KR101579533B1/ko
Priority to US14/709,139 priority patent/US9685157B2/en
Application granted granted Critical
Publication of KR101579533B1 publication Critical patent/KR101579533B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Fittings On The Vehicle Exterior For Carrying Loads, And Devices For Holding Or Mounting Articles (AREA)
  • Telephone Function (AREA)
  • Artificial Intelligence (AREA)

Abstract

외부기기의 설정 언어를 기초로 입력 받은 음성을 인식하는 차량 및 그 제어방법을 제공한다.
차량의 일 실시예에 따르면, 외부기기에 저장된 문자 데이터를 수신하는 통신부; 수신한 문자 데이터를 음성 데이터로 변환하는 데이터 변환부; 사용자로부터 음성을 입력 받는 음성 입력부; 외부기기의 설정 언어를 기초로 입력 받은 음성을 인식하는 음성 인식부; 및 인식된 음성에 대응되는 음성 데이터를 확인하고, 인식된 음성에 기초하여 음성 인식 데이터를 포함하는 제어 명령을 생성하고, 통신부를 통해 외부기기에 제어 명령을 전송하는 제어부; 를 포함할 수 있다.

Description

차량 및 그 제어 방법{VEHICLE AND CONTROLLING METHOD FOR THE SAME}
사용자의 음성을 인식하고, 인식된 음성에 따라 특정 기능을 수행하는 차량 및 그 제어방법에 관한 발명이다.
차량에 대한 기술이 발전함에 따라, 차량이 수행하는 기본적인 기능인 주행 이외에도 사용자의 편의를 위한 다양한 기능이 제공되고 있다.
이처럼 차량이 수행할 수 있는 기능이 다양해지면서 사용자의 조작 부하가 증가되고, 조작 부하의 증가는 운전에 대한 집중도를 저하시켜 안전 운전을 방해하는 요인이 된다. 또한, 기기의 조작이 미숙한 사용자는 차량이 수행할 수 있는 기능을 제대로 활용하지 못하게 된다.
따라서, 사용자의 조작 부하를 감소시키기 위한 사용자 인터페이스에 대한 연구 및 개발이 요구되는바, 특히, 사용자의 음성을 인식하여 해당 음성에 대응되는 기능을 수행하는 음성 인식 기술이 차량에 적용되면, 사용자의 조작 부하를 효과적으로 감소시킬 수 있을 것으로 기대된다.
차량 및 그 제어방법의 일 측면에 따르면, 외부기기의 설정 언어를 기초로 입력 받은 음성을 인식하는 차량 및 그 제어방법을 제공한다.
차량 및 그 제어방법의 다른 측면에 따르면, 외부기기의 설정 언어를 기초로 외부기기로부터 전달받은 데이터를 음성 데이터로 변환하여 음성 인식에 이용하는 차량 및 그 제어방법을 제공한다.
차량의 일 실시예에 따르면, 외부기기에 저장된 문자 데이터를 수신하는 통신부; 수신한 문자 데이터를 음성 데이터로 변환하는 데이터 변환부; 사용자로부터 음성을 입력 받는 음성 입력부; 외부기기의 설정 언어를 기초로 입력 받은 음성을 인식하는 음성 인식부; 및 인식된 음성에 대응되는 음성 데이터를 확인하고, 인식된 음성에 기초하여 음성 인식 데이터를 포함하는 제어 명령을 생성하고, 통신부를 통해 외부기기에 제어 명령을 전송하는 제어부; 를 포함할 수 있다.
음성 인식부는, 외부기기의 설정 언어에 대응되는 음향모델(Acoustic Model) 및 언어모델(Language Model) 중 적어도 하나를 이용하여 입력 받은 음성을 인식할 수 있다.
음성 인식부는, 사용자가 음성 인식 언어를 선택하는 경우, 선택된 언어를 기초로 입력된 음성을 인식할 수 있다.
음성 인식부는, 선택된 음성 인식 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 입력 받은 음성을 인식할 수 있다.
음성 인식부는, 외부기기의 설정 언어에 따라 특징 벡터 모델을 설정하고, 입력 받은 음성을 특징 벡터 모델과 비교할 수 있다.
음성 인식부는, 외부기기의 설정 언어에 따라 상태 열(State Sequence)을 구성하고, 입력 받은 음성을 상태 열과 비교할 수 있다.
차량의 다른 실시예에 따르면, 외부기기에 저장된 문자 데이터를 수신하는 통신부; 외부기기의 설정 언어를 기초로 수신된 문자 데이터를 음성 데이터로 변환하는 데이터 변환부; 사용자로부터 음성을 입력 받는 음성 입력부; 입력 받은 음성을 인식하는 음성 인식부; 및 인식된 음성에 대응되는 음성 데이터를 확인하고, 인식된 음성에 기초하여 음성 인식 데이터를 포함하는 제어 명령을 생성하고, 통신부를 통해 외부기기에 제어 명령을 전송하는 제어부; 를 포함할 수 있다.
데이터 변환부는, 외부기기의 설정 언어에 대응되는 음향모델(Acoustic Model) 및 언어모델(Language Model) 중 적어도 하나를 이용하여 수신된 문자 데이터를 음성 데이터로 변환할 수 있다.
데이터 변환부는, 사용자가 음성 데이터 언어를 선택하는 경우, 선택된 음성 데이터 언어를 기초로 수신된 문자 데이터를 음성 데이터로 변환할 수 있다.
데이터 변환부는, 선택된 음성 데이터 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 수신된 문자 데이터를 음성 데이터로 변환할 수 있다.
데이터 변환부는, 외부기기의 설정 언어에 대응되는 특징 벡터 모델을 참조하여, 수신된 문자 데이터를 음성 데이터로 변환할 수 있다.
데이터 변환부는, 외부기기의 설정 언어에 대응되는 상태 열(State Sequence)을 참조하여, 수신된 문자 데이터를 음성 데이터로 변환할 수 있다.
차량 제어방법의 일 실시예에 따르면, 외부기기에 저장된 데이터를 수신하는 단계; 수신한 문자 데이터를 음성 데이터로 변환하는 단계; 사용자로부터 음성을 입력 받는 단계; 외부기기의 설정 언어를 기초로 입력 받은 음성을 인식하는 단계; 인식된 음성에 대응되는 음성 데이터를 확인하는 단계; 인식된 음성에 기초하여 음성 인식 데이터를 포함하는 제어 명령을 생성하는 단계; 및 생성한 제어 명령을 외부기기에 전송하는 단계; 를 포함할 수 있다.
입력 받은 음성을 인식하는 단계는, 외부기기의 설정 언어에 대응되는 음향모델(Acoustic Model) 및 언어 모델(Language Model) 중 적어도 하나를 이용하여 입력 받은 음성을 인식할 수 있다.
입력 받은 음성을 인식하는 단계는, 사용자가 음성 인식 언어를 선택하는 경우, 선택된 음성 인식 언어를 기초로 입력된 음성을 인식할 수 있다.
입력 받은 음성을 인식하는 단계는, 선택된 음성 인식 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 입력 받은 음성을 인식할 수 있다.
입력 받은 음성을 인식하는 단계는, 외부기기의 설정 언어에 따라 특징 벡터 모델을 설정하는 단계; 및 입력 받은 음성을 특징 벡터 모델과 비교하는 단계; 를 포함할 수 있다.
입력 받은 음성을 인식하는 단계는, 외부기기의 설정 언어에 따라 상태 열(State Sequence)을 구성하는 단계; 및 입력 받은 음성을 상태 열과 비교하는 단계; 를 포함할 수 있다.
차량 제어방법의 다른 실시예에 따르면, 외부기기에 저장된 데이터를 수신하는 단계; 외부기기의 설정 언어를 기초로 수신한 문자 데이터를 음성 데이터로 변환하는 단계; 사용자로부터 음성을 입력 받는 단계; 입력 받은 음성을 인식하는 단계; 인식된 음성에 대응되는 음성 데이터를 확인하는 단계; 인식된 음성에 기초하여 음성 인식 데이터를 포함하는 제어 명령을 생성하는 단계; 및 생성한 제어 명령을 외부기기에 전송하는 단계; 를 포함할 수 있다.
전달받은 데이터를 음성 데이터로 변환하는 단계는, 외부기기의 설정 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 수신한 문자 데이터를 음성 데이터로 변환할 수 있다.
전달받은 데이터를 음성 데이터로 변환하는 단계는, 사용자가 음성 데이터 언어를 선택하는 경우, 선택된 음성 데이터 언어를 기초로 수신한 문자 데이터를 음성 데이터로 변환할 수 있다.
전달받은 데이터를 음성 데이터로 변환하는 단계는, 선택된 음성 데이터 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 수신한 문자 데이터를 음성 데이터로 변환할 수 있다.
전달받은 데이터를 음성 데이터로 변환하는 단계는, 외부기기의 설정 언어에 대응되는 특징 벡터 모델을 참조하여 단계; 수신한 문자 데이터를 음성 데이터로 변환할 수 있다.
전달받은 데이터를 음성 데이터로 변환하는 단계는, 외부기기의 설정 언어에 대응되는 상태 열(State Sequence)을 참조하여, 수신한 문자 데이터를 음성 데이터로 변환할 수 있다.
차량, 및 그 제어방법의 일 측면에 따르면, 차량의 설정 언어가 아니라 외부기기의 설정 언어를 기초로 음성 인식을 수행하여, 음성 인식의 정확도를 높일 수 있다.
차량, 및 그 제어방법의 다른 측면에 따르면, 외부기기의 설정 언어를 기초로 외부기기로부터 전달받은 데이터를 음성 데이터로 변환하여, 음성 인식의 정확도를 높일 수 있다.
도 1은 일 실시예에 따른 차량을 외부에서 바라본 외관도이고, 도 2는 일 실시예에 따른 차량의 내부 구성을 나타낸 도면이다.
도 3은 차량의 일 실시예에 따른 제어 블록도이다.
도 4a 및 4b는 차량의 일 실시예에 따른 통신부의 통신 방법의 여러가지 실시예를 설명하기 위한 도면이다.
도 5는 차량의 일 실시예에 따른 데이터 변환부의 동작을 설명하기 위한 도면이다.
도 6은 차량의 일 실시예에 따른 데이터 변환부의 동작의 일 실시예를 설명하기 위한 도면이다.
도 7은 차량의 일 실시예에 따른 음성 인식부의 동작을 설명하기 위한 도면이다.
도 8은 차량의 일 실시예에 따른 제어부의 동작의 일 실시예이다.
도 9a 내지 9c는 차량의 일 실시예에 따른 제어부의 동작의 일 실시예를 설명하기 위한 도면이다.
도 10a 내지 10c는 차량의 일 실시예에 따른 제어부의 동작의 다른 실시예를 설명하기 위한 도면이다.
도 11은 차량 제어방법의 일 실시예에 따른 음성 데이터 변환 방법의 흐름도이다.
도 12는 차량 제어방법의 다른 실시예에 따른 음성 데이터 변환 방법의 흐름도이다.
도 13은 차량 제어방법의 일 실시예에 따른 음성 인식 방법의 흐름도이다.
도 14는 차량 제어방법의 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
이하 첨부된 도면을 참조하여 차량, 및 그 제어방법을 상세하게 설명하도록 한다.
이하에서, 사용자는 차량(100)에 탑승한 운전자 및 동승자를 포함하는 것으로 한다.
도 1은 일 실시예에 따른 차량을 외부에서 바라본 외관도이고, 도 2는 일 실시예에 따른 차량의 내부 구성을 나타낸 도면이다.
도 1을 참조하면, 일 실시예에 따른 차량(100)은 차량(100)의 외관을 형성하는 본체(1), 차량(100)을 이동시키는 차륜(51, 52), 차륜(51, 52)을 회전시키는 구동 장치(60), 차량(100) 내부를 외부로부터 차폐시키는 도어(71, 72(도 2 참조)), 차량(100) 내부의 운전자에게 차량(100) 전방의 시야를 제공하는 전면 유리(30), 운전자에게 차량(100) 후방의 시야를 제공하는 사이드 미러(81, 82)를 포함한다.
차륜(51, 52)은 차량의 전방에 마련되는 전륜(51), 차량의 후방에 마련되는 후륜(52)을 포함하며, 구동 장치(60)는 본체(1)가 전방 또는 후방으로 이동하도록 전륜(51) 또는 후륜(52)에 회전력을 제공한다. 이와 같은 구동 장치(60)는 화석 연료를 연소시켜 회전력을 생성하는 엔진(engine) 또는 축전기(미도시)로부터 전원을 공급받아 회전력을 생성하는 모터(motor)를 채용할 수 있다.
도어(71, 72)는 본체(1)의 좌측 및 우측에 회동 가능하게 마련되어 개방 시에 운전자가 차량(100)의 내부에 탑승할 수 있도록 하며, 폐쇄 시에 차량(100)의 내부를 외부로부터 차폐시킨다.
전면 유리(30)는 본체(100)의 전방 상측에 마련되어 차량(100) 내부의 운전자가 차량(100) 전방의 시각 정보를 획득할 수 있도록 하는 것으로서, 윈드쉴드 글래스(windshield glass)라고도 한다.
또한, 사이드 미러(81, 82)는 본체(1)의 좌측에 마련되는 좌측 사이드 미러(81) 및 우측에 마련되는 우측 사이드 미러(82)를 포함하며, 차량(100) 내부의 운전자가 차량(100) 측면 및 후방의 시각 정보를 획득할 수 있도록 한다.
이외에도 차량(100)은 후면 또는 측면의 장애물 내지 다른 차량을 감지하는 근접 센서, 강수 여부 및 강수량을 감지하는 레인 센서 등의 감지 장치를 포함할 수 있다.
근접 센서는 차량의 측면 또는 후면에 감지 신호를 발신하고, 다른 차량 등의 장애물로부터 반사되는 반사 신호를 수신할 수 있다. 수신된 반사 신호의 파형을 기초로 차량(100) 측면이나 후면의 장애물의 존재 여부를 감지하고, 장애물의 위치를 검출할 수 있다. 이와 같은 근접 센서의 일 예로서 초음파 또는 적외선을 발신하고, 장애물에 반사된 초음파 또는 적외선을 이용하여 장애물까지의 거리를 검출하는 방식을 채용할 수 있다.
도 2를 참조하여 차량(100)의 내부 구조를 설명한다.
대시보드(10)의 중앙 영역인 센터페시아(11)에는 AVN(Audio Video Navigation) 디스플레이(141)와 AVN 입력부(142)가 마련될 수 있다. AVN 장치(140)는 오디오, 비디오 및 내비게이션 기능을 통합적으로 수행할 수 있는 장치로서, AVN 디스플레이(141)는 오디오 화면, 비디오 화면 및 내비게이션 화면 중 적어도 하나를 선택적으로 표시할 수 있고, 뿐만 아니라 차량(100)의 제어와 관련된 각종 제어 화면 또는 AVN 장치(140)에서 실행할 수 있는 부가 기능과 관련된 화면을 표시할 수 있다.
AVN 디스플레이(141)는 LCD(Liquid Crystal Display), LED(Light Emitting Diode), PDP(Plasma Display Panel), OLED(Organic Light Emitting Diode), CRT(Cathode Ray Tube) 등으로 구현될 수 있다.
사용자는 AVN 입력부(142)를 조작하여 AVN(140)을 제어하기 위한 명령을 입력할 수 있다. AVN 입력부(142)는 도 2에 도시된 바와 같이 AVN 디스플레이(141)와 인접한 영역에 하드 키 타입으로 마련될 수도 있고, AVN 디스플레이(141)가 터치 스크린 타입으로 구현되는 경우에는 AVN 디스플레이(141)가 AVN 입력부(142)의 기능도 함께 수행할 수 있다.
차량(100)의 내부에는 음향을 출력할 수 있는 스피커(143)가 마련되는바, 오디오 기능, 비디오 기능, 내비게이션 기능 및 기타 부가 기능을 수행함에 있어 필요한 음향이 스피커(143)를 통해 출력될 수 있다.
운전석(21) 쪽의 대시보드(10)에는 스티어링 휠(12)이 마련되며, 스티어링 휠(12)에는 휠 입력부(162)가 마련되어 운전 중인 운전자가 스티어링 휠(12)에서 손을 떼지 않은 상태에서도 차량(100)의 제어와 관련된 명령을 입력할 수 있도록 한다
한편, 센터 콘솔(40)에는 죠그 셔틀(jog shuttle) 타입 또는 하드 키 타입의 센터 입력부(43)가 마련될 수 있다. 센터 콘솔(40)은 운전석(21)과 조수석(22) 사이에 위치하여 기어조작 레버(41)와 트레이(42)가 형성된 부분을 의미한다. 센터 입력부(43)는 AVN 입력부(142)의 전부 또는 일부 기능을 수행하거나, 휠 입력부(162)의 전부 또는 일부 기능을 수행할 수 있다.
차량(100)에는 공조 장치가 구비되어 난방 및 냉방을 모두 수행할 수 있으며, 가열되거나 냉각된 공기를 통풍구(153)를 통해 배출하여 차량(100) 내부의 온도를 제어할 수 있다. 온도 제어를 위한 사용자의 명령은 공조 입력부(151)를 통해 입력될 수 있다.
일 실시예에 따른 차량(100)은 사용자가 AVN 입력부(142), 휠 입력부(162) 또는 센터 입력부(43) 등을 조작하여 입력하는 제어 명령을 음성 입력부(600)를 통해 사용자의 음성으로서 입력 받을 수도 있다.
효과적인 음성의 입력을 위하여 음성 입력부(600)는 도 2에 도시된 바와 같이 헤드라이닝(13)에 장착될 수 있으나, 차량(100)의 실시예가 이에 한정되는 것은 아니며, 대시보드(10) 위에 장착되거나 스티어링 휠(12)에 장착되는 것도 가능하다. 이 외에도 운전 중인 사용자의 음성을 입력 받기에 적합한 위치이면 어디든 제한이 없다.
지금까지 도 1및 도 2에서는 차량(100)이 가질 수 있는 기본적인 외관 및 내부 구조를 설명하였다. 이하 차량(100)이 수행하는 음성 인식의 과정을 구체적으로 설명한다.
도 3은 차량의 일 실시예에 따른 제어 블록도이다.
도 3을 참조하면, 차량(1)은 사용자의 음성을 입력 받는 음성 입력부(600), 입력된 사용자의 음성을 인식하는 음성 인식부(700), 인식된 음성에 대응되는 이벤트가 실행되도록 제어하는 제어부(500) 및 명령어와 그에 대응되는 이벤트가 저장된 저장부(400)를 포함할 수 있다.
음성 입력부(600)는 마이크로폰(microphone)을 포함할 수 있고, 사용자의 발화(utterance)된 음성이 입력되면 이를 전기적 신호로 변환하여 음성 인식부(700)로 출력한다. 이하에서는 음성 입력부(600)에서 변환한 전기적 신호를 음성 신호라 한다.
음성 인식부(700)는 음성 입력부(600)로부터 입력된 음성 신호에 음성 인식(speech recognition) 알고리즘 또는 음성 인식 엔진(speech recognition engine)을 적용하여 사용자의 음성을 인식할 수 있다.
이 때, 음성 신호는 음성 인식을 위한 더 유용한 형태로 변환될 수 있는바, 음성 인식부(700)는 입력된 음성 신호를 아날로그 신호에서 디지털 신호로 변환하고, 음성의 시작과 끝 지점을 검출하여 음성 신호에 포함된 실제 음성 구간을 검출한다. 이를 EPD(End Point Detection)이라 한다.
그리고, 검출된 구간 내에서 켑스트럼(Cepstrum), 선형 예측 코딩(Linear Predictive Coefficient: LPC), 멜프리퀀시켑스트럼(Mel Frequency Cepstral Coefficient: MFCC) 또는 필터 뱅크 에너지(Filter Bank Energy) 등의 특징 벡터 추출 기술을 적용하여 음성 데이터(VD)의 특징 벡터를 추출할 수 있다.
이렇게 추출된 특징 벡터와 훈련된 기준 패턴과의 비교를 통하여 인식 결과를 얻을 수 있다. 이를 위해, 음성의 신호적인 특성을 모델링하여 비교하는 음향 모델(Acoustic Model) 과 인식 어휘에 해당하는 단어나 음절 등의 언어적인 순서 관계를 모델링하는 언어 모델(Language Model)이 사용될 수 있다.
음향 모델은 다시 인식 대상을 특징 벡터 모델로 설정하고 이를 음성 신호의 특징 벡터와 비교하는 직접 비교 방법과 인식 대상의 특징 벡터를 통계적으로 처리하여 이용하는 통계 방법을 나뉠 수 있다.
직접 비교 방법은 인식 대상이 되는 단어, 음소 등의 단위를 특징 벡터 모델로 설정하고 입력 음성이 이와 얼마나 유사한지를 비교하는 방법으로서, 대표적으로 벡터 양자화(Vector Quantization) 방법이 있다. 벡터 양자화 방법에 의하면 입력된 음성 신호의 특징 벡터를 기준 모델인 코드북(codebook)과 매핑시켜 대표 값으로 부호화함으로써 이 부호 값들을 서로 비교하는 방법이다.
통계적 모델 방법은 인식 대상에 대한 단위를 상태 열(State Sequence)로 구성하고 상태 열 간의 관계를 이용하는 방법이다. 상태 열은 복수의 노드(node)로 구성될 수 있다. 상태 열 간의 관계를 이용하는 방법은 다시 동적 시간 와핑(Dynamic Time Warping: DTW), 히든 마르코프 모델(Hidden Markov Model: HMM), 신경 회로망을 이용한 방식 등이 있다.
동적 시간 와핑은 같은 사람이 같은 발음을 해도 신호의 길이가 시간에 따라 달라지는 음성의 동적 특성을 고려하여 기준 모델과 비교할 때 시간 축에서의 차이를 보상하는 방법이고, 히든 마르코프 모델은 음성을 상태 천이 확률 및 각 상태에서의 노드(출력 심볼)의 관찰 확률을 갖는 마르코프 프로세스로 가정한 후에 학습 데이터를 통해 상태 천이 확률 및 노드의 관찰 확률을 추정하고, 추정된 모델에서 입력된 음성이 발생할 확률을 계산하는 인식 기술이다.
한편, 단어나 음절 등의 언어적인 순서 관계를 모델링하는 언어 모델은 언어를 구성하는 단위들 간의 순서 관계를 음성 인식에서 얻어진 단위들에 적용함으로써 음향적인 모호성을 줄이고 인식의 오류를 줄일 수 있다. 언어 모델에는 통계적 언어 모델과 유한 상태 네트워크(Finite State Automata: FSA)에 기반한 모델이 있고, 통계적 언어 모델에는 Unigram, Bigram, Trigram 등 단어의 연쇄 확률이 이용된다.
음성 인식부(700)는 음성을 인식함에 있어 상술한 방식 중 어느 방식을 사용해도 무방하다. 예를 들어, 히든 마르코프 모델이 적용된 음향 모델을 사용할 수도 있고, 음향 모델과 음성 모델을 통합한 N-best 탐색법을 사용할 수 있다. N-best 탐색법은 음향 모델과 언어 모델을 이용하여 N개까지의 인식 결과 후보를 선택한 후, 이들 후보의 순위를 재평가함으로써 인식 성능을 향상시킬 수 있다.
음성 인식부(700)는 인식 결과의 신뢰성을 확보하기 위해 신뢰도 점수(confidence score)를 계산할 수 있다. 신뢰도 점수는 음성 인식 결과에 대해서 그 결과를 얼마나 믿을 만한 것인가를 나타내는 척도로서, 인식된 결과인 음소나 단어에 대해서, 그 외의 다른 음소나 단어로부터 그 말이 발화되었을 확률에 대한 상대값으로 정의할 수 있다. 따라서, 신뢰도 점수는 0 에서 1 사이의 값으로 표현할 수도 있고, 0 에서 100 사이의 값으로 표현할 수도 있다. 신뢰도 점수가 미리 설정된 임계값(threshold)보다 큰 경우에는 인식 결과를 인정하고, 작은 경우에는 인식 결과를 거절(rejection)할 수 있다.
신뢰도 점수가 임계값보다 크나, 사용자로부터 잘못된 인식이라는 피드백이 들어온 경우, 즉, 오인식인 경우, 음성 인식부(700)는 재인식을 수행하는바, 이 때 인식 환경을 이전의 인식에서와 동일하게 적용하게 되면 인식 결과가 개선될 가능성이 낮다. 따라서, 음성 인식부(700)는 인식 환경을 이전 인식 환경에서와 다르게 설정하여 음성 인식을 다시 수행한다.
또한, 이전의 인식 결과는 사용자가 의도했던 결과가 아니기 때문에 음성 인식부(700)는 재인식 과정의 검색 범위에서 이전의 인식 결과를 제외할 수 있다. 이 경우, 검색 범위가 줄어들기 때문에 검색에 소요되는 시간이 단축될 수 있다.
음성 인식부(700)는 소프트웨어, 하드웨어 또는 이들의 조합을 이용하여 컴퓨터로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 하드웨어적인 구현에 의하면, ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서(processor), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(micro-processor) 등의 전기적인 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
소프트웨어적인 구현에 의하면, 적어도 하나의 기능 또는 동작을 수행하는 별개의 소프트웨어 모듈과 함께 구현될 수 있고, 소프트웨어 코드는 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션에 의해 구현될 수 있다.
사용자의 발화된 음성에는 차량의 제어를 위한 명령어가 포함될 수 있는바, 저장부(400)는 명령어와 그에 대응되는 이벤트를 미리 저장한다. 또한, 음성 인식부(700)나 제어부(500)의 처리 및 제어를 위한 프로그램이 저장될 수도 있고, 입/출력되는 데이터들의 임시 저장을 위한 기능을 수행할 수도 있다.
저장부(400)는 플래시 메모리(flash memory), 하드디크스(hard disc), 메모리 카드, 롬(ROM:Read-Only Memory), 램(RAM:Random Access Memory), 메모리 카드, EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 저장 매체를 포함할 수 있다.
제어부(500)는 음성 인식부(700)에서의 음성 인식 결과를 AVN 디스플레이(141) 또는 스피커(143)를 통해 사용자에게 제공할 수 있다. 일 예로서, N개의 인식 결과 후보들 중 임계값보다 큰 신뢰도 점수를 갖는 인식 결과 후보들을 제공하는 방법이 있다.
또한, 제어부(500)는 음성 인식부(700)에서 인식한 명령어에 대응되는 이벤트를 발생시키기 위한 제어를 실행한다. 예를 들어, 인식된 명령어에 따라 특정인에게 전화를 발신할 수도 있고, 내비게이션 기능을 제어할 수도 있으며, 오디오 기능을 제어할 수도 있다. 또는, 차량 공조 장치를 이용하여 차량(100) 내부의 온도를 제어하는 것도 가능하다.
제어부(500)는 음성 인식부(700)와 마찬가지로, 소프트웨어, 하드웨어 또는 이들의 조합을 이용하여 컴퓨터로 읽을 수 있는 기록 매체 내에서 구현될 수 있다.
한편, 저장부(400)는 명령어 이외에도 명령어의 목적이 되는 목적어가 음성 데이터(VD) 형태로 저장될 수 있다. 예를 들어, 전화를 걸기 위한 명령어인 "Call"의 목적이 되는 전화번호부가 음성 데이터(VD)로서 저장부(400)에 저장될 수 있고, 음악을 재생하기 위한 명령어인 "Play" 의 목적이 되는 음악 리스트가 음성 데이터(VD)로서 저장부(400)에 저장되는 것도 가능할 수 있다,
이처럼 저장부(400)에 음성 데이터(VD)를 저장하기 위해, 차량은 외부기기에 저장된 데이터를 수신하는 통신부(200); 및 수신한 데이터를 음성 데이터(VD)로 변환하는 데이터 변환부(300); 를 더 포함할 수 있다.
도 3을 참조하면, 통신부(200)는 데이터가 저장될 수 있는 외부기기와 연결되어, 데이터를 송수신 할 수 있다. 도 3에서는 통신부가 스마트폰(S), MP3 플레이어(M), USB(U)와 연결되는 경우를 예시하고 있다.
통신부(200)는 AUX 포트, USB 포트 등과 같은 외부기기 접속장치(170)를 통해 외부기기와 유선으로 직접 연결될 수 있고, 또는 블루투스(Bluetooth), 지그비(Zigbee) 방식의 근거리 무선 통신 방식을 채용하여 외부기기와 연결될 수 있으며, 와이파이(Wifi), IEEE 등과 같은 무선 통신 프로토콜에 따라 외부 네트워크에 연결되어 외부기기와 통신하는 것도 가능할 수 있다.
도 4a 및 4b는 차량의 일 실시예에 따른 통신부의 통신 방법의 여러가지 실시예를 설명하기 위한 도면이다.
도 4a는 통신부(200)가 무선 통신을 통해 외부기기와 연결되는 경우를 예시하고 있다.
도 4a와 같이, 통신부(200)는 스마트폰(S)과 무선 통신을 통해 연결될 수 있다. 예를 들어, 통신부(200)는 블루투스 통신 방식에 따라 스마트폰(S)과 데이터 통신을 수행할 수 있다.
이를 위해, 통신부(200)는 미리 정해진 블루투스 통신 가능 영역 내에 블루투스 통신이 가능한 외부기기를 검색할 수 있다. 통신 가능한 외부기기로 스마트폰(S)이 검색되면, 사용자의 선택 또는 자동으로, 통신부(200)는 스마트폰(S)과 패어링(pairing)을 수행할 수 있다. 패어링이 완료되면, 통신부(200)는 스마트폰(S)으로부터 데이터를 불러오거나, 스마트폰(S)으로 데이터를 전송하는 것이 가능할 수 있다.
상술한 방법에 따라 패어링이 수행된 후에 스마트폰(S)이 통신 가능 영역을 벗어나 블루투스 통신이 차단될 수 있다. 그 후, 다시 스마트폰(S)이 통신 가능 영역에 위치하면, 통신부(200)는 자동으로 스마트폰(S)을 검색하여 패어링을 수행할 수도 있다.
또한, 통신부(200)는 미리 정해진 암호를 입력받은 후 스마트폰(S)과 패어링을 수행하는 것도 가능할 수 있다. 암호는 사용자의 입력 또는 장치 내부의 연산에 의해 결정될 수 있다.
이와는 달리, 통신부(200)가 스마트폰(S)과 동일한 네트워크에 접속하여 통신하는 것도 가능할 수 있다. 예를 들어, 통신부(200)와 스마트폰(S)이 와이파이 방식으로 상호 통신할 수 있다.
도 4b는 통신부(200)가 유선 통신을 통해 외부기기와 연결되는 경우를 예시하고 있다.
도 4b와 같이, 통신부(200)는 MP3 플레이어(M)와 유선 통신을 통해 연결될 수 있다. 예를 들어, 통신부(200)는 외부기기 접속장치(170)와 이에 연결되는 케이블(C)을 통해 MP3 플레이어(M)와 데이터 통신을 수행할 수 있다.
통신부(200)는 다양한 통신 방법을 적용하여 외부기기로부터 외부기기에 저장된 데이터를 수신할 수 있다. 구체적으로, 통신부(200)는 외부기기에 저장된 문자 데이터(TD)를 수신할 수 있다.
예를 들어, 도 4a의 경우, 통신부(200)는 스마트폰(S)에 저장된 문자 데이터(TD) 형태의 전화번호부를 수신할 수 있다. 구체적으로, 통신부(200)가 수신하는 문자 데이터(TD)는 복수의 이름과 이에 대응되는 복수의 전화번호를 포함하는 테이블 일 수 있다.
이와는 달리, 도 4b의 경우, 통신부(200)는 MP3 플레이어(M)에 저장된 문자 데이터(TD) 형태의 음악 리스트를 수신할 수 있다. 구체적으로, 통신부(200)가 수신하는 문자 데이터(TD)는 MP3 플레이어(M)에서 재생 가능한 복수의 음원을 식별할 수 있는 문자를 포함하는 테이블일 수 있다. 예를 들어, 통신부(200)는 MP3 플레이어(M)에서 재생 가능한 복수의 음원의 제목을 포함하는 테이블을 문자 데이터(TD)로 수신할 수 있다.
데이터 변환부(300)는 통신부(200)에 의해 수신된 문자 데이터(TD)를 음성 데이터(VD)로 변환할 수 있다. 여기서, 음성 데이터(VD)란 미리 정해진 언어에 따른 문자 데이터(TD)의 발음기호를 포함할 수 있다. 따라서, 음성 인식부(700)가 음성을 인식할 때, 데이터 변환부(300)에 의해 변환된 음성 데이터(VD)가 인식 대상이 될 수 있다.
데이터 변환부(300)는 문자 데이터(TD)를 음성 데이터(VD)로 변환하기 위해, 음성 인식부(700)에서 사용한 음향모델, 및 언어모델을 참조할 수 있다. 특히, 음향모델을 참조하는 경우, 데이터 변환부(300)는 직접 비교 방법에 채택되는 특징 벡터 모델을 참조하여 문자 데이터(TD)를 음성 데이터(VD)로 변환할 수 있다. 또는, 데이터 변환부(300)는 통계적 모델 방법에서 이용되는 상태 열을 참조하여 문자 데이터(TD)를 음성 데이터(VD)로 변환할 수 있다.
이렇게 변환된 음성 데이터(VD)는 저장부(400)에 저장되고, 사용자로부터 음성이 입력되었을 때 입력된 음성을 인식하기 위해 이용될 수 있다.
이 때, 외부기기에 설정된 언어와 음성 인식의 기반이 되는 언어가 서로 상이할 수 있다. 음성 인식의 기반이 되는 언어와 외부기기의 설정 언어가 상이하면, 외부기기의 문자 데이터(TD)가 음성 인식의 기반이 되는 언어에 따라 음성 데이터(VD)로 변환될 수 있다. 또한, 사용자가 외부기기 설정 언어와 동일한 언어의 음성을 발화하는 경우, 음성 인식의 기반이 되는 언어를 기초로 음성 인식이 수행될 수 있다.
그 결과, 사용자로부터 입력된 음성의 인식률이 낮아질 수 있고, 최종적으로 사용자가 원하는 이벤트를 수행하기 어려울 수 있다.
이러한 문제를 해결하기 위해, <1> 외부기기의 문자 데이터(TD)를 음성 데이터(VD)로 변환할 때, 외부기기의 설정 언어를 기초로 할 수 있고, <2> 사용자로부터 입력된 음성을 인식할 때, 외부기기의 설정 언어를 기초로 할 수 있다.
먼저, <1> 외부기기의 설정 언어를 기초로, 외부기기의 문자 데이터(TD)를 음성 데이터(VD)로 변환하는 방법을 설명한다.
도 5는 차량의 일 실시예에 따른 데이터 변환부의 동작을 설명하기 위한 도면이다.
상술한 바와 같이, 데이터 변환부(300)는 문자 데이터(TD)를 음성 데이터(VD)로 변환할 수 있다. 음성 데이터(VD)는 미리 설정된 언어로 문자 데이터(TD)를 발음할 때의 발음기호를 포함할 수 있다.
이 때, 데이터 변환부(300)는, 외부기기의 설정 언어를 기초로, 문자 데이터(TD)를 음성 데이터(VD)로 변환할 수 있다. 구체적으로, 데이터 변환부(300)는 문자 데이터(TD)를 외부기기의 설정 언어로 발음할 때의 발음기호로 변환할 수 있다.
문자 데이터(TD)를 외부기기의 설정 언어로 발음할 때의 발음기호로 변환하기 위해서, 데이터 변환부(300)는 외부기기의 설정 언어에 대응되는 음향모델 및 언어모델을 참조할 수 있다.
특히, 음향모델은 음성의 신호적인 특성을 모델링하므로, 데이터 변환부(300)는 외부기기의 설정 언어의 신호적 특징이 반영되도록 문자 데이터(TD)를 음성 데이터(VD)로 변환할 수 있다.
예를 들어 음향모델의 직접 비교 방법을 채택하는 경우, 외부기기의 설정 언어에 대응되는 특징 벡터 모델을 참조할 수 있다. 그 결과, 데이터 변환부(300)는 문자 데이터(TD)를 외부기기의 설정 언어로 발음할 때 해당 언어의 특징 벡터 모델이 반영된 결과로서의 음성 데이터(VD)를 획득할 수 있다.
또는, 음향모델의 통계적 모델 방법을 채택하는 경우, 외부기기의 설정 언어에 대응되는 상태 열을 참조할 수 있다. 그 결과, 데이터 변환부(300)는 문자 데이터(TD)를 외부기기의 설정 언어로 발음할 때 해당 언어의 상태 열 간의 관계가 반영된 결과로서의 음성 데이터(VD)를 획득할 수 있다.
도 6은 차량의 일 실시예에 따른 데이터 변환부의 동작의 일 실시예를 설명하기 위한 도면이다. 도 6의 경우, 문자 데이터(TD)는 스마트폰(S)에 저장된 전화번호부이고, 스파트폰의 설정 언어는 프랑스어 임을 전제로 설명한다.
도 6과 같이, 문자 데이터(TD)는 복수의 이름과 이에 대응되는 전화번호로 이루어진 테이블, 즉 전화번호부일 수 있다.
데이터 변환부(300)는 전화번호부를 입력 받아 이를 음성 데이터(VD)로 변환할 수 있다. 이 때, 데이터 변환부(300)는 스마트폰(S)의 설정 언어인 프랑스어를 기초로 음성 데이터(VD)를 획득할 수 있다.
구체적으로, 전화번호부의 "Henry" 라는 문자 데이터(TD)는 데이터 변환부(300)에 의해 음성 데이터(VD)로 변환될 수 있다. 데이터 변환부(300)는 스마트폰(S)의 설정 언어를 기초로 데이터를 변환시키므로, 데이터 변환부(300)는 음성 데이터(VD)로 "Henry" 의 프랑스어 발음인 "[a~ri]" 를 획득할 수 있다.
만약 사용자가 데이터 변환 시 기초가 되는 언어인 음성 데이터(VD) 언어를 선택하는 경우에는, 데이터 변환부(300)는 사용자가 선택한 언어에 따라 음성 데이터(VD)를 획득할 수도 있다.
도 6의 예에서, 사용자가 음성 데이터(VD) 언어를 독일어로 설정하면, 스마트폰(S)의 설정 언어인 프랑스어가 아닌, 독일어로 "Henry" 를 읽을 때의 발음기호를 음성 데이터(VD)로서 획득할 수 있다.
다음으로, <2> 외부기기의 설정 언어를 기초로, 사용자로부터 입력된 음성을 인식하는 방법을 설명한다.
도 7은 차량의 일 실시예에 따른 음성 인식부의 동작을 설명하기 위한 도면이다.
상술한 바와 같이, 음성 인식부(700)는 사용자로부터 입력 받은 음성을 인식할 수 있다. 이 때, 음성 인식부(700)는, 외부기기의 설정 언어를 기초로, 입력 받은 음성을 인식할 수 있다.
구체적으로, 음성 인식부(700)는 외부기기의 설정 언어에 대응되는 음향모델 및 언어모델을 이용하여 입력 받은 음성을 인식할 수 있다.
예를 들어 음향모델의 직접 비교 방법을 채택하는 경우, 음성 인식부(700)는 외부기기의 설정 언어에 따라 특징 벡터 모델을 설정할 수 있다. 그 다음, 음성 인식부(700)는 입력 받은 음성을 특징 벡터 모델과 비교하여 음성 인식을 수행할 수 있다.
또는, 음향모델의 통계적 모델 방법을 채택하는 경우, 음성 인식부(700)는 외부기기의 설정 언어에 따라 상태 열을 구성할 수 있다. 그 다음, 음성 인식부(700)는 사용자로부터 입력 받은 음성을 상태 열 간의 관계와 비교하여 음성 인식을 수행할 수 있다.
도 7에서, 사용자가 "Henry" 라는 음성을 발화한 경우, 음성 인식부(700)는 외부기기의 설정 언어에 따라 사용자의 음성을 인식할 수 있다. 외부기기의 설정 언어가 프랑스어인 경우, 음성 인식부(700)는 사용자가 발화한 음성이 "[a~ri]" 라고 인식할 수 있다.
외부기기의 설정 언어에 대응되는 상태 열을 참조할 수 있다. 그 결과, 데이터 변환부(300)는 문자 데이터(TD)를 외부기기의 설정 언어로 발음할 때 해당 언어의 상태 열 간의 관계가 반영된 결과로서의 음성 데이터(VD)를 획득할 수 있다.
만약 사용자가 음성 인식 시 기초가 되는 언어인 음성 인식 언어를 선택하는 경우에는, 음성 인식부(700)는 사용자가 선택한 언어에 따라 음성을 인식할 수도 있다.
앞선 예에서, 사용자가 음성 인식 언어를 독일어로 설정하면, 외부기기의 설정 언어인 프랑스어가 아닌, 독일어임을 전제로 사용자의 음성을 인식할 수 있다.
다시 도 3을 참조하면, 상술한 <1>의 방법에 따라 외부기기의 문자 데이터(TD)를 음성 데이터(VD)로 변환하고, <2>의 방법에 따라 사용자의 음성을 인식한 후, 제어부(500)는 인식한 음성에 대응되는 음성 데이터(VD)를 확인할 수 있다.
도 8은 차량의 일 실시예에 따른 제어부의 동작의 일 실시예이다.
제어부(500)는 인식한 음성에서 명령어 절과 명령의 목적이 되는 목적어 절을 구분할 수 있다. 그 다음, 제어부(500)는 인식한 명령어 절에 대응되는 명령어를 저장부(400)에서 확인할 수 있다.
또한, 제어부(500)는 인식한 목적어 절에 대응되는 음성 데이터(VD)를 저장부(400)에서 확인할 수 있다.
도 8의 경우, 음성 인식부(700)가 사용자의 음성을 "[a~ri]" 로 인식하였음을 확인할 수 있다. 제어부(500)는 "[a~ri]" 에 대응되는 음성 데이터(VD)를 저장부(400)에서 검색할 수 있다. 그 결과 그에 대응되는 음성 데이터(VD)가 전화번호부 중 17번에 저장되어 있음을 확인할 수 있다.
또한, 제어부(500)는 확인된 음성 데이터를 포함하는 제어명령을 생성하여, 외부기기로 전송할 수 있다. 이에 대하여 도 9a 내지 9c, 및 10a 내지 10c를 참조하여 설명한다.
도 9a 내지 9c는 차량의 일 실시예에 따른 제어부의 동작의 일 실시예를 설명하기 위한 도면이다.
도 9a 내지 9c에서, 외부기기는 스마트폰(S)이고, 문자 데이터(TD)는 스마트폰(S)에 저장된 전화번호부이며, 스마트폰(S)의 설정 언어는 프랑스어로 한다.
도 9a와 같이, 프랑스어로 설정된 스마트폰(S)의 사용자가 프랑스어로 "Call Henry" 를 발화할 수 있다. 음성 입력부(600)는 사용자의 음성 "Call Henry" 를 입력 받아 음성 인식부(700)로 전달할 수 있다. 음성 인식부(700)는 스마트폰(S)의 설정 언어인 프랑스어를 기초로 "Call Henry" 를 인식할 수 있다.
제어부(500)는 도 8과 같이, 목적어 절 "[a~ri]" 에 대응되는 음성 데이터(VD)를 확인할 수 있다. 또한, 제어부(500)는 명령어 절 "Call" 에 대응되는 명령어를 확인할 수 있다. 여기서 명령어 "Call" 은 전화를 연결하라는 명령어임을 전제로 설명한다.
다음으로, 제어부(500)는 인식한 음성 데이터(VD) 상의 이름에 대응되는 전화번호로 전화를 연결하라는 제어명령을 생성할 수 있다. 마지막으로, 제어부(500)는 생성된 제어명령을 스마트폰(S)으로 전송할 수 있다.
도 9b는 제어부(500)가 제어명령을 전송한 결과로서, 스마트폰(S)이 "Henry" 에 대응되는 전화번호 "06-17-43-78-71" 로 전화를 연결하는 경우를 예시하고 있다.
이처럼 음성 인식의 과정에서 외부기기의 설정 언어를 고려함으로써 음성 인식의 정확도를 높일 수 있다.
또한, 스마트폰(S)과 차량이 패어링 된 경우, 도 9c와 같이 AVN 디스플레이(141)를 통해 스마트폰(S)에 표시되는 화면이 동시에 표시될 수도 있다. 이를 통해, 사용자는 스마트폰(S)을 직접 터치하지 않더라도, 차량의 AVN 디스플레이(141)를 통해 스마트폰(S)을 제어할 수 있다.
도 10a 내지 10c는 차량의 일 실시예에 따른 제어부의 동작의 다른 실시예를 설명하기 위한 도면이다.
도 10a 내지 10c에서, 외부기기는 MP3 플레이어(M)이고, 문자 데이터(TD)는 MP3 플레이어(M)에서 재생 가능한 음원의 곡명이며, MP3 플레이어(M)의 설정 언어는 한국어로 한다.
도 10a와 같이, 한국어로 설정된 MP3 플레이어(M)의 사용자가 한국어로 "Play Gangnam Style" 을 발화할 수 있다. 음성 입력부(600)는 사용자의 음성 "Play Gangnam Style" 을 입력 받아 음성 인식부(700)로 전달할 수 있다. 음성 인식부(700)는 MP3 플레이어(M)의 설정 언어인 한국어를 기초로 "Play Gangnam Style" 을 인식할 수 있다.
제어부(500)는 목적어 절 "Gangnam Style" 에 대응되는 음성 데이터(VD)를 확인할 수 있다. 또한, 제어부(500)는 명령어 절 "Play" 에 대응되는 명령어를 확인할 수 있다. 여기서 명령어 "Play" 는 음원을 재생하라는 명령어임을 전제로 설명한다.
다음으로, 제어부(500)는 인식한 음성 데이터(VD) 상의 곡명에 대응되는 음원을 재생하라는 제어명령을 생성할 수 있다. 마지막으로, 제어부(500)는 생성된 제어명령을 MP3 플레이어(M)로 전송할 수 있다.
도 10b는 제어부(500)가 제어명령을 전송한 결과로서, MP3 플레이어(M)가 곡명 "Gangnam Style" 에 대응되는 음원을 재생하는 경우를 예시하고 있다. 이 역시, 음성 인식의 과정에서 외부기기의 설정 언어인 한국어의 특성을 반영함으로써 음성 인식의 정확도를 높일 수 있다.
또한, 도 10c와 같이 AVN 디스플레이(141)를 통해 MP3 플레이어(M)에 표시되는 화면이 동시에 표시될 수도 있다. 이를 통해, 사용자는 MP3 플레이어(M)를 직접 조작하지 않더라도, 차량의 AVN 디스플레이(141)를 통해 MP3 플레이어(M)를 제어할 수 있다.
도 11은 차량 제어방법의 일 실시예에 따른 음성 데이터 변환 방법의 흐름도이다.
먼저, 외부기기와 접속할 수 있다. (S100) 이 때, 외부기기는 문자 데이터(TD)를 저장할 수 있는 모든 장치를 의미할 수 있다.
외부기기와 접속하기 위해서, 다양한 통신 방식이 채택될 수 있다. 예를 들어, 외부기기와 케이블(C) 등을 통해 유선으로 접속할 수도 있고, 동일한 네트워크에 이용함으로써 무선으로 접속하는 것도 가능할 수 있다.
다음으로, 접속된 외부기기의 설정 언어를 확인할 수 있다. (S110) 차량에서 음성 인식에 기초가 되는 언어와 외부기기의 설정 언어가 상이할 경우, 음성 인식의 정확도가 낮아지므로 이를 반영하기 위함이다.
외부기기의 설정 언어를 확인한 후, 외부기기로부터 문자 데이터를 수신할 수 있다. (S120) 외부기기로부터 전달 받는 문자 데이터(TD)의 실시예로서, 전화번호부 및 음악 리스트를 포함할 수 있다.
마지막으로, 외부기기 설정 언어를 기초로, 수신한 문자 데이터를 음성 데이터로 변환할 수 있다. (S130) 구체적으로, 수신한 문자 데이터(TD)를 음성 데이터(VD)로 변환 시, 외부기기 설정 언어에 대응되는 음향 모델 및 언어 모델을 참조할 수 있다.
도 12는 차량 제어방법의 다른 실시예에 따른 음성 데이터 변환 방법의 흐름도이다.
먼저, 외부기기와 접속할 수 있다. (S200) 외부기기와 접속하기 위해서, 다양한 통신 방식이 채택될 수 있음은 도 11과 같다.
다음으로, 접속된 외부기기의 설정 언어를 확인(S210)하고, 외부기기로부터 문자 데이터를 수신할 수 있다. (S220)
문자 데이터(TD)를 수신한 후, 사용자에 의해 음성 데이터 언어가 선택되었는지 확인한다. (S230) 여기서 음성 데이터(VD) 언어란 문자 데이터(TD)를 음성 데이터(VD)로 변환하는데 기초가 되는 언어를 의미할 수 있다.
사용자가 음성 데이터 언어를 선택하지 않았다면, 외부기기 설정 언어를 기초로, 수신한 문자 데이터를 음성 데이터로 변환할 수 있다. (S240) 수신한 문자 데이터(TD)를 음성 데이터(VD)로 변환 시, 외부기기 설정 언어에 대응되는 음향 모델 및 언어 모델을 참조할 수 있다.
만약, 사용자에 의해 음성 데이터 언어가 선택되었다면, 외부기기 설정 언어가 아닌, 음성 데이터 언어를 기초로 음성 데이터를 획득할 수 있다. (S250)
그 결과, 외부기기 설정 언어와 다른 언어를 사용하는 사용자의 음성을 인식하는데 정확도를 높일 수 있다.
도 13은 차량 제어방법의 일 실시예에 따른 음성 인식 방법의 흐름도이다.
먼저, 사용자로부터 음성이 입력되었는지 확인한다. (S300) 음성이 입력되지 않았다면, 계속하여 입력 여부를 확인할 수 있다.
만약, 사용자로부터 음성이 입력되었다면, 외부기기의 설정 언어를 기초로 입력된 음성을 인식할 수 있다. (S310) 이 때, 외부기기는 미리 저장된 음성 데이터(VD)의 기초가 되는 문자 데이터(TD)를 전송한 기기를 의미할 수 있다.
사용자의 음성을 인식할 때, 외부기기 설정 언어에 대응되는 음향 모델 및 언어 모델을 참조할 수 있다.
다음으로, 인식된 음성의 명령어 절에 대응되는 명령어를 확인할 수 있다. (S320) 또한 인식된 음성의 목적어 절에 대응되는 음성 데이터를 확인할 수 있다. (S330) 여기서, 음성 데이터(VD)는 도 11 또는 도 12의 방법에 따라 차량에 미리 저장될 수 있다.
이렇게 확인된 명령어 및 음성 데이터를 기초로 제어 명령을 생성할 수 있다. (S340) 마지막으로, 제어 명령을 외부기기로 전송할 수 있다. (S350) 그 결과, 사용자의 음성에 대응하여 외부기기가 제어될 수 있다.
도 13과 같이, 음성 인식 시 외부기기의 설정언어를 기초로 음성 인식을 수행함으로써, 외부기기 설정언어와 동일한 언어를 사용하는 사용자의 음성 인식 정확도를 높일 수 있다.
도 14는 차량 제어방법의 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
먼저, 사용자로부터 음성이 입력되었는지 확인한다. (S400) 음성이 입력되지 않았다면, 계속하여 입력 여부를 확인할 수 있다.
만약, 사용자로부터 음성이 입력되었다면, 사용자에 의해 음성 인식 언어가 선택되었는지 확인할 수 있다. (S410) 여기서 음성 인식 언어란, 음성 인식의 기초가 되는 언어를 의미할 수 있다.
사용자가 음성 인식 언어를 선택하지 않은 경우, 외부기기의 설정 언어를 기초로 입력된 음성을 인식할 수 있다. (S420) 이 때, 외부기기 설정 언어에 대응되는 음향 모델 및 언어 모델을 참조할 수 있다.
반면, 사용자가 음성 인식 언어를 선택한 경우, 선택된 음성 인식 언어를 기초로 입력된 음성을 인식할 수 있다. (S430) 이 때, 음성 인식 언어에 대응되는 음향모델 및 언어모델을 참조할 수 있다.
다음으로, 인식된 음성의 명령어 절에 대응되는 명령어를 확인할 수 있다. (S440) 또한 인식된 음성의 목적어 절에 대응되는 음성 데이터를 확인할 수 있다. (S450) 여기서, 음성 데이터(VD)는 도 11 또는 도 12의 방법에 따라 차량에 미리 저장될 수 있다.
이렇게 확인된 명령어 및 음성 데이터를 기초로 제어 명령을 생성할 수 있다. (S460) 마지막으로, 제어 명령을 외부기기로 전송할 수 있다. (S470) 그 결과, 사용자의 음성에 대응하여 외부기기가 제어될 수 있다.
도 14의 경우, 외부기기 설정언어와 다른 언어를 사용하는 사용자의 경우에도, 음성 인식 언어를 선택함으로써 음성 인식의 정확도를 높일 수 있다.
1: 차량
10: 본체
200: 통신부
300: 데이터 변환부
400: 저장부
500: 제어부
600: 음성 입력부
700: 음성 인식부

Claims (24)

  1. 외부기기에 저장된 문자 데이터를 수신하는 통신부;
    상기 수신한 문자 데이터를 음성 데이터로 변환하는 데이터 변환부;
    사용자로부터 음성을 입력 받는 음성 입력부;
    상기 외부기기의 설정 언어를 기초로 상기 입력 받은 음성을 인식하는 음성 인식부; 및
    상기 변환된 음성 데이터 중에서 상기 인식된 음성에 대응되는 음성 데이터를 확인하고, 상기 인식된 음성에 기초하여 상기 확인된 음성 데이터를 포함하는 제어 명령을 생성하고, 상기 통신부를 통해 상기 외부기기에 상기 제어 명령을 전송하는 제어부; 를 포함하는 차량.
  2. 제 1 항에 있어서,
    상기 음성 인식부는,
    상기 외부기기의 설정 언어에 대응되는 음향모델(Acoustic Model) 및 언어모델(Language Model) 중 적어도 하나를 이용하여 상기 입력 받은 음성을 인식하는 차량.
  3. 제 1 항에 있어서,
    상기 음성 인식부는,
    상기 사용자가 음성 인식 언어를 선택하는 경우, 상기 선택된 언어를 기초로 상기 입력된 음성을 인식하는 차량.
  4. 제 3 항에 있어서,
    상기 음성 인식부는,
    상기 선택된 음성 인식 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 상기 입력 받은 음성을 인식하는 차량.
  5. 제 1 항에 있어서,
    상기 음성 인식부는,
    상기 외부기기의 설정 언어에 따라 특징 벡터 모델을 설정하고, 상기 입력 받은 음성을 상기 특징 벡터 모델과 비교하는 차량.
  6. 제 1 항에 있어서,
    상기 음성 인식부는,
    상기 외부기기의 설정 언어에 따라 상태 열(State Sequence)을 구성하고, 상기 입력 받은 음성을 상기 상태 열과 비교하는 차량.
  7. 외부기기에 저장된 문자 데이터를 수신하는 통신부;
    상기 외부기기의 설정 언어를 기초로 상기 수신된 문자 데이터를 음성 데이터로 변환하는 데이터 변환부;
    사용자로부터 음성을 입력 받는 음성 입력부;
    상기 입력 받은 음성을 인식하는 음성 인식부; 및
    상기 변환된 음성 데이터 중에서 상기 인식된 음성에 대응되는 음성 데이터를 확인하고, 상기 인식된 음성에 기초하여 상기 확인된 음성 데이터를 포함하는 제어 명령을 생성하고, 상기 통신부를 통해 상기 외부기기에 상기 제어 명령을 전송하는 제어부; 를 포함하는 차량.
  8. 제 7 항에 있어서,
    상기 데이터 변환부는,
    상기 외부기기의 설정 언어에 대응되는 음향모델(Acoustic Model) 및 언어모델(Language Model) 중 적어도 하나를 이용하여 상기 수신된 문자 데이터를 상기 음성 데이터로 변환하는 차량.
  9. 제 7 항에 있어서,
    상기 데이터 변환부는,
    상기 사용자가 음성 데이터 언어를 선택하는 경우, 상기 선택된 음성 데이터 언어를 기초로 상기 수신된 문자 데이터를 상기 음성 데이터로 변환하는 차량.
  10. 제 9 항에 있어서,
    상기 데이터 변환부는,
    상기 선택된 음성 데이터 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 상기 수신된 문자 데이터를 상기 음성 데이터로 변환하는 차량.
  11. 제 7 항에 있어서,
    상기 데이터 변환부는,
    상기 외부기기의 설정 언어에 대응되는 특징 벡터 모델을 참조하여, 상기 수신된 문자 데이터를 상기 음성 데이터로 변환하는 차량.
  12. 제 11 항에 있어서,
    상기 데이터 변환부는,
    상기 외부기기의 설정 언어에 대응되는 상태 열(State Sequence)을 참조하여, 상기 수신된 문자 데이터를 상기 음성 데이터로 변환하는 차량.
  13. 외부기기에 저장된 문자 데이터를 수신하는 단계;
    상기 수신한 문자 데이터를 음성 데이터로 변환하는 단계;
    사용자로부터 음성을 입력 받는 단계;
    상기 외부기기의 설정 언어를 기초로 상기 입력 받은 음성을 인식하는 단계;
    상기 변환된 음성 데이터 중에서 상기 인식된 음성에 대응되는 음성 데이터를 확인하는 단계;
    상기 인식된 음성에 기초하여 상기 확인된 음성 데이터를 포함하는 제어 명령을 생성하는 단계; 및
    상기 생성한 제어 명령을 상기 외부기기에 전송하는 단계; 를 포함하는 차량의 제어방법.
  14. 제 13 항에 있어서,
    상기 입력 받은 음성을 인식하는 단계는,
    상기 외부기기의 설정 언어에 대응되는 음향모델(Acoustic Model) 및 언어 모델(Language Model) 중 적어도 하나를 이용하여 상기 입력 받은 음성을 인식하는 차량의 제어방법.
  15. 제 13 항에 있어서,
    상기 입력 받은 음성을 인식하는 단계는,
    상기 사용자가 음성 인식 언어를 선택하는 경우, 상기 선택된 음성 인식 언어를 기초로 상기 입력된 음성을 인식하는 차량의 제어방법.
  16. 제 15 항에 있어서,
    상기 입력 받은 음성을 인식하는 단계는,
    상기 선택된 음성 인식 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 상기 입력 받은 음성을 인식하는 차량의 제어방법.
  17. 제 13 항에 있어서,
    상기 입력 받은 음성을 인식하는 단계는,
    상기 외부기기의 설정 언어에 따라 특징 벡터 모델을 설정하는 단계; 및
    상기 입력 받은 음성을 상기 특징 벡터 모델과 비교하는 단계; 를 포함하는 차량의 제어방법.
  18. 제 13 항에 있어서,
    상기 입력 받은 음성을 인식하는 단계는,
    상기 외부기기의 설정 언어에 따라 상태 열(State Sequence)을 구성하는 단계; 및
    상기 입력 받은 음성을 상기 상태 열과 비교하는 단계; 를 포함하는 차량의 제어방법.
  19. 외부기기에 저장된 문자 데이터를 수신하는 단계;
    상기 외부기기의 설정 언어를 기초로 상기 수신한 문자 데이터를 음성 데이터로 변환하는 단계;
    사용자로부터 음성을 입력 받는 단계;
    상기 입력 받은 음성을 인식하는 단계;
    상기 변환된 음성 데이터 중에서 상기 인식된 음성에 대응되는 음성 데이터를 확인하는 단계;
    상기 인식된 음성에 기초하여 상기 확인된 음성 데이터를 포함하는 제어 명령을 생성하는 단계; 및
    상기 생성한 제어 명령을 상기 외부기기에 전송하는 단계; 를 포함하는 차량의 제어방법.
  20. 제 19 항에 있어서,
    상기 수신한 문자 데이터를 음성 데이터로 변환하는 단계는,
    상기 외부기기의 설정 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 상기 수신한 문자 데이터를 상기 음성 데이터로 변환하는 차량의 제어방법.
  21. 제 19 항에 있어서,
    상기 수신한 문자 데이터를 음성 데이터로 변환하는 단계는,
    상기 사용자가 음성 데이터 언어를 선택하는 경우, 상기 선택된 음성 데이터 언어를 기초로 상기 수신한 문자 데이터를 상기 음성 데이터로 변환하는 차량의 제어방법.
  22. 제 21 항에 있어서,
    상기 수신한 문자 데이터를 음성 데이터로 변환하는 단계는,
    상기 선택된 음성 데이터 언어에 대응되는 음향모델 및 언어모델 중 적어도 하나를 이용하여 상기 수신한 문자 데이터를 상기 음성 데이터로 변환하는 차량의 제어방법.
  23. 제 19 항에 있어서,
    상기 수신한 문자 데이터를 음성 데이터로 변환하는 단계는,
    상기 외부기기의 설정 언어에 대응되는 특징 벡터 모델을 참조하여 단계; 상기 수신한 문자 데이터를 상기 음성 데이터로 변환하는 차량의 제어방법.
  24. 제 19 항에 있어서,
    상기 수신한 문자 데이터를 음성 데이터로 변환하는 단계는,
    상기 외부기기의 설정 언어에 대응되는 상태 열(State Sequence)을 참조하여, 상기 수신한 문자 데이터를 상기 음성 데이터로 변환하는 차량의 제어방법.
KR1020140139642A 2014-10-16 2014-10-16 차량 및 그 제어 방법 KR101579533B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140139642A KR101579533B1 (ko) 2014-10-16 2014-10-16 차량 및 그 제어 방법
US14/709,139 US9685157B2 (en) 2014-10-16 2015-05-11 Vehicle and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140139642A KR101579533B1 (ko) 2014-10-16 2014-10-16 차량 및 그 제어 방법

Publications (1)

Publication Number Publication Date
KR101579533B1 true KR101579533B1 (ko) 2015-12-22

Family

ID=55081977

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140139642A KR101579533B1 (ko) 2014-10-16 2014-10-16 차량 및 그 제어 방법

Country Status (2)

Country Link
US (1) US9685157B2 (ko)
KR (1) KR101579533B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105774705A (zh) * 2016-03-11 2016-07-20 廊坊市金色时光科技发展有限公司 一种座椅姿态控制方法及***
KR20190140558A (ko) * 2018-06-12 2019-12-20 현대자동차주식회사 대화 시스템, 그를 가지는 차량 및 차량의 제어 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10950229B2 (en) * 2016-08-26 2021-03-16 Harman International Industries, Incorporated Configurable speech interface for vehicle infotainment systems
US10607601B2 (en) * 2017-05-11 2020-03-31 International Business Machines Corporation Speech recognition by selecting and refining hot words
US10846477B2 (en) 2017-05-16 2020-11-24 Samsung Electronics Co., Ltd. Method and apparatus for recommending word
CN108022593A (zh) * 2018-01-16 2018-05-11 成都福兰特电子技术股份有限公司 一种高灵敏度语音识别***及其控制方法
CN108583479A (zh) * 2018-03-14 2018-09-28 斑马网络技术有限公司 车辆辅助控制方法及其辅助控制***
US11750984B2 (en) * 2020-09-25 2023-09-05 Bose Corporation Machine learning based self-speech removal
KR20220045606A (ko) * 2020-10-05 2022-04-13 현대자동차주식회사 차량의 서스펜션 제어 장치 및 그 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000073936A (ko) * 1999-05-17 2000-12-05 구자홍 화자독립 음성인식 기술을 이용한 음성등록 방법 및 장치
JP2002144982A (ja) * 2000-11-06 2002-05-22 Mazda Motor Corp 車載機器の操作方法、車載機器の操作システム及び車載機器制御装置
JP2002311987A (ja) * 2002-02-12 2002-10-25 Denso Corp 携帯電話機
KR20060050277A (ko) * 2004-08-06 2006-05-19 모토로라 인코포레이티드 다중 언어의 이름들의 음성 인식을 위한 방법 및 시스템

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000310535A (ja) 1999-04-27 2000-11-07 Alpine Electronics Inc 車載情報機器設定装置
JP2001336939A (ja) 2000-05-26 2001-12-07 Denso Corp ナビゲーション装置及び記録媒体
US7050834B2 (en) * 2003-12-30 2006-05-23 Lear Corporation Vehicular, hands-free telephone system
US20080208578A1 (en) * 2004-09-23 2008-08-28 Koninklijke Philips Electronics, N.V. Robust Speaker-Dependent Speech Recognition System
US7676363B2 (en) * 2006-06-29 2010-03-09 General Motors Llc Automated speech recognition using normalized in-vehicle speech
JP2008096289A (ja) 2006-10-12 2008-04-24 Alpine Electronics Inc 多言語対応ナビゲーション装置
JP2009073428A (ja) 2007-09-24 2009-04-09 Clarion Co Ltd 車載装置及び車載システム
US8731923B2 (en) * 2010-08-20 2014-05-20 Adacel Systems, Inc. System and method for merging audio data streams for use in speech recognition applications
US8296142B2 (en) 2011-01-21 2012-10-23 Google Inc. Speech recognition using dock context
JP2014034256A (ja) 2012-08-08 2014-02-24 Panasonic Corp 車載装置
US9900177B2 (en) * 2013-12-11 2018-02-20 Echostar Technologies International Corporation Maintaining up-to-date home automation models

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000073936A (ko) * 1999-05-17 2000-12-05 구자홍 화자독립 음성인식 기술을 이용한 음성등록 방법 및 장치
JP2002144982A (ja) * 2000-11-06 2002-05-22 Mazda Motor Corp 車載機器の操作方法、車載機器の操作システム及び車載機器制御装置
JP2002311987A (ja) * 2002-02-12 2002-10-25 Denso Corp 携帯電話機
KR20060050277A (ko) * 2004-08-06 2006-05-19 모토로라 인코포레이티드 다중 언어의 이름들의 음성 인식을 위한 방법 및 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105774705A (zh) * 2016-03-11 2016-07-20 廊坊市金色时光科技发展有限公司 一种座椅姿态控制方法及***
KR20190140558A (ko) * 2018-06-12 2019-12-20 현대자동차주식회사 대화 시스템, 그를 가지는 차량 및 차량의 제어 방법
KR102562227B1 (ko) 2018-06-12 2023-08-02 현대자동차주식회사 대화 시스템, 그를 가지는 차량 및 차량의 제어 방법

Also Published As

Publication number Publication date
US9685157B2 (en) 2017-06-20
US20160111089A1 (en) 2016-04-21

Similar Documents

Publication Publication Date Title
KR101598948B1 (ko) 음성 인식 장치, 이를 포함하는 차량 및 음성 인식 방법
KR101579533B1 (ko) 차량 및 그 제어 방법
US9756161B2 (en) Voice recognition apparatus, vehicle having the same, and method of controlling the vehicle
US10854195B2 (en) Dialogue processing apparatus, a vehicle having same, and a dialogue processing method
US20070005206A1 (en) Automobile interface
KR102668438B1 (ko) 음성 처리 장치, 이를 포함하는 차량 및 음성 처리 방법
US11508367B2 (en) Dialogue system and dialogue processing method
KR102339443B1 (ko) 상황 기반 동작 결정 장치, 상황 기반 동작 결정이 가능한 차량, 상황 기반 동작 결정 방법 및 상기 차량의 제어 방법
JP2008089625A (ja) 音声認識装置、音声認識方法及び音声認識プログラム
US10770070B2 (en) Voice recognition apparatus, vehicle including the same, and control method thereof
KR101681988B1 (ko) 음성 인식 장치, 이를 포함하는 차량 및 음성 인식 방법
US11783806B2 (en) Dialogue system and dialogue processing method
KR101875440B1 (ko) 차량 및 그 제어방법
US10158745B2 (en) Vehicle and communication control method for determining communication data connection for the vehicle
KR101804765B1 (ko) 차량 및 그 제어방법
KR102527346B1 (ko) 차량용 음성 인식 장치, 이를 이용한 차량의 주행상태를 고려한 응답 제공 방법 및 컴퓨터 프로그램
CN110580901B (zh) 语音识别设备、包括该设备的车辆及该车辆控制方法
KR101630159B1 (ko) 차량 및 그 제어방법
KR20180075031A (ko) 대화 처리 장치, 이를 포함하는 차량 및 대화 처리 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191127

Year of fee payment: 5