Here is the set of Pokemon Gym Badges from the Johto region. They are, from left to right, top to bottom: Zephyr Badge (Violet City), Hive Badge (Azalea Town), Plain Badge (Goldenrod City), Fog Badge (Ecruteak City), Storm Badge (Cianwood City), Mineral Badge (Olivine City), Glacier Badge (Mahogany Town), and Rising Badge (Blackthorn City).
These badges were stitched on 10-mesh plastic canvas with DMC embroidery floss, using the sprites from the games as a base for the patterns. I then glued black felt to the underside of them and attached a tie tack pin to each of them (The image includes a thumbnail to show what the undersides look like). So yes, they can be worn as actual badges! Each badge is approximately 1.5x1.5 inches in size.
I have stitched up the Kanto Gym Badges too, they can be found here: [link]