Simplecv: Python3

Созданный на 6 июл. 2016  ·  11Комментарии  ·  Источник: sightmachine/SimpleCV

Кажется, SimpleCV не работает с Python3. Поскольку Python2 постепенно прекращается, я надеюсь, что это скоро будет исправлено.

Вот что я получаю с sudo pip3 install SimpleCV:

  Running setup.py install for SimpleCV
      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/DrawingLayer.py", line 40
        def __init__(self, (width, height)):
                           ^
    SyntaxError: invalid syntax

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/base.py", line 139
        print 'unit test'
                        ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Color.py", line 213
        print a
              ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Features/BOFFeatureExtractor.py", line 68
        print "Opening file: " + infile
                             ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Features/Blob.py", line 876
        print self.mHullMask
                 ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Features/BlobMaker.py", line 97
        except RuntimeError,e:
                           ^
    SyntaxError: invalid syntax

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/EXIF.py", line 1182
        y = 0L
             ^
    SyntaxError: invalid syntax

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Font.py", line 68
        print "Please pass a string"
                                   ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/MachineLearning/TreeClassifier.py", line 190
        print "Opening file: " + infile
                             ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/MachineLearning/SVMClassifier.py", line 181
        print "Opening file: " + infile
                             ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/MachineLearning/NaiveBayesClassifier.py", line 120
        print "Opening file: " + infile
                             ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/MachineLearning/KNNClassifier.py", line 153
        print "Opening file: " + infile
                             ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Stream.py", line 62
        except socket.error, e:
                           ^
    SyntaxError: invalid syntax

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/ImageClass.py", line 132
        print "You need to install Beatutiul Soup to use this function"
                                                                      ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Camera.py", line 363
        print "coord: (" + str(d.mouseX) + "," + str(d.mouseY) + "), color: " + str(i.getPixel(d.mouseX,d.mouseY))
                       ^
    SyntaxError: invalid syntax

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/tests/test_display.py", line 80
        print val
                ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/tests/YCrCbtests.py", line 6
        print "Converted to YCrCb\n"
                                   ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/tests/vcamera_tests.py", line 19
        print str(i) + ": " + str(props[i]) + "\n"
                ^
    SyntaxError: invalid syntax

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/tests/test_cameras.py", line 17
        print str(i) + ": " + str(props[i]) + "\n"
                ^
    SyntaxError: invalid syntax

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/tests/tests.py", line 74
        print val
                ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/tests/test_optional.py", line 91
        print foundtext
                      ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/tests/test_stereovision.py", line 54
        print val
                ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Shell/Shell.py", line 71
        print "args", arg
                   ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Shell/Example.py", line 28
        print "Available Examples:"
                                  ^
    SyntaxError: Missing parentheses in call to 'print'

      File "/usr/local/lib/python3.4/dist-packages/SimpleCV/Shell/Tutorial.py", line 35
        print lb
               ^
    SyntaxError: Missing parentheses in call to 'print'

Самый полезный комментарий

Привет @mUtterberg ... моя вилка попыталась переместить SimpleCV с Python2 на Python3. Я исправил большинство проблем. Основным препятствием на данный момент является внутренняя обработка данных. SimpleCV по умолчанию использует 3-канальный (RGB) iplimage внутри, но iplimage устарел. Вместо этого рекомендуется использовать numpy.ndarray, но я не нашел времени на перенос какого-либо кода. Я готов помочь, если у вас (или у кого-то еще) есть вопросы.

Все 11 Комментарий

Если недостающие паренсы - единственное, что нужно для миграции, это легко исправить. Я постараюсь проконсультироваться со специалистом по миграции, чтобы узнать, какие еще могут быть проблемы.

Чтобы исправить вас в нескольких вещах: Python2 или, точнее, Python27 не прекращается - есть несколько приличных попыток из разных источников сделать это, но те, кто знает, что они делают в мире, не сдвигаются с места. давление. Python3X по сравнению с Python27 на тонну более запутанный, странный и разочаровывающий, не то, что я бы рекомендовал новичкам в программировании. Просто попробуйте Python27 и поверьте мне, когда я скажу, что он вам понравится (если вы не привыкли ко многим специфичным для Python3X функциям, и позвольте мне сказать вам, их не так много)

Изменить: это заявление несколько лет назад, я сохраню его здесь, но оно больше недействительно.

Поддержка Python 2.7 заканчивается в 2020 году, поэтому я думаю, что это серьезная проблема. Мне кажется, что импорт фьючерсов - это простой способ рефакторинга ошибок оператора печати. Кто-нибудь знает, что еще нужно изменить, чтобы включить прямую совместимость?

