Search code examples
pythonopencvpiphomebrewsimplecv

SimpleCV IOError When Running Hello World Program


I've been trying to setup SimpleCV on my Mac for several days now. I finally got everything installed, but running the hello world program

from SimpleCV import Camera
# Initialize the camera
cam = Camera()
# Loop to continuously get images
while True:
    # Get Image from camera
    img = cam.getImage()
    # Make image black and white
    img = img.binarize()
    # Draw the text "Hello World" on image
    img.drawText("Hello World!")
    # Show the image
    img.show()

found on their homepage returns the following error:

  File "helloworld.py", line 13, in <module>
    img.show()
  File "/usr/local/lib/python2.7/site-packages/SimpleCV/ImageClass.py", line 5447, in show
    d = Display(self.size())
  File "/usr/local/lib/python2.7/site-packages/SimpleCV/Display.py", line 158, in __init__
    scvLogo = SimpleCV.Image("simplecv").scale(32,32)
  File "/usr/local/lib/python2.7/site-packages/SimpleCV/ImageClass.py", line 787, in __init__
    self._pil = pil.open(self.filename).convert("RGB")
  File "/usr/local/lib/python2.7/site-packages/PIL/Image.py", line 2237, in open
    fp = builtins.open(fp, "rb")
IOError: [Errno 2] No such file or directory: '/usr/local/lib/python2.7/site-packages/SimpleCV/sampleimages/simplecv.png'
Cleaned up camera.

After a lot of trial and error, I ended up the with following brew packages:

atk         eigen           glib            isl         mercurial       pcre            scipy           swig
autoconf        fontconfig      gmp         jpeg            mpfr            pixman          sdl         webp
automake        freetype        gobject-introspection   libffi          numpy           pkg-config      sdl_image       xz
brew-cask       gcc         gtk+            libmpc          opencv          portmidi        sdl_mixer
cairo           gdbm            harfbuzz        libpng          openexr         pygame          sdl_ttf
cloog           gdk-pixbuf      icu4c           libtiff         openssl         python          smpeg
cmake           gettext         ilmbase         libtool         pango           readline        sqlite

and the following pip packages:

funcsigs (0.4)
gnureadline (6.3.3)
ipython (2.3.1)
mercurial (3.2.4)
nose (1.3.4)
numpy (1.9.1)
obd (0.2.0)
Pillow (2.7.0)
pip (6.0.6)
pygame (1.9.1release)
pyparsing (2.0.3)
pyserial (2.7)
scipy (0.14.0)
setuptools (11.3.1)
SimpleCV (1.3)
six (1.9.0)
svgwrite (1.1.6)

installed on my system.


Solution

  • One of the ubuntu/pip packages had that file missing and it broke everything. There's no issue with your files. If you can build from github source, it would be the best option and would give you a lot more modules. This should be helpful.