Index exceeds the number of array elements (8000).
1 次查看(过去 30 天)
显示 更早的评论
Error in autodecoder_freq (line 35)
x = [signal(950:1450), signal(2100:2600), signal(3150:3650), signal(4200:4700), signal(5250:5750), signal(6350:6850), signal(7400:7900), signal(8500:9000), signal(9600:10100),
signal(10600:11100), signal(11750:12250), signal(12800:13300)];
N = 512;
% aproximate frequency interval
lowfreq = [650 733 811 897 1000];
highfreq = [1000 1273 1407 1515];
% tone frequency dictionaries
dic_low = [697 770 852 941];
dic_high = [1209 1336 1477];
% digited numbers
tele = [1,2,3; 4,5,6; 7,8,9; 11,0,12]; % '*' = 11; '#' = 12
[signal, fs] = audioread('DialedNumber.wav');
fN=fs/2; % Nyquist frequency
playout = audioplayer(signal,fs);
play(playout);
figure(1)
plot (signal)
title('Signal')
xlabel('Time')
ylabel('Magnitude')
% 12 column matrix of the signal (stable part of the signal segments)
x = [signal(950:1450), signal(2100:2600), signal(3150:3650), signal(4200:4700), signal(5250:5750), signal(6350:6850), signal(7400:7900), signal(8500:9000), signal(9600:10100), signal(10600:11100), signal(11750:12250), signal(12800:13300)];
1 个评论
Walter Roberson
2025-3-7
% aproximate frequency interval
lowfreq = [650 733 811 897 1000];
highfreq = [1000 1273 1407 1515];
Those are not accurate for DTMF. https://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling#Keypad
回答(1 个)
Harshavardhan
2025-3-7
The error message indicates that your code is attempting to access elements in the array that do not exist. This typically happens when the indices specified are beyond the length of the array.
To resolve this issue, you can first check the length of the “signal” array. You can do this by adding a line of code to display the length of signal:
disp(['Length of signal: ', num2str(length(signal))]);
Once you know the length of the signal, ensure that all the indices you are trying to access are within this range.
You can find more information about “length” below:
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Array Geometries and Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!