[iaerror] [Up] [iatype] Functions

iaunique
Set unique.

Synopsis

t, i, j = iaunique( f )

Implemented in Python.

Input

f Image. Gray-scale (uint8 or uint16) or binary image (logical).

Set initial.

Output

t Image. Gray-scale (uint8 or uint16) or binary image (logical).
i Image. Gray-scale (uint8 or uint16) or binary image (logical).
j Image. Gray-scale (uint8 or uint16) or binary image (logical).

Description

Returns the set unique.

Examples

>>> c = Numeric.array([2, 10, 5, 5, 10, 7, 5])

              
>>> print c
[ 2 10  5  5 10  7  5]
>>> (u,i,j) = iaunique(c)

              
>>> print u
[ 2  5  7 10]
>>> print i
[0 6 5 1]
>>> print j
[0 3 1 1 3 2 1]

Source Code

def iaunique(f):
    from Numeric import ravel, sort, argsort, equal, concatenate, take, nonzero, zeros, put, cumsum
    aux = ravel(f)
    t = sort(aux)
    i = argsort(aux)
    d = equal(t[0:-1], t[1::])
    d = concatenate((d, [0]))
    t = take(t, nonzero(1-d))
    j = zeros(aux.shape)
    put(j, i, cumsum(concatenate(([1], 1-d[0:-1])))-1)
    i = take(i, nonzero(1-d))
    return t, i, j
    
[iaerror] [Up] [iatype] http://www.python.org