JP2008546088A - ハフ変換計算の並列処理のための方法およびシステム - Google Patents

ハフ変換計算の並列処理のための方法およびシステム Download PDF

Info

Publication number
JP2008546088A
JP2008546088A JP2008514644A JP2008514644A JP2008546088A JP 2008546088 A JP2008546088 A JP 2008546088A JP 2008514644 A JP2008514644 A JP 2008514644A JP 2008514644 A JP2008514644 A JP 2008514644A JP 2008546088 A JP2008546088 A JP 2008546088A
Authority
JP
Japan
Prior art keywords
hough transform
memory
subspace
array
image
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
JP2008514644A
Other languages
English (en)
Other versions
JP4727723B2 (ja
JP4727723B6 (ja
Inventor
エイ. モハメッド、マグディ
ネイサー、イルファン
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.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
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 Motorola Inc filed Critical Motorola Inc
Publication of JP2008546088A publication Critical patent/JP2008546088A/ja
Publication of JP4727723B2 publication Critical patent/JP4727723B2/ja
Application granted granted Critical
Publication of JP4727723B6 publication Critical patent/JP4727723B6/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/48Extraction of image or video features by mapping characteristic values of the pattern into a parameter space, e.g. Hough transformation

Abstract

入力データ値のアレイのハフ変換を並列計算する際に、ハフ変換の変換空間は、多数の部分空間に動的または静的に分割される。変換の各部分空間は、メモリ位置(510,510’,510”)の部分空間に格納される。入力データ値のアレイからのデータ値は、複数のプロセッサ(508,508’,508”)に送られるが、各プロセッサは、メモリ位置の部分空間と動的または静的に関連している。他のプロセッサと並列に動作する各プロセッサ(508,508’,508”)は、入力データ値に従って関連する部分空間メモリ(510,510’,510”)内に格納しているハフ変換の成分要素を更新する。

Description

本発明はアレイ処理の分野に関し、特には、ハフ変換を並列計算するためのシステムおよび方法に関する。
画像処理における共通の問題は、画像データのフレーム内の直線、円、楕円、および他の高次多項式、または任意の曲線、等の基本要素(primitive)を発見することである。1つの方法は、ハフ変換を使用する方法である。ハフ変換は、ある点を通るすべての基本要素のパラメータを示す、変換領域内の曲線または面へ画像アレイ内の点をマッピングする。基本要素が直線である場合には、全入力画像のハフ変換は、2次元離散ラドン変換またはスラント・スタック変換と数学的に等価である。しかし、2次元離散ラドン変換またはスラント・スタック変換を計算する場合には、通常、画像アレイ内の一組の点から変換領域内の各点の変換値を計算する。
他の曲線へのハフ技術の一般化は容易であり、この方法を任意の曲線s(x,p)=0(ここで、xは、画像アレイ内の座標の位置ベクトルであり、pは、係数のパラメータ・ベクトルである)に使用することができる。ハフ変換の複雑度は、所与の表示内の座標および係数の数に大きく依存する。簡単な解析表示でない曲線を検出するためのハフ変換をさらに一般化することもできる。
曲線検出のためのハフ方法の最大の利点は、入力データ内のノイズの多い点を無視する(overlook)ことができることである。非常にノイズの多い点は、対象となるパラメータ点のところのアキュムレータ値を変えない。もう1つの利点は、ハフ方法を、パラメータ空間内の極大値を探索することにより、類似の形状の複数の曲線を検出するために使用することができることである。
ハフ変換の計算は高価である。そのため低コストで高速計算が必要である場合には、リアルタイムでの適用に問題がでてくる。一例としては、車両案内およびナンバー・プレート読取りのような用途用の自動車ビデオ・カメラからの映像フレームの解析がある。もう1つの例としては、ロボット用途用のマシン・ビジョンがある。これらのすべての用途は、データ・レートが高い映像フレームのリアルタイム処理を必要とする。
この分野での従来の用途は、パーソナル・コンピュータ、デジタル・シグナル・プロセッサ、または汎用性のある画像処理装置のような汎用プロセッサ上で実施するためのアルゴリズムの設計に主として焦点を当ててきた。
米国特許第5,809,322号
ハフ変換の場合には、画像アレイ内の点を変換アレイ内の曲線または面へマッピングしなければならない。ハフ変換を計算するには2つの方法がある。第1の方法は、変換アレイ内の各要素に対して1つずつ、多数のアキュムレータを使用する方法である。この方法を使用すると、コンピュータ・グラフィックス・カードのようにハードウェアが複雑になる。第2の方法は、1つのアキュムレータを使用し、メモリ内に変換アレイを格納する方法である。この方法は、メモリとアキュムレータの間で部分和(partial sum)を移動するために、各画像画素に対して複数の読取りおよび書込み動作を行わなければならないために速度が遅くなる。
ハフ変換を計算するために並列処理ハードウェアが提案されてきた。ある方法では、画素値のアレイを含む画像が複数のサブ画像に分割される。各サブ画像の変換は、別の処理エンジンにより計算され、そのため並列計算を行うことができる。この方法の一例については、1988年9月15日付けのAkerib;Avidan(Associate Computing Limited)の、「信号処理のための装置および方法」(Apparatus and method for signal processing)という名称の米国特許第5,809,322号に開示されている。この米国特許は、ハフ変換を含む画像解析ルーチン用のプロセッサ間で画像データが分割される用途について記載している。この方法の利点は、ある種の用途の場合、画像内の前景要素に対応する画素だけを処理さえすればよいということである。これらの用途の場合、計算の回数は、入力データ(画像)内の前景画素数とともに直線的に変化する。前景画素の空間分布により、作業負荷がプロセッサ間で均等に分配されていない場合がある。例えば、いくつかのサブ画像は、前景要素を有していない場合があるし、他のサブ画像は前景画素だけしか含んでいない場合もある。そのためプロセッサをうまく使用できなくなる。さらに、ハフ変換の部分和はメモリに格納される。2つ以上のプロセッサが同じ物理メモリを更新している場合があるので、そのため各プロセッサに対して共有メモリ機構(例えば、セマフォーなど)を使用しなければならないか、または別々のメモリを使用しなければならない。前者の方法は、より多くの計算オーバヘッドを導入するが、後者の方法は、より高価であり、高次元ハフ変換空間の場合には実行することができない。画像のサブ画像への分割は、低解像度画像の場合、または少数のパラメータ(例えば、直線など)を含む曲線の検出の場合だけに実行することができる。
本発明の特徴であると信ずる新規な特徴については添付の特許請求の範囲に記載されている。しかし、本発明自身、ならびにその他の目的および利点は、添付の図面を参照しながら、例示としての実施形態の下記の詳細な説明を読めばよりよく理解することができるだろう。
本発明は、多くの異なる形で実施することがき、1つまたは複数の特定の実施形態を図面に示し以下に詳細に説明するが、本発明は本発明の原理の例示としてのものであり、本発明を図示し説明する特定の実施形態に制限するものでないことを理解されたい。以下の説明においては、図面のいくつかの表示内の同一の、類似の、または対応する部分を説明するために類似の参照番号を使用している。
本発明は、入力データのアレイのハフ変換を並列計算するための方法および処理アーキテクチャに関する。一実施形態の場合には、ハフ変換の変換空間は、複数の部分空間に動的または静的に分割される。変換の各部分空間は、その構成部分空間メモリ・アドレスに格納される。入力データ値のアレイからのデータ値は、複数のプロセッサに送られ、各プロセッサは、メモリ・アドレスの部分空間と動的または静的に関連している。他のプロセッサと並列に動作する各プロセッサは、入力データ値に従って関連する部分空間メモリ・アドレスのところに格納しているハフ変換の要素を更新する。
各プロセッサは別々のメモリ位置にアクセスするので、メモリ共有機構もメモリ複製も必要としない。何故なら、各プロセッサは各画素を使用することができ、プロセッサが同時に重ならないメモリ空間を更新するからである。さらに、画像(例えば、前景オブジェクトなど)の一部だけが変換される場合でも、処理はプロセッサ間で均等に分配されるからである。
概念上は、プロセッサの数が前景画素数を超える場合でも、すべてのタイプの曲線を検出するために処理速度を直線的に増大することができる。この特徴により、多数のパラメータを含む曲線を検出するのに適した方法およびアーキテクチャにすることができる(高次元ハフ空間)。1つのハフ空間を更新する際に、すべての使用できるプロセッサ間に作業負荷を均等に分割することにより、プロセッサを効率的に使用することができる。
本発明は、例えば、スマート画像センサ、映像解析装置(例えば、目線追跡システムなど)、障害者インタフェース・ユニット、ロボット・ビジョン・ユニット、および種々の臨床装置で使用するための画像特徴認識の用途に使用することができる。
ハフ変換は、下式を満足する基本曲線を使用する。
Figure 2008546088
ここで、pはパラメータ・ベクトルであり、xは入力画像内の位置ベクトルである。このことは、固定パラメータ・ベクトルに対する画像空間内の点xを定義する式として、または位置ベクトルx(すなわち、特定の画素位置)の固定値に対するパラメータ空間内の点の定義点として見ることができる。
ハフ変換を計算する際には、パラメータ空間は、ハフ・パラメータ空間Pを形成するために、パラメータ・ベクトルの離散値に量子化される。固定パラメータ・ベクトルp∈Pの場合には、式(1)を満足する画像空間内のxの座標は、x(p)で示される。パラメータ空間内の対応する点の値は、下式のように定義される。
Figure 2008546088
ここで、A(x)は、位置xのところの画素のグレイ・レベル値であり、Nは、入力画像データ内の画素の全数である。通常、A(x)は、前景画素の場合には値1に設定され、背景画素の場合には0に設定される。次に、ハフ変換空間内の点に対応する値は、下式により再帰的に計算することができる。
Figure 2008546088
図1は、ハフ変換を計算するための方法のフローチャートである。図1を参照すると、計算はブロック102から開始する。メモリ位置は、ハフ変換空間内の各点に対して使用される。ブロック104において、メモリはゼロに初期化される。このことは式(3)のH(p)に対応する。ブロック108において、画像空間内の位置xのところの画素の値A(x)が検索される。ブロック110において、式s(x,p)を満足するハフ変換空間内のpの値が決定される。これらの値は、p(x)で示される。ブロック112において、ハフ変換空間内の点p(x)が下式により更新される。
Figure 2008546088
決定ブロック114において、画像のすべての画素が処理されたか否かを判定するためのチェックが行われる。処理が終了していない場合には、決定ブロック114からの負のブランチが示すように、流れはブロック108に戻り、次の画素値が検索される。画像のすべての画素が処理済みの場合には、決定ブロック114からの正のブランチが示すように、変換の計算が終了し、処理はブロック116において終了する。
図2は、ハフ変換を計算するためのもう1つの方法のフローチャートである。この方法は、ブロック106において画像が多数のサブ画像に分割される点を除けば、図1の方法に類似している。フローチャートを簡単にするために、この方法を2つのサブ画像に対してだけ表示するが、もっと多くのサブ画像も使用することができる。ブロック108において、画素が第1のサブ画像から検索され、ブロック110および112において(第1のプロセッサにより)処理される。並列に、ブロック108’において、画素が第2のサブ画像から検索され、ブロック110’および112’において(第2のプロセッサにより)処理される。ブロック104において初期化されたメモリは、第1および第2のプロセッサにより共有されることに留意されたい。この場合には、メモリ共有のための機構を使用しなければならない。
図3は、本発明のある実施形態によるハフ変換を計算するための方法のフローチャートである。図3を参照すると、計算はブロック302から開始する。ブロック304において、ハフ変換空間の分割が決定される。このブロックにおいて、パラメータの量子化およびパラメータの範囲が決定される。ブロック306において、メモリがゼロに初期化される。これは、式(3)のH(p)=0に対応する。ブロック308において、画像空間内の位置xのところの画素の値A(x)が検索される。フローチャートを簡単にするために、2つの部分空間,pおよびpしか使用していないが、当業者であれば、この方法を任意の数の部分空間と一緒に使用することができることを理解することができるだろう。一般的に、変換空間は、
Figure 2008546088
がM個の部分空間の結合になるように、M個の部分空間pに分割される。各部分空間は、完全なハフ変換のパラメータpのサブセットを含む。部分空間の分割は、予め決定することができ、静的なものであってもよいし、または部分空間の分割は、動的に決定することもできる。部分空間の分割が動的に決定された場合には、各プロセッサに関連するメモリを、1つの物理メモリから動的に割り当てることができる。一実施形態の場合には、部分空間は、使用できるプロセッサ間で指定の処理の分配を行うように割り当てられる。メモリ位置はハフ変換空間内の各点に対して使用される。ブロック310において、式s(x,p)=0を満足する第1のハフ変換部分空間内のpの値が決定される。これらの値は、
Figure 2008546088
で示される。ブロック312において、ハフ変換部分空間内の影響を受けた要素
Figure 2008546088
の値が下式により(第1のプロセッサにより)更新される。
Figure 2008546088
ブロック310’において、式s(x,p)=0を満足する第2のハフ変換部分空間内のpの値が決定される。これらの値は、
Figure 2008546088
で示される。ブロック312において、ハフ変換部分空間内の影響を受けた点
Figure 2008546088
が下式により(第2のプロセッサにより)更新される。
Figure 2008546088
それ故、第1および第2のプロセッサは、異なるメモリ位置を更新するのでメモリ共有機構は必要ない。
決定ブロック314のところで、画像のすべての画素が処理されたか否かを判定するためにチェックが行われる。処理が終了していない場合には、決定ブロック314からの負のブランチが示すように、流れはブロック308に戻り、次の画素値が検索される。画像のすべての画素が処理済みの場合には、決定ブロック314からの正のブランチが示すように、変換が終了し、流れはブロック316に進む。ブロック316において、画像の特徴を識別するために変換空間を探索することができる。この処理の結果は、ブロック318のところで出力され、処理はブロック320において終了する。
図4は、本発明のある実施形態によるハフ変換を計算するための他の方法のフローチャートである。図4の方法は、ブロック402においてハフ空間が静的に分割される点を除けば、図3の方法に類似している。すなわち、各プロセッサには、画像の処理が開始する前にハフ空間の部分空間が割り当てられる。部分空間の分割は静的に行われるので、メモリ割当ても静的なものであってもよく、そのため各プロセッサは、別の部分空間メモリ分割(または別のメモリ)に関連している。ブロック404において、部分空間メモリがゼロに初期化される。
図5は、本発明のある実施形態による並列プロセッサの図面である。図5を参照すると、並列プロセッサ500は、オプションとしてのプリプロセッサ504を備える。前処理は、例えば、処理する前景要素のような画像のエリアを選択するために、または画像内の縁部を検出するために使用することができる。前処理した(または元の)画像のデータ値(画素値)のアレイは、画像メモリ504に格納される。メモリ・インタフェース506は、画像メモリ504を複数のプロセッサ508、508’、508”等に結合している。メモリ・インタフェース506は、画像メモリ504から画素値のシーケンスを検索し、画素値をプロセッサに分配するように構成されている。各画素値は各プロセッサに送られる。各プロセッサは、完全なハフ変換空間の部分空間内の変換値を計算するために使用することができる。プロセッサ508、508’、508”は、ハフ変換空間の部分空間に対する変換値を格納するために使用する変換空間メモリ510と結合している。計算中の所与の時間に、各プロセッサは、メモリ510内の重ならないアドレス空間にアドレスする。
動作中、各画素値は、画像メモリ504から順番に検索され、メモリ・インタフェース506を介してプロセッサ508、508’、508”等に送られ、各プロセッサは、変換空間メモリ510内のその関連するメモリ位置のハフ変換値を更新する。すべての画素値が処理された場合には、完全なハフ変換空間に、オプションとしてのポストプロセッサ514により第2のメモリ・インタフェース512を通してアクセスすることができる。ポストプロセッサ514は、画像の特徴を識別するためにハフ変換空間を探索するために使用することができる。例えば、ハフ変換アレイ素子およびその位置の最大値を発見するために、変換空間を探索することができる。探索の結果および/またはハフ変換自身を出力516のところで提供することができる。
図6は、本発明のある実施形態によるもう1つの並列プロセッサの図面である。図6の並列プロセッサは、各プロセッサ508、508’、508”がそれ自身の部分空間メモリ510、510’または510”と結合している点を除けば、図5のプロセッサに類似している。これらのメモリは、同じ物理メモリの分割であってもよいし、または別々のメモリであってもよい。
一例として、基本曲線がその中心位置および半径値が分からない円であるハフ変換について考えてみる。円の式は下記の通りである。
Figure 2008546088
ここで、x=(x,y)は、画像空間の位置であり、p=(α,β,γ)は、3次元ハフ変換空間内の点である。図7は、パラメータ・ベクトルp=(α,β,γ)を含む曲線700を示す。画像空間(502)内の点x=(x,y)は、曲線の近くに位置していて、変換空間内の点p=(α,β,γ)に貢献する。同様に、点704、706、708および710は、円700の近くに位置していて、変換空間内の点p=(α,β,γ)に貢献する。画像空間(702)内の点x=(x,y)も、変換空間内の他の点に貢献する。何故なら、他の円は、点702を通して描くことができるからである。図8においては、これらの点を円802として描いている。同様に、点704、706、708および710は、図8に示すように、変換空間内の円804、806、808および810にそれぞれ貢献する。
この例の場合には、3次元ハフ変換空間を、半径rの同じ値を有する変換ベクトルが同じ部分空間内に位置するように分割することができる。それ故、rの各値に対して1つの部分空間が存在する。図8は、r=rに対する2次元部分空間を示す。この図は、画像空間(図7)内の点702、704、706、708および710が、それぞれ貢献する曲線802、804、806、808および810の例を示す。点p=(α,β,γ)は、この部分空間内に位置しているので、画像空間内の点x=(x,y)は、変換部分空間内の点(α,β)に貢献する。半径rの画像空間内の他の円は、点(x,y)を通る。これらの円は、異なる値のαおよびβを有しているが、同様に画像空間内の点(x,y)により影響を受ける。変換部分空間内の影響を受けたαおよびβの値は下式を満足する。
Figure 2008546088
図8の円802はこれを示す。αおよびβの量子化した値は、どのメモリ位置を更新すべきかを決定する。
とは異なる半径を有する画像空間内の円も、点(x,y)を通る。これらの円は、(この例の分割の)異なる変換部分空間内のαおよびβの値に貢献する。
もう1つの例を挙げると、画像内の楕円を下式によりパラメータで表示した曲線により検出することができる。
Figure 2008546088
この式は4つのパラメータ(x,y,a,b)を有し、4次元の変換空間になる。
ハフ変換空間は、任意の方法で分割することができる。しかし、ほとんどの場合、使用できるプロセッサ間で処理が等分に分配されるように、変換空間を分割すると有利である。例えば、ハフ変換基本要素が円である場合には、1つの画像点が、3次元ハフ変換空間内の円錐の表面上の変換点に貢献する。このハフ空間は、論理的に3次元空間であるが、通常、高次元データ構造の場合に行うように、予め定義した順序でパラメータ・インデックスをマッピングすることにより、物理的に1次元メモリに格納することができる。2つのプロセッサを使用することができる場合には、円錐の軸を通る面により円錐を動的に分割することができる。一方のプロセッサは、円錐の半分への貢献を計算することができ、他方のプロセッサは他の半分への貢献を計算することができる。一般的に、M個のプロセッサを使用できる場合には、円錐を円錐の軸から出る予め定義した面により動的に分割することができる。
一方、各プロセッサがその別々のメモリ・ユニットを有する場合には、静的分割も役に立つ。例えば、ハフ変換基本要素が円である場合には、1つの画像点が、3次元ハフ変換空間内の円錐の表面上の変換点に貢献する。2つのプロセッサを使用することができる場合には、円錐を円錐の半径軸を横切る面により静的に分割することができる。一方のプロセッサは、(rminからrcutまでの)円錐の一部への貢献を計算することができ、他方のプロセッサは、(rcutからrmaxまでの)円錐の他の部分への貢献を計算することができる。ここで、rcutは、円錐の部分の表面がほぼ等しくなるように選択される(オフライン)。この場合、rminおよびrmaxは、半径パラメータ値に対する対象となる範囲を定義する。一般的に、M個のプロセッサを使用することができる場合には、ハフ空間を円錐の半径軸を横切る(M−1)個の面により静的に分割することができる。
ハフ変換計算の例示としての用途は、光学的目線追跡である。光学的目線追跡の場合には、人の目は、まぶたの縁部を表す楕円の内側の虹彩の縁部を表す円の全体または一部としてモデル化される。図9を参照すると、目のモデル900は、(x,y)に中心を有する楕円902および(x,y)に中心を有する円904を含む。楕円は下式を満足する。
Figure 2008546088
一方、円は下式を満足する。
Figure 2008546088
目の開口を表すための楕円の選択が行われる。何故なら、そうすると両方の曲線を検出するための1つのハフ空間を使用することができるからである(何故なら、円はパラメータ(x,y,r,r)を含む楕円であるからである)。完全な特徴画像を生成することはできないので、システムは、ノイズの多い、不完全で、閉塞した縁部を処理するためにハフ方法の堅牢さに依存する。
ハフ方法は、リアルタイムで取り込んだ各映像フレームに対する円パラメータ(x,y,r)、および楕円パラメータ(x,y,a,b)を推定するためにこの光学的目線追跡システムで使用される。
図10は、本発明のある実施形態による目線追跡システムの動作を示すフローチャート1000である。このフローチャートは、多数の顔面動作ユニット(a,a,...,a)を生成するために、入力画像画素(x,x,...,x)のアレイの1つの映像フレームの処理を示す。図10を参照すると、開始ブロック802の後で、フレームはブロック1004で正規化される。正規化を使用するのは、サイズ、光、色、配向角、および異なるスタイルが変動するためにコンピュータ・ビジョン・アルゴリズムの堅牢さを必要とするからである。正規化動作の目的は、画像を改善するためではなく、画像間の変動を除去するためである。取り込んだ画像は、固定特徴テンプレート・サイズの使用または高速化のためにダウンスケールしなければならない場合がある。光および色の正規化は、ヒストグラム・マッピング演算子(ヒストグラム等化、正規化または任意の他の操作)により行うことができる。ポーズの正規化は、被写体の配向角を調整するために使用することができる。一実施形態の場合には、取り込んだフレームは、固定サイズのカラー画像にスケールダウンされ、次に、サイズを変えた画像上でヒストグラム等化が行われる。方向の正規化は、楕円を確実に水平方向に向けるために使用することができる。
画像は、ブロック1006において前処理される。この前処理により正規化した画像が改善され、以降の画像識別動作のための準備が行われる。前処理は、入力画像の2値画像(すなわち、2つのグレイ・レベルを有する画像)への変換を含むことができる。ノイズの影響および正規化によるアーティファクトを低減するために、線形および/または非線形画像フィルタリングを適用することができる。各取り込んだフレーム内の画像成分境界を明確にするために、平滑化を適用することができる。例えば、(例えば、3×3平方のカーネル(ウィンドウ)を使用して)メディアン・フィルタを、正規化したカラー画像に適用することができる。
画像はブロック1008においてセグメント化される。セグメント化プロセスは、曲線適合のための対象となる潜在的な目の領域を識別するために使用される。セグメント化は、画像をその構成成分に分割するプロセスである。例えば、後の処理段階で確認するセグメント化仮説を生成するために数学的形態素技術を使用することができる。また、オブジェクトの自然のグループ分けを検出する機能を与えるためにクラスタリング技術を使用することができる。さらに、信頼手段(confidence measure)を反復して改善するために、近傍のオブジェクト間で互換を行うことができるように緩和技術を使用することができる。以降の処理のために検出した構成要素にラベルを貼ることができる。
ブロック1010において、縁部のようなセグメント化した画像の低レベルの特徴が、その画像の領域、輪郭、または両方のテンプレートを使用して検出される。一実施形態の場合には、縁部検出は、特徴の境界/輪郭を強調するために行われる。縁部画像上でしきい値演算子を適用すると輪郭が太くなるので、1画素の太さの輪郭を生成するために細線化プロセスを使用することができる。通常、検出した輪郭は連続していないが、そうしたい場合には、リンクすることができる。一実施形態の場合には、フィルタリングした画像の縁部は、ゾーベル(Sobel)勾配大きさ演算子を使用して検出される。勾配特徴画像をしきい値と比較した後で、3つの帯域(赤、緑、青)が、画素様「論理積(AND)」演算子を使用することにより1つの帯域の2値特徴画像に結合される。次に、細線化プロセスが、1画素の太さの特徴画像を生成するために2値特徴画像に適用される。
画像解析および分類は、ブロック1012において行われる。対象となる1つまたは複数の高レベルの特徴を検出する目的で、最適または準最適な推定値を発見するために探索技術が使用される。高レベルの特徴は、通常、目、人物または車両のナンバー・プレートのような特定のオブジェクトである。これは、複数のオブジェクトに共通な特徴である場合がある縁部または隅のような低レベルの特徴と比べて対照的である。顔面動作ユニット表示を構成するために必要なパラメータを計算するために画像識別技術が使用される。目線追跡システムは、虹彩およびまぶたの位置を推定するために、2値特徴画像内の最善の円および楕円を探索する。探索は、楕円基本要素(ellipse primitive)の1つのハフ変換を使用して、上記円および楕円を検出するためにハフ変換方法により行われる。
後処理は、ブロック1014において行われる。後処理は、同じフレーム内の特徴間の空間関係の一致をチェックするため、また以降のフレーム間のチェック、また動作ユニット(a,a,...,a)の構成のチェックのために使用される。一実施形態の場合には、一組の発見的規則(heuristic rule)が、起こりそうにもない状況を監視するために適用される。目線追跡のために、対象となる曲線を適合させるために使用する縁部の点の数が、固定値より大きいか否かを判定するためにチェックされる。このプロセスは、また瞬きを検出するためにも使用することができる。推定した円および楕円パラメータは、目の運動の動作ユニットを計算するために必要な情報を提供する。アニメーション・パラメータは、顔面アニメーション・パラメータ(FAPS)または例えば、他の従来の顔面動作コード(FACS)として、MPEG−4標準により表すことができる。
ブロック1016において、動作ユニット(a,a,...,a)および他の結果が出力される。このプロセスは、ブロック1018において終了する。
大部分のコンピュータ・ビジョン用途の場合、ハフ変換の計算は、入力データの解像度および推定値の必要な精度により、全画像処理時間の半分以上を使用する。通常、並列処理ハードウェアが、ハフ変換計算のために使用される。しかし、当業者であれば、例えば、並列細線化アルゴリズム(parallel thinning algorithm)および形態素動作(morphological operation)のような他の画像処理アルゴリズムも、すでに説明したように並列計算から利益を受けることができることを理解することができるだろう。画像処理アルゴリズムは、一般的に、入力画像アレイを出力変換アレイ(出力メモリ空間)に変換する。本発明は、出力アレイ(出力メモリ空間)を多数の部分空間に動的または静的に分割し、並列処理要素を各部分空間に割り当てる一般的な技術を提供する。この方法を使用すれば、メモリの競合を避けることができ、使用できる計算およびメモリ・リソースを均等に分配することができる。
また、一方は、出力アレイの動的分割であり、他方は、静的分割である2つの例示としての実施形態により本発明を説明してきたが、動的および静的分割の両方を同時に使用することができる別のハイブリッド解決方法も使用することができることにも留意されたい。対象となるアプリケーションおよび利用可能なリソースの性質が、静的、動的、またはハイブリッドの分割スキーム(partitioning scheme)を示唆している。
通常の当業者であれば、本発明を例示としての実施形態により説明してきたことを理解することができるだろう。しかし、本発明はそのように限定すべきではない。何故なら、本発明は、特殊な目的のハードウェア、および/または上記および特許請求の範囲に記載する本発明と等価の専用プロセッサのようなハードウェア構成要素等価物を使用して実施することができるからである。同様に、汎用コンピュータ、マイクロプロセッサをベースとするコンピュータ、デジタル・シグナル・プロセッサ、マイクロコントローラ、専用プロセッサ、カスタム回路、フィールド・プログラマブル・ゲート・アレイ、ASICおよび/または専用ハードワイヤード・ロジックを、本発明の別の等価実施形態を構成するために使用することができる。
本発明を特定の実施形態により説明してきたが、当業者であれば上記説明を読めば、多くの代替案、修正、置換、および変形を容易に思い付くことができるだろう。それ故、本発明は、このようなすべての代替案、修正および変形を添付の特許請求の範囲内に含む。
ハフ変換を計算するための方法のフローチャート。 ハフ変換を計算するためのもう1つの方法のフローチャート。 本発明のある実施形態によるハフ変換を計算するための方法のフローチャート。 本発明のある実施形態によるハフ変換を計算するためのもう1つの方法のフローチャート。 本発明のある実施形態による並列処理システムの図面。 本発明のある実施形態によるもう1つの並列処理システムの図面。 画像空間内の例示としての曲線のグラフ。 ハフ変換部分空間内の対応する曲線のグラフ。 光学的目線追跡のためのハフ変換モデル。 本発明のある実施形態による目線追跡システムの方法のフローチャート。

Claims (27)

  1. ハフ変換の並列計算を行うためのシステムであって、
    並列動作を行うことができる複数のプロセッサと、
    画像メモリからデータ値を検索し、同データ値を前記複数のプロセッサにそれぞれ送るための第1のメモリ・インタフェースと、
    複数のハフ変換部分空間メモリであって、それぞれが前記複数のプロセッサのうちの1つのプロセッサと関連する複数のハフ変換部分空間メモリとを備え、
    前記複数のプロセッサのうちの1つのプロセッサが、前記第1のメモリ・インタフェースから前記データ値を受信し、前記複数のハフ変換部分空間メモリのうちの関連するメモリ内のハフ変換値を更新するために動作することができる、システム。
  2. 複数のデータ値を格納するために動作することができる画像メモリをさらに備える請求項1に記載のシステム。
  3. 画像の複数の画素値を前処理して、前記画像メモリ内で前記複数のデータ値を生成するために動作することができるプリプロセッサをさらに備える請求項2に記載のシステム。
  4. 前記複数のハフ変換部分空間メモリからハフ変換値を検索するために動作することができる第2のメモリ・インタフェースと、
    前記ハフ変換値を処理するために動作することができるポスト・プロセッサとをさらに備える請求項1に記載のシステム。
  5. 前記複数のハフ変換部分空間メモリが、1つの物理メモリの重ならない領域を備える請求項1に記載のシステム。
  6. 前記複数のハフ変換部分空間メモリが、前記1つの物理メモリから動的に割り当てられる請求項5に記載のシステム。
  7. 変換空間へのデータ値のアレイの変換の並列計算を行うための方法であって、
    変換空間メモリを初期化するステップと、
    データ値の前記アレイからデータ値を検索するステップと、
    前記変換空間メモリを複数の変換部分空間メモリに分割するステップと、
    複数のプロセッサに前記データ値を送るステップであって、各プロセッサが、前記複数の変換部分空間メモリの変換部分空間メモリに関連しているステップと、
    前記複数のプロセッサの各プロセッサが、前記データ値に従って前記関連する変換部分空間メモリ内に格納している前記変換の要素を更新するステップと、
    前記変換空間の要素に従って出力を提供するステップと、を含む方法。
  8. 前記変換の要素を更新するステップが、
    前記データ値により影響を受ける前記変換部分空間内の一組の要素を決定するステップと、
    前記一組の影響を受けた要素内の各要素に前記データ値を追加するステップと、を含む請求項7に記載の方法。
  9. 前記変換が、式s(x,p)=0によりパラメータ化された曲線を使用するハフ変換を含み、ここで、pは前記変換空間内のパラメータ・ベクトルであり、xは前記データ・アレイ内の位置ベクトルであり、sは関数であり、位置xのところの前記データ値を使用して、式s(x,p)=0を満足する変換パラメータpを更新する請求項7に記載の方法。
  10. 前記データ・アレイが、前景要素を検出するために、画像を前処理することにより決定される画素値を含む請求項9に記載の方法。
  11. 前記データ・アレイが、前記画像内のオブジェクトの縁部を検出するために、画像を前処理することにより決定される画素値を含む請求項9に記載の方法。
  12. 前記ハフ変換の前記要素を探索して、前記ハフ変換要素内の最大値を発見するステップをさらに含み、前記ハフ変換の前記要素に従って出力を提供するステップが、前記最大値および前記ハフ変換内のその位置を出力するステップを含む請求項9に記載の方法。
  13. 前記並列計算がハフ変換タイプであり、
    初期化の前に、前記ハフ変換の前記変換空間を複数の離散パラメータ値に量子化するステップであって、それぞれのパラメータ値が、K個の要素、およびK次元の離散変換空間を定義する前記複数の離散パラメータ値を有するステップをさらに含む請求項7に記載の方法。
  14. 前記変換メモリが、前記ハフ変換の計算が、指定の分配に従って前記複数のプロセッサのうちの前記プロセッサ間で分配されるように、複数のハフ変換部分空間メモリに分割される請求項13に記載の方法。
  15. 前記変換メモリが、前記ハフ変換の計算が、前記複数のプロセッサのうちの前記プロセッサ間でほぼ均等に分配されるように、複数のハフ変換部分空間メモリに分割される請求項13に記載の方法。
  16. 画素値の入力アレイとして表した画像の高レベルの特徴を識別するための方法であって、
    画素値の入力アレイを正規化するステップと、
    データ値のアレイを提供するために正規化した画素値の前記アレイを前処理するステップと、
    データ値の前記アレイを対象となる1つまたは複数の領域にセグメント化するステップと、
    データ値の前記アレイ内の低レベルの特徴を識別するステップと、
    ハフ変換の変換空間を複数の部分空間に分割するステップと、
    前記複数の部分空間内の対象となる前記1つまたは複数の領域の前記ハフ変換を並列に計算するステップと、
    前記ハフ変換空間を探索して、前記画像の前記高レベルの特徴を識別するステップと、
    パラメータを出力して、前記画像の前記高レベルの特徴を指定するステップと、を含む方法。
  17. データ値の前記アレイ内の低レベルの特徴を識別するステップが、前記画像内のオブジェクトの縁部を検出するステップを含む請求項16に記載の方法。
  18. 前記高レベルの特徴が、目の位置である請求項16に記載の方法。
  19. 画素値の前記アレイが、映像フレームを定義する請求項16に記載の方法であって、
    前記識別した高レベルの特徴を後処理して、隣接する映像フレーム間の一致をチェックするステップをさらに含む方法。
  20. ハフ変換を計算するためのシステムであって、
    並列処理を行うことができる複数の処理手段であって、それぞれがハフ変換の要素のサブセットを計算することができる複数の処理手段と、
    複数の部分空間格納手段であって、それぞれが前記複数の処理手段のうちの1つの処理手段と関連していて、前記ハフ変換の要素のサブセットを格納するために動作することができる複数の部分空間格納手段と、
    前記複数の処理手段のうちの各処理手段に画素位置値を分配するための手段と、
    前記ハフ変換の前記要素に従って結果を出力するための手段と、を含むシステム。
  21. 前記ハフ変換の前記要素を探索して最大の変換要素を検出するための後処理手段をさらに備える請求項20に記載のシステム。
  22. 前記複数の部分空間格納手段が、メモリの重ならない領域を備える請求項20に記載のシステム。
  23. メモリの前記重ならない領域が、動的に割り当てられる請求項22に記載のシステム。
  24. 目の運動を追跡するためのハフ変換方法であって、
    第1のデータ値のアレイを備える映像フレームを受信するステップと、
    第1のデータ値の前記アレイを前処理して複数の第2のデータ値を提供するステップと、
    楕円基本曲線のための前記複数の第2のデータ値のハフ変換を計算するステップと、
    前記ハフ変換を使用して楕円を検出することにより目の位置を識別するステップと、
    楕円基本曲線の前記ハフ変換を使用して円を検出することにより虹彩位置を識別するステップと、を含み、
    前記複数の第2のデータ値のハフ変換を計算するステップが、
    ハフ変換メモリを初期化するステップと、
    前記複数の第2のデータ値からあるデータ値を検索するステップと、
    前記データ値を複数のプロセッサに送るステップと、
    前記複数のプロセッサの各プロセッサを前記ハフ変換メモリのハフ変換部分空間メモリと関連付けるステップと、
    前記複数のプロセッサの各プロセッサが、前記データ値に従って前記関連するハフ変換部分空間メモリ内に格納している前記ハフ変換の要素を更新するステップと、を含む方法。
  25. 前記複数のプロセッサの各プロセッサを前記ハフ変換メモリのハフ変換部分空間メモリと関連付けるステップが、各プロセッサにハフ変換部分空間メモリを動的に割り当て、前記複数のプロセッサ間の計算の実質的に均等な分配を維持するステップを含む請求項24に記載の方法。
  26. 第1のデータ値の前記アレイを前処理して複数の第2のデータ値を提供するステップが、
    第1のデータ値の前記アレイを正規化して、正規化したデータ値のアレイを提供するステップと、
    正規化したデータ値の前記アレイをフィルタリングして、フィルタリングしたデータ値のアレイを提供するステップと、
    フィルタリングしたデータ値の前記アレイをセグメント化して、対象となる1つまたは複数の領域を入手するステップと、
    対象となる前記1つまたは複数の領域内の低レベルの特徴を抽出するステップとを含む請求項24に記載の方法。
  27. 目の位置を識別し、虹彩位置を識別するステップが、隣接する映像フレームとの一致をチェックするためのステップをさらに含む請求項24に記載の方法。
JP2008514644A 2005-06-02 2006-04-26 ハフ変換計算の並列処理のための方法およびシステム Expired - Fee Related JP4727723B6 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/143,169 2005-06-02
US11/143,169 US7406212B2 (en) 2005-06-02 2005-06-02 Method and system for parallel processing of Hough transform computations
PCT/US2006/015749 WO2006132720A2 (en) 2005-06-02 2006-04-26 Method and system for parallel processing of hough transform computations

Publications (3)

Publication Number Publication Date
JP2008546088A true JP2008546088A (ja) 2008-12-18
JP4727723B2 JP4727723B2 (ja) 2011-07-20
JP4727723B6 JP4727723B6 (ja) 2011-09-28

Family

ID=

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011507085A (ja) * 2007-12-14 2011-03-03 コミシリア ア レネルジ アトミック エ オ エナジーズ オルタネティヴズ 制御タイプの実行モードとデータフロータイプの実行モードとの組み合わせによりタスクを並列に実行可能な複数の処理ユニットを有するシステム
JP2017509967A (ja) * 2014-02-04 2017-04-06 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン ハフプロセッサ
JP2021524106A (ja) * 2018-05-15 2021-09-09 ウープティックス ソシエダ リミターダ バーコード検出方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0488489A (ja) * 1990-08-01 1992-03-23 Internatl Business Mach Corp <Ibm> 一般化ハフ変換を用いた文字認識装置および方法
JPH052648A (ja) * 1991-06-25 1993-01-08 Kobe Steel Ltd 画像データ処理装置
US5832138A (en) * 1994-03-07 1998-11-03 Nippon Telegraph And Telephone Corporation Image processing method and apparatus for extracting lines from an image by using the Hough transform
US20020126901A1 (en) * 2001-01-31 2002-09-12 Gretag Imaging Trading Ag Automatic image pattern detection
JP2004062393A (ja) * 2002-07-26 2004-02-26 Japan Science & Technology Corp 注目判定方法及び注目判定装置
JP2005108206A (ja) * 2003-09-09 2005-04-21 Fuji Photo Film Co Ltd 円中心位置検出方法および装置並びにプログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0488489A (ja) * 1990-08-01 1992-03-23 Internatl Business Mach Corp <Ibm> 一般化ハフ変換を用いた文字認識装置および方法
US5220621A (en) * 1990-08-01 1993-06-15 International Business Machines Corporation Character recognition system using the generalized hough transformation and method
JPH052648A (ja) * 1991-06-25 1993-01-08 Kobe Steel Ltd 画像データ処理装置
US5832138A (en) * 1994-03-07 1998-11-03 Nippon Telegraph And Telephone Corporation Image processing method and apparatus for extracting lines from an image by using the Hough transform
JP3163215B2 (ja) * 1994-03-07 2001-05-08 日本電信電話株式会社 直線抽出ハフ変換画像処理装置
US20020126901A1 (en) * 2001-01-31 2002-09-12 Gretag Imaging Trading Ag Automatic image pattern detection
JP2002259994A (ja) * 2001-01-31 2002-09-13 Gretag Imaging Trading Ag 自動イメージパターン検出方法及びイメージ処理装置
JP2004062393A (ja) * 2002-07-26 2004-02-26 Japan Science & Technology Corp 注目判定方法及び注目判定装置
JP2005108206A (ja) * 2003-09-09 2005-04-21 Fuji Photo Film Co Ltd 円中心位置検出方法および装置並びにプログラム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011507085A (ja) * 2007-12-14 2011-03-03 コミシリア ア レネルジ アトミック エ オ エナジーズ オルタネティヴズ 制御タイプの実行モードとデータフロータイプの実行モードとの組み合わせによりタスクを並列に実行可能な複数の処理ユニットを有するシステム
JP2017509967A (ja) * 2014-02-04 2017-04-06 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン ハフプロセッサ
US10074031B2 (en) 2014-02-04 2018-09-11 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. 2D image analyzer
US10192135B2 (en) 2014-02-04 2019-01-29 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. 3D image analyzer for determining the gaze direction
US10592768B2 (en) 2014-02-04 2020-03-17 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Hough processor
JP2021524106A (ja) * 2018-05-15 2021-09-09 ウープティックス ソシエダ リミターダ バーコード検出方法
US11379680B2 (en) 2018-05-15 2022-07-05 Wooptix S.L. Barcode detection method
JP7200265B2 (ja) 2018-05-15 2023-01-06 ウープティックス ソシエダ リミターダ バーコード検出方法

Also Published As

Publication number Publication date
US20060274973A1 (en) 2006-12-07
US7406212B2 (en) 2008-07-29
JP4727723B2 (ja) 2011-07-20
WO2006132720A2 (en) 2006-12-14
WO2006132720A3 (en) 2008-01-10

Similar Documents

Publication Publication Date Title
US7406212B2 (en) Method and system for parallel processing of Hough transform computations
US20220092351A1 (en) Image classification method, neural network training method, and apparatus
Mahmood et al. Facial expression recognition in image sequences using 1D transform and gabor wavelet transform
US10462445B2 (en) Systems and methods for estimating and refining depth maps
US20190333237A1 (en) Systems and methods for providing depth map information
Milanese et al. Attentive mechanisms for dynamic and static scene analysis
US6829384B2 (en) Object finder for photographic images
JP4739355B2 (ja) 統計的テンプレートマッチングによる高速な物体検出方法
US20210264144A1 (en) Human pose analysis system and method
CN109684969B (zh) 凝视位置估计方法、计算机设备及存储介质
Kumar et al. Live detection of face using machine learning with multi-feature method
JP2018022360A (ja) 画像解析装置、画像解析方法およびプログラム
US20220148291A1 (en) Image classification method and apparatus, and image classification model training method and apparatus
WO2021217924A1 (zh) 交通卡口车辆类型的识别方法、装置、设备及存储介质
Zhang et al. Fast moving pedestrian detection based on motion segmentation and new motion features
Kim et al. Robust facial landmark extraction scheme using multiple convolutional neural networks
CN114445904A (zh) 基于全卷积神经网络的虹膜分割方法和装置、介质和设备
Tsai et al. Robust in-plane and out-of-plane face detection algorithm using frontal face detector and symmetry extension
Kim et al. Facial landmark extraction scheme based on semantic segmentation
US11475684B1 (en) Methods and systems for performing noise-resistant computer vision techniques
US20230196718A1 (en) Image augmentation device and method
Dawwd GLCM based parallel texture segmentation using a multicore processor
JP4727723B6 (ja) ハフ変換計算の並列処理のための方法およびシステム
Dadgostar et al. Gesture-based human–machine interfaces: a novel approach for robust hand and face tracking
EP4222639A1 (en) System and method for visual localization

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100914

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101214

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101221

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110114

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110121

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110214

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110311

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110405

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110413

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees