KR20040002031A - Method of Sharing Speech Engine with a Plurality of Applications - Google Patents

Method of Sharing Speech Engine with a Plurality of Applications Download PDF

Info

Publication number
KR20040002031A
KR20040002031A KR1020020037376A KR20020037376A KR20040002031A KR 20040002031 A KR20040002031 A KR 20040002031A KR 1020020037376 A KR1020020037376 A KR 1020020037376A KR 20020037376 A KR20020037376 A KR 20020037376A KR 20040002031 A KR20040002031 A KR 20040002031A
Authority
KR
South Korea
Prior art keywords
voice recognition
speech recognition
recognition engine
application
engine
Prior art date
Application number
KR1020020037376A
Other languages
Korean (ko)
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 KR1020020037376A priority Critical patent/KR20040002031A/en
Publication of KR20040002031A publication Critical patent/KR20040002031A/en

Links

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
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search

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)
  • Machine Translation (AREA)

Abstract

PURPOSE: A method for holding a speech recognition engine in common between a plurality of application programs is provided to efficiently use computer resources in a small-scale system. CONSTITUTION: A speech recognition engine(101) is set up in an independent process form in one computer system. Data related to speech recognition are stored in an extra file in a memory storage device(102) connected with the speech recognition engine by application programs. The speech recognition process receives speech recognition related data related to the corresponding application program for dynamically loading the corresponding recognition related data to a memory when the speech recognition engine communicates with each application program for executing speech recognition. If the speech recognition in the corresponding application program is terminated, the speech recognition related data loaded in the memory is removed.

Description

다수의 응용프로그램들간의 음성인식엔진 공유 방법{Method of Sharing Speech Engine with a Plurality of Applications}Method of Sharing Speech Engine with a Plurality of Applications}

본 발명은 다수의 응용프로그램들간의 음성인식엔진 공유 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다. 이하의 일예에서는 은닉마르코프모델(NMM : Hidden Markov Model)을 일예로 들어 설명하기로 한다.The present invention relates to a voice recognition engine sharing method among a plurality of application programs and a computer readable recording medium storing a program for realizing the method. In the following example, the Hidden Markov Model (NMM) will be described as an example.

음성인식 기술은, 키보드나 마우스를 대신하여 컴퓨터 응용프로그램의 실행 및 동작을 음성으로 제어할 수 있도록 하기 위한 기술로까지 확대되어 현재 사용되고 있다.Voice recognition technology is being extended to technology for enabling voice control of execution and operation of computer applications instead of a keyboard or mouse.

그러나, 종래의 컴퓨터 시스템에서의 음성인식기술은 하나의 시스템에 하나의 응용프로그램만을 위한 하나의 음성인식엔진을 구현하는 방식을 취하고 있어, 선택된 응용프로그램 외의 다른 응용프로그램은 음성인식엔진을 사용하지 못하거나, 혹은 사용한다 하더라도 또다른 음성인식엔진을 구비하고 응용프로그램에 연관 시키는 방식이 사용되어왔다.However, the speech recognition technology of the conventional computer system adopts a method of implementing one speech recognition engine for only one application program on one system, so that other applications except the selected application program cannot use the speech recognition engine. In other words, other speech recognition engines have been used and associated with applications.

따라서, 하나의 컴퓨터 시스템에 같은 장비(음성인식엔진)를 중복 투자해야 하므로, 결과적으로 자원(Resource)을 효율적으로 이용하지 못하는 문제점이 있었다.Therefore, since the same equipment (voice recognition engine) must be invested in one computer system, there is a problem in that resources cannot be used efficiently.

본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, 하나의 컴퓨터 시스템 내에서 여러 응용프로그램들이 하나의 음성인식엔진을 공유하면서 음성인식기능을 이용할 수 있도록 한 다수의 응용프로그램들간의 음성인식엔진 공유 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수있는 기록매체를 제공하는데 그 목적이 있다.The present invention has been proposed to solve the above-mentioned problems, and it is possible to use a voice recognition function while allowing multiple applications to share a single voice recognition engine in a computer system. It is an object of the present invention to provide a method of sharing a recognition engine and a computer-readable recording medium recording a program for realizing the method.

도 1 은 본 발명에 따른 다수의 응용 프로그램이 은닉마르코프모델(HMM) 음성인식엔진을 공유하는 컴퓨터 시스템의 일실시예 구성도.1 is a diagram illustrating an embodiment of a computer system in which a plurality of applications share a hidden Markov Model (HMM) speech recognition engine in accordance with the present invention.

