An Adaptive Algorithm for Morse Code Recognition

Similar documents
APPLY NEURAL NETWORKS TO MORSE CODE RECOGNITION

AN IMPROVED CHINESE PHONETIC MORSE CODE KEY-IN SYSTEM FOR SEVERELY DISABLED INDIVIDUALS

Performance Evaluation of different α value for OFDM System

Adaptive Lattice Filters for CDMA Overlay. Wang, J; Prahatheesan, V. IEEE Transactions on Communications, 2000, v. 48 n. 5, p

Variable Step-Size LMS Adaptive Filters for CDMA Multiuser Detection

Automatic Morse Code Recognition Under Low SNR

A VSSLMS ALGORITHM BASED ON ERROR AUTOCORRELATION

A Novel Adaptive Algorithm for

Comm. 502: Communication Theory. Lecture 6. - Introduction to Source Coding

Fixed Point Lms Adaptive Filter Using Partial Product Generator

Analysis of LMS and NLMS Adaptive Beamforming Algorithms

Speech Enhancement Based On Noise Reduction

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 50, NO. 12, DECEMBER

Lecture5: Lossless Compression Techniques

Narrow-Band Interference Rejection in DS/CDMA Systems Using Adaptive (QRD-LSL)-Based Nonlinear ACM Interpolators

IN357: ADAPTIVE FILTERS

Adaptive Noise Reduction Algorithm for Speech Enhancement

Architecture design for Adaptive Noise Cancellation

EE 6422 Adaptive Signal Processing

Implementation of decentralized active control of power transformer noise

International Journal of Scientific & Engineering Research Volume 9, Issue 3, March ISSN

A Three-Microphone Adaptive Noise Canceller for Minimizing Reverberation and Signal Distortion

Evaluation of a Multiple versus a Single Reference MIMO ANC Algorithm on Dornier 328 Test Data Set

INTERFERENCE REJECTION OF ADAPTIVE ARRAY ANTENNAS BY USING LMS AND SMI ALGORITHMS

for Single-Tone Frequency Tracking H. C. So Department of Computer Engineering & Information Technology, City University of Hong Kong,

MITIGATING INTERFERENCE TO GPS OPERATION USING VARIABLE FORGETTING FACTOR BASED RECURSIVE LEAST SQUARES ESTIMATION

Beam Forming Algorithm Implementation using FPGA

Optimal Adaptive Filtering Technique for Tamil Speech Enhancement

AN IMPROVED NEURAL NETWORK-BASED DECODER SCHEME FOR SYSTEMATIC CONVOLUTIONAL CODE. A Thesis by. Andrew J. Zerngast

Performance Analysis of gradient decent adaptive filters for noise cancellation in Signal Processing

Adaptive Kalman Filter based Channel Equalizer

Performance improvement in beamforming of Smart Antenna by using LMS algorithm

Study of Different Adaptive Filter Algorithms for Noise Cancellation in Real-Time Environment

The Simulated Location Accuracy of Integrated CCGA for TDOA Radio Spectrum Monitoring System in NLOS Environment

Acoustic echo cancellers for mobile devices

A Novel Hybrid Technique for Acoustic Echo Cancellation and Noise reduction Using LMS Filter and ANFIS Based Nonlinear Filter

Mel Spectrum Analysis of Speech Recognition using Single Microphone

ADAPTIVE IDENTIFICATION OF TIME-VARYING IMPULSE RESPONSE OF UNDERWATER ACOUSTIC COMMUNICATION CHANNEL IWONA KOCHAŃSKA

Coding for Efficiency

FAST ADAPTIVE DETECTION OF SINUSOIDAL SIGNALS USING VARIABLE DIGITAL FILTERS AND ALL-PASS FILTERS

Chapter 4 SPEECH ENHANCEMENT

High-speed Noise Cancellation with Microphone Array

3rd International Conference on Machinery, Materials and Information Technology Applications (ICMMITA 2015)

A Wireless Communication using Bubls

Blind Dereverberation of Single-Channel Speech Signals Using an ICA-Based Generative Model

A New Least Mean Squares Adaptive Algorithm over Distributed Networks Based on Incremental Strategy

