JP2014016957A - データ処理装置 - Google Patents

データ処理装置 Download PDF

Info

Publication number
JP2014016957A
JP2014016957A JP2012155823A JP2012155823A JP2014016957A JP 2014016957 A JP2014016957 A JP 2014016957A JP 2012155823 A JP2012155823 A JP 2012155823A JP 2012155823 A JP2012155823 A JP 2012155823A JP 2014016957 A JP2014016957 A JP 2014016957A
Authority
JP
Japan
Prior art keywords
data
processing
processing element
adjacent
processing elements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012155823A
Other languages
English (en)
Other versions
JP5939572B2 (ja
Inventor
Hitoshi Kitazawa
仁志 北澤
Yoichi Tomioka
洋一 富岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tokyo University of Agriculture and Technology NUC
Tokyo University of Agriculture
Original Assignee
Tokyo University of Agriculture and Technology NUC
Tokyo University of Agriculture
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tokyo University of Agriculture and Technology NUC, Tokyo University of Agriculture filed Critical Tokyo University of Agriculture and Technology NUC
Priority to JP2012155823A priority Critical patent/JP5939572B2/ja
Publication of JP2014016957A publication Critical patent/JP2014016957A/ja
Application granted granted Critical
Publication of JP5939572B2 publication Critical patent/JP5939572B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

【課題】プロセッシングエレメント間の通信でのデータ衝突を回避し、かつプロセッシングエレメントを特定の方向に偏ることなく増加させることが可能な拡張性の高いデータ処理装置を提供する。
【解決手段】n次元のネットワーク20を構成するn次元の方向に配置されたプロセッシングエレメントPE11〜PEMNを含み、全てのプロセッシングエレメントは、データ転送クロックに同期してデータを入出力し、データを入出力する方向であるシフト方向に隣接する第1の隣接プロセッシングエレメントと反対側に隣接する第2の隣接プロセッシングエレメントのうち、第1の隣接プロセッシングエレメントから第1のデータを受け取るとともに、第2の隣接プロセッシングエレメントに第2のデータを出力し、隣接するプロセッシングエレメントの間のデータ転送レートが、シフト方向によらず等しい。
【選択図】図1

Description

本発明は、データ処理装置に関し、特にアレイ型の複数のプロセッシングエレメント(PE:Processing Element、演算処理回路)を備えたデータ処理装置に関する。
演算の高速化を目的として並列演算処理が行われることがある。例えば、動画像解析における移動物体トラッキングは、一般にハードウェア化して並列に演算することが好ましい。移動物体トラッキングの1つとして画像ブロック間の1対1対応を求める排他的ブロックマッチングが提案されている。排他的ブロックマッチングは、フレーム間の大きな動きが追跡できると同時にオブジェクト(すなわち、移動物体)内部の各部の動きも解析できる。しかし、ブロック間対応を求めるためには多大な計算時間を要するため、前記のように並列演算処理を行うことが好ましい。
ここで、n次元(nは自然数)アレイ型の並列演算処理を想定すると、周辺ブロックとの類似度計算をするために多くの配線資源や転送時間が必要となる。従来手法として、高速バスとクロスバースイッチを用いる構成やシストリックアレイといった構成が提案されている。しかし、このような構成を採っても、プロセッシングエレメント間の通信やメモリアクセスの競合によって処理速度が制限される問題があった。
特許文献1の発明は、n次元トーラス型分散処理システムであって、n次元のうちの1方向に隣接するプロセッシングエレメントに、各プロセッシングエレメントは自己が持つデータを順次転送させて、同方向のプロセッシングエレメントの全てにそのデータを所持させる。そして、この転送を、n次元の全ての方向で実行する。このとき、隣接するプロセッシングエレメント(例えば、2次元であれば原則として上下左右のプロセッシングエレメント)とだけ配線すればよいため、遠くのプロセッシングエレメントと通信することによる配線混雑および配線遅延は生じない。また、各プロセッシングエレメントは自己が持つデータを1方向に順次転送させるので、データの衝突による待ち時間の発生をなくすことができる。
特開2010−211553号公報
しかし、特許文献1の発明は、1つの方向への転送を終えてから別の方向への転送を行う必要がある。そのため、例えば周辺ブロックのデータだけを用いる類似度計算においては、無駄な転送が発生することになる。つまり、特許文献1の発明は、例外なく全てのプロセッシングエレメントに同じデータを保持させるためのデータ転送に特化したものである。そのため、1つプロセッシングエレメントが、周囲の限られた範囲のデータ(局所的なデータ)だけを演算に用いる場合にも、遠く離れたプロセッシングエレメントからの不必要なデータまでも受け取ることになり無駄な転送が発生する。このとき、不必要なデータを保持するための記憶容量も必要になり、回路規模も増大してしまう可能性がある。
また、特許文献1の発明では、1つの方向の転送速度と別の方向の転送速度が異なる必要がある。つまり、方向によってデータ転送レートが異なる必要があり、拡張性の面で大きな問題を生じる。例えば半導体集積回路等で2次元平面上に回路を構成する場合に、上
下方向と左右方向とでは回路や配線の構成が異なるため、例えば上下方向だけ配線が混雑するといった問題を生じる。
そのため、プロセッシングエレメントの数を増やす際には、特定の方向に偏って増加させる必要があり、結果として特定の方向だけに配線遅延が生じ、回路形状が配置しにくい形状(例えば、一辺だけが異常に長い長方形)となる。そのため、プロセッシングエレメントの数を増やすことが困難になり、拡張性の面で問題がある。
本発明はこのような問題点に鑑みてなされたものである。本発明のいくつかの態様によれば、プロセッシングエレメント間の通信でのデータ衝突を回避し、かつプロセッシングエレメントを特定の方向に偏ることなく増加させることが可能な拡張性の高いデータ処理装置を提供する。
(1)本発明は、n次元(nは自然数)のネットワークを構成する前記n次元の方向に配置されたプロセッシングエレメントを含み、全ての前記プロセッシングエレメントは、データ転送クロックに同期してデータを入出力し、データを入出力する方向であるシフト方向に隣接する第1の隣接プロセッシングエレメントと、前記第1の隣接プロセッシングエレメントの反対側に隣接する第2の隣接プロセッシングエレメントのうち、前記第1の隣接プロセッシングエレメントから第1のデータを受け取るとともに、前記第2の隣接プロセッシングエレメントに第2のデータを出力し、隣接する前記プロセッシングエレメントの間のデータ転送レートが、前記シフト方向によらず等しい。
(2)このデータ処理装置において、前記プロセッシングエレメントは、2次元のネットワークを構成するように配置され、前記シフト方向は、前記2次元のうちの1つの方向である第1の方向、又は前記第1の方向と異なる第2の方向であってもよい。
(3)このデータ処理装置において、前記プロセッシングエレメントが順に受け取る前記第1のデータのそれぞれを最初に保持していた前記プロセッシングエレメントを結ぶと、前記n次元のネットワーク上に一筆書きの経路が描かれるように、前記シフト方向を選択してもよい。
これらの発明に係るデータ処理装置は、n次元のネットワークを構成するn次元の方向に配置されたプロセッシングエレメントを含む。ここで、nは自然数であり、例えば2次元のネットワークが構成されている。これらの発明に係るデータ処理装置は、トーラス型ネットワークを構成していてもよい。このとき、ある方向の両端に位置するプロセッシングエレメント同士も隣接するプロセッシングエレメントと扱うことが可能である。プロセッシングエレメントは広く演算処理回路を意味し、加算器やシフト回路から成る演算処理モジュールであってもよいし、論理演算回路、乗算器や大きなメモリーを含むプロセッサーであってもよい。データ処理装置は、同じ構成のプロセッシングエレメントを複数配置して並列演算処理を行う。
ここで、データ処理装置を用いた並列演算処理において、プロセッシングエレメントは、一般的に、その周囲のプロセッシングエレメントの演算結果を受け取って演算を行う。このとき、遠方のプロセッシングエレメントとの直接の通信が発生すると、例えばデータの同時要求等によりデータの衝突が生じる。また、データ処理装置が半導体集積回路として実現されている場合に、配線の数が増大して配線の混雑および配線遅延の問題を生じる。
これらの発明に係るデータ処理装置では、全てのプロセッシングエレメントは、データ
転送クロックに同期してデータを入出力する。このとき、データを入出力する方向であるシフト方向で、自己に隣接する第1の隣接プロセッシングエレメントと、第1の隣接プロセッシングエレメントの反対側に隣接する第2の隣接プロセッシングエレメントとの間だけ通信を行う。具体的には、全てのプロセッシングエレメントは、第1の隣接プロセッシングエレメントから第1のデータを受け取るとともに、第2の隣接プロセッシングエレメントに第2のデータを出力する。
つまり、これらの発明に係るデータ処理装置では、全てのプロセッシングエレメントが、データ転送クロックに同期して、同じシフト方向に隣接するプロセッシングエレメントとの間でだけ、特定の向きに通信を行うので、データの衝突が生じることはなく、配線の数や配線遅延の増大を回避することができる。
ここで、データ転送クロックは全てのプロセッシングエレメントに共通のクロックであって、例えばシステムクロックが使用されてもよい。また、例えば2次元のトーラス型ネットワークが構成されている場合、シフト方向は上下方向、左右方向であってもよい。なお、配線可能であれば、シフト方向として斜め方向を用いてもよい。そして、シフト方向は時間の経過とともに、直前のシフト方向と関係なく変化してもよい。この点で、特定の方向のシフト動作が完了してから、他の方向のシフト動作を開始する特許文献1の発明とは大きく異なる。
このとき、例えば自己の左隣のプロセッシングエレメントである第1の隣接プロセッシングエレメントから、入力データである第1のデータを受け取るとともに、自己の右隣のプロセッシングエレメントである第2の隣接プロセッシングエレメントに、出力データである第2のデータを出力してもよい。なお、逆向きに自己の右隣のプロセッシングエレメントが第1の隣接プロセッシングエレメントであってもよい。また、シフト方向が上下方向であって、1つ上又は1つ下のプロセッシングエレメントが第1の隣接プロセッシングエレメントであってもよい。そして、転送の向きも、直前の向きと関係なく変化してもよい。
これらの発明に係るデータ処理装置では、隣接するプロセッシングエレメントの間のデータ転送レートがシフト方向によらず等しい。このため、特定の方向だけ配線の混雑が生じることもなく、特定の方向に偏ることなくプロセッシングエレメントの数を増加させることが可能である。なお、データ転送レートが等しいとは、具体例としてはシフト方向によらずに同じデータ転送クロックが使用されて、データを転送するバス幅がシフト方向によらずに同じ構成であることをいう。
このように、これらの発明に係るデータ処理装置は、プロセッシングエレメント間の通信でのデータ衝突を回避し、かつプロセッシングエレメントを特定の方向に偏ることなく増加させることが可能な拡張性の高いデータ処理装置を実現する。
ここで、データ処理装置において、プロセッシングエレメントが2次元のネットワークを構成するように配置されている場合、上下方向、左右方向がそれぞれ本発明の第1の方向、第2の方向に対応してもよい。
このとき、平面上にネットワークが構成されるデータ処理装置を実現でき、例えば半導体集積回路として実現することが容易になる。また、シフト方向は2次元のうちのいずれか1つの方向であるため、原則として1つのプロセッシングエレメントの上下左右に隣接するプロセッシングエレメントと配線されるだけで済み、配線混雑や配線遅延の問題が生じない。
また、このデータ処理装置において、プロセッシングエレメントが順に受け取る第1のデータのそれぞれを最初に保持していたプロセッシングエレメントを結ぶと、n次元のネットワーク上に一筆書きの経路が描かれるように、シフト方向を選択してもよい。
シフト方向は、データ転送クロックに同期して、毎回変更することが可能である。そのため、1つのプロセッシングエレメントが順に受け取る第1のデータのそれぞれが最初(すなわち、プロセッシングエレメントによるデータの入出力の開始前)に保持されていた他のプロセッシングエレメントを結ぶと、任意の経路を描くことができる。ここで、その経路が一筆書きで描ける経路となるようにすれば、すなわち同じ2つのプロセッシングエレメントの間を2度通ることがなければ、転送時間をできるだけ少なくすることが可能になるため、転送効率を最大限に高めることが可能になる。
なお、次元の数nとプロセッシングエレメントの数によっては、一筆書きが不可能である場合も生じる。その場合には、プロセッシングエレメントが受け取る第1のデータが最初に保持されていたプロセッシングエレメントを結ぶ経路が、最短になるように調整すればよい。具体的には、同じ2つのプロセッシングエレメントの間を2度通る回数が1回だけになるように経路を選択するとよい。
(4)このデータ処理装置において、全ての前記プロセッシングエレメントに対して、同じ命令を実行させる制御部を含んでもよい。
本発明に係るデータ処理装置は、全てのプロセッシングエレメントに対して、同じ命令を実行させる制御部を含む。そのため、全てのプロセッシングエレメントは、命令に従って例えばシフト方向を完全に揃えてデータを転送できる。このとき、データ処理装置は、SIMD(Single Instruction Stream Multi Data Stream)型の制御方式を用いており、同時に同一の命令が実行されるため、例えば画像の局所性を利用した画像処理のような演算を効率よく実行できる。
(5)このデータ処理装置において、前記プロセッシングエレメントは、ブロックに分割された画像データを受け取り、移動物体の抽出と追跡をする演算を行ってもよい。
(6)このデータ処理装置において、前記プロセッシングエレメントは、受け取った前記ブロックが背景である場合に所定の値にする第1パラメーターを含み、前記第1の隣接プロセッシングエレメントから前記第1パラメーターを受け取り、前記第1パラメーターを利用した論理演算結果から孤立点を判定してもよい。
(7)このデータ処理装置において、前記プロセッシングエレメントは、前記移動物体のIDを保持する第2パラメーターを含み、前記第1の隣接プロセッシングエレメントから前記第2パラメーターを受け取り、受け取った前記ブロックが前記移動物体である場合に、前記第2パラメーターの値を以前に受け取った前記移動物体である前記ブロックの前記第2パラメーターと同じ値に置き換えてもよい。
これらの発明に係るデータ処理装置では、プロセッシングエレメントは、ブロックに分割された画像データを受け取り、移動物体の抽出と追跡をする演算を行う。前記の通り、これらの発明に係るデータ処理装置は、プロセッシングエレメントが周囲のプロセッシングエレメントの演算結果を受け取って演算する場合でも、データの衝突を回避できる。移動物体の抽出と追跡をする演算も、周囲のプロセッシングエレメントの演算結果を受け取って演算するので、これらの発明に係るデータ処理装置の構成が適している。例えば、移動物体の追跡におけるブロック間類似度の計算を高速に実行することができる。
ここで、プロセッシングエレメントは、受け取ったブロックが背景である場合に所定の値にする第1パラメーターを含み、第1の隣接プロセッシングエレメントから第1パラメーターを受け取り、第1パラメーターを利用した論理演算結果から孤立点を判定してもよい。
背景に囲まれた孤立点を抽出することは、移動物体の抽出と追跡の処理効率を高めることに役立つ。このとき、プロセッシングエレメントは、データの衝突なく周囲のプロセッシングエレメントの演算結果を受け取ることができるが、受け取った周囲のブロックが背景であるかを判断可能な第1パラメーターも受け取ることで、孤立点を容易に判断することができる。
また、プロセッシングエレメントは、移動物体のIDを保持する第2パラメーターを含み、第1の隣接プロセッシングエレメントから第2パラメーターを受け取り、受け取ったブロックが移動物体である場合に、第2パラメーターの値を以前に受け取った移動物体であるブロックの第2パラメーターと同じ値に置き換えてもよい。
周囲のブロックも含めていくつかのブロックに分割されている移動物体については、ブロック毎に設定されているIDを共通化することで移動物体の追跡が容易になる。このとき、プロセッシングエレメントは、データの衝突なく周囲のプロセッシングエレメントの演算結果を受け取ることができるが、第2パラメーターとして移動物体のIDも受け取ることで、効率的に同じ移動物体のIDを共通化することが可能になる。
本実施形態のデータ処理装置を含むシステムのブロック図。 本実施形態の2次元ネットワークを説明する図。 本実施形態の2次元ネットワークのデータ転送を説明する図。 本実施形態における第1のデータの最初の状態を例示する図。 本実施形態における第1のデータの経路を説明する図。 比較例の直接伝送の配線を説明する図。 比較例の直接伝送と本実施形態の同期シフト伝送を比較する図。 排他的ブロックマッチングの処理のフローを例示する図。 類似度計算について説明する図。 孤立点を説明するための図。 孤立点を背景とする処理を説明するための図。 共通化の前の移動物体のIDを例示する図。 移動物体のIDの共通化を説明するための図。 変形例の3次元ネットワークを説明する図。 変形例の3次元ネットワークにおける転送の最適化を説明する図。
1.データ処理装置の構成
図1は、本実施形態のデータ処理装置10を含むシステム1のブロック図である。図1に示すように、本実施形態のデータ処理装置10は、カメラモジュール50からの画像データを受け取り、画像をブロック化してブロック間の対応を求めて、移動物体トラッキングを行う。移動物体トラッキングは、背景と区別して移動物体を抽出し、その移動を解析するもので、例えば交通監視やセキュリティ目的で使用される。
本実施形態のデータ処理装置10は、ヒストグラム生成部40と、プロセッシングエレメントPE11〜PEMNと制御部30を含む。プロセッシングエレメントPE11〜PEMNは、移動物体トラッキングのための並列演算処理を行う演算処理回路であってネッ
トワーク20を構成している。ネットワーク20は、任意の自然数MおよびNを用いて、プロセッシングエレメントを左右方向にM個、上下方向にN個配置して構成されている。つまり、ネットワーク20のサイズに制限はなく、例えば左右方向に7個、上下方向に6個のプロセッシングエレメントをアレイ状に配置して構成されていてもよい。
システム1において、データ処理装置10は、カメラモジュール50からの画像データをヒストグラム生成部40で受け取ることができる。また、システム1においては、システム1の全体を制御するホストCPU60、例えば画像データを記憶する記憶部70がシステムバスを介して接続されている。そして、データ処理装置10もシステムバスに接続されている。例えば、制御部30はホストCPU60からシステムバスを介して指示を受けとってもよい。また、配線の図示は省略しているが、データ処理装置10は、ヒストグラムや移動物体トラッキングを実行した後のデータを、システムバスを介して記憶部70へと書き込んでもよい。
本実施形態のデータ処理装置10のヒストグラム生成部40は、カメラモジュール50からの画像データをブロック化してブロック単位のヒストグラムを生成する。移動物体トラッキングでは、画像データをブロック化して扱うことで、フレーム間の大きな動きが追跡できると同時に移動物体内部の各部の動きも解析できる。そして、ブロック単位のヒストグラムを用いて、画像ブロック間の1対1対応を求める排他的ブロックマッチングを実行することで、移動物体が例えば回転・拡大・縮小した場合であっても、画像ブロック間の対応を精度良く求めることが可能になる。なお、ヒストグラム生成部40はデータ処理装置10の外部にあってもよい。このとき、データ処理装置10は外部のヒストグラム生成部40からブロック単位のヒストグラムを受け取る。
本実施形態のデータ処理装置10のプロセッシングエレメントPE11〜PEMNは画像ブロックに対応するように2次元に配置されている。そして、本実施形態のネットワーク20は、2次元のトーラス型ネットワークであり、左右方向および上下方向の両端に位置するプロセッシングエレメント同士も隣接するプロセッシングエレメントと扱うことが可能である。このとき、ネットワーク20の端部の例外処理を行う必要がないため、後述する同期シフト転送に適した構成となっている。
なお、以下においては説明の都合上、データ処理装置10は1フレーム分の画像ブロックのそれぞれに対応するプロセッシングエレメントPE11〜PEMNを含むものとする。しかし、1フレーム分の画像ブロックを領域毎にグループ化して時分割して処理することも可能である。また、本実施形態ではネットワーク20はトーラス型であるが、本発明のネットワークは開平面であってもよい。このとき、伝送中にネットワーク20の領域外に出たデータにフラグをたてて、その後の並列演算処理で使用されないようにしてもよい。また、並列演算処理で使用するが無効なデータを捨ててもよい。例えば、図1のようにプロセッシングエレメントPE11〜PEMNを含むが、開平面であるネットワークがあるとする。このとき、後述するように1つのプロセッシングエレメントが自己を中心に(2r+1)行×(2r+1)列の範囲のデータを用いて演算処理をするならば、ネットワーク20の周辺r列およびr行のデータを捨ててもよい。このようなデータの取捨選択は、画像を領域毎にグループ化して時分割で処理(ページ処理)する際に有効である。なお、rは自然数であって、2r+1≦min(M,N)を満たすものとする。
プロセッシングエレメントPE11〜PEMNのそれぞれは、ヒストグラム生成部40から対応する画像ブロックのデータ140(例えばヒストグラム)を受け取り、制御部30からの命令130に従って移動物体トラッキングに必要な演算を並列に行う。このとき、本実施形態のデータ処理装置10では、プロセッシングエレメントPE11〜PEMNのそれぞれが、データ転送クロックに同期して、シフト方向に隣接するプロセッシングエ
レメントとの間でデータを入出力する「同期シフト転送」を行う。ここで、データ転送クロックは、システム1を構成するモジュールの全てに供給されているシステムクロック(不図示)であるとする。
図1を参照して、1つのプロセッシングエレメントPEijについて同期シフト転送でのデータの入出力を説明する。なお、iおよびjは自然数であって、1≦i≦M、1≦j≦Nが成り立つ。
プロセッシングエレメントPEijは、シフト方向を上下方向(「紙面に対して」の方向を意味し、以下表記を省略する)、その向きを下向きとする命令130を制御部30から受け取ったとする。このとき、データ(第1のデータに対応)を受け取る第1の隣接プロセッシングエレメントをプロセッシングエレメントPEij−1(不図示)とし、自己のデータ(第2のデータに対応)を出力する第2の隣接プロセッシングエレメントをプロセッシングエレメントPEij+1(不図示)とする。つまり、配線123経由でプロセッシングエレメントPEij−1からデータを受け取り、配線124経由で自己のデータをプロセッシングエレメントPEij+1に出力する。なお、シフト方向の向きが上方向の場合には、第1の隣接プロセッシングエレメントと第2の隣接プロセッシングエレメントの対応、および配線123と配線124の対応は逆になる。
また、プロセッシングエレメントPEijが、制御部30からシフト方向を左右方向、その向きを右向きとする命令130を受け取った場合には、第1の隣接プロセッシングエレメントをプロセッシングエレメントPEi−1j(不図示)とし、第2の隣接プロセッシングエレメントをプロセッシングエレメントPEi+1j(不図示)とする。つまり、配線121経由で第1のデータを受け取り、配線122経由で第2のデータを出力する。なお、シフト方向の向きが左方向の場合には、第1の隣接プロセッシングエレメントと第2の隣接プロセッシングエレメントの対応、および配線121と配線122の対応は逆になる。
データ処理装置10はSIMD型の制御方式を用いており、制御部30は、プロセッシングエレメントPE11〜PEMNに対して同時に同一の命令130を与える。そのため、全てのプロセッシングエレメントが、命令130に従ってデータの入出力をデータ転送クロックに同期して行う。
このため、データ処理装置10は例えば隣接ブロックのデータも用いるような画像の局所性を利用した演算を効率よく実行できる。以下では、より具体的に5×5(前記のM=5、N=5の場合)のプロセッシングエレメントPE11〜PE55で構成されるネットワーク20を例として、データの同期シフト転送について図2〜図5を参照して説明する。
2.同期シフト転送
2.1.データの転送動作について
図2は、プロセッシングエレメントPE11〜PE55で構成されるネットワーク20の最初の状態を示す図である。ここで、最初の状態とは、カメラモジュール50からの画像データを受け取った直後であって、同期シフト転送が行われる前の状態を指す。なお、命令130とデータ140についての図示は省略している。
プロセッシングエレメントPE11〜PE55のそれぞれは、データを保持する例えばレジスターのような記憶回路M11〜M55と、記憶回路M11〜M55と通信して演算処理を行う演算回路Pを含む。プロセッシングエレメントPE11〜PE55は、図2のように2次元トーラス型であるネットワーク20を構成する。例えば、プロセッシングエ
レメントPE51は、左右方向にプロセッシングエレメントPE11とも隣接し、上下方向にプロセッシングエレメントPE55とも隣接している。
図2のように、プロセッシングエレメントPE11〜PE55は、それぞれの記憶回路M11〜M55に、それぞれデータd11〜d55を最初に保持している。ここで、データd11〜d55は、それぞれの画像ブロックのヒストグラム(図1のデータ140参照)に基づく演算回路Pの演算結果であるとする。そして、プロセッシングエレメントPE11〜PE55は、制御部30から次のデータ転送クロックに同期して、シフト方向を左右方向、その向きを左向きとする命令130を受け取っているとする。
図3は、最初の状態に続く1回目の同期シフト転送がされた状態を表す図である。このとき、データは図3に示す矢印の方向に、データ転送クロックに同期してシフト転送されている。そのため、例えばプロセッシングエレメントPE51は、第1の隣接プロセッシングエレメントPE11から第1のデータd11を受け取り、第2の隣接プロセッシングエレメントPE41に自己が有していた第2のデータd51を出力している。
図2と図3とを比較すると明らかなように、全てのデータd11〜d55は、左側のプロセッシングエレメントPE11〜PE55へとシフトしている。このとき、全てのデータd11〜d55は、データ転送クロックに同期して、同じ方向の隣接するプロセッシングエレメントに移動する。そのため、全てのデータd11〜d55が移動するにもかかわらず、データの衝突が生じることはない。
また、図3ではシフト方向を左右方向として例示したが、シフト方向が上下方向であっても同じくデータの衝突が生じることはない。そして、ネットワーク20において隣接する上下左右のプロセッシングエレメントPE11〜PE55との間のバス幅は全て同じである。そのため、データ処理装置10は、シフト方向によらずデータ転送レートが等しい。データ転送クロックの各サイクルで、シフト方向(向きを含む)を自由に設定することができる。また、プロセッシングエレメントの数の増減も容易にできるので拡張性の高いデータ処理装置10を実現する。
ここで、データ転送クロックの各サイクルで、データ転送の向きを自由に設定できることは、例えば画像の局所性を利用した画像処理に適している。このような画像処理では、1つプロセッシングエレメントは、周囲の限られた範囲のプロセッシングエレメントとだけデータ転送を行えばよい。本実施形態のデータ処理装置10は、例えば隣接する(ここでは斜め方向も含む)8つの画像ブロックのデータを用いる演算処理において、効率的な演算を行うことができる。より一般的には、本実施形態のデータ処理装置10は、各プロセッシングエレメントが、自己を中心とした(2r+1)×(2r+1)の範囲でデータ転送を行う効率的な演算が可能である。なお、rは自然数で、図1のネットワーク20のM、Nを用いて2r+1≦min(M,N)を満たすものとする。r=1の場合、自己を中心とする3×3のデータ転送範囲で、周囲の8つのプロセッシングエレメントとデータ転送を行う。
図4は、シフト方向および向きを(1)〜(8)の順に設定した場合に、プロセッシングエレメントPE33が受け取る第1のデータの最初の状態を示す図である。なお、図4は、プロセッシングエレメントPE33のデータ転送範囲(r=1)であるネットワーク20の一部を表している。この例では、データ転送クロックに同期して、データを転送する向きが(1)左、(2)下、(3)右、(4)右、(5)上、(6)上、(7)左、(8)左、の順に変化する。そして、プロセッシングエレメントPE33は、第1のデータとしてデータd43、データd42、データd32、データd22、データd23、データd24、データd34、データd44の順に受け取る。つまり、図4のようにデータを
転送する向きを表すベクトルを順につないだ経路上にあるデータを、順次受け取ることができる。
このとき、データを転送する向きを表すベクトルを順につないだ経路上にあるデータに重複がなければ、同じデータを2回受け取ることがないので最も効率が良いと言える。すなわち、前記の経路をネットワーク20上において一筆書きで書けるならば、データの転送の効率を最大限に高めていると言える。
逆の見方をすると、データ処理装置10は、ある1つのプロセッシングエレメントが順に受け取る第1のデータのそれぞれを最初に保持していた前記プロセッシングエレメントを結んだ場合に、ネットワーク20上に一筆書きの経路が描かれるようシフト方向を選択することで、データの転送の効率を最大限に高めることができる。
図5は、図4と同じようにデータを転送する向きを設定した場合に、データd43、データd42、データd32、データd24、データd44が移動する軌跡を具体的に示したものである。図5の(1)〜(8)の数字は、図4と同じ転送のタイミングを表し、(k)はk回目の同期シフト伝送に対応する(k=1、2、3、…、8)。
まず、データd43については、1回目の同期シフト伝送でプロセッシングエレメントPE33に入力される。データd42については、プロセッシングエレメントPE32を経由して、2回目の同期シフト伝送でプロセッシングエレメントPE33に入力される。データd32については、プロセッシングエレメントPE22、PE23を経由して、3回目の同期シフト伝送でプロセッシングエレメントPE33に入力される。また、データd24については、プロセッシングエレメントPE14、PE15、PE25、PE35、PE34を経由して、6回目の同期シフト伝送でプロセッシングエレメントPE33に入力される。そして、データd44については、プロセッシングエレメントPE34、PE35、PE45、PE55、PE54、PE53、PE43を経由して、8回目の同期シフト伝送でプロセッシングエレメントPE33に入力される。
このように、データd42、データd32、データd24、データd44は、他のプロセッシングエレメントを経由してプロセッシングエレメントPE33に入力されるが、経由するプロセッシングエレメントにとっても、これらのデータは隣接する8つの画像ブロックのデータに該当する。そのため、経由するプロセッシングエレメントでも演算が行われる。すなわち、この例において演算に使用されない無駄な転送は一度もなく、隣接する8つの画像ブロックのデータを用いる演算処理において、効率的な演算を行うことができる。
2.2.性能について
ここで、本実施形態のデータ処理装置10が採る同期シフト転送について、直接伝送と対比しながら説明する。図6は、比較例の直接伝送の配線を説明する図である。この比較例でも、本実施形態のデータ処理装置10と同じようにプロセッシングエレメントPE11〜PE55が配置されているものとする。
比較例が採る直接伝送では、各プロセッシングエレメントPE11〜PE55は相互に接続される必要がある。例えば、5×5のデータ転送範囲(r=2)では、プロセッシングエレメントPE33について図6のような配線が必要になる。図6では、見やすさのためにプロセッシングエレメントPE33だけについて他のプロセッシングエレメントとの配線(図6における太線)を示しているが、実際には他のプロセッシングエレメントについても同じように配線されている。
図6からもわかるように、比較例では、プロセッシングエレメントの数が増加すると配線混雑の問題が生じやすく、また、遠方のプロセッシングエレメントとの配線では遅延の問題も生じやすい。一方、本実施形態のデータ処理装置10は、隣接するプロセッシングエレメント間だけで配線されるので、配線混雑の問題および配線遅延の問題も生じない。
図7は、直接伝送と同期シフト伝送の性能を比較する図である。例えば「バスの本数/プロセッシングエレメント」はプロセッシングエレメント当たりのバスの本数を示す。図6に示す比較例(直接伝送の例)では、r=2であるので、(2×2+1)−1=24本のバスが必要になる。一方、図2に示す本実施形態のデータ処理装置10では上下左右の4本のバスだけでよい。
バスの総数は前記のバスの本数にプロセッシングエレメントの総数Nを乗じたものとなり、配線の総数はさらにバス幅bを乗じたものとなる。プロセッシングエレメントで構成するアレイ状のネットワークが大きい場合に、すなわち演算処理の並列度が高い場合には特に、同期シフト伝送の方が直接伝送に比べて配線混雑が生じにくいことがわかる。
そして、隣接するプロセッシングエレメント間の距離をLとして、プロセッシングエレメント当たりの配線長も図7のように計算できる。プロセッシングエレメントで構成するアレイ状のネットワーク20が大きい場合に、直接伝送では配線長が長くなり遅延の問題も生じやすいが、同期シフト伝送は影響を受けないことがわかる。
ここで、本実施形態のデータ処理装置10のネットワーク20において、プロセッシングエレメント間のバス幅bは例えば2ビット程度に抑えることができる。本実施形態のデータ処理装置10では、配線遅延の問題はなく、隣接するプロセッシングエレメント間で高速にデータを転送することが可能である。そのため、データを例えば2ビット程度に分割して複数回転送しても、その転送時間がプロセッシングエレメントにおける演算時間を超えることがないからである。
ここで、1回のデータ転送にかかる時間をSとすると、同期シフト伝送は転送時間が最大でS×{(2r+1)−1}だけかかってしまう。例えば、図4の例は、3×3のアレイ状のネットワーク20の全てのプロセッシングエレメントのデータを転送することに対応する。このとき、r=1とできるので最大で8Sの時間がかかる。
一方、全てのプロセッシングエレメント間がバスで直結されている直接伝送では、どのプロセッシングエレメントのデータであっても1Sで受け取ることが可能である。すると、転送時間については直接伝送の方が有利であると言える。
しかし、一般にデータ処理装置においては、データの転送時間と演算にかかる時間(以下、演算時間という)の一方がボトルネックとなり処理時間が定まる。そのため、例えデータの転送時間が早くても演算時間が遅い場合には、処理時間は演算時間によって定まる。
そこで、1つのデータについての演算時間をTとすると、直接伝送であってもT×(2r+1)だけの処理時間がかかる。一方、同期シフト伝送では、1回のデータ転送にかかる時間Sと演算時間Tの遅い方で処理時間が定まるので、処理時間はmax(S,T)×(2r+1)で表すことができる。
ここで、図5を参照して説明したように、データ処理装置10では適切なシフト方向を選択することで演算に使用されない無駄な転送が一度も生じないようにすることができる。このとき、前記の式でmax(S,T)=Tであると考えられるので、処理時間はT×
(2r+1)となる。
以上のように、プロセッシングエレメントの演算時間から定まる条件を満たすことで、データの転送時間がボトルネックとなることはない。このとき、配線遅延を生じない容量無限大の通信路がプロセッシングエレメント間に存在する理想的な直接接続にも劣らない、高速な処理時間を実現することが可能である。
3.移動物体トラッキングにおける並列演算処理
本実施形態のデータ処理装置10は、移動物体トラッキングにおけるいくつかの画像処理についても処理時間を短縮し、優れた処理能力を発揮する。図8は、データ処理装置10が行う、排他的ブロックマッチングと呼ばれる処理のフローチャートである。データ処理装置10は、カメラモジュール50からの画像データに基づいてヒストグラム生成部40で画像ブロック単位のヒストグラムを生成する(S10)。
そして、画像ブロック単位のヒストグラムを受け取ったプロセッシングエレメントは、画像ブロック間の特徴量の類似度を計算する(S20)。このときの類似度計算は、図9に示すように、時間的に以前のフレーム((t-1)-th frame)の周囲の画像ブロックの特徴量と比較する計算である。なお、図9の1つのフレーム(t-th frame、(t-1)-th frame、又はBackground)における42個の丸の1つ1つがプロセッシングエレメントに対応する。そして、紙面上下方向で同一位置にある丸は、同一のプロセッシングエレメントに対応する。
類似度計算の結果に基づいて、画像ブロック間の対応を決定する(S30)。このとき、画像ブロック間の対応は、現在のフレーム(図9のt-th frame)の画像ブロックと時間的に以前のフレーム((t-1)-th frame)の画像ブロックの類似度の1次割当問題として解くことができる。このとき、図9のように移動物体ではない背景(Background)との対応を考慮することもできるので、画像ブロック間の対応を正確に求めることができる。
そして、得られた画像ブロック間の対応に基づいて、孤立点除去を行って背景を更新し、移動物体にIDを付与する演算を行う(S40)。このとき、孤立点の判断は、周囲の画像ブロックが背景か否かに基づいて行う。また、移動物体にIDを付与する場合にも、周囲の画像ブロックと連続する移動物体には同じIDを付与する必要がある。
以上のように、データ処理装置10が行う、排他的ブロックマッチングと呼ばれる処理では、いくつかの演算を行う。そのうち、類似度計算(S20参照)と孤立点除去および移動物体へのIDの付与(S40参照)は、画像の局所性、すなわち周囲の画像ブロックのデータを利用する演算である。そのため、本実施形態のデータ処理装置10は、これらの演算を効率よく実行でき、処理時間を早めることができる。
まず、類似度計算としては、例えば比較するブロックの特徴量の差分絶対値和を求めてもよい。このとき、図4を参照して説明したように、周囲の画像ブロックの特徴量を含むデータを8回の転送で効率よく受け取ることができ、しかも、全ての転送において必要な演算が実行されるため処理時間を早めることができる。
次に、孤立点除去について説明する。図10は孤立点を説明するための図であり、プロセッシングエレメントPE22〜PE44は図4と同じようにネットワーク20の一部である。図10では、図4の記憶回路M22〜M44の表示を省略し、代わりに第1パラメーターX22〜X44を表示している。第1パラメーターX22〜X44についても、記憶回路M22〜M44のデータと共に転送される。
第1パラメーターX22〜X44は、それぞれ、画像ブロックが背景である場合に0に設定される。孤立点とは、図10のように周囲の画像ブロックの全てが背景であるような、背景ではない画像ブロックである。しかし、孤立点は実際には背景であるのに、何らかの原因で背景ではないと判断された画像ブロックであると考えられる。
そこで、データ処理装置10は、第1パラメーターX22〜X44を8回の転送で効率よく受け取り、孤立点であることを確認すると(図10参照)、図11のようにプロセッシングエレメントPE33の第1パラメーターX33を0に変更する孤立点除去を行う。
この場合にも、周囲の画像ブロックの第1パラメーターを効率よく受け取り、しかも、全ての転送において孤立点か否かを判定する演算が実行されるため処理時間を早めることができる。このとき、例えば第1パラメーターX33を除く第1パラメーターX22〜X44の論理和が0であることによって孤立点を判断してもよい。
次に移動物体のID付与について説明する。図12は、移動物体のID付与について説明するための図である。図12では、図5の記憶回路M11〜M55の表示を省略し、代わりに第2パラメーターY11〜Y55を表示している。第2パラメーターY11〜Y55は、移動物体のIDを保持する。図12の第2パラメーターY11〜Y55は、正確なIDの付与の処理、すなわちIDの共通化の処理の前の状態であり、画像ブロック毎に異なる初期値が与えられている。第2パラメーターY11〜Y55についても、記憶回路M11〜M55のデータと共に転送される。
ここで、図12においては、太線で囲まれている部分が移動物体であって、それ以外のブロックは第1パラメーターによって背景であることが分かっているとする。このとき、データ処理装置10は、周囲の画像ブロックの第2パラメーターを効率よく受け取り、自己の画像ブロックと連続性を有する背景以外の画像ブロックの第2パラメーターを揃える。図13は、データ処理装置10がIDの共通化の処理を実行した後の状態を表し、この例では連続性を有する背景でないブロックの最小の初期値を、共通のIDとしている。この処理により、以降のフレームにおいて、移動物体の抽出とその移動の解析を正確に行うことができる。
以上のように、本実施形態のデータ処理装置10では、同期シフト転送によって、プロセッシングエレメント間の通信でのデータ衝突を回避できる。また、シフト方向によらずデータ転送レートが等しいため、プロセッシングエレメントを特定の方向に偏ることなく増加させることが可能な拡張性の高いデータ処理装置を提供する。このとき、適切なシフト方向を選択することで演算に使用されない無駄な転送が一度も生じないようにすることができ、画像の局所性を利用した画像処理のような演算を効率よく実行できる。
4.変形例
本実施形態のデータ処理装置10の説明では、ネットワーク20は2次元のトーラス型ネットワークであったが、特に2次元に限る必要はなく3次元以上のネットワークを用いてもよい。
図14はネットワーク20を3次元とした場合を例示する図である。ここで、丸はプロセッシングエレメントを表す。なお、見やすさのために交互に色を付しているが、プロセッシングエレメントの構成は全て同一であり、バスの幅なども方向によらず同じである。
2次元のトーラス型ネットワークの場合(図4参照)と同様に、図14のネットワークにおいても、周囲のプロセッシングエレメントからのデータを効率良く受け取ることが可能である。ここで、図14の太線でしめした矢印は図4と同じようにシフト方向を示すベ
クトルを接続したものであり、詳細な説明を省略する。また、プロセッシングエレメントPEは図4のプロセッシングエレメントPE33に対応する。
しかし、図14の例のようにネットワークに含まれるプロセッシングエレメントの数によっては、一筆書きで描く経路に全てのプロセッシングエレメントを含むことができず、データを受け取れないプロセッシングエレメントPEが生じることがある。
このような場合には、図15のように、往復する冗長な経路RおよびRを加えて、同じ2つのプロセッシングエレメントの間を1往復だけするようにシフト方向を選択するとよい。その他の事項については、前記の実施形態と同じであり説明を省略する。
5.その他
前記の実施形態では、データ処理装置10は移動物体トラッキングのための画像処理を実施するが、本発明は、移動物体トラッキング以外の画像処理や画像処理以外の演算処理も効果的に行うことができる。
例えば、図1のデータ処理装置10は、カメラモジュール50からの画像データをヒストグラム生成部40が受け取る。しかし、ヒストグラム生成部40は一例であり、一般に入力データをプロセッシングエレメントPE11〜PEMNが扱える形式に変換するデータ変換部を含んでいてもよい。
例えば、データ処理装置10は、ヒストグラム生成部40ではなく、画像データを単にブロック化してプロセッシングエレメントPE11〜PEMNに与えるデータ変換部を含むとする。このとき、制御部30はネットワーク20を用いて画像のフィルタリングを実行してもよい。フィルターの種類は特定のものに限られないが、例えば、画像の局所性を利用する演算を含むガウシアンフィルター等を実行して効率的なノイズ除去をすることができる。
また、データ処理装置10は画像処理に限らず、一般的な数値データを受け取ってもよい。例えば、n次元の数値データをデータ変換部が受け取り、n次元ネットワークを構成するプロセッシングエレメントが並列演算を行うことで、効率的に微分方程式を解くことも可能である。
ここで、前記の実施形態および変形例のデータ処理装置10は、半導体集積回路として実現されてもよい。例えば、図1のプロセッシングエレメントPE11〜PEMNは規則的に配置されて2次元のネットワーク20を構成する。この規則性から回路面積を増大させることなく半導体集積回路として実現できる。また、前記の通り配線の混雑や配線遅延の増加を生じず、1つの制御部30でSIMD型の制御方式を実現できるため、半導体集積回路に向いている。
また、データ転送レートがシフト方向によらず等しいので、プロセッシングエレメントPE11〜PEMNを増減することも容易である。例えば、FPGA(Field-Programmable Gate Array)等を用いて、用途に応じて規模を変更できる柔軟なデータ処理装置10ないしそれを用いたシステム1を構成することができる。
なお、図1の例では、データ処理装置10だけでなく、ホストCPU60や記憶部70も含めて半導体集積回路としてもよい。また、図1のデータ処理装置10の一部(例えば、制御部30およびヒストグラム生成部40の少なくとも一方を除いた構成)を半導体集積回路としてもよい。
さらに、図1の例ではプロセッシングエレメントPE11〜PEMNの間の配線方向は上下左右であるが斜め方向に配線してもよい。このとき、転送時間について改善を図ることが可能である。
これらの例示に限らず、本発明は、実施形態で説明した構成と実質的に同一の構成(例えば、機能、方法および結果が同一の構成、あるいは目的および効果が同一の構成)を含む。また、本発明は、実施形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施形態で説明した構成に公知技術を付加した構成を含む。
1 システム、10 データ処理装置、20 ネットワーク、30 制御部、40 ヒストグラム生成部、50 カメラモジュール、60 ホストCPU、70 記憶部、121〜124 配線、130 命令、140 データ、M11〜M55 記憶回路、PE11〜PE55,PEij,PEMN プロセッシングエレメント、X22〜X44 第1パラメーター、Y11〜Y55 第2パラメーター、d11〜d55 データ

Claims (7)

  1. n次元(nは自然数)のネットワークを構成する前記n次元の方向に配置されたプロセッシングエレメントを含み、
    全ての前記プロセッシングエレメントは、
    データ転送クロックに同期してデータを入出力し、
    データを入出力する方向であるシフト方向に隣接する第1の隣接プロセッシングエレメントと、前記第1の隣接プロセッシングエレメントの反対側に隣接する第2の隣接プロセッシングエレメントのうち、前記第1の隣接プロセッシングエレメントから第1のデータを受け取るとともに、前記第2の隣接プロセッシングエレメントに第2のデータを出力し、
    隣接する前記プロセッシングエレメントの間のデータ転送レートが、前記シフト方向によらず等しい、データ処理装置。
  2. 請求項1に記載のデータ処理装置において、
    前記プロセッシングエレメントは、
    2次元のネットワークを構成するように配置され、
    前記シフト方向は、前記2次元のうちの1つの方向である第1の方向、又は前記第1の方向と異なる第2の方向である、データ処理装置。
  3. 請求項1乃至2のいずれか1項に記載のデータ処理装置において、
    前記プロセッシングエレメントが順に受け取る前記第1のデータのそれぞれを最初に保持していた前記プロセッシングエレメントを結ぶと、前記n次元のネットワーク上に一筆書きの経路が描かれるように、前記シフト方向を選択する、データ処理装置。
  4. 請求項1乃至3のいずれか1項に記載のデータ処理装置において、
    全ての前記プロセッシングエレメントに対して、同じ命令を実行させる制御部を含む、データ処理装置。
  5. 請求項1乃至4のいずれか1項に記載のデータ処理装置において、
    前記プロセッシングエレメントは、
    ブロックに分割された画像データを受け取り、移動物体の抽出と追跡をする演算を行う、データ処理装置。
  6. 請求項5に記載のデータ処理装置において、
    前記プロセッシングエレメントは、
    受け取った前記ブロックが背景である場合に所定の値にする第1パラメーターを含み、
    前記第1の隣接プロセッシングエレメントから前記第1パラメーターを受け取り、
    前記第1パラメーターを利用した論理演算結果から孤立点を判定する、データ処理装置。
  7. 請求項5乃至6のいずれか1項に記載のデータ処理装置において、
    前記プロセッシングエレメントは、
    前記移動物体のIDを保持する第2パラメーターを含み、
    前記第1の隣接プロセッシングエレメントから前記第2パラメーターを受け取り、
    受け取った前記ブロックが前記移動物体である場合に、前記第2パラメーターの値を以前に受け取った前記移動物体である前記ブロックの前記第2パラメーターと同じ値に置き換える、データ処理装置。
JP2012155823A 2012-07-11 2012-07-11 データ処理装置 Expired - Fee Related JP5939572B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012155823A JP5939572B2 (ja) 2012-07-11 2012-07-11 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012155823A JP5939572B2 (ja) 2012-07-11 2012-07-11 データ処理装置

Publications (2)

Publication Number Publication Date
JP2014016957A true JP2014016957A (ja) 2014-01-30
JP5939572B2 JP5939572B2 (ja) 2016-06-22

Family

ID=50111544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012155823A Expired - Fee Related JP5939572B2 (ja) 2012-07-11 2012-07-11 データ処理装置

Country Status (1)

Country Link
JP (1) JP5939572B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018185847A (ja) * 2015-04-23 2018-11-22 グーグル エルエルシー 画像プロセッサのための二次元シフトアレイ
JP2019003414A (ja) * 2017-06-15 2019-01-10 公立大学法人会津大学 データ処理装置、及びこれにおけるデータ処理方法
JP2019220202A (ja) * 2015-04-23 2019-12-26 グーグル エルエルシー 高性能で、電力効率の良い、プログラマブルな画像処理のためのアーキテクチャ
JP2020077298A (ja) * 2018-11-09 2020-05-21 株式会社Preferred Networks プロセッサおよびプロセッサの制御方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60175174A (ja) * 1984-02-21 1985-09-09 Agency Of Ind Science & Technol 並列デ−タ転送方式
JPH04290155A (ja) * 1991-03-19 1992-10-14 Fujitsu Ltd 並列データ処理方式
JP2006024146A (ja) * 2004-07-09 2006-01-26 Foundation For The Promotion Of Industrial Science 画像処理による移動物体計測方法及び装置
JP2007536628A (ja) * 2004-05-03 2007-12-13 シリコン・オプティクス Simdアレープロセッサ用のビットシリアル処理要素
JP2008250366A (ja) * 2007-03-29 2008-10-16 Pioneer Electronic Corp 人物抽出方法、その装置、そのプログラム、および、そのプログラムを記録した記録媒体
JP2011108135A (ja) * 2009-11-20 2011-06-02 Seiko Epson Corp 画像処理装置、画像処理方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60175174A (ja) * 1984-02-21 1985-09-09 Agency Of Ind Science & Technol 並列デ−タ転送方式
JPH04290155A (ja) * 1991-03-19 1992-10-14 Fujitsu Ltd 並列データ処理方式
JP2007536628A (ja) * 2004-05-03 2007-12-13 シリコン・オプティクス Simdアレープロセッサ用のビットシリアル処理要素
JP2006024146A (ja) * 2004-07-09 2006-01-26 Foundation For The Promotion Of Industrial Science 画像処理による移動物体計測方法及び装置
JP2008250366A (ja) * 2007-03-29 2008-10-16 Pioneer Electronic Corp 人物抽出方法、その装置、そのプログラム、および、そのプログラムを記録した記録媒体
JP2011108135A (ja) * 2009-11-20 2011-06-02 Seiko Epson Corp 画像処理装置、画像処理方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018185847A (ja) * 2015-04-23 2018-11-22 グーグル エルエルシー 画像プロセッサのための二次元シフトアレイ
JP2019220202A (ja) * 2015-04-23 2019-12-26 グーグル エルエルシー 高性能で、電力効率の良い、プログラマブルな画像処理のためのアーキテクチャ
US11153464B2 (en) 2015-04-23 2021-10-19 Google Llc Two dimensional shift array for image processor
JP2019003414A (ja) * 2017-06-15 2019-01-10 公立大学法人会津大学 データ処理装置、及びこれにおけるデータ処理方法
JP7014393B2 (ja) 2017-06-15 2022-02-01 公立大学法人会津大学 データ処理装置、及びこれにおけるデータ処理方法
JP2020077298A (ja) * 2018-11-09 2020-05-21 株式会社Preferred Networks プロセッサおよびプロセッサの制御方法
JP7315317B2 (ja) 2018-11-09 2023-07-26 株式会社Preferred Networks プロセッサおよびプロセッサのデータ転送方法

Also Published As

Publication number Publication date
JP5939572B2 (ja) 2016-06-22

Similar Documents

Publication Publication Date Title
US11341750B2 (en) Quasi-parametric optical flow estimation
US9940724B2 (en) Method and system for detecting multiple moving objects from real-time aerial images
JP6483370B2 (ja) イベント情報を含む映像を分析する装置及び方法並びにユーザ入力処理装置
JP6493163B2 (ja) 粗密探索方法および画像処理装置
US11734554B2 (en) Pooling processing method and system applied to convolutional neural network
US11620757B2 (en) Dense optical flow processing in a computer vision system
WO2018176186A1 (en) Semantic image segmentation using gated dense pyramid blocks
JP5939572B2 (ja) データ処理装置
US10430966B2 (en) Estimating multi-person poses using greedy part assignment
CN102509071B (zh) 光流计算系统和方法
CN111738433B (zh) 一种可重配置的卷积硬件加速器
CN110097050A (zh) 行人检测方法、装置、计算机设备及存储介质
US11682212B2 (en) Hierarchical data organization for dense optical flow processing in a computer vision system
CN111133457A (zh) 电子设备及其控制方法
US20150146920A1 (en) Gesture recognition method and apparatus utilizing asynchronous multithreaded processing
JP5441737B2 (ja) 画像処理装置、画像処理方法及び画像処理用プログラム
JP2019087166A (ja) 撮影画像に含まれる境界線を検出するための装置、方法、及びプログラム
Schmidt et al. An optimized FPGA implementation for a parallel path planning algorithm based on marching pixels
Chen et al. A fast efficient parallel Hough transform algorithm on LARPBS
KR101000036B1 (ko) 실시간 영상 처리를 위한 서브 샘플링 시스템
CN111857478B (zh) 一种图像布局方法、装置、电子设备及存储介质
US11800258B2 (en) High-performance CNN inference model at the pixel-parallel CMOS image sensor
WO2023184754A1 (zh) 可配置实时视差点云计算装置及方法
JP5455682B2 (ja) 画像処理装置、画像処理方法及び画像処理用プログラム
Sheen et al. General-purpose high-speed heterogeneous machine vision architecture

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150525

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160414

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160427

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160511

R150 Certificate of patent or registration of utility model

Ref document number: 5939572

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees