2016年9月28日 更新

富士通が画像の高速検索技術を開発

富士通研究所が、手元にある画像を元に、類似画像をデータベースから高速検索する技術を開発した。試作サーバーでは、1万枚以上の画像が収納されたデータベースからデザインが一致する画像を検索するのに、通常1分以上かかるところを1秒程度で検索できたそうだ。

1,154 view お気に入り 0
富士通研究所が、手元にある画像を元に、類似画像をデータベースから高速検索する技術を開発した。試作サーバーでは、1万枚以上の画像が収納されたデータベースからデザインが一致する画像を検索するのに、通常1分以上かかるところを1秒程度で検索できたそうだ。

富士通はいくつかの事業ドメインに特化してシステム開発を勧めているが、今回の技術は、メディア、画像処理などの「メディア処理向け」の事業ドメインの技術である。

メディア処理向けドメイン指向サーバーは、大量のメディアを快適に扱えるようにするため、汎用デバイスのFPGA(Field Programmable Gate Array)とCPUを連携処理させた。

画像処理を行う際、従来よく用いられてきたのが、CPUとGPU(Graphics Processing Unit)である。

富士通によると、FPGAはCPUやGPUに比べ、運算の特性に合わせて演算器や並列度を柔軟に構成できる特性があり、計算スピードを向上させることが出来る。

本サーバーでは、CPUで「全体制御」「結果判定」「入出力処理」を、FPGAでは部分画像検索処理にあたる「特徴量抽出」と「マッチング」の処理を行うようにした。

FPGAでは、それぞれの処理について小型で高効率な演算器を設計し、特徴量抽出、マッチングの演算を高並列・高密度に実装、CPU上のソフトと効率的に連携させることで、高速な部分画像検索を実現した。

また、状況に応じて画像処理順序の入れ替えを行い、演算処理中に読み出したデータが無駄にならないように制御するスケジューリング技術を開発し、搭載した。

これらの処理により検索スピードは従来の汎用サーバーの50倍以上となった。本サーバーはこれらの処理を1つのサーバーで行っており、汎用サーバーを複数台使用して高速化を図った場合と比較すると、消費電力は30分の1に、装置体積も50分の1以下になったとしている。

FPGA,GPUは万能という訳ではなく、向き不向きがある。しかし、計算ロジックの組み方を工夫することで、画期的に高速処理出来る分野があるかも知れない。今回のシステムはまさにその一分野と言えるだろう。

富士通研究所は今後、2016年度中のシステムの実用化を目指すほか、他のドメイン指向サーバーの開発にも着手する予定だという。

GPUをたくさん並べたCloudや並列計算は、AWS、東工大のTsubameなどのシステムもあるが、必ずしもGPUにうまくはまる問題ばかりではない。

FPGAのシェアは、ザイリンクスとアルテラの2社が市場を二分している。最近では、インテルがアルテラを約2兆円で買収するなど、動きが活発になってきている。
今後、FPGA、GPU関連の動きに注目したい。
flickr

flickr

<参考URL>
富士通が画像を高速検索する技術を開発(IT Leaders 2016/2/3)
大量画像から目的の画像を瞬時に検索する技術を開発(富士通 プレスリリース 2016/2/2)
FPGA/ASIC/プリント基板/システム設計・製造(富士通アドバンストテクノロジ)
Intelが買収するAltera、GPUに“宣戦布告”の新FPGA発表(日経テクノロジーオンライン 2015/6/9)
4 件

関連する記事 こんな記事も人気です♪

日本が進めるAI画像診断支援②

日本が進めるAI画像診断支援②

大量に集められた医用画像データベースを用いて、いかに効率的に解析可能な教師データを作成していくか、またAIをどのように臨床業務のワークフローに組み入れていくか、がAI画像診断支援の実装に向けた今後の大きな課題です。今回は、AI画像診断支援の実装に向けた具体的な取り組みについて紹介します。
木田智士 | 3,818 view
日本が進めるAI画像診断支援①

日本が進めるAI画像診断支援①

AIによる医用画像診断支援を進めていくためには、大量の医用画像データが必要です。現在、日本の学会や研究所が中心となって、大規模な医用画像データベースの構築が進んでいます。今回は、その大規模データベース構築の現状について紹介します。
木田智士 | 3,881 view
ディジタル画像処理~pythonによる空間フィルタリングpart1~ 

ディジタル画像処理~pythonによる空間フィルタリングpart1~ 

ディジタル画像処理を解説します.今回は,代表的な空間フィルタリングをpythonで実行してみました。
亀谷 桃子 | 13,781 view
Julia と画像処理②〜画像のセグメンテーション(Seed Region Growing とFelzenszwalbアルゴリズム)〜

Julia と画像処理②〜画像のセグメンテーション(Seed Region Growing とFelzenszwalbアルゴリズム)〜

プログラミング言語「julia」を用いて画像処理を行います.インストールに続き,今回は画像のセグメンテーションのライブラリを用いて,セグメンテーションを行います.

この記事のキーワード

この記事のキュレーター

エルピクセル編集部 エルピクセル編集部