Find contours of an image that is not binary
Let's work a bit more on how to prepare an image to be able to find its contours and extract information from it.
We'll process an image of two purple dice loaded as image_dice
and determine what number was rolled for each dice.

In this case, the image is not grayscale or binary yet. This means we need to perform some image pre-processing steps before looking for the contours. First, we'll transform the image to a 2D array grayscale image and next apply thresholding. Finally, the contours are displayed together with the original image.
color
, measure
and filters
modules are already imported so you can use the functions to find contours and apply thresholding.
We also import the io
module to load the image_dice
from local memory, using imread
. Read more here.
This exercise is part of the course
Image Processing in Python
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
# Make the image grayscale
image_dice = color.____(image_dice)