SlideShare a Scribd company logo
1 of 9
Download to read offline
iOSで笑顔を認識する
@koogawa
• 小川航佑 Kosuke Ogawa
• @koogawa
• 趣味と仕事の両方でiOSアプリを開発
• CoreImageを使います
• iOS 5から顔認識が使えるようになった
• iOS 6から動物認識もできる
• iOS 7から笑顔認識もできる
やりかた
精度を指定
NSDictionary *options =
[NSDictionary dictionaryWithObject:CIDetectorAccuracyHigh
forKey:CIDetectorAccuracy];

• HighとLowを選べる
• High:精度は高いが、パフォーマンスは悪い
• Low:精度は低いが、パフォーマンスは良い
顔認識用のインスタンス生成
CIDetector *detector =
[CIDetector detectorOfType:CIDetectorTypeFace
context:nil
options:options];

• 顔認識なのでCIDetectorTypeFaceを
指定

• 今のところCIDetectorTypeFace以外は
設定できない
UIImageをCIImageに変換
CIImage *ciImage = [[CIImage alloc]
initWithCGImage:originalImage.CGImage];

• 検出はCIImageクラスでないとできな
い

• 画像の向きに注意する(回転してると
正しく認識できない)
笑顔認識を有効にする

NSDictionary *options = @{
CIDetectorSmile: @(YES),
};
顔認識実行
NSArray *features =
[detector featuresInImage:image options:options];
for (CIFaceFeature *feature in features)
{
if (feature.hasSmile) {
// 笑ってる!
}
}

• 認識できた顔の数だけ返ってくる
• 笑っていると判定されるとhasSmileが
YESになる

More Related Content

More from Kosuke Ogawa

iOS対応のCIサービス「Bitrise」を使ってみた
iOS対応のCIサービス「Bitrise」を使ってみたiOS対応のCIサービス「Bitrise」を使ってみた
iOS対応のCIサービス「Bitrise」を使ってみたKosuke Ogawa
 
Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)
Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)
Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)Kosuke Ogawa
 
コードを書かずにUINavigationBarを スワイプで表示/非表示させる
コードを書かずにUINavigationBarを スワイプで表示/非表示させるコードを書かずにUINavigationBarを スワイプで表示/非表示させる
コードを書かずにUINavigationBarを スワイプで表示/非表示させるKosuke Ogawa
 
自作アプリを watchOS 2 対応した話 〜FastCheckin編〜
自作アプリを watchOS 2 対応した話 〜FastCheckin編〜自作アプリを watchOS 2 対応した話 〜FastCheckin編〜
自作アプリを watchOS 2 対応した話 〜FastCheckin編〜Kosuke Ogawa
 
ビールのはなし
ビールのはなしビールのはなし
ビールのはなしKosuke Ogawa
 
What's New in Core Location - WWDC 2015
What's New in Core Location - WWDC 2015What's New in Core Location - WWDC 2015
What's New in Core Location - WWDC 2015Kosuke Ogawa
 
自作アプリを Apple Watch対応した話 〜FastCheckin編〜
自作アプリを Apple Watch対応した話 〜FastCheckin編〜自作アプリを Apple Watch対応した話 〜FastCheckin編〜
自作アプリを Apple Watch対応した話 〜FastCheckin編〜Kosuke Ogawa
 
AppStoreのアプリ動画App Previewsの作り方
AppStoreのアプリ動画App Previewsの作り方AppStoreのアプリ動画App Previewsの作り方
AppStoreのアプリ動画App Previewsの作り方Kosuke Ogawa
 
iOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみるiOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみるKosuke Ogawa
 
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?Kosuke Ogawa
 
facebook/popを使ってみた
facebook/popを使ってみたfacebook/popを使ってみた
facebook/popを使ってみたKosuke Ogawa
 
勉強会に行こう
勉強会に行こう勉強会に行こう
勉強会に行こうKosuke Ogawa
 
Map Kitでローカル検索を試してみた
Map Kitでローカル検索を試してみたMap Kitでローカル検索を試してみた
Map Kitでローカル検索を試してみたKosuke Ogawa
 
UIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみた
UIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみたUIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみた
UIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみたKosuke Ogawa
 
