SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
今、改めて振りたい
iPhone搭載のセンサとその使い道
1
iOSDC Japan 2021 Day2
Atsushi OTSUBO / @rirex5
今、改めて振りたい
iPhone搭載のセンサとその使い道
2
iOSDC Japan 2021 Day2
振り返りたい
Atsushi OTSUBO / @rirex5
大坪 敦 @rirex5
# 所属
DeNA Co., Ltd.
iOS Engineer
# 好きなこと
ものづくり (スマホアプリ・電子工作) / ランニング / 旅行 / 家探し
3
APIを叩く
はじめに
4
入力
(スクリーン、
カメラ、etc...)
出力
(スクリーン・サ
ウンド、etc...)
結果
ユーザ iPhone
/ App
API
Server
APIを叩く
はじめに
5
入力
(スクリーン、
カメラ、etc...)
出力
(スクリーン・サ
ウンド、etc...)
結果
ユーザ iPhone
/ App
API
Server
割と話題に上がる
今回はこちらの話
その他
位置情報
モーションセンサ
メディア関連
iPhone の主な入力 (センサ) 一覧
6
モーションセンサ
- 加速度
- ジャイロ
- 地磁気 (電子コンパス)
- 歩数計 (Pedometer)
メディア関連
- カメラ
- マイク
7
位置情報
- GPS
- 気圧センサ
その他
- LiDAR (iPhone 12 Pro / MAX等)
- 輝度センサ
- 近接センサ
- タッチパネル
iPhone の主な入力 (センサ) 一覧
モーションセンサ
- 加速度
- ジャイロ
- 地磁気 (電子コンパス)
- 歩数計 (Pedometer)
メディア関連
- カメラ
- マイク
8
位置情報
- GPS
- 気圧センサ
その他
- LiDAR (iPhone 12 Pro / MAX等)
- 輝度センサ
- 近接センサ
- タッチパネル
iPhone の主な入力 (センサ) 一覧
位置情報
GPS
概要
緯度・経度情報など位置・移動に関する情報
プロパティ
- 緯度・経度とその精度
- 高度 (m)
- 移動速度 (m / s)
- 階数
- 出発/到着時刻 (滞在時間)
Core Location / CLLocation Manager から取得
9
位置情報
GPS
概要
緯度・経度情報など位置・移動に関する情報
プロパティ
- 緯度・経度とその精度
- 高度 (m)
- 移動速度 (m / s)
- 階数
- 出発/到着時刻 (滞在時間)
Core Location / CLLocation Manager から取得
10
センササンプルApp
https://github.com/rirex5/iPhoneSensors
位置情報
GPS
用途の一部
● マップアプリ
● 位置情報ゲーム
● Google 検索のリコメンド機能
● and many more...
11
センササンプルアプリ
https://github.com/rirex5/iPhoneSensors
位置情報
気圧センサ
概要
気圧センサ。高度情報も取得できる。
プロパティ
- 気圧 (kPa)
- 相対高度 (m)
- 計測開始時の標高を 0mとする
- iOS15から絶対高度のプロパティが追加されている
Core Motion / CMAltimater から取得
12
センササンプルアプリ
https://github.com/rirex5/iPhoneSensors
用途
● 気圧計アプリ
● 高度計アプリ
● ナビアプリでの一般道と高架の判定
● etc…
以前書いたQiita記事
天気をオフラインで予測できるスマホアプリを作る - Qiita
https://qiita.com/tsuboyan_rirex5/items/06079f07af637f9867ad
位置情報
気圧センサ
13
モーションセンサ
- 加速度
- ジャイロ
- 地磁気 (電子コンパス)
- 歩数計 (Pedometer)
メディア関連
- カメラ
- マイク
iPhone への入力(主なセンサ)一覧
14
位置情報
- GPS
- 気圧センサ
その他
- LiDAR
- 輝度センサ
- 近接センサ
- タッチパネル
モーションセンサ
概要
本体の加速度や傾き、方向を取得できる。
プロパティ
- 加速度 [X/Y/Z] (単位: G)
- 重力 [X/Y/Z] (単位: G)
- 姿勢 [pitch / roll / yaw]
- 地磁気 [X/Y/Z]
15
Core Motion / CMAccelerometerData から取得 センササンプルアプリ
https://github.com/rirex5/iPhoneSensors
センササンプルアプリ
https://github.com/rirex5/iPhoneSensors
モーションセンサ
用途
● スマホ画面の回転検知
● 端末を傾けて遊ぶゲームアプリ
● スマホを振ってタクシーを呼ぶアプリ
● etc...
16
モーションセンサ
- 加速度
- ジャイロ
- 地磁気 (電子コンパス)
- 歩数計 (Pedometer)
メディア関連
- カメラ
- マイク
iPhone への入力(主なセンサ)一覧
17
位置情報
- GPS
- 気圧センサ
その他
- LiDAR
- 輝度センサ
- 近接センサ
- タッチパネル
カメラ
概要
超高性能なスマホの目。
プロパティ
- 画像データ
- Vision Framework・OpenCVなどなど画像処理フレーム
ワークも充実
用途
写真・顔認証・人物、物体のトラッキングなど
18
マイク
概要
iPhone5以降の機種には3つのマイクが搭載
されている。
プロパティ
- サウンドデータ
- 前面上部
- 背面上部
- 底面
用途
録音・音声認識
19
底面マイク
前面上部
背面上部
モーションセンサ
- 加速度
- ジャイロ
- 地磁気 (電子コンパス)
- 歩数計 (Pedometer)
メディア関連
- カメラ
- マイク
iPhone への入力(主なセンサ)一覧
20
位置情報
- GPS
- 気圧センサ
その他
- LiDAR
- 輝度センサ
- 近接センサ
センササンプルアプリ
https://github.com/rirex5/iPhoneSensors
LiDARセンサ
概要
物体との距離を計測可能。赤外線が対象物に反射し
て戻ってくるまでの時間を使って算出している
プロパティ
物体との距離情報をピクセル毎に取得できる
用途
ポートレート撮影、AR、3Dモデル作成、etc
21
カメラ映像 (上)
LiDARセンサ値 (下)
センササンプルアプリ
https://github.com/rirex5/iPhoneSensors
輝度センサ
概要
残念ながら、直接周囲の明るさの輝度センサのプロパティにはアクセ
ス不可
周囲の明るさと連動してスクリーンの輝度が変化するため、スクリー
ンの輝度を介して周囲の明るさを取得する事ができる
プロパティ
- スクリーン輝度 0.0 (暗い) 〜 1.0 (明るい)
22
センササンプルアプリ
https://github.com/rirex5/iPhoneSensors
近接センサ
概要
物体との近接状態を取得できる。(ディスプレイ側)
プロパティ
- 近接しているか [True / False]
用途
通話アプリ、腕立て伏せ記録アプリ
23
モーションセンサ
- 加速度
- ジャイロ
- 地磁気 (電子コンパス)
- 歩数計 (Pedometer)
メディア関連
- カメラ
- マイク
まとめ
24
位置情報
- GPS
- 気圧センサ
その他
- LiDAR
- 輝度センサ
- 近接センサ
- タッチパネル
- スマートフォンは、ユーザとのインターフェース(I/F)を提供する役割を担っている
- iPhoneは紹介したセンサを含む多様なI/Fがサポートされており、アプリエンジニア
だけが自由に扱える
- センサを駆使して、ユニークで面白いユーザ体験を作っていきたいですね
まとめ
25
大坪 敦 @rirex5
# 所属
DeNA Co., Ltd.
iOS Engineer
# 好きなこと
ものづくり (スマホアプリ・電子工作) / ランニング / 旅行 / 家探し
# 出身
福岡(-2018) → 奈良(-2020) → 東京 (現在)
26

