Soak them for an hour or longer in slightly warm (not boiled) white vinegar. Then use a nylon-net or plastic scrubbie to remove film. Still there? The damage must be etching (tiny scratches that occur in the dishwasher) and is permanent, sorry to say. To avoid this altogether, hand-wash your best glasses.