Too many input arguments.
显示 更早的评论
I don't have idea why is wrong. My program showed me this error
Probka: kaszel
WYKRYTO: ??? Error using ==> max
Too many input arguments.
Error in ==> rozpoznawanie_dzwiekow at 200
if [smiech]==max(kaszel, smiech, krzyk, chrzakanie);
采纳的回答
max([kaszel, smiech, krzyk, chrzakanie])
or
max(max(max(kaszel, smiech), krzyk), chrzakanie)
8 个评论
The second code is fine, but now program recognize only smiech. Something has to be wrong.
if [smiech]==max(max(max(kaszel, smiech), krzyk), chrzakanie)
fprintf ('smiech')
elseif[kaszel]==max(max(max(kaszel, smiech), krzyk), chrzakanie)
fprintf ('kaszel')
elseif [krzyk]==max(max(max(kaszel, smiech), krzyk), chrzakanie)
fprintf ('krzyk')
elseif[chrzakanie]==max(max(max(kaszel, smiech), krzyk), chrzakanie)
fprintf ('chrzakanie')
end
Are you still using matrices? Your entire approach is wrong if you are using matrices.
Try this:
T = max(max(max(kaszel, smiech), krzyk), chrzakanie);
if isequal(smiech, T)
fprintf ('smiech')
elseif isequal(kaszel, T)
fprintf ('kaszel')
elseif isequal(krzyk, T)
fprintf ('krzyk')
elseif isequal(chrzakanie, T)
fprintf ('chrzakanie')
else
fprintf('Using max() is not working to decide which case you are dealing with')
end
Yes, I am still using matrices. Now program showed:
WYKRYTO: Using max() is not working to decide which case you are dealing with
Walter Roberson
2014-1-24
编辑:Walter Roberson
2014-1-24
Suppose you have four matrices, A = [1 0 0 0], B = [0 1 0 0], C = [0 0 1 0], D = [0 0 0 1]. Then max() applied over the 4 is going to be [1 1 1 1], but clearly none of the individual matrices is equal to the max().
Whatever-it-is you are trying to do, your method is wrong.
The four matrices you have, you indicate as signal names. Is it the case that each of the four is a sample of what a particular sound is like? Or is each of the four a feature vector from analyzing that particular sound? And are you trying to figure out which of the four an input is most like? If so then you should be comparing the input to each of the four in turn, not comparing the four to each other. If the four matrices represent feature vectors, then what you should do is find out which of the four feature vectors is "most like" the input; a typical way to do that is to calculate the Euclidean distance between the input sound's feature vector and each of the four, and accept the one which has the smallest Euclidean distance.
Ok. I know that it is wrong :)
Now I have this code. Program recognized signals. Only results are so bad.
zmienne=[kaszel(1) smiech(1) krzyk(1) chrzakanie(1)]
wart_max=max(zmienne)
if (wart_max==smiech(1))
fprintf('smiech')
elseif (wart_max==kaszel(1))
fprintf('kaszel')
elseif (wart_max==krzyk(1))
fprintf('krzyk')
elseif (wart_max==chrzakanie(1))
fprintf('chrzakanie')
end
No it isn't case. I have sample of cough, laugh, grunt and shout.
I used GMM to learn my signals. I've one signals on my input. And I would like to see what type is this signals. What is this the Euclidean distance?
Walter Roberson
2014-1-24
编辑:Walter Roberson
2014-1-24
Euclidean distance:
sqrt(sum((A(:) - B(:)).^2))
This is just the expansion of the Phythagorean Theorem that "the square of the length of the hypotenuse is equal to the sum of the squares of the other two sides"
Note, however, that Euclidean distance is what would be suitable for feature vectors, and is not necessarily suitable for samples. For comparing samples, you can do feature extraction, or you can use techniques such as registration and cross-correlation and I don't know what else (I have not worked with comparing speech)
Euclidean distance:
sqrt(sum((A(:) - B(:)).^2))
so my A is kaszel, B is smiech.
And I should one time more and now A is chrzakanie , B is krzyk.
No I think that I don't understand very well Euclidean distance:
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
