The Terminus building in Atlanta works like this. You select your floor as you walk in (it's possible to do mid stride) and then the screen says "ELEVATOR 4" so when you get there you just walk in to an elevator that has no buttons, just a screen that says "TODAYS WEATHER: JSON FEED NOT FOUND".
A problem with the floor selector in the hall is when some people enter the elevator together without selecting a floor. The system thinks that there is still space in the elevator, but in fact it is full, so it stops at different floors without anyone being able to enter. I've seen this happen quite often in a corporate building during the end of business hours and lunch hours.
At Twitter/X HQ they have these, and you can "trick" it into going express to your floor by pressing the button in the hall repeatedly so the car then thinks it is full and won't stop at other floors.
Having said that, the default system is also ignorant to the current weigh of the elevator so it is still subject to stopping on floors without there being any space left.
Trying to figure out space available from the number of people seems unreliable, but I wonder if you can use a set of heuristics such as having a max weight at which point the elevator is assumed full and if it stops to let someone on but the weight doesn't increase assume the elevator is full (maybe require this to happen twice in a row?, IDK, false positives probably aren't too expensive.)
My assumption is that, above a certain number of floors, the floor selector in the hall is better because it has more advance information for any planning. The downside being that it's unfamiliar to anyone who doesn't use the system regularly.