洋服サイズ計測アプリの開発 ~日常に溶け込むMagicLeapを目指して~

1
洋服サイズ計測アプリの開発
~日常に溶け込むMagicLeapを目指して~
Magic Leap × docomo MeetUp vol.1
2
松下 日昇 @ ARヒノボル
ホロラボ在籍
元Mercari, Inc. R4D XR Research
Engineer
大学院ではComputer Vision /
Deep Learningを専攻
電脳コイルが好き
3
アプリの概要
アジェンダ
カメラ周辺処理の実現02
01
まとめと感想03
4
アプリの概要
Brief app introduction
5
概要
● どんなもの?
○ 洋服のサイズを簡単に計測できるML1アプリ
● なぜやった?
○ AR/MRが日常に潜む不便を解消する技術に
なり得ると示したかった
○ Magicverseの思想に繋がる(ブログ)
● いつやった?
○ メルカリR4D-XR 所属時に開発
● その他
○ AWE USA 2019 にて初公開・展示
○ 特許出願済み
(メルカリの許可を得て発表してます)
AWEでの展示の様子
6
AIとARを掛け合わせることで,洋服を一瞥し,トリガーを一回引くのみで,
サイズを測定できる簡単便利なMagicLeapOneアプリ
コンセプト
7Demo 動画リンク
8
計測の流れ① ~Detect planar of clothes~
服のある平面
エッジデバイス側で,平面が
ワールド座標系においてどこ
に存在しているのか,自分と
の位置関係がどうなっている
のかは検出できる
しかしどの平面が服のある
平面かは判断できない
なので写真撮影した瞬間,
カメラが向いている先にある
平面を「服のある平面」
として記録する
他の平面
他の平面
X
Y Z
ワールド座標系
9
計測の流れ② ~Detect keypoints by AI~
MultiPoseNet[1]の内のKeypointEstimationSubnet
を実装したサーバー
[1] Kocabas, M., Salih K., and Emre A. "Multiposenet: Fast multi-person pose estimation using pose residual network." ECCV 2018.
カメラ画像
Keypoints
アップロード
ダウンロード
10
計測の流れ③ ~Plot 2D points to 3D points by AR~
デバイスが記録している平面
(洋服がその上にあると仮定)
カメラ中心
カメラ
画像平面
X
Y Z
RaycastV
U
(u, v)
Rayが平面に衝突した場所
= 求めたい3次元点 (x, y, z)
ワールド座標系
画像座標系
3次元点が求まれば,
2点間の距離を出せばサイズが分かる!
例)肩幅なら3, 4の距離を測定
11
カメラ周辺処理の実現方法
Details about camera processing
12
【前提】カメラ周りの座標系とその変換
カメラ中心
カメラ
画像平面
V
U
ワールド原点
X
Y Z
ワールド座標系
画像座標系
X
M
Y
M
Z
M
MainCameraの座標が原点
ML1座標系
XC
YC ZC
cameraToWorldMatrix
で座標変換
撮影カメラ座標系
回転はなく、平行移動のみ
カメラ内部パラメータで変換
13
プロットを実現するために必要な情報(ワールド座標系)
②カメラ中心
カメラ
画像平面
X
Y Z
RaycastV
U
③keypoint
(u, v)
Rayが平面に衝突した場所
= 求めたい3次元点 (x, y, z)
ワールド
座標系
画像座標系
XC
YC
ZC
カメラ
座標系
① プロット先となる平面情報
= 服が置かれている平面
② RayCastの始点
= カメラ中心 = カメラ座標系の (0, 0, 0)
= ワールド座標系におけるカメラ中心
③ RayCastの方角
= カメラ中心から見てkeypointがある方向
= 画像座標系におけるkeypoint
= カメラ座標系におけるkeypoint
= ワールド座標系におけるkeypoint
ワールド中心
①
14
プロットを実現するために必要な情報(ワールド座標系)
②カメラ中心
カメラ
画像平面
X
Y Z
RaycastV
U
③keypoint
(u, v)
Rayが平面に衝突した場所
= 求めたい3次元点 (x, y, z)
ワールド
座標系
画像座標系
XC
YC ZC
カメラ
座標系
① プロット先となる平面情報
= 服が置かれている平面
② RayCastの始点
= カメラ中心 = カメラ座標系の (0, 0, 0)
= ワールド座標系におけるカメラ中心
③ RayCastの方角
= カメラ中心から見てkeypointがある方向
= 画像座標系におけるkeypoint
= カメラ座標系におけるkeypoint
= ワールド座標系におけるkeypoint
ワールド中心
①
既知未知
15
ML1 での画像キャプチャの基本(Unity の場合)
MLCamera API を使い外部カメラで
撮影した画像を取得可能
ただし、スクリーンを通して見る像
とは位置のずれが発生する
MLCamera
で利用される
外部カメラ
カメラ画像: 1960x1080
スクリーン画像: 1280x960
スクリーン画像とカメラ画像のおおよその位置関係
16
ML1 の中心点と撮影用カメラとの位置関係
ML1の中心点
撮影用カメラ
の中心点
約11.5cm
約6.6cm
X
Y
Z
XC
YC
ZC
ML1
座標系
カメラ座標系
カメラ座標の(0, 0, 0)
→z方向に+0.066, x方向に-0.115平行移動でML1座標系に変換
→cameraToWorldMatrixでワールド座標系に変換
②~RayCastの始点~への答え
実はML1の中心点と、撮影
用カメラの中心点は異なる
そのためずれが生じていた
SDK v0.19当時はこの情報が
出ていなかったので、
定規でふんわり計測した
17
カメラ/ワールド座標系でのkeypointを求める
画像座標とカメラ座標間の関係式より
と表せる
→内部パラメータが分かれば良い(zcは任意)
→カメラキャリブレーションで取得 カメラ中心
カメラ
画像平面
RaycastV
U
③keypoint
(u, v) / (xC, yC, zC)
画像座標系
XC
YC
ZC
カメラ
座標系
カメラ座標点
内部パラメータ
(未知)
画像座標点(
既知)
画像座標系のkeypoint
→上記の式からカメラ座標系に変換
→平行移動してML1座標系に変換
→cameraToWorldMatrixでワールド座標系に変換
③~RayCastの方向~への答
え
18
プロットを実現するために必要な情報(ワールド座標系)
②カメラ中心
カメラ
画像平面
X
Y Z
RaycastV
U
③keypoint
(u, v)
Rayが平面に衝突した場所
= 求めたい3次元点 (x, y, z)
ワールド
座標系
画像座標系
X
C
Y
C
Z
Cカメラ
座標系
① プロット先となる平面情報
= 服が置かれている平面
② RayCastの始点
= カメラ中心 = カメラ座標系の (0, 0, 0)
= ワールド座標系におけるカメラ中心
③ RayCastの方角
= カメラ中心から見てkeypointがある方向
= 画像座標系におけるkeypoint
= カメラ座標系におけるkeypoint
= ワールド座標系におけるkeypoint
ワールド中心
①
全て既知
19
ほかにも気を付けるべきこと
● システムによって座標系が異なる
○ 座標変換を忘れずに行う(大事)
○ cameraToWorldTransformはUnityの関数なのになぜかOpenGL形式なので罠
X
Y
Z
X
Y
ZX
Y Z
Unity OpenCV OpenGL
20
まとめと感想
Summary
21
まとめと感想
● カメラ周りの処理は、座標系が絡んで混乱しがち
○ 一度理解できれば、それ以降は楽
日常に溶け込ませるためには・・・
● ARと相性の良いAIの活用
○ カメラにより常に現実をとらえ続け、AIによってコンテキストを人間の代わりに理解し、
結果をディスプレイに分かりやすく表示できるから
○ エッジデバイスであるML1のみでGPUを利用したDLが動かせるようになってほしい
● 洗練されたUI/UX
○ 機能は完成しても、UI/UXが洗練されていないと使ってもらえない
○ (もっとML側でベースとなるようなUIを用意してほしいなぁ)
■ 弊社のたるこすがMRTKをML1に対応させたもの
22
【補足】実はアップデート(v0.22)によって
MLCamera API にカメラパラメータと、カメラ中心とワールド中心の位置関係
が取得できるようになっていた........!!!?!??
● GetIntrinsicCalibrationParameters()
○ Get camera intrinsic parameter.
● GetFramePose()
○ Get transform between world origin and the camera.
これからはこの値を使うことでより簡単に、正確に測定することが可能(血涙)
1 of 22

