SIGNAL PROCESSING SYSTEM

Abstract: A signal processing system in which living body signal such as ECG signals, brain waves, pulse waves, as well as a variety of analog input signals are converted into digital signals through an A/D converter means (1), the converted data are compressed through a data compressing means (2) and are recorded onto a compressed data recording medium (24). The compressed data from the compressed data recording medium (24) are restored through a data decoding means (2′) which has a Huffman decoding means, mode selecting means, and restored data forming means, and are outputted as analog signals.

Description: The present invention relates to a novel signal processing system for compressing and expanding various analog input signals including bioelectric signals such as electrocardiographic signals, electroencephalographic signals, and pulse wave signals. Recently, there has been proposed a new diagnostics assisted by data obtained by recording the results of a real time analysis of bioelectric signals, such as electrocardiographic signals, electroencephalographic signals, and pulse wave signals. However, an extended operation for converting bioelectric analog signals into the corresponding digital signals and recording the data requires an enormous storage capacity, and in most cases, it is difficult to provide a portable recording apparatus for extended recording having a sufficient storage capacity. There is disclosed in US Patent Specification US-A-3,720,875 a data compaction process and an apparatus for converting video signals by ΔM. In particular, there is disclosed an apparatus for accurately detecting an overload change in a variation of the shade of colour of grey level video signals. In the apparatus, a lookahead technique based on a differential encoding is used to set a subsequent code pattern. It should be noted that the differential encoding technique is used only for detecting the above-mentioned overload value, and the set pattern in an oscillation width of an individual signal. There is further disclosed in Japanese Patent Abstract referring to JP-A-56-48737 a coding-decoding device provided with a conventional differential device (ΔM) + a memory means. It should be noted that the device does not employ a Huffman method, and furthermore only an initial bit is stored in the memory means with respect to a signal expressed by a variable bit number, and this is a conventional look-up table method. There is further disclosed in IEEE TRANSACTIONS ON COMMUNICATIONS, Vol.COM-22, No.9, September 1974, pages 1195-1198, an adaptive delta modulation. In this disclosure, the technical discussion is directed to an explanation of how long a time interval should be allowed between a preceding input wave form (signal) and a current input wave form (signal) to detect an overload wave form when the preceding input wave form is compared with the current wave form. The development of a novel system capable of sufficiently recording all of the information represented by bioelectric analog signals by using a memory having a small storage capacity and capable of regenerating all of the information represented by the bioelectric analog signals, has been desired. It is an object of the present invention to provide a novel signal processing system developed to meet the above-mentioned desire. The present invention deals with signal waves produced through linear quantization. When a signal wave has a quantized voltage V(t) at a time t, the digitized signal wave is represented by: V(t) (t = 1, 2, ...,ℓ ) where is the number of samples. When quantization is performed with n bits, the data is represented by n. ℓ bits. In the present invention, the term "data compression" means recording or transmitting a signal wave represented by n. ℓ bits in a lesser number of bits, and the term "decoding" means regenerating the signal wave from the compressed data. The present invention is based on delta modulation (abbreviated to "ΔM" hereinafter) and is a development of adaptive ΔM (abbreviated to "ADM" hereinafter) technology in which the position of a predicted point and the width of the quantization step are varied adaptively according to the characteristics of an optional analog signal such as a bioelectric signal. According to the present invention there is provided a signal processing system provided with an A/D conversion means for converting input singals into digital signals, and data compressing means for compressing the output digital data from the A/D conversion means, the data compressing means including a central processing unit, a non-erasable memory means (ROM) for storing an instruction program for conducting a data processing, and a temporary memory means for temporarily storing the input digital signals, characterized in that said data compressing means (2) further comprises: (a) a delta modulation processing means for converting each of said input digital signals into a sample point in one of a plurality of delta modulation modes in which the position of prediction points and a quantization step width are variably set in accordance with the characteristics of the waveform of said input signals; (b) a mode selecting means for adaptively selecting a mode among a plurality of the modes in accordance with said sample point; and (c) a coding means for conducting a Huffman-coding of the sample point. The present invention will now be described in greater detail by way of examples with reference to the accompanying drawings, wherein:- Figures 1 to 4 are diagrammatic illustrations of assistance in explaining the ADM process carried out by the signal processing system of the present invention; Figures 5a, 5b and 5c are diagrams of assistance in explaining the functions and effects of a signal processing system, in a preferred embodiment, according to the present invention; Figures 6a and 6b are block diagrams of the signal processing system; Figures 7 to 13 are flow charts of algorithm of data compressing and expanding processes. BEST MODE FOR CARRYING OUT THE INVENTION First the ADM process will be described briefly. (1) ΔM ΔM is the most simple mode of differential pulse code modulation. A differential pulse code modulation process quantizes the difference between the present sampled value and the preceding sampled value and requires bits for coding less than quantizing each sampled value. ΔM simplifies the quantization and expresses whether the present sampled value is "greater" or "smaller" than the preceding sampled value by one bit. As illustrated in Fig. 1 (a: signal waveform, b: transmission waveform, c: sampling interval, d: transmission bit string, t: time), since ΔM encodes the difference by one bit, the coding algorithm is simple. However, since only one quantizing step can be changed in one sample interval, ΔM is unable to follow the signal waveform when the inclination of the signal waveform is 1 or greater or -1 or less. (2) ADM ΔM is regarded as a predictive coding system which predicts values which are greater than and smaller than the preceding expanded value, respectively, by Δ, and selects a value having a smaller error from the present sampled value. Fundamentally, ADM is equivalent to ΔM. The method of setting prediction points is designated as the prediction point mode. An example of the prediction point mode will be described hereinafter. As illustrated in Fig. 2a (a: signal waveform, b: prediction point), in a section where the inclination of the signal waveform is sharp, increasing prediction points along the direction of voltage facilitates the follow-up of great variations of the signal waveform. On the other hand, as illustrated in Fig. 2b (a: signal waveform, b: prediction point), in a section where the inclination of the signal waveform is moderate, setting prediction points as indicated by "― ○―" is inefficient. Therefore, prediction points are set as indicated by "――", and the value between the values at the adjacent prediction points may be estimated, without any significant error, by interpolation using those values of the adjacent prediction points. However, an increase in the number of prediction points has an adverse affect on the compression ratio. Nevertheless, as illustrated in Fig. 2b, since the interpolated value estimated during regeneration is not included in the compressed data, it is possible to improve the compression ratio of ADM generally as compared with ΔM. In the drawings, a symbol "X" indicates the present point. (3) Setting and Transition of Prediction Point Mode Features of Digitized Signal: Suppose that an electrocardiogram to be subjected to data compression is sampled at a sampling frequency of 500 Hz, is quantized by linear quantization with eight bits, and the quantization step is approximately 2 µV. Voltage is represented by quantization steps hereinafter. In order to estimate the condition of predicted values, the absolute values of the differences between three successive sampled values were examined (Table 1). The data used herein are electrocardiograms of a perfectly normal individual and the output of an electrocardiographic simulator. As apparent from Table 1, the ratio of the abrupt great change of the difference between two adjacent sampled values is small and the ratio of change as great as two or above is 3% or below. That is, when the inclination of the waveform in a certain section is N, the probability of the inclination of the waveform in the following section becoming N-1, N, or N+1 is high. Accordingly, the algorithm is constituted according to the following policies. (i) In the section where the slope is moderate, several prediction points are set ahead on the time axis only for positions where the inclination is within ±2. Since the probability of inclinations greater than ±2 is small, compression along the time axis will not be effective. (ii) In many sections, the inclination is zero, namely, the voltage is constant, and such sections often appear in succession. Accordingly, when a section in regarded as a section whereat the voltage is constant, prediction points are arranged along the time axis at the same voltage levels as the present point. (iii) In a section where the inclination is sharp, compression along the time axis is not performed. Several prediction points are arranged along the voltage axis at the same time point so that the variation of the waveform can be followed up. (iv) The information relating to the prediction point mode is not particularly encoded. The next mode is decided according to the selected prediction point. (v) The Huffman coding is applied to encoding the prediction points in order to minimize the average code length. Examples of Mode and Mode Transition: Figures 3a to 3e illustrate five examples of the pattern (designated as "mode" hereinafter) of the prediction point mode, and Fig. 4 illustrates an example of mode transition. In Figs. 3a to 3e, a time indicated by ts corresponds to the time coordinate of a data which has just been encoded. Figures 3a to 3e illustrate states wherein the polarity is positive. When the polarity is negative, Figs. 3a to 3e are inverted top-to-bottom. i) Mode of compression along the time axis: Mode A1 (Fig. 3a) The mode A1 is employed when the inclination is moderate. When a data at a time ts + 2 is within the shaded range, prediction points a, b, and c are set. When the data is outside the shaded range, a prediction point d is set and the mode is changed to a mode for a state wherein the inclination is sharp. Mode A2 (Fig. 3b) This mode is employed when the inclination is moderate and the polarity of the original waveform is expected to be definite. When the data at a time ts + 3 is within the shaded range, prediction points a, b, and c are set, and, when not, a prediction point d is set and the mode is changed to a mode for a state wherein the inclination is sharp. Mode c (Fig. 3c) This mode is employed when the voltage is expected to be constant. Lth and Δt are predetermined and the minimum tn meeting the following expression within a period from the time ts + 1 to a time ta is found out. |V(th) - V(ts)| > Ltn When tn cannot be found, a prediction point a is set. When tb < tn ≦ ta and ts + 2 < tn < tb, the prediction points are b and c, respectively. When tn ≦ ts + 2, the prediction point is d and the mode is changed to a mode for a state wherein the inclination is sharp. ii) Mode corresponding to abrupt variation: Mode B1 (Fig. 3d) This mode is selected when the inclination is sharp and the polarity is expected to be indefinite. This mode is effective for preserving the peaks and inflection points of the waveform. Mode B2 (Fig. 3e) This mode is selected when the inclination is sharp and the polarity is expected to be definite. Figure 4 shows a concrete example of the above-mentioned mode transition. In Fig. 4, characters above the slash marks indicate the types of prediction points (a, b, c, d, and e), and the steps (ΔV) and the time intervals (Δt) of the same, and the characters below the slash marks indicate processes for setting the step and time interval of quantization and the inversion of the polarity. (4) Huffman Coding: A code which produces the shortest code length when coding each information source symbol into a uniquely composable code with respect to a given information source, is referred to as a compact code. A method of constituting the compact code is proposed by Huffman, and hence such a code is designated as a Huffman code. A method of constituting a Huffman code will be described hereinafter. (a) A leaf corresponding to each information source symbol is prepared. The probability of occurrence of the information source symbol is entered on each leaf. (b) One node is prepared for two leaves having the least probability and the node is connected to the leaves by branches. 0 and 1 is assigned to one of the two leaves and to the other, respectively. The sum of the probabilities of these two leaves is entered on the node to regard this node as a new leaf, that is, the branches extending from the node are considered to be removed. (c) When only one leaf is left, the code constituting process is completed and, when not, the process returns to (b). The data tabulated in Table 1 was subjected to the Huffman coding process to obtain a code length (bit). The results are summarized in Table 2. (5) Data Decoding: The sample point of the compressed data is decoded by processing the compressed data through the Huffman decoding process, and the processing through the mode transition process (mode selection process). The signal waveform can be regenerated satisfactorily, for example, simply by the linear interpolation of the value between the values of the regenerated data on the basis of the sample point. It was found through comparative examination of the system of the present invention and the AZTEC system in respect of compression ratio and approximate error on the basis of the above-mentioned description that the present invention has various effects. For the comparison of compression ratio, the following coding was performed. First, quantization steps ΔV(ti) for sample points V(ti) were obtained by: ΔV(ti) = V(ti) - V(t i-1 ) Then, the quantization steps were coded by the code lengths shown in Table 3 and the compression ratio η was obtained by η = Baft/Bpre, where Bpre is the total number of bits of the data of the original waveform and Baft is the total number of bits-of-the compressed data. The approximate error of the regenerated waveform was determined by the RMSE (Root Mean Square Error) method expressed by: where V(t) is the original waveform, V'(t) is the regenerated waveform, and ℓ is the number of samples. It was found that the system of the present invention and the AZTEC system are similar in respect of the compression ratio and their compression ratios were about 10%, whereas there was a great difference between the system of the present invention and the AZTEC system in the approximate errors; the approximate errors were 1.0 or less for the system of the present invention and 1.5 to 4.3 for the AZTEC system. Figures 5a, 5b and 5c illustrate the original waveform (a), the waveform regenerated by the AZTEC system, and the waveform (c) regenerated by the system of the present invention, respectively. It is apparent that the waveform regenerated by the system of the present invention represents the features of the original waveform very accurately. In view of application to extended electrocardiographic recording, the time required for coding according to the coding system of the present invention was measured. A program written by FORTRAN 80 was executed on Z80 of 6 MHz clock frequency. Results showed that the average time required for coding one sample point was 0.84 msec. Possible coding time per one sample point for the realtime compression of an electrocardiogram obtained at a sampling frequency of 500 Hz is 2 msec or less. Accordingly, the coding system of the present invention meets the requisite condition for realtime compression. (6) Embodiment of the Invention: Figure 6a is a block diagram of a data compression system, in a preferred embodiment, according to the present invention. The data compression system comprises A/D conversion means 1 for converting input analog signals into digital signals and data processing means 2 comprising a central processing unit (CPU) 21, a read-only memory (ROM) 22, a random access memory (RAM) 23 and a compressed data recording medium 24. The CPU 21 reads an instruction program stored in the ROM 23 to execute data processing. The CPU 21 receives input digital signals given thereto by the A/D conversion means 1 and stores the input digital signals temporarily in the RAM 23. Then, the CPU 21 processes the input digital data through ADM in accordance with the algorithm of ADM, compresses the original signal waveform by Huffman-coding the sample values obtained by the ADM process, and-then records the compressed data in the compressed data recording medium 24. The algorithm of the ADM process will be described more specifically hereinafter with reference to Figs. 7 to 12. Figure 7 is a general flow chart of the algorithm of the ADM process. This algorithm is a routine comprising Step 1 for setting the mode of prediction points for the first data at Mode A₁ , Step 2 for fetching the data stored temporarily in the RAM 23, Step 3 for evaluating the prediction points according to the mode of the same, Step 4 for deciding a sample value, Step 5 for transiting the mode of the prediction points (mode selection), Step 6 for assigning a Huffman code to the sample data, and Step 7 for recording the coded data on the compressed data recording medium 24. Upon the completion of Step 7, the routine returns to Step 2 for-data input. Figures 8 to 12 are algorithms of the ADM process for the modes A₁ , A₂ , B₁ , B₂ , and C, corresponding to Steps 3 to 5, respectively. In Fig. 8 (Mode A₁), for instance, a decision is made whether or not the input data is applicable to the prediction point a of the corresponding mode. If so, the prediction point a is decided as a sample point a and changes the mode to Mode A₂. If not, the routine advances to a step for deciding whether or not input data is applicable to the prediction point b of the corresponding mode. Thus, the following steps are executed sequentially. The processes for other modes shown in Figs. 9 to 12 are substantially the same as the process of Fig. 8. In Figs. 8 to 12, the quantization step width is represented by ΔV, and Step "ΔV = 2" is a step to set the quantization step width at 2, Step "ΔV = 1?" is a step to decide whether or not the quantization step width is 1, and Step "ΔV = ΔV ± 1" is a step to increase or decrease the quantization step width by 1, which are the same for time interval Δt. Figure 6b is a block diagram of a data regenerating system, in a preferred embodiment according to the present invention. The ystem comprises a compressed data recording medium 24 and data processing means 2' including a CPU 21', a ROM 22', a RAM 23', and a regenerated waveform output unit 25. Figure 13 shows a general regeneration algorithm which is executed by the data processing means 2'. The routine of the regeneration algorithm comprises Step 1 for setting the mode of prediction points for the first compressed data at the Mode A, Step 2 for fetching the compressed data stored temporarily in the RAM 23', Step 3 for decoding the Huffman code, Step 4 for recording the decoded data, and Step 5 for transiting the mode of the prediction point. After Step 5, the routine returns to Step 2. The details of the algorithm for each mode of Step 5, namely, the mode transition step, are equivalent to those of Figs. 8 to 12, except that the step for deciding the sample point is omitted. However, the Huffman-coded data corresponding to the compressed data will be given to the step for deciding the prediction point, therefore, the decision is made on the basis of the Huffman code at the prediction point decision step. Part of the results of execution of the embodiment was described hereinbefore. As apparent from the foregoing description, the system of the present invention is very useful as means for compressing and regenerating optional analog signal waveforms, and hence the system is an effective means universally applicable not only to bioelectric signal processing, such as processing electrocardiographic signals, but also to various data communication systems.