DOWNLINK TRANSMITTER ADAPTATION BASED ON GREEDY SINR MAXIMIZATION. Dimitrie C. Popescu, Shiny Abraham, and Otilia Popescu

Achievable-SIR-Based Predictive Closed-Loop Power Control in a CDMA Mobile System

Application of Artificial Intelligence in Mechanical Engineering. Qi Huang

Transmit Power Allocation for BER Performance Improvement in Multicarrier Systems

Model Validity Tests for RBF Network

Speech Synthesis using Mel-Cepstral Coefficient Feature

Analysis on Extraction of Modulated Signal Using Adaptive Filtering Algorithms against Ambient Noises in Underwater Communication

Maximum Likelihood Sequence Detection (MLSD) and the utilization of the Viterbi Algorithm

ADAPTIVE channel equalization without a training

Classification of Analog Modulated Communication Signals using Clustering Techniques: A Comparative Study

Application of Adaptive Spectral-line Enhancer in Bioradar

Performance and Complexity Comparison of Channel Estimation Algorithms for OFDM System

International Journal of Computer Trends and Technology (IJCTT) Volume 40 Number 2 - October2016

Lab/Project Error Control Coding using LDPC Codes and HARQ

Detection of SINR Interference in MIMO Transmission using Power Allocation

Performance analysis of MISO-OFDM & MIMO-OFDM Systems

Some Properties of RBF Network with Applications to System Identification

MATHEMATICAL MODELS Vol. I - Measurements in Mathematical Modeling and Data Processing - William Moran and Barbara La Scala

FOURIER analysis is a well-known method for nonparametric

Performance Enhancement of Adaptive Acoustic Echo Canceller Using a New Time Varying Step Size LMS Algorithm (NVSSLMS)

Performance Evaluation of Nonlinear Equalizer based on Multilayer Perceptron for OFDM Power- Line Communication

On the Estimation of Interleaved Pulse Train Phases

LECTURE VI: LOSSLESS COMPRESSION ALGORITHMS DR. OUIEM BCHIR

An Adaptive Feedback Interference Cancellation Algorithm for Digital On-channel Repeaters in DTTB Networks

ISSN: International Journal of Innovative Research in Science, Engineering and Technology

Performance Comparison of ZF, LMS and RLS Algorithms for Linear Adaptive Equalizer

Steady-State MSE Convergence of LMS Adaptive Filters with Deterministic Reference Inputs with Applications to Biomedical Signals

int.,.noil. 1989December

IDENTIFICATION OF SIGNATURES TRANSMITTED OVER RAYLEIGH FADING CHANNEL BY USING HMM AND RLE

Autonomous Decentralized Synchronization System for Inter-Vehicle Communication in Ad-hoc Network

Lecture 13 February 23

Background Pixel Classification for Motion Detection in Video Image Sequences

On Comparison of DFT-Based and DCT-Based Channel Estimation for OFDM System

Impulsive Noise Reduction Method Based on Clipping and Adaptive Filters in AWGN Channel

An HARQ scheme with antenna switching for V-BLAST system

Bayesian Estimation of Tumours in Breasts Using Microwave Imaging

Tan-Hsu Tan Dept. of Electrical Engineering National Taipei University of Technology Taipei, Taiwan (ROC)

A Simplified Extension of X-parameters to Describe Memory Effects for Wideband Modulated Signals

Reduction of Musical Residual Noise Using Harmonic- Adapted-Median Filter

A Novel Adaptive Method For The Blind Channel Estimation And Equalization Via Sub Space Method

SPEECH enhancement has many applications in voice

Chapter 2 Channel Equalization

CS101 Lecture 01: Introduction. What You ll Learn Today

A Prototype Wire Position Monitoring System

Use of random noise for on-line transducer modeling in an adaptive active attenuation system a)

Channel Capacity Estimation in MIMO Systems Based on Water-Filling Algorithm

Comb type Pilot arrangement based Channel Estimation for Spatial Multiplexing MIMO-OFDM Systems

REAL TIME DIGITAL SIGNAL PROCESSING

Jitter in Digital Communication Systems, Part 1

EC 2301 Digital communication Question bank

Neural Network with Median Filter for Image Noise Reduction

Mikko Myllymäki and Tuomas Virtanen

Block Processing Linear Equalizer for MIMO CDMA Downlinks in STTD Mode

