def MakeSelectsAndWeights( self ):
global SELECT1, SELECT2
global WEIGHT1, WEIGHT2
a1 = indices((640,))[0]
a2 = a1 + a1 * (701.0-640.0)/702.0
a3 = floor(a2)
SELECT1 = a3.astype( intc )
SELECT2 = SELECT1 + 1
WEIGHT2 = a2 - a3
WEIGHT1 = 1.0 - WEIGHT2
One more
def Centroid( self, ref, curr, mask ):
slopes = indices((488,722),int32)
nada = zeros((488,722),uint8)
result = where(curr > ref, curr-ref, nada)
result = where(result > mask, result-mask, nada)
xresult = result * slopes[1]
yresult = result * slopes[0]
total = sum(ravel(asarray(result,int32)))
count = sum(ravel(result > 0))
if total == 0:
return 360,240,0,0
xpos = sum(ravel(xresult))/total
ypos = sum(ravel(yresult))/total
return xpos,ypos,total,count
Another
def Central( self, ref, curr, mask ):
slopes = indices((488,722),int32)
nada = zeros((488,722),uint8)
result = where(curr > ref, curr-ref, nada)
result = where(result > mask, result-mask, nada)
total = sum(ravel(asarray(result,int32)))
count = sum(ravel(result > 0))
if total == 0:
print "Count: %d Total: %d" % (count,total)
return 361,244,0,0
blur = result[0:-2, 0:-2]
blur += result[0:-2, 1:-1]
blur += result[0:-2, 2: ]
blur += result[1:-1, 0:-2]
blur += result[1:-1, 1:-1]
blur += result[1:-1, 2: ]
blur += result[2: , 0:-2]
blur += result[2: , 1:-1]
blur += result[2: , 2: ]
index = argmax(ravel(blur))
ypos, xpos = divmod(index, 720)
xpos += 1
ypos += 1
return xpos,ypos,total,count
--
Wayne Watson (Watson Adventures, Prop., Nevada City, CA)
(121.01 Deg. W, 39.26 Deg. N) GMT-8 hr std. time)
Copper and its alloys have been found effective in hospital
sinks, hand rails, beds, ... in significantly reducing
bacteria. Estimates are 1/20 people admitted to a hospital
become infected, and 1/20 die from the infection.
-- NPR Science Friday, 01/16/2009
Web Page: <www.speckledwithstars.net/>
_______________________________________________
Tutor maillist - [email protected]
http://mail.python.org/mailman/listinfo/tutor
I'm looking at a GUI program that handles meteor images. They leave a trail
across the sky. Each video frame (30 fps) provides data on the track, and a
centroid is found around each track point. 'm not familiar with the
algorithm that does this, but part of it is in the three def stmts below.
Maybe someone can hazard a guess? It looks like someone had fun doing this.
- [Tutor] What Centroid Algorithm Is This? Wayne Watson
- Re: [Tutor] What Centroid Algorithm Is This? Eike Welk
- Re: [Tutor] What Centroid Algorithm Is This? Wayne Watson
