A method for saturation diving heliumspeech unscrambling based on multi-objective optimization, comprising at least one diver and one filter, wherein the method comprises:
- step 1:
- selecting a filter structure—selecting an appropriate filter as the filter of a heliumspeech unscrambler;
- step 2:
- constructing a language phonetic symbol library—according to different working languages of the driver for saturation diving, constructing the language phonetic symbol library P={Pn}, where n=1, 2, . . . , N, and N is the number of phonetic symbols in the language phonetic symbol library;
- step 3:
- constructing a working word library—according to requirements for the saturation diving operation specification and working languages, constructing the working word library W={wm} of the diver for the saturation diving operation, where m=1, 2, . . . , M, and M is the number of words in the working word library;
- step 4:
- generating a phonetic symbol standard speech library—under normal atmospheric pressure, the diver i reading phonetic symbols Pn in the language phonetic symbol library P one by one, to obtain a phonetic symbol standard speech signal xi,n(t1), where i=1, 2, . . . , I, 0≤t1≤T1, I is the number of divers, and T1 is a duration of the phonetic symbol speech signal;
- and sampling the signal xi,n(t1) to obtain a discrete signal xi,n(k1) of xi,n(t1), to generate the phonetic symbol standard speech library X={xi,n(k1)}, where k1=1, 2, . . . , K1, and K1 is a sequence length of the discrete signal xi,n(k1) of the phonetic symbol standard speech signal;
- step 5:
- generating a working word speech library—under normal atmospheric pressure, the diver i reading words in the working word library W word by word to obtain a working word speech signal zi,m(t2), where 0≤t2≤T2, and T2 is a duration of the working word speech signal;
- and sampling a working word speech signal zi,m(t2) to obtain a discrete signal zi,m(k2) of zi,m(t2), to generate the working word speech library Z={zi,m(k2)}, where k2=1, 2, . . . , K2, and K2 is a sequence length of the discrete signal zi,m(k2) of the working word speech signal;
- step 6:
- generating a phonetic symbol heliumspeech library—under the environment of saturation diving target depth, the diver i reading the phonetic symbols Pn in the phonetic symbol library P one by one to obtain a phonetic symbol heliumspeech signal yi,n(t1), where 0≤t1≤T1;
- and sampling the signal yi,n(t1) to obtain a discrete signal yi,n(k1) of the signal yi,n(t1), to generate the phonetic symbol heliumspeech library Y={yi,n(k1)};
- step 7:
- determining a filter impulse response coefficient—taking the discrete signal yi,n(k1) of the heliumspeech phonetic symbol of the diver i at the saturation diving target depth as an input signal of the filter to obtain the filter impulse response coefficient hi(j) for the diver i at the target depth, so that an error between an output signal yi,n(k1)*hi(k1) of the filter and a corresponding phonetic symbol standard speech signal xi,n(k1) is minimized, where j=1, 2, . . . , J, J is the number of the filter impulse response coefficients, “*” is a convolution operation symbol, and for k1>J, hi(k1)=0;
- step 8:
- tagging the heliumspeech—the diver i diving to the target depth for saturation diving operation, and tagging and sampling a working speech of the diver i during saturation diving operation word by word to form the tagged heliumspeech signal S={sl(k2)}, where l=1, 2, . . . , L, and L is the number of words in the working heliumspeech of the diver i;
- step 9:
- letting l=1;
- step 10:
- correcting the heliumspeech—selecting the filter impulse response coefficient hi(j), which is correspond to the diver i and his saturation diving target depth, as the filter impulse response coefficient, and correcting the tagged working heliumspeech signal sl(k2) of the diver i to obtain the corrected tagged heliumspeech signal ul(k2),
- ul(k2)=sl(k2)*hi(k2);
- where “*” is the convolution operation symbol, k2=1, 2, . . . , K2, and for k2>J, hi(k2)=0;
- step 11:
- unscrambling the heliumspeech—comparing the corrected tagged heliumspeech signal ul(k2) with the working word speech zi,m(k2) in the working word speech library Z word by word and calculating an error εm therebetween;
- and then, taking a working word speech with the smallest error in the working word speech library Z or a word in the working word library W corresponding to the working word speech with the smallest error in the working word speech library Z as an unscrambled output vi of the heliumspeech;
- and updating the filter coefficient as follow:
- hi(j)=hi(j)+Δεb;
- where Δ is an updating step size for the filter coefficient, and εb is the smallest error calculated in the step;
- and
- step 12:
- outputting the heliumspeech—if l is greater than and equal to L, outputting the unscrambled heliumspeech V={vl} to complete the heliumspeech unscrambling;
- otherwise, letting l=l+1, and returning to step 10 to continue to correct and unscramble remaining words of the tagged heliumspeech signal S.