CN104050966B - 终端设备的语音交互方法和使用该方法的终端设备 - Google Patents

终端设备的语音交互方法和使用该方法的终端设备 Download PDF

Info

Publication number
CN104050966B
CN104050966B CN201310078337.XA CN201310078337A CN104050966B CN 104050966 B CN104050966 B CN 104050966B CN 201310078337 A CN201310078337 A CN 201310078337A CN 104050966 B CN104050966 B CN 104050966B
Authority
CN
China
Prior art keywords
voice
terminal device
information
application program
middle layer
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201310078337.XA
Other languages
English (en)
Other versions
CN104050966A (zh
Inventor
张肖男
陈龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu International Technology Shenzhen Co Ltd
Original Assignee
Baidu International Technology Shenzhen Co Ltd
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 Baidu International Technology Shenzhen Co Ltd filed Critical Baidu International Technology Shenzhen Co Ltd
Priority to CN201310078337.XA priority Critical patent/CN104050966B/zh
Publication of CN104050966A publication Critical patent/CN104050966A/zh
Application granted granted Critical
Publication of CN104050966B publication Critical patent/CN104050966B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

提供了一种终端设备的语音交互方法和使用该方法的终端设备,所述终端设备包括位于操作系统和应用程序之间的中间层,所述语音交互方法包括:由中间层接收用户从语音输入设备输入的语音指令的语音信息,并将接收的语音信息转换为文本信息;对文本信息进行语义分析以提取出用户的语音指令中的操作信息和实体信息,并根据操作信息得到对终端设备的指令;根据对终端设备的指令调用终端设备的底层API,并将操作信息和实体信息提供给相应的应用程序以对应用程序执行相应的操作。

Description

终端设备的语音交互方法和使用该方法的终端设备
技术领域
本发明涉及语音识别控制技术,更具体地说,涉及一种利用位于终端设备的操作系统和应用程序之间的中间层来实现对于终端设备的语音交互的方法及其终端设备。
背景技术
在当前的终端设备中,语音识别已经成为了一种常用技术。传统的语音输入设备大多以接收被动的语音信号为主,通过其与移动设备的连接,使用者可以方便地接收到来自手机的来电信号并进行信号的传输。而随着现代技术的发展,人们的交流方式和行为越来越不集中于电话和短信。尤其是随着3G网络和智能手机的普及,使得人们的交流方式更加的多样化,而目前的语音输入设备(例如,带有话筒的耳机)在与诸如智能手机的终端设备的结合上,并没有很好的满足人们在移动过程中进行信息传递的需求。
另外,现有的基于语音识别来控制终端设备的技术通常需要专门为语音交互的应用程序开发与该语音交互应用程序与其它应用程序的接口,因此只能实现对固定的应用程序的调用和控制。这对终端设备的语音交互带来了很多的不方便。例如,苹果公司的iOS系统上的siri语音助手仅能实现对诸如短信息、邮件等固定的应用程序的调用,而无法实现与用户自行安装的应用程序的交互。
发明内容
本发明的目的在于,不需要针对终端设备的硬件以及终端设备上的应用程序做任何的修改,仅通过采用运行在终端设备的操作系统之上的中间层来完全屏蔽设备上的应用程序和语音输入设备之间的联系,从而能够直接通过语音来控制现有的终端设备(如手机、平板、车载GPS等)的各种功能或者与终端设备的所有可用应用程序进行交互。
根据本发明的一方面,提供了一种用于终端设备的语音交互方法,所述终端设备包括位于操作系统和应用程序之间的中间层,所述语音交互方法包括:(a)由中间层接收用户从语音输入设备输入的语音指令的语音信息,并将接收的语音信息转换为文本信息;(b)对文本信息进行语义分析以提取出用户的语音指令中的操作信息和实体信息,并根据操作信息得到对终端设备的指令;(c)根据对终端设备的指令调用终端设备的底层API,并将操作信息和实体信息提供给相应的应用程序以对应用程序执行相应的操作。
根据本发明的一方面,语音交互方法还包括:(d)如果应用程序在执行操作之后返回了文本信息,则将返回的文本信息转换为语音信息,并将语音信息提供给语音输出设备。
根据本发明的一方面,语音交互方法的步骤(c)还包括:将得到的操作信息和实体信息转换为用于模拟用户对终端设备的操作的指令。
根据本发明的一方面,语音输入设备和语音输出设备集成在与终端设备连接的蓝牙耳机中。
根据本发明的一方面,中间层屏蔽语音输入设备与应用程序之间的联系。
根据本发明的另一方面,还提供了一种用于语音交互的终端设备,所述终端设备包括位于操作系统和应用程序之间的中间层模块,所述中间层模块包括:语音识别模块,接收用户从语音输入设备输入的语音指令的语音信息,并将接收的语音信息转换为文本信息;语义分析模块,对文本信息进行语义分析以提取出用户的语音指令中的操作信息和实体信息,并根据操作信息得到对终端设备的指令;语音控制模块,根据对终端设备的指令调用终端设备的底层API,并将操作信息和实体信息提供给相应的应用程序以对应用程序执行相应的操作。
根据本发明的另一方面,所述中间层模块还包括:语音转换模块,如果应用程序在执行操作之后返回了文本信息,则将返回的文本信息转换为语音信息,并将语音信息提供给语音输出设备。
根据本发明的另一方面,语音控制模块还将得到的操作信息和实体信息转换为用于模拟用户对终端设备的操作的指令。
根据本发明的另一方面,语音输入设备和语音输出设备集成在与终端设备连接的蓝牙耳机中。
根据本发明的另一方面,所述中间层模块屏蔽语音输入设备与应用程序之间的联系。
附图说明
通过下面结合附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:
图1是示出根据本发明实施例的终端设备的系统架构示意图;
图2是示出根据本发明实施例的图1中的中间层模块的详细配置示意图;
图3是示出根据本发明实施例的语音交互方法的流程图。
具体实施方式
下面提供参照附图进行的描述以有助于全面理解如权利要求及其等同物所限定的本发明的示例性实施例。所述描述包括各种详细的细节以有助于理解,而这些描述将被认为仅为示例性的。因此,本领域的普通技术人员将意识到在不脱离本发明的范围和精神的情况下可做出在此描述的各种改变和变型。另外,为了清晰和简洁,可省略对公知功能和构造的描述。
图1是示出本发明实施例的终端设备的系统架构示意图。
如图1所示,根据本发明实施例的终端设备100的系统架构包括:操作系统110、中间层120和应用程序130。
终端设备100可通过诸如带有话筒的蓝牙耳机的语音输入设备来接收用户的语音信号。在接收到语音信号输入之后,终端设备100的操作系统110控制相应的模块将语音信号转换为在数字化的语音信息,并将语音信息提供给位于操作系统110和应用程序130之间的中间层120。中间层120集成在操作系统110的底层功能中,其可以完全屏蔽应用程序与语音输入设备之间的联系,并可以模拟用户的操作和应用交互。中间层120对接收到的语音信息进行语音识别,从而将接收到的语音信息转换为文本信息。接下来,中间层120对文本信息进行自然语言处理和语义理解,从文本信息中得到用户用语音表达的操作信息和实体信息。例如,如果从用户接收到的语音信息中识别出用户发出了语音指令“跟小李发短息,说我晚上不回家吃饭了”,则通过自然语言处理,中间层120可得到如下信息“启动短信模块,给收件人‘小李’发短信,短信内容为:我晚上不回家吃饭了”。这里,“启动短信模块”可表示操作信息,收件人‘小李’以及短信内容“我晚上不回家吃饭了”可表示实体信息。当然,中间层120还可以通过扩展处理的模块,进行更多的底层设备应用的控制,例如,可阅读未读邮件、查看天气信息等。
接下来,中间层120根据操作信息所涉及到的应用程序来调用终端设备100中相应的底层API接口,并将操作信息和实体信息提供给终端设备100的应用程序130。或者,中间层120可将得到的操作信息和实体信息转换为用于模拟用户行为的操作的指令,从而对终端设备100的其它功能进行控制或者对终端设备100进行相应的操作。例如,可将“提高音量”的语音指令转换为用户对音量+键的行为操作的指令。通过以上处理,可以实现对终端设备100上的不同应用程序或其它基本功能的控制。
另外,如果应用程序130在运行的过程中返回了与用户进行交互的交互信息,则中间层120将返回的交互信息转换为语音,并将转换的语音提供给操作系统110,并由操作系统110的相应模块将转换后的语音提供到声音输出设备。例如,操作系统110的蓝牙耳机模块可将转换的语音发送给蓝牙耳机,从而用户可听到返回的交互信息。
下面将参照图2来详细说明根据本发明实施例的图1中的中间层120模块的详细配置。
如图2所示,中间层模块120包括语音识别模块121、语义分析模块122、语音控制模块123以及语音转换模块124。当然,以上的模块可以划分为更多的模块或者组合为更少的模块。
当接收到语音信息时,语音识别模块121将用户语音转换为文本信息。可采用现有的任何语音识别技术来将语音转换为文本信息。可选地,语音识别模块121可控制终端设备100与用户进行二次交互确认来降低误识别带来的错误指令。
接下来,语义分析模块122分析文本信息,从而将文本信息翻译为操作信息和实体信息。具体地,语义分析模块122对文本信息进行分词和词性标注,通过词条的特征信息和规则,先将文本信息划分为操作信息部分和实体信息部分。然后,语义分析模块122将操作信息部分解码翻译为对于终端设备100的操作指令。
语音控制模块123根据语义分析模块122翻译的操作指令来调用底层API,从而打开与操作指令相应的应用程序。或者,语音控制模块123根据翻译的操作指令来模拟用户操作行为,从而对终端设备100进行模拟的操作。
另外,如果应用程序130返回了文字信息,则语音转换模块124将返回的文字信息转换为语音信息,并通过调用操作系统110的相应模块来将转换的语音信息提供给语音输出设备。例如,操作系统110可通过调用蓝牙模块将转换后的语音信息提供给蓝牙耳机。
下面将结合具体示例来说明以上的中间层120的操作。例如,如果用户在开车的过程中收到新浪微博发来的微博的通知。这时候,操作系统110将通知以声音和画面的形式发送给用户,以提醒用户。这种提醒的方式在大多数终端设备中已经实现。
用户在得到提醒之后决定查看这条微博并进行反馈。此时,用户通过蓝牙耳机上的话筒发出语音指令“查看通知信息”。中间层120在接收到该语音信息之后,语音识别模块121对这条语音信息进行识别,从而得到“查看通知信息”的文本信息。接下来,语义分析模块122使用分词标注来对文本信息进行分析。例如,分词标注能够识别出动词“查看”和动词的受体“通知信息”,同时根据上一次发生信息交互的应用程序(即,新浪微博),语义分析模块122可以判断出用户的需求是“查看”[动作]“新浪微博”[应用程序]的“通知信息”[客体]。然后,语音控制模块123调用终端设备100的操作系统底层的API打开新浪微博。这样,用户可在终端设备上查看刚刚接收到的新浪微博的通知信息。
可选地,语音转换模块124还可从应用程序得到通知信息的文本信息,并将文本信息转换为语音信息,并通过操作系统110的负责蓝牙耳机的模块将语音信息发送到蓝牙耳机。这样,用户可从蓝牙耳机中听到自己想要查看的通知信息,而不用自己主动在终端上查看通知信息。与当前已经存在的语音助手类的应用程序最大的区别是不需要对当前存在的应用程序做接口调用,直接从底层就可以和其他应用进行交互,具有很大的扩展性。
下面将参照图3对根据本发明实施例的语音交互方法的流程进行说明。
首先,在步骤S301,由位于操作系统110和应用程序130之间的中间层120来接收用户从语音输入设备输入的语音指令的语音信息。
接下来,在步骤S303,中间层120将接收的语音信息转换为文本信息。然后,在步骤S305,中间层120对文本信息进行语义分析以提取出用户的语音指令中的操作信息和实体信息,并根据操作信息得到对终端设备的指令。
接下来,在步骤S307,中间层120根据对终端设备的指令调用终端设备的底层API以操作相关的应用程序,并将操作信息和实体信息提供给相应的应用程序。或者,中间层120还可将得到的操作信息和实体信息转换为用于模拟用户对终端设备的操作的指令。
可选地,如果应用程序在执行操作之后返回了文本信息,则在步骤S309中间层120将返回的文本信息转换为语音信息,并将语音信息提供给语音输出设备。
通过本发明,用户可以借用语音输入设备控制移动设备的应用程序,满足在移动过程中不适合查看手机屏幕时的使用场景。除此之外,对于无法正常使用一些设备的盲人,也提供了一种仅仅通过语音的方式和设备进行交互的方法。另外,本发明的技术方案不仅扩充了目前终端设备的语音交互功能,由于终端设备可通过中间层对语音指令进行转码,因此,可利用语音对运行在终端设备上的各种应用程序和功能进行控制和交互。
根据本发明的方法可被记录在包括执行由计算机实现的各种操作的程序指令的计算机可读介质中。介质也可以只包括程序指令或者包括与程序指令相结合的数据文件、数据结构等。计算机可读介质的例子包括磁介质(例如硬盘、软盘和磁带);光学介质(例如CD-ROM和DVD);磁光介质(例如,光盘);以及特别配制用于存储并执行程序指令的硬件装置(例如,只读存储器(ROM)、随机存取存储器(RAM)、闪存等)。介质也可以是包括传输规定程序指令、数据结构等的信号的载波的传输介质(例如光学线或金属线、波导等)。程序指令的例子包括例如由编译器产生的机器码和包含可使用解释器由计算机执行的高级代码的文件。
尽管已经参照本发明的示例性实施例具体显示和描述了本发明,但是本领域的技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种改变。

Claims (8)

1.一种用于终端设备的语音交互方法,其特征在于所述终端设备包括位于操作系统和应用程序之间的中间层,所述语音交互方法包括:
(a)由中间层接收用户从语音输入设备输入的语音指令的语音信息,并将接收的语音信息转换为文本信息;
(b)中间层对文本信息进行语义分析以提取出用户的语音指令中的操作信息和实体信息,并根据操作信息得到对终端设备的指令;
(c)中间层根据对终端设备的指令调用终端设备的底层API,并将操作信息和实体信息提供给相应的应用程序以对应用程序执行相应的操作,
其中,中间层屏蔽语音输入设备与应用程序之间的联系。
2.如权利要求1所述的语音交互方法,还包括:
(d)如果应用程序在执行操作之后返回了文本信息,则将返回的文本信息转换为语音信息,并将语音信息提供给语音输出设备。
3.如权利要求1所述的语音交互方法,其中,步骤(c)还包括:将得到的操作信息和实体信息转换为用于模拟用户对终端设备的操作的指令。
4.如权利要求1所述的语音交互方法,其中,语音输入设备和语音输出设备集成在与终端设备连接的蓝牙耳机中。
5.一种用于语音交互的终端设备,其特征在于所述终端设备包括位于操作系统和应用程序之间的中间层模块,所述中间层模块包括:
语音识别模块,接收用户从语音输入设备输入的语音指令的语音信息,并将接收的语音信息转换为文本信息;
语义分析模块,对文本信息进行语义分析以提取出用户的语音指令中的操作信息和实体信息,并根据操作信息得到对终端设备的指令;
语音控制模块,根据对终端设备的指令调用终端设备的底层API,并将操作信息和实体信息提供给相应的应用程序以对应用程序执行相应的操作,
其中,中间层模块屏蔽语音输入设备与应用程序之间的联系。
6.如权利要求5所述的终端设备,所述中间层模块还包括:语音转换模块,如果应用程序在执行操作之后返回了文本信息,则将返回的文本信息转换为语音信息,并将语音信息提供给语音输出设备。
7.如权利要求5所述的终端设备,其中,语音控制模块还将得到的操作信息和实体信息转换为用于模拟用户对终端设备的操作的指令。
8.如权利要求5所述的终端设备,其中,语音输入设备和语音输出设备集成在与终端设备连接的蓝牙耳机中。
CN201310078337.XA 2013-03-12 2013-03-12 终端设备的语音交互方法和使用该方法的终端设备 Active CN104050966B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310078337.XA CN104050966B (zh) 2013-03-12 2013-03-12 终端设备的语音交互方法和使用该方法的终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310078337.XA CN104050966B (zh) 2013-03-12 2013-03-12 终端设备的语音交互方法和使用该方法的终端设备

Publications (2)

Publication Number Publication Date
CN104050966A CN104050966A (zh) 2014-09-17
CN104050966B true CN104050966B (zh) 2019-01-01

Family

ID=51503706

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310078337.XA Active CN104050966B (zh) 2013-03-12 2013-03-12 终端设备的语音交互方法和使用该方法的终端设备

Country Status (1)

Country Link
CN (1) CN104050966B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105575390A (zh) * 2014-10-23 2016-05-11 中兴通讯股份有限公司 语音控制方法及装置
WO2016063564A1 (ja) * 2014-10-24 2016-04-28 株式会社ソニー・コンピュータエンタテインメント 制御装置、制御方法、プログラム及び情報記憶媒体
CN104318924A (zh) * 2014-11-12 2015-01-28 沈阳美行科技有限公司 一种实现语音识别功能的方法
CN104618220A (zh) * 2014-12-31 2015-05-13 北京国创富盛通信股份有限公司 一种基于蓝牙技术的im双向交互系统
CN104681023A (zh) * 2015-02-15 2015-06-03 联想(北京)有限公司 一种信息处理方法及电子设备
CN105096951A (zh) * 2015-05-28 2015-11-25 惠州Tcl移动通信有限公司 一种基于智能可穿戴设备实现语音控制的方法及系统
CN106468891A (zh) * 2015-08-19 2017-03-01 中兴通讯股份有限公司 主控语音终端、被控语音终端、语音互联控制方法及系统
CN106504753A (zh) * 2015-09-07 2017-03-15 上海隆通网络系统有限公司 一种在it运维管理系统中的语音识别方法及系统
CN105609104A (zh) * 2016-01-22 2016-05-25 北京云知声信息技术有限公司 一种信息处理方法、装置及智能语音路由控制器
CN107018228B (zh) * 2016-01-28 2020-03-31 中兴通讯股份有限公司 一种语音控制系统、语音处理方法及终端设备
CN106201015B (zh) * 2016-07-08 2019-04-19 百度在线网络技术(北京)有限公司 基于输入法应用软件的语音输入方法及装置
CN107329843B (zh) * 2017-06-30 2021-06-01 百度在线网络技术(北京)有限公司 应用程序语音控制方法、装置、设备以及存储介质
CN109284496A (zh) * 2017-07-19 2019-01-29 阿里巴巴集团控股有限公司 智能交互方法、装置以及电子设备
CN107481721A (zh) * 2017-08-16 2017-12-15 北京百度网讯科技有限公司 用于可穿戴电子设备的语音交互方法和可穿戴电子设备
CN107680595A (zh) * 2017-11-15 2018-02-09 安徽声讯信息技术有限公司 一种智能语音手机或智能语音平板
JP7342862B2 (ja) * 2018-05-25 2023-09-12 ソニーグループ株式会社 情報処理装置及び情報処理方法、並びに情報処理システム
CN108920232B (zh) * 2018-06-20 2021-06-22 维沃移动通信有限公司 一种目标对象的处理方法及终端设备
CN109036396A (zh) 2018-06-29 2018-12-18 百度在线网络技术(北京)有限公司 一种第三方应用的交互方法及系统
CN108986818A (zh) * 2018-07-04 2018-12-11 百度在线网络技术(北京)有限公司 视频通话挂断方法、装置、设备、服务端及存储介质
CN109147784B (zh) * 2018-09-10 2021-06-08 百度在线网络技术(北京)有限公司 语音交互方法、设备以及存储介质
CN112073761B (zh) * 2019-06-10 2022-09-09 海信视像科技股份有限公司 蓝牙功能的实现方法及装置、双硬件系统显示设备
CN110489756B (zh) * 2019-08-23 2020-10-27 上海松鼠课堂人工智能科技有限公司 会话式人机交互口语测评系统
CN110944315A (zh) * 2019-12-14 2020-03-31 华为技术有限公司 数据处理方法、终端设备、蓝牙设备及存储介质
CN112489654A (zh) * 2020-11-17 2021-03-12 深圳康佳电子科技有限公司 一种语音交互方法、装置、智能终端及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102830915A (zh) * 2012-08-02 2012-12-19 聚熵信息技术(上海)有限公司 语义输入控制系统及其方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169584A (ja) * 2000-11-29 2002-06-14 Denso Corp 音声操作システム
CN2854961Y (zh) * 2005-11-23 2007-01-03 英业达股份有限公司 声音控制的电视机
CN102541574A (zh) * 2010-12-13 2012-07-04 鸿富锦精密工业(深圳)有限公司 应用程序开启系统及方法
CN102566961A (zh) * 2010-12-31 2012-07-11 上海博泰悦臻电子设备制造有限公司 基于车载设备的应用程序的语音执行方法及装置
CN102929385A (zh) * 2012-09-05 2013-02-13 四川长虹电器股份有限公司 语音控制应用程序的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102830915A (zh) * 2012-08-02 2012-12-19 聚熵信息技术(上海)有限公司 语义输入控制系统及其方法

Also Published As

Publication number Publication date
CN104050966A (zh) 2014-09-17

Similar Documents

Publication Publication Date Title
CN104050966B (zh) 终端设备的语音交互方法和使用该方法的终端设备
US9525767B2 (en) System and method for answering a communication notification
US9111545B2 (en) Hand-held communication aid for individuals with auditory, speech and visual impairments
CN106302933B (zh) 通话语音信息处理方法及终端
CN104010267A (zh) 支持基于翻译的通信服务方法和系统和支持该服务的终端
CN108701127A (zh) 电子设备及其操作方法
US20200081884A1 (en) Processing method and device of the user input information
EP3051782B1 (en) Method and system for sending contact information in call process
KR20090085376A (ko) 문자 메시지의 음성 합성을 이용한 서비스 방법 및 장치
CN103035240A (zh) 用于使用上下文信息的语音识别修复的方法和系统
CN103945044A (zh) 一种信息处理方法和移动终端
CN101340676A (zh) 一种实现同声翻译的方法、装置和移动终端
KR20150091406A (ko) 전화 호출의 음성-텍스트 전사를 위한 언어 결정 방법 및 디바이스들
CN103249034A (zh) 一种获取联系人信息的方法和装置
CN101354886A (zh) 语音识别装置
CN105323392A (zh) 一种快速进入ivr菜单的方法及装置
KR101470753B1 (ko) 통신 내용 기반 자동 스케줄링을 위한 단말, 서버, 방법, 및 기록 매체
KR20170073417A (ko) 지능형 자동 문자 응대 시스템
CN109660672A (zh) 语音类型的转换方法、设备及计算机可读存储介质
US20220124193A1 (en) Presentation of communications
US20170221481A1 (en) Data structure, interactive voice response device, and electronic device
CN108270925A (zh) 语音信息的处理方法、装置、终端和计算机可读存储介质
CN101325627A (zh) 操作语音邮件系统的方法
JP6462291B2 (ja) 通訳サービスシステム及び通訳サービス方法
US10250746B2 (en) Method and system for group communication across electronic mail users and feature phone users

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant