Short sketch of an example solution for exercise 2: 1) If both the horizontal and the vertical part of the stair are visible for the camera, they are indistinguishable if their appearance is the same. This is the case if (for every color) the amount of light being reflected in direction to the camera is the same for both parts, e.g. if both the camera and the lightsource point to each part at an angle of 45°. 2b) from PIL import Image import numpy #Load in image file into a writable numpy image img = numpy.asarray( Image.open("B1.png") ).copy() #Get the channels r, g, b = img[:,:,0], img[:,:,1], img[:,:,2] #Compute the pixelwise correctionfactor based on the pixelwise brightness gray = (r*0.2989 + g*0.5870 + b*0.1140) meangray=numpy.mean(gray) factor=meangray/gray #Set all pixels to the same brightness r, g, b = r*factor, g*factor, b*factor #crop all color values so that they lie between 0 and 255 r[r<0], g[g<0] ,b[b<0] = 0,0,0 r[r>255], g[g>255], b[b>255] = 255,255,255 #write the modified channels back into the image img[:,:,0], img[:,:,1], img[:,:,2] = r, g, b #Save the image in a new image file Image.fromarray(img).save("B2.png") 3) The time difference between row 200 and row 201 is euqal to the time of one half frame, i.e. 1/50s. The car travels at a speed of 50km/h=13.9m/s=139pixels/s. Thus the pixel difference is 139/50=2.78ixels.