도 2 는 본 발명에 따른 음성인식 방법에 대한 일실시예 흐름도.2 is a flowchart illustrating one embodiment of a voice recognition method according to the present invention;

도 3 은 본 발명에 따른 응용 프로세스내 음성인식 객체의 구성을 나타낸 일실시예 설명도.3 is a diagram illustrating an embodiment of a speech recognition object in an application process according to the present invention;

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

101 : 음성인식엔진 프로세스 102 : 보조기억장치101: speech recognition engine process 102: auxiliary memory device

103 : 응용프로그램 A 프로세스 104 : 응용프로그램 B 프로세스103: Application A process 104: Application B process

상기 목적을 달성하기 위한 본 발명은, 다수의 응용프로그램들간의 음성인식엔진 공유 방법에 있어서, 하나의 컴퓨터 시스템 내에 음성인식엔진을 독립된 프로세스 형태로 설정하는 제 1 단계; 음성인식과 관련된 데이터를 상기 음성인식엔진과 연결된 기억장치에 각 응용프로그램별로 별도의 파일로 저장하고 있는 제 2 단계; 상기 음성인식엔진이 각 응용프로그램과 통신하여 음성인식을 수행할 때 해당 응용프로그램과 관련된 음성인식 관련 데이터를 통보받아 상기 별도의 파일로 저장되어 있는 해당 음성인식 관련 데이터를 메모리로 동적으로 로드시키는 제 3 단계; 및 해당 응용프로그램에서의 음성인식이 종료되면 상기 메모리에 로드된 음성인식 관련 데이터를 삭제하는 제 4 단계를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a voice recognition engine sharing method among a plurality of application programs, comprising: a first step of setting a voice recognition engine in an independent process form in a computer system; A second step of storing data related to voice recognition as a separate file for each application program in a memory device connected to the voice recognition engine; When the voice recognition engine communicates with each application to perform voice recognition, a voice recognition data related to the application is notified and dynamically loads the voice recognition related data stored in the separate file into a memory. Three steps; And a fourth step of deleting the voice recognition related data loaded in the memory when the voice recognition in the corresponding application is terminated.

한편, 본 발명은, 프로세서를 구비한 음성인식 시스템에, 음성인식엔진을 독립된 프로세스 형태로 설정하는 제 1 기능; 음성인식과 관련된 데이터를 상기 음성인식엔진과 연결된 기억장치에 각 응용프로그램별로 별도의 파일로 저장하고 있는 제 2 기능; 상기 음성인식엔진이 각 응용프로그램과 통신하여 음성인식을 수행할 때 해당 응용프로그램과 관련된 음성인식 관련 데이터를 통보받아 상기 별도의 파일로 저장되어 있는 해당 음성인식 관련 데이터를 메모리로 동적으로 로드시키는 제 3 기능; 및 해당 응용프로그램에서의 음성인식이 종료되면 상기 메모리에 로드된 음성인식 관련 데이터를 삭제하는 제 4 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.On the other hand, the present invention, the voice recognition system having a processor, the first function for setting the voice recognition engine in the form of an independent process; A second function of storing data related to voice recognition as a separate file for each application program in a memory device connected to the voice recognition engine; When the voice recognition engine communicates with each application to perform voice recognition, a voice recognition data related to the application is notified and dynamically loads the voice recognition related data stored in the separate file into a memory. 3 functions; And a computer readable recording medium having recorded thereon a program for realizing a fourth function of deleting the voice recognition related data loaded in the memory when the voice recognition in the corresponding application program is terminated.

일반적으로 컴퓨터 시스템의 응용프로그램이 음성인식 기능을 사용하기 위해서는 음성인식엔진이 있어야 하는데, HMM(Hidden Markov Model) 음성인식엔진의 경우는 음성인식 기능을 수행하기 위해 다음과 같이 네 종류의 데이터들이 필요하다.In general, a computer system application needs a voice recognition engine in order to use the voice recognition function. In the case of the HMM (Hidden Markov Model) voice recognition engine, four types of data are required to perform the voice recognition function. Do.

첫째, HMM 파라미터로서, 음성인식엔진에서 사용하는 기본 인식 단위들에 대한 정보를 포함하고 있다.First, as an HMM parameter, it includes information about basic recognition units used in a speech recognition engine.

