Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
TY
Uploaded by
Takashi Yoshinaga
14,548 views
Azure kinect DKハンズオン
ARコンテンツ作成勉強会でのAzureKinectハンズオン資料
Technology
◦
Related topics:
Insights on Augmented Reality
•
Mixed-Reality
•
Read more
10
Save
Share
Embed
Embed presentation
1
/ 94
2
/ 94
3
/ 94
4
/ 94
5
/ 94
6
/ 94
7
/ 94
8
/ 94
9
/ 94
10
/ 94
11
/ 94
12
/ 94
13
/ 94
14
/ 94
15
/ 94
16
/ 94
17
/ 94
18
/ 94
19
/ 94
20
/ 94
21
/ 94
22
/ 94
23
/ 94
24
/ 94
25
/ 94
26
/ 94
27
/ 94
28
/ 94
29
/ 94
30
/ 94
31
/ 94
32
/ 94
33
/ 94
34
/ 94
35
/ 94
36
/ 94
37
/ 94
38
/ 94
39
/ 94
40
/ 94
41
/ 94
42
/ 94
43
/ 94
44
/ 94
45
/ 94
46
/ 94
47
/ 94
48
/ 94
49
/ 94
50
/ 94
51
/ 94
52
/ 94
53
/ 94
54
/ 94
55
/ 94
56
/ 94
57
/ 94
58
/ 94
59
/ 94
60
/ 94
61
/ 94
62
/ 94
63
/ 94
64
/ 94
65
/ 94
66
/ 94
67
/ 94
68
/ 94
69
/ 94
70
/ 94
71
/ 94
72
/ 94
73
/ 94
74
/ 94
75
/ 94
76
/ 94
77
/ 94
78
/ 94
79
/ 94
80
/ 94
81
/ 94
82
/ 94
83
/ 94
84
/ 94
85
/ 94
86
/ 94
87
/ 94
88
/ 94
89
/ 94
90
/ 94
91
/ 94
92
/ 94
93
/ 94
94
/ 94
More Related Content
PDF
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
by
Preferred Networks
PDF
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
PDF
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
by
Preferred Networks
PDF
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
by
Noritaka Sekiyama
PDF
DockerとPodmanの比較
by
Akihiro Suda
PPTX
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
by
Daisuke Miyamoto
PDF
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
by
NTT DATA Technology & Innovation
PDF
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
by
Takeshi Mikami
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
by
Preferred Networks
マルチテナント化で知っておきたいデータベースのこと
by
Amazon Web Services Japan
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
by
Preferred Networks
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
by
Noritaka Sekiyama
DockerとPodmanの比較
by
Akihiro Suda
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
by
Daisuke Miyamoto
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
by
NTT DATA Technology & Innovation
Apache Airflow入門 (マーケティングデータ分析基盤技術勉強会)
by
Takeshi Mikami
What's hot
PDF
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
by
Naoya Kishimoto
PDF
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
by
Ito Takayuki
PPTX
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PPTX
ビッグデータ処理データベースの全体像と使い分け 2018年version
by
Tetsutaro Watanabe
PDF
【de:code 2020】 Azure Kinect DK テクニカル Tips
by
日本マイクロソフト株式会社
PPTX
MLOpsはバズワード
by
Tetsutaro Watanabe
PPTX
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
by
sairoutine
PDF
MagicOnion入門
by
torisoup
PDF
分散トレーシング技術について(Open tracingやjaeger)
by
NTT Communications Technology Development
PPTX
はじめてのElasticsearchクラスタ
by
Satoyuki Tsukano
PDF
Ingress on Azure Kubernetes Service
by
Toru Makabe
PDF
Kubernetesによる機械学習基盤への挑戦
by
Preferred Networks
PDF
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
by
Hibino Hisashi
PDF
HADOにおけるUniRxのObjectPool
by
Yasuyuki Kado
PDF
超実践 Cloud Spanner 設計講座
by
Samir Hammoudi
PDF
Dockerからcontainerdへの移行
by
Kohei Tokunaga
PPTX
Amazon SageMakerでカスタムコンテナを使った学習
by
西岡 賢一郎
PDF
Snowflake Architecture and Performance
by
Mineaki Motohashi
PDF
ドメイン駆動設計のための Spring の上手な使い方
by
増田 亨
PPTX
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
by
NTT DATA Technology & Innovation
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
by
Naoya Kishimoto
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
by
Ito Takayuki
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
ビッグデータ処理データベースの全体像と使い分け 2018年version
by
Tetsutaro Watanabe
【de:code 2020】 Azure Kinect DK テクニカル Tips
by
日本マイクロソフト株式会社
MLOpsはバズワード
by
Tetsutaro Watanabe
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
by
sairoutine
MagicOnion入門
by
torisoup
分散トレーシング技術について(Open tracingやjaeger)
by
NTT Communications Technology Development
はじめてのElasticsearchクラスタ
by
Satoyuki Tsukano
Ingress on Azure Kubernetes Service
by
Toru Makabe
Kubernetesによる機械学習基盤への挑戦
by
Preferred Networks
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
by
Hibino Hisashi
HADOにおけるUniRxのObjectPool
by
Yasuyuki Kado
超実践 Cloud Spanner 設計講座
by
Samir Hammoudi
Dockerからcontainerdへの移行
by
Kohei Tokunaga
Amazon SageMakerでカスタムコンテナを使った学習
by
西岡 賢一郎
Snowflake Architecture and Performance
by
Mineaki Motohashi
ドメイン駆動設計のための Spring の上手な使い方
by
増田 亨
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
by
NTT DATA Technology & Innovation
Similar to Azure kinect DKハンズオン
PDF
Azure Kinect DK体験会
by
Takashi Yoshinaga
PDF
FMCN Kinectハンズオン
by
Keizo Nagamine
PDF
KinectでAR空間に入り込もう
by
Takashi Yoshinaga
PDF
第19回SOIL水曜セミナー:RGB-DカメラでAR空間に入り込もう
by
Takashi Yoshinaga
PDF
Hands on
by
Keiji Kamebuchi
PPTX
関西MSP勉強会~Kinect編~ ハンズオン資料 Kinectで身長を計測しよう!
by
Yasutomo Imairi
PPT
Kinect導入講座
by
nitmic
PPTX
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
by
Takashi Yoshinaga
PDF
GCS2014 TMCN
by
Kaoru NAKAMURA
PDF
Kinect for windows sdk introduction
by
Kaoru NAKAMURA
PPTX
Kinect Hacks for Dummies (Japanese / 日本語)
by
Tomoto Washio
PPTX
Kinect深度情報処理入門
by
伸男 伊藤
PDF
Flex 勉強会 第 166 回@仙台 「AIRKinectについて」 by tokufxug
by
Sadao Tokuyama
PPT
Kinect
by
エンジニア勉強会 エスキュービズム
PDF
ARもVRもMRもまとめてドーン
by
Satoshi Maemoto
PDF
はじめようRGB-Dセンシングと画像処理
by
Takashi Yoshinaga
PDF
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
by
Mori Tetsuya
PDF
Introduction to Kinect vNext
by
Akira Hatsune
PDF
続・Kinect v2を通してMicrosoft技術を考える
by
Yuki Igarashi
PDF
Kinect技術紹介20140407
by
fukuoka-t
Azure Kinect DK体験会
by
Takashi Yoshinaga
FMCN Kinectハンズオン
by
Keizo Nagamine
KinectでAR空間に入り込もう
by
Takashi Yoshinaga
第19回SOIL水曜セミナー:RGB-DカメラでAR空間に入り込もう
by
Takashi Yoshinaga
Hands on
by
Keiji Kamebuchi
関西MSP勉強会~Kinect編~ ハンズオン資料 Kinectで身長を計測しよう!
by
Yasutomo Imairi
Kinect導入講座
by
nitmic
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
by
Takashi Yoshinaga
GCS2014 TMCN
by
Kaoru NAKAMURA
Kinect for windows sdk introduction
by
Kaoru NAKAMURA
Kinect Hacks for Dummies (Japanese / 日本語)
by
Tomoto Washio
Kinect深度情報処理入門
by
伸男 伊藤
Flex 勉強会 第 166 回@仙台 「AIRKinectについて」 by tokufxug
by
Sadao Tokuyama
Kinect
by
エンジニア勉強会 エスキュービズム
ARもVRもMRもまとめてドーン
by
Satoshi Maemoto
はじめようRGB-Dセンシングと画像処理
by
Takashi Yoshinaga
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
by
Mori Tetsuya
Introduction to Kinect vNext
by
Akira Hatsune
続・Kinect v2を通してMicrosoft技術を考える
by
Yuki Igarashi
Kinect技術紹介20140407
by
fukuoka-t
More from Takashi Yoshinaga
PPTX
HoloLens2とMeta QuestではじめるWebXR
by
Takashi Yoshinaga
PPTX
【準備編】OculusQuest/HoloLens2対応WebXR開発
by
Takashi Yoshinaga
PPTX
ARコンテンツ作成勉強会( #AR_Fukuoka )紹介
by
Takashi Yoshinaga
PPTX
AI x WebAR: MediaPipeのハンドトラッキングを使ってみよう
by
Takashi Yoshinaga
PPTX
iPad LiDARでエンジニアカフェを3Dスキャン
by
Takashi Yoshinaga
PPTX
AI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
by
Takashi Yoshinaga
PPTX
Web技術ではじめようAR/VRアプリ開発
by
Takashi Yoshinaga
PPTX
MRTKをNreal Lightに対応させてみた
by
Takashi Yoshinaga
PPTX
Nreal Lightハンズオン
by
Takashi Yoshinaga
PPTX
【準備編!】HoloLens 2/Oculus Quest対応WebXRハンズオン
by
Takashi Yoshinaga
PPTX
A-Frameで始めるWebXRとハンドトラッキング (HoloLens2/Oculus Quest対応)
by
Takashi Yoshinaga
PPTX
Holo-SDKハンズオン:はじめようヘッドトラッキングを用いた3D表現
by
Takashi Yoshinaga
PPTX
FUKUOKA Engineers Day 2021 発表資料:AR Fukuoka & HoloBox紹介
by
Takashi Yoshinaga
PPTX
Voxon Photonics VX1で遊んでみた
by
Takashi Yoshinaga
PPTX
AR-Frame x AR.js入門
by
Takashi Yoshinaga
PPTX
AI x WebXR: フェイストラッキングを用いた擬似3D表現を解説!
by
Takashi Yoshinaga
PPTX
コロナ禍中のコミュニティ活動
by
Takashi Yoshinaga
PPTX
Project HoloBox
by
Takashi Yoshinaga
PPTX
AR Fukuoka紹介2020
by
Takashi Yoshinaga
PPTX
iPad LiDARで作ってみた in AR Fukuoka 忘年会2020
by
Takashi Yoshinaga
HoloLens2とMeta QuestではじめるWebXR
by
Takashi Yoshinaga
【準備編】OculusQuest/HoloLens2対応WebXR開発
by
Takashi Yoshinaga
ARコンテンツ作成勉強会( #AR_Fukuoka )紹介
by
Takashi Yoshinaga
AI x WebAR: MediaPipeのハンドトラッキングを使ってみよう
by
Takashi Yoshinaga
iPad LiDARでエンジニアカフェを3Dスキャン
by
Takashi Yoshinaga
AI x OpenCV x WebAR: Selfie Segmentationを使ってみよう
by
Takashi Yoshinaga
Web技術ではじめようAR/VRアプリ開発
by
Takashi Yoshinaga
MRTKをNreal Lightに対応させてみた
by
Takashi Yoshinaga
Nreal Lightハンズオン
by
Takashi Yoshinaga
【準備編!】HoloLens 2/Oculus Quest対応WebXRハンズオン
by
Takashi Yoshinaga
A-Frameで始めるWebXRとハンドトラッキング (HoloLens2/Oculus Quest対応)
by
Takashi Yoshinaga
Holo-SDKハンズオン:はじめようヘッドトラッキングを用いた3D表現
by
Takashi Yoshinaga
FUKUOKA Engineers Day 2021 発表資料:AR Fukuoka & HoloBox紹介
by
Takashi Yoshinaga
Voxon Photonics VX1で遊んでみた
by
Takashi Yoshinaga
AR-Frame x AR.js入門
by
Takashi Yoshinaga
AI x WebXR: フェイストラッキングを用いた擬似3D表現を解説!
by
Takashi Yoshinaga
コロナ禍中のコミュニティ活動
by
Takashi Yoshinaga
Project HoloBox
by
Takashi Yoshinaga
AR Fukuoka紹介2020
by
Takashi Yoshinaga
iPad LiDARで作ってみた in AR Fukuoka 忘年会2020
by
Takashi Yoshinaga
Recently uploaded
PDF
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
PPTX
DrupalCon Nara 2025の記録 .
by
iPride Co., Ltd.
PDF
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
by
TomohiroKusu
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
by
PC Cluster Consortium
PDF
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
by
NTT DATA Technology & Innovation
PDF
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
by
Sugiyama Yugo
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
DrupalCon Nara 2025の記録 .
by
iPride Co., Ltd.
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
by
TomohiroKusu
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
by
PC Cluster Consortium
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
by
NTT DATA Technology & Innovation
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
by
Sugiyama Yugo
Azure kinect DKハンズオン
1.
ARコンテンツ作成勉強会 Azure Kinectハンズオン
2.
ビルド済みのSDKや演習用素材のDL http://arfukuoka.lolipop.jp/Azure Kinect/Sample.zip
3.
自己紹介 氏名:吉永崇(Takashi Yoshinaga) 所属:九州先端科学技術研究所(ISIT) 専門:ARを用いた医療支援や運動計測 コミュニティ:ARコンテンツ作成勉強会 主催
4.
#AR_Fukuoka #AzureKinect ハッシュタグ
5.
Kinect Kinect(キネクト)とはMicrosoft社のゲーム機、XBOX360 専用のジェスチャー入力コントローラとして発売された機器 カラー画像・深度(Depth)情報の取得や身体の認識等が可能 深度センサ(赤外線プロジェクタ+赤外線カメラ) カラーカメラ
6.
Kinectの歴史 ハックされた後、ロボットやxR系の研究者やアーティストに普及 バージョンアップが繰り返されたがV2が2017年に生産中止 XBOX版 Kinect
for Windows Kinect V2 DevKit Kinect V2 for Windows/XBOX
7.
Azure Kinect DK
2019年6月末に発売開始(米国・中国のみ) ゲーム用ではなくビジネス向けの計測機器として販売
8.
Azure Kinect DKの機器概要
Depth、カラー画像、音声、加速度・角速度 複数のKinectの間での同期も可能 7つのマイク Depthカメラ (TOF方式) Colorカメラ 加速度・各速度 複数Kinectの同期
9.
特徴①:Point Cloud 従来と比べてDepth(点群)のデータが低ノイズ
10.
Azure Kinect vs
Kinect V2 http://azure-v2.glitch.me
11.
特徴②:計測設定のバリエーション 広角 挟角 視野角は広角/挟角から選択可能
解像度を犠牲して奥行きの範囲の拡大も可能 カラー画像やIMUやマイクなど様々なセンサと併用可能
12.
Azure Kinect Viewerで動かそう Open
Device
13.
Azure Kinect Viewerで動かそう [Depth計測の設定] NFOV:視野角→狭い WFOV:視野角→広い Binned:計測距離→長い ただし解像度低下 Startで計測開始
14.
Azure Kinect Viewerで動かそう 赤外線画像
Depth画像 Color画像 IMU (加速度・角速度) マイク
15.
Azure Kinect Viewerで動かそう ①
3D ②マウスで視点変更
16.
今回のゴール AzureKinectで取得した点群 (Point Cloud)をリアルタイムにAR表示
17.
注意! • SDKの更新はGitHub上で頻繁に行われて いるので今日のサンプルが明日使える保証はあり ません。 • 現状、開発のための情報も少ないので、GitHubで 公開されているサンプル(C#)を読み解けると役に 立つと思ったため、ハンズオンのコードも公式サンプ ルに近い形にしています。 そのためUnity的にあまり良いコードでは無い と思いますのでご了承ください。
18.
プロジェクトの作成 New
19.
プロジェクトの作成 Create Project プロジェクト名 保存場所
20.
プロジェクトの作成
21.
.NET環境の切り替え ①File ②Build Setting
22.
.NET環境の切り替え Player Settings
23.
.NET環境の切り替え Other Settings
24.
.NET環境の切り替え Scripting Runtime Versionを .NET
4.X Equivalent Api Compatibility Levelを .NET 4.X
25.
AzureKinect SDKの導入 Assetsを右クリック
26.
AzureKinect SDKの導入 ①Create ②Folder
27.
AzureKinect SDKの導入 New FolderをPluginsにリネーム
28.
AzureKinect SDKの導入 Pluginsを開いておく
29.
AzureKinect SDKの導入 ①Sample¥Pluginsフォルダ ②全ファイルをPlugins フォルダにドラッグ&ドロップ
30.
AzureKinect SDKの導入 ①SDKがインストールされたフォルダを開く C:¥Program Files¥Azure
Kinect SDK v1.2.0¥sdk¥windows-desktop¥amd64¥release¥bin ②depthengine_2_0.dllを Pluginsフォルダにドラッグ&ドロップ
31.
PointCloud表示用オブジェクトの作成 右クリック
32.
PointCloud表示用オブジェクトの作成 Create Empty
33.
PointCloud表示用オブジェクトの作成 ①GameObject ②PointCloudにリネーム
34.
PointCloud表示用オブジェクトの作成 Add Component
35.
PointCloud表示用オブジェクトの作成 ①meshで検索 ②Mesh Filter
36.
PointCloud表示用オブジェクトの作成 Add Component
37.
PointCloud表示用オブジェクトの作成 Mesh Renderer
38.
PointCloud表示用オブジェクトの作成 Materialsを開く
39.
PointCloud表示用オブジェクトの作成 Element0を確認 ※このあと色つきのPoint Cloud描画を設定する
40.
Point Cloud描画用マテリアルの追加 ①Sampleフォルダ ②PointCloudをダブルクリック ③Import
41.
Point Cloud描画用マテリアルの追加 ①Assets ②ColoredVertexとPointCloudが追加されている
42.
Point Cloud描画用マテリアルの追加 ①PointCloud ②PointCloudをElement0に ドラッグ&ドロップ
43.
Point Cloud描画用マテリアルの追加 Custom/ColoredVertex
44.
Point Cloud描画用スクリプトの作成 ①Point Cloud ②Add
Component
45.
Point Cloud描画用スクリプトの作成 ①検索ワードを消す ②New Script ③KinectScript ④Create
and Add
46.
Point Cloud描画用スクリプトの作成 Scriptが追加されている
47.
Ctrl +S
48.
Point Cloud描画用スクリプトの作成 KinectScriptをダブルクリック
49.
Point Cloud描画用スクリプトの作成
50.
AzureKinectの起動と終了 using UnityEngine; using Microsoft.Azure.Kinect.Sensor; public
class KinectScript : MonoBehaviour { Device device; //Kinectの情報を扱う変数 void Start() { InitKinect(); //Kinectを初期化 } void InitKinect() { //Kinectの初期化を行う(次のページ) } /*スペースの都合上割愛*/ }
51.
AzureKinectの起動と終了 void InitKinect() { device =
Device.Open(0); //Kinectに接続 device.StartCameras(new DeviceConfiguration { ColorFormat = ImageFormat.ColorBGRA32, ColorResolution = ColorResolution.R720p, DepthMode = DepthMode.NFOV_Unbinned, SynchronizedImagesOnly = true, CameraFPS = FPS.FPS30, }); } void OnDestroy() { device.StopCameras(); }
52.
動作確認 Play
53.
動作確認 LEDが点灯
54.
動作確認 再度Playをクリックして停止
55.
PointCloud描画の準備 Device device; int width,
height, num; //Depth画像の縦幅・横幅・全ピクセル数 void Start(){ /*スペースの都合により割愛*/ } void InitKinect() { device = Device.Open(0); device.StartCameras ( /*スペースの都合により割愛*/ ); //Depth画像の横幅と縦幅を取得し、全点数を算出 width = device.GetCalibration(). depth_camera_calibration.resolution_width; height = device.GetCalibration(). depth_camera_calibration.resolution_height; num = height * width; }
56.
PointCloud描画の準備 int width, height,
num; Mesh mesh; //点(図形)の集合を描画するために使用 Vector3[] vertices; //点群(PointCloud)の各座標を格納 Color32[] colors; //各頂点の色情報を格納 int[] indices; //描画する頂点のリスト void Start() { InitKinect(); InitMesh(); //メッシュ情報の初期化 } void InitMesh() { //次のページで解説 }
57.
PointCloud描画の準備 void InitMesh() { mesh =
new Mesh(); //65535点以上描画する際に下記を記述 mesh.indexFormat = UnityEngine.Rendering.IndexFormat.UInt32; //Depth画像の総ピクセル数分の頂点や色の記憶領域を確保 vertices = new Vector3[num]; colors = new Color32[num]; indices = new int[num]; //次のページに続く }
58.
これから描画するもの まずは試しにDepth画像と同数の点を縦横に並べてみる
59.
PointCloud描画の準備 /*前ページの続き(InitMesh内)*/ int index =
0; //何番目の点を操作するのかを表す変数 for (int y = 0; y < height; y++) { for (int x = 0; x < width; x++) { vertices[index].x = x ; vertices[index].y = y ; vertices[index].z = 2; colors[index].r = 0; colors [index].g = 0; colors [index].b = 255; colors [index].a = 255; indices[index] = index; index++; } } 各頂点の座標を仮置き 各頂点の色を仮置き(=青) index番目の点は描画する
60.
PointCloud描画の準備 /*前頁の続き*/ int index =
0; for (int y = 0; y < height; y++) { for (int x = 0; x < width; x++) { /*スペースの都合により割愛*/ } } //頂点座標と色をmeshに渡す mesh.vertices = vertices; mesh.colors32 = colors; //リストに格納した番号の頂点座標を点として描画 mesh.SetIndices(indices, MeshTopology.Points, 0); //メッシュをこのオブジェクトのMeshFilterに適用 gameObject.GetComponent<MeshFilter>().mesh = mesh;
61.
動作確認 ちょっと見づらい
62.
動作確認 ①Sceneタブ ②Point Cloudをダブルクリック
63.
AzureKinectからのデータ取得 Int[] indices; Transformation trans;
//座標変換(Depth画像→xyzなど) void Start() { /*割愛*/ } void InitKinect() { /*割愛*/ width = device.GetCalibration(). depth_camera_calibration.resolution_width; height = device.GetCalibration(). depth_camera_calibration.resolution_height; num = height * width; /*Depth画像(pixel)を実空間の座標系(mm)に変換したり カラー画像との座標を合わせたりするのに使用する*/ trans = device.GetCalibration().CreateTransformation(); }
64.
AzureKinectからのデータ取得 using UnityEngine; using Microsoft.Azure.Kinect.Sensor; //非同期処理を行う準備 using
System.Threading.Tasks; public class KinectScript : MonoBehaviour { Device device; int width, height, num; Mesh mesh; Vector3[] vertices; Color32[] colors; int[] indices; /*以下割愛*/
65.
AzureKinectからのデータ取得 void Start() { InitKinect(); InitMesh(); Task t
= KinectLoop( ); } private async Task KinectLoop( ) { while (true) { //この中でAzureKinectからデータを取り続ける } }
66.
AzureKinectからのデータ取得 While (true) { //GetCaptureでKinectから送られてくるフレームを取得 using (Capture
capture = await Task.Run(() => device.GetCapture()).ConfigureAwait(true)) { //capture.Depthデプス画像を取得。 //さらにDeptuImageToPointCloudでxyzに変換 Image pImage = trans.DepthImageToPointCloud(capture.Depth); //変換後のデータから純粋に点の座標のデータのみを取得 Short3[] pointCloud = pImage.GetPixels<Short3>().ToArray(); /*このあとPointCloudを描画する*/ } }
67.
AzureKinectからのデータ取得 using (Capture capture
= await Task.Run(() => device.GetCapture()).ConfigureAwait(true)) { Image pImage = trans.DepthImageToPointCloud(capture.Depth); Short3[] pointCloud = pImage.GetPixels<Short3>().ToArray(); //Kinectで取得した全点の座標をmeshで使用する頂点配列に代入 for (int i = 0; i < num; i++) { vertices[i].x = pointCloud[i].X * 0.001f; vertices[i].y = pointCloud[i].Y * 0.001f; vertices[i].z = pointCloud[i].Z * 0.001f; } //meshに情報を反映 mesh.vertices = vertices; mesh.RecalculateBounds(); }
68.
動作確認、の前に。。。 ①MainCameraを選択 ②Positionを0 0 0
69.
動作確認 実行中にSceneタブに切り替えると いろいろな視点から観察できる
70.
Azure Kinectの座標系
71.
AzureKinectからのデータ取得 using (Capture capture
= await Task.Run(() => device.GetCapture()).ConfigureAwait(true)) { Image pImage = trans.DepthImageToPointCloud(capture.Depth); Short3[] pointCloud = pImage.GetPixels<Short3>().ToArray(); //Kinectで取得した全点の座標をmeshで使用する頂点配列に代入 for (int i = 0; i < num; i++) { vertices[i].x = pointCloud[i].X * 0.001f; vertices[i].y = -pointCloud[i].Y * 0.001f; vertices[i].z = pointCloud[i].Z * 0.001f; } //meshに情報を反映 mesh.vertices = vertices; mesh.RecalculateBounds(); }
72.
動作確認 実行中にSceneタブに切り替えると いろいろな視点から観察できる
73.
色情報の反映 (KinectLoop内) while (true) { using
(Capture capture = await Task.Run(() => device.GetCapture()).ConfigureAwait(true)) { //Depth画像との位置・サイズ合わせ済みの画像を取得 Image modifiedColor = trans.ColorImageToDepthCamera(capture); //純粋に各ピクセルの色情報だけを抜き出す BGRA[] colorArray = modifiedColor.GetPixels<BGRA>().ToArray(); Image pImage = trans.DepthImageToPointCloud(capture.Depth); Short3[] pointCloud = pImage.GetPixels<Short3>().ToArray(); /*次のページに続く*/
74.
色情報の反映 (KinectLoop内) /*前頁からの続き*/ //Kinectで取得した全点の座標をmeshで使用する頂点配列に代入 for (int
i = 0; i < num; i++) { vertices[i].x = pointCloud[i].X * 0.001f; vertices[i].y = -pointCloud[i].Y * 0.001f; vertices[i].z = pointCloud[i].Z * 0.001f; colors[i].a = 255; colors [i].b = colorArray[i].B; colors [i].g = colorArray[i].G; colors [i].r = colorArray[i].R; } //meshに情報を反映 mesh.vertices = vertices; mesh.colors32 = colors; mesh.RecalculateBounds();
75.
動作確認
76.
VuforiaでAR化しよう File
77.
Vuforia Build Settings
78.
Vuforia PlayerSettings
79.
Vuforia 下のほうにスクロール
80.
Vuforia ①XR Settings ②Vuforia Augmented
Reality
81.
Vuforia Accept
82.
Vuforia チェックされてればOK
83.
Vuforia MainCameraを削除
84.
Vuforia 空白を右クリック
85.
Vuforia ①VuforiaEngine ②ARCamera
86.
Vuforia ①空白を右クリック ②Vuforia Engine ③Image
87.
Vuforia ①ImageTargetをダブルクリック
88.
Vuforia PointCloudをImageTargetに ドラッグ&ドロップ
89.
Vuforia PointCloudがImageTarget の子要素になればOK
90.
位置や大きさを整える ①PointCloud ②位置と大きさを調整 Position 0 0.5
-1 Scale 1 1 1
91.
カメラの選択 ②Open Vuforia Engine
Configuration ①ARCamera
92.
カメラの選択 Camera DeviceでUSBカメラを選択
93.
このマーカーを使って動作確認
94.
完成