Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CoreMLで実現する爆速のARサイズ計測
Search
Kohei Arai
September 06, 2019
Technology
2.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CoreMLで実現する爆速のARサイズ計測
9/6(金)に行われたiOSDC 2019でのLT資料です。
Kohei Arai
September 06, 2019
More Decks by Kohei Arai
See All by Kohei Arai
VisionKit_Basics.pdf
kokoheia
0
210
Swift5_Cheet_Sheet.pdf
kokoheia
7
1.4k
Other Decks in Technology
See All in Technology
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
2
770
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
450
React Nativeでの OTA Updateって、 どう説明する?
ichiki1023
0
120
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
190
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
480
Databricksメトリクスビューはじめてのもくもく会
taka_aki
0
140
AI駆動開発で仕様はどこまで書くべきか? ― 人とAIの責務境界から考える開発プロセスの実践
takahiromatsui
1
240
VS Code × GitHub Copilot での Fabric 開発
ryomaru0825
1
190
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
20260915deck.gl-raster を使ってみた
rena1208
0
170
Making AI Agents Safe and Fast- Jev, Obsidian, and the Meta-Harness
x5gtrn
PRO
0
160
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
550
RailsConf 2023
tenderlove
30
1.6k
The agentic SEO stack - context over prompts
schlessera
0
950
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
490
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.1k
A Soul's Torment
seathinner
8
3.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Transcript
iOSDC 2019 CoreMLで実現する 爆速のARサイズ計測 Kohei Arai @kokoheia
Kohei Arai @kokoheia • Mercari / 新卒 iOS Engineer •
Twitter: @kokoheia • Instagram: @kokoheia • ポートレートを撮るのが趣味です • 最近PUBGにハマっています
突然ですが、みなさん こんな経験をしたことは ありませんか?
「フリマアプリで洋服を出品したい!」
特に、洋服の「サイズ」を載せたい (コメントで聞かれた。。)
そうだ、AR Measureで 測ってみよう!
。。。。
。。。結構面倒くさい • そもそも測る場所がわからない • 測り方が合ってるか自信ない • 何枚も出品したいけど時間かけたくない。。
IN THE NEXT FIVE MONTHS ARメジャーの課題 • ARの体験に慣れるのに時間がかかる • 大きいものを測るのが大変
• メジャーを代替しただけなので計測にかか る時間はあまり変わらず Item 1 Item 2 Item 3 Item 4 Item 5 40 30 20 10 0
テクノロジーを使って もっと簡単に測ることは できないか!?
ML(機械学習) ✖AR で 爆速 & 超簡単にサイズ計測する
Demo
None
仕組み 画像を撮影 ML(機械学習)で 画像内の特徴点の座標を 推定 特徴点の座標を元に AR Kitを使って現実世界 のスケールを得る。
MLモデル created by ARヒノボル / @liketableteninu 姿勢推定のモデルを応用 Alibabaのデータセット
2Dの推定 3Dの推定(AR) 仕組み
どれくらい 速くなったのか?
測定した対象 袖丈、肩幅、身幅、着丈の4点 出典: https://minne.com/items/17640623
サイズ計測にかかる時間 自力 ML + AR 40 ~ 50秒 10 ~
15秒
もっと速くしたい!
CoreMLを使って サーバレスで推定
Demo 2: CoreML
None
サイズ計測にかかる時間 自力 AR + ML (サーバー) 40 ~ 50秒 10
~ 15秒 AR + CoreML 5秒未満
MLモデルの生成 Created by ARヒノボル / @liketableteninu
推定の精度 サーバー CoreML 身幅 2cm以内 2cm以内 着丈 5cm以内 5cm以内 袖丈
10cm前後 10cm前後 肩幅 10cm前後 10cm前後 推定しやすい 推定しづらい
• モデル自体を改善する ◦ カテゴリごとの画像の数を増やして学習する • 物体認識の精度をあげる (for CoreML) ◦ 機械学習で物体認識してから、その範囲内で推定すると精度が上がる
精度を改善するために
ML ✖ AR Measureの可能性 • 人間のサイズも測定できる → 服と照らし合わせてフィット度を計測する • 靴やインテリアなど、服以外の商品にも応用が可能
ご清聴ありがとうございました!
おまけ
推定の速度 サーバー(GPU) サーバー(CPU) CoreML 2 ~ 3秒以下 6秒程度 1秒以下
月あたりコスト(一例) サーバー(GPU) サーバー(CPU) CoreML 約68,000円 / 台 約13,000円 / 台
無料 GPUはaws p2.xlarge, CPUはaws c5xlargeを参照。 GPU: 0.9(USD/hr) * 24 hrs * 30 days * 105(JPY/USD) = 68,040JPY CPU: 0.17(USD/hr) * 24 hrs * 30 days * 105(JPY/USD) = 12,852JPY
Pytorchからモデルを変換した理由 • Turi Create や Create MLでモデルを作ることも 検討した • Pythonで書かれた機械学習用のライブラリに比
べるとできる処理も限られていたためPytorchか らの変換を採用
非同期のHit Test処理
非同期のHit Test処理のTips Hit Testには3種類ある • ARSCNView hitTest(_ point: CGPoint, types:
ARHitTestResult.ResultType) -> [ARHitTestResult] • ARSKView hitTest(_ point: CGPoint, types: ARHitTestResult.ResultType) -> [ARHitTestResult] • ARFrame hitTest(_ point: CGPoint, types: ARHitTestResult.ResultType) -> [ARHitTestResult]
非同期のHit Test処理のTips • 画像をサーバに送りレスポンスが帰ってくるのを待たなくては行 けなかった • 今回は画像撮影時のARFrameを保存しておいて、レスポンスが 帰ってきてから、保存済みのARFrameからhitTest処理をするとい う実装をした •
最初、予想した結果とはるかに異なる点がプロットされて戸惑っ た
非同期のHit Test処理のTips ARFrameを使ってhitTestをするときは、結果をinvertしないといけなかった
参考 • https://www.digitaltrends.com/mobile/how-to-use-the-measure-app-in-ios-12/ • https://github.com/matterport/Mask_RCNN • https://github.com/LiMeng95/MultiPoseNet.pytorch • https://tianchi.aliyun.com/mobile/gameDetail/231670 •
https://qiita.com/kamata1729/items/e54bcb7d0ed3d296daf8 • https://aws.amazon.com/jp/emr/pricing/ • https://pytorch.org/ • https://github.com/onnx/onnx • https://github.com/onnx/onnx-coreml • https://developer.apple.com/documentation/arkit/arframe/2875718-hittest