Ces informations sont écrites à l’intention des investisseurs, des développeurs et des décideurs.
Une version avec codebook est prévue. Il reste à construire la base de données et à ajouter l'accélération GPU (Graphics Processing Unit en Anglais).
Les principales caractéristiques de cette version sont les suivantes:
- Utilisation d'une base de données (ou de plusieurs) contenant les vecteurs des magnitudes et des positions des plus grands pics locaux. Chaque trame fournit un vecteur de magnitudes et positions ou un vecteur de magnitudes et un vecteur de positions. La base de données est construite à l'aide de l'algorithme des k-moyennes, ou de l'algorithme LGB, ou d'un algorithme équivalent.
Les pics locaux doivent rester des pics locaux.
- L'émetteur transmet un simple indice (numéro) correspondant au vecteur le plus proche dans la base de données. L'algorithme de la recherche du plus proche voisin (kNN) est utilisé pour trouver cet indice.
- On peut construire la base avec un certain nombre de pics locaux (par exemple 16, 24 ou 32) et une certaine précision (par exemple 8 bits ou même 16 bits), déterminer un indice et faire une recherche avec seulement les premiers éléments du vecteur (par exemple les 6 ou 8 premiers éléments).
- L'ordre des premières positions (fréquences) étant très important, on applique un coefficient de pondération sur les premiers éléments (par exemple sur les 4 à 8 premiers éléments), juste au chargement de la base et lors des requêtes de recherche.
Notes:
- La recherche du plus proche voisin (kNN) est très rapide avec des méthodes approchées (ANN). Mais elle peut être encore très fortement accélérée avec le support GPU, grâce à la programmation parallèle.
- La finition, la mise à disposition des sources et le déploiement sont prévus en 2017 ou 2018.
- On peut espérer des taux bits inférieurs à 1000 bps (VLC et VLR) et des taux moyens de bits inférieurs à 600 bps pour VLR (sans compter les zones de silence).
- Une demande de brevet sur les algorithmes utilisés a été déposée en France (INPI).
Signes Vitaux:
Il reste aussi à démontrer la compatibilité de la version codebook avec certains signaux stationnaires comme l'ElectroCardioGramme (ECG), la Pression Sanguine Artérielle (ABP ou Arterial Blood Pressure en Anglais), ou le PhotoPléthysmoGramme (PPG).
Si les résultats sont acceptables, en transmettant par exemple une trame compressée par seconde ou une trame compressée toutes les deux secondes au lieu de 25 ou 31.25 trames par seconde avec la voix, on peut espérer avoir des taux de bits inférieurs à 32 bits par seconde et par canal.
Chaque trame compressée contient le code d'un vecteur des magnitudes et des positions des plus grands pics locaux de la trame. Ces pics locaux constituent donc les points de l'enveloppe spectrale de la trame. Ces codes peuvent être utilisés directement dans les algorithmes de détection d'anomalies utilisant des bases de données. Un simple entier pourra servir à représenter un vecteur des positions et / ou des magnitudes des pics locaux, donc pourra servir de signature pour toute une trame.
Codebook dynamique et local:
Une version utilisant un codebook dynamique et local peut être proposée (recherche des trames similaires situées en arrière, avec un très grand tampon). Ce codebook est contextuel, nécessite de la mémoire et la programmation GPU (recherches des plus proches voisins et tris).
Contrairement au codebook global, il ne faut pas qu'il y ait de perte de trames ou il faut implémenter un mécanisme de resynchronisation. Enfin ce codebook n'est pas partageable sur un serveur.
Contacts et Commentaires :
support@whmsoft.com
Nos codecs sont basés sur FFT et peuvent être accélérés avec le support GPU
comme cette animation WebGL.
three.js