둘째, 단어 사전으로서, 인식 대상이 되는 단어들이 어떤 단위들로 이루어져 있는지를 나타낸다.Second, as a word dictionary, it indicates what units the words to be recognized are composed of.

셋째, 문법 정보로서, 단어들간의 관계나 또는 단어들을 여러 클래스로 나누었을 때 클래스간의 관계를 나타낸다. 여기서, 관계라는 것은 일종의 순서를 의미하는데, 예를 들어 문장을 인식할 경우에 특정 단어 다음에 어떤 단어가 나올 수 있는지에 대한 정보를 뜻한다.Third, as grammar information, it shows the relationship between words or the relationship between classes when words are divided into several classes. Here, a relationship means a kind of order, for example, information on which word may appear after a certain word when a sentence is recognized.

넷째, 단어 리스트로서, 인식 대상 단어들을 모아 놓은 것이다.Fourth, as a word list, the words to be recognized are collected.

본 발명은 하나의 컴퓨터 시스템 내에서 하나의 응용프로그램을 위한 음성인식기능에 대한 방법이 아닌, 다수의 응용프로그램이 하나의 음성인식엔진을 이용하여 음성인식기능을 사용하기 위해 해당 데이터를 어떻게 구성할 지에 대한 방법을 제시한 것이다.The present invention is not a method for speech recognition function for one application program in one computer system, but how a plurality of applications program the data to use the speech recognition function using one speech recognition engine. It is presented how to.

그러나, 음성인식엔진이 사용하는 데이터 중에는 응용프로그램들이 공유할 수 있는 것이 있고, 그렇지 않은 것도 있다. 즉, 음성의 시작점, 끝점 추출이나 비터비(viterbi) 검색 등은 응용프로그램들이 음성인식엔진을 공유하면서 같이 사용할 수 있으나, 응용프로그램에 한정적인 데이터는 공유할 수 없다. 예를 들어, '마이크로 소프트사'의 워드(word) 응용프로그램의 경우를 살펴 보면, 사용자가 이용하는 음성인식 대상은 이 프로그램내에 한정적이므로, HMM 파라미터는 하나로서 고정시킬 필요가 있다.However, some of the data used by voice recognition engines may be shared by applications, and some may not. That is, the starting point, end point extraction, or Viterbi search of the voice can be used together while the applications share the voice recognition engine, but the data specific to the application cannot be shared. For example, in the case of a word application program of Microsoft Corporation, the speech recognition object used by the user is limited in this program, and therefore, the HMM parameters need to be fixed as one.

그리고, 사용자의 사용 흐름에 따라 인식 대상 단어군을 바꿀 필요가 있으며, 이것은 단어 사전, 문법 정보, 단어 리스트를 변경함으로써 이루어진다.Then, it is necessary to change the recognition target word group according to the flow of use of the user, and this is done by changing the word dictionary, grammar information, and word list.

반면에, 다른 응용프로그램에서는 별개의 HMM 파라미터들이 사용되어야 하는데, 그 이유는 일단 사용되는 단어(인식대상)들의 특성이 다를 가능성이 크며, 높은 인식률을 얻기 위해서는 해당되는 단어에 맞는 HMM 파라미터가 적용되어야 하기 때문이다.On the other hand, separate HMM parameters should be used in other applications because the characteristics of the words (recognition targets) that are used are likely to be different, and in order to obtain a high recognition rate, the HMM parameters corresponding to the corresponding words should be applied. Because.

따라서, 본 발명에서는 이상과 같은 상황에서 한 시스템 내에서 다수의 응용프로그램이 하나의 음성인식엔진을 공유하도록 한다.Therefore, in the present invention, a plurality of application programs in one system share one voice recognition engine in the above situation.