Recommended

Mixed Reality Toolkit V2のMixed Reality Scene Systemを使う by
Mixed Reality Toolkit V2のMixed Reality Scene Systemを使うMixed Reality Toolkit V2のMixed Reality Scene Systemを使う
Mixed Reality Toolkit V2のMixed Reality Scene Systemを使うTakahiro Miyaura
1.1K views21 slides
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ... by
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...
OpenXR + XR Interaction Toolkit使ったHoloLensコンテンツ開発検証 ~ (私が)完全に理解できたらちゃんと作れて、いろ...Takahiro Miyaura
624 views29 slides
Immersal を活用した AR クラウドなシステム開発とハンズオン! by
Immersal を活用した AR クラウドなシステム開発とハンズオン!Immersal を活用した AR クラウドなシステム開発とハンズオン!
Immersal を活用した AR クラウドなシステム開発とハンズオン!NishoMatsusita
1.3K views59 slides
MRTKをNreal Lightに対応させてみた by
MRTKをNreal Lightに対応させてみたMRTKをNreal Lightに対応させてみた
MRTKをNreal Lightに対応させてみたTakashi Yoshinaga
1.3K views25 slides
Azure Object Anchors のQuick Startで理解を深めたい by
Azure Object Anchors のQuick Startで理解を深めたいAzure Object Anchors のQuick Startで理解を深めたい
Azure Object Anchors のQuick Startで理解を深めたいTakahiro Miyaura
349 views17 slides
遅延の少ないLivePreview方法 by
遅延の少ないLivePreview方法遅延の少ないLivePreview方法
遅延の少ないLivePreview方法Tatsuya Sakai
949 views17 slides

