CN104536585A - 一种基于动态条件随机场的键盘输入侦测方法 - Google Patents

一种基于动态条件随机场的键盘输入侦测方法 Download PDF

Info

Publication number
CN104536585A
CN104536585A CN201410855233.XA CN201410855233A CN104536585A CN 104536585 A CN104536585 A CN 104536585A CN 201410855233 A CN201410855233 A CN 201410855233A CN 104536585 A CN104536585 A CN 104536585A
Authority
CN
China
Prior art keywords
sound
sequence
microphone
keyboard
random field
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.)
Granted
Application number
CN201410855233.XA
Other languages
English (en)
Other versions
CN104536585B (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.)
WUXI QINGHUA INFORMATION SCIENCE AND TECHNOLOGY NATIONAL LABORATORY INTERNET OF THINGS TECHNOLOGY CENTER
Original Assignee
WUXI QINGHUA INFORMATION SCIENCE AND TECHNOLOGY NATIONAL LABORATORY INTERNET OF THINGS TECHNOLOGY CENTER
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 WUXI QINGHUA INFORMATION SCIENCE AND TECHNOLOGY NATIONAL LABORATORY INTERNET OF THINGS TECHNOLOGY CENTER filed Critical WUXI QINGHUA INFORMATION SCIENCE AND TECHNOLOGY NATIONAL LABORATORY INTERNET OF THINGS TECHNOLOGY CENTER
Priority to CN201410855233.XA priority Critical patent/CN104536585B/zh
Publication of CN104536585A publication Critical patent/CN104536585A/zh
Application granted granted Critical
Publication of CN104536585B publication Critical patent/CN104536585B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/018Input/output arrangements for oriental characters
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques

Abstract

本发明公开一种基于动态条件随机场的键盘输入侦测方法,包括:获取不同位置的若干个麦克风M1M2M3...M2m的位置;通过归一化互相关方法,对于所有的麦克风对,计算同一音源发出的声音到麦克风Mi和麦克风Mj的带误差容忍的时间差范围Δtij;根据带误差容忍的时间差范围Δtij和每对麦克风的位置,获得相应的双曲线;将所有的双曲线叠加在平面上,平面中被双曲线带覆盖次数最多的区域即为最大可能的音源区域,侦测出键盘输入字符的大概位置;利用动态条件随机场对键盘输入的位置信息进行建模,通过线下学习的文本特征关联性来恢复输入字符序列。本发明没有假设数据之间的独立性,利用现实存在的时空关联性建立了一个统一的概率模型,实现了对键盘输入的定位。

Description

