KR101447879B1 - 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법 - Google Patents
음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법 Download PDFInfo
- Publication number
- KR101447879B1 KR101447879B1 KR1020130095044A KR20130095044A KR101447879B1 KR 101447879 B1 KR101447879 B1 KR 101447879B1 KR 1020130095044 A KR1020130095044 A KR 1020130095044A KR 20130095044 A KR20130095044 A KR 20130095044A KR 101447879 B1 KR101447879 B1 KR 101447879B1
- Authority
- KR
- South Korea
- Prior art keywords
- identification information
- control object
- information
- matching
- symbol
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000012015 optical character recognition Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 241000699666 Mus <mouse, genus> Species 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 206010047571 Visual impairment Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 208000029257 vision disease Diseases 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000004393 visual impairment Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
본 발명은 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법에 관한 것으로서, 본 발명에 따른 컨트롤 객체 선택장치는 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치로서, 하나 이상의 처리 디바이스를 포함하고, 하나 이상의 처리 디바이스는, 사용자의 음성에 기초하여 입력정보를 획득하고, 컨트롤 객체에 기초하여 획득된 심볼 (symbol) 에 대응하는 적어도 하나의 식별정보와 입력정보를 매칭하고, 식별정보 중에서 입력정보와 매칭되는 매칭 식별정보를 획득하고, 매칭 식별정보에 대응하는 컨트롤 객체를 선택하도록 구성된 것을 특징으로 하고, 본 발명은 제어 명령어가 사전에 내장되어 있지 않은 어플리케이션의 경우에도, 음성인식을 통해 전자장치가 제어될 수 있어, 해당 전자장치에 대한 사용자의 접근성을 향상시킬 수 있는 효과가 있다.
Description
본 발명은 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법에 관한 것으로서, 보다 상세하게는, 보다 상세하게는, 컨트롤 객체의 심볼에 기초한 식별정보를 이용하여 컨트롤 객체를 선택하기 위한 장치 및 방법에 관한 것이다.
컴퓨터, 노트북, 스마트폰 (smartphone), 태블릿PC (tablet PC), 네비게이션 (navigation) 등과 같은 전자장치의 사용자가 증가함에 따라, 이러한 전자장치와 사용자가 쉽게 상호작용할 수 있게 하는 사용자 인터페이스 (user interface) 에 대한 중요성이 높아지고 있다.
일반적인 사용자 인터페이스는, 키보드, 마우스, 터치 스크린 등의 입력장치를 통해 물리적 입력에 의하는 경우가 많다. 그러나, 디스플레이 된 화면을 볼 수 없는 시각 장애인이나, 키보드, 마우스, 터치 스크린 등과 같은 입력장치의 조작이 불편한 사람들 입장에서는, 전술한 사용자 인터페이스만을 통해 해당 전자장치를 조작하기가 용이하지 않다.
또한, 장애가 없는 사람들 입장에서도, 운전을 하거나, 양손에 짐을 들고 있는 경우와 같이 전자장치를 자유롭게 다루기 어려운 상황에서는, 전술한 사용자 인터페이스만으로 해당 전자장치를 조작하는 것은 용이하지 않다.
따라서, 전자장치에의 접근성 (accessibility) 을 향상시킬 수 있는 사용자 인터페이스의 개발이 요구되고 있는 실정이다. 전자장치에의 접근성을 향상시킬 수 있는 사용자 인터페이스 중 하나로, 사용자의 음성을 분석하여 전자장치를 제어하는 기술인 음성인식 기술을 예로 들 수 있다.
전자장치가 음성인식 기술을 이용하여 사용자의 음성을 통해 제어되기 위해서는, 사용자의 음성과 매칭될 수 있는 제어 명령어가 해당 전자장치에 미리 내장되어 있어야 한다.
사용자의 음성과 매칭될 수 있는 제어 명령어가 플랫폼 단에 내장된 경우, 음성인식을 통해 해당 전자장치의 기본 설정, 예컨대, 전자장치의 볼륨이나 밝기와 같은 전자장치의 기본적인 제어 등이 가능하다.
반면, 음성인식을 통해 개별적인 어플리케이션을 제어하기 위해서는, 어플리케이션 각각에, 사용자의 음성과 매칭될 수 있는 제어 명령어가 내장되어 있어야 한다.
따라서, 음성인식을 지원하지 않는 어플리케이션에서 음성인식을 가능하게 하거나, 음성인식으로 가능한 기능을 더 추가하기 위해서는, 해당 어플리케이션에 사용자의 음성과 매칭될 수 있는 제어 명령어가 내장될 수 있도록, 해당 어플리케이션을 다시 개발하거나, 업데이트 (update) 해야 한다.
그러나, 전자장치와 각 전자장치에 탑재되는 어플리케이션은 날이 갈수록 다양해져, 모든 어플리케이션에 사용자의 음성과 매칭될 수 있는 제어 명령어를 내장시키는 것도 용이하지 않아, 다양한 어플리케이션에서 연동가능한 범용적인 음성인식 시스템을 구현하기 어려운 문제점이 있다.
전술한 이유로, 음성인식이 지원되는 어플리케이션은 그 수가 많지 않고, 음성인식이 지원되더라도, 음성인식을 통해 수행할 수 있는 동작 또한 한정적이어서, 실질적으로 전자장치에의 접근성을 향상시키는데 한계가 있다.
따라서, 음성인식을 통해 전자장치에의 접근성을 향상시킬 수 있는 기술에 대한 개발이 요구되었다.
본 발명이 해결하고자 하는 과제는 사용자가 제어 명령어가 사전에 내장되어 있지 않은 어플리케이션을 사용하는 경우에도, 음성인식을 통해 전자장치를 제어할 수 있게 하는 장치 및 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 과제는 이미지로 구성된 컨트롤 객체를 음성인식을 통해 선택할 수 있는 장치 및 방법을 제공하는 것이다.
본 발명의 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치는 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치로서, 하나 이상의 처리 디바이스를 포함하고, 하나 이상의 처리 디바이스는, 사용자의 음성에 기초하여 입력정보를 획득하고, 컨트롤 객체에 기초하여 획득된 심볼 (symbol) 에 대응하는 적어도 하나의 식별정보와 입력정보를 매칭하고, 식별정보 중에서 입력정보와 매칭되는 매칭 식별정보를 획득하고, 매칭 식별정보에 대응하는 컨트롤 객체를 선택하도록 구성된 것을 특징으로 한다.
본 발명의 다른 특징에 따르면, 심볼은 컨트롤 객체에 대한 디스플레이 정보에 기초하여 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 어플리케이션 화면 정보에 기초하여 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 광학문자인식 (OCR; optical character recognition) 을 통해 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 이미지 패턴 매칭 (image pattern matching) 을 통해 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 장치상에서 실행된 어플리케이션에 따라 상이한 식별정보에 대응하는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 입력정보는 사용자의 음성의 특징이 분석되어 획득된 음성패턴 정보를 포함하고, 식별정보와 입력정보의 매칭은 식별정보와 음성패턴 정보의 매칭을 포함하는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 입력정보는 음성인식을 통해 사용자의 음성으로부터 인식된 텍스트 정보를 포함하고, 식별정보와 입력정보의 매칭은 식별정보와 텍스트 정보의 매칭을 포함하는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 하나 이상의 처리 디바이스는, 상기 입력정보와 매칭되는 매칭 식별정보가 존재하지 않는 경우, 사용자 지정 식별정보가 일 컨트롤 객체에 대응하도록 설정하는 것을 특징으로 한다.
전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 컨트롤 객체 선택방법은 컴퓨팅 장치에서 음성인식을 통해 컨트롤 객체를 선택하기 위한 방법으로서, 사용자의 음성에 기초하여 입력정보를 획득하는 단계, 컨트롤 객체에 기초하여 획득된 심볼에 대응하는 적어도 하나의 식별정보와 입력정보를 매칭하는 단계, 식별정보 중에서 입력정보와 매칭되는 매칭 식별정보를 획득하는 단계 및 매칭 식별정보에 대응하는 컨트롤 객체를 선택하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 다른 특징에 따르면, 심볼은 컨트롤 객체에 대한 디스플레이 정보에 기초하여 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 어플리케이션 화면 정보에 기초하여 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 광학문자인식 (OCR; optical character recognition) 을 통해 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 이미지 패턴 매칭 (image pattern matching) 을 통해 획득되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 심볼은 장치상에서 실행된 어플리케이션에 따라 상이한 식별정보에 대응하는 것을 특징으로 한다.
전술한 바와 같은 과제를 해결하기 위하여 본 발명의 일 실시예에 따른 컴퓨터 판독가능매체는 명령어 세트들을 저장하는 컴퓨터 판독가능매체로서, 명령어 세트들은, 컴퓨팅 장치에 의해 실행되는 경우에 컴퓨팅 장치로 하여금, 사용자의 음성에 기초하여 입력정보를 획득하고, 컨트롤 객체에 기초하여 획득된 심볼 (symbol) 에 대응하는 적어도 하나의 식별정보와 입력정보를 매칭하고, 식별정보 중에서 입력정보와 매칭되는 매칭 식별정보를 획득하고, 매칭 식별정보에 대응하는 컨트롤 객체를 선택하게 하는 것을 특징으로 한다.
기타 실시예의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명은 제어 명령어가 사전에 내장되어 있지 않은 어플리케이션의 경우에도, 음성인식을 통해 전자장치가 제어될 수 있어, 해당 전자장치에 대한 사용자의 접근성을 향상시킬 수 있는 효과가 있다.
본 발명은 이미지로 구성된 컨트롤 객체를 음성인식을 통해 선택함으로써, 컨트롤 객체를 구성하는 구성요소의 유형에 영향을 받지 않고, 음성인식을 통해 컨트롤 객체를 선택할 수 있는 효과가 있다.
본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.
도 1은 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 컨트롤 객체 선택방법의 흐름도이다.
도 3은 컨트롤 객체에 대한 디스플레이 정보에 기초하여 획득된 심볼과 획득된 심볼에 대응하는 식별정보를 도시한 것이다.
도 4는 심볼과 심볼에 대응하는 식별정보의 예시도이다.
도 5는 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 개략도이다.
도 6은 본 발명의 일 실시예에 따른 컨트롤 객체 선택방법의 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 개략도이다.
도 2는 본 발명의 일 실시예에 따른 컨트롤 객체 선택방법의 흐름도이다.
도 3은 컨트롤 객체에 대한 디스플레이 정보에 기초하여 획득된 심볼과 획득된 심볼에 대응하는 식별정보를 도시한 것이다.
도 4는 심볼과 심볼에 대응하는 식별정보의 예시도이다.
도 5는 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 개략도이다.
도 6은 본 발명의 일 실시예에 따른 컨트롤 객체 선택방법의 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 개략도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
비록 제 1, 제 2 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서 이하에서 언급되는 제 1 구성요소는 본 발명의 기술적 사상 내에서 제 2 구성요소일 수도 있음은 물론이다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.
본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터 또는 신호를 '전송'하는 경우에는 구성요소는 다른 구성요소로 직접 상기 데이터 또는 신호를 전송할 수 있고, 적어도 하나의 또 다른 구성요소를 통하여 데이터 또는 신호를 다른 구성요소로 전송할 수 있음을 의미한다.
음성인식이란, 기본적으로 사용자가 발성한 음성을 전자장치가 해석해 그 내용을 텍스트로 인식하는 작업을 의미한다. 구체적으로, 사용자가 발성한 음성의 파형이 전자장치에 입력되면, 음향 모델 등을 참조하여 음성파형을 분석함으로써, 음성패턴 정보가 획득될 수 있다. 그리고, 획득된 음성패턴 정보가 식별정보와 비교됨으로써, 식별정보에서 일치 확률이 가장 높은 텍스트가 인식될 수 있다.
본 명세서에서 입력정보란, 사용자의 음성에 기초하여, 전술한 음성인식 과정의 일부 또는 전부를 거쳐 획득되는 정보를 통칭한다. 예컨대, 입력정보는 사용자의 음성파형의 특징이 분석되어 획득된 음성패턴 정보일 수 있다. 이러한 음성패턴 정보는 음향적 (acoustic) 특징이 표현되도록 단구간 (short-time) 별로 사용자의 음성으로부터 추출된 음성특징계수들로 구성될 수 있다.
본 명세서에서 컨트롤 객체란, 컨트롤 객체 선택장치의 화면상에 디스플레이 되어 사용자의 입력을 받을 수 있는 버튼 등의 인터페이스를 의미하며, 디스플레이 된 컨트롤 객체에 사용자의 입력이 인가되면, 컨트롤 객체 선택장치가 미리 결정된 제어 동작을 수행하도록 구현될 수 있다.
버튼, 체크 박스, 텍스트 입력란 등과 같이 사용자가 클릭, 탭 등을 하여 선택할 수 있는 인터페이스가 컨트롤 객체일 수 있으나, 이에 한정되지 않고, 사용자가 마우스나 터치 스크린 등의 입력장치를 통해 선택 가능한 모든 인터페이스가 컨트롤 객체일 수 있다.
본 명세서에서 심볼이란, 텍스트를 포함하진 않으나, 특정 의미로 해석될 수 있는 도형, 기호 또는 이미지를 의미한다. 심볼로 표시되는 컨트롤 객체의 경우, 해당 컨트롤 객체의 심볼은 일반적으로 해당 컨트롤 객체가 어플리케이션에서 어떠한 기능이 수행하는지 암시할 수 있다. 예컨대, ‘▶’ 심볼은 일반적으로 소리나 영상 등의 재생을 의미하고, ‘+’심볼이나 ‘-‘심볼은 항목 등의 추가나 제거를 의미할 수 있다.
본 명세서에서 식별정보란, 컨트롤 객체 선택장치를 통해 컨트롤 객체에 기초하여 획득되는 텍스트를 의미하며, 컨트롤 객체에 기초하여 획득된 심볼 (symbol) 에 대응한다. 심볼과 식별정보는 일대일, 일대다, 다대일 또는 다대다로 대응할 수 있다. 심볼에 대응하는 식별정보와 관련하여서는 도 4에서 후술한다.
사용자의 음성이 분석되어 획득된 음성패턴 정보가 텍스트인 식별정보와 매칭되면, 식별정보 중 일치 확률이 가장 높은 식별정보가 인식될 수 있다.
식별정보 중 사용자의 음성과 일치 확률이 가장 높은 식별정보가 인식되면, 인식된 식별정보에 대응되는 컨트롤 객체가 선택된다. 따라서, 사용자의 음성과 매칭되는 제어 명령어가 내장되어 있지 않더라도, 컨트롤 객체 선택장치에 의해 컨트롤 객체가 선택될 수 있다.
한편, 심볼은 컨트롤 객체에 대한 디스플레이 정보 또는 어플리케이션 화면 정보에 기초하여 획득될 수 있으며, 이와 관련하여서는 도 3에서 후술한다.
본 명세서에서 컨트롤 객체에 대한 디스플레이 정보란, 특정 컨트롤 객체가 디스플레이 되는데 이용되는 정보를 통칭한다. 예컨대, 객체의 이미지나 아이콘, 컨트롤 객체의 크기나 위치 등에 대한 정보가 디스플레이 정보일 수 있다. 디스플레이 정보를 구성하는 각 항목에 대한 값 (value) 이나 해당 값에 이르는 경로 (path) 에 기초하여, 컨트롤 객체가 컨트롤 객체 선택장치의 화면에 디스플레이 된다.
본 명세서에서 어플리케이션 화면 정보란, 컨트롤 객체 선택장치에 실행되어 있는 어플리케이션에서 특정 화면이 디스플레이 되는데 이용되는 정보를 의미한다.
본 명세서에서 사용자 입력 텍스트란, 사용자의 음성이, 음성인식 기능을 통해 컨트롤 객체 선택장치에서 문자를 표현하는 방식, 예컨대, 아스키 (ASCII) 코드 등으로 변환된 텍스트를 의미한다.
이하, 첨부된 도면을 참조하여 본 발명의 다양한 실시예들을 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치 (100) 는 프로세서 (120), 메모리 컨트롤러 (122), 메모리 (124) 를 포함하고, 인터페이스 (110), 마이크로폰 (140), 스피커 (142), 디스플레이부 (130) 를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 컨트롤 객체 선택장치 (100) 는 음성인식을 통해 컨트롤 객체를 선택할 수 있는 컴퓨팅 장치로서, 하나 이상의 처리 디바이스를 포함하고, 오디오 입력 기능을 구비한 컴퓨터, 노트북, 스마트폰, 태블릿 PC (tablet PC), 네비게이션 (navigation), PDA (personal digital assistant), PMP (portable media player), MP3 플레이어, 전자사전 등의 단말이거나, 이러한 단말들과 연결될 수 있는 서버나 다수의 컴퓨터로 구성된 분산 컴퓨팅 시스템일 수 있다. 여기서, 하나 이상의 처리 디바이스는 적어도 하나 이상의 프로세서 (120) 와 메모리 (124) 를 포함할 수 있고, 복수의 프로세서 (120) 는 서로 메모리 (124) 를 공유하도록 구현될 수도 있다.
메모리 (124) 는 프로그램이나 명령어 세트 등을 저장하며, 메모리 (124) 는 램 (RAM; random access memory), 롬 (ROM; read-only memory), 자기 디스크 (magnetic disk) 장치, 광 디스크 (optical disk) 장치, 플래시 메모리 등을 포함할 수 있다.
처리 디바이스는 사용자의 음성에 기초하여 입력정보를 획득하고, 컨트롤 객체에 기초하여 획득된 심볼 (symbol) 에 대응하는 적어도 하나의 식별정보와 입력정보를 매칭하고, 식별정보 중에서 입력정보와 매칭되는 매칭 식별정보를 획득하고, 매칭 식별정보에 대응하는 컨트롤 객체를 선택하도록 구성된다.
메모리 컨트롤러 (122) 는 프로세서 (120) 나 인터페이스 (110) 등의 기타 유닛이 메모리 (124) 로 액세스 하는 것을 제어한다.
프로세서 (120) 는 메모리 (124) 에 저장된 프로그램이나 명령어 세트를 실행하는 등의 연산을 수행한다.
인터페이스 (110) 는 컨트롤 객체 선택장치 (100) 의 마이크로폰 (140) 이나 스피커 (142) 와 같은 입출력 장치 (100) 를 프로세서 (120) 및 메모리 (124) 에 연결시킨다.
마이크로폰 (140) 은 음성신호를 수신하고, 수신한 음성신호를 전기신호로 변환하여 인터페이스 (110) 에 제공하며, 스피커 (142) 는 인터페이스 (110) 로부터 제공받은 전기신호를 음성신호로 변환하여 출력한다.
디스플레이부 (130) 는 사용자에게 시각적인 그래픽적 정보를 디스플레이 하며, 디스플레이부 (130) 는 터치 입력을 검출하는 터치 스크린 디스플레이를 포함할 수 있다.
본 발명의 일 실시예에 따른 컨트롤 객체 선택장치 (100) 는, 메모리 (124) 에 저장되고, 프로세서 (120) 에 의해 실행되는 프로그램 (이하, ‘컨트롤 객체 선택엔진’) 을 이용하여, 음성인식을 통해 컨트롤 객체를 선택한다.
컨트롤 객체 선택엔진은 컨트롤 객체 선택장치 (100) 의 백그라운드 (background) 에서 실행되어, 어플리케이션으로부터 컨트롤 객체에 대한 정보를 획득하고, 컨트롤 객체에 대한 정보에 기초하여 획득된 심볼을 이용하여, 컨트롤 객체 선택장치 (100) 로 하여금 음성인식을 통해 컨트롤 객체를 선택하게 한다.
도 2는 본 발명의 일 실시예에 따른 컨트롤 객체 선택방법의 흐름도이다. 설명의 편의를 위해 도 3을 참조하여 설명한다.
도 3은 컨트롤 객체에 대한 디스플레이 정보에 기초하여 획득된 심볼과 획득된 심볼에 대응하는 식별정보를 도시한 것이다.
컨트롤 객체 선택장치는 사용자의 음성에 기초하여 입력정보를 획득한다 (S100).
여기서 입력정보는 사용자의 음성의 특징이 분석되어 획득된 음성패턴 정보인 것으로 설명하나, 이에 한정되는 것은 아니다.
입력정보가 획득되면, 컨트롤 객체 선택장치는 컨트롤 객체에 기초하여 획득된 심볼에 대응하는 적어도 하나의 식별정보와 입력정보를 매칭한다 (S110).
도 3을 참조하면, 컨트롤 객체 선택장치 (100) 상에 미디어 플레이어 어플리케이션 (150) 이 실행되어 있는 경우, ‘이전 버튼’ (152), ‘다음 버튼’ (154), ‘재생 버튼’ (156) 이 컨트롤 객체에 해당한다.
본 발명의 일 실시예에 따르면, 컨트롤 객체에 대한 디스플레이 정보에 기초하여 심볼이 획득될 수 있다.
도 3를 참조하면, 컨트롤 객체에 대한 정보 (200) 중 디스플레이 정보 (252, 254, 256) 는 컨트롤 객체의 크기와 위치를 결정하는 항목 (252A, 254A, 256A) 인 ‘width’ 항목, ‘height’ 항목, ‘left’ 항목 및 ‘top’ 항목, 컨트롤 객체의 이미지에 대한 링크 (link) 를 제공하는 ‘img’ 항목 (252B, 254B, 256B) 등에 대한 값을 포함할 수 있다.
전술한 항목들 (252A, 254A, 256A, 252B, 254B, 256B) 은 설명의 편의상 임의로 정의된 것일 뿐, 컨트롤 객체에 대한 디스플레이 정보 (252, 254, 256) 를 구성하는 항목의 종류, 수, 항목의 이름 등은 다양하게 변형되어 구현될 수 있다.
도 3을 참조하면, 컨트롤 객체 (152, 154, 156) 의 이미지에 대한 링크를 제공하는 ‘img’ 항목 (252B, 254B, 256B) 에 대한 값은 해당 컨트롤 객체 (152, 154, 156) 의 이미지 파일 경로 (“bwd.jpg”, “play.jpg”, “fwd.jpg”) 또는 이미지 그 자체를 나타내기 위한 문자열로 주어질 수 있다. 여기서, “bwd.jpg”, “play.jpg”, “fwd.jpg” 는 일 예시에 불과하며, 컨트롤 객체는 다양한 타입의 파일에 의해 이미지로 디스플레이 될 수 있다.
컨트롤 객체의 크기와 위치를 결정하는 항목 (252A, 254A, 256A) 중 ‘width’ 항목 및 ‘height’ 항목에 대한 값에 의해 해당 컨트롤 객체 (152, 154, 156) 에 대한 이미지의 너비와 높이가 결정되고, ‘left’ 항목 및 ‘top’ 항목에 대한 값에 의해 컨트롤 객체 (152, 154, 156) 의 디스플레이 위치가 결정됨으로써, 해당 컨트롤 객체 (152, 154, 156) 가 디스플레이 되는 영역이 결정될 수 있다.
도 3을 참조하면, ‘이전 버튼’ (152) 은, ‘img’ 항목 (252B) 의 ‘bwd.jpg’에 의해 이미지로 디스플레이 될 수 있다. 그리고, “bwd.jpg”에 대해 이미지 패턴 매칭 (image pattern matching) 또는 광학문자인식 (OCR; optical character recognition) 이 수행되면, ‘◀◀’ 심볼이 획득될 수 있다. 마찬가지로, “play.jpg”와 “fwd.jpg”에 대해 이미지 패턴 매칭 또는 광학문자인식이 수행되면, ‘▶’ 심볼과 ‘▶▶’ 심볼이 획득될 수 있다.
여기서, 이미지 패턴 매칭이란, 대상 이미지, 예컨대 전술한 “bwd.jpg”, “play.jpg”, 또는 “fwd.jpg” 와 같은 대상 이미지로부터 특징 (feature) 을 추출한 후, 미리 설정되거나 사용자의 사후적 설명 또는 경험적 방식 (heuristic) 을 통해 생성된 비교군에서, 동일하거나 유사한 패턴을 갖는 이미지를 획득하는 것으로서, 이미지 패턴 매칭을 위해, 템플릿 매칭 (template matching), 뉴럴 네트워크 (neural network), 은닉 마르코프 모델 (HMM; hidden Markov model) 등이 이용될 수 있으며, 열거한 방법에 한정되지 않고, 다양한 방법들이 이용될 수 있다.
심볼은 컨트롤 객체 선택엔진에 의해 획득되고, 메모리에 저장될 수 있으나, 반드시 이에 한정되는 것은 아니고, 실행된 어플리케이션에 의해 획득되고, 메모리에 저장되도록 구현될 수도 있다.
전술한 바에 따라 컨트롤 객체에 기초하여 획득된 심볼은 식별정보에 대응한다. 심볼에 대응하는 식별정보에 관해서는 도 4를 참조하여 설명한다.
도 4는 심볼과 심볼에 대응하는 식별정보의 예시도이다.
‘이전 버튼’ (152, 도 3), ‘다음 버튼’ (154, 도 3), ‘재생 버튼’ (156, 도 3) 에 대한 심볼로서, 각각 ‘◀◀’, ‘▶▶’, ‘▶’심볼 (352, 354, 356) 이 획득될 수 있다.
획득된 심볼은 도 4에 도시된 바와 같이 각각 식별정보에 대응된다. 도 4를 참조하면, ‘◀◀’ 심볼 (352) 의 경우 ‘이전’ 식별정보 (452) 가 획득되고, ‘▶▶’ 심볼 (354) 의 경우, ‘다음’ 식별정보 (454) 가 획득되고, ‘▶’ 심볼 (356) 의 경우, ‘재생’ 식별정보 (456) 가 획득될 수 있다. 획득된 식별정보와 매칭되는 입력정보가 획득되면, 해당 식별정보에 대응하는 컨트롤 객체, 즉, 해당 식별정보와 대응되는 심볼로 표시되는 컨트롤 객체가 선택된다.
한편, 도 4에 도시된 심볼 (300) 이나 심볼에 대응하는 식별정보 (400) 는 예시에 불과하며, 심볼의 종류나 수, 그에 대응되는 식별정보는 다양하게 구현될 수 있다.
예컨대, 반드시 하나의 심볼과 하나의 식별정보가 서로 대응될 필요는 없으며, 어플리케이션에 따라서, 심볼이 가지는 의미가 다양할 수 있으므로, 하나의 심볼에 서로 다른 의미를 가지는 복수의 식별정보가 모두 대응하도록 구현될 수도 있다.
이와 같이, 하나의 심볼에 복수의 식별정보가 대응하는 경우에는 해당 복수의 식별정보 간에 우선순위를 두어, 매칭 식별정보가 결정되도록 구현될 수도 있다.
즉, ‘▶’ 심볼 (356) 의 경우, ‘▶’ 심볼 (358) 과 그 형태가 유사하므로, 식별정보로서, ‘재생’ 및 ‘다음’에 모두 대응될 수 있다. 이러한 경우, “다음”이란 사용자의 음성으로부터 입력정보가 획득된 경우, ‘다음 버튼’ (154) 과 ‘재생 버튼’ (156) 중 어느 컨트롤 객체가 선택되어야 할 지 기준이 필요하다.
따라서, ‘다음 버튼’ (154) 의 경우, ‘다음’ 식별정보가 가장 첫 번째 우선순위를 가지고, ‘재생 버튼’ (156) 의 경우, ‘재생’ 식별정보가 가장 첫 번째, ‘다음’ 식별정보가 두 번째 우선순위를 가지도록 구현하여, “다음”이란 사용자의 음성으로부터 입력정보가 획득된 경우, ‘다음’ 식별정보가 최우선으로 대응되는 ‘다음 버튼’ (154) 이 선택되도록 구현될 수 있다.
또한, 하나의 심볼에 대해, 어플리케이션에 따라 상이한 식별정보가 대응되도록 구현될 수 있다. 예컨대, ‘▶’ 심볼 (356) 의 경우, 미디어 플레이어에서는 ‘재생’ 식별정보에 대응하고, 웹 브라우저나 전자책 어플리케이션에서는 ‘다음’ 식별정보에 대응하도록 구현될 수 있다.
식별정보와 입력정보의 매칭, 즉, 식별정보와 음성패턴 정보의 매칭을 통해, 획득된 음성패턴이 식별정보들과 비교되어, 해당 음성패턴과 동일하거나 가장 유사한 패턴을 갖는 식별정보가 판단된다.
한편, 사용자의 음성으로부터 음성패턴 정보가 코드화된 방식으로, 식별정보가 음소나 특정 구간 단위로 코드화됨으로써, 음성패턴 정보와 식별정보가 서로 매칭될 수 있다. 식별정보와 음성패턴 정보의 매칭 시에는 정적 매칭 (static matching), 코사인 유사성 (cosine similarity) 비교, 탄력 매칭 (elastic matching) 등이 이용될 수 있다.
컨트롤 객체 선택장치는, 획득된 식별정보와 입력정보의 매칭 결과, 입력정보와 매칭되는 매칭 식별정보가 있는지 여부를 판단한다 (S120).
전술한 바와 같이, 획득된 음성패턴과 동일하거나 가장 유사한 패턴을 갖는 식별정보가 매칭 식별정보인 것으로 판단된다.
만약 입력정보와 매칭되는 매칭 식별정보가 없다고 판단된 경우, 즉, 입력정보와 일정 정도 이상 매칭되는 식별정보가 없는 경우에는, 컨트롤 객체 선택장치는 다시 입력정보를 획득하기 전까지 대기하거나, 사용자가 음성을 다시 발성하게 요구하도록 구현될 수 있다. 또는, 사용자 지정 식별정보가 일 컨트롤 객체에 대응하도록 구현될 수 있다.
예컨대, 도 3을 참조하면, ‘이전’, ‘재생’, 및 ‘다음’ 식별정보가 존재하는 경우, “거꾸로”란 사용자의 음성으로부터 입력정보가 획득된 경우에는, 획득된 입력정보와 매칭되는 매칭 식별정보가 존재하지 않을 수도 있다. 이때, 식별정보와 매칭되는 입력정보를 획득하기 위해, 다시 사용자의 음성을 입력받는 것은 매우 비효율적일 수 있다.
따라서, 입력정보와 매칭되는 매칭 식별정보가 없다고 판단된 경우에는, 컨트롤 객체 선택장치는 사용자 지정 식별정보를 일 컨트롤 객체에 대응시키도록 구현되어, 이후에는 해당 사용자 지정 식별정보가 일 컨트롤 객체에 대한 식별정보로 기능하도록 할 수 있다.
여기서, 사용자 지정 식별정보란, 컨트롤 객체에 대한 식별정보로 기능하도록 사용자에 의해 지정된 식별정보로서, 음성패턴으 또는 텍스트로 구성될 수 있고, 이때 음성패턴은 S100 단계에서 사용자의 음성으로부터 획득된 음성패턴일 수 있다.
만약 음성패턴이 사용자 식별정보로서 일 컨트롤 객체에 대응하여 해당 컨트롤 객체에 대한 식별정보로 기능하게 된 경우, 해당 음성패턴과 동일하거나 유사한 음성패턴이 이후에 획득되면, 해당 음성패턴에 대응하는 일 컨트롤 객체가 선택될 수 있다.
반면, 입력정보와 매칭되는 매칭 식별정보가 있다고 판단된 경우, 컨트롤 객체 선택장치는 해당 매칭 식별정보를 획득한다 (S130).
예컨대, 도 3을 참조하면, “재생”이란 사용자의 음성으로부터 입력정보가 획득된 경우, ‘이전’, ‘재생’, ‘다음’ 식별정보 중 ‘재생’ 식별정보가 매칭 식별정보에 해당한다.
매칭 식별정보가 획득되면, 컨트롤 객체 선택장치는 매칭 식별정보에 대응하는 컨트롤 객체를 선택한다 (S140).
여기서, 컨트롤 객체의 선택은 입력 이벤트 (input event) 또는 선택 이벤트 (selection event) 를 통해 이루어질 수 있다.
이벤트란, 프로그램에서 감지되는 활동 (action) 이나 사건 (occurance) 을 의미하는데, 이벤트의 유형으로, 입력을 처리하기 위한 입력 이벤트 (input event), 출력을 처리하기 위한 출력 이벤트 (output event), 특정 객체를 선택하기 위한 선택 이벤트 (selection event) 등을 예로 들 수 있다.
입력 이벤트는 일반적으로 마우스, 터치패드, 터치 스크린, 키보드 등과 같은 입력장치를 통해 클릭, 터치, 키 스트로크 등의 입력이 인가되는 경우에 발생할 수 있으나, 전술한 입력장치를 통해 실제 입력이 인가되지 않더라도, 가상적으로 입력이 인가된 것으로 처리하여, 입력 이벤트가 발생할 수도 있다.
한편, 선택 이벤트는 특정 컨트롤 객체를 선택하기 위해 발생하며, 특정 컨트롤 객체에 대해 전술한 입력 이벤트, 예컨대, 더블클릭 이벤트나 탭 이벤트가 발생함에 따라, 특정 객체가 선택되도록 구현될 수도 있다.
이와 같이, 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치에 의하면, 제어 명령어가 사전에 내장되어 있지 않은 어플리케이션의 경우에도, 음성인식을 통해 전자장치가 제어될 수 있어, 해당 전자장치에 대한 사용자의 접근성을 향상시킬 수 있는 효과가 있다.
한편, 본 발명의 일 실시예에 따르면, 심볼은 어플리케이션 화면 정보에 기초하여 획득되도록 구현될 수도 있다.
어플리케이션 화면에 컨트롤 객체가 디스플레이 되는 경우, 어플리케이션 화면에 대해 광학문자인식이 수행되면, 해당 어플리케이션 화면 내에서 텍스트나 문자기호로 식별될 수 있는 정보가 획득될 수 있다.
그러나, 어플리케이션 화면에서 텍스트나 문자기호로 식별될 수 있는 정보들만 획득되면, 그 정보가 심볼인지, 심볼이라면 어떤 컨트롤 객체에 대응하는지 결정해야 한다.
따라서, 컨트롤 객체 선택 장치는, 어플리케이션 화면상에서 텍스트나 문자기호로 식별되는 정보가 디스플레이 되는 제 1 영역과, 제 1 영역과 대응되는 제 2 영역에서 디스플레이 되는 컨트롤 객체를 판단하여, 제 1 영역에서 텍스트나 문자기호로 식별되는 정보를, 심볼로서, 제 2 영역의 컨트롤 객체와 연관시키도록 구현될 수 있다.
여기서, 텍스트나 문자기호로 식별되는 정보가 디스플레이 되는 제 1 영역과 대응되는 제 2 영역이라 함은, 텍스트나 문자기호가 디스플레이 되는 블록 (block) 의 적어도 일부를 포함하는 영역, 텍스트나 문자기호가 디스플레이 되는 블록과 가장 근접하는 영역, 텍스트나 문자기호가 디스플레이 되는 블록의 상단이나 하단과 같은 영역일 수 있다. 여기서, 제 1 영역과 대응되는 제 2 영역은, 전술한 방식에 한정되지 않고, 다양한 방식으로 결정될 수 있다. 한편, 제 2 영역에서 디스플레이 되는 컨트롤 객체를 판단하기 위해, 컨트롤 객체에 대한 디스플레이 정보를 참조할 수 있다.
한편, 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치는 컨트롤 객체나 어플리케이션 화면의 디스플레이 유무와 무관하게 컨트롤 객체에 대한 식별정보가 획득되도록 구현될 수 있다. 이와 관련하여 도 5을 참조하여 설명한다.
도 5는 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 개략도이다.
도 5를 참조하면, 컨트롤 객체 선택장치 (100) 의 화면 해상도에 따라 사용자에게 디스플레이 되는 범위는 한정될 수 있다.
그러나, 심볼은 컨트롤 객체에 대한 정보에 기초하여 획득되므로, 실제 디스플레이 유무와는 무관하게 심볼이 획득될 수 있고, 획득된 심볼로부터 대응되는 식별정보가 결정될 수 있다.
도 5에 도시된 바와 같이, 어플리케이션 화면 (170) 에 디스플레이 된 컨트롤 객체 (171, 172, 173, 174, 175) 뿐만 아니라, 디스플레이 되고 있지 않은 컨트롤 객체 (176, 177, 178, 179) 에 대해서도 심볼이 획득될 수 있다.
따라서, 디스플레이 되고 있지 않은 컨트롤 객체 (176, 177, 178, 179) 도, 음성인식을 통해 선택될 수 있고, 만약 디스플레이 되고 있지 않은 컨트롤 객체 (176, 177, 178, 179) 가 선택되는 경우에는, 해당 컨트롤 객체가 위치한 지점까지 자동 스크롤 (auto-scroll) 이 이루어지도록 구현될 수도 있다.
이와 같이, 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치에 의하면, 디스플레이 되고 있지 않은 컨트롤 객체나 화면에 기초하여서도, 컨트롤 객체에 대한 심볼이 획득될 수 있다.
한편, 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치는 컨트롤 객체의 식별정보나 매칭 식별정보를 음성으로 출력하도록 구현될 수 있다.
컨트롤 객체의 식별정보가 음성으로 출력됨으로써, 사용자가 컨트롤 객체 선택장치가 인식할 수 있는 단어 등을 인지하고, 매칭 식별정보가 음성으로 출력됨으로써, 사용자가 발성한 음성이 최종적으로 인식된 단어가 무엇인지 인지할 수 있어, 컨트롤 객체 선택장치의 화면을 보지 않고서도 컨트롤 객체를 선택할 수 있는 효과가 있다.
한편, 본 발명의 일 실시예에 따르면, 컨트롤 객체에 텍스트 입력란이 포함된 경우, 음성인식을 통해 텍스트 입력란에 텍스트가 입력되도록 구현될 수 있다. 음성인식을 통해, 컨트롤 객체에 포함된 텍스트 입력란을 활성화하여, 텍스트를 입력하는 구성과 관련하여 도 6 및 도 7을 참조하여 설명한다.
도 6은 본 발명의 일 실시예에 따른 컨트롤 객체 선택방법의 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 컨트롤 객체 선택장치의 개략도이다.
컨트롤 객체 선택장치는 사용자의 음성에 기초하여 입력정보를 획득한다 (S200).
입력정보가 획득되면, 컨트롤 객체 선택장치는 컨트롤 객체에 기초하여 획득된 심볼에 대응하는 적어도 하나의 식별정보와 입력정보를 매칭한다 (S210).
도 7을 참조하면, ‘검색 컨트롤 객체’ (168) 는, ‘돋보기 버튼’ (168A) 과 텍스트 입력란 (168B) 을 포함하고, ‘돋보기 버튼’ (168A) 에 기초하여 획득된 ‘돋보기’ 심볼 (368, 도 4 참조) 은 ‘검색’ 식별정보 (468, 도 4 참조) 에 대응될 수 있다.
획득된 식별정보와 입력정보의 매칭 결과, 컨트롤 객체 선택장치는 입력정보와 매칭되는 매칭 식별정보가 있는지 여부를 판단한다 (S420).
만약 입력정보와 매칭되는 매칭 식별정보가 있다고 판단된 경우, 컨트롤 객체 선택장치는 해당 매칭 식별정보를 획득한다 (S230).
상기 S200, S210, S220, S230 단계는, 도 2에서 설명한 S100, S110, S120, S130 단계와 실질적으로 동일하므로, 중복 설명은 생략한다.
매칭 식별정보가 획득되면, 컨트롤 객체 선택장치는 매칭 식별정보에 대응하는 컨트롤 객체가 텍스트 입력란 (text input field) 을 포함하는지 여부를 판단한다 (S240).
사용자가 텍스트 입력란을 선택한 의도는 해당 텍스트 입력란에 텍스트를 입력하기 위함으로 볼 수 있다. 따라서, 컨트롤 객체가 텍스트 입력란을 포함하는 경우에는, 해당 텍스트 입력란에 텍스트가 입력되도록 구현될 수 있다.
매칭 식별정보에 대응하는 컨트롤 객체가 텍스트 입력란을 포함하지 않는 경우, 컨트롤 객체 선택장치는 매칭 식별정보에 대응하는 컨트롤 객체를 선택한다 (S250). S250 단계는, 도 2에서 설명한 S140 단계와 실질적으로 동일하므로, 중복 설명은 생략한다.
매칭 식별정보에 대응하는 컨트롤 객체가 텍스트 입력란을 포함하는 경우, 컨트롤 객체 선택장치는 해당 텍스트 입력란을 활성화한다 (S260).
“검색”이란 사용자의 음성에 기초하여 입력정보가 획득된 경우, 획득된 입력정보와 ‘검색’ 식별정보가 매칭될 수 있고, ‘검색’ 매칭 식별정보에 대응하는 ‘검색 컨트롤 객체’ (168) 는 텍스트 입력란 (168B) 를 포함하므로, 해당 텍스트 입력란 (168B) 이 활성화될 수 있다.
활성화된 텍스트 입력란 내에는 삽입바 (insertion bar) 가 위치하게 된다.
해당 텍스트 입력란이 활성화되면, 컨트롤 객체 선택장치는 음성인식 기능을 이용하여 사용자의 음성으로부터 사용자 입력 텍스트 (user input text) 를 획득한다 (S270).
즉, 텍스트 입력란이 활성화된 이후에 수신되는 사용자의 음성신호는, 더 이상 식별정보와 매칭되기 위한 입력정보로 인식되지 않고, 사용자 입력 텍스트로 변환되어 해당 텍스트 입력란에 입력될 수 있다.
사용자 입력 텍스트가 획득되면, 컨트롤 객체 선택장치는 획득된 사용자 입력 텍스트를 컨트롤 객체에 포함된 텍스트 입력란에 입력한다 (S280).
사용자 입력 텍스트가 텍스트 입력란에 입력되면, 해당 텍스트 입력란이 비활성화되어, 컨트롤 객체 선택장치가 음성인식을 통해 다시 컨트롤 객체를 선택할 수 있도록 구현될 수 있다.
또는, 사용자 입력 텍스트의 입력의 종료를 가리키는 특정 입력정보, 예컨대 ‘종료’, ‘확인’, ‘다음’ 등과 같은 입력정보가 획득되면, 해당 텍스트 입력란이 비활성화되어, 컨트롤 객체 선택장치가 음성인식을 통해 다시 컨트롤 객체를 선택할 수 있도록 구현될 수도 있다.
한편, 본 발명의 일 실시예에 따르면, 입력정보는 사용자의 음성으로부터 획득된 음성패턴 정보가 언어 모델 DB와 비교되는 과정을 추가적으로 거쳐 인식된 텍스트 그 자체일 수도 있다.
입력정보가 음성인식을 통해 사용자의 음성으로부터 인식된 텍스트인 경우에는, 입력정보와 식별정보의 매칭은 인식된 텍스트와 식별정보 그 자체가 비교됨으로써 수행된다.
만약 입력정보와 매칭되는 매칭 식별정보가 없다고 판단된 경우, 즉, 입력정보와 일정 정도 이상 매칭되는 식별정보가 없는 경우에는, 컨트롤 객체 선택장치는 다시 입력정보를 획득하기 전까지 대기하거나, 사용자가 음성을 다시 발성하게 요구하도록 구현될 수 있다. 또는, 사용자 지정 식별정보가 일 컨트롤 객체에 대응하도록 구현될 수 있다.
예컨대, 도 3을 참조하면, ‘이전’, ‘재생’, 및 ‘다음’ 식별정보가 존재하는 경우, “거꾸로”란 사용자의 음성으로부터 입력정보가 획득된 경우, 획득된 입력정보와 매칭되는 매칭 식별정보가 존재하지 않을 수도 있다. 이때, 컨트롤 객체 선택장치가 식별정보와 매칭되는 입력정보를 획득하기 위해, 다시 사용자의 음성을 입력받는 것은 매우 비효율적일 수 있다.
따라서, 입력정보와 매칭되는 매칭 식별정보가 없다고 판단된 경우에는, 컨트롤 객체 선택장치는 사용자 지정 식별정보를 일 컨트롤 객체에 대응시키도록 구현되어, 이후에는 해당 사용자 지정 식별정보가 일 컨트롤 객체에 대한 식별정보로 기능하도록 할 수 있다.
여기서 사용자 지정 식별정보란, 컨트롤 객체에 대한 식별정보로 기능하도록 사용자에 의해 지정된 식별정보로서, 텍스트 또는 음성패턴으로 구성될 수 있고, 이때 텍스트는, 사용자의 음성으로부터 획득된 음성패턴 정보가 언어 모델 DB와 비교되는 과정을 추가적으로 거쳐 인식된 텍스트 그 자체일 수 있다.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
본 명세서에서, 각 블록은 특정된 논리적 기능 (들) 을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
본 명세서에 개시된 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계는 프로세서에 의해 실행되는 하드웨어, 소프트웨어 모듈 또는 그 2 개의 결합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링 되며, 그 프로세서는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 주문형 집적회로 (ASIC) 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트로서 상주할 수도 있다.
이상으로 실시예를 들어 본 발명을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것은 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형 실시될 수 있다. 따라서 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 컨트롤 객체 선택장치
110: 인터페이스
120: 프로세서
122: 메모리 컨트롤러
124: 메모리
130: 디스플레이부
140: 마이크로폰
142: 스피커
150, 160: 어플리케이션
152, 154, 156, 171, 172, 173, 174, 175, 176, 177, 178, 179: 컨트롤 객체
200: 컨트롤 객체에 대한 정보
252, 252A, 252B, 254, 254A, 254B, 256, 256A, 256B: 컨트롤 객체에 대한 디스플레이 정보
300, 352, 354, 356, 358, 368: 심볼
400, 452, 454, 456, 458, 468: 식별정보
110: 인터페이스
120: 프로세서
122: 메모리 컨트롤러
124: 메모리
130: 디스플레이부
140: 마이크로폰
142: 스피커
150, 160: 어플리케이션
152, 154, 156, 171, 172, 173, 174, 175, 176, 177, 178, 179: 컨트롤 객체
200: 컨트롤 객체에 대한 정보
252, 252A, 252B, 254, 254A, 254B, 256, 256A, 256B: 컨트롤 객체에 대한 디스플레이 정보
300, 352, 354, 356, 358, 368: 심볼
400, 452, 454, 456, 458, 468: 식별정보
Claims (16)
- 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치로서,
하나 이상의 처리 디바이스를 포함하고,
상기 하나 이상의 처리 디바이스는,
사용자의 음성에 기초하여 입력정보를 획득하고,
컨트롤 객체에 기초하여 이미지 패턴 매칭 (image pattern matching) 또는 광학문자인식 (optical character recognition) 을 통해 심볼 (symbol) 을 획득하고,
상기 심볼에 대응하는 적어도 하나의 식별정보와 상기 입력정보를 매칭하고,
상기 식별정보 중에서 상기 입력정보와 매칭되는 매칭 식별정보를 획득하고,
상기 매칭 식별정보에 대응하는 컨트롤 객체를 선택하도록 구성된 것을 특징으로 하는, 컨트롤 객체 선택장치. - 제 1 항에 있어서,
상기 심볼은 상기 컨트롤 객체에 대한 디스플레이 정보에 기초하여 획득되는 것을 특징으로 하는, 컨트롤 객체 선택장치. - 제 2 항에 있어서,
상기 심볼은 어플리케이션 화면 정보에 기초하여 획득되는 것을 특징으로 하는, 컨트롤 객체 선택장치. - 삭제
- 삭제
- 제 1 항에 있어서,
상기 심볼은 상기 장치상에서 실행된 어플리케이션에 따라 상이한 식별정보에 대응하는 것을 특징으로 하는, 컨트롤 객체 선택장치. - 제 1 항에 있어서,
상기 입력정보는 상기 사용자의 음성의 특징이 분석되어 획득된 음성패턴 정보를 포함하고,
상기 식별정보와 상기 입력정보의 매칭은 상기 식별정보와 상기 음성패턴 정보의 매칭을 포함하는 것을 특징으로 하는, 컨트롤 객체 선택장치. - 제 1 항에 있어서,
상기 입력정보는 음성인식을 통해 상기 사용자의 음성으로부터 인식된 텍스트 정보를 포함하고,
상기 식별정보와 상기 입력정보의 매칭은 상기 식별정보와 상기 텍스트 정보의 매칭을 포함하는 것을 특징으로 하는, 컨트롤 객체 선택장치. - 제 1 항에 있어서,
상기 하나 이상의 처리 디바이스는,
상기 입력정보와 매칭되는 매칭 식별정보가 존재하지 않는 경우, 사용자 지정 식별정보가 일 컨트롤 객체에 대응하도록 설정하는 것을 특징으로 하는, 컨트롤 객체 선택장치. - 컴퓨팅 장치에서 음성인식을 통해 컨트롤 객체를 선택하기 위한 방법으로서,
사용자의 음성에 기초하여 입력정보를 획득하는 단계;
컨트롤 객체에 기초하여 이미지 패턴 매칭 또는 광학문자인식을 통해 심볼 (symbol) 을 획득하는 단계;
상기 심볼에 대응하는 적어도 하나의 식별정보와 상기 입력정보를 매칭하는 단계;
상기 식별정보 중에서 상기 입력정보와 매칭되는 매칭 식별정보를 획득하는 단계; 및
상기 매칭 식별정보에 대응하는 컨트롤 객체를 선택하는 단계를 포함하는 것을 특징으로 하는, 컨트롤 객체 선택방법. - 제 10 항에 있어서,
상기 심볼은 상기 컨트롤 객체에 대한 디스플레이 정보에 기초하여 획득되는 것을 특징으로 하는, 컨트롤 객체 선택방법. - 제 11 항에 있어서,
상기 심볼은 어플리케이션 화면 정보에 기초하여 획득되는 것을 특징으로 하는, 컨트롤 객체 선택방법. - 삭제
- 삭제
- 제 10 항에 있어서,
상기 심볼은 상기 장치상에서 실행된 어플리케이션에 따라 상이한 식별정보에 대응하는 것을 특징으로 하는, 컨트롤 객체 선택방법. - 명령어 세트들을 저장하는 컴퓨터 판독가능매체로서,
상기 명령어 세트들은, 컴퓨팅 장치에 의해 실행되는 경우에 상기 컴퓨팅 장치로 하여금,
사용자의 음성에 기초하여 입력정보를 획득하고,
컨트롤 객체에 기초하여 이미지 패턴 매칭 또는 광학문자인식을 통해 심볼 (symbol) 을 획득하고,
상기 심볼에 대응하는 적어도 하나의 식별정보와 상기 입력정보를 매칭하고,
상기 식별정보 중에서 상기 입력정보와 매칭되는 매칭 식별정보를 획득하고,
상기 매칭 식별정보에 대응하는 컨트롤 객체를 선택하게 하는 것을 특징으로 하는, 컴퓨터 판독가능매체.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130095044A KR101447879B1 (ko) | 2013-08-09 | 2013-08-09 | 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법 |
CN201410103092.6A CN104347070A (zh) | 2013-08-09 | 2014-03-19 | 以语音识别来选择控制客体的装置及方法 |
EP14160935.4A EP2835734A1 (en) | 2013-08-09 | 2014-03-20 | Apparatus and method for selecting a control object by voice recognition |
TW103110849A TW201506685A (zh) | 2013-08-09 | 2014-03-24 | 以語音辨識來選擇控制客體的裝置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130095044A KR101447879B1 (ko) | 2013-08-09 | 2013-08-09 | 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101447879B1 true KR101447879B1 (ko) | 2014-10-08 |
Family
ID=50342219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130095044A KR101447879B1 (ko) | 2013-08-09 | 2013-08-09 | 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP2835734A1 (ko) |
KR (1) | KR101447879B1 (ko) |
CN (1) | CN104347070A (ko) |
TW (1) | TW201506685A (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180061691A (ko) * | 2016-11-30 | 2018-06-08 | 주식회사 넥슨코리아 | 음성 기반 제어 장치 및 방법 |
WO2018194267A1 (ko) * | 2017-04-17 | 2018-10-25 | 삼성전자 주식회사 | 음성 데이터 처리 방법 및 이를 지원하는 전자 장치 |
WO2019124631A1 (ko) * | 2017-12-22 | 2019-06-27 | 삼성전자 주식회사 | 어플리케이션 실행 방법 및 이를 위한 장치 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI795173B (zh) * | 2022-01-17 | 2023-03-01 | 中華電信股份有限公司 | 多語言語音辨識系統、方法及電腦可讀媒介 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010015934A (ko) * | 2000-03-11 | 2001-03-05 | 김하철 | 음성인식을 이용한 응용프로그램의 메뉴 실행방법 |
KR20120135855A (ko) * | 2011-06-07 | 2012-12-17 | 삼성전자주식회사 | 디스플레이 장치 및 이의 하이퍼링크 실행 방법 및 음성 인식 방법 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7246063B2 (en) * | 2002-02-15 | 2007-07-17 | Sap Aktiengesellschaft | Adapting a user interface for voice control |
US20080195958A1 (en) * | 2007-02-09 | 2008-08-14 | Detiege Patrick J | Visual recognition of user interface objects on computer |
KR102022318B1 (ko) * | 2012-01-11 | 2019-09-18 | 삼성전자 주식회사 | 음성 인식을 사용하여 사용자 기능을 수행하는 방법 및 장치 |
-
2013
- 2013-08-09 KR KR1020130095044A patent/KR101447879B1/ko active IP Right Grant
-
2014
- 2014-03-19 CN CN201410103092.6A patent/CN104347070A/zh active Pending
- 2014-03-20 EP EP14160935.4A patent/EP2835734A1/en not_active Withdrawn
- 2014-03-24 TW TW103110849A patent/TW201506685A/zh unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010015934A (ko) * | 2000-03-11 | 2001-03-05 | 김하철 | 음성인식을 이용한 응용프로그램의 메뉴 실행방법 |
KR20120135855A (ko) * | 2011-06-07 | 2012-12-17 | 삼성전자주식회사 | 디스플레이 장치 및 이의 하이퍼링크 실행 방법 및 음성 인식 방법 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180061691A (ko) * | 2016-11-30 | 2018-06-08 | 주식회사 넥슨코리아 | 음성 기반 제어 장치 및 방법 |
KR102664318B1 (ko) | 2016-11-30 | 2024-05-09 | 주식회사 넥슨코리아 | 음성 기반 제어 장치 및 방법 |
WO2018194267A1 (ko) * | 2017-04-17 | 2018-10-25 | 삼성전자 주식회사 | 음성 데이터 처리 방법 및 이를 지원하는 전자 장치 |
WO2019124631A1 (ko) * | 2017-12-22 | 2019-06-27 | 삼성전자 주식회사 | 어플리케이션 실행 방법 및 이를 위한 장치 |
US12112095B2 (en) | 2017-12-22 | 2024-10-08 | Samsung Electronics Co., Ltd. | Method for executing application and apparatus therefor |
Also Published As
Publication number | Publication date |
---|---|
EP2835734A1 (en) | 2015-02-11 |
CN104347070A (zh) | 2015-02-11 |
TW201506685A (zh) | 2015-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101474854B1 (ko) | 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법 | |
CN111462740B (zh) | 非语音字母语言的话音辅助应用原型测试的话音命令匹配 | |
JP5421239B2 (ja) | 複数モードの入力メソッドエディタ | |
EP2987055B1 (en) | Text suggestion output using past interaction data | |
US20150039318A1 (en) | Apparatus and method for selecting control object through voice recognition | |
US8701050B1 (en) | Gesture completion path display for gesture-based keyboards | |
US10964322B2 (en) | Voice interaction tool for voice-assisted application prototypes | |
GB2511431A (en) | Character string replacement | |
KR101447879B1 (ko) | 음성인식을 통해 컨트롤 객체를 선택하기 위한 장치 및 방법 | |
TW201512968A (zh) | 以語音辨識來發生事件裝置及方法 | |
US20160092104A1 (en) | Methods, systems and devices for interacting with a computing device | |
KR20170009486A (ko) | 청크 기반 언어 학습용 데이터베이스 구축 방법 및 이를 수행하는 전자 기기 | |
US20140180698A1 (en) | Information processing apparatus, information processing method and storage medium | |
WO2018053695A1 (zh) | 基于压力来选择附加符号 | |
JP2019101739A (ja) | 情報処理装置、情報処理システムおよびプログラム | |
KR20160016935A (ko) | 텍스트 셀렉션 단락 스냅핑 | |
JP5468640B2 (ja) | 電子機器、電子機器の制御方法、電子機器の制御プログラム | |
US10678404B2 (en) | Operation of a data processing system during graphical user interface transitions | |
GB2580755A (en) | Voice command matching during testing of voice-assisted application prototypes for languages with non-phonetic alphabets | |
JP5744252B2 (ja) | 電子機器、電子機器の制御方法、電子機器の制御プログラム | |
KR101923319B1 (ko) | 휴대 단말기 및 그 휴대 단말기에서 문자입력 방법 | |
WO2014103355A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
EP2806364A2 (en) | Method and apparatus for managing audio data in electronic device | |
JP2012014517A (ja) | 手書き文字認識方法およびシステム | |
KR20200050609A (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: 20170907 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180904 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190905 Year of fee payment: 6 |