发明名称 智能食堂打卡机的三维语音识别方法
摘要 本发明公开了一种智能食堂打卡机的三维语音识别方法,用于解决现有食堂打卡机结算方法效率低的技术问题。技术方案是采用声音传感器A<sub>1</sub>,A<sub>2</sub>,A<sub>3</sub>,O在不同时间接收到同一顾客的声音,根据接收到声音时间的不同,计算顾客的位置坐标;判定顾客位置是否在预先定义的有效范围内;通过卡机主控制器将语音信息提交至卡机服务器,计算顾客消费的总金额,并将该金额返回至卡机终端,显示在LED显示屏上。由于通过三维声源定位判断顾客是否在有效范围内,如果声源有效就将顾客的声音提交至卡机服务器,通过卡机服务器的语音识别软件,提取有效的需求信息,并将该需求信息以及所对应的消费金额返回至卡机终端。本发明能够精确识别顾客位置,提高了食堂打卡机的结算效率。
申请公布号 CN103310786B 申请公布日期 2015.10.21
申请号 CN201310240793.X 申请日期 2013.06.17
申请人 西北工业大学 发明人 史丽丽;郭银洲;张承武;朱煜明
分类号 G10L15/00(2013.01)I;G07G1/12(2006.01)I 主分类号 G10L15/00(2013.01)I
代理机构 西北工业大学专利中心 61204 代理人 王鲜凯
主权项 一种智能食堂打卡机的三维语音识别方法,其特征在于包括以下步骤:步骤一、声音传感器A<sub>1</sub>,A<sub>2</sub>,A<sub>3</sub>,O在不同时间接收到同一顾客的声音,根据接收到声音时间的不同,由卡机主控制器计算顾客与四个声音传感器之间的距离差;根据距离差,计算顾客的位置坐标;假定声音在空气中的传播速度为ν,四个传感器A<sub>1</sub>,A<sub>2</sub>,A<sub>3</sub>,O接收到声音信号θ的时间分别为t<sub>1</sub>,t<sub>2</sub>,t<sub>3</sub>,t<sub>4</sub>,且假设t<sub>1</sub>>t<sub>2</sub>>t<sub>3</sub>>t<sub>4</sub>;以卡机平面为X‑Z平面,垂直面为X‑Y平面,A<sub>1</sub>A<sub>2</sub>中点O为坐标原点建立O‑XYZ三维坐标系,则四个声音传感器的坐标分别为A<sub>1</sub>(‑a,0,0),A<sub>2</sub>(a,0,0),A<sub>3</sub>(0,0,b),O(0,0,0),假设声源位置为P(x,y,z),由已知条件得知PA<sub>1</sub>‑PA<sub>2</sub>=v(t<sub>1</sub>‑t<sub>2</sub>)=Δ<sub>1</sub>,PO‑PA<sub>2</sub>=v(t<sub>2</sub>‑t<sub>3</sub>)=Δ<sub>2</sub>,PO‑PA<sub>3</sub>=v(t<sub>2</sub>‑t<sub>4</sub>)=Δ<sub>3</sub>,其中PA<sub>1</sub>,PO,PA<sub>2</sub>,PA<sub>3</sub>分别表示点P到点A<sub>1</sub>,O,A<sub>2</sub>,A<sub>3</sub>的距离,如下方程组:<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open='{' close=''><mtable><mtr><mtd><msqrt><msup><mrow><mo>(</mo><mi>x</mi><mo>+</mo><mi>a</mi><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>+</mo><msup><mi>z</mi><mn>2</mn></msup></msqrt><mo>-</mo><msqrt><msup><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mi>a</mi><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>+</mo><msup><mi>z</mi><mn>2</mn></msup></msqrt><mo>=</mo><msub><mi>&Delta;</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msqrt><msup><mi>x</mi><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>+</mo><msup><mi>z</mi><mn>2</mn></msup></msqrt><mo>-</mo><msqrt><msup><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mi>a</mi><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>+</mo><msup><mi>z</mi><mn>2</mn></msup></msqrt><mo>=</mo><msub><mi>&Delta;</mi><mn>2</mn></msub></mtd></mtr><mtr><mtd><msqrt><msup><mi>x</mi><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>+</mo><msup><mi>z</mi><mn>2</mn></msup></msqrt><mo>-</mo><msqrt><msup><mi>x</mi><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><mi>z</mi><mo>-</mo><mi>b</mi><mo>)</mo></mrow><mn>2</mn></msup></msqrt><mo>=</mo><msub><mi>&Delta;</mi><mn>3</mn></msub></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000725070580000011.GIF" wi="791" he="258" /></maths>求解得:<maths num="0002" id="cmaths0002"><math><![CDATA[<mfenced open='' close=''><mtable><mtr><mtd><mi>x</mi><mo>=</mo><mfrac><mrow><msub><mi>&Delta;</mi><mn>1</mn></msub><mrow><mo>(</mo><msup><mi>a</mi><mn>2</mn></msup><mo>+</mo><msubsup><mi>&Delta;</mi><mn>2</mn><mn>2</mn></msubsup><mo>-</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow><mrow><mn>2</mn><mi>a</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac></mtd></mtr><mtr><mtd><mtable></mtable><mfenced open='' close=''><mtable><mtr><mtd><mi>y</mi><mo>=</mo><mfrac><mrow><msup><mrow><mn>4</mn><mi>a</mi></mrow><mn>6</mn></msup><mrow><mo>(</mo><msup><mi>b</mi><mn>2</mn></msup><mo>-</mo><msubsup><mi>&Delta;</mi><mn>3</mn><mn>2</mn></msubsup><mo>)</mo></mrow></mrow><mrow><mn>2</mn><mi>ab</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac><mo>+</mo><mfrac><mrow><msup><mi>a</mi><mn>4</mn></msup><msup><mi>b</mi><mn>2</mn></msup><mo>[</mo><mn>8</mn><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mrow><mo>(</mo><msub><mrow><mn>5</mn><mi>&Delta;</mi></mrow><mn>1</mn></msub><mo>+</mo><msub><mrow><mn>4</mn><mi>&Delta;</mi></mrow><mn>3</mn></msub><mo>)</mo></mrow><mo>]</mo></mrow><mrow><mn>2</mn><mi>ab</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac><mo>+</mo><mfrac><mrow><msup><mrow><mn>4</mn><mi>a</mi></mrow><mn>4</mn></msup><msubsup><mi>&Delta;</mi><mn>3</mn><mn>2</mn></msubsup><mo>[</mo><msup><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>]</mo></mrow><mrow><mn>2</mn><mi>ab</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mfrac><mrow><msup><mi>a</mi><mn>2</mn></msup><msup><mi>b</mi><mn>4</mn></msup><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow><mrow><mn>2</mn><mi>ab</mi></mrow></mfrac></mtd></mtr><mtr><mtd><mo>+</mo><mfrac><mrow><msup><mi>a</mi><mn>2</mn></msup><msup><mi>b</mi><mn>2</mn></msup><mo>{</mo><msubsup><mi>&Delta;</mi><mn>1</mn><mn>2</mn></msubsup><mo>[</mo><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>+</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>)</mo></mrow><mo>+</mo><mn>2</mn><msup><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msubsup><mrow><mn>4</mn><mi>&Delta;</mi></mrow><mn>2</mn><mn>2</mn></msubsup><mo>]</mo><mo>+</mo><mn>4</mn><msubsup><mi>&Delta;</mi><mn>2</mn><mn>2</mn></msubsup><mo>[</mo><msup><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msubsup><mi>&Delta;</mi><mn>3</mn><mn>2</mn></msubsup><mo>-</mo><msub><mrow><mn>2</mn><mi>&Delta;</mi></mrow><mn>1</mn></msub><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>]</mo><mo>+</mo><msub><mrow><mn>4</mn><mi>&Delta;</mi></mrow><mn>1</mn></msub><msub><mi>&Delta;</mi><mn>2</mn></msub><msub><mi>&Delta;</mi><mn>3</mn></msub><mrow><mo>(</mo><msub><mrow><mn>3</mn><mi>&Delta;</mi></mrow><mn>3</mn></msub><mo>-</mo><msub><mrow><mn>2</mn><mi>&Delta;</mi></mrow><mn>3</mn></msub><mo>)</mo></mrow><mo>}</mo></mrow><mrow><mn>2</mn><mi>ab</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac></mtd></mtr><mtr><mtd><mo>+</mo><mfrac><mrow><msup><mi>a</mi><mn>2</mn></msup><mo>{</mo><msubsup><mrow><mo>-</mo><mi>&Delta;</mi></mrow><mn>1</mn><mn>2</mn></msubsup><msubsup><mi>&Delta;</mi><mn>3</mn><mn>2</mn></msubsup><mo>[</mo><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><msub><mrow><mn>4</mn><mi>&Delta;</mi></mrow><mn>2</mn></msub><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>+</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>)</mo></mrow><mo>+</mo><msubsup><mrow><mn>8</mn><mi>&Delta;</mi></mrow><mn>2</mn><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>&Delta;</mi><mn>3</mn><mn>2</mn></msubsup><mo>]</mo><mo>+</mo><mn>4</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><msubsup><mi>&Delta;</mi><mn>3</mn><mn>2</mn></msubsup><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>+</mo><mn>2</mn><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>-</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>)</mo></mrow></mrow><mrow><mn>2</mn><mi>ab</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><msub><mrow><mn>2</mn><mi>&Delta;</mi></mrow><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac><mo>+</mo><mfrac><mrow><msup><mi>b</mi><mn>2</mn></msup><mo>[</mo><msup><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>+</mo><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>-</mo><msubsup><mrow><mn>2</mn><mi>&Delta;</mi></mrow><mn>2</mn><mn>2</mn></msubsup></mrow><mrow><mn>2</mn><mi>ab</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac></mtd></mtr></mtable></mfenced></mtd></mtr><mtr><mtd><mi>z</mi><mo>=</mo><mfrac><mi>b</mi><mn>2</mn></mfrac><mo>+</mo><mfrac><mrow><msub><mi>&Delta;</mi><mn>3</mn></msub><mrow><mo>(</mo><msup><mi>a</mi><mn>2</mn></msup><mo>-</mo><msubsup><mi>&Delta;</mi><mn>2</mn><mn>2</mn></msubsup><mo>)</mo></mrow></mrow><mrow><mi>b</mi><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>-</mo><mn>2</mn><msub><mi>&Delta;</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mfrac><mrow><msub><mi>&Delta;</mi><mn>3</mn></msub><mrow><mo>(</mo><msub><mi>&Delta;</mi><mn>1</mn></msub><mo>+</mo><msub><mi>&Delta;</mi><mn>3</mn></msub><mo>)</mo></mrow></mrow><mrow><mn>2</mn><mi>b</mi></mrow></mfrac></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000725070580000013.GIF" wi="1775" he="602" /></maths>步骤二、如果声源θ位置满足‑r≤x≤r且0<y≤r且0<z≤r,则该声源有效,继续执行步骤三;否则该声源无效,跳转至步骤一;其中r>0,为已知常数;步骤三、通过卡机主控制器将语音信息提交至卡机服务器,卡机服务器通过语音识别软件识别出有效的消费需求,计算顾客消费的总金额,并将该金额返回至卡机终端,显示在LED显示屏上。
地址 710072 陕西省西安市友谊西路127号