What you are doing here is known in image research as Segmentation...
That is dividing an image up basied on simularities in color, texture, and pre-defined shapes.
This is a very very hard subject and one that IM does not provide a good interface too at this time. However I will give you some info,
FIRST.. Color quantization (using -colors) is designed to find the best colors for color reduction and dithering. It is not designed to find areas of simular colors.
SECOND... the first stage of separation basied on colors is in IM as a -segment
operator. Unformtuatally it does not appear to work well, and then only on very large images, not the small ones you typically use in testing operators.
This option only does segmentation of the image in terms of colors, with some color counting attributes.
If you are interested in segmentation You can look at..
Leptonica graphics library Documentation --- Color Segmentation
http://www.leptonica.com/color-segmentation.html
Whcih seems to do a better job that the IM -segment operator.
Also google for other pages, and contribute your findings to this forum wit ha subject of image segmentation.
There is another aspect of segmentation. Cutting images up into vertical and horizontal slices, separating it on lines or columns of constant color.
A usful subset of segmentation, which I places into script and hopefully will get built into IM at some point in the future..
http://www.imagemagick.org/Usage/scripts/divide_vert
I was hoping to eventually use this to 'auto-divide' GIF animations into separate animated parts. See IM Examples... Splitting up an Animation
http://www.imagemagick.org/Usage/anim_mods/#split