KR20030011459A - 분산형 멀티모달 시스템 - Google Patents

분산형 멀티모달 시스템 Download PDF

Info

Publication number
KR20030011459A
KR20030011459A KR1020010046919A KR20010046919A KR20030011459A KR 20030011459 A KR20030011459 A KR 20030011459A KR 1020010046919 A KR1020010046919 A KR 1020010046919A KR 20010046919 A KR20010046919 A KR 20010046919A KR 20030011459 A KR20030011459 A KR 20030011459A
Authority
KR
South Korea
Prior art keywords
voice
server
client
script
text
Prior art date
Application number
KR1020010046919A
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 KR1020010046919A priority Critical patent/KR20030011459A/ko
Publication of KR20030011459A publication Critical patent/KR20030011459A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 멀티모달 입출력을 지원하는 클라이언트-서버 장치에 관한 것으로서, 상기 클라이언트는: 음성입력을 수신하여 이를 서버측에 송신하기 위한 수단과; 서버로부터 음성 콘텐츠를 전송받아 이를 사용자에게 출력하기 위한 수단과; 비음성 입력을 수신하여 이를 서버측에 송신하고, 서버측으로부터 텍스트 및 그래픽 기반 콘텐츠 데이터를 전송받아서 디스플레이하기 위한 수단을 포함하고, 상기 서버는: 상기 음성 및 비음성 입력에 응답하여 음성 콘텐츠 및 비음성 콘텐츠를 포함하는 콘텐츠를 제공하기 위한 수단을 포함한다.

Description

