Thank you very much Juan for your quick reply. That was helpful :) Ioannis
On Monday, 19 September 2016 01:03:45 UTC+1, Juan Nunez-Iglesias wrote: > > Hi Ioannis, > > Unfortunately the levels keyword is used as a hint to the function about > the number of levels when the image is uint16, because the possible number > of levels is huge. But if you want to convert the image to those levels, > you have to do it manually. I suggest you look at the "rescale_intensity" > function: > > > http://scikit-image.org/docs/dev/api/skimage.exposure.html#skimage.exposure.rescale_intensity > > and process your image before passing it to the glcm function. > > I hope this helps! Keep pinging if you have more questions. =) > > Juan. > > On Sun, Sep 18, 2016 at 4:57 AM, <ioannis...@gmail.com <javascript:>> > wrote: > >> Hello everyone, >> >> I am using a SAR image (16-bit) and trying to implement GLCM algorithm >> using sciki-learn. When trying to calculate the GLCM using greycomatrix i >> get the following error: >> >> assert image.max() < levels. It says that the maximum value of the image >> intensity must be less than the number of grey levels. >> Because the SAR image is really big, i want to reduce the calculation time >> by reducing the levels to 8. >> Even if i remove the parameter 'level=8' when using greycomatrix, still >> gives me the same error >> >> My code is the following: >> >> from skimage.feature import greycomatrix, greycoprops >> import numpy as np >> from skimage import data >> import rasterio >> >> path = 'C:\Users\GLCM_implementation\glasgow.tif' >> >> with rasterio.open(path, 'r') as src: >> import_file = src.read() >> img = import_file[0,:,:] #i need only the two dimentions (height, width) >> print img.shape >> >> >> #calculate the GLCM specifying the distance, direction(4 directions) and >> number of grey levels >> GLCM = greycomatrix(img, [1], [0, np.pi/4, np.pi/2, 3*np.pi/4],levels=8, >> symmetric=False, normed=True) >> #list(GLCM[:,:,0,2]) >> >> >> #Calculate texture statistics >> contrast = greycoprops(GLCM, 'contrast') >> >> dissimilarity = greycoprops(GLCM, 'dissimilarity') >> >> homogeneity = greycoprops(GLCM, 'homogeneity') >> >> energy = greycoprops(GLCM, 'energy') >> >> correlation = greycoprops(GLCM, 'correlation') >> >> ASM = greycoprops(GLCM, 'ASM') >> >> >> >> Error message: >> >> 101 image = np.ascontiguousarray(image) 102 assert image.min() >> >= 0--> 103 assert image.max() < levels 104 image = >> image.astype(np.uint8) 105 distances = >> np.ascontiguousarray(distances, dtype=np.float64) >> AssertionError: >> >> >> I would appreciate any help. >> Thank you in advance >> >> Ioannis >> >> -- >> You received this message because you are subscribed to the Google Groups >> "scikit-image" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to scikit-image...@googlegroups.com <javascript:>. >> To post to this group, send email to scikit...@googlegroups.com >> <javascript:>. >> To view this discussion on the web, visit >> https://groups.google.com/d/msgid/scikit-image/520f5f2b-4750-4b56-a40b-28b938b750d8%40googlegroups.com >> >> <https://groups.google.com/d/msgid/scikit-image/520f5f2b-4750-4b56-a40b-28b938b750d8%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "scikit-image" group. To unsubscribe from this group and stop receiving emails from it, send an email to scikit-image+unsubscr...@googlegroups.com. To post to this group, send an email to scikit-image@googlegroups.com. To view this discussion on the web, visit https://groups.google.com/d/msgid/scikit-image/3c6b3c19-f3d8-49c6-9ffa-3942fc08ef55%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.