More Related Content

What's hot

5分でわかる Sensor SDK by
5分でわかる Sensor SDK5分でわかる Sensor SDK
5分でわかる Sensor SDKUnityTechnologiesJapan002
3K views13 slides
MRTK3を調べてみた by
MRTK3を調べてみたMRTK3を調べてみた
MRTK3を調べてみたTakahiro Miyaura
386 views27 slides
5分でわかる Unity点群 by
5分でわかる Unity点群5分でわかる Unity点群
5分でわかる Unity点群UnityTechnologiesJapan002
882 views12 slides
めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題 by
めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題
めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題Kenta Iwasaki
8.3K views28 slides
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について by
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能についてUnityTechnologiesJapan002
952 views41 slides
Halo2 におけるHFSM(階層型有限状態マシン) 【ビヘイビアツリー解説】 by
Halo2 におけるHFSM(階層型有限状態マシン)  【ビヘイビアツリー解説】Halo2 におけるHFSM(階層型有限状態マシン)  【ビヘイビアツリー解説】
Halo2 におけるHFSM(階層型有限状態マシン) 【ビヘイビアツリー解説】Youichiro Miyake
6.9K views156 slides

What's hot(20)

めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題 by Kenta Iwasaki
めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題
めざせスカウター! HoloLensによる特定個人の 顔認識アプリ制作とその課題
Kenta Iwasaki8.3K views
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について by UnityTechnologiesJapan002
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について
建設シミュレータOCSの開発 / OCS・VTC on Unity におけるROS対応機能について
Halo2 におけるHFSM(階層型有限状態マシン) 【ビヘイビアツリー解説】 by Youichiro Miyake
Halo2 におけるHFSM(階層型有限状態マシン)  【ビヘイビアツリー解説】Halo2 におけるHFSM(階層型有限状態マシン)  【ビヘイビアツリー解説】
Halo2 におけるHFSM(階層型有限状態マシン) 【ビヘイビアツリー解説】
Youichiro Miyake6.9K views
ピクサー USD 入門 新たなコンテンツパイプラインを構築する by Takahito Tejima
ピクサー USD 入門 新たなコンテンツパイプラインを構築するピクサー USD 入門 新たなコンテンツパイプラインを構築する
ピクサー USD 入門 新たなコンテンツパイプラインを構築する
Takahito Tejima36.5K views
OpenVRやOpenXRの基本的なことを調べてみた by Takahiro Miyaura
OpenVRやOpenXRの基本的なことを調べてみたOpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
Takahiro Miyaura2.1K views
UnityによるHoloLensアプリケーション入門 by Yuichi Ishii
UnityによるHoloLensアプリケーション入門UnityによるHoloLensアプリケーション入門
UnityによるHoloLensアプリケーション入門
Yuichi Ishii14.7K views
Azure Spatial Anchorsを活用したHoloLens & Androidシェアリングアプリ by Takahiro Miyaura
Azure Spatial Anchorsを活用したHoloLens & AndroidシェアリングアプリAzure Spatial Anchorsを活用したHoloLens & Androidシェアリングアプリ
Azure Spatial Anchorsを活用したHoloLens & Androidシェアリングアプリ
Takahiro Miyaura1.2K views
Mixed Reality Toolkit 3 のチュートリアル「Zappy’s Playground」の紹介 by Takahiro Miyaura
Mixed Reality Toolkit 3 のチュートリアル「Zappy’s Playground」の紹介Mixed Reality Toolkit 3 のチュートリアル「Zappy’s Playground」の紹介
Mixed Reality Toolkit 3 のチュートリアル「Zappy’s Playground」の紹介
Takahiro Miyaura224 views
World Locking Tools V1.0.0について~ 機能と導入 ~ by Takahiro Miyaura
World Locking Tools V1.0.0について~ 機能と導入 ~ World Locking Tools V1.0.0について~ 機能と導入 ~
World Locking Tools V1.0.0について~ 機能と導入 ~
Takahiro Miyaura2.8K views
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜 by SSII
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII3K views
OPTPiX SpriteStudioと他社ツール比較(真)資料1 - 株式会社ウェブテクノロジ - GTMF 2018 OSAKA / TOKYO by Game Tools & Middleware Forum
OPTPiX SpriteStudioと他社ツール比較(真)資料1 - 株式会社ウェブテクノロジ - GTMF 2018 OSAKA / TOKYOOPTPiX SpriteStudioと他社ツール比較(真)資料1 - 株式会社ウェブテクノロジ - GTMF 2018 OSAKA / TOKYO
OPTPiX SpriteStudioと他社ツール比較(真)資料1 - 株式会社ウェブテクノロジ - GTMF 2018 OSAKA / TOKYO
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO by Game Tools & Middleware Forum
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYOゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術 by VirtualCast, Inc.
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術
XR Kaigi 2020 / “VRの世界で生きていく” ための基盤技術
VirtualCast, Inc.2.5K views
はじめようARCore:自己位置推定・平面検出・FaceTracking by Takashi Yoshinaga
はじめようARCore:自己位置推定・平面検出・FaceTrackingはじめようARCore:自己位置推定・平面検出・FaceTracking
はじめようARCore:自己位置推定・平面検出・FaceTracking
Takashi Yoshinaga34.3K views
ビジネスをデザインする匠Method by Hagimoto Junzo
ビジネスをデザインする匠Methodビジネスをデザインする匠Method
ビジネスをデザインする匠Method
Hagimoto Junzo2.1K views

