(19)
(11) EP 0 319 078 A2

(12) EUROPÄISCHE PATENTANMELDUNG

(43) Veröffentlichungstag:
07.06.1989  Patentblatt  1989/23

(21) Anmeldenummer: 88202629.7

(22) Anmeldetag:  23.11.1988
(51) Internationale Patentklassifikation (IPC)4G10L 3/00
(84) Benannte Vertragsstaaten:
DE FR GB

(30) Priorität: 24.11.1987 DE 3739681

(71) Anmelder:
  • Philips Patentverwaltung GmbH
    22335 Hamburg (DE)

    DE 
  • Philips Electronics N.V.
    5621 BA Eindhoven (NL)

    FR GB 

(72) Erfinder:
  • Mergel, Dieter, Dr.
    D-2000 Hamburg 61 (DE)
  • Ney, Hermann, Dr.
    D-2000 Hamburg 54 (DE)
  • Tomaschewski,Horst
    D-2359 Stuvenborn (DE)

(74) Vertreter: Poddig, Dieter, Dipl.-Ing. et al
Philips Patentverwaltung GmbH, Röntgenstrasse 24
22335 Hamburg
22335 Hamburg (DE)


(56) Entgegenhaltungen: : 
   
       


    (54) Verfahren zum Bestimmen von Anfangs- und Endpunkt isoliert gesprochener Wörter in einem Sprachsignal und Anordnung zur Durchführung des Verfahrens


    (57) Zur Ermittlung von Anfangs- und Endpunkt eines Wortsignals innerhalb eines Sprachsignals aus isoliert gesprochenen Wörtern werden bei jedem neuen Digitalwert drei benach­barte Fenster für die letzten bisher eingetroffenen gespeicherten Digitalwerte bestimmt, von denen das mittlere Fenster das eigentliche Wortsignal enthalten soll. Die Länge dieses mittleren Fensters wird für jeden Digitalwert zwischen einem minimalen und einem maximalen Wert variiert, und von der darin enthaltenen Energie wird jeweils ein Schwellwert subtrahiert, der aus den beiden benachbarten Fenstern bestimmt wird. Auf diese Weise berücksichtigt das erfindungsgemäße Verfahren jeweils das gesamte Sprachsignal anstatt einzelner isolierter Bereiche, wodurch eine zuverlässigere Endpunktbestimmung möglich ist.




    Beschreibung


    [0001] Die Erfindung betrifft ein Verfahren zum Bestimmen von Anfangspunkt und Endpunkt eines Wortsignals entsprechend einem isoliert gesprochenen Wort in einem Sprachsignal durch Ermittlung eines Extremwertes in einer vom Sprach­signal abgeleiteten Folge von Digitalwerten bei Berück­sichtigung von den Extremwert umgebenden Werten des Signalverlaufs und eines Schwellwertes.

    [0002] Derartige Verfahren zur Bestimmung von Anfangs- und End­punkt in einem Sprachsignal werden insbesondere verwendet, wenn das Sprachsignal aus isoliert gesprochenen Wörtern oder sehr kurzen Wortgruppen besteht und diese Wörter bzw. Wortgruppen automatisch erkannt werden sollen. Das eigentliche Wortsignal ist bei fast allen Anwendungen im Sprachsignal durch Störungen und Rauschen und Pausen sowie durch Nebengeräusche wie lautes Einatmen begleitet. Für eine möglichst zuverlässige Erkennung des oder der Wörter im Sprachsignal ist es jedoch wichtig, genau mit dem Sprachsignalteil die Erkennung zu beginnen, die auch den Anfang des zu erkennenden Wortes darstellt.

    [0003] Es sind bereits verschiedene Verfahren zur Bestimmung von Anfangs- und Endpunkt bekannt. In ICASSP 84 Proceedings, 19. bis 21. März 1984, St. Diego, Kalifornia, ist auf den Seiten 18B.7.1 bis 18B.7.4 ein Verfahren zur Detektion von Endpunkten in einem Sprachsignal beschrieben, das mit der Autokorrelationsmatrix des Sprachsignals arbeitet. Eine solche Matrix ist nur mit einem erheblichen Rechenaufwand zu bilden, und die Ergebnisse sind nicht unter allen Bedingungen befriedigend. In der WO 86/03047 wird ein Endpunktdetektor verwendet, der das Sprachsignal in Blöcke unterteilt, die einander überlappen. Diese Blöcke sind jedoch festgelegt, unabhängig von dem Verlauf des Sprachsignals, und es wird der Block mit der maximalen Energie festgestellt und der davorliegende Block mit einer Energie unterhalb eines Schwellwertes bestimmt, der um ein bestimmtes Maß unter der maximalen Energie liegt. Mit weiteren aufwendigen Schritten werden dann eine Anzahl derartiger Maxima und deren Dauer ermittelt und daraus längerdauernde Energiemaxima errechnet. Auch hierbei ist insbesondere bei Überlagerung des Sprachsignals mit stärkeren Störungen eine zuverlässige Endpunkterkennung schwierig und unzuverlässig.

    [0004] Aufgabe der Erfindung ist es daher, ein Verfahren der eingangs genannten Art anzugeben, das eine möglichst zuverlässige Anfangs- und Endpunktbestimmung auch bei Sprachsignalen ermöglicht, die durch wesentliche Stör­signale überlagert sind.

    [0005] Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß eine Anzahl vorher aufeinanderfolgend eingetroffener Digitalwerte drei benachbarten Fenstern zugeordnet werden, von denen das erste Fenster (Endfenster) eine vorgegebene erste Anzahl der zuletzt eingetroffenen Digitalwerte, das zweite Fenster (Signalfenster) eine zwischen einem vorgegebenen ersten Wert und einem vorgegebenen größeren zweiten Wert variierende zweite Anzahl Digitalwerte und das dritte Fenster (Anfangsfenster) eine vorgegebene dritte Anzahl Digitalwerte umfaßt, daß für jeden neuen Digitalwert aus den Digitalwerten im ersten Fenster und aufeinanderfolgend für je einen Wert der zweiten Anzahl aus den Digitalwerten des zugehörigen dritten Fensters ein Schwellwert gebildet wird, um den jeder Digitalwert des zweiten Fensters vermindert wird, daß die Summe der so verminderten Digitalwerte für jeden Wert der zweiten Anzahl mit einer höchsten früher auf gleiche Weise gebil­deten Summe verglichen und abhängig vom Vergleichsergebnis als neue höchste Summe zusammen mit Lageangaben über die Lage des zweiten Fensters innerhalb der Folge der Digital­werte gespeichert wird, und daß die zuletzt gespeicherten Lageangaben den Anfangspunkt und den Endpunkt des Wortsignals angeben.

    [0006] Es werden also keine festen Schwellwerte oder einfache absolute Maxima verwendet, sondern es werden quasi ver­schiedene Anfangs- und Endpunkte im Sprachsignal ange­nommen und dafür geprüft, ob die Energie des darin ent­haltenen Sprachsignals jeweils größer ist als bei anderen angenommenen Endpunkten, wobei ein Schwellwert subtrahiert wird, der aus den benachbarten Bereichen zu beiden Seiten des angenommenen Bereichs des Wortsignals bestimmt wird. Auf diese Weise wird also kein lokales, sondern ein globales Kriterium über das gesamte Sprachsignal ver­wendet, indem nur ein derartiges Sprachsignal als Wort­signal gewertet wird, das über seine Umgebung maximal herausragt. Da die minimale und maximale Breite des zweiten Fensters, das also das Wortsignal darstellt, begrenzt ist, ist eine zusätzliche Sicherheit gegen Störungen gegeben und besteht außerdem die Möglichkeit, mehrere hintereinander isoliert gesprochene Wörter ein­deutig voneinander zu trennen. Die Ermittlung von Anfangs- und Endpunkt erfolgt kontinuierlich mit dem Eintreffen des Sprachsignals, so daß für jede zumindest vorläufig optimale Bestimmung der Endpunkte bereits die Erkennung des Sprachsignals beginnen kann, wobei diese abgebrochen wird, wenn ein günstigerer Wert für die Endpunkte gefunden ist, so daß auch eine schnellere Erkennung möglich ist.

    [0007] Um die Zuverlässigkeit weiter zu erhöhen und beispiels­weise kurze unbetonte Bereiche innerhalb eines Wortes nicht bereits als Endpunkt zu erkennen, ist es nach einer Ausgestaltung der Erfindung zweckmäßig, daß nur diejenigen Lageangaben, die für eine vorgegebene Anzahl aufeinander­folgend eingetroffener Digitalwerte unverändert geblieben sind, als Anfangspunkt und Endpunkt verwendet werden. Es wird also geprüft, ob nach dem Endpunkt eine ausreichend lange Sprachpause folgt.

    [0008] Der Schwellwert, der bei der Bestimmung der Endpunkte verwendet wird, sollte möglichst weitgehend vom Störsignal ausgehen, dessen Größe jedoch nicht ohne weiteres bekannt ist. Dies erfolgt erfindungsgemäß durch Berücksichtigung je eines Bereiches vor und nach der angenommenen Lage des Wortsignals. Besonders einfach kann dieser Schwellwert dadurch gebildet werden, daß der Schwellwert aus der Summe der Digitalwerte im ersten und im dritten Fenster und eines Korrekturwertes gebildet wird. Eine derartige Summenbildung kann sehr einfach und schnell durchgeführt werden.

    [0009] Als Korrekturwert kann ein fester Wert gewählt werden, der beispielsweise eine allgemeine Qualität des Sprachsignals berücksichtigt. Eine weitere Ausgestaltung der Erfindung, bei der dieser Korrekturwert den Verlauf des Sprachsignals weiter berücksichtigt, ist dadurch gekennzeichnet, daß für jeden neuen Digitalwert beim kleinsten Wert der zweiten Anzahl die Summe der Digitalwerte des zweiten Fensters gebildet und abgespeichert wird, wenn eine vorher abge­speicherte zweite Fenstersumme kleiner ist, und die Summe der Digitalwerte des dritten Fensters gebildet und abge­speichert wird, wenn eine vorher abgespeicherte dritte Fenstersumme größer ist, und aus der Differenz der beiden abgespeicherten Fenstersummen der Korrekturwert gebildet wird. Auf diese Weise gehen also nicht nur die Bereiche außerhalb der angenommenen Endpunkte ein, sondern auch das Sprachsignal zwischen den Endpunkten. Insbesondere ist es zweckmäßig, daß der Korrekturwert die durch einen kon­stanten vorgegebenen Signal-Rausch-Verhältniswert divi­dierte Differenz der beiden Fenstersummen ist. Der vorge­gebene Signal-Rausch-Verhältniswert ist dann ein Maß für die mittlere Qualität des Sprachsignals und ist um so kleiner, je stärker das Sprachsignal gestört ist, wie dies beispielsweise bei Sprachübertragung über Telefonleitungen der Fall ist.

    [0010] Es kann in der Praxis leicht vorkommen, daß dem Sprach­signal Störsignale überlagert sind, die zwar sehr kurz sind, jedoch eine hohe Amplitude aufweisen. Um auch in diesem Falle die Sicherheit der Endpunkterkennung zu erhöhen, ist es nach einer weiteren Ausgestaltung der Erfindung zweckmäßig, daß als Digitalwert der kleinste von jeweils mehreren aufeinanderfolgenden digitalisierten Abtastwerten des Sprachsignals verwendet wird. Diese Maßnahme stellt ein sehr wirksames Filter für das Sprach­signal dar.

    [0011] Eine Anordnung zur Durchführung des erfindungsgemäßen Verfahrens, die einen ersten Speicher zur Aufnahme von aus einem Sprachsignal abgeleiteten Digitalwerten aufweist, ist gemäß der Erfindung gekennzeichnet durch einen zweiten Speicher zur Aufnahme von Zwischenergeb­nissen,
    eine Recheneinheit, die die Digitalwerte aus dem ersten Speicher sowie Zwischenergebnisse aus dem zweiten Speicher empfängt und die Energie in jeweils einem der Fenster sowie die weiteren Zwischenergebnisse bestimmt,
    einen Vergleicher zum Vergleichen von Zwischenergebnissen aus dem zweiten Speicher mit von der Recheneinheit ge­lieferten Werten und zum Steuern des Einschreibens der letzteren Werte in den zweiten Speicher,
    eine Steuereinheit zum Adressieren des ersten und des zweiten Speichers und der Recheneinheit entsprechend den Verfahrensschritten, und
    eine Zählanordnung zum Zählen der unterschiedlichen zweiten Anzahlen von Digitalwerten im zweiten Fenster und zum Abgeben eines Scheleifenendesignals an die Steuerein­heit nach einer vorgegebenen Anzahl unterschiedlicher zweiter Anzahlen. Die Steuereinheit kann eine Ablauf­steuerung sein, die durch ein gespeichertes Programm ge­steuert wird. Ein besonders einfacher Aufbau wird erhal­ten, wenn mindestens die Recheneinheit und die Steuerein­heit durch einen Mikroprozessor realisiert sind. Dieser kann gegebenenfalls auch die Funktion des Vergleichers und der Zählanordnung übernehmen.

    [0012] Ausführungsbeispiele der Erfindung werden nachstehend anhand der Zeichnung erläutert. Es zeigen

    Fig. 1a und 1b mit verschiedenen Lagen der Fenster,

    Fig. 2a und 2b ein Flußdiagramm für den Ablauf des Verfahrens zur Endpunktbestimmung,

    Fig. 3 schematisch ein Blockschaltbild einer Anordnung zur Durchführung des Verfahrens.



    [0013] Der in Fig. 1a dargestellte beispielsweise Signalverlauf als Energie E oder Amplitude des Sprachsignals über die Zeit t sei momentan bis zum Zeitpunkt m1 eingetroffen und abgetastet und liegt in Form von digitalen Abtastwerten vor. Der kontinuierlich dargestellte Signalverlauf liegt also im digitalen Bereich als Folge diskreter Punkte vor, was jedoch die weitere Erläuterung nicht wesentlich beeinflußt.

    [0014] Der Signalverlauf wird nun in drei benachbarte Fenster eingeteilt, von denen das erste Fenster von den Abtast werten m1 bis m2 reicht und mit Endfenster bezeichnet wird, weil es zeitlich gesehen das vorläufige Ende des Sprachsignals darstellt. Das mittlere Fenster reicht von den Abtastwerten m2 bis zum Abtastwert m3. Hierin wird das eigentliche Wortsignal angenommen, das einen höheren Energiewert als die Sprachsignalteile davor und dahinter hat. Der Punkt m3 wird für das zu beschreibende Verfahren der Endpunktbestimmung schrittweise zwischen einem mini­malen Abstand und einem maximalen Abstand vom Zeitpunkt m2 verändert. Das dritte Fenster reicht vom jeweiligen Zeit­punkt m3 bis zum Zeitpunkt m4, deren Abstand wiederum konstant ist.

    [0015] Es sei bemerkt, daß jeder Abstandswert nur zu einem der Fenster gehören kann, d.h. das mittlere Fenster beginnt, wenn das erste Fenster bis zum Abtastwert zum Zeitpunkt m2 reicht, mit dem unmittelbar links danebenliegenden Abtast­wert, und entsprechendes gilt auch für das dritte Fenster. Der Einfachheit halber wird diese Tatsache in der folgenden Erläuterung nicht weiter betont, sondern weiter­hin ein quasi kontinuierlicher Signalverlauf angenommen.

    [0016] In Fig. 1b ist ein späterer Zeitpunkt angenommen, bei dem das Sprachsignal bereits bis zum Zeitpunkt n1 eingetroffen ist. Außerdem ist ein größeres Signalfenster angenommen, so daß dessen Beginn beim Zeitpunkt n3 weiter vom Zeit­punkt n2 entfernt liegt als bei Fig. 1a. Entsprechend liegt dann auch der Zeitpunkt n4 als Beginn des Anfangs­fensters zu einem noch früheren Zeitpunkt.

    [0017] Ein wesentliches Kriterium bei der Bestimmung der End­punkte des Sprachsignals ist die Fläche des Sprachsignals innerhalb des Signalfensters, vermindert um einen Schwell­wert SW, der u.a. von der Fläche unter dem Sprachsignal im ersten und im dritten Fenster abhängt. Die Flächen unter dem Sprachsignal werden im übrigen durch die Summe der digitalisierten Abtastwerte innerhalb des jeweiligen Fensters dargestellt.

    [0018] In Fig. 1a ist die Fläche in dem Anfangs- und Endfenster noch relativ groß, so daß sich ein höherer Schwellwert SWm ergibt. Aus der Figur ist unmittelbar zu erkennen, daß die um den Schwellwert verminderte Fläche im mittleren Fenster größer wird, wenn Anfangs- und Endfenster weiter aus­einandergezogen werden, d.h. wenn die noch folgenden ein­treffenden Teile des Signalverlaufs abgewartet werden und die Breite des Signalfensters größer gewählt wird.

    [0019] In Fig. 1b ist dieser Fall nun dargestellt, wobei die Fläche unter dem Sprachsignal im Anfangs- und im End­fenster nun wesentlich kleiner ist, so daß auch der Schwellwert SWn niedriger liegt, jedoch ist nun zu erkennen, daß die Teile des Sprachsignals, die dem Anfangs- und Endfenster am nächsten liegen, einen nega­tiven Beitrag zur Gesamtfläche im Signalfenster abzüglich des Schwellwertes SWn liefern, da diese Signalwerte kleiner sind als der Schwellwert. Bei der optimalen Entscheidung fallen Anfangs- und Endpunkt auf Zeiten, bei denen der Signalwert gleich dem Schwellwert ist. Der Bereich des Sprachsignals, der innerhalb dieses Signalfensters kurzzeitig unterhalb des Schwellwerts SWn liegt, liefert zwar ebenfalls einen negativen Beitrag, der jedoch durch den links davon liegenden höheren Signalabschnitt übertroffen wird, so daß sich durch Verlängern des mittleren Fensters über diesen Bereich des Sprachsignals hinaus insgesamt eine Vergrößerung der Gesamtfläche im Signalfenster oberhalb des Schwellwertes SWn ergibt. Der vorher genannte Anfangs- und Endpunkt wird mit dem Verfahren entsprechend dem Flußdiagramm in Fig. 2a und 2b bestimmt.

    [0020] Das Symbol 10 bedeutet den Start des gesamten Ablaufs, d.h. den Beginn des Sprachsignals. Im Block 11 werden verschiedene Anfangswerte eingestellt, eine Anzahl Abtast­werte entsprechend der Länge des Endfensters, des mini­malen Signalfensters und des Anfangsfensters abgewartet, bevor das Verfahren starten kann, sowie eine spezielle Filterfunktion durchgeführt. Diese besteht darin, daß von jeweils drei aufeinanderfolgenden Abtastwerten der kleinste Wert gewählt und als Digitalwert dem Verfahren zugeführt wird. Beispielsweise wird alle 10 ms ein Abtast­wert dem Sprachsignal entnommen, der den Momentanwert oder den integrierten Wert seit dem letzten Abtastwert dar­stellt, und die Abtastwerte werden digitalisiert. Wenn von jeweils drei aufeinanderfolgenden Abtastwerten der kleinste ausgewählt wird, werden dem Verfahren also alle 30 ms ein Digitalwert zugeführt, so daß für die Durch­führung der folgenden Verfahrensschritte 30 ms zur Ver­fügung stehen. Die zugeführten Digitalwerte werden gespeichert, da sie zu späteren Zeitpunkten noch benötigt werden, und zwar mindestens über eine Signaldauer, die der Summe aus der vorgegebenen maximalen Dauer des Signal­fensters und der beiden anderen Fenster entspricht.

    [0021] Im Block 12 wird die Energie EFk im Anfangsfenster zwischen den Punkten m3 und m4 in Fig. 1a bzw. n3 und n4 in Fig. 1b durch Aufsummieren der darin liegenden Signal­werte bestimmt. Im Block 13 wird dieser Wert durch die Länge BF des Anfangsfensters dividiert und damit die mittlere Energie eFk in diesem Fenster bestimmt.

    [0022] In einem Vergleich 14 wird geprüft, ob dieser mittlere Wert eFk kleiner ist als ein gespeicherter Wert eFsp, und wenn dies der Fall ist, wird im Block 15 dieser kleinere Wert gespeichert, d.h. eFsp wird durch den momentanen Wert eFk ersetzt. Nach dem Block 15 oder wenn der neue Wert nicht kleiner ist als der gespeicherte Wert wird im Block 16 die Energie ESk des Signalfensters mit minimaler Länge bestimmt, also die Fläche unter dem Sprachsignal­verlauf zwischen den Punkten m2 und m3 in Fig. 1a, wofür ebenfalls die gespeicherten Digitalwerte in diesem Bereich aufsummiert werden. Danach wird in einem Vergleich 17 geprüft, ob diese Energie ESk größer ist als eine ge­speicherte Energie ESsp. Wenn dies der Fall ist, wird im Block 18 der gespeicherte Wert durch den neuen Wert ersetzt, danach oder wenn der neue Wert nicht größer ist als der gespeicherte Wert, wird im Block 20 die mittlere Energie ESk bestimmt, indem die Gesamtenergie ESk durch die minimale Breite Bs0 des Signalfensters dividiert wird. Die Breite B dieses Fensters sowie der anderen Fenster wird jeweils durch die Anzahl darinliegender Digitalwerte angegeben.

    [0023] Danach wird im Block 21 ein Korrekturwert thN aus der Differenz zwischen der mittleren Energie eSk im Signal­fenster und eFk im Anfangsfenster, die durch einen ange­nommenen Signal-Rausch-Verhältniswert SNR dividiert wird, bestimmt. Schließlich wird im Block 22 die mittlere Energie im Endfenster, also zwischen den Punkten m1 und m2 in Fig. 1a oder n1 und n2 in Fig. 1b auf entsprechende Weise wie im Anfangsfenster bestimmt.

    [0024] Die Schritte 12 bis 22 laufen bei jedem neu eingetroffenen Digitalwert einmal ab, während der Verbindungspunkt 23 nun zu einer Schleife führt, die für jede zugelassene Breite des Signalfensters einmal durchlaufen wird. Diese einzel­nen Durchläufe werden mit dem Index 1 angedeutet.

    [0025] In Fig. 2b ist diese Schleife angegeben, die mit dem Verbindungspunkt 23 beginnt. Im Block 29 wird dieser Wert 1 auf den Anfangswert Null gesetzt. Im folgenden Block 30 wird der mittlere Energiewert eF₁ des Anfangs­fensters bei der jeweiligen Verschiebung 1 von der minimalen Breite des Signalfensters aus entsprechend Block 13 bestimmt, und im Block 31 wird der so ermittelte Wert zu dem im Block 22 ermittelten mittleren Energiewert des Endfensters und zu dem im Block 21 ermittelten Korrekturwert thN addiert, um den Schwellwert thr zu ermitteln. Danach wird im Block 32 die Energie ES₁ des Signalfensters in der jeweiligen Breite durch Aufsummieren der Digitalwerte in diesem Fenster bestimmt. Im Block 33 wird schließlich von diesem Wert der Schwellwert thr, multipliziert mit der jeweiligen Breite BS1 des Signal­fensters, subtrahiert. Dies ist die Fläche unter dem Signalverlauf in Fig. 1a zwischen den Punkten m2 und m3 bzw. in Fig. 1b zwischen den Punkten n2 und n3, vermindert um die Fläche unterhalb des Schwellwertes SWm bzw. SWn zwischen diesen Punkten. Diese effektive Energie EPS₁ wird als die Energie des Sprachsignals in dem Signalfenster angesehen, die über das Störsignal hinausragt, wobei dieses Störsignal nicht direkt ermittelt werden kann, sondern ein wahrscheinlicher Wert in Form des Schwell­wertes in der vorher beschriebenen Weise abgeleitet wird.

    [0026] Beim Vergleich 34 wird geprüft, ob diese zuletzt ermittel­te effektive Energie EPSe des Sprachsignals über einem ge­speicherten Wert EPSS liegt. Wenn dies der Fall ist, wird im Block 35 dieser neue Wert abgespeichert, ferner wird gespeichert, bei welchem zuletzt eingetroffenen Digitalwert dies erfolgt ist, indem ein momentaner Index k als Wert ksp gespeichert wird, und ferner werden Anfangs- und Endpunkt des Signalfensters, d.h. die Werte m2 und m3 in Fig. 1a bzw. n2 und n3 in Fig. 1b ge­ speichert. Daran anschließend oder, wenn beim Vergleich 34 der neue Wert nicht größer ist als der gespeicherte, wird im Block 36 der Schleifenwert 1 um 1 erhöht, und im Vergleich 37 wird geprüft, ob dieser Wert 1 den vorge­gebenen Maximalwert L entsprechend der maximalen Breite des Signalfensters erreicht hat. Wenn dies nicht der Fall ist, wird zum Block 30 zurückgegangen.

    [0027] Anderenfalls wird im Vergleich 38 geprüft, ob das ge­fundene Maximum der Energie im Sprachfenster stationär ist, d.h. ob eine ausreichende Anzahl KST von weiteren Digitalwerten zugeführt worden ist, ohne daß ein höherer Energiewert gefunden worden ist. Wenn dies nicht der Fall ist, wird zum Block 12 zurückgegangen und der nächste Digitalwert verarbeitet. Wenn jedoch seit einer vorgege­benen Anzahl neu zugeführter Digitalwerte keine höhere Energie im Signalfenster festgestellt worden ist, wird angenommen, daß die zuletzt im Block 35 abgespeicherte effektive Energie dasjenige Signalfenster angibt, das dem Wortsignal innerhalb des Sprachsignals am besten ent­spricht, und die dabei abgespeicherten Lagewerte des Fensters, d.h. die Punkte m2 und m3 bzw. n2 und n3 geben den gesuchten Anfangspunkt und Endpunkt des Wortsignals an.

    [0028] In dem Flußdiagramm in Fig. 2a und 2b sind nur die not­wendigsten Verfahrensschritte angegeben. Es sind Ein­sparungen bei der Durchführung der Rechenschritte in dem Verfahren insbesondere dadurch möglich, daß Zwischenwerte gespeichert werden. Beispielsweise können die Energie­werte EFk bzw. die entsprechenden mittleren Energiewerte, die in dem Block 12 bzw. 13 ermittelt worden sind, stets zwischengespeichert werden, da diese bei den folgenden zugeführten Digitalwerten wieder verwendet werden können, denn das Anfangsfenster für die kleinste Breite des Signalfensters für einen bestimmten Digitalwert hat die gleiche Lage wie das Anfangsfenster bei dem folgenden Digitalwert, wenn das Signalfenster um eine Einheit gegen­über dem minimalen Wert vergrößert ist, usw. Entsprechen­des gilt auch für die Energie im Signalfenster. Diese Einsparung an Rechenzeit erfordert jedoch einen höheren Speicherungs- und Adressensteuerungsaufwand für die Zwischenspeicher.

    [0029] Wenn das beschriebene Verfahren in Verbindung mit auto­matischer Spracherkennung verwendet wird, kann der Er­kennungsvorgang bei jedem neuen Abspeichern der Werte im Block 35 beginnen, so daß dann, wenn der stationäre Zu­stand im Block 38 schließlich erkannt ist, das Erkennungs­verfahren bereits weit fortgeschritten sein kann, so daß auf diese Weise eine schnellere Erkennung, ggf. eine Erkennung in Echtzeit, möglich ist.

    [0030] Bei der in Fig. 3 dargestellten Anordnung nimmt ein Schallwandler 40 ein Sprachsignal auf und setzt es in ein elektrisches Signal um. Dieses wird einer Einheit 42 zugeführt, die dem kontinuierlichen Signal in regelmäßigen Zeitabständen Abtastwerte entnimmt und diese digitali­siert. Die Einheit 44 wählt aus jeweils drei aufeinander­folgenden digitalisierten Abtastwerten den kleinsten aus und führt die so ermittelten Digitalwerte einem Speicher 50 zu. Wenn die Einheit 42 alle 10 ms einen Abtastwert dem Sprachsignal entnimmt, erhält der Speicher 50 also alle 30 ms einen neuen Digitalwert. Dieser wird an einer Adresse abgespeichert, die von einer Steuereinheit 52 über die Verbindung 53 zugeführt wird.

    [0031] Entsprechend adressiert die Steuereinheit 52 den Speicher 50 auch zum Auslesen der gespeicherten Digital­werte, die einer Recheneinheit 54 zugeführt werden. Diese wird ebenfalls von der Steuereinheit 52 über eine Verbin­dung 51 gesteuert und führt die Rechenschritte aus, die in dem Flußdiagramm in Fig. 2a und 2b mit den Blöcken 12, 13, 16, 20 bis 22 und 30 bis 33 angegeben sind. Insbesondere bestimmt die Recheneinheit 54 die Energie im Anfangs­fenster durch Aufsummieren der entsprechenden, von der Steuereinheit im Speicher 50 adressierten Digitalwerte und bildet die mittlere Energie. Diese wird über die Leitung 55 einem Vergleicher 58 zugeführt, der am anderen Eingang aus einem zweiten Speicher 56 über dessen Daten­ausgangsleitung 57 den entsprechenden früher gespeicherten Wert empfängt. Der zweite Speicher 56 wird dabei ebenfalls von der Steuereinheit 52 über die Leitung 59 adressiert. Wenn der auf der Leitung 55 vorhandene, neu ermittelte Wert kleiner ist als der auf der Leitung 57 vorhandene gespeicherte Wert, erzeugt der Vergleicher 58 ein ent­sprechendes Signal und führt es dem zweiten Speicher 56 zu, so daß nun an der adressierten Stelle der neue, auf der Leitung 55 vorhandene Wert gespeichert wird. Dies ent­spricht den Blöcken 14 und 17 in Fig. 2a. In entsprechen­der Weise werden auch die anderen Berechnungen und Vergleiche durchgeführt, wobei die Recheneinheit 54 insbesondere bei den Schritten 21, 31 und 33 die dort erforderlichen Werte aus dem zweiten Speicher 56 über die Leitung 57 erhält. Für das Abspeichern der weiteren Werte beim Schritt 35 führt die Steuereinheit 52 diese Werte über die Leitung 69 dem Dateneingang des zweiten Speichers 56 zu.

    [0032] Ferner ist noch ein Zähler 60 vorhanden, der den Index l zählt. Über die Leitung 65 wird der Zähler 60 von der Steuereinheit 52 auf die Anfangsstellung gesetzt und mit Zähltakten versorgt, wie bei den Schritten 29 und 36 in Fig. 2b angegeben ist. Jeweils wenn der Zähler 60 eine Anzahl L Taktsignale empfangen hat, die dem Unterschied zwischen dem kleinsten und dem größten Signalfenster ent­spricht, gibt er über die Leitung 63 ein Schleifenende­signal an die Steuereinheit 52 ab. Dies entspricht dem Vergleich 37 in Fig. 2b. Der Vergleich 38 wird zweckmäßig in der Steuereinheit 52 durchgeführt.

    [0033] Eine einfache Realisierung der Anordnung nach Fig. 3 besteht darin, daß die Steuereinheit 52 und die Rechen­einheit 54 durch einen Mikroprozessor gebildet werden. Dieser kann dann auch noch die Funktion des Ver­gleichers 58 und des Zählers 60 übernehmen, so daß sich insgesamt ein sehr einfacher Aufbau ergibt.


    Ansprüche

    1. Verfahren zum Bestimmen von Anfangspunkt und End­punkt eines Wortsignals entsprechend einem isoliert gesprochenen Wort in einem Sprachsignal durch Ermittlung eines Extremwertes in einer vom Sprachsignal abgeleiteten Folge von Digitalwerten bei Berücksichtigung von den Extremwert umgebenden Werten des Signalverlaufs und eines Schwellwertes,
    dadurch gekennzeichnet, daß eine Anzahl vorher aufein­anderfolgend eingetroffener Digitalwerte drei benachbarten Fenstern zugeordnet werden, von denen das erste Fenster (Endfenster) eine vorgegebene erste Anzahl (BR) der zuletzt eingetroffenen Digitalwerte, das zweite Fenster (Signalfenster) eine zwischen einem vorgegebenen ersten Wert und einem vorgegebenen größeren zweiten Wert variierende zweite Anzahl (BS1) Digitalwerte und das dritte Fenster (Anfangsfenster) eine vorgegebene dritte Anzahl (BF) Digitalwerte umfaßt, daß für jeden neuen Digitalwert aus den Digitalwerten im ersten Fenster und aufeinanderfolgend für je einen Wert (1) der zweiten Anzahl (BS1) aus den Digitalwerten des zugehörigen dritten Fensters ein Schwellwert (thr) gebildet wird, um den jeder Digitalwert des zweiten Fensters vermindert wird, daß die Summe der so verminderten Digitalwerte für jeden Wert der zweiten Anzahl mit einer höchsten früher auf gleiche Weise gebildeten Summe verglichen und abhängig vom Vergleichsergebnis als neue höchste Summe zusammen mit Lageangaben über die Lage des zweiten Fensters innerhalb der Folge der Digitalwerte gespeichert wird, und daß die zuletzt gespeicherten Lageangaben den Anfangspunkt und den Endpunkt des Wortsignals angeben.
     
    2. Verfahren nach Anspruch 1,
    dadurch gekennzeichnet, daß nur diejenigen Lageangaben, die für eine vorgegebene Anzahl aufeinanderfolgend einge­troffener Digitalwerte unverändert geblieben sind, als Anfangspunkt und Endpunkt verwendet werden.
     
    3. Verfahren nach Anspruch 1 oder 2,
    dadurch gekennzeichnet, daß der Schwellwert aus der Summe der Digitalwerte im ersten und im dritten Fenster und eines Korrekturwertes gebildet wird.
     
    4. Verfahren nach Anspruch 3,
    dadurch gekennzeichnet, daß für jeden neuen Digitalwert beim kleinsten Wert der zweiten Anzahl (BS0) die Summe der Digitalwerte des zweiten Fensters gebildet und abge­speichert wird, wenn eine vorher abgespeicherte zweite Fenstersumme kleiner ist, und die Summe der Digitalwerte des dritten Fensters gebildet und abgespeichert wird, wenn eine vorher abgespeicherte dritte Fenstersumme größer ist, und aus der Differenz der beiden abgespeicherten Fenster­summen der Korrekturwert gebildet wird.
     
    5. Verfahren nach Anspruch 4,
    dadurch gekennzeichnet, daß der Korrekturwert die durch einen konstanten vorgegebenen Signal-Rausch-Verhältniswert dividierte Differenz der beiden Fenstersummen ist.
     
    6. Verfahren nach einem der Ansprüche 1 bis 5,
    dadurch gekennzeichnet, daß als Digitalwert der kleinste von jeweils drei aufeinanderfolgenden digitalisierten Abtastwerten des Sprachsignals verwendet wird.
     
    7. Anordnung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 6, mit einem ersten Speicher zum Aufnehmen von aus einem Sprachsignal abgeleiteten Digital­werten,
    gekennzeichnet durch
    einen zweiten Speicher zur Aufnahme von Zwischenergeb­nissen,
    eine Recheneinheit, die die Digitalwerte aus dem ersten Speicher sowie Zwischenergebnisse aus dem zweiten Speicher empfängt und die Energie in jeweils einem der Fenster sowie die weiteren Zwischenergebnisse bestimmt,
    einen Vergleicher zum Vergleichen von Zwischenergebnissen aus dem zweiten Speicher mit von der Recheneinheit ge­lieferten Werten und zum Steuern des Einschreibens der letzteren Werte in den zweiten Speicher,
    eine Steuereinheit zum Adressieren des ersten und des zweiten Speichers und der Recheneinheit entsprechend den Verfahrensschritten, und
    eine Zählanordnung zum Zählen der unterschiedlichen zweiten Anzahlen von Digitalwerten im zweiten Fenster und zum Abgeben eines Schleifenendesignals an die Steuer­einheit nach einer vorgegebenen Anzahl unterschiedlicher zweiter Anzahlen.
     
    8. Anordnung nach Anspruch 7,
    dadurch gekennzeichnet, daß mindestens die Recheneinheit und die Steuereinheit durch einen Mikroprozessor reali­siert sind.
     




    Zeichnung