[mmsedisk] [Up] [mmserot] Structuring Elements

mmseline
Create a line structuring element.

Synopsis

function B = mmseline ( l , theta )

Input

l Double Non-negative integer.

Default: 3

theta Double

Default: 0

(degrees, clockwise)

Description

mmseline creates a structuring element B that is a line segment that has an extremity at the origin, length l and angle theta (0 degrees is east direction, clockwise). If l=0, it generates the origin.

Examples

mmseshow(mmseline)
ans =
     0     0     1     1     1
b1 = mmseline(4,45);
mmseshow(b1)
ans =
     0     0     0     0     0
     0     0     0     0     0
     0     0     1     0     0
     0     0     0     1     0
     0     0     0     0     1
b2 = mmseline(4,-180);
mmseshow(b2)
ans =
     1     1     1     1     0     0     0
a=mmtext('Line');
b=mmdil(a,b1);
mmshow(a);
mmshow(b);
a b

Equation

Algorithm

function B = mmseline_equ(l, theta)
theta = pi*theta/180;
if abs(tan(theta)) <= 1
   s = sign(cos(theta));
   x1 = 0:s:round(l * cos(theta))-s;
   x2 = round(x1 * tan(theta));
else
   s = sign(sin(theta)); 
   x2 = 0:s:round(l * sin(theta))-s;
   x1 = round(x2 / tan(theta));
end   
%convert to center image
X1=max(abs(x1)); X2=max(abs(x2));
L1=2*X1+1; L2=2*X2+1;
Bimg=full(sparse(x2+X2+1, x1+X1+1,1, L2,L1));
B=mmimg2se(mmbinary(Bimg));

See also

mmfreedom Control automatic data type conversion.
mmsedisk Create a disk or a semi-sphere structuring element.
mmsebox Create a box structuring element.
mmsecross Diamond structuring element and elementary 3x3 cross.
mmimg2se Create a structuring element from a pair of images.
mmdil Dilate an image by a structuring element.
mmseshow Display a structuring element as an image.
[mmsedisk] [Up] [mmserot]