Today I reviewed the results of the pitch interpolation. The results seem ok from one iteration to the next but I stumbled on a few issues when it comes to edge cases. The code worked fine in the general situation but would crash if only a single sample point was used (which occurs when the pitch tracker does not detect much pitch within a word or for very short words ('a' or 'the'). This issue has been patched.
I discovered this issue when debugging a related issue. I found that all of the alignment between a source and target file were off by one in each labeled textgrid region. Let me illustrate with an example. Suppose the word 'car' in the source utterance had 5 pitch samples and the word 'car' in the target utterance had 3 pitch samples, the code would output the source utterance with 3 pitch samples and the target utterance with 2. It was always the case that the smaller of the two would lose one value (which is incorrect) while the the larger of the two would be scaled down to the size of the smaller (which is correct).
I couldn't figure out why this was, so I rewrote the fairly small function. It is working now.
I was able to generate all of the interpolated pitch data. I should review the results to make sure that there are no more errors. Then I can ensure that the results are suitable for the experiment and then begin working on setting up the experiment.
I discovered this issue when debugging a related issue. I found that all of the alignment between a source and target file were off by one in each labeled textgrid region. Let me illustrate with an example. Suppose the word 'car' in the source utterance had 5 pitch samples and the word 'car' in the target utterance had 3 pitch samples, the code would output the source utterance with 3 pitch samples and the target utterance with 2. It was always the case that the smaller of the two would lose one value (which is incorrect) while the the larger of the two would be scaled down to the size of the smaller (which is correct).
I couldn't figure out why this was, so I rewrote the fairly small function. It is working now.
I was able to generate all of the interpolated pitch data. I should review the results to make sure that there are no more errors. Then I can ensure that the results are suitable for the experiment and then begin working on setting up the experiment.
No comments:
Post a Comment