2016-11-26 7 views
0

У меня возникли проблемы с импортом skimage.color модуля. Хотя я могу импортировать и вызывать skimage.color.rgb2gray из оболочки python, я не могу сделать то же самое из своего приложения.skimage.color.rgb2gray импорт проблема

Я проверил skimage места lib на моем ПК. Кажется, все в порядке. Но когда я пытаюсь вызвать skimage.color. из моего кода он всегда дает мне это

Traceback (most recent call last): 
File "main-video2.py", line 44, in <module> 
image = color.rgb2gray(image) 

Я проверил модуль как этот

[email protected]:~/dev/computer_vision$ python 
Python 2.7.12 (default, Nov 19 2016, 06:48:10) 
[GCC 5.4.0 20160609] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> 
KeyboardInterrupt 
>>> from skimage import color 
>>> color 
<module 'skimage.color' from '/usr/local/lib/python2.7/dist-packages/skimage/color/__init__.pyc'> 

Кто-нибудь может помочь мне понять, почему бы причина в то время как я могу назвать это из оболочки, но не из моего кода?

+0

Я думаю, что это, вероятно, не ошибка модуля - можете ли вы поставить свой код в вопросе? (Кроме того, если вам интересно, ошибка ли из-за неправильного импорта модуля, 'ImportError' должен появиться после вашего' image = color.rgb2gray (image) ') – Jerrybibo

ответ

1

Я думаю, что у вас нет других библиотек, установленных на вашем компьютере. Проверьте THIS PAGE и проверьте, имеются ли требуемые библиотеки для приложений времени исполнения.

Причина этой ошибки в том, что хотя skimage пакета может присутствовать и доступен (в оболочке Python), вы не сможете запускать любое приложение без поддержки других упомянутых пакетов, как: matplotlib, scipy, pil, numpy и six.

Перейдите по ссылке для установки/обновления необходимых пакетов.

Оставить комментарий, если у вас все еще есть проблема. :)

+0

Спасибо @Jeru Luke за помощь. Некоторое время назад я решил проблему так же, как вы сказали. Но забыл обновить здесь. Переустановка 'skimage' решила мою проблему. – enterbutton

+0

@enterbutton Кроме того, как ответил сансинг, хорошо, если вы одновременно запускаете кодирование в OpenCV –

1

У меня есть альтернатива для вас. Вы можете использовать следующий код для преобразования изображения RGB в сером:

# libraries 
import cv2 
import Image 

# reading an image 
image = cv2.imread(path_to_image) 

# converting into gray image 
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 

# saving image 
Image.fromarray(gray_image).save(save_path) 
+0

Спасибо @sansingh, но поскольку я работаю с помощью skimage с другими частями моего проекта. Я не предпочитаю работать с opencv – enterbutton