Más contenido relacionado

La actualidad más candente

Processingによる可視化と装飾的模様生成の技法
Processingによる可視化と装飾的模様生成の技法Processingによる可視化と装飾的模様生成の技法
Processingによる可視化と装飾的模様生成の技法TatsukiHayama
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計するHideki Takase
 
全力解説!Transformer
全力解説!Transformer全力解説!Transformer
全力解説!TransformerArithmer Inc.
 
メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろうKota Mizushima
 
ナレッジグラフ入門
ナレッジグラフ入門ナレッジグラフ入門
ナレッジグラフ入門KnowledgeGraph
 
ggplot2をつかってみよう
ggplot2をつかってみようggplot2をつかってみよう
ggplot2をつかってみようHiroki Itô
 
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化Gosuke Miyashita
 
FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話NipponAlgorithm
 
関数データ解析の概要とその方法
関数データ解析の概要とその方法関数データ解析の概要とその方法
関数データ解析の概要とその方法Hidetoshi Matsui
 
MediaPipeの紹介
MediaPipeの紹介MediaPipeの紹介
MediaPipeの紹介emakryo
 
相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心takehikoihayashi
 
グラフデータ分析 入門編
グラフデータ分析 入門編グラフデータ分析 入門編
グラフデータ分析 入門編順也 山口
 
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計Takahiro Kubo
 
20190307 visualslam summary
20190307 visualslam summary20190307 visualslam summary
20190307 visualslam summaryTakuya Minagawa
 
ランダムフォレスト
ランダムフォレストランダムフォレスト
ランダムフォレストKinki University
 
WebRTCのオーディオ処理の謎、誰か教えて!
WebRTCのオーディオ処理の謎、誰か教えて!WebRTCのオーディオ処理の謎、誰か教えて!
WebRTCのオーディオ処理の謎、誰か教えて!mganeko
 
Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~
Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~
Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~Satoshi Fujii
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門Yohei Sato
 

