ImageD11.connectedpixels
index
/sware/exp/fable/standalone/redhate4-a64/lib/python2.5/site-packages/ImageD11/connectedpixels.so

C extensions for image analysis, part of ImageD11

 
Functions
       
blob_moments(...)
None = blob_moments(Numeric.array(peaks1))
 
Loop over array filling out moments from sums
bloboverlaps(...)
success = bloboverlaps (   Numeric.array(blob1, 2D, Int), n1  , res1 
                             Numeric.array(blob2, 2D, Int), n2  , res2,
                              verbose=0) 
 
merges the results from blob1/res1 into blob2/res2
blob1 would be the previous image from the series, with its results
  if it does not overlap it will stay untouched in res
  if it overlaps with next image it is passed into that ones res
blobproperties(...)
res = blobproperties ( Numeric.array(data, 2D)  , 
                       Numeric.array(blob, 2D, Int)  ,
                       Int np , 
                       Int verbose )
 
Computes various properties of a blob image            (created by connectedpixels)
data  = image data 
blob  = integer peak assignments from connectedpixels 
np    = number of peaks to treat 
verbose  - flag about whether to print
connectedpixels(...)
nblobs = connectedpixels ( data=Numeric.array(data, 2D)  , 
                           results=Numeric.array(blob, 2D, Int)  ,
                           threshold=float threshold ,
                           verbose=Int verbose )
data is normally an image 
blob is an array to receive pixel -> blob assignments
threshold is the value above which a pixel is considered to be in a blob
verbose flags printing on stdout
roisum(...)
(float) roisum ( Numeric.array(2D), xl , xh , yl , yh , verbose=0 ) 
sum( array[xl:xh , yl:yh] ) where x,y refer to SLOW/FAST indices   
... NOT Numeric indices, but slow/fast 
Unsure why this was written - can be done with Numeric anyway
update_blobs(...)
update_blobs (   Numeric.array(blob, 2D, Int), 
                   Numeric.array(set , 2D, Int) , verbose=0) 
 
updates blob image such that : 
if blob[i,j] > 0: 
    blob[i,j] = set[blob[i,j]]
 
Used to update a blob image merging peaks which have overlapped due
to the third dimension.

 
Data
        NPROPERTY = 36
avg_i = 22
bb_mn_f = 19
bb_mn_o = 21
bb_mn_s = 20
bb_mx_f = 16
bb_mx_o = 18
bb_mx_s = 17
dety = 34
detz = 35
f_cen = 32
f_raw = 23
m_ff = 27
m_fo = 31
m_oo = 28
m_sf = 29
m_so = 30
m_ss = 26
mx_I = 12
mx_I_f = 13
mx_I_o = 15
mx_I_s = 14
o_raw = 25
s_1 = 0
s_I = 1
s_I2 = 2
s_cen = 33
s_fI = 3
s_ffI = 4
s_foI = 11
s_oI = 8
s_ooI = 9
s_raw = 24
s_sI = 5
s_sfI = 7
s_soI = 10
s_ssI = 6