이를 위하여, 본 발명은 하나의 컴퓨터 시스템 내에 음성인식엔진을 독립된 프로세스 서버 형태로 두고, 응용프로그램에 관련된 HMM(Hidden Marcov Model) 파라미터, 문법정보, 단어사전 및 단어리스트를 음성인식엔진 프로그램내에 별도의 파일로 포함하며, 음성인식엔진이 여러 응용프로그램과 통신하여 음성인식을 수행할 때 각 응용프로그램으로부터 그 자신과 관련된 HMM 파라미터, 문법정보, 단어사전 및 단어리스트를 통보받아 상기 별도의 파일에 저장되어 있는 데이터를 메모리로 동적으로 로드시키고, 해당 응용프로그램 종료시에는 상기 로드된 데이터를 메모리에서 삭제하여, 다음 응용프로그램의 실행시 음성인식엔진을 다시 사용할 수있도록 함으로써, 하나의 음성인식엔진으로도 다수의 응용그로그램을 실행시킬 수 있도록 한다.To this end, the present invention puts the speech recognition engine in the form of an independent process server in one computer system, and separates the HMM (Hidden Marcov Model) parameters, grammar information, word dictionary and word list related to the application program into the speech recognition engine program. When the voice recognition engine performs voice recognition by communicating with various application programs, it receives the HMM parameter, grammar information, word dictionary, and word list related to itself from each application program and is stored in the separate file. Dynamic data is loaded into the memory, and when the application is terminated, the loaded data is deleted from the memory so that the voice recognition engine can be used again when the next application is executed. Allows the application to run.

상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1 은 본 발명에 따른 다수의 응용 프로그램이 하나의 은닉마르코브모델(HMM) 음성인식엔진을 공유하는 컴퓨터 시스템의 일실시예 구성도이다.1 is a diagram illustrating an embodiment of a computer system in which a plurality of applications share one hidden Markov Model (HMM) speech recognition engine according to the present invention.

도 1에 도시된 바와 같이, 본 발명에 따른 다수의 응용프로그램이 HMM 음성인식엔진을 공유하는 컴퓨터 시스템은, 음성인식을 위한 음성인식엔진 프로세스(101)와, 음성인식엔진 프로세스(101)와 연결되어 음성인식으로 제어될 수 있는 다수의 응용프로그램 프로세스들(103, 104), 및 각각의 응용프로그램들을 음성인식 기술을 이용하여 처리하기 위해 필요한 데이터들을 저장하기 위한 보조기억장치(102)를 포함하여 이루어진다.As shown in FIG. 1, a computer system in which a plurality of applications share an HMM voice recognition engine according to the present invention is connected to a voice recognition engine process 101 for voice recognition and a voice recognition engine process 101. A plurality of application processes 103 and 104 that can be controlled by voice recognition, and an auxiliary memory 102 for storing data necessary for processing each application using voice recognition technology. Is done.

여기서, 음성인식엔진 프로세스(101)는 하나의 서버 형태, 즉 독립된 프로세스로 존재한다.Here, the voice recognition engine process 101 exists in one server form, that is, as an independent process.

그리고, 각 응용프로그램 프로세스들(103, 104)은 이 음성인식 엔진프로세스(101)와 IPC(Inter Process Communication) 혹은 전송제어프로트콜/인터넷프로토콜(TCP/IP)을 통한 통신을 수행하면서 인식대상과 인식결과를 주고 받아 음성인식으로 프로그램 명령어를 처리한다. 이때, 각 응용프로그램프로세스들(103, 104)과 관련된 HMM 파라미터, 문법정보, 단어사전, 단어리스트 데이터를 음성인식엔진 프로세스(101)가 보조기억장치(102)로부터 메모리로 실시간에 동적으로 로드한다.Each of the application program processes 103 and 104 performs communication with the voice recognition engine process 101 through IPC (Inter Process Communication) or transmission control protocol / Internet protocol (TCP / IP). Program command is processed by voice recognition. At this time, the speech recognition engine process 101 dynamically loads the HMM parameter, grammar information, word dictionary, and word list data associated with each of the application program processes 103 and 104 into the memory from the auxiliary memory 102. .

도 2 는 본 발명에 따른 음성인식 방법에 대한 일실시예 흐름도로서, 일예로 마이크로소프트사의 응용프로그램인 워드(Word) 프로그램에서 워드, 그림, 종료의 순으로 음성인식 기능을 수행하기 위한 시나리오 절차를 나타낸 것이다.FIG. 2 is a flowchart illustrating an example of a speech recognition method according to the present invention. As an example, a scenario procedure for performing a speech recognition function in the order of words, pictures, and terminations in a Word program, which is an application program of Microsoft Corporation, is illustrated. It is shown.

