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

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
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 (10)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

iOSで笑顔を認識する