These flowers are called kingyousou in Japanese which means goldfish grass because the flowers sort of look like like goldfish (especially the red, yellow and orange varieties). But they are called Snapdragons in English or Antirrhinum in scientific Latin.
One of my favorites. They are popular in English cottage gardens. They are annuals but they last two years at least here, and they self seed well in our rock garden.