먼저, 음성인식엔진 프로세스를 생성하고(201), 사용자의 음성이 입력되기를 대기하다가(203) 사용자의 "워드" 음성이 입력되면(205), "워드" 프로그램 프로세스에 따라 "워드" 프로그램을 실행하고(207), "워드" 프로세스의 식별자 및 음성인식관련 단어리스트 및 도메인 식별자를 "워드" 프로세스로부터 전달받는다(209).First, a voice recognition engine process is generated (201), waiting for the user's voice to be input (203), when the user's "word" voice is input (205), the "word" program is executed according to the "word" program process. In step 207, an identifier of the "word" process and a speech recognition related word list and a domain identifier are received from the "word" process (209).

음성인식엔진 프로세스는, 전달받은 "워드" 프로세스의 식별자와 단어리스트와 도메인 식별자를 기준으로 주메뉴의 HMM 파일, 문법, 단어사전, 단어리스트를 자신의 보조기억장치로부터 음성인식 프로세스의 메모리에 동적으로 로드한다(211). 이는 주메뉴와 관련된 명령을 실행하기 위함이다.The voice recognition engine process dynamically converts the main menu's HMM file, grammar, word dictionary, and word list from its auxiliary memory to the memory of the voice recognition process based on the received word word process and the word list and domain identifier. (211). This is to execute commands related to the main menu.

그리고 나서, 다시 사용자 음성을 대기하다가(213), 사용자의 "그림" 음성이 입력되면(215), 워드 프로그램 프로세스에서 사용자의 "그림" 음성에 따른 "그림도구 상자"를 생성하여 팝업하고(217), "그림도구 상자" 프로세스의 식별자 및 음성인식 단어리스트를 음성인식 프로세스에 전달한다(219).Then, waiting for the user's voice again (213), when the user's "picture" voice is input (215), the word program process generates and pops up a "picture toolbox" according to the user's "picture" voice (217) In step 219, the identifier of the " painting tool box " process and the speech recognition word list are transmitted to the speech recognition process.

그러면, 음성인식 프로세스는 "그림도구상자" 프로세스의 식별자와 단어리스트를 기준으로 하부 메뉴의 HMM 파일, 문법, 단어사전, 및 단어리스트를 자신의 보조기억장치로부터 음성인식 프로세스의 메모리로 동적으로 로드한다(221). 이는 현재 운용중인 "그림도구상자"와 관련된 하부 메뉴와 관련된 명령을 실행하기 위함이다.The speech recognition process then dynamically loads HMM files, grammars, word dictionaries, and word lists from the submenus into the memory of the speech recognition process, based on the identifier and word list of the "picture toolbox" process. (221). This is to execute commands related to the submenu related to the "Picture Toolbox" currently in operation.

그리고 나서, 다시 사용자 음성을 대기하다가(223), 사용자의 "종료" 음성이 입력되면(225), "워드" 프로그램 프로세스는 "종료" 음성에 따라 "그림도구 상자"를 종료하고, 음성인식 프로세스 메모리의 내용을 주메뉴의 HMM 파일, 문법, 단어사전, 및 단어리스트로 교환한다(227). 이는 다시 주메뉴와 관련된 명령을 실행하기 위함이다.Then, waiting for the user's voice again (223), when the user's "end" voice is input (225), the "word" program process terminates the "picture tool box" according to the "end" voice, the voice recognition process The contents of the memory are exchanged with the HMM file, grammar, word dictionary, and word list of the main menu (227). This is to execute the command related to the main menu again.

그리고 나서, 사용자 음성을 대기하다가(229), 사용자의 "종료" 음성이 입력되면(231), "종료" 음성에 따른 "워드" 프로그램 종료 및 "워드"의 주메뉴 및 하부 메뉴(그림도구상자) 관련 HMM 파일, 문법, 단어사전, 및 단어리스트를 음성인식엔지 프로세스의 메모리에서 삭제한다(233).Then, while waiting for the user's voice (229), when the user's "end" voice is input (231), the "Word" program termination and "Word" main menu and submenu of the "end" voice (picture toolbox) The related HMM file, grammar, word dictionary, and word list are deleted from the memory of the voice recognition engine process (233).

이후, 기타 음성인식관련 프로세스가 존재하는지 여부를 판단하여(235), 존재하면 해당 응용프로그램을 실행하기 위해 음성인식 프로세스가 음성인식을 대기하는 과정(203)으로 돌아가서 음성인식을 위한 처리과정(205 ~ 233)을 재실행하고, 존재하지 않으면 음성인식 프로세스를 종료한다.Thereafter, it is determined whether or not other voice recognition related processes exist (235), and if present, the process returns to step 203 where the voice recognition process waits for voice recognition in order to execute the corresponding application (205). 233) again, and if not present, the voice recognition process ends.