Claims: A signal processing system provided with an A/D conversion means (1) for converting input signals into digital signals, and data compressing means (2) for compressing the output digital data from the A/D conversion means, the data compressing means including a central processing unit (21), a non-erasable memory means (ROM) (22) for storing an instruction program for conducting a data processing, and a temporary memory means (23) for temporarily storing the input digital signals, characterized in that said data compressing means (2) further comprises: (a) a delta modulation processing means for converting each of said input digital signals into a sample point in one of a plurality of delta modulation modes in which the position of prediction points and a quantization step width are variably set in accordance with the characteristics of the waveform of said input signals; (b) a mode selecting means for adaptively selecting a mode among a plurality of the modes in accordance with said sample point; and (c) a coding means for conducting a Huffman-coding of the sample point. A signal processing system according to claim 1, wherein said input signal is an electrocardiographic signal. A signal processing system according to claim 1, characterized in that said system further comprises: (d) a regenerating means for regenerating said sample point subjected to said Huffman-coding said regenerating means including a Huffman decoding means for conducting a Huffman-decoding of said input digital signals corresponding to the compressed data; (e) a mode selecting means for adaptively selecting a mode among a plurality of the modes on the basis of the input digital signals; and (f) a means for providing continuous regenerated data through a linear interpolation of the values between the regenerated data points corresponding to the drived sample points. A signal processing system according to claim 3, wherein said input signal is an electrocardiographic signal.

Inventors: IMAI, HIDEKI YOKOHAMA PARK TOWN J-902, SASAKI, MINORU
Applicants: KABUSHIKI KAISYA ADVANCE
Application year: 1985
Main classification: H03M7
IPC codes: H03M7, A61B5, H03M3