The following question is similar to [Colouring points in a Delaunay Mesh by the number of nearest neighbours](https://mathematica.stackexchange.com/questions/103951/colouring-points-in-a-delaunay-mesh-by-the-number-of-nearest-neighbours) ... but I do not know how adapt this answer to my problem.

I have the following image:

[![enter image description here](https://i.stack.imgur.com/UX4sc.png)](https://i.stack.imgur.com/UX4sc.png)

For detecting the white dots and displaying the Voronoi mesh without edges I use:

```
meanValues = 
  ComponentMeasurements[image,{"Centroid"}];
listData = meanValues /. Rule -> List;
listData = Partition[Flatten[listData[[All, 2]]], 2];
vm = VoronoiMesh[listData];
Graphics[{LightBlue, EdgeForm[Black], 
  MeshPrimitives[vm, {2, "Interior"}]}]

```

[![enter image description here](https://i.stack.imgur.com/PoipO.png)](https://i.stack.imgur.com/PoipO.png)

Now I would like to **display the Voronoi cell areas (overlayed with the `image` or/and together with `ListPlot` of the points `listData`**) and colorize them in such a way that different colors are used for different number of corners corresponding to a Voronoi cell (e.g. 4 corners: green, 5 corners: blue, etc. ).

How can I do that?