@mUtterberg Существует также обновление OpenCV2 до OpenCV3, которое должна пройти фреймворк SimpleCV.

Я новичок в Python и надеюсь начать кодирование камеры / зрения на моем Raspberry Pi. Я уже установил OpenCV 3.4.1 (в конце концов), но я думаю, что simplecv будет лучшей отправной точкой.

Но веб-сайт simplecv кажется довольно устаревшим, и, как видно выше, установка не будет работать должным образом с Python 3.

Я пробовал установить simplecv, но когда я пытаюсь запустить simplecv из командной строки, я получаю те же ошибки печати, что и выше. Я попытался исправить это, добавив круглые скобки в код Python, но затем я начинаю получать различные ошибки импорта, когда пытаюсь запустить simplecv.

Я не знаю, насколько сложно было бы обновить simplecv для работы на Python3, но я, безусловно, был бы признателен за его попытку, если / когда это произойдет.

Ниже приведены ошибки, которые я получаю сейчас ...

pi @ raspberrypi : ~ $ simplecv
RuntimeError: модуль скомпилирован с версией API 0xc, но эта версия numpy - 0xa
Отслеживание (последний вызов последний):
Файл "/ usr / local / bin / simplecv", строка 7, в
из SimpleCV.Shell import main
Файл "/usr/local/lib/python3.5/dist-packages/SimpleCV/__init__.py", строка 3, в
из импорта SimpleCV.base *
Файл "/usr/local/lib/python3.5/dist-packages/SimpleCV/base.py", строка 26, в
импортировать scipy.ndimage как ndimage
Файл "/usr/local/lib/python3.5/dist-packages/scipy/ndimage/__init__.py", строка 161, в
из .filters import *
Файл "/usr/local/lib/python3.5/dist-packages/scipy/ndimage/filters.py", строка 37, в
из . импортировать _nd_image
ImportError: numpy.core.multiarray не удалось импортировать

@chrisgavinlondon , Sight Machine, похоже, отказалась от этой библиотеки, но есть множество ее ответвлений. Я закончил его разветвлением и изменил его до такой степени, что я могу установить и запустить его на моем Raspberry Pi, который по умолчанию использует Python 2.7. Ошибки с точки зрения 2.7 были СУПЕР легкими исправлениями, когда я запускал версию своего форка. Я работаю над тем, чтобы довести его до современной версии Python, но я уверен, что другие работали над собственными форками намного дольше, чем я! На этом этапе нам может быть лучше выбрать чей-то твердый форк и провести там нашу вечеринку SimpleCV.
Но кто знает ?? Может быть, @andrewbaldock @bremac @demaagdk @doclrogers @idfarmer @mechiris @oostendo @struckmannk или @xamox увидят одну из этих тем и решат обратиться к людям за помощью! Поддержание библиотеки, особенно такой существенной, - это большая работа.

Привет @mUtterberg ... моя вилка попыталась переместить SimpleCV с Python2 на Python3. Я исправил большинство проблем. Основным препятствием на данный момент является внутренняя обработка данных. SimpleCV по умолчанию использует 3-канальный (RGB) iplimage внутри, но iplimage устарел. Вместо этого рекомендуется использовать numpy.ndarray, но я не нашел времени на перенос какого-либо кода. Я готов помочь, если у вас (или у кого-то еще) есть вопросы.

Привет @mUtterberg ... моя вилка попыталась переместить SimpleCV с Python2 на Python3. Я исправил большинство проблем. Основным препятствием на данный момент является внутренняя обработка данных. SimpleCV по умолчанию использует 3-канальный (RGB) iplimage внутри, но iplimage устарел. Вместо этого рекомендуется использовать numpy.ndarray, но я не нашел времени на перенос какого-либо кода. Я готов помочь, если у вас (или у кого-то еще) есть вопросы.

Привет @mUtterberg, я просто хочу использовать SimpleCV, чтобы найти круг, ты что, вилка, я могу это сделать? Или все еще не готово? Спасибо

+1

Python 2 официально закрыт. Есть ли планы сделать совместимым с simplecv python 3? Это крутой и простой для понимания пакет. Спасибо.

@jairoareyes В итоге я использовал сам OpenCV, поскольку недавние выпуски api python намного более интуитивно понятны и более или менее исключают необходимость в стороннем api.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

takluyver picture takluyver  ·  30Комментарии

stanchiang picture stanchiang  ·  3Комментарии

slanning6 picture slanning6  ·  8Комментарии

AndreaCrotti picture AndreaCrotti  ·  3Комментарии

maanbsat picture maanbsat  ·  3Комментарии