iOSアプリ開発 脱初心者に向けて
iOSアプリ開発 脱初心者に向けてiOSアプリ開発 脱初心者に向けて
iOSアプリ開発 脱初心者に向けてKosuke Ogawa
 
Objective-Cのいろいろな反復処理
Objective-Cのいろいろな反復処理Objective-Cのいろいろな反復処理
Objective-Cのいろいろな反復処理Kosuke Ogawa
 
初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜
初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜
初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜Kosuke Ogawa
 
App Store 申請Tips
App Store 申請TipsApp Store 申請Tips
App Store 申請TipsKosuke Ogawa
 
Dynamic Type の基本的なお話
Dynamic Type の基本的なお話Dynamic Type の基本的なお話
Dynamic Type の基本的なお話Kosuke Ogawa
 
iOSで光を感知する
iOSで光を感知するiOSで光を感知する
iOSで光を感知するKosuke Ogawa
 

More from Kosuke Ogawa (20)

iOS対応のCIサービス「Bitrise」を使ってみた
iOS対応のCIサービス「Bitrise」を使ってみたiOS対応のCIサービス「Bitrise」を使ってみた
iOS対応のCIサービス「Bitrise」を使ってみた
 
Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)
Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)
Stack Overflowで最も投票数の多かったiOS関連のQuestionベスト10(2015年版)
 
コードを書かずにUINavigationBarを スワイプで表示/非表示させる
コードを書かずにUINavigationBarを スワイプで表示/非表示させるコードを書かずにUINavigationBarを スワイプで表示/非表示させる
コードを書かずにUINavigationBarを スワイプで表示/非表示させる
 
自作アプリを watchOS 2 対応した話 〜FastCheckin編〜
自作アプリを watchOS 2 対応した話 〜FastCheckin編〜自作アプリを watchOS 2 対応した話 〜FastCheckin編〜
自作アプリを watchOS 2 対応した話 〜FastCheckin編〜
 
ビールのはなし
ビールのはなしビールのはなし
ビールのはなし
 
What's New in Core Location - WWDC 2015
What's New in Core Location - WWDC 2015What's New in Core Location - WWDC 2015
What's New in Core Location - WWDC 2015
 
自作アプリを Apple Watch対応した話 〜FastCheckin編〜
自作アプリを Apple Watch対応した話 〜FastCheckin編〜自作アプリを Apple Watch対応した話 〜FastCheckin編〜
自作アプリを Apple Watch対応した話 〜FastCheckin編〜
 
AppStoreのアプリ動画App Previewsの作り方
AppStoreのアプリ動画App Previewsの作り方AppStoreのアプリ動画App Previewsの作り方
AppStoreのアプリ動画App Previewsの作り方
 
iOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみるiOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみる
 
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?
 
facebook/popを使ってみた
facebook/popを使ってみたfacebook/popを使ってみた
facebook/popを使ってみた
 
勉強会に行こう
勉強会に行こう勉強会に行こう
勉強会に行こう
 
Map Kitでローカル検索を試してみた
Map Kitでローカル検索を試してみたMap Kitでローカル検索を試してみた
Map Kitでローカル検索を試してみた
 
UIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみた
UIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみたUIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみた
UIKit DynamicsとCoreMotionを組み合わせて物体を転がしてみた
 
iOSアプリ開発 脱初心者に向けて
iOSアプリ開発 脱初心者に向けてiOSアプリ開発 脱初心者に向けて
iOSアプリ開発 脱初心者に向けて
 
Objective-Cのいろいろな反復処理
Objective-Cのいろいろな反復処理Objective-Cのいろいろな反復処理
Objective-Cのいろいろな反復処理
 
初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜
初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜
初めてのテスト 〜2014年だしXcodeで単体テストでも初めてみるか〜
 
App Store 申請Tips
App Store 申請TipsApp Store 申請Tips
App Store 申請Tips
 
Dynamic Type の基本的なお話
Dynamic Type の基本的なお話Dynamic Type の基本的なお話
Dynamic Type の基本的なお話
 
iOSで光を感知する
iOSで光を感知するiOSで光を感知する
iOSで光を感知する
 

Recently uploaded

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 

Recently uploaded (7)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

iOSで笑顔を認識する