Base64 문자로 가득 찬 다양한 길이의 문자열이 있습니다. 실제로 그들은 음성 인식 데이터가 노래마다 다릅니다.번호로 변환하여 문자열 일치 기법을 (들)?
이러한 문자열의 일부를 쉽게 비교하기 위해 16 진수 하위 문자열로 나눕니다. (노래의 약 1 초) 그러나 어떤 경우에는, 나는 단지 이것들을 머리와 비교할 수 없다. 나는 그들을 측정해야만한다.
은 'hellohellohelloo
'와 'hallohellohelloo
'와 예를 들어, 비교를 위해 다음 'hellohellohelloo
'와 'herehellohelloo
'비교 자세히 값을 얻어야한다.
가 어떤 알고리즘 또는 theorical가
편집 : 죄송합니다, 여기에 새로운 오전 :) 그리고 난 내 자신을 명확하게 할 수 없었다. 다음은 저를 명확하게하고 아이디어를 제안하는 몇 가지 의견입니다.
설명 1 :
사실 난 Levenshtein 거리에 대해 알고 있지만, 문제는 내가 비교 매트릭스를 구축해야 내가 두 문자열을 비교할 때마다하고 그 느린 과정을 검색 할 수 있습니다. 예를 들어 hello를 4444로 변환하고 hallo를 4443으로 변환 할 수 있다면 수치 값을 인덱싱하여 'hello'레코드가 얼마나 가까이 있는지 확인할 수 있습니다.
설명 2 :
은 어쩌면 문자열에 대한 인덱스 값과 그들로부터베이스 일정한 길이 스트링 (들) 및 저장 거리 값을 결정해야한다. 그것은 단지 생각 일뿐입니다! http://en.wikipedia.org/wiki/Levenshtein_distance
그것은 꽤 빨리 일반적으로, 그리고 구현도 가장 현대적인 언어가 있습니다 :
"오디오 인식 데이터"에 실제로 읽을 수있는 텍스트가 포함되어 있습니까? –
내가 물어보고있는 이유는 "텍스트"로의 변환이 매우 뛰어나서 단어 나 그와 비슷한 것을 골라 낼 수 있다면 간단한 levenshtein-distance 구현이나 이와 유사한 방법이 효과가 있다는 것입니다. 다른 샘플 포인트를 생성하는 웨이브 폼 같은 위상차와 같은 변환 문제로 인해 전체 문자열이 다른 경우 levenshtein은 쓸모가 없습니다. 오디오에서 실제 데이터를 게시 할 수 있습니까? –
아니요, 텍스트가 아닙니다. 그것은 단지 base64 문자로 가득 차 있습니다. –