image segmentation error (tuple index out of range)
Hello, I am trying to run "image segmentation" on the attached image. Code at: https://gist.github.com/anuragphadke/7eb0e4398ef005632c6d However, on running the above script, i get the following error: Traceback (most recent call last): File "a.py", line 21, in <module> bw = closing(image > thresh, square(3)) File "/Library/Python/2.7/site-packages/skimage/morphology/misc.py", line 37, in func_out return func(image, selem=selem, *args, **kwargs) File "/Library/Python/2.7/site-packages/skimage/morphology/grey.py", line 122, in func_out out_temp = func(image, selem, out=out_temp, *args, **kwargs) File "/Library/Python/2.7/site-packages/skimage/morphology/grey.py", line 349, in closing dilated = dilation(image, selem) File "/Library/Python/2.7/site-packages/skimage/morphology/misc.py", line 37, in func_out return func(image, selem=selem, *args, **kwargs) File "/Library/Python/2.7/site-packages/skimage/morphology/grey.py", line 251, in dilation nd.grey_dilation(image, footprint=selem, output=out) File "/usr/local/lib/python2.7/site-packages/scipy/ndimage/morphology.py", line 1295, in grey_dilation sz = footprint.shape[ii] IndexError: tuple index out of range Any idea what might be wrong here? I tried multiple images and multiple file formats (jpg / png etc.) -anurag
Hello Anurag, my guess is that your image is an RGB image, so that its shape is (n_rows, n_cols, 3). I could reproduce your problem using the RGB astronaut image from scikit-image (data.astronaut()). ``threshold_otsu`` is not very well adapted to RGB images because it mixes together the color channels by first raveling all pixels. [Note for dev team: this should be better documented, and we should look for a thresholding algorithm compatible with RGB images] Therefore ``image > thresh`` is a 3-D array (or 2-D color, you can try imshow on this array). You can try determining the threshold value on a grayscale image if it's possible for you, using the as_grey keyword argument in io.imread. Or you can determine a threshold for each color channel. Cheers, Emma On Thu, Jan 07, 2016 at 09:04:48PM -0800, Anurag Phadke wrote:
However, on running the above script, i get the following error:
Any idea what might be wrong here? I tried multiple images and multiple file formats (jpg / png etc.)
-anurag
participants (3)
-
Anurag Phadke
-
Emmanuelle Gouillart
-
Stéfan van der Walt