즉, 음성인식 프로그램이 실행되면, 첫번 째 음성 입력은 해당 응용프로그램 이름을 발성하여 해당 프로그램을 구동(Invoke)시키고, 두번 째 입력되는 음성은 '파일', '편집', '보기', '삽입', '서식', '도구', '표', '창', '도움말' 등의 아홉 개 단어 및 그 하부 메뉴에 대한 음성이고, 세번 째 입력되는 음성은 그 하부 메뉴가 실행되었을 때 실행된 그 도메인내 실행 명령 단어가 된다.That is, when the voice recognition program is executed, the first voice input will invoke the corresponding application name to invoke the program, and the second voice input will be 'file', 'edit', 'view', 'insert'. Voice for nine words and its submenus, such as ',' 'Format', 'Tools', 'Table', 'Window', 'Help', etc., and the third voice input is executed when the submenu is executed. This is the execution command word in that domain.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.As described above, the method of the present invention may be implemented as a program and stored in a recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.) in a computer-readable form.

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.

상기한 바와 같은 본 발명은, 하나의 컴퓨터시스템 내에서 다수의 응용프로그램이 하나의 음성인식엔진을 공유하면서 음성인식기능을 수행함으로써, 소규모 시스템내에서 컴퓨터 자원(Resource)을 효율적으로 이용할 수 있는 효과가 있다.As described above, the present invention enables the efficient use of computer resources in a small system by performing a voice recognition function while a plurality of application programs share one voice recognition engine in one computer system. There is.

Claims (3)

다수의 응용프로그램들간의 음성인식엔진 공유 방법에 있어서,In a voice recognition engine sharing method among a plurality of applications, 하나의 컴퓨터 시스템 내에 음성인식엔진을 독립된 프로세스 형태로 설정하는 제 1 단계;A first step of setting a speech recognition engine in a form of an independent process in one computer system; 음성인식과 관련된 데이터를 상기 음성인식엔진과 연결된 기억장치에 각 응용프로그램별로 별도의 파일로 저장하고 있는 제 2 단계;A second step of storing data related to voice recognition as a separate file for each application program in a memory device connected to the voice recognition engine; 상기 음성인식엔진이 각 응용프로그램과 통신하여 음성인식을 수행할 때 해당 응용프로그램과 관련된 음성인식 관련 데이터를 통보받아 상기 별도의 파일로 저장되어 있는 해당 음성인식 관련 데이터를 메모리로 동적으로 로드시키는 제 3 단계; 및When the voice recognition engine communicates with each application to perform voice recognition, a voice recognition data related to the application is notified and dynamically loads the voice recognition related data stored in the separate file into a memory. Three steps; And 해당 응용프로그램에서의 음성인식이 종료되면 상기 메모리에 로드된 음성인식 관련 데이터를 삭제하는 제 4 단계A fourth step of deleting voice recognition related data loaded in the memory when voice recognition in the corresponding application is terminated 를 포함하는 다수의 응용프로그램들간의 음성인식엔진 공유 방법.Voice recognition engine sharing method between a plurality of applications including a. 제 1 항에 있어서,The method of claim 1, 상기 음성인식 관련 데이터는,The voice recognition related data, 각 응용프로그램과 관련된 음성인식엔진모델 파라미터, 문법정보, 단어사전 및 단어리스트를 포함하는 것을 특징으로 하는 다수의 응용프로그램들간의 음성인식엔진 공유 방법.A method of sharing a voice recognition engine among a plurality of applications, comprising a voice recognition engine model parameter, grammar information, a word dictionary, and a word list associated with each application. 프로세서를 구비한 음성인식 시스템에,In a speech recognition system having a processor, 음성인식엔진을 독립된 프로세스 형태로 설정하는 제 1 기능;A first function of setting the voice recognition engine in the form of an independent process; 음성인식과 관련된 데이터를 상기 음성인식엔진과 연결된 기억장치에 각 응용프로그램별로 별도의 파일로 저장하고 있는 제 2 기능;A second function of storing data related to voice recognition as a separate file for each application program in a memory device connected to the voice recognition engine; 상기 음성인식엔진이 각 응용프로그램과 통신하여 음성인식을 수행할 때 해당 응용프로그램과 관련된 음성인식 관련 데이터를 통보받아 상기 별도의 파일로 저장되어 있는 해당 음성인식 관련 데이터를 메모리로 동적으로 로드시키는 제 3 기능; 및When the voice recognition engine communicates with each application to perform voice recognition, a voice recognition data related to the application is notified and dynamically loads the voice recognition related data stored in the separate file into a memory. 3 functions; And 해당 응용프로그램에서의 음성인식이 종료되면 상기 메모리에 로드된 음성인식 관련 데이터를 삭제하는 제 4 기능A fourth function of deleting voice recognition related data loaded in the memory when voice recognition in the corresponding application is terminated 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this.
KR1020020037376A 2002-06-29 2002-06-29 Method of Sharing Speech Engine with a Plurality of Applications KR20040002031A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020037376A KR20040002031A (en) 2002-06-29 2002-06-29 Method of Sharing Speech Engine with a Plurality of Applications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020037376A KR20040002031A (en) 2002-06-29 2002-06-29 Method of Sharing Speech Engine with a Plurality of Applications

