Re: There's an opt out...?
Face recognition is fairly expensive, so it's hard to do in a way that would work acceptably (time, memory use, battery impact) on everything, including low-end Android kit, without sending something to a server farm. Both Android and iOS ship with face detection frameworks, but you have to use third party IP for face detection. If your Android device happens to have a Snapdragon (S4 or better) CPU, Qualcomm can help you; on iOS, you'd love to be able to get at Apple's proprietary image signal processor to do the job but, AFAICT, Apple won't let you. So what I'd do is pick out possible faces using the built-in framework, and send just those image fragments to the server farm. Less scope for blackmail, but still greater than zero.