Media Information|Makoto Murakami Laboratory|Toyo University

東洋大学 総合情報学部 村上真研究室
LinkIconアクセスLinkIconサイトマップ
テキストサイズ 小 |中 |大 |

オンライン教材について

東洋大学メディア情報研究室では,学生が各自の希望と進度に合わせて学習を進められるように,以下のようなオンライン教材を用意しています.卒業制作を行う予定の学生は「Unreal Engineを用いたゲーム制作」コースで学習してください.卒業研究を行う予定の学生は「Pythonプログラミング」コースで学習してください.

Unreal Engineを用いたゲーム制作I

Unreal Engineを用いたゲーム制作II

ゲームのシーンを作る際には,まず設計図を作り,設計図通りに物体を配置していきます.ここでは,Unreal Engineの便利な機能を使用し,設計図通りに部屋や建物を作り,その中に様々なオブジェクトを正確に配置する方法を学びます.


Unreal Engineを用いたゲーム制作III

Unreal Engineには異なる種類の光源(ライト)があります.ここではライトについて学ぶとともに,ランプや懐中電灯や空の作り方を学びます.


Unreal Engineを用いたゲーム制作IV

ここまでは様々なオブジェクトを配置してゲームの舞台を作る方法を学びました.ゲームを制作するには,ユーザの操作に応じてシーン中のオブジェクトを変化させる必要があります.例えば,「部屋に入るとランプが点く」や「部屋に入ると煙が出て,煙に近づくと爆発する」といったインタラクティブな機能を実装する必要があります.Unreal Engineでは,インタラクティブな機能を実装する際にブループリントを使用します.ここではレベルブループリントの使い方を学びます.


Unreal Engineを用いたゲーム制作V

Unreal Engineでは,レベルブループリントに加えてブループリントクラスが使用できます.ブループリントクラスを使うと,例えば椅子や扉に様々な機能を付け加えることができます.特に,シーン中に多くの椅子や扉を配置し,それらをインタラクティブに動かしたい場合によく使用されます.ここでは,ブループリントクラスの使い方を学びます.


PythonプログラミングI

PythonプログラミングII

PythonプログラミングIII

機械学習の対象となるデータやビッグデータは同じ型のデータの集合であることが多く,同じ型のデータの集合を扱う際に,配列(array)を使用します.ここでは,numpyと呼ばれる数値計算モジュールのN次元配列(N-dimensional array)であるndarrayオブジェクトの使い方を学びます.

PythonプログラミングIV

機械学習やビッグデータの解析では,大量にある多次元データを様々な側面から見る必要があります.Pythonではデータを視覚化する際にmatplotlibモジュールがよく使用されます.ここでは,matplotlibを用いて様々なグラフを描画する方法を学びます.

PythonプログラミングV

機械学習の対象となるデータやビッグデータは様々な形式をとります.そのため,様々な形式のデータを読み込み,必要なデータを取り出し,整形するといった前処理が必要となります.そのような処理をするときにpandas(Python Data Analysis Library)がよく使用されます.ここでは,pandasの基本的なデータ形式であるSeriesとDataFrameの使い方を学びます.

Pythonを用いた音声処理

機械学習や人工知能技術の発展により,音声認識・音声合成・音声対話等の技術が私たちの生活でも使用されるようになりました.ここでは,人間の音声の生成過程を理解し,コンピュータを使用して音声を処理する技術の基礎を学び,実際にPythonを使用して基本的な音声処理を行います.

Pythonを用いた音楽情報処理

機械学習や人工知能技術の発展により,人間が曲を作る際に作曲をサポートするシステムや楽曲を自動的に生成することのできる技術が提案されています.音楽データは様々な要素から成り立っており,要素ごとに分析する手法が異なります.ここでは,音楽データを処理するための諸技術の基礎を学び,実際にPythonを使用して基本的な音楽情報処理を行います.

C++によるプログラミングコースLinkIcon受講する

受講要件:以下のコースを受講していること

  • C言語によるプログラミングコース

値の表示

  • 値の表示について学びます.

配列とポインタ

  • 配列とポインタについて学びます.

関数

  • 関数について学びます.

クラス

  • クラスについて学びます.

