title: Get the average color inside a contour with Open CV
body: <p>So I decided to get started learning Open CV and Python together!</p>
  
  <p>My first project is to detect moving objects on a relatively still background and then detect their average color to sort them. There are at least 10 objects to detect and I am processing a colored video.</p>
  
  <p>So far I managed to remove the background, identify the contours (optionally get the center of each contour) but now I am struggling getting the average or mean color inside of each contour. There are some topics about this kind of question but most of them are written in C. Apparently I could use <code>cv.mean()</code> but I can't get a working mask to feed in this function. I guess it's not so difficult but I am stuck there... Cheers!</p>
  
  <pre><code>import numpy as np
  import cv2
  
  video_path = 'test.h264'
  
  cap = cv2.VideoCapture(video_path)
  fgbg = cv2.createBackgroundSubtractorMOG2()
  
  
  while (cap.isOpened):
  
      ret, frame = cap.read()
      if ret==True:
          fgmask = fgbg.apply(frame)
          (contours, hierarchy) = cv2.findContours(fgmask, cv2.RETR_TREE,cv2.CHAIN_APPROX_NONE)
  
          for c in contours:
              if cv2.contourArea(c) &gt; 2000:
                  cv2.drawContours(frame, c, -1, (255,0,0), 3)
          cv2.imshow('foreground and background',fgmask)
          cv2.imshow('rgb',frame)
  
      key = cv2.waitKey(1) &amp; 0xFF
  
      if key == ord("q"):
          break
  
  cap.release()
  cv2.destroyAllWindows()
  </code></pre>