I'm sure that most cops love their kids, but they're not "good" people. They're self-interested jerks, just like the rest of us.
Cops identified a job that:
As such, cops are completely willing to be complicit in horrific abuses of hard-won freedoms, in order to get one of the easiest possible middle-class livings. They're not good people. They're just average people who are sufficiently self-interested that they're willing to overlook nasty shit.
If we want to fix this, the answer isn't to invent amazing perfect human beings. The answer is to fix the incentives. Five simple things that would be a great start
Get rid of the police unions: they block all progress and shield police from the real world.
Introduce merit based pay: base salary plus a potentially generous annual performance bonus. Current pay systems reward seniority, and attendance (large overtime bonuses). Those aren't useful, performance is.
Fire low-performers on a regular basis: every other company does this. if you'd be fired from a McDonald's, you should be fired from the force.
Provide a substantive financial reward to officers who report misconduct by other officers: reporting minor misconduct should buy a nice night out. reporting massive abuse should bring life-changing wealth to the officer.
Pay lawsuit judgments out of the department's bonus pool: the financial reward is the carrot, this is the stick.
This way, even if somebody just wants to be a cop because it's easy, and fun, they'll make the big money by being a good cop, and they'll lose it all if they're a jerk.