一种基于动态条件随机场的键盘输入侦测方法
技术领域
本发明涉及键盘输入侦测技术领域,尤其涉及一种基于动态条件随机场的键盘输入侦测方法。
背景技术
众所周知,键盘输入带着大量的数据信息,包括登录用户名、密码等重要信息。随之越来越多的键盘输入攻击方式出现,例如利用定位能力强大的声波探测器,或者是在电脑内部植入攻击的木马软件等。前者需要体积庞大的仪器,不易携带,不适用于键盘输入侦测场合;而后者容易被电脑里面的反木马程式所删除。
随着手机逐渐成为具有强大计算能力的移动工具,越来越多的传感器被安放在手机上,用以提供各种感知的功能。手机上麦克风的数量也在逐渐增多,然而现有的手机一般还都只有两个或者一个麦克风,只有极少数的手机有三个麦克风,以iPhone 5手机为例,其具有三个麦克风,一个在前面,一个在背面,另一个在底部。这样可以更好的获取多个方向的声音,并且在通话过程中消除背景噪音。多个麦克风的出现为精确定位声音源的提供了可能,如果在单个手机上麦克风的数量不小于三个,即可通过手机声音到达不同位置的麦克风的时间差进行定位,从而得到较精确的音源位置。但是如果手机只有两个麦克风,则需要多个手机进行协同合作定位。
如果利用手机能够精确的对键盘输入进行定位,确实是一个很隐蔽且高效方法。然而,由于现有手机的发射/接收声音信号的频率过低,而对键盘输入定位对于定位精度要求高(2cm以内),所以往往无法直接使用。
发明内容
本发明的目的在于通过一种基于动态条件随机场的键盘输入侦测方法,来解决以上背景技术部分提到的问题。
为达此目的,本发明采用以下技术方案:
一种基于动态条件随机场的键盘输入侦测方法,其包括:
A、获取不同位置的若干个麦克风M1M2M3...M2m的位置,其中,m为不小于1的正整数;
B、通过归一化互相关方法,对于所有的麦克风对,计算同一音源发出的声音到麦克风Mi和麦克风Mj的带误差容忍的时间差范围Δtij,其中,i≠j;
C、根据带误差容忍的时间差范围Δtij和每对麦克风位置,获得相应的双曲线;
D、将所有的所述双曲线叠加在平面上,平面中被双曲线带覆盖次数最多的区域即为最大可能的音源区域,侦测出键盘输入字符的大概位置;
E、利用动态条件随机场对键盘输入的位置信息进行建模,通过线下学习的文本特征关联性来恢复输入字符序列。
特别地,所述步骤B具体包括:
通过两个不同位置的麦克风对同一音源发出的声音进行采集,分别获取第一声音序列和第二声音序列,其中,第一麦克风采集的第一声音序列中的声音强度的最高时刻是t1,第二麦克风采集的第二声音序列中声音强度的最高时刻是t2,采集的采样率为k;
选取第一声音序列和第二声音序列的两个声音序列的声音强度最高的时间段,得到第一麦克风的第一声音子序列X(t)和第二麦克风的第二声音子序列Y(t);第一声音子序列X(t)和第二声音子序列Y(t)的序列长度均为L;
将得到的两个子序列进行归一化互相关计算,以得到最佳匹配位置tM,即两个子序列相对位置为tM时,归一化互相关计算的结果CC(t0)数值最大;
归一化的互相关方法的计算公式如下:
CC ( t 0 ) = Σ t x ∈ W [ X ( t x ) - X ( t ) ‾ ] [ Y ( t x - t 0 ) - Y ( t ) ‾ ] Σ t ∈ W 0 [ X ( t ) - X ( t ) ‾ ] 2 Σ t ∈ W 0 [ Y ( t ) - Y ( t ) ‾ ] 2
根据上述归一化互相关计算公式,其中一个序列为模版序列,另一个为待匹配序列;令X(t)为模版序列,Y(t)为待匹配序列;t0为子序列Y(t)相对X(t)的位置,其取值范围是t0∈[1-L,2L-1];tx为X(t)实际匹配部分位置,其取值范围是tx∈W=[maxmax{0,t0},minmin{t0+L-1,L-1}],t为X(t)和Y(t)序列的位置下标,其取值范围是t∈W0=[0,L-1];X(t)序列的音强平均值为 X ( t ) ‾ = Σ t ∈ W o X ( t ) L , Y(t)序列的音强平均值为 Y ( t ) ‾ = Σ t ∈ W o Y ( t ) L ;
计算上述两个麦克风采集的音源的声音的时间差T1,T1=|t1-t2+tM/K|;带误差容忍的时间差范围是Δt,其取值范围是Δt∈(T1-δ,T1+δ),容忍度δ=||T1|-|t1-t2||。
本发明提出的基于动态条件随机场的键盘输入侦测方法没有假设数据之间的独立性,利用现实存在的时空关联性建立了一个统一的概率模型,实现了对键盘输入的定位,成本低,准确率高,易于实现。
附图说明
图1为本发明提供的基于动态条件随机场的键盘输入侦测方法流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容,除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
请参照图1所示,图1为本发明提供的基于动态条件随机场的键盘输入侦测方法流程图。
本实施例中基于动态条件随机场的键盘输入侦测方法具体包括:
S101、获取不同位置的若干个麦克风M1M2M3...M2m的位置,其中,m为不小于1的正整数。
S102、通过归一化互相关方法,对于所有的麦克风对,计算同一音源发出的声音到麦克风Mi和麦克风Mj的带误差容忍的时间差范围Δtij,其中,i≠j。
S103、根据带误差容忍的时间差范围Δtij和每对麦克风的位置,获得相应的双曲线。
S104、将所有的所述双曲线叠加在平面上,平面中被双曲线带覆盖次数最多的区域即为最大可能的音源区域,侦测出键盘输入字符的大概位置。
S105、利用动态条件随机场对键盘输入的位置信息进行建模,通过线下学习的文本特征关联性来恢复输入字符序列。
于本实施例中所述步骤S102具体过程如下:通过两个不同位置的麦克风对同一音源发出的声音进行采集,分别获取第一声音序列和第二声音序列,其中,第一麦克风采集的第一声音序列中的声音强度的最高时刻是t1,第二麦克风采集的第二声音序列中声音强度的最高时刻是t2,采集的采样率为k。
选取第一声音序列和第二声音序列的两个声音序列的声音强度最高的时间段,得到第一麦克风的第一声音子序列X(t)和第二麦克风的第二声音子序列Y(t);第一声音子序列X(t)和第二声音子序列Y(t)的序列长度均为L。
将得到的两个子序列进行归一化互相关计算,以得到最佳匹配位置tM,即两个子序列相对位置为tM时,归一化互相关计算的结果CC(t0)数值最大。
归一化的互相关方法的计算公式如下:
CC ( t 0 ) = Σ t x ∈ W [ X ( t x ) - X ( t ) ‾ ] [ Y ( t x - t 0 ) - Y ( t ) ‾ ] Σ t ∈ W 0 [ X ( t ) - X ( t ) ‾ ] 2 Σ t ∈ W 0 [ Y ( t ) - Y ( t ) ‾ ] 2
根据上述归一化互相关计算公式,其中一个序列为模版序列,另一个为待匹配序列;令X(t)为模版序列,Y(t)为待匹配序列;t0为子序列Y(t)相对X(t)的位置,其取值范围是t0∈[1-L,2L-1];tx为X(t)实际匹配部分位置,其取值范围是tx∈W=[maxmax{0,t0},minmin{t0+L-1,L-1}],t为X(t)和Y(t)序列的位置下标,其取值范围是t∈W0=[0,L-1];X(t)序列的音强平均值为 X ( t ) ‾ = Σ t ∈ W o X ( t ) L , Y(t)序列的音强平均值为 Y ( t ) ‾ = Σ t ∈ W o Y ( t ) L .
计算上述两个麦克风采集的音源的声音的时间差T1,T1=|t1-t2+tM/K|;带误差容忍的时间差范围是Δt,其取值范围是Δt∈(T1-δ,T1+δ),容忍度δ=||T1|-|t1-t2||。
有了声音时间差,就可以得到对键盘输入的“粗略定位”,也就是说可以得到一串输入字符的大概位置。本实施例中,把键盘的位置分为六块区域,这样每一次输入都可以被识别在某一块区域中。而键盘输入之间是有关联性的,对于英文输入的前后相关性学习为已知成熟技术,在此不再赘述。
因此,本发明采用动态条件随机场(Dynamic Conditional Random Field,DCRF)来刻画所有可能的时空关联性和特征关联性。以条件随机场中的隐藏状态L={L_1,L_2,…,L_T}来表示键盘的输入序列,以观察节点O={O_1,O_2,…,O_T}来表示键盘的输入预测位置。根据动态条件随机场的性质,从观察节点推测出隐藏节点的概率为:
p ( L → | O → ) = 1 z Π t Π c ∈ C exp ( Σ k λ k f k ( L → c , O → , t ) )
其中,C是条件随机场的图模型中的所有团(clique)的集合,λkfk是基于团定义的因素函数(factor functions),用来刻画团中各个节点之间的关联性,Z是归一化函数。
在进行键盘输入侦测时,本发明包括两个步骤:线下学习过程和在线检测过程,具体如下:
一、线下学习过程。在该过程中,需收集了英文键盘输入的训练数据D={X(i),Y(i)},其中,Y(i)示给实际的键盘位置,也就是DCRF里的隐含状态序列,X(i)则表示的是位置信息,即DCRF里的观察状态序列。学习的最终目的是将DCRF里的各类优化参数Λ={λk}设置好。
二、在线检测过程。在获得了DCRF的各类参数之后,该模型可以根据输入的某k时长的观察序列xt-k+1,xt-k+2,…,xt,推算这段时间里的隐含状态序列,也就是键盘的输入字符,从而知道在这段时间里的键盘输入序列。推算的主要方法为:y*=argmaxyp(yt-k+1,yt-k+2,…,yt|xt-k+1,xt-k+2,…,xt;Λ)。
本发明的技术方案没有假设数据之间的独立性,利用现实存在的时空关联性建立了一个统一的概率模型,实现了对键盘输入的定位,成本低,准确率高,易于实现。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (2)

