首页 > 解决方案 > ModuleNotFoundError:没有名为“skimage”的模块

问题描述

我已经在以下路径上安装了我的 scikit-image:要求已经满足:scikit-image

我已经从 PyCharm 的解释器中安装了它

但是,每当我运行以下

from skimage import data
from skimage.feature import register_translation
from skimage.feature.register_translation import _upsampled_dft

它不断返回错误,如下所示:

ImportError: No module named skimage

import numpy as np
import matplotlib.pyplot as plt

from skimage import data
from skimage.feature import register_translation
from skimage.feature.register_translation import _upsampled_dft
from scipy.ndimage import fourier_shift

image = data.camera()
shift = (-22.4, 13.32)
# The shift corresponds to the pixel offset relative to the reference image
offset_image = fourier_shift(np.fft.fftn(image), shift)
offset_image = np.fft.ifftn(offset_image)
print("Known offset (y, x): {}".format(shift))

# pixel precision first
shift, error, diffphase = register_translation(image, offset_image)

fig = plt.figure(figsize=(8, 3))
ax1 = plt.subplot(1, 3, 1)
ax2 = plt.subplot(1, 3, 2, sharex=ax1, sharey=ax1)
ax3 = plt.subplot(1, 3, 3)

ax1.imshow(image, cmap='gray')
ax1.set_axis_off()
ax1.set_title('Reference image')

ax2.imshow(offset_image.real, cmap='gray')
ax2.set_axis_off()
ax2.set_title('Offset image')

# Show the output of a cross-correlation to show what the algorithm is
# doing behind the scenes
image_product = np.fft.fft2(image) * np.fft.fft2(offset_image).conj()
cc_image = np.fft.fftshift(np.fft.ifft2(image_product))
ax3.imshow(cc_image.real)
ax3.set_axis_off()
ax3.set_title("Cross-correlation")

plt.show()

此导入失败的原因是什么?

标签: pythonpycharmscikit-image

解决方案


由于您使用的是 PyCharm,我认为您必须检查您是否已将软件包安装在您正在使用的同一环境中。


推荐阅读