下面的代码给我本标题中的错误:skimage - 类型错误:peak_local_max()得到了意想不到的关键字参数“num_peaks_per_label”
from skimage.feature import peak_local_max
local_maxi = peak_local_max(imd,labels=iml,
indices=False,num_peaks_per_label=2)
凡imd
是将其与所获得的“距离变换图像” :
from scipy import ndimage
imd = ndimage.distance_transform_edt(im)
im
是,我想输入的二进制图像,随后与scikit图像的分水岭功能段。但要正确使用这个功能,我首先需要找到将作为起始泛滥点的标记:这就是我正在试图用'peak_local_max'函数做的事情。
此外,iml
是im
标记的版本,我用的了:
from skimage.measure import label
iml = label(im)
我不知道我已经做错了。另外,我注意到,这个函数似乎完全忽略了它的num_peaks
的说法。举例来说,当我这样做:
local_maxi = peak_local_max(imd,labels=iml,
indices=True,num_peaks=1)
我总是得到相同数量的检测,当我设置num_peaks=500
或num_peaks=np.inf
峰。请问我在这里错过了什么?
你确定你正在运行'skimage'的最新版本吗?似乎最近添加了这个关键字。我想你有一个版本与最新版本的文档不同步。你能检查你正在运行的是哪个版本吗? –
@ a_guest您好,根据Anaconda Navigator,我的版本是0.12.3。我没有手动安装scikit-image。看起来这是和scikit-image网站上提供的版本相同的版本。然而,他们没有提到最新的稳定版本包含在Anaconda发行版中,就像Python(x,y)和Enthought Python Distribution一样。我会尝试手动安装它,谢谢你的建议。 – kev
@ a_guest再次嗨。我试图小心地安装他们在网站上提供的.whl文件,但只得到了“Requirement already satisfied”的要求。我猜我的版本是最新的? – kev