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
EN
Uploaded by
Yusuke Matsumoto
PDF, PPTX
1,824 views
ARコンテンツ作成勉強会 はじめてのKinect openFrameworks編
2016年7月9日に開催しましたARコンテンツ作成勉強会の資料です。その模様はhttps://togetter.com/li/998068 をご確認ください。#AR_Fukuoka
Education
◦
Read more
2
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 111
2
/ 111
3
/ 111
4
/ 111
5
/ 111
6
/ 111
7
/ 111
8
/ 111
9
/ 111
10
/ 111
11
/ 111
12
/ 111
13
/ 111
14
/ 111
15
/ 111
16
/ 111
17
/ 111
18
/ 111
19
/ 111
20
/ 111
21
/ 111
22
/ 111
23
/ 111
24
/ 111
25
/ 111
26
/ 111
27
/ 111
28
/ 111
29
/ 111
30
/ 111
31
/ 111
32
/ 111
33
/ 111
34
/ 111
35
/ 111
36
/ 111
37
/ 111
38
/ 111
39
/ 111
40
/ 111
41
/ 111
42
/ 111
43
/ 111
44
/ 111
45
/ 111
46
/ 111
47
/ 111
48
/ 111
49
/ 111
50
/ 111
51
/ 111
52
/ 111
53
/ 111
54
/ 111
55
/ 111
56
/ 111
57
/ 111
58
/ 111
59
/ 111
60
/ 111
61
/ 111
62
/ 111
63
/ 111
64
/ 111
65
/ 111
66
/ 111
67
/ 111
68
/ 111
69
/ 111
70
/ 111
71
/ 111
72
/ 111
73
/ 111
74
/ 111
75
/ 111
76
/ 111
77
/ 111
78
/ 111
79
/ 111
80
/ 111
81
/ 111
82
/ 111
83
/ 111
84
/ 111
85
/ 111
86
/ 111
87
/ 111
88
/ 111
89
/ 111
90
/ 111
91
/ 111
92
/ 111
93
/ 111
94
/ 111
95
/ 111
96
/ 111
97
/ 111
98
/ 111
99
/ 111
100
/ 111
101
/ 111
102
/ 111
103
/ 111
104
/ 111
105
/ 111
106
/ 111
107
/ 111
108
/ 111
109
/ 111
110
/ 111
111
/ 111
More Related Content
PDF
openFrameworks基礎 たくさんの図形を動かす 静的配列と動的配列 - 芸大グラフィックスプログラミング演習B
by
Atsushi Tadokoro
PDF
WebSocketでカメラの映像を共有してみた
by
onozaty
PDF
Raspberry PiとノートPCを繋げよう
by
VirtualTech Japan Inc./Begi.net Inc.
PDF
ももち浜TECHカフェ:OpenCVとKinectで作ろう壁面タッチパネル
by
Takashi Yoshinaga
PDF
TVM の紹介
by
Masahiro Masuda
PDF
はじめようARCore:自己位置推定・平面検出・FaceTracking
by
Takashi Yoshinaga
PDF
コンピュータビジョンの観点から見たAIの公平性
by
cvpaper. challenge
PDF
20分くらいでわかった気分になれるC++20コルーチン
by
yohhoy
openFrameworks基礎 たくさんの図形を動かす 静的配列と動的配列 - 芸大グラフィックスプログラミング演習B
by
Atsushi Tadokoro
WebSocketでカメラの映像を共有してみた
by
onozaty
Raspberry PiとノートPCを繋げよう
by
VirtualTech Japan Inc./Begi.net Inc.
ももち浜TECHカフェ:OpenCVとKinectで作ろう壁面タッチパネル
by
Takashi Yoshinaga
TVM の紹介
by
Masahiro Masuda
はじめようARCore:自己位置推定・平面検出・FaceTracking
by
Takashi Yoshinaga
コンピュータビジョンの観点から見たAIの公平性
by
cvpaper. challenge
20分くらいでわかった気分になれるC++20コルーチン
by
yohhoy
What's hot
PDF
LIFULLの全社アプリケーション実行基盤 KEEL について
by
LIFULL Co., Ltd.
PDF
【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-
by
Hirokatsu Kataoka
PDF
UniRx - Reactive Extensions for Unity(EN)
by
Yoshifumi Kawai
PPTX
Nreal Lightハンズオン
by
Takashi Yoshinaga
PDF
感覚運動随伴性、予測符号化、そして自由エネルギー原理 (Sensory-Motor Contingency, Predictive Coding and ...
by
Masatoshi Yoshida
PDF
HPC 的に H100 は魅力的な GPU なのか?
by
NVIDIA Japan
PPTX
【DL輪読会】Investigating Tradeoffs in Real-World Video Super-Resolution
by
Deep Learning JP
PDF
マルチコアを用いた画像処理
by
Norishige Fukushima
PDF
Google Cloud でアプリケーションを動かす.pdf
by
Google Cloud Platform - Japan
PPTX
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
by
Preferred Networks
PDF
Deep learningの発展と化学反応への応用 - 日本化学会第101春季大会(2021)
by
Preferred Networks
PDF
Githubを使って簡単に helm repoを公開してみよう
by
Shingo Omura
PDF
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
by
Shin Ohno
PDF
ASP.NETの進化とASP.NET Core Blazorの凄さ
by
Sho Okada
PPTX
オンライン技術勉強会 20201216 QSEoWサーバー管理者向けトレーニング_2
by
QlikPresalesJapan
PPTX
[解説スライド] NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
by
Kento Doi
PPTX
モデルアーキテクチャ観点からの高速化2019
by
Yusuke Uchida
PDF
CoreMLによるiOS深層学習アプリの実装と性能分析
by
Ryosuke Tanno
PDF
MySQL・PostgreSQLだけで作る高速でリッチな全文検索システム
by
Kouhei Sutou
PDF
Elasticsearch勉強会#44 20210624
by
Tetsuya Sodo
LIFULLの全社アプリケーション実行基盤 KEEL について
by
LIFULL Co., Ltd.
【チュートリアル】動的な人物・物体認識技術 -Dense Trajectories-
by
Hirokatsu Kataoka
UniRx - Reactive Extensions for Unity(EN)
by
Yoshifumi Kawai
Nreal Lightハンズオン
by
Takashi Yoshinaga
感覚運動随伴性、予測符号化、そして自由エネルギー原理 (Sensory-Motor Contingency, Predictive Coding and ...
by
Masatoshi Yoshida
HPC 的に H100 は魅力的な GPU なのか?
by
NVIDIA Japan
【DL輪読会】Investigating Tradeoffs in Real-World Video Super-Resolution
by
Deep Learning JP
マルチコアを用いた画像処理
by
Norishige Fukushima
Google Cloud でアプリケーションを動かす.pdf
by
Google Cloud Platform - Japan
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
by
Preferred Networks
Deep learningの発展と化学反応への応用 - 日本化学会第101春季大会(2021)
by
Preferred Networks
Githubを使って簡単に helm repoを公開してみよう
by
Shingo Omura
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
by
Shin Ohno
ASP.NETの進化とASP.NET Core Blazorの凄さ
by
Sho Okada
オンライン技術勉強会 20201216 QSEoWサーバー管理者向けトレーニング_2
by
QlikPresalesJapan
[解説スライド] NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
by
Kento Doi
モデルアーキテクチャ観点からの高速化2019
by
Yusuke Uchida
CoreMLによるiOS深層学習アプリの実装と性能分析
by
Ryosuke Tanno
MySQL・PostgreSQLだけで作る高速でリッチな全文検索システム
by
Kouhei Sutou
Elasticsearch勉強会#44 20210624
by
Tetsuya Sodo
Viewers also liked
PDF
Hacking the Kinect with GAFFTA Day 1
by
benDesigning
PDF
Hacking the Kinect with GAFFTA Day 2
by
benDesigning
PDF
Hacking the Kinect with GAFFTA Day 3
by
benDesigning
PDF
Hacking the Kinect with GAFFTA Day 4
by
benDesigning
PDF
Fa102a assignfive
by
aizzo2
DOCX
eeb group behavior
by
Lisa Tripp
PPTX
Integracion tecno
by
Miri Trombotto
PDF
Na peronu 53
by
Milorad Lucic
PDF
1210 Auditor Reporting
by
Zowie Murray
PPTX
Born Learning Work
by
United Way Bengaluru
PPTX
Indesign
by
zahrasm
PDF
Synthése: L'impact du web 2.0 sur la promotion du rap
by
Jeanne Le garrec
DOC
посібник отр та от
by
slavinskiy
PPSX
NCompass Live: Metadata Makeover: Transforming Omaha Public Library's Digital...
by
Nebraska Library Commission
PPTX
Europeana Network Association Members Council Meeting, The Hague by Sergiu Go...
by
Europeana
PDF
Vr ar科技於醫療產業的應用現況與未來商機
by
FAUST CHOU
PDF
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
by
Takashi Yoshinaga
PPTX
Recognizing and Challenging Microaggressions
by
Christa Spielman
PDF
Design for Understanding:理解のデザインとしての情報アーキテクチャ
by
Satoru MURAKOSHI
PDF
161201みんなのモビリティプロジェクト
by
達也 石原
Hacking the Kinect with GAFFTA Day 1
by
benDesigning
Hacking the Kinect with GAFFTA Day 2
by
benDesigning
Hacking the Kinect with GAFFTA Day 3
by
benDesigning
Hacking the Kinect with GAFFTA Day 4
by
benDesigning
Fa102a assignfive
by
aizzo2
eeb group behavior
by
Lisa Tripp
Integracion tecno
by
Miri Trombotto
Na peronu 53
by
Milorad Lucic
1210 Auditor Reporting
by
Zowie Murray
Born Learning Work
by
United Way Bengaluru
Indesign
by
zahrasm
Synthése: L'impact du web 2.0 sur la promotion du rap
by
Jeanne Le garrec
посібник отр та от
by
slavinskiy
NCompass Live: Metadata Makeover: Transforming Omaha Public Library's Digital...
by
Nebraska Library Commission
Europeana Network Association Members Council Meeting, The Hague by Sergiu Go...
by
Europeana
Vr ar科技於醫療產業的應用現況與未來商機
by
FAUST CHOU
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
by
Takashi Yoshinaga
Recognizing and Challenging Microaggressions
by
Christa Spielman
Design for Understanding:理解のデザインとしての情報アーキテクチャ
by
Satoru MURAKOSHI
161201みんなのモビリティプロジェクト
by
達也 石原
Similar to ARコンテンツ作成勉強会 はじめてのKinect openFrameworks編
PDF
20110819 関西 kinect勉強会 初級編
by
誠 山崎
PDF
Media Kinect2014 day7
by
Akihiko Shirai
PPTX
110820 tech aid_lt_kinect_pub
by
Takayoshi Tanaka
PDF
教育システム情報学会関西支部若手研究者フォーラムKinect勉強会(Hackathon)資料
by
Y OCHI
PPTX
Kinect深度情報処理入門
by
伸男 伊藤
PDF
Hands on
by
Keiji Kamebuchi
PPTX
OpenCVを用いた画像処理入門
by
uranishi
PDF
Kinect Camp with TMCN/ Kinect入門ハンズオン 2015.06.06
by
Akira Hatsune
PPTX
関西MSP勉強会~Kinect編~ ハンズオン資料 Kinectで身長を計測しよう!
by
Yasutomo Imairi
PDF
openFrameworks Workshop in Kanazawa v001
by
Teruaki Tsubokura
PDF
はじめようRGB-Dセンシングと画像処理
by
Takashi Yoshinaga
PDF
Kinect for windows sdk introduction
by
Kaoru NAKAMURA
PPTX
KinectプログラミングStepByStep
by
信之 岩永
PDF
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
by
Mori Tetsuya
PDF
Kinect for windows sdk c#
by
Kaoru NAKAMURA
PPTX
Kinect 2セミナー
by
Akira Hatsune
PPTX
2012 kanemotolablecture7
by
ytanno
PDF
Kinect for windows sdk cpp
by
Kaoru NAKAMURA
PDF
KinectでAR空間に入り込もう
by
Takashi Yoshinaga
PDF
devsumi2012 17-D-1 Kinectで創る10年後のカタチ
by
Kaoru NAKAMURA
20110819 関西 kinect勉強会 初級編
by
誠 山崎
Media Kinect2014 day7
by
Akihiko Shirai
110820 tech aid_lt_kinect_pub
by
Takayoshi Tanaka
教育システム情報学会関西支部若手研究者フォーラムKinect勉強会(Hackathon)資料
by
Y OCHI
Kinect深度情報処理入門
by
伸男 伊藤
Hands on
by
Keiji Kamebuchi
OpenCVを用いた画像処理入門
by
uranishi
Kinect Camp with TMCN/ Kinect入門ハンズオン 2015.06.06
by
Akira Hatsune
関西MSP勉強会~Kinect編~ ハンズオン資料 Kinectで身長を計測しよう!
by
Yasutomo Imairi
openFrameworks Workshop in Kanazawa v001
by
Teruaki Tsubokura
はじめようRGB-Dセンシングと画像処理
by
Takashi Yoshinaga
Kinect for windows sdk introduction
by
Kaoru NAKAMURA
KinectプログラミングStepByStep
by
信之 岩永
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
by
Mori Tetsuya
Kinect for windows sdk c#
by
Kaoru NAKAMURA
Kinect 2セミナー
by
Akira Hatsune
2012 kanemotolablecture7
by
ytanno
Kinect for windows sdk cpp
by
Kaoru NAKAMURA
KinectでAR空間に入り込もう
by
Takashi Yoshinaga
devsumi2012 17-D-1 Kinectで創る10年後のカタチ
by
Kaoru NAKAMURA
ARコンテンツ作成勉強会 はじめてのKinect openFrameworks編
1.
ARコンテンツ作成勉強会 はじめてのKinect openFrameworks編 2016年7月9日 ARコンテンツ作成勉強会
2.
http://www.vizyoshinaga.sakura.ne.jp/arfukuoka/ #AR_Fukuoka
3.
今回やること 3 openFrameworks IDE(統合開発環境) コンテンツ制作 Kinect v1 Resolume VJソフト 連携 モテたい!
4.
Kinectとは 4 2010年、Microsoft社が発売されたXbox360専用のジェスチャー認識でき るコントローラとして発売されたセンサー。 カラーと赤外線のカメラが搭載され、カラー、深度、身体の認識ができる。 現在は芸術や医療など、さまざまな用途で活用されている。 参照元 http://www.xbox.com/ja-JP/kinect
5.
Kinect ができること 5
6.
Kinect が使えるフレームワーク 6 ※一部
7.
7
8.
openFrameworksとは 8 クリエイティブコーディングのためのC++のオープンソースツールキット。 教育支援ツールとして開発された。現在は、5つのOS(Windows、OSX、 Linux、iOS、Android)と4つの開発環境(XCode、Code::Blocks、 Visual Studio、Eclipse)をサポート。 openFrameworksは、MIT Licenseで配布されており、誰でも自由にいかなる状況でも
(商用/ 非商用、公式/非公式、オープンソース/クローズソース) 使用できる。 参照 http://www.creativeapplications.net/ openframeworks/no_thing/
9.
コミュニティ 9 openFrameworks は世界中のハッカー、アーティスト、デザイナー、 学生、先生などが集まった多様性に富んだコミュニティ。
10.
事例 10 参照 http://www.creativeapplications.net/ category/openframeworks/
11.
ライブラリとアドオン 11 オリジナルで制作されたアドオン パッケージ http://ofxaddons.com/categories http://openframeworks.cc/ja/documentation/
12.
12 addons apps docs examples export libs other projectGenerator scripts of_v0.9.X_osx_release アドオン保存 プロジェクト保存 example保存 プロジェクト生成 examples example保存 examplesを触ってみよう
13.
13 examples/3d/3DPrimitivesExample examplesを触ってみよう フォルダ
14.
examplesを触ってみよう 14 examples/3d/3DPrimitivesExample
15.
15 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 examplesを触ってみよう Debug(64 bit)
16.
16 examples/3d/3DPrimitivesExample examplesを触ってみよう
17.
17 examples/addons/opencvExample examplesを触ってみよう
18.
examplesを触ってみよう 18 examples/addons/opencvExample
19.
19 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 examplesを触ってみよう Debug(64 bit)
20.
20 examples/addons/opencvExample examplesを触ってみよう
21.
プロジェクトをはじめる 21 addons apps docs examples export libs other projectGenerator scripts of_v0.9.X_osx_release アドオン保存 プロジェクト保存 example保存 プロジェクト生成projectGenerator プロジェクト生成
22.
プロジェクトをはじめる 22
23.
プロジェクトをはじめる 23 プロジェクト名(半角英数) アドオンの追加 プロジェクトの作成 プロジェクト保存先(変更しない)
24.
フォルダ構造 24 of_v0.9.X_osx_release アドオン保存 プロジェクト保存 examples保存 プロジェクト生成 addons apps docs examples export libs other projectGenerator scripts
25.
フォルダ構造 25 addons apps docs examples export libs other projectGenerator scripts myApps 新規プロジェクトmyAppsの中に保存 test test.xcodeproj src bin addons.make Project.xcconfig openFrameworks-Info.plist config.make Makefile
26.
ファイル保存 26 addons apps docs examples export libs other projectGenerator scripts of_v0.9.X_osx_release アドオン保存 プロジェクト保存 example保存 プロジェクト生成 apps プロジェクト保存 examples example保存 注意: appsとexamples以外 に保存すると動かない
27.
プロジェクトをはじめる 27 test_01 プロジェクトの作成
28.
プロジェクトをはじめる 28 Open in IDEを選択
29.
プロジェクトをはじめる 29 ナビゲーター ツールバー ユーティリティエディター
30.
openFrameworks演習 30 演習1 演習2 演習3 円を描く 円の数を増やす 円に色を塗る
31.
演習1 31 円の数1個
32.
32 main.cpp ウィンドウの設定 ofApp.cpp 初期設定や描画、更新を記述 ofApp.h
クラスやアドオンの設定 2つのファイルに記述していく 演習1 円の数1個
33.
演習1 33 ofApp.h class ofApp :
public ofBaseApp{ public: void setup(); void update(); void draw(); }; 変更なし setup() 初期設定 update() 更新 draw() 描画 円の数1個
34.
演習1 34 ofApp.cpp void ofApp::setup(){ } void ofApp::draw(){ } //ofBackground(R,
G, B) ofSetColor(255, 255, 255, 100); ofCircle(30, 30, 20); ofBackground(0, 0, 0); //ofSetColor(R, G, B, ALPHA) //ofCircle(x, y, radius) 円の数1個
35.
演習1 35 X軸(0, 0) Y軸 1,024 px 768
px ofCircle(30, 30, 20); 30px 30px radius 20px 円の数1個 (ofGetWidth(), ofGetHeight()) (ofGetWidth(), 0) (0, ofGetHeight())
36.
36 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 Debug(64 bit) 演習1 円の数1個
37.
演習1 完成 37 円の数1個
38.
演習2 38 円の数101個 大きさ、位置が違う
39.
演習2 39 ofApp.h class ofApp :
public ofBaseApp{ public: void setup(); void update(); void draw(); }; 円の数101個 大きさ、位置が違う static const int NUM = 100; float loc_x[NUM]; float loc_y[NUM]; float radius[NUM]; //X軸の位置情報 //Y軸の位置情報 //半径の情報
40.
演習2 40 配列 NUM =
100 円の数101個 大きさ、位置が違う static const int NUM = 100; float loc_x[NUM]; float loc_y[NUM]; float radius[NUM]; NUM=0 NUM=1 NUM=2 NUM=3 NUM=4 NUM=100 loc_x[0] loc_y[0] radius[0] loc_x[1] loc_y[1] radius[1] loc_x[2] loc_y[2] radius[2] loc_x[3] loc_y[3] radius[3] loc_x[4] loc_y[4] radius[4] loc_x[99] loc_y[99] radius[99]
41.
演習2 41 ofApp.cpp void ofApp::setup(){ ofBackground(0, 0,
0); } for (int i = 0; i < NUM; i++) { } loc_x[i] = loc_y[i] = radius[i] = ofRandom(0, ofGetWidth()); ofRandom(0, ofGetHeight()); ofRandom(4, 40); 円の数101個 大きさ、位置が違う 0~NUM個を1つずつ繰り返す X軸とY軸の位置、半径を
42.
演習2 42 ofApp.cpp void ofApp::draw(){ ofSetColor(255, 255,
255, 100); ofCircle(30, 30, 20); } ofCircle(loc_x[i], loc_y[i], radius[i]); for(int i = 0; i < NUM; i++){ } 円の数101個 大きさ、位置が違う
43.
43 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 Debug(64 bit) 演習2 円の数101個 大きさ、位置が違う
44.
演習2完成 44 円の数101個 大きさ、位置が違う
45.
演習3 45 円の数101個 大きさ、位置がう 円に色を塗る
46.
演習3 46 ofApp.h class ofApp :
public ofBaseApp{ ・・・ static const int NUM = 100; float radius[NUM]; float loc_x[NUM]; float loc_y[NUM]; }; int red[NUM]; int green[NUM]; int blue[NUM]; int alpha[NUM]; 円の数101個 大きさ、位置がう 円に色を塗る
47.
演習3 47 ofApp.cpp void ofApp::setup(){ ・・・ for (int
i = 0; i < NUM; i++) { loc_x[i] = ofRandom(0, ofGetWidth()); loc_y[i] = ofRandom(0, ofGetHeight()); radius[i] = ofRandom(4, 40); } } red[i] = ofRandom(0, 255); green[i] = ofRandom(0, 255); blue[i] = ofRandom(0, 255); alpha[i] = ofRandom(100, 200); 円の数101個 大きさ、位置がう 円に色を塗る
48.
演習3 48 ofApp.cpp void ofApp::draw(){ for(int i
= 0; i < NUM; i++){ ofSetColor(255, 255, 255, 100); ofCircle(loc_x[i], loc_y[i], radius[i]); } } ofSetColor(red[i], green[i], blue[i], alpha[i]); 円の数101個 大きさ、位置がう 円に色を塗る
49.
49 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 Debug(64 bit) 演習3 円の数101個 大きさ、位置がう 円に色を塗る
50.
演習3完成 50 円の数101個 大きさ、位置がう 円に色を塗る
51.
51 保存して休憩 このあとKinect演習
52.
Kinectとは 52 2010年、Microsoft社が発売されたXbox360専用のジェスチャー認識で きるコントローラとして発売されたセンサー。 カラーと赤外線のカメラが搭載され、カラー、深度、身体の認識ができる。 現在は芸術や医療など、さまざまな用途で活用されている。 参照元 http://www.xbox.com/ja-JP/kinect
53.
Kinect v1 53 赤外線プロジェクタ RGBカメラ 赤外線カメラ チルトモーターマイク(4箇所)
54.
kinect演習 54 演習1 演習2 演習3 RGBカメラを表示 RGB+深度カメラを表示 深度カメラを表示
55.
Kinect 演習1 55 RGBカメラを表示
56.
56 Kinect 演習1 kinect_test_01 プロジェクトの作成 ofxkinect を追加 RGBカメラを表示
57.
57 Open in IDEを選択 Kinect
演習1 RGBカメラを表示
58.
58 Kinect 演習1 RGBカメラを表示
59.
Kinect 演習1 59 open 接続開始 draw
取得 update 更新 main.cpp ウィンドウサイズの設定 ofApp.h 設定 ofApp.cpp init 初期化 exit 接続終了 RGBカメラを表示
60.
Kinect 演習1 60 RGBカメラ 640×480 ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
61.
Kinect 演習1 61 main.cpp #include "ofMain.h" #include
"ofApp.h" int main( ){ ofSetupOpenGL(1024,768,OF_WINDOW); ofRunApp(new ofApp()); } ofSetupOpenGL(640,480,OF_WINDOW); 表示画面サイズ ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
62.
Kinect 演習1 62 ofApp.h #include “ofxKinect.h” アドオンを追加した際、 必ず明示する class
ofApp : public ofBaseApp{ public: void setup(); void update(); void draw ・・・ } void exit(); //終了する手続き ofxKinect kinect; kinectの名前をつける ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
63.
Kinect 演習1 63 ofApp.cpp void ofApp::setup(){ } ofSetFrameRate(60);
//更新を秒間60コマ kinect.open(); //Kinectを接続開始 kinect.init(); //Kinectの初期化 kinect.setRegistration(true); //RGBと赤外線カメラの位置調整 ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
64.
Kinect 演習1 64 ofApp.cpp void ofApp::draw(){ } //
RGBカメラから撮影した映像を取得 kinect.draw(0, 0, kinect.width, kinect.height); void ofApp::update(){ } //状態を更新 kinect.update(); ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
65.
Kinect 演習1 65 ofApp.cpp void ofApp::exit(){ kinect.close();
//kinectの接続終了 } ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
66.
66 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 Debug(64 bit) Kinect
演習1
67.
Kinect 演習2 67 RGBカメラ 640×480px RGBカメラと 深度カメラを表示 深度カメラ
640×480px
68.
Kinect 演習2 68 main.cpp #include "ofMain.h" #include
"ofApp.h" int main( ){ ofSetupOpenGL(640,480,OF_WINDOW); ofRunApp(new ofApp()); } ofSetupOpenGL(1280,480,OF_WINDOW); 表示画面サイズ ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
69.
Kinect 演習2 69 ofApp.cpp void ofApp::draw(){ //
RGBカメラから撮影した映像を取得 kinect.draw(0, 0, kinect.width, kinect.height); } // 赤外線カメラで撮影した深度カメラ映像を取得 kinect.drawDepth(kinect.width, 0, kinect.width, kinect.height); ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了
70.
70 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 Debug(64 bit) Kinect
演習2
71.
Kinect 演習2 71 RGBカメラと 深度カメラを表示 RGBカメラ 640×480px
深度カメラ 640×480px
72.
Kinect 演習3 72 深度カメラ 640×480 深度カメラを表示
73.
Kinect 演習3 73 main.cpp #include "ofMain.h" #include
"ofApp.h" int main( ){ ofSetupOpenGL(1280,480,OF_WINDOW); ofRunApp(new ofApp()); } ofSetupOpenGL(640,480,OF_WINDOW); 表示画面サイズ ウィンドウサイズ 設定 初期化 接続開始 描画 更新 接続終了
74.
Kinect 演習3 74 ofApp.cpp void ofApp::draw(){ //
RGBカメラから撮影した映像を取得 kinect.draw(0, 0, kinect.width, kinect.height); } // 赤外線カメラで撮影した深度カメラ映像を取得 kinect.drawDepth(kinect.width, 0, kinect.width, kinect.height); ウィンドウサイズ 設定 初期化 接続開始 取得 更新 接続終了 //kinect.draw(0, 0, kinect.width, kinect.height); kinect.drawDepth(0, 0, kinect.width, kinect.height);
75.
75 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 Debug(64 bit) Kinect
演習3
76.
Kinect 演習3 76 深度カメラ 640×480 深度カメラを表示
77.
77 保存して休憩 このあとKinect演習
78.
VJツールとの連携 78
79.
VJツールとの連携 79 openFrameworks IDE(統合開発環境) コンテンツ制作 KInect Resolume VJソフト 連携 様々なエフェクトを使えて、 演出の幅が広がる oFアドオン Mac/ofxSyphon Win/ofxSpout
80.
VJツールとの連携 80 WindowsMac Syphon Spout http:// syphon.v002.info/ http:// spout.zeal.co/
81.
Mac/ofxSyphonをダウンロード 81 https://github.com/astellato/ofxSyphon
82.
Win/ofxSpoutをダウンロード 82 https://github.com/astellato/ofxSyphon
83.
VJツール連携演習 83 of_v0.9.X_osx_release アドオン保存addons apps docs examples export libs other projectGenerator scripts addons アドオンを保存
84.
84 addons apps docs examples export libs other projectGenerator scripts of_v0.9.X_osx_release プロジェクト生成projectGenerator プロジェクト生成 VJツール連携演習
85.
85 VJツール連携演習
86.
VJツール連携演習 86 ofxkinect プロジェクトの作成 ofxSyphon or ofxSpout
を追加 kinect_test_01
87.
87 Open in IDEを選択 VJツール連携演習
88.
88 VJツール連携演習
89.
VJツール連携演習 89
90.
VJツール連携演習 90 ① ②
91.
91 ofApp.h #include “ofxKinect.h” class ofApp
: public ofBaseApp{ public: void exit(); ・・・ ofxKinect kinect; } Mac/ofxSyphon #include "ofxSyphon.h" //syphon set ofxSyphonServer mainOutputSyphonServer; ofxSyphonClient client; VJツール連携演習
92.
92 ofApp.h #include “ofxKinect.h” #include "ofxSpout.h" class
ofApp : public ofBaseApp{ public: void exit(); ・・・ ofxKinect kinect; //kinectインスタンス int angle; //spout set ofxSpout::Sender sender; } Win/ofxSpout VJツール連携演習
93.
93 ofApp.cpp void ofApp::setup(){ ・・・ } Mac/ofxSyphon //syphon mainOutputSyphonServer.setName("Screen
Outputh"); client.setup(); client.setApplicationName("Simple Serverh"); client.setServerName(""); VJツール連携演習
94.
94 ofApp.cpp void ofApp::setup(){ ・・・ //spout ofSetWindowTitle("Sender"); sender.init("Camera"); } Win/ofxSpout VJツール連携演習
95.
void ofApp::draw(){ ・・・ // 赤外線カメラで撮影した深度カメラ映像を取得 kinect.drawDepth(0,
0, kinect.width, kinect.height); } VJツール連携演習 95 ofApp.cpp //syphon client.draw(50, 50); mainOutputSyphonServer.publishScreen(); Mac/ofxSyphon
96.
VJツール連携演習 96 ofApp.cpp void ofApp::update(){ ・・・ //spout sender.send(camera.getTexture()); } Win/ofxSpout
97.
97 ビルド(実行)する前に、デバッグモードにしていことを、確認。 ビルド(実行) デバッグがなければ、無事に成功。Build Succeededが表示され、 デバッグモードのウィンドウが立ち上がる。 Debug(64 bit) VJツール連携演習
98.
VJツール連携演習 98
99.
VJツール連携演習 99 ドラッグアンドドロップ
100.
VJツール連携演習 100
101.
その他との連携 101 連携 連携 ※一部※一部
102.
補足 102 ビルド(実行)する前に、デバッグモードにしていことをを、確認。 ビルド(実行) 制作 デバッグ 完成 リリース binどちらも、 の中に保存される。
104.
延長戦 104
105.
105 main.cpp #include "ofMain.h" #include "ofApp.h" int
main( ){ ofSetupOpenGL(640,480,OF_WINDOW); ofRunApp(new ofApp()); } 延長戦
106.
106 ofApp.h #include “ofxKinect.h” class ofApp
: public ofBaseApp{ public: void exit(); void drawPointCloud(); ・・・ ofxkinect kinect; ofEasyCam easyCam; //ドラッグで視線を変更できるカメラ } 延長戦
107.
107 ofApp.cpp void ofApp::setup(){ kinect.init(); kinect.open(); kinect.setRegistration(true); ofSetFrameRate(60); ofBackground(0); } 延長戦
108.
108 ofApp.cpp void ofApp::draw(){ // Kinectカメラから撮影した映像 //
kinect.draw(0, 0, kinect.width, kinect.height); // Kinect深度情報付き映像 // kinect.drawDepth(0, 0, kinect.width, kinect.height); easyCam.begin(); drawPointCloud(); //ポイントクラウドの描画 easyCam.end(); } 延長戦
109.
109 ofApp.cpp void ofApp::drawPointCloud(){ int w
= 640; int h = 480; ofMesh mesh; mesh.setMode(OF_PRIMITIVE_POINTS); int step = 2; //ポイントの間隔 for(int y = 0; y < h; y += step) { for(int x = 0; x < w; x += step) { if(kinect.getDistanceAt(x, y) > 0) { mesh.addColor(kinect.getColorAt(x,y)); mesh.addVertex(kinect.getWorldCoordinateAt(x, y)); } } } 延長戦
110.
110 ofApp.cpp void ofApp::drawPointCloud(){ glPointSize(3); //ポイントサイズを3 ofPushMatrix();
//現在の座標位置を保存する ofScale(1, -1, -1); //スケール x方向に1、y方向に-1、z方向に-1 ofTranslate(0, 0, -1000); //z方向に -1,000 ofEnableDepthTest(); //深度テストを有効に mesh.drawVertices(); //頂点を描画 ofDisableDepthTest(); //深度テストを無効に ofPopMatrix(); //座標位置を復元する } 延長戦
111.
延長戦 完成 111
Download