1.一种基于动态条件随机场的键盘输入侦测方法,其特征在于,包括:
A、获取不同位置的若干个麦克风M1M2M3...M2m的位置,其中,m为不小于1的正整数;
B、通过归一化互相关方法,对于所有的麦克风对,计算同一音源发出的声音到麦克风Mi和麦克风Mj的带误差容忍的时间差范围Δtij,其中,i≠j;
C、根据带误差容忍的时间差范围Δtij和每对麦克风的位置,获得相应的双曲线;
D、将所有的所述双曲线叠加在平面上,平面中被双曲线带覆盖次数最多的区域即为最大可能的音源区域,侦测出键盘输入字符的大概位置;
E、利用动态条件随机场对键盘输入的位置信息进行建模,通过线下学习的文本特征关联性来恢复输入字符序列。
2.根据权利要求1所述的基于动态条件随机场的键盘输入侦测方法,其特征在于,所述步骤B具体包括:
通过两个不同位置的麦克风对同一音源发出的声音进行采集,分别获取第一声音序列和第二声音序列,其中,第一麦克风采集的第一声音序列中的声音强度的最高时刻是t1,第二麦克风采集的第二声音序列中声音强度的最高时刻是t2,采集的采样率为k;
选取第一声音序列和第二声音序列的两个声音序列的声音强度最高的时间段,得到第一麦克风的第一声音子序列X(t)和第二麦克风的第二声音子序列Y(t);第一声音子序列X(t)和第二声音子序列Y(t)的序列长度均为L;
将得到的两个子序列进行归一化互相关计算,以得到最佳匹配位置tM,即两个子序列相对位置为tM时,归一化互相关计算的结果CC(t0)数值最大;
归一化的互相关方法的计算公式如下:
CC ( t 0 ) = Σ t x ∈ W [ X ( t x ) - X ( t ) ‾ ] [ Y ( t x - t 0 ) - Y ( t ) ‾ ] Σ t ∈ W 0 [ X ( r ) - X ( t ) ‾ ] 2 Σ t ∈ W 0 [ Y ( t ) - Y ( t ) ‾ ] 2
根据上述归一化互相关计算公式,其中一个序列为模版序列,另一个为待匹配序列;令X(t)为模版序列,Y(t)为待匹配序列;t0为子序列Y(t)相对X(t)的位置,其取值范围是t0∈[1-L,2L-1];tx为X(t)实际匹配部分位置,其取值范围是tx∈W=[maxmax{0,t0},minmin{t0+L-1,L-1}],t为X(t)和Y(t)序列的位置下标,其取值范围是t∈W0=[0,L-1];X(t)序列的音强平均值为 X ( t ) ‾ = Σ t ∈ Wo X ( t ) L , Y(t)序列的音强平均值为 Y ( t ) ‾ = Σ t ∈ Wo Y ( t ) L ;
计算上述两个麦克风采集的音源的声音的时间差T1,T1=|t1-t2+tM/K|;带误差容忍的时间差范围是Δt,其取值范围是Δt∈(T1-δ,T1+δ),容忍度δ=||T1|-|t1-t2||。
CN201410855233.XA 2014-12-31 2014-12-31 一种基于动态条件随机场的键盘输入侦测方法 Active CN104536585B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410855233.XA CN104536585B (zh) 2014-12-31 2014-12-31 一种基于动态条件随机场的键盘输入侦测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410855233.XA CN104536585B (zh) 2014-12-31 2014-12-31 一种基于动态条件随机场的键盘输入侦测方法

