title: Python & CV2: How do i draw a line on an image with mouse then return line coordinates?
body: <p>I'm looking to draw a line on a video which I'm stepping through frame by frame so I can calculate the angle of the line.  I've made a very simple script which steps through the video and tries to collect the points clicked in each image in an array, however not even this seems to work...  Here's the code:</p>
  
  <pre><code>import cv2, cv
  
  cap = cv2.VideoCapture('video.avi')
  
  box = []
  def on_mouse(event, x, y, flags):
      if event == cv.CV_EVENT_LBUTTONDOWN:
          print 'Mouse Position: '+x+', '+y
          box.append(x, y)
  
  #cv2.rectangle(img, pt1, pt2, color)
  #cv2.line(img, pt1, pt2, color) 
  drawing_box = False
  
  cv.SetMouseCallback('real image', on_mouse, 0)
  count = 0
  while(1):
      _,img = cap.read()
      img = cv2.blur(img, (3,3))
  
      cv2.namedWindow('real image')
      cv2.imshow('real image', img)
  
      if cv2.waitKey(0) == 27:
          cv2.destroyAllWindows()
          break
  print box
  </code></pre>
  
  <p>Any help is appreciated!</p>
  
  <p>Many Thanks</p>
  
  <p>John</p>