La actualidad más candente (20)

Processingによる可視化と装飾的模様生成の技法
Processingによる可視化と装飾的模様生成の技法Processingによる可視化と装飾的模様生成の技法
Processingによる可視化と装飾的模様生成の技法
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計する
 
全力解説!Transformer
全力解説!Transformer全力解説!Transformer
全力解説!Transformer
 
Marp Tutorial
Marp TutorialMarp Tutorial
Marp Tutorial
 
メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろう
 
ナレッジグラフ入門
ナレッジグラフ入門ナレッジグラフ入門
ナレッジグラフ入門
 
ggplot2をつかってみよう
ggplot2をつかってみようggplot2をつかってみよう
ggplot2をつかってみよう
 
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
 
FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話
 
関数データ解析の概要とその方法
関数データ解析の概要とその方法関数データ解析の概要とその方法
関数データ解析の概要とその方法
 
MediaPipeの紹介
MediaPipeの紹介MediaPipeの紹介
MediaPipeの紹介
 
相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心
 
グラフデータ分析 入門編
グラフデータ分析 入門編グラフデータ分析 入門編
グラフデータ分析 入門編
 
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
 
Rの高速化
Rの高速化Rの高速化
Rの高速化
 
20190307 visualslam summary
20190307 visualslam summary20190307 visualslam summary
20190307 visualslam summary
 
ランダムフォレスト
ランダムフォレストランダムフォレスト
ランダムフォレスト
 
WebRTCのオーディオ処理の謎、誰か教えて!
WebRTCのオーディオ処理の謎、誰か教えて!WebRTCのオーディオ処理の謎、誰か教えて!
WebRTCのオーディオ処理の謎、誰か教えて!
 
Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~
Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~
Bioconductorも便利ですよ ~ConsensusClusterPlus(CCP)の紹介~
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門
 

Similar a 今、改めて振り返りたいiPhoneセンサの種類と使われ方

20120422 日本androidの会 横浜支部 smartwatch開発
20120422 日本androidの会 横浜支部 smartwatch開発20120422 日本androidの会 横浜支部 smartwatch開発
20120422 日本androidの会 横浜支部 smartwatch開発ta9mar
 
Android & Nui & Physical Computing
Android & Nui & Physical ComputingAndroid & Nui & Physical Computing
Android & Nui & Physical ComputingTakahiro KUREBAYASHI
 
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016Device WebAPI Consortium
 
iPodTouch で UNIX ぽく遊ぶ
iPodTouch で UNIX ぽく遊ぶiPodTouch で UNIX ぽく遊ぶ
iPodTouch で UNIX ぽく遊ぶKenichiro MATOHARA
 
Android連携ハードウェア
Android連携ハードウェアAndroid連携ハードウェア
Android連携ハードウェアAkira Sasaki
 
Windows Phone 超入門
Windows Phone 超入門Windows Phone 超入門
Windows Phone 超入門Akira Hatsune
 
2010 12 04_ngk_open_streetmap-iphone
2010 12 04_ngk_open_streetmap-iphone2010 12 04_ngk_open_streetmap-iphone
2010 12 04_ngk_open_streetmap-iphoneTom Hayakawa
 
未踏2次 iPhoneソフトウェアモデム開発プロジェクト
未踏2次 iPhoneソフトウェアモデム開発プロジェクト未踏2次 iPhoneソフトウェアモデム開発プロジェクト
未踏2次 iPhoneソフトウェアモデム開発プロジェクトakihiro uehara
 
AppStore申請を一式まるっと自動化する
AppStore申請を一式まるっと自動化するAppStore申請を一式まるっと自動化する
AppStore申請を一式まるっと自動化するTomoki Hasegawa
 
Androidにおける歩数取得とバックグラウンド制限
Androidにおける歩数取得とバックグラウンド制限Androidにおける歩数取得とバックグラウンド制限
Androidにおける歩数取得とバックグラウンド制限Kensuke Izumi
 
ソーシャルゲーム市場とアドビFlash戦略
ソーシャルゲーム市場とアドビFlash戦略ソーシャルゲーム市場とアドビFlash戦略
ソーシャルゲーム市場とアドビFlash戦略Andy Hall
 
AppSwitcherでアプリをユーザーファーストに
AppSwitcherでアプリをユーザーファーストにAppSwitcherでアプリをユーザーファーストに
AppSwitcherでアプリをユーザーファーストにHiramatsu Ryosuke
 
AEDオープンデータプラットフォーム
AEDオープンデータプラットフォームAEDオープンデータプラットフォーム
AEDオープンデータプラットフォームAkira Hatsune
 