Publications (1)

Publication Number Publication Date
KR20040002031A true KR20040002031A (en) 2004-01-07

Family

ID=37313761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020037376A KR20040002031A (en) 2002-06-29 2002-06-29 Method of Sharing Speech Engine with a Plurality of Applications

Country Status (1)

Country Link
KR (1) KR20040002031A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110853643A (en) * 2019-11-18 2020-02-28 北京小米移动软件有限公司 Method, device, equipment and storage medium for voice recognition in fast application

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002041277A (en) * 2000-07-28 2002-02-08 Sharp Corp Information processing unit and recording medium in which web browser controlling program is recorded
KR100430953B1 (en) * 1998-10-02 2004-05-12 인터내셔널 비지네스 머신즈 코포레이션 System and method for providing network coordinated conversational services

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100430953B1 (en) * 1998-10-02 2004-05-12 인터내셔널 비지네스 머신즈 코포레이션 System and method for providing network coordinated conversational services
KR100620826B1 (en) * 1998-10-02 2006-09-13 인터내셔널 비지네스 머신즈 코포레이션 Conversational computing via conversational virtual machine
JP2002041277A (en) * 2000-07-28 2002-02-08 Sharp Corp Information processing unit and recording medium in which web browser controlling program is recorded

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110853643A (en) * 2019-11-18 2020-02-28 北京小米移动软件有限公司 Method, device, equipment and storage medium for voice recognition in fast application

Similar Documents

Publication Publication Date Title
US10789426B2 (en) Processing natural language text with context-specific linguistic model
US11461377B2 (en) Generating three-dimensional scenes from natural language requests
US6985852B2 (en) Method and apparatus for dynamic grammars and focused semantic parsing
US8024194B2 (en) Dynamic switching between local and remote speech rendering
JP6939384B2 (en) Data processing equipment, methods and programs
EP1650744A1 (en) Invalid command detection in speech recognition
EP1686496A2 (en) Systems and methods for providing a user interface with an automatic search menu
MX2007014899A (en) Back-off mechanism for search.
JP2019207648A (en) Interactive business assistance system
EP2531999A1 (en) Language context sensitive command system and method
US7584169B2 (en) Method and apparatus for identifying programming object attributes
US9053450B2 (en) Automated business process modeling
US20220223146A1 (en) Conversational system for recognizing, understanding, and acting on multiple intents and hypotheses
CN111722893A (en) Method and device for interaction of graphical user interface of electronic equipment and terminal equipment
CN104239371B (en) A kind of command information processing method and processing device
US6922735B2 (en) Management of co-processor information by integrating non-program information with program information
CN103918027A (en) Efficient incremental modification of optimized finite-state transducers (FSTs) for use in speech applications
KR20040002031A (en) Method of Sharing Speech Engine with a Plurality of Applications
CN109241164A (en) A kind of data processing method, device, server and storage medium
CN108446144A (en) A kind of application program launching method, device, terminal and storage medium
US7814092B2 (en) Distributed named entity recognition architecture
US20040199376A1 (en) Method and apparatus for compiling two-level morphology rules
JP5696280B1 (en) Term unification system, term unification program, and term unification method
US10606939B2 (en) Applying matching data transformation information based on a user's editing of data within a document
US10474750B1 (en) Multiple information classes parsing and execution

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application