Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

UltraSync Documentation

This README file describes the order in which the scripts are run to reproduce the results of the 2019 Interspeech paper: "Synchronising audio and ultrasound by learning cross-modal embeddings"

Data preparation and self-supervision sample creation:

  1. creates positive and negative samples from the original UltraSuite data. Samples are 200 ms of ultrasound and corresponding MFCC.

  2. counts the number of samples for each data set, speaker, and session allowing us to choose training, validation, and testing splits based on the number of samples. No information other than the sizes of subset is used to split the data.

  3. creates data frames with the names of samples in each subset (train, val, or test). It also shuffles the order of samples in the training set to prepare for the next step.

Model Training:

  1. uses the data frames from the previous step to create batches of samples. We experimented with a few batch sizes and eventually used 64 (32 positive and 32 negative for the same samples).

  2. trains the model. It outputs a model file and a results file. The results file reports the loss on training, validation and test data. It also reportes a simple binary classification accuracy by placing a threshold of 0.5 on the predicted distances.

Prediction and evaluation:

  1. retrieves the true offsets for training, validation and test sets. The true offsets in the test set serves as ground truth values for evaluation.

  2. retrieves the true offsets from the training data and bins them to get "offset candidates" for prediction.

  3. uses the model to predict the distance for each candidate and then selects the candidate with the smallest average distance. It also calculates the distance between truth and prediction to get the overall accuracy.

  4. analyses the results across different attributes calculating the mean discrepancy in addition to accuracy

  5. gets the accuracy for a random prediction which serves as a lower-bound for evaluation.


UltraSync: Synchronising audio and ultrasound by learning cross-modal embeddings




No releases published


No packages published