[Numpy-discussion] adaptive thresholding: get adacent cells for each pixel

stephen emslie stephenemslie at gmail.com
Sat Jun 10 15:33:25 EDT 2006


Thanks for all the help!
Convolving looks like a great way to do this, and I think that mean will be
just fine for my purposes.

That iterator also looks fantastic and is actually the sort of thing that I
was looking for at first. I havn't tried it yet though. Any idea how fast it
would be?

Stephen

On 6/10/06, Alex Liberzon <alex.liberzon at gmail.com> wrote:
>
> Not sure, but my Google desktop search of "medfilt" (the name of
> Matlab function) brought me to:
>
> info_signal.py - N-dimensional order filter. medfilt -N-dimensional
> median filter
>
> If it's true, then it is the 2D median filter.
>
> Regarding the neighbouring cells, I found the iterator on 2D ranges on
> the O'Reily Cookbook by Simon Wittber very useful for my PyPIV
> (Particle Image Velocimetry, which works by correlation of 2D blocks
> of two successive images):
>
> http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/334971
>
> def blocks(size, box=(1,1)):
>     """
>     Iterate over a 2D range in 2D increments.
>     Returns a 4 element tuple of top left and bottom right coordinates.
>     """
>     box = list(box)
>     pos = [0,0]
>     yield tuple(pos + box)
>     while True:
>         if pos[0] >= size[0]-box[0]:
>             pos[0] = 0
>             pos[1] += box[1]
>             if pos[1] >= size[1]:
>                 raise StopIteration
>         else:
>             pos[0] += box[0]
>         topleft = pos
>         bottomright = [min(x[1]+x[0],x[2]) for x in zip(pos,box,size)]
>         yield tuple(topleft + bottomright)
>
> if __name__ == "__main__":
>     for c in blocks((100,100),(99,10)):
>         print c
>     for c in blocks((10,10)):
>         print c
>
>
>
> HIH,
> Alex
>
>
> _______________________________________________
> Numpy-discussion mailing list
> Numpy-discussion at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/numpy-discussion
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20060610/da366dd1/attachment-0001.html>


More information about the NumPy-Discussion mailing list