配列クラスと文字列クラス

  • 配列クラスと文字列クラスについて学びます.

ファイル入出力

  • ファイル入出力について学びます.

乱数

  • 乱数について学びます.

整列

  • 整列について学びます.

Eigenによる線形代数コースLinkIcon受講する

受講要件:以下のコースを受講していること

  • C++によるプログラミングコース

Eigenのインストール

  • Eigenのインストールについて学びます.

ベクトル

  • ベクトルについて学びます.

行列

  • 行列について学びます.

行列と行列の積

  • 行列と行列の積について学びます.

逆行列

  • 逆行列について学びます.

行列式

  • 行列式について学びます.

内積と外積

  • 内積と外積について学びます.

直交行列

  • 直交行列について学びます.

様々な変換

  • 様々な変換について学びます.

線形方程式の解法

  • 線形方程式の解法について学びます.

OpenGLによる3次元コンピュータグラフィックスコースLinkIcon受講する

受講要件:以下のコースを受講していること

  • Eigenによる線形代数コース

線形代数

  • 3次元コンピュータグラフィックスの基礎理論である線形代数について学びます.

GLUTの設定と2次元図形の描画

  • GLUTの設定と2次元図形の描画について学びます.
  • 線の描画色のついた線の描画面の描画頂点に色を設定した面の描画

ワイヤフレーム

  • 3次元物体を線だけで描画するワイヤフレームについて学びます.
  • 線で描画した立方体

イベント処理

  • マウスイベントやキーイベントにより,物体をモデリング変換する処理と視点を変更する処理について学びます.
  • イベント処理によるモデリング変換イベント処理による視野変換

隠面消去

  • 3次元物体を面で描画する方法について学びます.
  • 面で描画した立方体面で描画した立方体

陰影付け

  • 光学現象をシミュレートして,物体に陰影を付ける方法について学びます.
  • 陰影付けした立方体陰影付けした球拡散反射鏡面反射複数の光源

アニメーション

  • 物体を一定の時間間隔でモデリング変換する方法について学びます.
  • 立方体を回転させるアニメーション円柱を回転させるアニメーション

OpenGLによるキャラクタアニメーションコースLinkIcon受講する

受講要件:以下のコースを受講していること

  • OpenGLによる3次元コンピュータグラフィックスコース

階層アニメーション

  • 身体動作アニメーションの基礎として,物体を階層構造として表現し,動作させる方法について学びます.
  • 階層アニメーション

モーションキャプチャデータ

  • モーションキャプチャデータの形式とファイルから動作データを取得する方法について学びます.

身体動作アニメーション

  • 指定したモーションキャプチャデータから動作データを取得し,階層構造で表現されたオブジェクトを動作させる方法について学びます.
  • 身体動作アニメーション身体動作アニメーション

モデルデータ

  • 3次元コンピュータグラフィックスのモデリングソフトウェアを使用して作成されたモデルデータから形状データと材質データを取得し,描画する方法について学びます.
  • キャラクタアニメーション

Inverse Kinematics

  • 複数のモーションキャプチャデータをシームレスに連結させて描画する方法について学びます.

OpenCVによる画像処理コースLinkIcon受講する

受講要件:以下のコースを受講していること

  • Eigenによる線形代数コース

OpenCVのインストール

  • OpenCVのインストールについて学びます.

ディジタル画像

  • ディジタル画像と簡単な画像処理について学びます.
  • 画素値の反転

処理の高速化

  • 処理時間の計測方法と処理の高速化について学びます.

描画処理とイベント処理

  • ウィンドウに点や線を描画する方法と,キー入力やマウス操作によって処理内容を変更する方法について学びます.

表色系変換

  • 表色系変換と表色系変換を利用した処理について学びます.
  • カラーグレースケール変換色相の変更指定した色の抽出

濃度変換

  • 濃度変換について学びます.
  • 濃度変換濃度変換

幾何変換

  • 画像を拡大縮小させたり回転させる幾何変換について学びます.

空間フィルタ処理

  • ノイズの軽減・エッジの検出・鮮鋭化等を行うことのできる空間フィルタ処理について学びます.
  • 平滑化フィルタエッジ検出鮮鋭化

