finding minimum value in Quanterion matrix

1 view (last 30 days)
I have a 386x514 quaternion array,in this please tell how to find the minimum value of that matrix
  3 Comments
FIR
FIR on 21 Dec 2012
My form is 384x512 pure quaternion array with uint8 components
if i use min i get error
Undefined function or method 'min' for input arguments of type 'quaternion'.
Matt J
Matt J on 21 Dec 2012
FIR Commented:
i downloaded [the quaternion] tool box from here
FIR Commented:
Sorry Matt my code [which doesn't work] is
A=imreadq('peppers.png');
T=65;
for i=2:6
for j=2:6
q= A(i-1:i+1,j-1:j+1);
[minsum, minidx] = min( sum(abs(bsxfun(@minus, q(:), q(:).'))) );
qVFM = q(minidx);
V1=an equation
V2=an equation
S=min([V1 V1]);
if S>T
THE CENTRE PIXEL IS REPLACED BY qVFM %%%%3x3 matrix
else
THE CENTRE PIXEL IS not REPLACED BY qVFM%%%%3x3 matrix
end
end
end

Sign in to comment.

Accepted Answer

Matt J
Matt J on 21 Dec 2012
Edited: Matt J on 21 Dec 2012
BSXFUN isn't overloaded well in the quaternion toolbox that you're using. Here is a workaround
q= convert(A(i-1:i+1,j-1:j+1),'single');
[minsum, minidx] = min( sum(abs( repmat(q(:),1,9)-repmat(q(:).',9,1) ) ));
  9 Comments
Matt J
Matt J on 22 Dec 2012
Isn't the center pixel A(i,j)? If so, do A(i,j)=whatever.
Walter Roberson
Walter Roberson on 22 Dec 2012
Or, since that would affect the computations as you slid the window, create a second array and set the pixels in it -- as I showed you in one of your previous questions.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!