how to estimate pitch of speech signal for each frame ?
9 次查看(过去 30 天)
显示 更早的评论
i divded my speech signal into frames,, but i dont know how to find pitch for each frame?
0 个评论
回答(1 个)
AR
2025-8-14,2:32
You can use the “pitch()” function in MATLAB to estimate the pitch of the speech signal. If you have already divided your speech signal into frames (for example, each column in the matrix is a frame), you need to process each frame individually since the function expects a vector as input and not a matrix of frames.
For reference, here is a link from the community which discusses a similar approach:
Example: If the frames are stored as columns in a matrix called frames and the sampling frequency is fs, use the following approach:
for i = 1:size(frames,2)
frame = frames(:,i);
pitchValue(i) = pitch(frame, fs);
end
This will give the pitch estimate for each frame in the array pitchValue.
It is often easier to let “pitch()” handle the framing by specifying the window and overlap lengths, but if you already have frames, the above method will work.
To know more about the “pitch()” function, run the following command:
doc pitch
Hope this helps!
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Simulation, Tuning, and Visualization 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!