Fig(1). Basic diagram of smart antenna

Transcription:

An Adaptive Algorithm for Morse Code Recognition by Cheng-Hong Yang Dept of Electronic Engineering National Kaohsiung Institute of Technology Kaohsiung, Taiwan 807 Ching-Hsing Luo ABSTRACT The Morse code is an international communication language that is simple, speedy, and low cost. The automatic recognition of Morse code is difficult because maintaining a stable typing rate is not easy. In this paper, a suitable adaptive automatic recognition method, the variable degree variable step size Least-Mean-Square algorithm, is provided and its procedure is divided into three modules: character separation, character recognition, and adaptive processing. Experimental results showed that the proposed method obtained high recognition rate. Keywords: Morse code, Adaptive signal processing, Least-Mean-Square. 1. Introduction Samuel F. Morse is best known for the coding scheme that carries his name. Morse code, the most general means of transmitting signals, is transmitted as a tone-silent time series. A dot represented as a short beep or a dash represented as a longer beep are defined as tone intervals (switch down). A dot-space, which is a short pause between dots and dashes, a character-space, which is a longer pause between characters, or a word-space, which is a much longer pause between words, are defined as silent intervals (switch up). Actually, the word-space is represented by a tone-silent code; therefore, a much longer pause need not be used. Subsequently, Morse code is very simple and can be transmitted by just a switch. Therefore, in some circumstances, it could become a useful communication tool for the disabled who can handle a single switch. In general, one switch Morse code can be utilized by persons whose hand coordination and dexterity are impaired, but mental and cognition levels are at least fair to good. Morse code has alternatively been proposed as an efficient auxiliary method [1-6]. Many papers have been presented to discuss how to perform the typing of text on a reduced set of switches with an efficient approaching one key press per selected character [7-10]. However, in the recognition of Morse code, a stable typing rate is strictly required. This restriction is a major hindrance for disabled persons to have Morse code as a useful tool. The Least-Mean-Square (LMS) algori-thm [11] is one of the most popular algorithms in adaptive signal processing. A lot of variants of LMSs have been extensively analyzed in the literature [13-15]. In this paper, the variable degree variable step size LMS algorithm [12] was applied to solve the problem of Morse code recognition. Experimental result shows that the proposed method provided high recognition rate. The rest of this paper is organized as follows. In the next section, the new Morse code recognition method is presented. The experimental result is shown in Section 3. Finally, concluding remarks are made in Section 4. 2. Method A tone ratio (dot to dash) has to be 1:3 according to the definition of Morse code. That means if the file:///c /Documents%20and%20Settings/Ponn/Desktop/ijcim/past_editions/1999V07N1/ijcim_ar1.htm (1 of 7)22/8/2549 18:32:14

duration of a dash is taken to be one unit, then that of a dash is three units. In addition, the silent ratio (dot-space : character-space : word-space) has to be 1:3:7. In another words, the space between the components of one character is one unit, between characters is three units and between words is seven units. In this paper, the Morse code recognition method is divided into three modules: character separation, character recognition, and adaptive processing. The space between characters is first identified in the character separation section so that the codes of an unknown character can be regarded as a set of messages to be translated into its corresponding character in the character recognition section. The character recognition is based on the Euclidean distance between the codes of the unknown character and the codes set in the Morse code table. If the character in the table has the minimum Euclidean distance, it is chosen as the unknown character. In order to match with the typing speed, the average of the space length in a character is sent to the adaptive processing section, and the character separation section then identifies the space between characters based on the processing output. A Morse code character, x i, is represent-ed as follows: e 1 (x i ), b 1 (x i ),, e j (x i ), b j (x i ),, e n (x i ), b n (x i ), 1 i n, where e j (x i ): when a key is pressed down, it is presented as dot or dash, which is the duration of ith Morse code element of the input character x i. b j (x i ): when a key is held up, it is presented as one of three spaces: the space between components of one character, the space between characters, or the space between words, which is the duration of ith space of the input character x i. n: the total number of keyed-in Morse code elements in x i. Character Separation Character separation is used for identification of the space between characters and isolation of the Morse code elements of a character. For example, if a data stream of characters is encoded in Morse code elements, these elements are then identified as either space between characters or isolated elements of a character. The procedure for character separation is shown as follows: 1. Assign the index j=1. 2. If b j (x i ) < 2S 1, then go to step 3, otherwise go to step 4. 3. Let j=j+1 and save e j (x i ), then go to step 2. 4. If b j (x i ) > 5S 1, then it is the end of a word, otherwise go to step 5. 5. The key-in Morse elements in x i character are encoded as e j (x i ) for j=1~n. 6. To separate the next character go to step 1, if any. Due to the initial value S 1 is absent, the first character x i can not be isolated immediately. The initial standard space length S 1 is obtained by taking the first nine values of silent elements as the reference values; then, all of the values taken are sorted by descending order. After the sorting, the relationship file:///c /Documents%20and%20Settings/Ponn/Desktop/ijcim/past_editions/1999V07N1/ijcim_ar1.htm (2 of 7)22/8/2549 18:32:14

