Just as an aside, I don't know the stats for SF, but in Seattle the "invisible" homeless outnumbered the street-homeless 2:1. Street-homeless people tend to cause the most problems and put the most strain on the system, but there are a lot more people sleeping in cars, shelters, temporary housing, and couchsurfing, who are still homeless and need help.
I honestly think SF and Seattle need to be tougher on the street-homeless but IMO it's important to remember that there are a lot more homeless people than the obnoxious ones. Those are just the ones you notice, because they are obnoxious.