I get smooth-looking edges from the following:
convert garbage.png -resize 50% out.png
If I use -scale instead of -resize, then I get rough edges, which is to be expected, because -scale just uses a box filter.
convert garbage.png -scale 50% out.png ## rough edges
You can experiment with different filters like this:
convert garbage.png -filter lanczos -resize 50% out.png
http://www.imagemagick.org/script/command-line-options.php#filter
Lanczos is the default filter in this case anyway, and the result looks pretty good to me.