between each value is compared. If a value is larger than any other value twice, the larger value is represented as long (L) and the smaller one is represented as short (S). Once the relationship is determined, the average value of these nine values is calculated and assigned as the initial standard space length S 1. For example, assume the Morse code digital stream as follows: 423 255 156 180 297 290 79 2701 469 934 181 1557 89 351 805 360 845 309 808 1179 562, in which odd position data is defined as tone while even position data, underlined, is defined as silent. The first nine silent value were sorted as follows: 2701, 1557, 934, 360, 351, 309, 290, 255, and 180. After sorting, the first three values (2701, 1557, and 934) were presented as L and the rest of them were presented as S. The sum of long silent values is divided by 3 and the sum of short silent values are calculated, then S 1 is the average value of the sum of long and short values. S 1 = (sum of long/3 + sum of short) / number of elements S 1 = [(2701+1557+934)/3 + 360+351+309+ 290+255+180] / 9 = 386.30 Once the initial standard space length is obtained, the data stream is separated into character set and space. After the Morse code elements of a character is isolated from a data stream, the elements will be recognized in the character recognition section. Character Recognition The Morse code table is consists of a set of Morse code elements which contains 10 digital (0-9) and 26 English characters (A-Z). These code elements are able to simplify as a set of numbers. As shown in Figure 2, 1 is coded as.----, which is simply presented as (1, 3, 3, 3, 3). 1 2 3 (1, 3, 3, 3, 3) (1, 1, 3, 3, 3) (1, 1, 1, 3, 3) Figure 2. A simple representation of Morse code The Euclidean distance is calculated between the codes of the unknown character and the codes set in the Morse code table. The procedure for the minimum Euclidean distance method is shown as follows: 1. Read each tone value of the unknown character code set, e j (x i ). 2. Normalize e j (x i ) by using the minimum e j (x i ), e j (x i )/min(e j (x i )), for j=1~n 3. Calculate the roots of the sum of the square distances, d i, between the normalized e j (x i ) and the character, e j (t i ), of Morse code table, where 4. The character in the Morse code table with normalized e j (x i ) has the shortest Euclidean distance Min(di), it is determined as the unknown character. file:///c /Documents%20and%20Settings/Ponn/Desktop/ijcim/past_editions/1999V07N1/ijcim_ar1.htm (3 of 7)22/8/2549 18:32:14

