aky15
2023-04-12 28a19dbc4e85d3b8a4ec2ef7483bba64d422b43f
egs_modelscope/speaker_verification/speech_xvector_sv-en-us-callhome-8k-spk6135-pytorch/infer.py
@@ -11,24 +11,24 @@
    # extract speaker embedding
    # for url use "spk_embedding" as key
    rec_result = inference_sv_pipline(
        audio_in='https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/sv_example_enroll.wav')
        audio_in='https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_data/sv_example_enroll.wav')
    enroll = rec_result["spk_embedding"]
    # for local file use "spk_embedding" as key
    rec_result = inference_sv_pipline(audio_in='sv_example_same.wav')["test1"]
    rec_result = inference_sv_pipline(audio_in='example/sv_example_same.wav')
    same = rec_result["spk_embedding"]
    import soundfile
    wav = soundfile.read('sv_example_enroll.wav')[0]
    wav = soundfile.read('example/sv_example_enroll.wav')[0]
    # for raw inputs use "spk_embedding" as key
    spk_embedding = inference_sv_pipline(audio_in=wav)["spk_embedding"]
    rec_result = inference_sv_pipline(
        audio_in='https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/sv_example_different.wav')
        audio_in='https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_data/sv_example_different.wav')
    different = rec_result["spk_embedding"]
    # calculate cosine similarity for same speaker
    sv_threshold = 0.9465
    sv_threshold = 0.80
    same_cos = np.sum(enroll * same) / (np.linalg.norm(enroll) * np.linalg.norm(same))
    same_cos = max(same_cos - sv_threshold, 0.0) / (1.0 - sv_threshold) * 100.0
    print("Similarity:", same_cos)