By the way, just having a single pic or two of a particular buck, little or no other history about him, it's very easy to both under or over-age him. As a hunter-manager, one of my personal goals is generally to avoid killing a buck younger than 4 1/2, therefore, just as with the tooth-wear aging, I tend to state the minimum age I believe a particular buck has high probability of being (ie. little chance of being any younger that that).
You will typically see deer officially aged (toothwear method) as "X, or older".
Ironically, at least on bucks 3 1/2 & older, we often underage bucks by a year.
And late season, sometimes we over-age yearlings as 2 1/2's!
But just by pics, we can easily be off a year either way.
Very healthy young bucks (especially if living in a high-nutrition, low-stress environment) will often appear a year older than actual age, such as a 2 1/2 "looking" 3 1/2, or a 3 1/2 "looking" 4 1/2.
So I may be overly cautious not to over-age a particular buck, having many times done that, finding out post-mortem that the buck just killed was actually a year (or two!) younger based on the tooth-wear method. I once took a P&Y 8-pointer I believed at the moment to be 4 1/2 --- but after myself plus two very experience deer agers examined the jaw bones, the conclusion was he was only 2 1/2.
You absolutely cannot go much by the antlers for aging purposes, and sometimes a particular buck just has his own unique body profile traits that make him look either younger or older. Ever seen a young person of normal size, but with a very large neck? Or maybe a well-fed teenager with a sagging belly?
Having year-to-year "history" (with lots of pics, particularly during the rut timeframe) can be very useful in determining a particular buck's age.