분산형 멀티모달 시스템{DISTRIBUTED MULTIMODAL SYSTEM}
본 발명은 클라이언트-서버 시스템에 관한 것으로서, 클라이언트 측의 사용자가 음성과 화면을 동시에 사용자 인터페이스로 이용할 수 있는 분산형 멀티 모달 시스템에 관한 것이다. 특히, 분산형 멀티 모달 시스템을 기존의 브라우징 소프트웨어와 컨텐츠 및 인터페이스 규격을 변경하지 않고 구성하기 위한 것이다.
화면상의 정보를 표현하는 표준적인 언어인 HTML과 그 정보를 전달하는 표준 프로토콜인 HTTP를 기반으로 하는 WWW (World Wide Web)이 급속도로 보급되면서 웹 브라우저만 있으면 인터넷 상의 방대한 양의 정보에 손쉽게 접근할 수 있게 되었다. 하지만 웹 브라우저는 PC와 같이 비교적 큰 화면과 키보드, 마우스를 가진 시스템을 가정하므로 휴대폰이나 PDA(Personal Digital Assistance) 등 작은 화면에 제한된 키보드만 가지고 있는 단말 장치에서 인터넷 상의 정보에 접근하는 것이 쉽지 않았다. 이러한 문제를 해결하기 위하여 휴대 단말 장치의 특성을 고려하여 WAP(Wireless Application Protocol) 또는 WML(Wireless Markup Language)과 같은 새로운 표준이 제안되었다. 하지만 WML을 사용하더라도 휴대 장치의 작은 화면에 한꺼번에 많은 정보를 보여줄 수 없고 또 운전 중과 같이 손을 다른 용도에 사용하고 있을 때에는 버튼 입력이 어렵다는 문제가 있다.
화면이나 키보드, 마우스등과 같이 화면 기반의 사용자 인터페이스를 배제하고 음성만으로 인터넷 상의 컨텐츠를 사용할 수 있도록 VoiceXML 표준[http://www.voicexml.org]이 제안되었다. VoiceXML은 음성 입출력 형식을 표준화하고 이를 인터넷과 같은 분산 환경에서 손쉽게 이용할 수 있도록 하기 위한 것으로서 음성 인식 기술을 활용하여 한번에 많은 단어 중 하나를 인식함으로써, 예를 들어 이름을 말하는 것 만으로 개인 전화 번호부에서 이름을 선택하거나 증권 서비스에서 회사 이름을 선택하도록 하는 것이 가능하다. 그러나, 음성 인터페이스를 사용하는 경우, 사용자가 말할 수 있는 단어의 목록을 미리 알고 있는 경우에는 음성만으로 정보에 접근하는 것이 편리하지만 그렇지 않은 경우에는 어떤 메뉴가 사용 가능한지 설명을 끝까지 들어야만 선택이 가능하기 때문에 사용자의 편리성 및 효율이 떨어지게 된다. 본 명세서에서 클라이언트 또는 클라이언트 장치라 함은 대표적으로 PDA, 휴대전화, 웹패드 등의 휴대용 단말장치를 포함하나 이에 한정되지는 않고 클라이언트와 서버로 구성되는 분산형 시스템의 클라이언트는 모두 포함하는 것으로 한다.
클라이언트-서버 시스템의 클라이언트 측에서 음성만의 또는 시각만의 인터페이스의 단점을 보완하기 위해 멀티모달(multimodal) 인터페이스, 즉 하나 이상의 인터페이스 방법을 동시에 이용하는 인터페이스에 대한 연구가 이루어지고 있다. 예를 들어 WML과 VoiceXML을 통합하는 새로운 스크립트 규격에 대한 연구가 이루어지고 있다. 하지만 새로운 스크립트를 사용하기 위해서는 브라우저, 저작 툴 등 제반 소프트웨어가 새로 작성되어야 하고 기존의 스트립트 규격 하에서 작성된 컨텐츠는 새로운 규격하에서는 이용하기 어렵다는 단점이 있다.
따라서, 본 발명의 목적은 클라이언트-서버 시스템에서 음성, 텍스트 및 그래픽 등을 포함하는 멀티모달 인터페이스를 동시에 사용하는 방법을 제공하기 위한 것이다.
본 발명의 다른 목적은 기존의 스크립트 규격 하에서 동작하는 멀티모달 시스템을 제공하는 것이다.
도 1은 본 발명에 따른 분산형 멀티모달 시스템이 사용되는 환경의 일례를 도시한 도면.
도 2는 본 발명에 따른 분산형 멀티모달 시스템의 일실시예.
< 도면의 주요 부분에 대한 부호의 설명 >
10, 20, 30: 클라이언트
160: SR 전반부
170: 브라우저
240: SR 후반부
250: VoiceXML 인터프리터
상기 목적을 달성하기 위하여, 본 발명의 일면에 따르면, 멀티모달 입출력을지원하는 클라이언트-서버 장치에 있어서:
상기 클라이언트는:
음성입력을 수신하여 이를 서버측에 송신하기 위한 수단과;
서버로부터 음성 콘텐츠를 전송받아 이를 사용자에게 출력하기 위한 수단과;
비음성 입력을 수신하여 이를 서버측에 송신하고, 서버측으로부터 텍스트 및 그래픽 기반 콘텐츠 데이터를 전송받아서 디스플레이하기 위한 수단
을 포함하고,
상기 서버는:
상기 음성 및 비음성 입력에 응답하여 음성 콘텐츠 및 비음성 콘텐츠를 포함하는 콘텐츠를 제공하기 위한 수단
을 포함하는 클라이언트-서버 장치가 제공된다.
상기 송신 및 디스플레이 수단은 텍스트 및 그래픽을 기반으로 하는 콘텐츠 데이터를 디스플레이하기 위한 브라우저를 포함할 수 있다.
상기 서버는:
텍스트 및 그래픽 기반 스크립트가 임베드된, 확장된 VoiceXML 스크립트를 제공하기 위한 수단;
상기 확장된 VoiceXML 스크립트를 해석하여 음성 출력을 제공하는 VoiceXML 인터프리터; 및
VoiceXML 인터프리터와 접속하여 상기 임베드된 텍스트 및 그래픽 기반 스크립트를 처리하여 상기 텍스트 및 그래픽 기반 콘텐츠 데이터를 클라이언트로 전송하기 위한 디스팻쳐 인터페이스
를 포함할 수 있다.
또한, 상기 서버는 내부에서 텍스트 및 그래픽 기반 스크립트를 참조하는 확장된 VoiceXML 스크립트와, 상기 참조된 텍스트 및 그래픽 기반 스크립트를 제공하기 위한 수단;
상기 확장된 VoiceXML 스크립트를 해석하여 음성 출력을 제공하는 VoiceXML 인터프리터; 및
VoiceXML 인터프리터와 접속하여 상기 참조된 텍스트 및 그래픽 기반 스크립트를 처리하여 상기 텍스트 및 그래픽 기반 콘텐츠 데이터를 클라이언트로 전송하기 위한 디스팻쳐 인터페이스
를 포함할 수 있다.
상기 클라이언트는 입력된 음성을 서버에 송신하기에 앞서서 전처리하는 수단을 더 포함하고, 상기 서버는 상기 전처리된 음성을 인식하기 위한 수단을 더 포함할 수 있다.
상기 클라이언트는 입력된 음성을 서버에 송신하기에 앞서서 전처리하는 수단을 더 포함하고, 상기 서버는 상기 전처리된 음성을 인식하기 위한 수단을 더 포함하고,
상기 VoiceXML 인터프리터는 상기 인식된 음성에 응답하여 상기 확장된 VoiceXML 스크립트를 해석한다.
이하에서는 첨부된 도면을 참조하여 본발명의 일실시예를 상세히 설명한다.
도 1은 본 발명에 따른 분산형 멀티 모달 시스템이 사용되는 환경의 일례를 도시한 도면이다. 도 1에 도시된 바와 같이, 본 발명에 따른 분산형 멀티 모달 시스템의 구성 요소는 크게 클라이언트(10, 20, 30)와 서버(50)로 나뉜다. 클라이언트는 예를 들어 기존의 PC(10)에서 동작하는 소프트웨어, PDA(20)용 소프트웨어, 휴대폰(30) 등에 내장된 소프트웨어 혹은 전용 단말 장치 등의 형태를 가질 수 있다. 서버(50)는 예를 들어 일반적인 웹서버용 컴퓨터로서, VoiceXML 게이트웨이를 포함한다. 클라이언트와 서버는 TCP/IP 등 1:1 통신이 가능한 임의의 네트워크(40, 예를 들어 인터넷)에 의해 연결된다.
도 2는 본 발명에 따른 분산형 멀티 모달 시스템의 일실시예를 도시한다. 도 2에 클라이언트 측(100)에 도시된 블록 이외에도 클라이언트 장치는 전형적인 구성요소인 스크린, 키보드, 포인팅 장치 등을 포함한다. 클라이언트(100)는 휴대폰이나 PDA(Personal Digital Assistant)등과 같은 장치로서 마이크(150)와 스피커(185)가 있어 음성의 입출력이 가능하고 HTML(Hypertext Markup Language) 혹은 WML과 같은 형태의 시각적 정보를 보여줄 수 있는 브라우저(170)를 가지고 있다. 또 클라이언트 장치는 무선 혹은 유선에 의해 서버(200)와 통신을 할 수 있다. 도 2에 도시된 실시예는 클라이언트로 PDA, 브라우저는 HTML 브라우저, 통신은 무선 TCP/IP를 가정하여 본 명세서에서 설명하지만 이에 한정되는 것은 아니며 동등한 기능의 다른 장치나 프로토콜 혹은 규격도 사용 가능하다.
본 발명에서는 분산형 멀티 모달 시스템의 일부로서 분산형 음성 인식을 이용한다. 즉, 음성 인식 장치를 전반부와 후반부로 나누어 구성하여 각각 클라이언트(100)와 서버측(200)에 분산한다. 전반부에서는 음성의 녹음, 사용자 음성 명령의 시작과 끝 검출, 특징의 추출 및 압축 등이 이루어지나, 이에 한정되는 것은 아니다. 전반부에서 추출된 데이터가 후반부로 통신망을 통해 전달된다. 후반부에서는 이 음성 데이터를 인식하고 그 인식된 결과에 따라 VoiceXML 스크립트에서 정의된 작업들이 수행된다.
이러한 분산형 음성 인식(DSR: Distributed Speech Recognition)은 많은 장점을 가지고 있다. 첫째, 프로세싱 파워와 메모리 용량이 많이 필요한 부분을 서버측에서 수행함으로써 단말기의 경량화가 가능하고, 한편 서버측에서는 고성능의 인식 알고리즘을 사용할 수 있다. 또한, 소용량의 압축된 음성 특징 데이터만이 통신망을 통해 전달되므로 모든 음성이 전달되는 경우와 비교하여 데이터 전송량을 줄일 수 있다. 셋째, TCP 등의 신뢰성 있는 프로토콜에 의해 씬 클라이언트와 서버간 전송이 일어나므로 실시간(raw) 음성을 전달할 때처럼 패킷 손실에 의해 인식률이 저하되는 것을 막을 수 있다. 또한, 예를 들의 전화망의 8bit 8kHz 샘플링 등의 제약에 구애되지 않고 보다 높은 샘플링 레이트 및 고분해능(resolution)을 사용할 수 있어 음성 인식률을 향상시킬 수 있다.
음성인식 (Speech Recognition : SR) 전반부(160)는 마이크로부터 입력되는 음성 신호를 디지타이즈하고 음성 명령의 시작과 끝을 검출하며 음성 특징(feature)을 추출한다. 시작과 끝의 검출은 음성 파형에 의해 자동적으로 이루어질 수도 있고 버튼 등에 의해 사용자가 시작과 끝나는 시점을 지정할 수도 있다. 추출된 특징은 필요에 따라서 서버측으로 전송하기 전에 압축을 할 수도 있다.특징 추출 방법으로는 음성 인식 분야에 알려져 있는 다양한 방법이 사용될 수 있고, 예를 들어 LPC(linear predictive coding) 파라미터를 특징으로 추출할 수 있다. 음성 인식 전반부(160)에서 사용할 특징 추출 방법을 결정하는 데에 있어서 고려할 점은, 클라이언트(100)에서 수행할 수 있을 정도로 연산량이 크지 않을 것, 추출된 특징을 효율적으로 네트워크로 전송하는 것이 가능할 것, 서버측에서는 추출된 특징을 이용하여 고성능의 음성 인식이 가능할 것 등이다.
클라이언트(100)의 디스패쳐(180)는 서버측의 VoiceXML 인터프리터(250)부터 이벤트를 받아 브라우저(170)를 제어하는 역할을 하며 부가적으로 브라우저(170)에게 HTML/WML 컨텐츠를 전달하는 역할을 할 수도 있다. 브라우저(170)는 일반적인 HTML/WML 브라우저이다. 디코더(190)는 서버(200)에서 인코딩한 음성 데이터를 디코딩하여 스피커(185)에 전달하는 역할을 한다.
서버측(200)은 SR전반부에서 전처리된 음성 데이터를 인식하기 위한 SR 후반부(240)와 함께, 웹서버(260), VoiceXML 인터프리터(250) 및 음성 인코더(270) 등을 포함한다. 웹서버(260)는 일반적인 웹서버의 기능을 수행하며, 본 발명의 시스템에서 실행되는 VoiceXML 및 HTML/WML 스크립트를 저장한다. VoiceXML 인터프리터(250)는 기존의 VoiceXML 게이트웨이에 일구성요소로 포함되는 부분으로서, 클라이언트단의 사용자의 입력에 따라, 웹서버(260)에 저장된 VoiceXML 스크립트를 (L2 경로를 통해) 가져와서 해석 및 실행한다. VXML 인터프리터(250)에는 SR 후반부에서 인식된 음성 명령이 입력된다. VXML 스크립트의 해석 결과 음성을 클라이언트측에서 사용자에게 들려주어야 하는 경우, VXML 스크립트 내에 출력 음성이텍스트 형태로 들어 있어서 TTS(text-to-speech, 280) 블록에서 음성으로 변환하는 경우도 있고, 또는 VXML 스크립트 내에서 음성 파일을 참조하고 있어서 이 음성 파일을 직접 클라이언트측으로 보내는 경우도 있다. 일반적으로 이 음성 파일은 실제로는 웹서버(160) 내에 저장되어 있고, 이 저장된 파일이 TTS를 거치지 않고 인코더(270)를 거쳐 클라이언트측의 디코더(190)로 전달된다. 디스팻쳐 인터페이스(255)는 VXML 해석 결과 브라우저를 갱신하여야 하는 경우 그 데이터를 디스팻쳐(180)로 전달하는 역할과, 단말기측의 브라우저에서 링크를 클릭하는 경우, 음성 입력이 SR 후반부(240)를 통해 VoiceXML 인터프리터(250)에 전송되는 것과 마찬가지로 인터프리터(250) 측에 입력으로 전달하는 역할 등을 수행한다.
HTML/WML 스크립트 등이 서버측으로부터 클라이언트 측으로 전달될 때에도 디스팻쳐 인터페이스(255)를 거쳐서 (L1경로를 통하여) 이루어진다. 도 2에서 SR 전반부(160)와 SR 후반부(240)와의 연결 및 디스팻쳐(180)와 디스팻쳐 인터페이스(250)와의 연결은 편의상 별도의 연결선으로 도시되었으나 실제로는 같은 TCP 소켓을 사용하는 것이 바람직하다.
도 2에 도시된 본 발명의 분산형 멀티 모달 시스템에서 일어나는 동작 단계의 일례를 이하에서 보다 자세히 설명한다.
단계 1: 사용자가 클라이어트 측에서 마이크(150)를 통해 음성으로 명령을 내린다.
단계 2: 클라이언트 측의 SR 전반부(160)에서 시작점과 끝점을 검출하고, 특징을 추출하고 압축한 후 TCP 소켓(socket)에 의해 서버의 SR 후반부(240)로 데이터를 전송한다.
단계 3: SR 후반부(240)에서는 VoiceXML 인터프리터(250)로부터 받은 인식 도메인과 클라이언트로부터 받은 음성 데이터를 이용하여 음성 인식을 수행하고 결과를 VoiceXML 인터프리터(250)로 전달한다.
단계 4: VoiceXML 인터프리터(250)에서는 인식 결과에 따라 VoiceXML 스크립트를 실행하고 음성 출력과 동시에 VoiceXML 스크립트에 포함된 HTML 스크립트[임베드 스크립트 (embedded script)] 혹은 VoiceXML 스크립트에서 URL로 지정된 HTML 스크립트[참조 스크립트(referenced script)]를 클라이언트의 브라우저(170)에 출력한다. 브라우저(170)로 HTML 스크립트를 가져오기 위한 방법은 후술하기로 한다.
단계 5: 한편 음성 출력은 압축되어 클라이언트로 전달되고 디코더를 거쳐 스피커로 출력된다. 압축된 음성 패킷은 디스팻쳐(180)를 통해 전달될 수도 있고 실시간 스트리밍에 보다 적합한 UDP/RTP과 같은 별도의 연결 방법을 통해 전달될 수도 있다.
단계 6: 사용자가 다시 음성 명령을 내리는 경우 위의 과정을 반복한다.
사용자가 음성 명령을 내리는 대신 HTML 브라우저(170)에서 링크를 클릭하는 경우는 다음의 단계들이 실행된다.
단계 A: 이 링크는 직접 혹은 디스패쳐(180)를 통해 간접적으로 웹 서버의 CGI(Common Gateway Interface)를 호출한다. 이를 위하여 클릭된 링크에 해당하는 동등한 음성 명령을 URL내에 포함하도록 미리 HTML 스크립트를 제작한다. 예를 들어 <a href="http://.....cgi?voice=주식">주식</a> 과 같다. 이와 같은 방식으로 브라우저에서 디스플레이될 HTML 스크립트를 제작함에 따라, 브라우저에서 링크를 클릭하는 경우도 음성 명령이 내려진 것과 같은 방식으로 시스템이 동작한다.
단계 B: 웹 서버 내의 CGI는 VoiceXML 인터프리터(250)에 음성 명령을 전달한다. 단계 4에 대한 설명에서 후술하는 바와 같이 디스팻쳐(180)가 프록시(proxy)로 동작하는 경우에는, HTML 브라우저(170)는 일단 디스팻쳐(180)를 액세스하고 디스팻쳐(180)가 다시 VoiceXML 인터프리터(250)로 이 명령을 전달한다.
단계 C: VoiceXML 인터프리터(250)는 SR 후반부(240)로부터 음성 인식 결과를 입력을 받은 것과 동일하게 전달받은 명령을 처리하고 위의 단계 1 내지 단계 6 또는 단계 A 내지 C의 과정을 반복한다.
위와 같은 단계들을 거쳐 음성 이외의 형태의 입출력도 음성 입력과 마찬가지로 VoiceXML 규격 하에서 처리되어 사용자가 다양한 입출력을 이용할 수 있도록 한다.
상기 단계들에 대한 설명에서 임베드 스크립트라 함은 VoiceXML 스크립트의 일부로서 HTML스크립트를 포함하는 경우로서 본 명세서의 후반에 도시된 VXML 스크립트에서 "embedded HTML script"로 표시된 부분이 그 일례이다. 또한 참조 스크립트라 함은 VXML 스크립트 중에 HTML 스크립트로의 링크가 있는 경우로서 본 명세서의 후반에 도시된 VXML 스크립트에서 "referenced HTML script"로 표시된 부분이 그 일례이다.
이하에서는 상기 단계 4에서 브라우저(170)로 HTML 스크립트를 가져오기 위한 방법의 몇가지 예를 설명한다.
제1 방식 : 서버측의 웹서버(260)에 저장되어 있는 HTML 스크립트의 URL을, 디스팻쳐(180)를 통해 클라이언트의 브라우저(170)에 전달하여 브라우저측에서 이를 로드(load)하도록 한다. 참조 스크립트의 경우는 링크대상인 해당 URL을 직접 디스팻쳐(180)를 통해 클라이언트의 브라우저(170)로 전달하면 되지만, 임베드 스크립트의 경우에는 VXML 스크립트에 임베드된 HTML 스크립트를 먼저 서버의 임시 파일로 먼저 저장한 후 이 파일을 액세스할 수 있는 URL을 브라우저로 전송한다. 제1방법을 사용하기 위해서는, 클라이언트가 직접 서버에 저장된 HTML을 로드할 수 있도록 HTML 브라우저(170)가 서버측(200)과 별도의 TCP 연결을 가지고 있어야 한다(도시되지 않음). 또한, HTTP 1.1을 지원하지 않는 브라우저나 서버의 경우 매번 새로운 TCP 연결을 만들어야 하므로 응답속도가 느려지게 된다는 단점이 있다. 하지만 HTML 스크립트가 반복 사용되는 그림 (GIF 혹은 JPEG등)을 포함하는 경우 브라우저(170)의 캐싱기능에 의해 데이터 전송량을 줄일 수 있다.
제2 방식 : VoiceXML 인터프리터(250)가 HTML 스크립트를 읽어 디스팻쳐(180)로 전송한다. 디스팻쳐(180)는 수신한 HTML 스크립트를 클라이언트(100)의 파일 시스템에 임시 파일로 저장한 후 이 파일을 나타내는 URL을 (file://... 형식 구문을 사용) 브라우저(170)에 지정함으로써 HTML 스크립트를 열도록 한다.
제3 방식 : 제2 방식의 경우와 같이 디스팻쳐(180)로 HTML 스크립트를 전달하되 디스팻쳐(180)가 HTML 브라우저(170)에 대하여 HTTP 서버의 역할을 한다. 즉, 클라이언트의 브라우저 상에서 사용자가 링크를 누르면 브라우저가 해당 리퀘스트를 디스팻쳐(180)로 전달한다. 이 때 전달된 HTML 스크립트는 디스팻쳐(180)가 직접 RAM에 저장하고 있을 수도 있고 클라이언트(100)의 파일 시스템을 이용할 수도 있다. 디스팻쳐(180)는 반복 사용되는 그림 파일등에 대하여 캐싱 기능을 가지고 있을 수도 있다.
제3 방식에서 디스팻쳐(180)가 캐시에 가지고 있는 파일은 서버에서 매번 새로 전송할 필요가 없는데 이를 위해 다음과 같은 방법을 사용할 수 있다. 즉, 디스팻쳐(180)가 서버(200)의 VoiceXML 인터프리터(250)의 디스팻쳐 인터페이스부(255)에 연결될 때 자신의 캐시 메모리 사이즈를 전달한다. 서버에서는 HTML 스크립트나 그림 파일을 디스팻쳐(180)에 전달할 때 이 파일을 캐싱할지 여부를 함께 전달한다. 또 서버는 필요할 경우 이전에 캐싱된 파일 중 일부를 디스팻쳐의 캐시에서 삭제하도록 디스팻쳐(180)에 명령할 수 있다. 서버(구체적으로는 디스팻쳐 인터페이스)가 디스팻쳐(180)의 캐시에 캐싱할 것과 삭제할 것을 결정하므로 서버는 디스팻쳐(180)의 캐시 메모리에 저장되어 있는 파일의 리스트를 알 수 있다. 따라서 새로운 HTML 스크립트를 클라이언트의 브라우저(170)에 전송하고자 할 때 이 HTML 스크립트에서 참조하는 그림 파일 중 새로 전송해야 하는 것과 캐시를 이용할 수 있는 것을 서버측에서 판단할 수 있다.
위에서 서버가 HTML 스크립트를 해석하는 방법이 클라이언트 브라우저(170)에서 해석하는 것과 동일하지 않아서 클라이언트의 브라우저(170)가 필요로 하는그림 파일을 정확히 예측하지 못하는 경우가 발생할 수도 있다. 이 경우 클라이언트측에 캐싱되었을 것으로 생각하고 서버측에서 화일을 보내지 않았으나 실제로는 해당화일이 클라이언트측에는 저장되어 있지 않는 상황이 발생할 수 있다. 이 경우에는 브라우저(170)가 해당 파일을 요청하는 리퀘스트를 내면, 디스팻쳐(180)가 HTTP 프록시 서버로 동작하여 브라우저로부터 받은 리퀘스트를 다시 서버측에 전달하고 그 응답 결과를 브라우저에 전해줄 수 있다.
이와 같은 동작이 이루어지기 위해서는 VoiceXML 스크립트의 문법을 확장하여 HTML 스크립트를 내장(embed)하거나 혹은 참조(reference)할 수 있어야 한다. 이렇게 확장하기 위한 방법으로서는, VoiceXML에 (1) 표준이 아닌 새로운 태그를 추가하거나, (2) 코멘트내에 특별한 키워드로 표시하여 내용을 추가하거나, (3) 혹은 VoiceXML에서 기능을 확장하기 위한 표준적 방법인 <object> 태그를 이용할 수 있다. 다음에서는 표준이 아닌 <display> 태그를 사용하여 HTML 스크립트를 내장하고 참조하는 예를 보여준다.
<?xml version="1.0"?>
<vxml version="1.0">
<form id="input_address">
<block>
주소를 입력해 주십시오
</block>
<field name="city">
<grammar src="http://...../city.gram" />
<prompt> 도시 이름을 말씀해 주세요 </prompt>
<if expr="telephone.display">
<display>
<!- embedded HTML script -->
<![CDATA[
<html>
<body>
<a href="http://..../gu_list.cgi?voice=서울" />서울</a>,
< a href="http://..../gu_list.cgi?voice=부산" />부산<a>,
....
</body>
</html>
]]>
</display>
<else/>
<prompt> 도시 이름을 말씀해 주세요.
입력 가능한 도시는 서울, 부산, 대구, ...., 입니다.
</prompt>
</if>
</prompt>
</field>
<field name="gu">
<grammar src="http://..../gu.gram" />
<prompt> 구 이름을 말씀해 주세요 </prompt>
<if expr="telephone.display">
<!- referenced HTML script -->
<display src="http://..../gu_list.cgi" namelist="city"/>
<else/>
입력 가능한 구 이름은 강남구, 서초구, ... 입니다.
</if>
</prompt>
</field>
</form>
</vxml>
첫째, 음성 입출력을 기본으로 하는 VoiceXML 컨텐츠에 화면 기반 입출력을보조로 하여 사용자가 효율적으로 정보를 이용할 수 있도록 한다. 종래의 표준(VXML, HTML, WML) 기반으로 만들어진 컨텐츠를 최소한의 변경 만으로 멀티모달 컨텐츠로 변환할 수 있다.
분산형 음성 인식 모델을 사용함으로써, 음성에서 특징만을 추출, (압축)하여 전송함으로써 음성을 계속 전송해야 하는 경우와 비교하여 전송량을 줄일 수 있고, 따라서 사용자의 통신요금을 줄일 수 있다. 음성 채널과 데이터 채널을 동시에 사용하지 못하는 현재의 무선 단말 장치에서도 음성과 화면을 동시에 이용할 수 있다.
서버와 하나의 TCP 연결만을 열고 이 연결을 계속 유지함으로써 무선 망에서의 통신 성능을 향상시킬 수 있다.
일반적인 단말장치에 포함되어 있는 표준 (HTML/WML) 브라우저를 최소의 수정만으로 사용 가능하다.

Claims (8)

  1. 멀티모달 입출력을 지원하는 클라이언트-서버 장치에 있어서:
    상기 클라이언트는:
    음성입력을 수신하여 이를 서버측에 송신하기 위한 수단;
    서버로부터 음성 콘텐츠를 전송받아 이를 사용자에게 출력하기 위한 수단; 및
    비음성 입력을 수신하여 이를 서버측에 송신하고, 서버측으로부터 텍스트 및 그래픽 기반 콘텐츠 데이터를 전송받아서 디스플레이하기 위한 수단
    을 포함하고,
    상기 서버는:
    상기 음성 및 비음성 입력에 응답하여 음성 콘텐츠 및 비음성 콘텐츠를 포함하는 콘텐츠를 제공하기 위한 수단
    을 포함하는 클라이언트-서버 장치.
  2. 제1항에 있어서, 상기 송신 및 디스플레이 수단은 텍스트 및 그래픽을 기반으로 하는 콘텐츠 데이터를 디스플레이하기 위한 브라우저를 포함하는 클라이언트-서버 장치.
  3. 제1항에 있어서, 상기 서버는:
    텍스트 및 그래픽 기반 스크립트가 임베드된, 확장된 VoiceXML 스크립트를 제공하기 위한 수단;
    상기 확장된 VoiceXML 스크립트를 해석하여 음성 출력을 제공하는 VoiceXML 인터프리터; 및
    VoiceXML 인터프리터와 접속하여 상기 임베드된 텍스트 및 그래픽 기반 스크립트를 처리하여 상기 텍스트 및 그래픽 기반 콘텐츠 데이터를 클라이언트로 전송하기 위한 디스팻쳐 인터페이스
    를 포함하는 클라이언트-서버 장치
  4. 제1항에 있어서, 상기 서버는:
    내부에서 텍스트 및 그래픽 기반 스크립트를 참조하는 확장된 VoiceXML 스크립트와, 상기 참조된 텍스트 및 그래픽 기반 스크립트를 제공하기 위한 수단;
    상기 확장된 VoiceXML 스크립트를 해석하여 음성 출력을 제공하는 VoiceXML 인터프리터; 및
    VoiceXML 인터프리터와 접속하여 상기 참조된 텍스트 및 그래픽 기반 스크립트를 처리하여 상기 텍스트 및 그래픽 기반 콘텐츠 데이터를 클라이언트로 전송하기 위한 디스팻쳐 인터페이스
    를 포함하는 클라이언트-서버 장치
  5. 제1항에 있어서,
    상기 클라이언트는 입력된 음성을 서버에 송신하기에 앞서서 전처리하는 수단을 더 포함하고,
    상기 서버는 상기 전처리된 음성을 인식하기 위한 수단을 더 포함하는 클라이언트-서버 장치.
  6. 제 3항 또는 제4항에 있어서,
    상기 클라이언트는 입력된 음성을 서버에 송신하기에 앞서서 전처리하는 수단을 더 포함하고,
    상기 서버는 상기 전처리된 음성을 인식하기 위한 수단을 더 포함하고,
    상기 VoiceXML 인터프리터는 상기 인식된 음성에 응답하여 상기 확장된 VoiceXML 스크립트를 해석하는 클라이언트-서버 장치.
  7. 제 3항 또는 제4항에 있어서,
    상기 디스팻쳐 인터페이스는 클라이언트로부터의 상기 비음성 입력을 처리하여 상기 VoiceXML 인터프리터에 전달하는 수단을 포함하고,
    상기 VoiceXML 인터프리터는 상기 음성 입력 및 비음성 입력에 응답하여 상기 확장된 VoiceXML 스크립트를 해석하는 클라이언트-서버
  8. 제7항에 있어서, 상기 송신 및 디스플레이 수단은:
    텍스트 및 그래픽을 기반으로 하는 콘텐츠 데이터를 디스플레이하기 위한 브라우저; 및
    서버측의 VoiceXML 인터프리터로부터의 해석 결과에 따라 상기 브라우저를 제어하는 디스팻쳐
    를 포함하는 클라이언트-서버 장치.
KR1020010046919A 2001-08-03 2001-08-03 분산형 멀티모달 시스템 KR20030011459A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010046919A KR20030011459A (ko) 2001-08-03 2001-08-03 분산형 멀티모달 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010046919A KR20030011459A (ko) 2001-08-03 2001-08-03 분산형 멀티모달 시스템

Publications (1)

Publication Number Publication Date
KR20030011459A true KR20030011459A (ko) 2003-02-11

Family

ID=27717875

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010046919A KR20030011459A (ko) 2001-08-03 2001-08-03 분산형 멀티모달 시스템

Country Status (1)

Country Link
KR (1) KR20030011459A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9258682B2 (en) 2006-06-23 2016-02-09 Casio Computer Co., Ltd. Server apparatus, server control program, and server client system
US10104230B2 (en) 2011-02-25 2018-10-16 International Business Machines Corporation Systems and methods for availing multiple input channels in a voice application

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08223309A (ja) * 1995-02-17 1996-08-30 Nec Corp 音声入力ネットワークサービスシステム
JPH10240493A (ja) * 1997-01-06 1998-09-11 Texas Instr Inc <Ti> Javaへ音声認識能力を加えるシステムと方法
KR20000049417A (ko) * 2000-02-29 2000-08-05 이만균 음성 인터넷 명령어 처리방법 및 시스템
KR20010015932A (ko) * 2000-02-24 2001-03-05 김하철 음성인식을 이용한 웹브라우저상의 링크 실행방법
JP2001195087A (ja) * 2000-01-06 2001-07-19 Mitsubishi Electric Corp 音声認識システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08223309A (ja) * 1995-02-17 1996-08-30 Nec Corp 音声入力ネットワークサービスシステム
JPH10240493A (ja) * 1997-01-06 1998-09-11 Texas Instr Inc <Ti> Javaへ音声認識能力を加えるシステムと方法
JP2001195087A (ja) * 2000-01-06 2001-07-19 Mitsubishi Electric Corp 音声認識システム
KR20010015932A (ko) * 2000-02-24 2001-03-05 김하철 음성인식을 이용한 웹브라우저상의 링크 실행방법
KR20000049417A (ko) * 2000-02-29 2000-08-05 이만균 음성 인터넷 명령어 처리방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9258682B2 (en) 2006-06-23 2016-02-09 Casio Computer Co., Ltd. Server apparatus, server control program, and server client system
US10104230B2 (en) 2011-02-25 2018-10-16 International Business Machines Corporation Systems and methods for availing multiple input channels in a voice application

Similar Documents

Publication Publication Date Title
US7382770B2 (en) Multi-modal content and automatic speech recognition in wireless telecommunication systems
US6185535B1 (en) Voice control of a user interface to service applications
US7272564B2 (en) Method and apparatus for multimodal communication with user control of delivery modality
KR101027548B1 (ko) 통신 시스템용 보이스 브라우저 다이얼로그 인에이블러
US8781840B2 (en) Retrieval and presentation of network service results for mobile device using a multimodal browser
US20020184197A1 (en) Information retrieval center
US8601096B2 (en) Method and system for multi-modal communication
US20060064499A1 (en) Information retrieval system including voice browser and data conversion server
US20030145062A1 (en) Data conversion server for voice browsing system
US20070027692A1 (en) Multi-modal information retrieval system
US20100135269A1 (en) Retrieving voice-based content in conjunction with wireless application protocol browsing
US20060168095A1 (en) Multi-modal information delivery system
JP2005149484A (ja) 逐次的なマルチモーダル入力
US20100094635A1 (en) System for Voice-Based Interaction on Web Pages
CN1627694A (zh) 与远程用户通信的方法和系统
EP1593050B1 (en) System and method for processing a message in a server of a computer network sent by a mobile computer device
KR100826778B1 (ko) 멀티모달을 위한 브라우저 기반의 무선 단말과, 무선단말을 위한 브라우저 기반의 멀티모달 서버 및 시스템과이의 운용 방법
KR20090069589A (ko) 모바일용 웹페이지 변환 시스템 및 방법
KR20030011459A (ko) 분산형 멀티모달 시스템
CN1489856B (zh) 具有交互式语音功能的通信系统用的通信装置和方法以及多媒体平台
US20040034528A1 (en) Server and receiving terminal
KR100519748B1 (ko) 연속어 음성 명령을 통한 인터넷 네비게이션 시스템 및 그방법
KR20010076789A (ko) 멀티모달 인터넷 인터페이스 장치 및 방법
KR20040032523A (ko) 음성인식을 이용한 이동통신 단말기의 인터넷 사이트접속장치 및 방법
JP2005513662A (ja) パケットオリエンテッドネットワークを介する音声を用いた情報の交換方法

Legal Events

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