Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Swifty range operator and CIDetector power

Swifty range operator and CIDetector power

Presented during the #PotatoTips 54 at Eureka Inc office, Tokyo.

Rebouh Aymen

August 23, 2018
Tweet

Other Decks in Technology

Transcript

  1. ~= operator Check if an array of ೥ྸ contains only

    value between 18 and 25 Before let usersAges = [18, 22, 20, 32] var agesConform = true for age in agesConform {
 if age >= 18 && age <= 25 {
 agesConform = false return } }
 // false After let usersAges = [18, 22, 20, 32]
 usersAges.filter { age >= 18 && age <= 25 }.count == usersAges.count
 // false After #2 let usersAges = [18, 22, 20, 32]
 usersAges.allSatisfy { 18...25 ~= $0 }
 // false
  2. CoreImage - CIDetector How it works Rectangles, QRCode, Text Smile

    ☹, Eye blink CIDetector: Image Processor object Faces
  3. CoreImage - CIDetector Smile detection #1 CIDetector let detector =

    CIDetector( ofType: CIDetectorTypeFace, context: nil, options: [CIDetectorAccuracy: CIDetectorAccuracyHigh] )! #2 Detecting Smile let faces = detector.features( in: CIImage(image: ), options: [CIDetectorSmile: true]) as? [CIFaceFeature] Do what you want For face in faces { // face.bounds, face.hasSmile, face.mouthPosition, etc.. }