Similar to 洋服サイズ計測アプリの開発 ~日常に溶け込むMagicLeapを目指して~

洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来 by
洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来
洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来NishoMatsusita
1.2K views20 slides
MYQLO〜あなたの拡張クローゼット〜 by
MYQLO〜あなたの拡張クローゼット〜MYQLO〜あなたの拡張クローゼット〜
MYQLO〜あなたの拡張クローゼット〜Ryota Aoki
836 views20 slides
MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~ by
MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~
MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~Teruchika Yamada
2.4K views91 slides
AndroidでARの夢を再び 〜ARCoreの導入から応用まで by
AndroidでARの夢を再び 〜ARCoreの導入から応用までAndroidでARの夢を再び 〜ARCoreの導入から応用まで
AndroidでARの夢を再び 〜ARCoreの導入から応用までKenichi Takahashi
3.7K views56 slides
【続】OpenXRでHoloLensアプリを作る by
【続】OpenXRでHoloLensアプリを作る【続】OpenXRでHoloLensアプリを作る
【続】OpenXRでHoloLensアプリを作るTakahiro Miyaura
431 views27 slides
モバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdf by
モバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdfモバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdf
モバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdfニフクラ mobile backend
439 views43 slides

Similar to 洋服サイズ計測アプリの開発 ~日常に溶け込むMagicLeapを目指して~(20)

洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来 by NishoMatsusita
洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来
洋服サイズ計測アプリ開発・展示談とAR x e-Commerceの未来
NishoMatsusita1.2K views
MYQLO〜あなたの拡張クローゼット〜 by Ryota Aoki
MYQLO〜あなたの拡張クローゼット〜MYQLO〜あなたの拡張クローゼット〜
MYQLO〜あなたの拡張クローゼット〜
Ryota Aoki836 views
MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~ by Teruchika Yamada
MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~
MRアプリを Power Apps で爆速開発 ~Low Code で 仮想世界へGo!~
Teruchika Yamada2.4K views
AndroidでARの夢を再び 〜ARCoreの導入から応用まで by Kenichi Takahashi
AndroidでARの夢を再び 〜ARCoreの導入から応用までAndroidでARの夢を再び 〜ARCoreの導入から応用まで
AndroidでARの夢を再び 〜ARCoreの導入から応用まで
Kenichi Takahashi3.7K views
【続】OpenXRでHoloLensアプリを作る by Takahiro Miyaura
【続】OpenXRでHoloLensアプリを作る【続】OpenXRでHoloLensアプリを作る
【続】OpenXRでHoloLensアプリを作る
Takahiro Miyaura431 views
モバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdf by ニフクラ mobile backend
モバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdfモバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdf
モバイル向けクラウド「ニフクラ mobile backend」っていったい何?.pdf
ソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdf by 耕二 阿部
ソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdfソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdf
ソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdf
耕二 阿部13 views
リコーUCSの開発をリーンスタートアップ的視点でふりかえる by Yohei Yamamoto
リコーUCSの開発をリーンスタートアップ的視点でふりかえるリコーUCSの開発をリーンスタートアップ的視点でふりかえる
リコーUCSの開発をリーンスタートアップ的視点でふりかえる
Yohei Yamamoto6.1K views
【Unite 2018 Tokyo】AndroidでAR〜ARCoreの導入から応用、使う上での勘所まで by UnityTechnologiesJapan002
【Unite 2018 Tokyo】AndroidでAR〜ARCoreの導入から応用、使う上での勘所まで【Unite 2018 Tokyo】AndroidでAR〜ARCoreの導入から応用、使う上での勘所まで
【Unite 2018 Tokyo】AndroidでAR〜ARCoreの導入から応用、使う上での勘所まで
モバイル&コンシューマ向けのシステム開発ができるPHP&Javaプログラマの皆様へ by ekushida
モバイル&コンシューマ向けのシステム開発ができるPHP&Javaプログラマの皆様へモバイル&コンシューマ向けのシステム開発ができるPHP&Javaプログラマの皆様へ
モバイル&コンシューマ向けのシステム開発ができるPHP&Javaプログラマの皆様へ
ekushida1.5K views
131207 NECTJ Workshop 2 by NECTJ
131207 NECTJ Workshop 2131207 NECTJ Workshop 2
131207 NECTJ Workshop 2
NECTJ545 views
『年末年始に開発したアプリの紹介』(Niantic Lightship ARDK Meetup Vol.1) by Sadao Tokuyama
『年末年始に開発したアプリの紹介』(Niantic Lightship ARDK Meetup Vol.1)『年末年始に開発したアプリの紹介』(Niantic Lightship ARDK Meetup Vol.1)
『年末年始に開発したアプリの紹介』(Niantic Lightship ARDK Meetup Vol.1)
Sadao Tokuyama338 views
HoloLensでコンテンツを操作する方法 - Gaze And Dwell - by Takahiro Miyaura
HoloLensでコンテンツを操作する方法 - Gaze And Dwell -HoloLensでコンテンツを操作する方法 - Gaze And Dwell -
HoloLensでコンテンツを操作する方法 - Gaze And Dwell -
Takahiro Miyaura658 views
#MRDevDaysJP HoloLens 2 アプリ開発入門 by Madoka Chiyoda
#MRDevDaysJP HoloLens 2 アプリ開発入門#MRDevDaysJP HoloLens 2 アプリ開発入門
#MRDevDaysJP HoloLens 2 アプリ開発入門
Madoka Chiyoda658 views
覗いてみよう。with/afterコロナ時代に輝くMixedRealityの世界。 by Shingo Mori
覗いてみよう。with/afterコロナ時代に輝くMixedRealityの世界。覗いてみよう。with/afterコロナ時代に輝くMixedRealityの世界。
覗いてみよう。with/afterコロナ時代に輝くMixedRealityの世界。
Shingo Mori1.3K views
ABC2012Spring 20120324 by Tak Inamori
ABC2012Spring 20120324ABC2012Spring 20120324
ABC2012Spring 20120324
Tak Inamori1.2K views

Recently uploaded

