2020年度卒業論文配属サポートページ
担当者: 金子邦彦
トピックス
人工知能,ディープニューラルネットワーク,データベースによるリアルタイムデータ収集,データ分析に関する実習を予定しています. 3次元地図制作実習など- モーションデータ
bvh データファイルのビューワ BVHPlay を動かしてみる
- MakeHuman と Blender で人体アニメーションを作る
- 人工知能応用,データマネジメント
活動記録
12/3, 12/7
画像セグメンテーション Mask-RCNN に関する情報提供
11/26, 11/30
超解像(super resolution) に関する情報提供
11/16, 19 画像分類システム(人工知能)の機能全般についての説明、実演等
11/9, 12 顔検出、顔認識システム(人工知能)の学習についての説明、実演等
https://www.kkaneko.jp/ai/dlib/knn.html
11/2, 5 文字認識システム(人工知能)の学習についての説明、実演等
10/26, 29 写真からの立体データの合成(立体測量)の説明、実演等
43. 実験(6)(8月11日,火曜日)
8, 9 月:中間発表(各自で実験計画を立て、実験を実施。今後の目標等を定めるなども)
火曜日である(月曜日には行わない). このあとは,卒業研究活動は,2週間ほどお休みとし, 8月下旬に再開する.
42. 実験(5)(8月6日,木曜日)
情報提供
ニューラルネットワーク環境について.
ニューラルネットワークを体験,実習,実験できる環境について
41. 実験(4)(8月3日,月曜日)
この日より,登校しての活動再開
13時集合
スケジュールについて最低限の変更を相談します
各自の実験着手(テーマ仮決め、調査を含む): 7/31 締め切り → 延期、8月上旬に
実験結果と考察: 7/31 締め切り → 延期、改めて相談
中間発表(ポスター1枚): 7/31 締め切り → 延期、9月に。オンライン形式(セレッソ等で連絡が行われている)
10月の学会発表: 希望者のみ3月に実施とする(オンラインの可能性あり、改めて相談)
卒論締め切り:12月末として計画 → このまま(様子次第では、少し延期の可能性あり)
40. 話題提供 (7月30日,木曜日)
Zoom での遠隔会議(12時30分頃にURLを案内します)外れ値の自動判定についての説明を予定しています.
8/3 以降の登校再開にあたって.「健康状況調査」の継続を改めて案内します.
39. 話題提供 (7月27日,月曜日)
Zoom での遠隔会議- 一般物体検出 YOLOv4(AlexryAB/darknet,Python を使用)
- 顔の特徴点(2次元,3次元)の抽出(1adrianb/face-alignment,Python を使用)(Windows 上)
連絡:7月にポスター作成といっていたのは,延期します.8月の早い段階に登校再開できるのか,そうでないのかで,内容やスケジュールが変わりそうです.登校再開の見通しが分かり次第,内容やスケジュールを相談します.
38. 話題提供 (7月20日,月曜日)
Zoom での遠隔会議3次元モデルを,パノラマ写真により,リアルに描画するための技術
Mitsuba 2 のインストール(レンダラー)(ソースコードを使用)(Windows 上)
37. 実験(3) (7月13日,月曜日)
自然言語処理(日本語の処理,類似検索)についての話題提供も考えています:別ページ
36. 実験(2) (7月9日,木曜日)
次のことについて
- pip の更新,Python 開発環境を最新版に更新
各自,コマンドプロンプトを管理者として実行し,次のコマンドを実行.
python -m pip install -U pip setuptools jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder
- Python 動作確認
今度は,再び,コマンドプロンプトを開き,次のコマンドを実行.これは Jupyter Qt Console を開くコマンド
jupyter qtconsole
- 試してみる
print(1 + 2) exit()
3次元インペインティング(3D inpainting)の紹介
34. 実験計画と実験開始 (7月6日)
各自,実験を行ってみる.7/6 に実験開始.7/31 にいったん実験エンド(実験データ,実験手順をワードファイル等に記録するところまで).
話題提供.
自然言語処理:
- 日本語文のコーパス(ドキュメントの集まり)から 辞書,Bag of Words, Latent Semantic Indexing (LSI),Latent Dirichlet Allocation (LDA) を作る(Python,gensim を使用)
- 日本語文のドキュメントの類似検索(Latent Semantic Indexing による)
33. 超解像度(実行手順と実行結果の紹介) (6月29日)
- 健康状況調査.忘れていた人は今日からでも回答再開.
問題がなければ,来週より学校に集まって活動するか,遠隔での実施を継続とします.
- 超解像,画像の修復(alexjc/neural-enhance,Python 3.7,Theano,Lasangne, scipy 1.1.0, pillow を使用)(Ubuntu 上): 別ページ »で説明
32. 画像分類のミニ実演 (6月15日)
案内1.健康状況調査.忘れていた人は今日からでも回答再開.
案内2.卒論テーマ.卒論テーマを決めるため,次のWebページの「1.人工知能応用」や「5.3次元地図,3次元データ」などから,2,3個程度,自分の興味のある分野を選んでおくこと.各自の希望を尊重して,卒論テーマを決定します.このことについて,友達とも相談する可能性もあると思いますが,同じ分野になることは問題ありません.
https://www.kkaneko.jp/db/index.html
案内3.7月から,登校して卒業研究活動を行うことについて,全員と,6/22 に相談したいと思っています.
今日のトピックス
-
Python 開発環境で,画像分類のプログラムを動かすことを実演
(Webブラウザでの Python の動作ではない)
ImageNet で事前学習済みの畳み込みニューラルネットワーク (CNN) を用いた画像分類(MobileNetV2,ResNet50,DenseNet 121,DenseNet 169,NASNetを使用)(Google Colaboratroy へのリンク有り): 別ページ »で説明
31. イメージ・セグメンテーション (6月8日)
案内:卒業論文では,みなさん自身で「自立して行う」ことを通して学ぶとします. いままでの内容を読み返しておき, 取り組んでみたい分野,キーワードを,1つか複数選んでみてください. グループワークを歓迎します.6月下旬を目安に選んでいただき, その後,しばらくの間行う実験計画(目安として7月の1か月間の実験計画)を立て, みなさん自身で実験などの活動に自立して取り組んでいただきます.テーマは途中で変えて頂いても構いません.
7月:ミニ実験,結果まとめ (教員からは「実験」について,実験が成功するための条件を提示)
8月:深い学び(成功には何が必要かを考え抜くこと),卒論下書き,実験の繰り返し,学会発表申し込み
9月,10月:さらに深い学び
11月:学会発表(10月下旬のことも)(数分間のプレゼン).実験の繰り返し(実験の足りないところを考え抜くこと)
12月:卒業論文(10から20ページ),プレゼン(数分間のプレゼン),学会発表申し込み
1月:追加実験(実験に間違いや足りないことがあった場合に限る)
3月:学会発表(ポスター1枚)
画像のセグメンテーション
- TensorFlow の画像分類のデモ [PDF], [パワーポイント]
30. データのクラスタリング (6月1日)
29. AR アプリ (5月25日)
案内:卒業論文の科目は,ゼルコバの「集中講義」の画面で履修登録できると思います. (こちらで,学生さんの画面を確認できないので,このようなお答えです)
パソコン,カメラ,エディタ(メモ帳),Webブラウザを使い,AR アプリを作る.
28. 過学習,添加学習 (5月18日)
Zoom による生配信 13:00 開始の予定
- TensorFlow の画像分類のデモ
- TensorFlow の転移学習のデモ
https://www.tensorflow.org/tutorials/images/transfer_learning_with_hub
27. スタイル変換,DCGAN (5月11日)
実演動画
- TensorFlow のスタイル変換のデモ
上の動画の実演に使っているWebページ: https://colab.research.google.com/github/tensorflow/tensorflow/blob/master/tensorflow/lite/g3doc/models/style_transfer/overview.ipynb
- TensorFlow のDCGAN のデモ
上の動画の実演に使っているWebページ: https://www.tensorflow.org/tutorials/generative/dcgan
26. 物体認識(4月27日)
自宅にパソコン+インターネットがある人向けの演習.
事前準備:各自,Google アカウントの作成済み,Google Colab. の操作法を体験したことがあること(以上は 4/20 に演習済み)
- 物体認識
説明資料:物体認識(4分57秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
URL: Google Colab. の object detecion のページ
案内:卒業研究中間発表
次のように準備を開始してみる(5月に,各自の考えを聴いたり,簡単なレポートを出してもらう予定です)
- このページの「上」に分野が書いてあるので,1つ選ぶ
複数名が同じ分野を選んでも良い - 実験計画を立ててみる
25. 画像分類(4月20日)
自宅にパソコン+インターネットがある人向けの演習.
- スタイル変換,GAN,
- Google アカウントの作成(各自)
メールアドレス:可能ならば,大学のメールアドレスを使うこと(Office 365 https://portal.office.com でメールシステムが使える)
パスワード:自分で決める
すでに Google アカウントを持っている人は,新しく作成する必要はない
説明資料:Google アカウントの作成(4分25秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Google Colab. でノートブックの作成
Google アカウントを使用
- Google Colab. を用いた Python 演習+Pythonによる画像分類
資料:Python の主な機能(Google Colaboratory を使用)
24. 画像分類(4月13日)
- AI で画像分類を行うデモサイト紹介(clarifai.com)
2019年4月,6月に「情報工学演習II」で行ったことを再び.各自で確認. https://clarifai.com/demo
言語 (LANGUAGE) を「日本語 (Japanse)」に切り替えて使用 * 画面の右の方に「LANGUAGE」があるので探してみてください
AI により,画像分類を行い,「キーワード」を表示するもの.それぞれのキーワードの横の数字は「確率」になっている.
インターネットで画像ファイルを集め「TRY YOUR OWN IMAGE OR VIDEO」→「BROWSE FILE」 で試してみること
23. データのグラフ化によるデータの把握
データの取り扱い、散布図、記述統計量、ヒストグラム
- Pandas を用いたデータの扱い (CVSファイル読み込み、散布図、記述統計量、ヒストグラム)
- Iris データセットの紹介 [PDF], [パワーポイント]
- 要約統計量の説明 [PDF], [パワーポイント]
- Iris データセット、titanicデータセットの読み込み、散布図、記述統計量、ヒストグラム
22. モーションキャプチャ,頭部の向きの推定,瞳孔の検出
- モーションキャプチャ
学ぶトピックス:マーカーレスのモーションキャプチャ
- Windows で OpenPose を使ってみる
「前準備」は終わっている
「CPU 版を使う場合」を行う.
「CPU 版を使う場合」は行わない(資料のその部分は飛ばしてください)
- Windows で OpenPose を使ってみる
- 頭部の向きの推定
- 頭部の向きの推定を行ってみる
このページで,前半部分(準備の部分)は終えている.スクロールして,「lincolnhard/head-pose-estimation による頭部の向きの推定」のところから取り組む. (プログラムの書き換えの作業があります)
- 頭部の向きの推定を行ってみる
- 瞳孔の検出
- 瞳孔の検出(TobiasRoeddiger/PupilTracker,Python を使用)
このページで,前半部分(準備の部分)は終えている.スクロールして,「TobiasRoeddiger/PupilTracker による瞳孔の検知」のところから取り組む. (プログラムの書き換えの作業があります)なお,表示結果では,赤いマークは目の下の中央、緑のマークが瞳孔
- 瞳孔の検出(TobiasRoeddiger/PupilTracker,Python を使用)
20. 顔検出
説明資料: Dlib の機能概要 [PDF], [パワーポイント]
Dlib のインストール
ダウンロードで少し時間がかかります.
- Dlib のインストール
この手順で,Dlib 19.19.99 をインストールする.
「python -c "import dlib; print( dlib.__version__ )"」までを実施する. そのあとの「Dlib 付属のツール類のインストール」は行わない.
顔検出、顔のランドマーク検出、表情判定
- Dlib を用いた顔検出(Windows 上)
- Dlib を用いて,顔のアラインメント,顔データの増量,顔のランドマーク,顔のコード化(Dlib 付属のサンプルプログラムを使用)(Windows 上)
Dlib の応用例
- 表情判定
Dlib で,顔検出,顔のランドマーク検出(68 ランドマーク法),表情判定を行ってみる
https://github.com/ezgiakcora/Facial-Expression-Keras で公開されている成果物を使用 - 顔識別
顔識別,顔検出,顔のランドマーク(Python,Dlib, ageitgey/face_recognition を使用)
https://github.com/ageitgey/face_recognition で公開されている成果物を使用
19. Rシステム,機械学習入門
- 次の資料を一読し,Rシステムについて知る.(ソフトのインストールは済んでいます.行う必要はありません)
説明資料: Rシステムとは [パワーポイント], [PDF] - 次の資料を一読. そして,資料の中の「実習」はグループで取り組む.機械学習について知る.
説明資料: 機械学習の例 [パワーポイント], [PDF]
18. 顔や手の匿名化
- 説明資料:顔領域,手領域の匿名化(HypoX64/DeepMosaics を使用)
※ Python と連携させて操作の自動化も可能
17. 文字認識,ナンバープレート読み取り
文字認識ソフトウエアのインストールと実行
- 説明資料:日本語対応文字認識ソフト Tesseract 5 のインストールと使用法
※ Python と連携させて操作の自動化も可能
ナンバープレート認識ソフトウエアのインストール
- OpenALPR 2.3.0 のインストールと動作確認(ナンバープレート認識)(Windows 上): 別ページ »で説明
※ 欧米の自動車は精度良く読み取ることができます(日本語が認識できるようには調整されていない)
インターネットで,画像を探し,それぞれのソフトで読み取ってみてください.
16. TensorFlow実習
ニューラルネットワークの仕組み [PDF], [パワーポイント]
Python の主な機能(Google Colaboratory を使用)
Google Colab 上
- ディープラーニングによるデータの分類(TensorFlow,MNIST データセットを使用)(Google Colab 上もしくはパソコン上)
- TensorFlow, Keras で Iris データを扱う(Google Colab 上)
- 2クラス分類,モデルの作成と学習と検証
Windows パソコンを利用
- ディープラーニングによるデータの分類(TensorFlow,Keras,TensorFlow データセットのMNIST データセットを使用)(TensorFlow, Keras, Python を使用)
コンピュータグラフィックス,コンピュータビジョン
第15回目:OpenCV によるコンピュータビジョン
OpenCVを用いた種々の処理
- 説明資料: [PDF], [パワーポイント]
- 説明ビデオ: ビデオ(音声つき)が YouTube にもある.4分16秒.https://www.youtube.com/watch?v=Xt4h0_XLWEw
- 前準備として,Python 3 用 opencv-python, matplotlib, numpy パッケージのインストール
Windows パソコンで,コマンドプロンプトを開き,次のように操作.
python -m pip install -U opencv-python matplotlib numpy
- Python + OpenCV で濃淡画像を使う
トピックス:カラー画像から濃淡画像への変換,イメージヒストグラム,ヒストグラム平坦化,濃淡画像のノイズを加える、ノイズを除去する,OTSU の方法による2値化,輪郭抽出
説明資料: Python + OpenCV で濃淡画像を使う
- Python + OpenCV で点や線の描画
- マウスイベント
説明資料:マウスイベント
- Python + OpenCV でビデオカメラ画像の表示、ファイル書き出し、濃淡画像処理
- Python + OpenCV でビデオのフレーム間差分、トラッキングビジョン、オプティカルフローなど
第14回目:ゲームエンジン実習
VR の話題
第13回目:3次元ゲームエンジン(3)
第12回目:ゲームエンジン
- ゲームエンジン(説明資料)[PDF], [パワーポイント]
- Blueprint プロジェクトの新規作成 [PDF], [パワーポイント]
- アクタの配置(移動,回転,拡大縮小)と複製 [PDF], [パワーポイント]
- レベルブループリントを使ってみる [PDF], [パワーポイント]
- アクターを追加してみる [PDF], [パワーポイント]
第11回目:リレーショナルデータベース
- リレーショナルデータベースを使ってみよう [PDF], [パワーポイント]
- SQL によるテーブル定義,一貫性制約の記述,行の挿入,問い合わせ(クエリ) [PDF], [パワーポイント]
- SQL による結合 [PDF], [パワーポイント]
第10回目:Python 基礎のまとめと
- プログラミング [PDF], [パワーポイント]
- Python プログラミング入門 [PDF], [パワーポイント]
- リスト,条件分岐,繰り返し(ループ) [PDF], [パワーポイント]
- 関数,抽象化 [PDF], [パワーポイント]
- 繰り返し(ループ),リスト,辞書 [PDF], [パワーポイント]
第9回目:3次元コンピュータグラフィックスの
- Blender のシェーダー・エディタ(Shader Editor)
- Blender のライト
- Blender で,レンダリングを行う
- Blender で,テクスチャ・ペインティング (Texture Painting) を行う の後半部分
第8回目:3次元コンピュータグラフィックスの
第7回目:3次元コンピュータグラフィックスの
- Blender で,ブーリアン演算により,立体を加工
- Blender で,クロス・シミュレーション(Cloth Simulation)を行う
- Blender で,テクスチャ・ペインティング (Texture Painting) を行う
第6回目(研究室実習の5回目)
3次元地図.11/5
- OpenStreetMap
オープンな世界地図
OpenStreetMap のURL: https://openstreetmap.jp
- OpenStreetMap のデータを Blender にインポート
- 野外実習
第5回目(研究室実習の4回目)
お断り。人体のデータが出てきます.
- MakeHuman のインストール,Blender の設定,MakeHuman と Blender で人体画像を作る
- 説明資料: https://www.kkaneko.jp/tools/win/makehuman.html
- 説明ビデオ: ビデオ(音声つき)が YouTube にもある.4分14秒.https://www.youtube.com/watch?v=qlNpFrnaAmo
オブジェクトの移動はオブジェクトモードで.リグを用いた変形はポーズモードで.
第4回目(研究室実習の3回目)
剛体 (rigid body) の落下や衝突のシミュレーション、パーティクル,各種のオブジェクト(草,波,炎,煙など),シミュレーション,オブジェクトのモデリング(造形)
- Blender のメニュー等の日本語化(もし,まだ,日本語化が終わっていない場合)
その資料: 「Blender の設定」の先頭部分で、Blender の「メニュー等の日本語化」を行う
- 剛体 (rigid body) の落下や衝突のシミュレーション
Blenderにある落下、衝突のシミュレーションの機能を見る。 オブジェクトをいろいろと配置して、シミュレーションしてみる
- パーティクルアニメーション
「パーティクル」と呼ばれるたくさんの粒を使うシミュレーション
Blender を一度終了し、もう一度起動してから行ってください(いままで作ったデータは全て消したい)
- Blenderの3次元ゲームエンジン紹介
第3回目(研究室実習の2回目)
Blender の最新版について説明します.ノートパソコン保有者にはインストールを案内します.
- Windows で Blender のインストール
- パソコン実習資料: Blender 2.93.4 のインストール(Windows 上)
- パソコン実習資料: Blender の設定操作例
- 説明ビデオ: 「Blender の Windows マシンへのインストールについて」の部分についてのビデオ(音声つき)が YouTube にもある.4分14秒. https://www.youtube.com/watch?v=bMnAmR3nuj8
- 3次元コンピュータグラフィックスソフトウエア blender を使ってみる,種々のファイルのインポート
- 説明資料: blender の機能紹介 [パワーポイント], [PDF]
- 3次元コンピュータグラフィックスソフトウエア blender の画面構成,基本操作
- パソコン実習資料: Blender の種々の操作と設定(Blender 3.4 の画面で説明)
- Blender で,オブジェクトを配置
- パソコン実習資料: Blender で,オブジェクトを配置
- 説明ビデオ: 基本操作についてのビデオ(音声つき)が YouTube にもある.3分53秒https://www.youtube.com/watch?v=puL9rzhcgK0
- 説明ビデオ: 作業視野とカメラ視野についてのビデオ(音声つき)が YouTube にもある.3分21秒https://www.youtube.com/watch?v=cZPozDmpvNg
第2回目
進路等に関する説明会
第1回目
ガイダンス