8
Aşağıdaki işlevi içeren bir piton programını çalıştırırken, image[x,y] = 0
aşağıdaki hata iletisini verir. Bunun anlamı nedir ve nasıl çözülür? Teşekkürler.VisibleDeprecationWarning: tamsayı yerine tamsayı olmayan bir sayı kullanmak, gelecekte bir hatayla sonuçlanır
Uyarı
VisibleDeprecationWarning: using a non-integer number instead of an integer
will result in an error in the future
image[x,y] = 0
Illegal instruction (core dumped)
Kod
def create_image_and_label(nx,ny):
x = np.floor(np.random.rand(1)[0]*nx)
y = np.floor(np.random.rand(1)[0]*ny)
image = np.ones((nx,ny))
label = np.ones((nx,ny))
image[x,y] = 0
image_distance = ndimage.morphology.distance_transform_edt(image)
r = np.random.rand(1)[0]*(r_max-r_min)+r_min
plateau = np.random.rand(1)[0]*(plateau_max-plateau_min)+plateau_min
label[image_distance <= r] = 0
label[image_distance > r] = 1
label = (1 - label)
image_distance[image_distance <= r] = 0
image_distance[image_distance > r] = 1
image_distance = (1 - image_distance)*plateau
image = image_distance + np.random.randn(nx,ny)/sigma
return image, label[92:nx-92,92:nx-92]
Hangi numpy'/scipy sürümleri? –
Sadece test ettim, numpy sürümü 1.11.0; scipy sürümü 0.17.1 – user288609
'np.floor' size bir float verir ancak endeksleme sadece gelecekte tamsayılarla mümkün olacaktır. Dolayısıyla, 'numpy' sürümünün yükseltilmesinin gelecekte kodunuzu keseceğini belirten bir kullanımdan kaldırma uyarısı alırsınız. Ancak bu uyarı bir hataya neden olmamalıdır. Bu parçayı, yalnızca 'görüntü' dizisinin yaratılması ve bir elemanı sıfıra ayarlamanız anlamına gelen izolasyonda denediniz mi? – jotasi