Region growing algorithm
Almost there:


Define a function growRegion(Image, seedX, seedY) that checks the pixel at location seedX, seedY and returns a list of the 4 or 8 pixels surrounding the seed that satisfy the criteria for inclusion. In your case, that is just one threshold so you could easily say, "if the pixel is adjacent to the seed pixel AND it is above the threshold then include it to the list of potential points".
Establish a list of points to be checked. For instance seedPoints=[(seedX,seedY)].
As long as seedPoints is NOT EMPTY


Pop a point (someSeedX, someSeedY) from seedPoints (remove it from the list)
Call the function returnPoints = growRegion(Image, someSeedX, someSeedY)
For each point in returnPoints mark a white pixel on some Mask image.
Extend seedPoints with the result of growRegion.



At this point, your Mask image contains all 4-8 connected pixels that satisfy the criteria for inlcudes. seedPoints fills up 4 (or 8) times the rate at which it empties so for large regions this might seem to run slowly.

Hope this helps.