Effectue une classification sur les formes d'onde audio.
L'API attend un modèle TFLite avec des métadonnées de modèle TFLite. .
L'API prend en charge les modèles avec un tenseur d'entrée audio et un tenseur de sortie de classification. Pour être plus précis, voici les exigences.
- Tenseur audio d'entrée (
kTfLiteFloat32
)- tampon audio d'entrée de taille
[batch x samples]
. - L'inférence par lots n'est pas prise en charge (
batch
doit être 1).
- tampon audio d'entrée de taille
kTfLiteFloat32
)- avec
N
classes de 2 ou 4 dimensions, telles que[1 x N]
ou[1 x 1 x 1 x N]
- le fichier d'étiquette doit être compressé dans les métadonnées. Voir l' exemple de création de métadonnées pour un classificateur d'images . Si aucun fichier d'étiquette n'est compressé, il utilisera l'index comme étiquette dans le résultat.
Classes imbriquées
classe | AudioClassifier.AudioClassifierOptions | Options de configuration d'un AudioClassifier . |
Méthodes publiques
Méthodes héritées
Méthodes publiques
liste publique <Classifications> classifier (tenseur TensorAudio )
Effectue une classification réelle sur le tenseur audio fourni.
Paramètres
tenseur | un TensorAudio contenant le clip audio d'entrée en float avec des valeurs comprises entre [-1, 1). L'argument tensor doit avoir la même taille plate que le tenseur d'entrée du modèle TFLite. Il est recommandé de créer tensor à l'aide de la méthode createInputTensorAudio . |
---|
Jetés
Exception d'argument illégal | si un argument n'est pas valide |
---|---|
IllegalStateException | si une erreur se produit lors de la classification du clip audio à partir du code natif |
public AudioRecord créerAudioRecord ()
Crée une instance AudioRecord
pour enregistrer le flux audio. L'instance AudioRecord renvoyée est initialisée et le client doit appeler la méthode AudioRecord.startRecordingnull
pour démarrer l'enregistrement.
Retour
- une instance
AudioRecord
dansAudioRecord.STATE_INITIALIZED
Jetés
Exception d'argument illégal | si le nombre de canaux requis par le modèle n'est pas pris en charge |
---|---|
IllegalStateException | si l'instance AudioRecord n'a pas réussi à s'initialiser |
public static AudioClassifier createFromBuffer ( ByteBuffer modelBuffer)
Crée une instance AudioClassifier
avec un tampon de modèle et le AudioClassifier.AudioClassifierOptions
par défaut.
Paramètres
modèleBuffer | un ByteBuffer direct ou un MappedByteBuffer du modèle de classification |
---|
Jetés
IllegalStateException | s'il y a une erreur interne |
---|---|
Exception d'exécution | s'il y a une erreur autrement non spécifiée |
Exception d'argument illégal | si le tampon de modèle n'est pas un ByteBuffer direct ou un MappedByteBuffer |
public static AudioClassifier createFromBufferAndOptions (options ByteBuffer modelBuffer, AudioClassifier.AudioClassifierOptions )
Crée une instance AudioClassifier
avec un tampon de modèle et AudioClassifier.AudioClassifierOptions
.
Paramètres
modèleBuffer | un ByteBuffer direct ou un MappedByteBuffer du modèle de classification |
---|---|
choix |
Jetés
IllegalStateException | s'il y a une erreur interne |
---|---|
Exception d'exécution | s'il y a une erreur autrement non spécifiée |
Exception d'argument illégal | si le tampon de modèle n'est pas un ByteBuffer direct ou un MappedByteBuffer |
public static AudioClassifier createFromFile (contexte contextuel, String modelPath)
Crée une instance AudioClassifier
à partir de AudioClassifier.AudioClassifierOptions
par défaut.
Paramètres
contexte | |
---|---|
modèleChemin | chemin du modèle de classification avec métadonnées dans les actifs |
Jetés
IOException | si une erreur d'E/S se produit lors du chargement du modèle tflite |
---|---|
Exception d'argument illégal | si un argument n'est pas valide |
IllegalStateException | s'il y a une erreur interne |
Exception d'exécution | s'il y a une erreur autrement non spécifiée |
public static AudioClassifier createFromFile ( Fichier modelFile)
Crée une instance AudioClassifier
à partir de AudioClassifier.AudioClassifierOptions
par défaut.
Paramètres
fichier modèle | le modèle de classification Instance File |
---|
Jetés
IOException | si une erreur d'E/S se produit lors du chargement du modèle tflite |
---|---|
Exception d'argument illégal | si un argument n'est pas valide |
IllegalStateException | s'il y a une erreur interne |
Exception d'exécution | s'il y a une erreur autrement non spécifiée |
public static AudioClassifier createFromFileAndOptions (contexte de contexte, String modelPath, options AudioClassifier.AudioClassifierOptions )
Crée une instance AudioClassifier
à partir de AudioClassifier.AudioClassifierOptions
.
Paramètres
contexte | |
---|---|
modèleChemin | chemin du modèle de classification avec métadonnées dans les actifs |
choix |
Jetés
IOException | si une erreur d'E/S se produit lors du chargement du modèle tflite |
---|---|
Exception d'argument illégal | si un argument n'est pas valide |
IllegalStateException | s'il y a une erreur interne |
Exception d'exécution | s'il y a une erreur autrement non spécifiée |
public static AudioClassifier createFromFileAndOptions (options de fichier modelFile, AudioClassifier.AudioClassifierOptions )
Crée une instance AudioClassifier
.
Paramètres
fichier modèle | le modèle de classification Instance File |
---|---|
choix |
Jetés
IOException | si une erreur d'E/S se produit lors du chargement du modèle tflite |
---|---|
Exception d'argument illégal | si un argument n'est pas valide |
IllegalStateException | s'il y a une erreur interne |
Exception d'exécution | s'il y a une erreur autrement non spécifiée |
public TensorAudio createInputTensorAudio ()
Crée une instance TensorAudio
pour stocker les échantillons audio d'entrée.
Retour
- un
TensorAudio
avec la même taille que le tenseur d'entrée du modèle
Jetés
Exception d'argument illégal | si le modèle n'est pas compatible |
---|
public long getRequiredInputBufferSize ()
Renvoie la taille du tampon d'entrée requise en nombre d'éléments flottants.
public TensorAudio.TensorAudioFormat getRequiredTensorAudioFormat ()
Renvoie le TensorAudio.TensorAudioFormat
requis par le modèle.