It's very strange to me that it's using PIL to open the images received from the camera... perhaps there's a different class you can use to receive images?
If you're using the OpenCV api, getting images from the camera is straightfoward. You can get images using that URL and the following code (note that error checking is not complete):
Code:
import cv2
import sys
vc = cv2.VideoCapture()
if not vc.open('http://%s/mjpg/video.mjpg' % sys.argv[1]):
exit(1)
while True:
retval, img = vc.read()
if not retval:
break
# do something with img...
Perhaps you could capture the images that way, and then create a SimpleCV image object from the numpy array found in img?