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);

 채택된 답변

Walter Roberson
Walter Roberson 2014년 1월 23일

1 개 추천

max([kaszel, smiech, krzyk, chrzakanie])
or
max(max(max(kaszel, smiech), krzyk), chrzakanie)

댓글 수: 8

Monika
Monika 2014년 1월 23일
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
Monika
Monika 2014년 1월 24일
편집: Monika 2014년 1월 24일
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
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.
Monika
Monika 2014년 1월 24일
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
Monika
Monika 2014년 1월 24일
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
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)
Monika
Monika 2014년 1월 24일
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에 대해 자세히 알아보기

질문:

2014년 1월 23일

댓글:

2014년 1월 24일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by