授業「コンピュータグラフィックス特論」サポートページ (2017年度後期授業)
URL は https://www.kkaneko.jp/a/cg.html
授業名: コンピュータグラフィックス特論
担当者: 金子邦彦
第15回目
人体アニメーション
お断り。人体のデータが出てきます.
- MakeHuman のインストール
- MakeHuman と Blender で人体アニメーション
説明資料: https://www.kkaneko.jp/db/cg/makehuman.html
演習: 自由制作(30分)
体形などを大胆に変えて、2、3個作ること。
モーションデータ(先人に感謝)
第14回目
- MeshLab でメッシュ簡略化
メッシュ簡略化とは、メッシュの構成するポリゴンの数を削減しながら、なるべく元の形を維持すること
- ステレオマッチング
ステレオマッチングは、ステレオ画像から、距離の情報(距離画像など)を得ること。
説明資料: https://www.kkaneko.jp/db/pointcloud/stereomatching.html
- Python + OpenCV 4 で前景分離,ステレオマッチング,点や線の描画
第13回目
マウスが必要です(お願いします)
メッシュ

メッシュのデータを Blender で表示したところ
前準備
- メッシュデータ
<前準備>
説明のため Wevefront OBJ形式ファイル, Wavefromt MTL形式ファイルを使う. この資料で使用している Wevefront OBJ形式ファイル, Wavefromt MTL形式ファイルは,次からダウンロードできる
説明のため 3次元点群データを使う.
トピックス
- MeshLab のインストール, MeshLab で Wavefront OBJ 形式ファイルの表示
MeshLab とは, 3次元データ(3次元点群データや,メッシュデータ)について 表示, 簡易編集, データの間引き, 形式変換, 張り合わせ, 分割, 解析など が行えるソフトウェア
- MeshLab でのメッシュの表示モード
ワイヤフレーム表示、フラット表示など
その資料: [HTML]
- MeshLab で 3次元点群データの表示, 3次元点群データを MeshLab を使ってメッシュに変換
その資料: [HTML]
- 3次元点群データについて.Python での表示
その資料: [PDF 版の資料] [ワード版の資料]
第12回目
マウスが必要です(お願いします)
- 第11回授業での宿題を集めます.
ファイルを提出(グループ作品でもよいです).ごく簡単に説明してみてください.
- Blender 2.79 ゲームエンジンでのマウスクリック,マウスオーバーについての演習を出します
- Blender 2.79 ゲームエンジンについての総合演習を出します(所要時間見込み:30分から1時間).グループを組み,グループで解くことを希望(授業中に相談します)
第11回目
- Blender 2.79 ゲームエンジンのロジックエディタ
キーボード操作などのイベントに応じて、オブジェクトが動く
- BlenderGIS を用いて 高さマップ (height map) のGeoTIFF ファイル (merged.tif)を 3次元コンピュータグラフィックスにする
第10回目
マウスが必要です(お願いします)
剛体 (rigid body) の落下や衝突のシミュレーション、パーティクル,各種のオブジェクト(草,波,炎,煙など),シミュレーション,オブジェクトのモデリング(造形)
- Blender のメニュー等の日本語化
その資料: 「Blender の設定」の先頭部分で、Blender の「メニュー等の日本語化」を行う
※ 他の設定を行う必要はない
- 剛体 (rigid body) の落下や衝突のシミュレーション
Blenderにある落下、衝突のシミュレーションの機能を見る。 オブジェクトをいろいろと配置して、シミュレーションしてみる
- パーティクルアニメーション
「パーティクル」と呼ばれるたくさんの粒を使うシミュレーション
Blender を一度終了し、もう一度起動してから行ってください(いままで作ったデータは全て消したい)
- Blenderの3次元ゲームエンジン紹介
第9回目
マウスが必要です(お願いします)
ボール(質点)が動くアニメーション, Wavefront OBJ 形式ファイルの Web ブラウザでの表示など
- 点群を扱うソフトウェア MeshLab のインストール (次回以降使う予定)
- JavaScript演習
ボール(質点)が動くアニメーション
その資料: [PDF 版の資料] [ワード版の資料]
- Firefox のインストール
次のWebページから Firefox をダウンロードし、インストール. 今日の授業で使う. https://www.mozilla.org/ja/firefox/new/
<前準備>
説明のため Wevefront OBJ形式ファイル, Wavefromt MTL形式ファイルを使う. この資料で使用している Wevefront OBJ形式ファイル, Wavefromt MTL形式ファイルは,次からダウンロードできる
- JavaScript + Web ブラウザで3次元オブジェクト表示,クリッカブルな3次元オブジェクト,空の表示,波の表示,Wavefront OBJ ファイルの読み込み
第8回目
マウスが必要です(お願いします)
キーワード: キーワード:Blender, レンダリング, 光源(ランプ), 光源(ランプ)の種類, 空,Transparency(透過)による透明化, Mirror(ミラー)による鏡面の表現
- 説明資料: Blender 2.8 でのマテリアル (material),スムースシェード (smooth shade)
- 説明ビデオ: Blender のマテリアル (4分6秒, 説明音声つき) [mp4 版], [パワーポイント]
第7回目
マウスが必要です(お願いします)
- 3次元コンピュータグラフィックスソフトウェア blender の画面構成,基本操作(50分)
キーワード: 3次元オブジェクト,カメラ,移動,拡大縮小,回転,マテリアル,レンダリング
- 製作実習(グループワーク)
4本足の机,3本足の椅子などを Blender で製作しなさい
第6回目
- 3次元コンピュータグラフィックスソフトウェア blender のインストール,種々のファイルのインポート(50分)
- 2次元のゲームエンジン pygame(30分)
2次元のコンピュータグラフィックスの要素は、線、四角、丸など
第5回目
- 3次元ゲームエンジン,光源,影,テクスチャ,3次元モデルデータ(60分)
- 3次元コンピュータグラフィックスと3次元地図の違い(30分)
3次元地図では,オブジェクトに種類がある.座標系の種類もある.
第4回目
- 高さマップ(30分)
- 国土地理院タイル地図(40分)
第3回目
- 3次元地図の地形表示(15分)
- Cesium のページを開く
- Hello World をクリック
- 検索機能(虫眼鏡のボタン)のところに「fukuyama」のように地名を入れて,虫眼鏡のボタンをクリック
- 「地図の選択ボタン」をクリック
- 地図の選択で,「Terrain」の下の「STK World Terrain meshed」を選んでみる.
- コントロールキーを押しながらマウス操作する.地図が回転する.地形の起伏を確認することができる
- 自分の好きな地名で試してみる
- 地図タイル,ライン,ノード(40分)
- 休憩(5分)
- OpenStreetMap を用いた地図製作と公開(30分)
PDF ファイル: https://www.kkaneko.jp/db/map/osm.html
第2回目
- 顔の検知,顔のランドマークの抽出(60分)
- 地図と3次元オブジェクトの融合(30分)
前準備などは終わっていますので「Cesium を使ってみる」のところから,開始してください.
第1回目
-
Anaconda3 (Python)のバージョン確認, パッケージのインストール(1時間) https://www.kkaneko.jp/tools/win/anaconda3.pdf
- Anaconda3 のバージョン確認(最新版は 4.4.0)
- spyder を起動してください.python のバージョンが 3.6.1 になっていればOKです.
-
ディープラーニングを用いた物体認識(30分) 物体認識とは: 画像の中から,所定の物体(自転車や人など)を自動で探し,その場所を四角(バウンディングボックス)で囲む.
学習済み(訓練済み)のデータを使う