Publications (2)

Publication Number Publication Date
CN104536585A true CN104536585A (zh) 2015-04-22
CN104536585B CN104536585B (zh) 2017-11-10

Family

ID=52852125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410855233.XA Active CN104536585B (zh) 2014-12-31 2014-12-31 一种基于动态条件随机场的键盘输入侦测方法

Country Status (1)

Country Link
CN (1) CN104536585B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107452402A (zh) * 2016-07-05 2017-12-08 深圳大学 利用声音信号检测键盘敲击内容的系统及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1386070A (en) * 1970-07-27 1975-03-05 Bennison R Pressure actuated signalling means
US4677600A (en) * 1984-12-11 1987-06-30 Alps Electric Co., Ltd. Keyboard apparatus
CN1832633A (zh) * 2005-03-07 2006-09-13 华为技术有限公司 一种声源定位方法
CN102361508A (zh) * 2011-07-27 2012-02-22 中国计量学院 一种判断声音位置的2路麦克风的声音采集和放大电路
CN102914765A (zh) * 2012-11-13 2013-02-06 天津工业大学 声音定位系统
CN103675757A (zh) * 2013-12-17 2014-03-26 无锡清华信息科学与技术国家实验室物联网技术中心 基于多个手机麦克风阵列的定位方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1386070A (en) * 1970-07-27 1975-03-05 Bennison R Pressure actuated signalling means
US4677600A (en) * 1984-12-11 1987-06-30 Alps Electric Co., Ltd. Keyboard apparatus
CN1832633A (zh) * 2005-03-07 2006-09-13 华为技术有限公司 一种声源定位方法
CN102361508A (zh) * 2011-07-27 2012-02-22 中国计量学院 一种判断声音位置的2路麦克风的声音采集和放大电路
CN102914765A (zh) * 2012-11-13 2013-02-06 天津工业大学 声音定位系统
CN103675757A (zh) * 2013-12-17 2014-03-26 无锡清华信息科学与技术国家实验室物联网技术中心 基于多个手机麦克风阵列的定位方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107452402A (zh) * 2016-07-05 2017-12-08 深圳大学 利用声音信号检测键盘敲击内容的系统及方法
WO2018006797A1 (zh) * 2016-07-05 2018-01-11 深圳大学 利用声音信号检测键盘敲击内容的系统及方法
CN107452402B (zh) * 2016-07-05 2019-02-12 深圳大学 利用声音信号检测键盘敲击内容的系统及方法