TouchDesigenr Beginners' workshop vol.002 2017/07/17
TouchDesigenr Beginners'  workshop vol.002 2017/07/17TouchDesigenr Beginners'  workshop vol.002 2017/07/17
TouchDesigenr Beginners' workshop vol.002 2017/07/17Dan Imagineer
 
Smartphone Market(OS, Devices, Apps)
Smartphone Market(OS, Devices, Apps)Smartphone Market(OS, Devices, Apps)
Smartphone Market(OS, Devices, Apps)Naoko Tsubaki
 
TouchDesigner Beginners' Workshop vol.002
TouchDesigner Beginners' Workshop vol.002TouchDesigner Beginners' Workshop vol.002
TouchDesigner Beginners' Workshop vol.002Imagineers Guild
 
iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介Kato Shingo
 
iPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリiPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリKato Shingo
 
和歌山大学_地域協働演習 LoRaWANウェザーステーション
和歌山大学_地域協働演習 LoRaWANウェザーステーション和歌山大学_地域協働演習 LoRaWANウェザーステーション
和歌山大学_地域協働演習 LoRaWANウェザーステーションCRI Japan, Inc.
 

Similar a 今、改めて振り返りたいiPhoneセンサの種類と使われ方 (20)

20120422 日本androidの会 横浜支部 smartwatch開発
20120422 日本androidの会 横浜支部 smartwatch開発20120422 日本androidの会 横浜支部 smartwatch開発
20120422 日本androidの会 横浜支部 smartwatch開発
 
Android & Nui & Physical Computing
Android & Nui & Physical ComputingAndroid & Nui & Physical Computing
Android & Nui & Physical Computing
 
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
 
iPodTouch で UNIX ぽく遊ぶ
iPodTouch で UNIX ぽく遊ぶiPodTouch で UNIX ぽく遊ぶ
iPodTouch で UNIX ぽく遊ぶ
 
Android連携ハードウェア
Android連携ハードウェアAndroid連携ハードウェア
Android連携ハードウェア
 
Windows Phone 超入門
Windows Phone 超入門Windows Phone 超入門
Windows Phone 超入門
 
2010 12 04_ngk_open_streetmap-iphone
2010 12 04_ngk_open_streetmap-iphone2010 12 04_ngk_open_streetmap-iphone
2010 12 04_ngk_open_streetmap-iphone
 
Ti.trap
Ti.trapTi.trap
Ti.trap
 
未踏2次 iPhoneソフトウェアモデム開発プロジェクト
未踏2次 iPhoneソフトウェアモデム開発プロジェクト未踏2次 iPhoneソフトウェアモデム開発プロジェクト
未踏2次 iPhoneソフトウェアモデム開発プロジェクト
 
AppStore申請を一式まるっと自動化する
AppStore申請を一式まるっと自動化するAppStore申請を一式まるっと自動化する
AppStore申請を一式まるっと自動化する
 
Androidにおける歩数取得とバックグラウンド制限
Androidにおける歩数取得とバックグラウンド制限Androidにおける歩数取得とバックグラウンド制限
Androidにおける歩数取得とバックグラウンド制限
 
ソーシャルゲーム市場とアドビFlash戦略
ソーシャルゲーム市場とアドビFlash戦略ソーシャルゲーム市場とアドビFlash戦略
ソーシャルゲーム市場とアドビFlash戦略
 
AppSwitcherでアプリをユーザーファーストに
AppSwitcherでアプリをユーザーファーストにAppSwitcherでアプリをユーザーファーストに
AppSwitcherでアプリをユーザーファーストに
 
AEDオープンデータプラットフォーム
AEDオープンデータプラットフォームAEDオープンデータプラットフォーム
AEDオープンデータプラットフォーム
 
TouchDesigenr Beginners' workshop vol.002 2017/07/17
TouchDesigenr Beginners'  workshop vol.002 2017/07/17TouchDesigenr Beginners'  workshop vol.002 2017/07/17
TouchDesigenr Beginners' workshop vol.002 2017/07/17
 
Smartphone Market(OS, Devices, Apps)
Smartphone Market(OS, Devices, Apps)Smartphone Market(OS, Devices, Apps)
Smartphone Market(OS, Devices, Apps)
 
TouchDesigner Beginners' Workshop vol.002
TouchDesigner Beginners' Workshop vol.002TouchDesigner Beginners' Workshop vol.002
TouchDesigner Beginners' Workshop vol.002
 
iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介
 
iPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリiPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリ
 
和歌山大学_地域協働演習 LoRaWANウェザーステーション
和歌山大学_地域協働演習 LoRaWANウェザーステーション和歌山大学_地域協働演習 LoRaWANウェザーステーション
和歌山大学_地域協働演習 LoRaWANウェザーステーション
 

今、改めて振り返りたいiPhoneセンサの種類と使われ方