定例会スライド_キャチs 公開用.pdf by
定例会スライド_キャチs 公開用.pdf定例会スライド_キャチs 公開用.pdf
定例会スライド_キャチs 公開用.pdfKeio Robotics Association
121 views64 slides
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向 by
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Hitachi, Ltd. OSS Solution Center.
73 views26 slides
SNMPセキュリティ超入門 by
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門mkoda
376 views15 slides
SSH応用編_20231129.pdf by
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdficebreaker4
353 views13 slides
光コラボは契約してはいけない by
光コラボは契約してはいけない光コラボは契約してはいけない
光コラボは契約してはいけないTakuya Matsunaga
18 views17 slides
The Things Stack説明資料 by The Things Industries by
The Things Stack説明資料 by The Things IndustriesThe Things Stack説明資料 by The Things Industries
The Things Stack説明資料 by The Things IndustriesCRI Japan, Inc.
71 views29 slides

Recently uploaded(11)

SNMPセキュリティ超入門 by mkoda
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門
mkoda376 views
SSH応用編_20231129.pdf by icebreaker4
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdf
icebreaker4353 views
光コラボは契約してはいけない by Takuya Matsunaga
光コラボは契約してはいけない光コラボは契約してはいけない
光コラボは契約してはいけない
Takuya Matsunaga18 views
The Things Stack説明資料 by The Things Industries by CRI Japan, Inc.
The Things Stack説明資料 by The Things IndustriesThe Things Stack説明資料 by The Things Industries
The Things Stack説明資料 by The Things Industries
CRI Japan, Inc.71 views
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20... by NTT DATA Technology & Innovation
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
Windows 11 information that can be used at the development site by Atomu Hidaka
Windows 11 information that can be used at the development siteWindows 11 information that can be used at the development site
Windows 11 information that can be used at the development site
Atomu Hidaka88 views
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) by NTT DATA Technology & Innovation
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)

洋服サイズ計測アプリの開発 ~日常に溶け込むMagicLeapを目指して~

Editor's Notes

  1. 発表するのは,つい2日前に正式にR4DXRに新卒としてジョインした松下日昇ことARヒノボルです.大学院ではCVを専攻していて,ここではMRやARについて取り組んでいきます.きっかけは電脳コイルなので,電脳コイル好きの方がいらっしゃればお声をかけていただければと思います.
  2. ここにメルカリで作ったものだということを書いておく
  3. ポイントはどれだけユーザの操作をなくせるかで、実際にユーザは服があれば、見てクリックするだけで今回は完結するようになっています。
  4. なるべく簡単にできることを意識したので、平面の指定をわざわざしてもらうのはよくないと思った。なので平面は撮影したときに向いている先にあるものを取得することにした。 ただ平面検出は一瞬でできるものではないので、ちゃんと平面が検出されているかのインタラクションが必要。
  5. まずはResNetによって上位の概念を学習させ,Feature Pyramid Networksによって画像の解像度を保つことができる.それらをアップサンプリングして,Keypointsの数だけ出力させたのがヒートマップになって,それぞれが一つのKeypointsに対応している.一つ一つは画像座標,つまりuvの二次元座標
  6. これだけをみると結構簡単に見えるかもしれないが、実は結構いろんな座標系が絡んでいてやってみると複雑だった
  7. 実は撮影カメラ座標系というのが存在した(名前は適当) maincamera
  8. 画像座標系の平面がカメラ座標系のz=1であったとする
  9. これらの未知を一つずつ解明する必要がある。最終的に欲しいのは衝突点のワールド座標。なので ワールド座標で最終的にそろえないと、正しく演算が行えなくなるので、全部揃える。 まずは②を解いていく
  10. ②を求めていく。 このようにずれている理由は、スクリーンで見た時の視点は、ここを中心としているから。 スクリーンとのずれを説明する必要があるかどうか
  11. なのでML1座標系というのを今回は定義しました。カメラの位置関係的に、中心から回転は生じておらず、平行移動 どうして中心点がそこかわかったかというと,原点に小さなSphereをおいてから,頭を移動させたときに 大体そこら辺にあるように見えたから。ここにその中心を出している様子を見せる。 これは実際にメジャーで測ったw なおMLの中心点は、Maincameraの座標で取得できる
  12. ③を求めていく zcはなんでもいいので、例えばzc=1としたら、一つのカメラ座標上での点が定まる。なのであとは内部パラメータが求まれば良いのだけど、少なくともv0.19では提供されていなかったので、チェッカーボードを用意して写真をいっぱいとってカメラキャリブレーションをしてました(これをスライドにするかどうか)。
  13. 全部既知になったので、もういける
  14. 今回は時間が短かったため、UI周りの反省や、AIの詳しい紹介は省きましたが、