Also Published As

Publication number Publication date
CN104536585B (zh) 2017-11-10

Similar Documents

Publication Publication Date Title
US20210042666A1 (en) Localized Learning From A Global Model
Kang et al. Novel leakage detection by ensemble CNN-SVM and graph-based localization in water distribution systems
KR20180087279A (ko) 네트워크 토폴로지 적응형의 데이터 시각화 방법, 장치, 설비 및 저장 매체
Dorfan et al. Tree-based recursive expectation-maximization algorithm for localization of acoustic sources
CN104469937B (zh) 压缩感知定位技术中的传感器高效部署方法
CN102298097B (zh) 一种估计云闪雷电脉冲信号到达时间差的方法
Soltani et al. Enhancing Cluster-based RFID Tag Localization using artificial neural networks and virtual reference tags
CN105163282A (zh) 一种基于蓝牙位置指纹的室内定位系统及定位方法
Chen et al. Human behavior recognition using Wi-Fi CSI: Challenges and opportunities
CN105388459A (zh) 分布式麦克风阵列网络的鲁棒声源空间定位方法
Wendeberg et al. Calibration-free TDOA self-localisation
US20210033693A1 (en) Ultrasound based air-writing system and method
CN105308537A (zh) 匹配多个装置的方法、以及使所述匹配成为可能的装置及服务器系统
Huang et al. Analysis of TOA localization with heteroscedastic noises
Avola et al. Person re-identification through Wi-Fi extracted radio biometric signatures
CN103473451B (zh) 超声专业字典的构造和使用方法
KR101627419B1 (ko) 이동 노드의 위치 추정 방법 및 그 장치
Ren et al. Intelligent contactless gesture recognition using WLAN physical layer information
Gu et al. Attention-based gesture recognition using commodity wifi devices
CN110178145B (zh) 支持感测特征的信号段的组织
CN104536585A (zh) 一种基于动态条件随机场的键盘输入侦测方法
Jyothi et al. SOLVIT: A reference-free source localization technique using majorization minimization
Dorfan et al. Multiple acoustic sources localization using distributed expectation-maximization algorithm
CN105846826A (zh) 基于近似平滑l0范数的压缩感知信号重构方法
Jing et al. Acoustic source tracking based on adaptive distributed particle filter in distributed microphone networks

Legal Events

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