For example, assume the Morse code elements in an unknown character as follows: 423, 156, 297, and 79, in which the minimum tone code element is 79. After normalization with the minimum tone code element, the quotients among the four Morse elements are 5.35, 1.97, 3.76, and 1.0. Following the shortest Euclidean distance is obtained from the known character C (as 3, 1, 3, 1) in the Morse code Table. Thus, C is chosen as the unknown character. Adaptive Processing The adaptive filtering or system identification problem being considered is to try to adjust a set of filter weights so that the system output tracks a desired signal. Let the input vector to the system be denoted by X k and the desired scalar output be d k. These processes are assumed to be related by the equation d k = X k T W k * + e k where e k is a zero mean Gaussian indepen-dent sequence, independent of the input process X k. W * k is randomly varying according to the equation W k+1 * = aw k * + Z k where a is less than but close to 1, and Z k is an independent zero mean sequence, independent of X k and e k, with covariance E{Z k Z T } = σ 2 z I δ kj, δ kj being the Kronecker delta function. The input process X k is assumed to be a zero mean independent sequence with covariance E(X k X T k ) = R, a positive definite matrix. The LMS computes a set of weights W k that seeks to minimize E(d k X T k W k )2. Each adaptive weight W k is of the form W k+1 = W k + µ k X k ε k where ε k = d k - X T k W k µ is the step-size parameter that controls the speed of convergence as well as the steady-state and/or tracking behavior of the adaptive filter. The selection of µ is very critical for the LMS algorithm. A small µ (small compared to the reciprocal of the input signal strength) will ensure small misadjustments in steady state, but the algorithm will converge slowly and may not track the nonstationary behavior of the operating environment very well. On the other hand, a large µ will in general provide faster convergence and better tracking capabilities at the cost of higher misadjustments. The algorithm utilized the current data to compute a new weight vector using the weight update recursion of the standard LMS with step size µ. The new weight vector, together with the current data, are then utilized to update again the desired weight vector using the standard LMS weight update recursion with step size µ. Each adaptive weight W k is adjusted according to the equation where α 2 (k) = 2µ (1 - µ X T (k)x(k)) where the subscript on the α (n) is used to indicate the degree, and file:///c /Documents%20and%20Settings/Ponn/Desktop/ijcim/past_editions/1999V07N1/ijcim_ar1.htm (4 of 7)22/8/2549 18:32:14

is an estimate of the gradient. The variable degree variable step size LMS algorithm used serves to cleverly change the standard dot length to predict an unstable typing speed generated by the disabled. The average of space b j (x i ) (i = 1~n-1) in x i is the ith input data of the algorithm. The algorithm with nine weights is used in this paper. 3. Experimental Results and Discussion Two groups of expert testing data, EXP1 and EXP2, were tested in order to investigate the efficiency of the proposed method. EXP1 testing data, number from Exp101 to Exp115, are collected from 15 abled peoples who are trained for a long period of time by typing 100 identical characters. EXP2 testing data, numbered from Exp201 to Exp215, are collected from 15 experts in the military wireless service by typing 100 identical characters. The experimental results are shown in Table 1. The average number of matches for the EXP1 and EXP2 are 88.73 and 90.53, respectively. As it was expected, the experts showed a little higher number of matches than the nonexperts. The experimental results indicated that the different initial S 1 turned into different recognition rate. The incorrect recognition might be generated in two main errors: character separation errors and character recognition errors. If the space between 'dot' and 'dash' within a character has unusual longer length, that will be mistaken as the space between characters. Once an incorrect character separation is generated, the character will be split into two characters so that the character recognition will be split into two characters so that the recognition will be affected. The character recognition error is due to the typist's personality. If the typing speed is unstable, such as longer or shorter than Table 1. The recognition result for two types of test problems. Problems Number of matches Problems Number of matches Exp101 93 Exp201 95 Exp102 93 Exp202 98 Exp103 92 Exp203 97 Exp104 94 Exp204 94 Exp105 87 Exp205 80 Exp106 86 Exp206 81 Exp107 91 Exp207 94 Exp108 86 Exp208 94 Exp109 88 Exp209 89 Exp110 84 Exp210 97 Exp111 84 Exp211 85 Exp112 89 Exp212 87 Exp113 92 Exp213 90 Exp114 84 Exp214 90 Exp115 88 Exp215 87 file:///c /Documents%20and%20Settings/Ponn/Desktop/ijcim/past_editions/1999V07N1/ijcim_ar1.htm (5 of 7)22/8/2549 18:32:14

