2024 年 2 月 9 日
2023 年度

I 類 (情報系)

コンピュータサイエンスプログラム

卒業研究最終発表会

FPGA を用いた 3D コメントスクリーンの開発
I 類 (情報系)

成見研究室

学籍番号:2010270

1 研究の背景小林千浩

かし, 事前に用意したエフェクトや文字を必要に応じて入力映像に重ねて描画している点で本研究と異なる.

現在一般的に使用される映像表示デバイスは, 基本的FPGA を用いた 3D 描画技術としては,Xiangfei Liに表示者と被表示者の「一対一」で使用することを想定

ら [3] による 3D グラフィックスパイプラインの研究がしている. しかし, 複数人の表示者で一つの映像表示デあげられる. この研究は 3D 描画に焦点を当てたものでバイスを共有して使用することができれば, 映像表現のあり, 外部から入力された映像への画像の合成を行って幅を広げることができ, 互いの意思共有や感情共有が容いないため本研究とは異なる.

易になる. 例えば, 動画配信サービス「ニコニコ動画」にネットワークを経由して複数拠点からディスプレイおいては, 視聴者のコメントを動画上に表示させる「コを使用する技術としては, イリノイ大学で開発されたメントスクリーン」機能があり, 複数の視聴者間で意思SAGE2 [1] があげられる. このシステムでは, ディスプや感情共有が可能となっている*1 . また、授業中に生徒

レイ側に 3D 描画機能がない点で本研究と異なる.

からの質問を投影できる「Comment Screen」という商品もある*2 . 複数拠点から一つの巨大なスクリーンに4 開発したシステム

様々なコンテンツを表示できる SAGE という仕組みも4.1存在する [1].

システム概要図 1 に本システムの概要を示す. FPGA は HDMI

しかし, このような複数人共有ディスプレイを実現す

入 出 力 機 能 を 備 え て お り, 入 力 さ れ た 映 像 が 背 景 とるには, 専用アプリケーションの開発, 映像キャプチャデ

し て 出 力 さ れ る.

バイスの用意など煩雑な準備が必要である.

入 力 は 1920x1080@60Hz，出 力 は1920x1080@30Hz である．FPGA は Ethernet ポート

2 研究の目的を備えており, ネットワーク経由で, クライアント PC から描画命令を受けると, 背景映像に重ねる形で 3D 描画

本研究は, ディスプレイにハードウェア機能として組を行う.

み込むことで，複数人共有ディスプレイを容易かつ手軽

PS 部では，TCP 通信によりデータを受信し，描画ユに使用できるようにすることを目的とする. また，文字ニットへ送る．CPU では，頂点座標の変換，変換後の情報だけでなく 3D のポリゴンを表示できるようにす座標を整数へキャストするなどの処理をする．PS 部でる．本システムでは, FPGA を用いて HDMI からの映は最大 4 つのクライアントを受け付ける．

像入力を背景とし, そこに重ねる形で第三者がリアルタ

PL 部の描画ユニットは渡された頂点データからポリイムに 3D 描画を重ねて行う「3D コメントスクリーン

ゴンのラスタライズをし，描画バッファへ書き込む．そシステム」を実現する.の際，描画ユニットはポリゴンの頂点間の色補間を行わ3 既存の研究ず，深度情報のみ補完して描画し，深度情報は深度バッファを用いた陰面消去で使用される．HDMI 入力から滝川 [2] は, ゲーム機の映像出力部に FPGA を接続し,入力される映像は背景バッファへ書き込まれる．画像合入力された映像を必要に応じて加工し出力している. し成ユニットは，メモリ上の描画バッファと背景バッファを読みだし，それらを合成して HDMI 出力する．

*1 株 式 会 社 ド ワ ン ゴ ,ニコニコへルプコメント 投稿機能の使い方 ,”https://qa.nicovideo.jp/faq/show/11222?category id=745&site domain=nicoapp”, 最終アクセス日:2024 年 1 月 31 日

*2 CommentScreen

本研究では OpenGL 互換 API を実装し、描画命令の株 式 会 社,CommentScreenHomepage ,”https://www.commentscreen.com/”, 最終アクセス日:2024 年
1 月 31 日

発行に使用している. OpenGL アプリから OpenGL 互

1

項目

計測値

LUT 使用率

37.2%

描画速度

54.25clock/pixel

出力遅延40ms

消費電力4.2w

表 1 各種測定の結果

描画速度
描画中の消費電力
図1

システム全体の構成

電力効率

本研究

比較用の PC

10.85ms/polygon

1.3us/polygon

0.2w

147w

2.1mJ/polygon

0.18mJ/polygon

表2

性能の比較

た．表 2 はデスクトップ PC との描画性能を比較している．本システムは描画性能は低いが，消費電力が少ないことがわかる．

6 まとめと今後の課題
6.1

まとめ

本研究では，FPGA を用いて，HDMI 入力からの映図 2 動作の様子

像入力を背景とし，そこに第三者が TCP 通信経由で3D 描画を重ねて行う「3D コメントスクリーンシステ
換 API が呼び出され，そこから TCP 通信経由でデータム」を構築した．TCP 通信経由で，最大 4 つのクライを FPGA へ送信する．クライアント PC では OpenGL

アントを受け付けることができ，複数人で一つのディスで使用される動的ライブラリを本研究で作成したものにプレイを手軽に共有することが可能になった．ディスプ差し替えることで, OpenGL アプリケーションの描画先レイ上に 3D 描画を行うため，これまでの文字や 2D 図を FPGA へ変更可能となる.

形ではできない新たな表現が可能となった．

4.2

動作結果

6.2

今後の課題

図 2 に動作の様子を示す．図 2(左) は，奥行き方向の今後の課題としては，描画ユニットの改良による描画傾斜が異なる青色と赤色のポリゴンを描画した様子であ速度の向上，受け付けられるクライアントの数を増やす，り，2 つのポリゴンが互いに突き抜けていることがわか

フル HD 以外の解像度のモニターやタイルドディスプレる．図 2(右) は，同時 4 つのクライアントからの描画をイにも出力を対応させる，などの点が挙げられる．

受け付けて，立方体を描画する様子である．

参考文献

5 評価

[1] T. Marrinan et al., ”SAGE2: A new approach for data intensive
collaboration using Scalable Resolution Shared Displays,” 10thIEEE International Conference on Collaborative Computing:
Networking, Applications and Worksharing, Miami, FL, USA,pp. 177-186, doi: 10.4108/icst.collaboratecom.2014.257337,(2014).
[2] 滝川順, FPGA を用いたコンシューマーゲーム機拡張システムの開発 , 電気通信大学 修士論文, (2022)[3] Xiangfei Li, X. Wang and Rong Sun, ”Real-time 3D graphics
for mobile devices on reconﬁgurable hardware,” IET International Conference on Smart and Sustainable City 2013 (ICSSC 2013), Shanghai, pp. 471-475, doi: 10.1049/cp.2013.1963,(2013).

FPGA システムへ行った各種測定の結果を表 1 に示す．FPGA 内の主要な論理ブロックである LUT(lookup table) の使用率は，53200 個のうち 37.2% であった．
描画ユニットは 100Mhz で動作し，1 ピクセルの描画に54.25 クロック要した．背景映像の出力遅延は 40ms であった．FPGA システムが，背景映像を出力し，さらに3D 描画を行っている状態での消費電力は 4.2w であっ2