私について
名城大学大学院 理工学研究科電気電子工学専攻に在籍している佐藤拓海と申します。
主にDeep learningを用いた画像認識の研究を行っており、主にCapsule Networkと呼ばれる手法に関する研究を行っています。
普段は画像認識の研究や組み込む系の会社でアルバイトさせてもらいながら、Deep Learningの技術のみではなく様々な技術の習得に励んでいます。
インターンの目的
インターンに参加した主な3つの目的
①関係の業界に対する理解を深めることです。VR関係の業界に興味があったのですが、あまり情報が得られなかったためVR関係を主な業務とする会社にインターンに参加することで理解を深めようと考えました。
②実際の業務におけるDeep Learningの案件がどういうものか知りたいと考えたためです。普段の研究では整理されたデータセット、潤沢な計算資源のもとで研究しており、求められるものは新規性であることが多いです。実際の業務におけるDeep Learningの案件は普段の研究と異なるのは理解できていますが、体験することで更に理解を深められると考えました。
③社員さんとの交流を通して、自分に足りない部分などを理解しすることで自らの成長につなげていこうと考えました。今まで、組み込み系のソフトウェアとDeep Learningしか経験がありませんでした。今回のインターンを通してどこまで通用するか実感し、足りない部分はっきりさせようと考えました。
業務内容について
今回のインターンシップでは、前半はDeep Learningを用いた案件の前調査を担当させていだきました。後半においてはDeep Learningを用いたリアルアバター制作の技術についての調査を担当し、Azure Kinectを用いた3次元点群の取得に関わらせていただきました。
1. Deep Learningを用いた案件の前調査
具体的には受注先から頂いたデータセットに対して大まかなクラス分類を行い、現状のデータセットにおける問題点の洗い出しを行いました。クラス分類ではデータが不均一ではあるもののアンサンブル学習を用いることで高い分類精度を達成しました。得られた結果を元に間違えたデータに対する検証を行いました。結果として現状のデータセットで不足している部分を明確にすることができ、本格的に案件に取り組む前に改善されたデータセットを得ることが可能となりました。
2. Deep Learningを用いたリアルアバター制作の技術についての調査
具体的にはVideoavatar, octopus, bodynetなどの手法に対して検証を行いました。結論としては現状では従来法には及ばないものの、従来法ではしっかりした撮影環境が必要であることに対して、Deep Learningベースの手法は少ない枚数でモデル作成が可能である事がいえます。現状ではDeep Learningベースの手法は様々な問題が存在しますが、かなり活発な研究が行われており、ソースコードが非公開で検証できなかった高い精度を達成した手法も多々存在するため、近い将来にそこそこな精度を持つものが登場する可能性が高いと感じました。
生成モデル
リアルアバターの撮影風景
3. 3次元点群の取得
具体的には、Azure Kinectと呼ばれる深度センサーを複数用いて濃密な3次元点群を取得するソフトを用いてうまく3次元点群を取得する方法を複数の社員とともに試行錯誤を行いました。Azure Kinectを3つ用いるとかなり濃密な3次元点群を取得することが可能となり、最新の深度センサーの性能に衝撃を受けました。
撮影した点群の例
https://twitter.com/mina_sakamura/status/1172459921532579841 ,
https://twitter.com/mizzmayo/status/1169921563568664576
職場の雰囲気
かなり自由な職場で、いままで経験したどの職場よりも自由な雰囲気でした。裁量労働制で入退社時間は事実上自由となっており、リモートワークも許可されていました。社員の方々はかなり優秀な方々ばかりで、次々とアイディアを考えつき、次々とソースコードに表現できる方が複数いらっしゃってかなり衝撃を受けました。
また、最新機器や最新技術に対するキャッチアップはかなり活発で、業務に直接関係なくても最新機器や最新技術に関する調査や検証は行われておりました。
得られたスキル
機械学習に対する理解
普段の研究室では整備されたデータセットを使用しており、そういったデータセットを用いた経験がなかったため、あまりデータセットのことを考慮には入れていなかったのですが今回の案件を通してデータセットの重要性を痛感させられました。
UnityやBlenderの知識
リアルアバター生成技術に関する調査の過程でUnityやBlenderを使用する必要性が生じました。今までUnityやBlenderはほとんど使用したことがなかったことがなかったのですが、今回のインターンシップを通してかなり基本的な部分だけですが使用できるようになりました。今後はこれを機会にUnityやBlenderを使いこなせるようになりたいと考えております。
3次元点群に対する理解
今回、Azure Kinectと呼ばれる新しい深度センサーを使わせていただきました。3台のAzure Kinectを用いた点群はかなり濃密で、かなり衝撃的でした。今後の研究では画像認識だけではなく、3次元点群も視野に入れることを検討しております。