title: SimpleBlobDetector Blob Count
body: <p>How can you determine the number of blobs found using SimpleBlobDetector in Python 2.7? I have sample code finding and marking the blobs in my image but also need to know how many blobs matched my parameters.</p>
  
  <pre><code>#!/usr/bin/python
  
  # Standard imports
  import cv2
  import numpy as np;
  from matplotlib import pyplot as plt
  
  # Read image
  im = cv2.imread("blob.jpg")
  
  # Setup SimpleBlobDetector parameters.
  params = cv2.SimpleBlobDetector_Params()
  
  # Change thresholds
  params.minThreshold = 10
  params.maxThreshold = 200
  
  # Filter by Area.
  params.filterByArea = True
  params.minArea = 15
  
  # Filter by Circularity
  params.filterByCircularity = True
  params.minCircularity = 0.1
  
  # Filter by Convexity
  params.filterByConvexity = True
  params.minConvexity = 0.87
  
  # Filter by Inertia
  params.filterByInertia = True
  params.minInertiaRatio = 0.01
  
  # Create a detector with the parameters
  detector = cv2.SimpleBlobDetector(params)
  
  # Detect blobs.
  keypoints = detector.detect(im)
  
  # Draw detected blobs as red circles.
  # cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS ensures
  # the size of the circle corresponds to the size of blob
  
  im_with_keypoints = cv2.drawKeypoints(im, keypoints, np.array([]), (255,0,0), cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS
  
  titles = ['Blobs Detected']
  images = [im_with_keypoints]
  
  
  for i in xrange(1):    
      plt.subplot(1,1,i+1), plt.imshow(images[i],'gray')
      plt.title(titles[i])
      plt.xticks([]), plt.yticks([])  # to hide tick values on X and Y axis    
  plt.show()
  </code></pre>