The question of when to harvest the seeds depends a lot on how safe the seeds are in their current location. If not eaten by birds or varmints, the sunflower's seeds will remain viable outdoors until next spring at least. If you're confident the seeds are fairly safe from pests, it's best to wait until the plant is mostly dead before harvesting, to make absolutely sure the head is mature and seeds will be viable.
The seeds may be viable now, judging from your picture, but I'd say it's still risky to harvest at this stage of development. Check your head often for animal damage. Usually birds or squirrels will not eat the seeds all at once, but start in patches. If you see damage, it's good to move forward just and get that head inside.
To harvest: (this has worked for me in the past, but there may be more efficient ways to harvest)
- Cut off the entire sunflower head and some inches of stem.
- Set the head on table or similar large flat area inside.
- Use your fingers to pry all the seeds from the flower-head. It will probably take at least 10 minutes to do the whole head.
- Leave the seeds spread out to dry, no more than one layer deep with space around most seeds. Leave to dry for at least a month.
- When the seeds are dry, store in a cool, dark, dry place until you want to plant them. Make sure to label the seeds with species, variety, and year. I've found Ziploc bags work for storing dry seeds.
For general seed saving advice and info, see https://www.seedsavers.org/how-to-save-seeds.