2値化処理

  • 主に図面や文字データに対して行う2値化処理にいて学びます.
  • 2値化

OpenCVによる画像認識コースLinkIcon受講する

受講要件:以下のコースを受講していること

  • OpenCVによる画像処理コース

パターンマッチング

  • 画像認識の基礎として,画像間の類似度を求め,照合する処理について学びます.

カメラキャリブレーション

  • 2次元マーカ認識の前処理として必要となるカメラの内部パラメータの校正について学びます.

2次元マーカ認識

  • マーカを認識するタイプの拡張現実を実現するために必要な2次元マーカ認識について学びます.
  • 原画像カラーグレースケール変換2値化輪郭線追跡領域の面積による候補領域検出四角形領域検出マーカ画像とのマッチング

pthreadsによるマルチスレッドプログラミングコースLinkIcon受講する

受講要件:以下のコースを受講していること

  • C言語によるプログラミングコース

pthreads for Win32のインストール

  • マルチスレッドプログラミングに使用するpthreadsのインストール方法について学びます.

スレッドの生成

  • スレッドの生成方法とスレッドにデータを渡す方法について学びます.

共有データに対する排他制御

  • スレッド間で共有するデータにアクセスする際の排他制御について学びます.

OpenCVとOpenGLを用いた拡張現実コースLinkIcon受講する

受講要件:以下のコースを全て受講していること

  • OpenGLによるキャラクタアニメーションコース
  • OpenCVによる画像認識コース
  • pthreadsによるマルチスレッドプログラミングコース

OpenCVを用いてカメラから取得した映像中の2次元マーカを認識し,OpenGLを用いてキャラクタを表示させ,動作させる方法について学びます.
原画像マーカ検出立方体の重畳表示人型オブジェクトの重畳表示CGキャラクタの重畳表示

OpenNIによるKinectセンサプログラミングコースLinkIcon受講する

受講要件:以下のコースを全て受講していること

  • OpenGLによるキャラクタアニメーションコース
  • OpenCVによる画像処理コース
  • pthreadsによるマルチスレッドプログラミングコース

可視光カメラと赤外線カメラからの画像データ取得

  • 可視光カメラからカラー画像を取得する方法と赤外線カメラから赤外線画像を取得する方法について学びます.
  • カラー画像と赤外線画像カラー画像と距離画像

カラー画像と距離画像の取得とシーンの3次元表示

  • カラー画像と距離画像を取得し,距離画像から3次元ポリゴンを合成し,カラー画像によってポリゴンに色をつけることでシーンを立体的に表示させる方法について学びます.
  • シーンの立体表示

人の領域の検出と人体の3次元表示

  • 人の領域を検出し,人体を立体的に表示させる方法について学びます.
  • 人体の立体表示

リアルタイムモーションキャプチャ

  • 身体関節の3次元座標を取得し,取得した座標通りにキャラクタを動作させる方法について学びます.
  • リアルタイムモーションキャプチャリアルタイムモーションキャプチャ

音声認識・音声合成コースLinkIcon受講する

受講要件:以下のコースを全て受講していること

  • C言語によるプログラミングコース
  • pthreadsによるマルチスレッドプログラミングコース

HTKによる音声認識

  • HTKを用いていくつかの単語を学習し,認識させる方法について学びます.

ATKによる音声認識

  • HTKにより学習した単語HMMを用いて,マイクから入力された音声に対して認識を行う方法について学びます.

Juliusによる音声認識

  • Juliusを用いて連続音声認識をする方法について学びます.

VoiceTextエンジン SDKによる音声合成

  • VoiceTextエンジン SDKを用いて音声合成をする方法について学びます.

HTKによる動作認識コースLinkIcon受講する

受講要件:以下のコースを全て受講していること

  • OpenGLによるキャラクタアニメーションコース
  • 音声認識・音声合成コース

HTKを用いていくつかの動作データを学習し,認識させる方法について学びます.

WinSockによるソケットプログラミングコースLinkIcon受講する

受講要件:以下のコースを受講していること

  • C言語によるプログラミングコース

TCP/IPによるデータ送受信

  • TCP/IPによりデータを送受信する方法について学びます.

UDPによるデータ送受信

  • UDPによりデータを送受信する方法について学びます.