def eval_error_textgrid_test():

    audio_name = '05_Semahat_Ozdenses_-_Bir_Ihtimal_Daha_Var_0_zemin_from_69_5205_to_84_2'
    annotation_url = os.path.join(PATH_TEST_DATASET,
                                  audio_name + ANNOTATION_EXT)

    start_index = 0
    end_index = -1

    detected_token_list = [[0.61, 0.94, u'Bir'], [1.02, 3.41, u'ihtimal'],
                           [3.42, 4.11, u'daha'], [4.12, 5.4, u'var'],
                           [8.03, 8.42, u'o'], [8.46, 8.83, u'da'],
                           [8.86, 10.65, u'\xf6lmek'], [10.66, 11.04, u'mi'],
                           [11.05, 14.39, u'dersin']]

    annotation_token_list, detected_token_list, dummy, dummy = \
        strip_non_lyrics_tokens(annotation_url,
                                detected_token_list,
                                tierAliases.phrases,
                                start_index,
                                end_index)

    alignment_errors = _eval_alignment_error(annotation_token_list,
                                             detected_token_list,
                                             tierAliases.phrases)
    mean, std_dev, median = getMeanAndStDevError(alignment_errors)
    print("mean : ", mean, "st dev: ", std_dev)
def eval_error_textgrid_test():
    
    audio_name = '05_Semahat_Ozdenses_-_Bir_Ihtimal_Daha_Var_0_zemin_from_69_5205_to_84_2'
    annotation_url = os.path.join(PATH_TEST_DATASET,  audio_name + ANNOTATION_EXT)
    
    start_index = 0
    end_index = -1
    
    detected_token_list = [[0.61, 0.94, u'Bir'],
                           [1.02, 3.41, u'ihtimal'],
                           [3.42, 4.11, u'daha'],
                           [4.12, 5.4, u'var'],
                           [8.03, 8.42, u'o'],
                           [8.46, 8.83, u'da'],
                           [8.86, 10.65, u'\xf6lmek'],
                           [10.66, 11.04, u'mi'],
                           [11.05, 14.39, u'dersin']]
    
    annotation_token_list, detected_token_list, dummy, dummy = \
        strip_non_lyrics_tokens(annotation_url,
                                detected_token_list,
                                tierAliases.phrases,
                                start_index,
                                end_index)
     
    alignment_errors = _eval_alignment_error(annotation_token_list,
                                             detected_token_list,
                                             tierAliases.phrases)
    mean, std_dev, median = getMeanAndStDevError(alignment_errors)
    print("mean : ", mean, "st dev: ", std_dev)
def eval_percentage_correct_textgrid_test():

    audio_name = '05_Semahat_Ozdenses_-_Bir_Ihtimal_Daha_Var_0_zemin_from_69_5205_to_84_2'
    annotation_url = os.path.join(PATH_TEST_DATASET,
                                  audio_name + ANNOTATION_EXT)

    detected_token_list = [[0.61, 0.94, u'Bir'], [1.02, 3.41, u'ihtimal'],
                           [3.42, 4.11, u'daha'], [4.12, 5.4, u'var'],
                           [8.03, 8.42, u'o'], [8.46, 8.83, u'da'],
                           [8.86, 10.65, u'\xf6lmek'], [10.66, 11.04, u'mi'],
                           [11.05, 14.39, u'dersin']]

    start_index = 0
    end_index = -1

    annotation_token_list, detected_token_list, final_ts_anno, initial_time_offset = \
        strip_non_lyrics_tokens(annotation_url,
                                detected_token_list,
                                tierAliases.phrases,
                                start_index,
                                end_index)

    duration_correct, total_length = _eval_percentage_correct(
        annotation_token_list, detected_token_list, final_ts_anno,
        initial_time_offset)
    print(duration_correct / total_length)
def eval_percentage_correct_textgrid_test():
       
    audio_name = '05_Semahat_Ozdenses_-_Bir_Ihtimal_Daha_Var_0_zemin_from_69_5205_to_84_2'
    annotation_url = os.path.join(PATH_TEST_DATASET,  audio_name + ANNOTATION_EXT)
   
    detected_token_list = [[0.61, 0.94, u'Bir'],
                           [1.02, 3.41, u'ihtimal'],
                           [3.42, 4.11, u'daha'],
                           [4.12, 5.4, u'var'],
                           [8.03, 8.42, u'o'],
                           [8.46, 8.83, u'da'],
                           [8.86, 10.65, u'\xf6lmek'],
                           [10.66, 11.04, u'mi'],
                           [11.05, 14.39, u'dersin']]
     
    start_index = 0
    end_index = -1

    annotation_token_list, detected_token_list, final_ts_anno, initial_time_offset = \
        strip_non_lyrics_tokens(annotation_url,
                                detected_token_list,
                                tierAliases.phrases,
                                start_index,
                                end_index)
    
    duration_correct, total_length = _eval_percentage_correct(annotation_token_list,
                                                              detected_token_list,
                                                              final_ts_anno,
                                                              initial_time_offset)
    print(duration_correct / total_length)
def evalPercentageCorrect(annotationURI, outputHTKPhoneAlignedURI, whichTier, startIdx, endIdx ):
    '''
    Wrapper around _evalPercentageCorrect() for txt file outputHTKPhoneAlignedURI
    
    Parameters
    --------------
    outputHTKPhoneAlignedURI: detected timestamps in htk's mlf format 
    
    other parameters same as in _evalPercentageCorrect
    '''
    
    detectedTokenList = loadDetectedTokenListFromMlf( outputHTKPhoneAlignedURI, whichTier )
    
    annotationTokenList, detectedTokenList, finalTsAnno,  initialTimeOffset = \
     strip_non_lyrics_tokens(annotationURI, detectedTokenList, whichTier, startIdx, endIdx)
    
    durationCorrect, totalDuration = _eval_percentage_correct(annotationTokenList, detectedTokenList, finalTsAnno, initialTimeOffset)
    return durationCorrect, totalDuration