Average 88.73 Average 90.53 the standard length, a character will be mismatched in the recognition. Usually, every one has his own typing speed. The system should provide adequate adjustment for the length of dot or dash. Because one types for a long period of time, one s typing might cause errors when the typist becomes tired. For example, it begins with 300ms to 100ms for the length of dash to dot, but it might change to 900ms to 300ms after a long period of typing. However, according to experience, a person's typing rate is generally constant over a short period, the person's present typing rate is similar to the typing rate of the previous several words. Therefore, in order to increase the recognized rate, the tone code element in the Morse code table has to be adjusted by a format which is designed for the individual. In addition, the adjustment should be based on the previous typing speed. It means that tone length has to be renewed after each character has been recognized. In this study, the defect of the new developed method is only adjusting space values and sometimes it produced some mistakes during the adaptive process. Thus, to have better performance, more efforts and adjustment should be considered in the process, such as in addition to modify into space values, tone values should be adjusted within the adaptive process. The process to modify tone values might use statistic method or similar method as the adjustment of space. Either of these two methods should provide better results. 4. Conclusions The Morse code is an international communication language that is simple, speedy, and low cost. However, automatic recognition of the Morse code is difficult, because maintaining a stable typing rate is not easy. Therefore, a suitable adaptive automatic recognition method is needed. In this paper, we presented an adaptive algorithm for Morse code recognition. The method was applied to 30 test problems. Experimental results showed that the proposed method obtained great recognition rate. In the future study, we expect to apply this method to the people with physical impairment. Moreover, Neural network and genetic search will also be used to solve the Morse code recognition problems. Acknowledgements This work was supported in part by the National Science Council R.O.C under contract NSC-88-2614- E-151-001. References 1. C.-H. Luo and C.-H. Shih, Adaptive Morse-coded single-switch comm- unication system for the disabled, Int. J. of Biomed. Comput. 41 (1996) 99-106. 2. C.-H. Shih and C.-H. Luo, A Morse-Coded recognition system with LMS and matching algorithms for persons with disabilities, Int. J. of Medical Informatics 44 (1997) 193-202. 3. C.-H. Shih and C.-H. Luo, Adaptive single-switch communication sys- tem for the disabled, Journal of Biomedical Engineering Applica- tions, Basis and Communications 1994, 551-556. 4. S. P. Levine, J. R. D. Gauger, L. D. Bwera, K.J. Khan, A comparison of mouth stick and Morse code text inputs, AAC augmentative and alternative Communication 2, 51 (1986). 5. L. N. Goble. and H.A. Colle, High-speed Morse code training, Proceedings of the IEEE 1985 National Aerospace and Electronics Conference, NAECON, 1985, 944-951. 6. R. Trace and D. Center, Two switch auto-repeat Morse code, Waisman Center, University of Wisconsin-Madison, 1984. 7. D. Bearden, Mobile unit promotes training, hiring handicapped, Institute for electronic and Electrical Engineering, July (1981) 150-151. 8. D. W. Lywooed and J. J. Vasa, Computer-terminal operating and communication aid for the file:///c /Documents%20and%20Settings/Ponn/Desktop/ijcim/past_editions/1999V07N1/ijcim_ar1.htm (6 of 7)22/8/2549 18:32:14

severely handicapped, Medical and Biolo- gical Engineering, 12 (1974) 693-695. 9. D. A. Shannon, W. S. Staewen, J. Miller, and B. S. Cohen, Morse-code controlled computer aid for the non-vocal quadriplegic, Medical Instru- mentation, 15 (1981) 341-343. 10. A. Thomas, Communication devices for the non-vocal disabled, Computer, 14 (1981) 25-30. 11. B. Widrow and S. D. Stearns, Adaptive Signal Processing, Englewood Cliffs, NJ: Prentice Hall. 12. M. A. Khasawneh and K. A. Mayyas., A Newly Derived Variable Degree Variable Step Size LMS Algorithm, Int. J. Electronics, 1995, Vol. 79, No. 3, 255-264. 13. V. J. Mathews and Z. Xie, (1993), A Stochastic Gradient Adaptive Filter with Gradient Adaptive Step Size, IEEE Transactions on Signal Processing, Vol. 41, No. 6, June, 2075-2075-2087. 14. R. H. Kwong and E. W. Johnston, (1992), A variable Step Size LMS Algorithm, IEEE Transactions on Signal Processing, Vol. 40, No. 7, July, 1633-1642. 15. R. W. Harris, D. M. Chabries, and F. A. Bishop, (1986), A Variable Step (VS) Adaptive Filter Algorithm, IEEE Transactions on Acoustics, Speech, and Signal Processing, Vol. ASSP-34, No. 2, April, 309-316. Assumption University of Thailand Huamark, Bangkok 10240, Thailand For comment, Please contact WebMaster file:///c /Documents%20and%20Settings/Ponn/Desktop/ijcim/past_editions/1999V07N1/ijcim_ar1.htm (7 of 7)22/8/2549 18:32:14