研究課題/領域番号 |
17H01764
|
研究機関 | 名古屋工業大学 |
研究代表者 |
福嶋 慶繁 名古屋工業大学, 工学(系)研究科(研究院), 准教授 (80550508)
|
研究分担者 |
津邑 公暁 名古屋工業大学, 工学(系)研究科(研究院), 准教授 (00335233)
杉本 憲治郎 早稲田大学, 理工学術院(情報生産システム研究科・センター), 講師(任期付) (00773483)
|
研究期間 (年度) |
2017-04-01 – 2020-03-31
|
キーワード | 画像処理 / 高能率計算 / 並列計算 / デザインパターン / ドメイン固有言語 / フィルタ / 画像処理コンパイラ / ハードウェアアクセラレーション |
研究実績の概要 |
計算機環境が複雑化している中,高度に最適化された機械語を得るためには,分野ごとに特化した専用プログラミング言語が必要不可欠である.しかし,最新の画像処理専用プログラミング言語でも,局所的な最適化しかできず,アルゴリズム全体の最適化は未だできない.加えて,網羅的なプログラミングパターンを考慮しているとは言えない. そこで,本研究では,画像処理研究をプログラミングのデザインパターンという新たな観点から体系化することで,この問題にアプローチする.そして,専用プログラミング言語にデザインパターンを指示する機能を与えることで,全体を見通す機能を獲得させ,この問題を解決する.これは,画像処理の高速化,アルゴリズム,計算機アーキテクチャの専門化が協力することで初めて達成される独創的な研究であり,また,プログラミングによる計算処理の学術的な体系化という方法も他の隣接分野にも波及するためこの意義は大きい. まず今年度は,様々な画像処理を実装し,アルゴリズム,ハードウェアの観点から最適化し,様々なデザインパターンとしてまとめる計画であった.実際には,2次元FIRフィルタ,再帰フィルタ,画像サブサンプリング,周波数フィルタリングといった代表的な画像処理を対象に,それぞれ複数のアルゴリズムの実装を行った.これらの処理は基本的な画像処理であり,多くの画像処理で使われる基本のパターンとなるため重要である.これらのパターンを複合的に扱う,定数時間バイラテラルフィルタやガイデットフィルタは,フィルタ中に各処理が複数回現れる多ステージのフィルタである.これらのフィルタをより効率的に構成するパターンの検証も行った.そのほかにも,プログラミング言語の検証や,CPU,GPU,FPGAといったハードウェアによる高速化,トランザクショナルメモリによるデータIOの検証を行った.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
1: 当初の計画以上に進展している
理由
様々な画像処理を実装し,そのデザインパターン化を図った.まず,典型的な2次元畳み込みフィルタであるバイラテラルフィルタの高速化のために,ランダム間引きを行うことや,その定数時間化,定数時間化した際に必要な有効桁数の検証およびその効率化を行った.ほかにもCPUマイクロアーキテクチャに応じた命令セットを発行することで効率的なコードを生成する方法や,任意の2次元FIRフィルタを効率的に実行できるパターンの作成やそのFPGA実装を行った.次に2次元FIRフィルタであるバイラテラルフィルタを1次元のセパラブルフィルタに分解するアルゴリズムの検討や,その高速な実装方法の検討を行った.他にも一般的なセパラブルフィルタであるボックスフィルタやガウシアンフィルタについても同様に検討した.そして,エッジを使った画像のアップサンプリングのための高速な実装パターンの生成やガイド情報を使った高精度なアップサンプリングアルゴリズムの検討を行い,また,再帰フィルタで実現される定数時間フィルタの特異値分解や離散コサイン変換などを活用したアルゴリズムによる近似精度の向上などを図った.他にも周波数フィルタリングである冗長DCTを用いたフィルタリングでは,計算結果を再利用して高速化することに成功した.これらのパターンを使ったフィルタとしてガイデットフィルタがあり,そのダウンサンプル・アップサンプルによる高速化や,計算スケジューリングを最適化することで高速化するといった検証も行った.そのほか,動画像処理環境に特化したプログラミング言語の検討やトランザクショナルメモリを用いたスケジュールの検討も行った.これらの初期的検討の成果は電子情報通信学会の研究会にて招待講演で発表した.
|
今後の研究の推進方策 |
まず,複数のステージの最小構成となる2ステージのフィルタである,セパラブルな1次元FIR畳み込みフィルタの効率的なパターンを網羅する.現在,初期的な検討により,そのフィルタに関して100を超える実装を行っている.各実装が有効となるケースを明らかにすることで,どの条件の時にどのパターンが適切になるかを明らかにする.そして,その畳み込みフィルタの実装の一般性を向上させることで,ディープラーニングなど,より広いアプリケーションに対応するパターンの検討を行う. 次に,定数時間フィルタの効率的なデザインパターンを網羅する.これは,再帰フィルタやIIRフィルタで実装されるため,上記とは異なるパターンが必要となる.一般的に,これらの実装は単純なFIRフィルタよりも,並列化やベクトル化が困難となる.これらを考慮した新たなパターンを検討する.また,この定数時間を活用した,定数時間バイラテラルフィルタやガイデットフィルタといったフィルタは,セパラブル1次元畳み込みフィルタよりも多数のステージがあるフィルタである.これについて,ステージ数が増えたことによって活用できるようになる並列性やベクトル性を考慮した,より効率的な最適化が可能となるパターンを見つける. 他にも,周波数フィルタリングや,タイリングを行うセパラブルな1次元畳み込みフィルタなど,処理領域が冗長となる画像処理を対象に,トランザクショナルメモリを活用した画像処理プログラミングパターンの検討を行い,その有効範囲を明らかにする.また,引き続き各アルゴリズムを改善し,より精度を高める方法を検討するとともに,そのデザインパターンへの当てはめや,新たなパターンの生成を行う.
|