JP2006294003A - 画像処理方法およびその方法を用いた3次元計測方法ならびに画像処理装置 - Google Patents

画像処理方法およびその方法を用いた3次元計測方法ならびに画像処理装置 Download PDF

Info

Publication number
JP2006294003A
JP2006294003A JP2006068212A JP2006068212A JP2006294003A JP 2006294003 A JP2006294003 A JP 2006294003A JP 2006068212 A JP2006068212 A JP 2006068212A JP 2006068212 A JP2006068212 A JP 2006068212A JP 2006294003 A JP2006294003 A JP 2006294003A
Authority
JP
Japan
Prior art keywords
image
edge
pixel
extracted
model
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
JP2006068212A
Other languages
English (en)
Other versions
JP4687518B2 (ja
Inventor
Shiro Fujieda
紫朗 藤枝
Yasuyuki Ikeda
泰之 池田
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2006068212A priority Critical patent/JP4687518B2/ja
Publication of JP2006294003A publication Critical patent/JP2006294003A/ja
Application granted granted Critical
Publication of JP4687518B2 publication Critical patent/JP4687518B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • G06V10/23Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on positionally close patterns or neighbourhood relationships
    • 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/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Measurement Of Optical Distance (AREA)

Abstract

【課題】対象物の位置をサブピクセル単位で抽出できるようにする。
【解決手段】対象物の良品モデルを撮像して得たモデル画像から、その画像上のエッジ画素、その濃度勾配方向、およびサブピクセル単位のエッジ位置が抽出されて、ハードディスク14に登録される。処理対象画像が入力されると、CPU11は、モデル画像に対応する画像領域の位置をピクセル単位で求めた後、その画像領域において、モデル画像側の対応画素にサブピクセル単位のエッジ位置が対応づけられているエッジ画素を抽出する。そして、これらのエッジ画素につき、サブピクセル単位のエッジ位置を抽出し、その抽出位置とモデル画像側のエッジ位置とのずれ量を算出する。さらに各エッジ画素毎に求めたずれ量の平均値により前記ピクセル単位の位置を修正し、対象物の真の位置とする。
【選択図】図1

Description

この発明は、所定の対象物の計測や検査などを目的として、前記対象物を含む濃淡画像データを処理し、画像上における前記対象物の位置を抽出する方法、およびその方法を用いて対象物に対する3次元計測処理を行う方法、ならびに画像処理装置に関する。
濃淡画像から対象物を抽出する一般的な方法では、あらかじめこの対象物のモデルを撮像して得られた画像(この明細書では「モデル画像」という。)を登録しておき、処理対象画像からこのモデル画像に対応する画像領域を抽出する処理を行っている。
モデル画像に対応する画像領域を抽出するための代表的な方法として、各構成画素の濃度データを用いた正規化相関演算を行う方法が知られている。また、処理対象画像、モデル画像のそれぞれについて、画像中のエッジ画素(エッジを構成する一画素を意味する。)における濃度の変化の方向(濃度勾配方向)を求め、その変化の方向の分布パターンを比較する方法(特許文献1参照)も提案されている。
特開2002−230549号 公報
従来の正規化相関演算による方法では、シェーディングが発生したり、背景が複雑であったり、コントラストが低い画像を処理する場合に、抽出精度が確保できないという問題がある。また、対象物に欠けやバリなどの形状の不具合があると、モデル画像に対応する画像領域を抽出できなくなるおそれがある。
また、この方法は、処理対象画像に対し、モデル画像を1画素ずつ走査しながら相関演算を実行するものであるため、対象物の位置をピクセル単位でしか求めることができない。サブピクセル単位での位置を求めるために、各走査位置で得られる類似度の変化を放物線に近似すると仮定し、その放物線の頂点を算出する方法も提案されているが、この種の類似度の変化が放物線に近似するとは必ずしも言えないため、信頼度の高い計測を行えないという問題がある。
一方、濃度勾配方向のパターンを比較する方法では、シェーディング等のノイズによる影響を受けにくく、また欠けやバリなどの不良を含む対象物でも抽出できるというメリットがある。しかしながら、この方法でも、処理対象画像とモデル画像との比較はピクセル単位で行われるため、対象物のエッジの位置がサブピクセルレベルで変化しても、そのエッジにかかる画素における濃度勾配方向は変化せず、前記位置の変化を抽出するのは困難である。
この発明は、上記の問題点に着目してなされたもので、対象物の位置をサブピクセル単位で抽出することにより、高精度の位置決めや計測処理を行えるようにすることを目的とする。
この発明に係る画像処理方法は、あらかじめ特定されたモデルを撮像して得られたモデル画像に対し、その画像中のエッジからエッジ画素を抽出するステップAと、抽出された各エッジ画素につき、それぞれそのエッジ画素を基準に濃度勾配方向を検索して、サブピクセル単位でのエッジ位置を抽出するステップBと、前記ステップBでエッジ位置が抽出されたエッジ画素について、その抽出位置および抽出に用いた濃度勾配方向を当該エッジ画素に対応づけて登録するステップCとを、処理対象画像に対する処理に先立って実行するようにしている。
上記において、モデル画像は、計測すべき対象物のモデルを撮像し、得られた画像から前記モデルを含む所定大きさの画像を切り出したものであるのが望ましい。ステップAでは、たとえば、前記モデル画像にエッジ抽出フィルタを走査するなどして、濃度勾配の大きさが所定値以上の画素をエッジ画素として抽出する。なお、エッジ抽出処理をハードウェアにより行う場合には、前記モデル画像を含む全体画像に対してエッジ抽出処理を行うようにしてもよい。
ステップBでは、たとえば、前記エッジ画素を始点にその濃度勾配方向を検索して、その方向における濃度の変化量が所定のしきい値を超えた位置をエッジ位置として抽出する。または、前記濃度の変化量を微分して、濃度変化の起点もしくは終点、またはこれらの中間点を求め、これをエッジ位置としてもよい。
なお、検索方向に複数のエッジ画素があり、これらのエッジ画素の濃度勾配方向が共通する場合(すなわち各濃度勾配方向間の角度差が所定値以内である場合)には、これら複数のエッジ画素につき1つのエッジ位置を求めてもよい。この場合、ステップCでは、前記複数のエッジ画素のそれぞれに同じエッジ位置および濃度勾配方向を対応づけてもよい。
前記ステップCでは、たとえば、ステップAの抽出結果に基づき、モデル画像上のエッジ画素の座標を登録するとともに、前記サブピクセル単位でのエッジ位置や濃度勾配方向を、対応するエッジ画素の座標を付したデータとして登録する。なお、濃度勾配方向は、その方向を表すベクトルの所定の基準ベクトルに対する角度として表すことができる。
この発明にかかる画像処理方法では、上記のモデル画像に関する登録処理が終了すると、処理対象画像に対して、つぎの第1、第2、第3の各ステップを実行する。
第1ステップでは、前記モデル画像と同サイズの検索領域を処理対象画像にピクセル単位で走査して、走査位置毎に前記検索領域の画像とモデル画像との類似度を算出し、その算出結果を用いて前記モデル画像への対応領域を抽出する。
類似度の算出は、たとえば濃淡画像データを対象とする正規化相関演算や、前記した特許文献1の方法を用いて行われる。すなわち、この第1ステップは、従来のピクセル単位でのマッチング処理に相当するものであって、たとえば、抽出された対応領域内の任意の代表点の位置のピクセル単位の座標を、対象物の位置として求めることができる。
前記モデル画像への対応領域としては、前記検索領域が合わせられた処理対象画像上の領域のうち、前記類似度が最も高くなったときの領域を抽出するのが望ましい。ただし、これに限らず、たとえば類似度が所定のしきい値より大きくなったときの検索領域の設定位置を抽出してもよい(この場合、複数の位置が抽出されることがある。)。また、類似度が高いものから順に所定数の位置を抽出してもよい。
第2ステップでは、前記第1ステップで抽出された対応領域にいて、前記サブピクセル単位でのエッジ位置が登録されているモデル画像中のエッジ画素に対応するエッジ画素を、前記ステップCで登録された濃度勾配方向および前記対応領域内の濃度勾配方向を用いて抽出し、抽出された各エッジ画素に対し、それぞれ前記モデル画像に対して実行したステップBと、そのステップBにより得たサブピクセル単位のエッジ位置と前記ステップCで登録されたエッジ位置とのずれ量を算出する処理とを実行する。
たとえば、検索領域に含まれるエッジ画素のうち、モデル画像における対応画素もエッジ画素であり、かつそのエッジ画素に前記ピクセル単位でのエッジ位置が対応づけられており、そのエッジ画素に対する濃度勾配方向の差が所定の角度範囲にある画素を対象にして、それぞれモデル画像に対して行ったのと同じ手法でサブピクセル単位のエッジ位置を抽出する。この場合にも、検索方向に複数のエッジ画素がある場合には、これら数画素の中から1つのエッジ位置を求め、算出されたエッジ位置を前記複数のエッジ画素のそれぞれに対応づけることができる。
また、エッジ位置のずれ量の算出処理では、たとえばエッジ位置を抽出したエッジ画素毎に、それぞれそのエッジ位置とモデル画像側のエッジ位置との座標の差を算出し、その差の平均値を求める。
第3ステップでは、前記第2ステップで算出されたずれ量により前記対応領域の位置を修正し、修正後の対応領域の位置を前記対象物の位置として特定する。なお、対応領域の位置は、たとえば領域内の代表点の座標により表される。
これにより第1ステップで求めた対象物の大まかな位置をサブピクセル単位で修正することが可能になり、対象物の位置を精度良く求めることができる。
上記画像処理方法の好ましい態様では、前記第1ステップにおいて、前記検索領域の走査位置毎に、前記モデル画像の各エッジ画素における濃度勾配方向の分布パターンと前記検索領域内の各エッジ画素における濃度勾配方向の分布パターンとの類似度を算出する。
「各エッジ画素における濃度勾配方向の分布パターン」は、たとえば、各エッジ画素における濃度勾配方向を示す角度データをそれぞれ当該エッジ画素の座標に対応づけた疑似画像として構成される。また、処理対象画像についても、同様の疑似画像を作成し、その画像に前記モデル画像側の疑似画像を走査しつつ、各走査位置におけるパターンの類似度を算出し、類似度が最大になるときに前記モデル画像側の疑似画像に重なる画像領域を抽出してもよい。
すなわち上記の態様では、前記特許文献1に記載された方法により第1ステップを実行することになる。このようにすれば、シェーディングなどのノイズが生じていたり、対象物側に欠けやバリなどの不良が生じていても、ピクセル単位での対応領域の抽出を精度良く行うことができる。すなわち、サブピクセル単位での位置ずれはあっても、ピクセル単位で見れば、対象物の位置を正確に特定することができる。よって、以下の第2、第3のステップを実行することにより、対象物の位置をより正確に求めることが可能になる。
この発明に係る画像処理方法は、対象物の位置を高精度で計測する用途や対象物の位置決め処理などに適用することができる。
つぎに、この発明にかかる3次元計測方法は、視野が互いに重なるように配置された複数の撮像手段により生成された複数の画像からそれぞれ計測対象点を抽出し、各画像上の計測対象点の座標を用いてこれら計測対象点に対応する3次元座標を算出するもので、前記エッジを表す特徴点の抽出処理では、前記複数の画像のそれぞれについて、あらかじめ用意されたモデル画像を用いてステップa,b,cを実行する。
前記モデル画像には、サブピクセル単位でのエッジ位置と濃度勾配方向とが対応づけられた複数のエッジ画素と、少なくとも1つの代表点(ただし、前記のエッジ画素と重複する点であってもよい。)とが含まれる。このモデル画像に対応づけられるエッジ位置および濃度勾配方向は、たとえば前記ステップA,Bの処理によりあらかじめ求められる。
なお、各撮像手段に対応する画像毎に前記モデル画像を用意しても良いが、各画像に共通のモデル画像を1つ用意してもよい。または、特定の撮像手段に対応する画像に対してのみモデル画像を用意し、その画像に対するステップaで抽出した対応領域の画像を、その他の撮像手段に対するモデル画像としてもよい。
ステップaでは、前記モデル画像と同サイズの検索領域をピクセル単位で走査して、走査位置毎に前記検索領域の画像とモデル画像との類似度を算出し、その算出結果を用いて前記モデル画像への対応領域を抽出する。すなわち、このステップaでは、前記画像処理方法の第1ステップと同様の処理が実行される。
ステップbでは、ステップaで抽出された対応領域において、前記モデル画像中のサブピクセル単位のエッジ位置が対応づけられたエッジ画素に対応するエッジ画素を、前記モデル画像側のエッジ画素に対応づけられた濃度勾配方向および前記対応領域内の濃度勾配方向を用いて抽出する。また抽出された各エッジ画素に対し、そのエッジ画素を基準に濃度勾配方向を検索して、サブピクセル単位でのエッジ位置を抽出する処理と、当該エッジ位置と前記モデル画像に対応づけられたサブピクセル単位のエッジ位置とのずれ量を算出する処理とを実行する。すなわち、このステップでは、前記画像処理方法の第2ステップと同様の処理が実行される。
ステップcでは、前記ステップaで抽出された対応領域につきモデル画像との間の画素の対応関係に基づき前記代表点に対応する点を計測対象点として抽出し、抽出した計測対象点の座標を前記ステップbで算出されたずれ量により修正する。
上記の処理によれば、各撮像手段により生成された画像毎に、前記画像処理方法と同様の処理を行うことにより、計測対象点の座標をサブピクセル単位で求めることができる。よって計測対象点の3次元座標についても、精度の高い座標算出処理を行うことができるので、実際の空間における対象物の位置を精度良く求めることができる。
つぎに、この発明に係る画像処理装置は、濃淡画像を入力するための画像入力手段;前記画像入力手段から入力した濃淡画像について、その画像中のエッジからエッジ画素を抽出するとともに、そのエッジ画素における濃度勾配方向を抽出するエッジ抽出手段;前記エッジ抽出手段の抽出結果に基づき、前記濃淡画像上のエッジ画素について、その画素を基準に濃度勾配方向を検索して、サブピクセル単位でのエッジ位置を抽出するエッジ位置抽出手段;対象物のモデルを含むモデル画像およびそのモデル画像から抽出されたデータを保存するためのメモリ;前記画像入力手段から前記モデル画像を含む画像が入力されたとき、この入力画像に対する前記エッジ抽出手段およびエッジ位置抽出手段の処理結果をエッジ抽出手段により抽出された各エッジ画素に対応づけたデータを作成して、前記メモリに登録する登録手段;前記画像入力手段から前記モデルに対応する対象物を含む処理対象画像が入力されたとき、この処理対象画像に前記モデル画像と同サイズの検索領域をピクセル単位で走査して、走査位置毎に前記検索領域内の画像とモデル画像との類似度を算出し、その算出結果に基づき前記モデル画像への対応領域を抽出する対応領域抽出手段;前記対応領域抽出手段により抽出された対応領域において、前記エッジ抽出手段の処理結果に基づき、前記メモリにエッジ位置が登録されているモデル画像中のエッジ画素に対応するエッジ画素を抽出する対応エッジ画素抽出手段;前記対応エッジ画素抽出手段により抽出されたエッジ画素およびその近傍の画像を前記エッジ位置抽出手段に処理させて、この処理により抽出されたサブピクセル単位のエッジ位置と前記メモリに登録されたエッジ位置とのずれ量を算出するずれ量算出手段;前記ずれ量算出手段により算出されたずれ量により前記対応領域の設定位置を修正し、修正後の対応領域の位置を前記対象物の位置として特定する位置特定手段;の各手段を具備する。
さらにこの画像処理装置には、画像格納用のメモリ(以下、「画像メモリ」という。)を設けるのが望ましい。
上記において、画像入力手段には、たとえばカメラなどの外部装置から画像信号を受け付けるインターフェース回路やA/D変換回路などが含まれる。
画像入力手段およびメモリを除く各手段は、たとえばそれぞれその手段の処理を実行するためのソフトウェアが組み込まれたコンピュータにより構成される。ただし、いずれの手段も、コンピュータに限らず、トランジスタなどを含む論理回路として構成してもよい。特に、エッジ抽出手段を論理回路にして、画像入力手段から入力された画像をダイレクト入力して処理するようにすれば、その他の手段による処理を迅速に進めることができ、処理時間の短縮化をはかることができる。
画像入力手段からモデル画像を含む画像が入力されると、エッジ抽出手段、エッジ位置抽出手段、および登録手段により前記画像処理方法のステップA,B,Cにあたる処理が実行される。また、画像入力手段から処理対象画像が入力されると、類似度算出手段により第1ステップが、エッジ抽出手段、エッジ位置抽出手段、対応エッジ画素抽出手段、およびずれ量算出手段により第2ステップが、位置特定手段により第3ステップが、それぞれ実行される。なお、エッジ抽出手段を論理回路として構成する場合には、画像入力と同時にこの回路を動作させ、各画素の濃度勾配の大きさや濃度勾配方向を座標に対応づけた疑似画像を作成して、前記画像メモリなどに格納しておいてもよい。この場合、その他の手段は、メモリ内の疑似画像にアクセスして、エッジ画素の位置や濃度勾配方向を取得することができる。
上記の画像処理装置には、さらに、位置特定手段により特定された対象物の位置を出力する手段や、特定された位置を基準に計測領域を設定し、その領域内で所定の計測処理を実行する手段などを設けることができる。
この発明によれば、対象物の位置をピクセル単位で抽出した後に、その位置を基準にしたモデル画像との位置関係に基づき、サブピクセル単位でのエッジ位置のずれ量を求め、そのずれ量により最初に求めた対象物の位置を修正するので、対象物の位置を精度良く抽出することが可能になる。
図1は、この発明の一実施例にかかる画像処理装置の構成を示す。
この画像処理装置1は、所定形状の対象物を撮像して得られた濃淡画像を処理対象として、その画像上の対象物の位置を計測する処理を行うもので、画像入力部2、エッジ抽出部3、画像メモリ4、入出力インターフェース5、画像出力部6、モニタ7、制御部10などを含んでいる。
画像入力部2は、カメラ用のインターフェースやA/D変換回路を含むもので、図示しないアナログカメラからの濃淡画像信号を入力してディジタル変換する。変換後のディジタル画像は画像メモリ4に格納されるとともに、エッジ抽出部3に与えられる。
この実施例のエッジ抽出部3には、前記ディジタル画像を微分処理して濃度勾配の大きさを画素毎に算出する回路と、前記濃度勾配の方向を示す角度データを画素毎に算出する回路とが含められる。すなわち、入力画像を構成するすべての画素について、濃度勾配の大きさと濃度勾配方向とが求められることになる。これらの算出結果は、それぞれ画素の座標に対応づけられた疑似画像に編集され、画像メモリ4に格納される。
なお、以下では、特許文献1の記載に倣って、濃度勾配の大きさを「エッジ強度」、濃度勾配方向を示す角度データを「エッジコード」と呼び、これらによる疑似画像を「エッジ強度画像」「エッジコード画像」と呼ぶ。
入出力インターフェース5は、図示しない入力部(キーボード,マウスなど)や外部機器に接続される。なお、入力部は、計測に先立ち、各種の設定条件(後記するモデル画像の切り出しのための領域の指定を含む。)を入力するために用いられる。
前記画像出力部6には、D/A変換回路やモニタ7へのインターフェース回路などが含められる。この画像出力部6は、制御部10からの指令に応じて画像メモリ4から所定の種類の画像データを読み出し、これをモニタ7に表示させることができる。加えて、制御部10から計測結果などのデータの供給を受けて、これを前記モニタ7に表示させることもできる。
前記制御部10は、CPU11,ROM12,RAM13、およびハードディスク14により構成される。ハードディスク14には、計測処理のためのプログラムや設定データが格納されており、CPU11はこれらを用いて一連の計測処理を実行する。さらに前記ハードディスク14には、対象物の抽出に使用するモデルデータを登録するための領域が設定される(以下、この領域を「登録エリア」という。)。
以下、上記画像処理装置1における計測処理について、詳細に説明する。
図2は、前記モデル画像の登録に使用される濃淡画像(以下、「登録対象画像」という。)、および計測対象の濃淡画像(以下、「処理対象画像」という。)の例を示す。
登録対象画像は、計測対象物の良品モデルを撮像して得られたものである。前記CPU11は、この登録対象画像をモニタ7に表示させ、ユーザーによる領域指定操作を受け付ける。そして指定操作が行われると、その指定された領域21内の画像をモデル画像Mとして抽出する。このモデル画像Mは、前記領域21の左上頂点Aの座標(mx1,my1)および右上頂点Bの座標(mx2,my2)とともに、前記ハードディスク14の登録エリアに登録される。
計測処理では、図2(2)に示すように、処理対象画像から前記モデル画像Mに対応する画像領域22を抽出する(以下、この領域22を「対応領域22」という。)。そして、この対応領域22の左上頂点Sの座標(Sx,Sy)、すなわち対応領域21の点Aに対応する位置を、対象物の仮の位置とする。さらにこの実施例では、前記対応領域22におけるエッジとモデル画像中におけるエッジとのサブピクセル単位の位置ずれ量を抽出し、前記仮の位置Sから前記位置ずれ量分だけ離れた点を、対象物の真の位置として設定するようにしている。(以下では、この真の位置の座標を(Ox,Oy)とする。)。
上記の対象物の仮の位置Sを求める処理および前記エッジ間の位置ずれ量を求める処理には、いずれも、画像上のエッジ画素やその濃度勾配方向に基づくデータが使用される。以下、一連の処理で使用されるデータについて、順に説明する。
まず、基本となるデータは、前記したエッジコード画像およびエッジ強度画像である。これらの画像は、前記したように、エッジ抽出部3により生成される。
エッジ抽出部3は、画像入力部2から入力された画像に所定大きさのマスクを走査しつつ、各走査位置において、前記マスク内の画像にソーベルオペレータなどのエッジ抽出用フィルタを作用させて、画素毎に、x軸(水平方向に沿う軸)およびy軸(垂直方向に沿う軸)の濃度勾配Ex(x,y),Ey(x、y)を抽出する。さらに、エッジ抽出部3は、これらの濃度勾配Ex(x,y),Ey(x,y)を用いて、前記したエッジ強度およびエッジコードを算出する。
なお、エッジ強度およびエッジコードの算出については、前出の特許文献1に記載の方法を適用することができる。よって、ここでは詳細な説明は省略するが、エッジ強度は、前記濃度勾配Ex(x、y),Ey(x,y)の合成ベクトルの長さを表すものである。また、エッジコードは、前記合成ベクトルの向きであって、所定の基準方向(たとえばx軸の正方向)から見た角度により表される(特許文献1では、濃度勾配方向に直交する方向をエッジコードとした点において本実施例と異なるが、いずれの方向をエッジコードとしても、概念は同様であると考えることができる。)。
画素毎に算出されたエッジ強度およびエッジコードは、それぞれその画素の座標に対応づけられて、Ei(x,y)、Ec(x,y)のように表される。よって、これらのデータEi(x,y)、Ec(x,y)を構成画素とする画像が、それぞれエッジ強度画像、エッジコード画像として設定されることになる。
処理対象画像から生成されたエッジ強度画像およびエッジコード画像は、前記処理対象画像とともに画像メモリ4に格納される。
一方、前記登録対象画像から生成されたエッジ強度画像およびエッジコード画像からは、それぞれ前記モデル画像に対応する領域内のデータが抽出され、前記登録エリアに格納される。以下、登録されたエッジ強度画像を、エッジ強度モデル画像として、各画素をMEi(x,y)と表し、登録されたエッジコード画像を、エッジコードモデル画像として、各画素をMEc(x,y)と表すことにする。
さらに、この実施例では、濃淡画像に現れるエッジの位置を、サブピクセル単位で抽出する(以下、このエッジの位置を「濃淡エッジ位置」という。)。モデル画像について抽出された濃淡エッジ位置は、前記登録エリアに登録される。
図3(A)は、前記対象物の画像を含む濃淡画像、この濃淡画像から変換されたエッジ画像、このエッジ画像上のエッジを前記濃淡エッジ位置を用いて細線化した濃淡エッジ画像を、順に示している。なお、3種類の画像のうち、エッジ画像や濃淡エッジ画像は、エッジ画素や濃淡エッジ位置を説明するために設定したもので、この実施例においては生成されるものではない。
エッジ画像は、前記したエッジ強度画像を変換して生成することができる。具体的には、エッジ強度が所定のしきい値Ei以上となる画素をエッジ画素として黒画素にし、エッジ強度が前記しきい値Eiを下回る画素を白画素にする。なお、図中のエッジモデル画像においては、エッジにおける濃度勾配方向が矢印により示されている。
図3の(B)は、エッジ画像中の任意のエッジ画素K(座標は(x,y)とする。)の濃淡エッジ位置を求める方法を示す。この例では、前記エッジ画素Kを始点に、その濃度勾配方向を検索し、エッジ画素Kから見た濃淡値の変化量が変化量全体の50%に達した点Lを抽出し、この点Lの座標(x,y)を前記濃淡エッジ位置としている。なお、この濃淡エッジ位置を決める基準は適宜変更することができる。
図3(A)に示した濃淡エッジ画像は、各エッジ画素毎に、上記の方法により求めた濃淡エッジ位置を表すものである(実際には、サブピクセル単位の位置であるため、画像として表すことはできない。)。
なお、図3の画像では、濃度勾配方向がx軸またはy軸に沿っているため、濃淡エッジ位置の座標(x,y)のうちの一方は、着目中のエッジ画素と同じになる。もし斜め方向に濃度勾配が現れている場合には、その方向に沿うエッジ強度の変化を用いて、x,yの各方向とも濃淡エッジ位置を求める必要がある。
また、エッジ画像におけるエッジは、通常、数画素分の幅を有するので、濃淡エッジ位置を求める処理でも、濃淡エッジ位置の検索方向に、その方向と同様の濃度勾配方向を有するエッジ画素が存在する可能性がある。このような場合には、濃度勾配方向が共通の複数のエッジ画素を1組として、その組につき1点の濃淡エッジ位置を求めるのが望ましい。または、あらかじめエッジ画像におけるエッジ幅が1画素になるように細線化処理を施してから、その細線化されたエッジに対する濃淡エッジ位置を求めるようにしてもよい。この場合、濃淡エッジ位置を検索する処理では、細線化処理により残されたエッジ画素を始点に、その濃度勾配方向の正逆両方向を検索するのが望ましい。
この実施例では、エッジ強度画像およびエッジコード画像を用いて、エッジ強度が前記しきい値Ei以上となる画素に順に着目しつつ、上記図3(B)の方法に基づき濃淡エッジ位置(x,y)を抽出する。さらに、モデル画像については、抽出された濃淡エッジ位置(x,y)を、前記エッジ画素の座標(x,y)を用いた2次元配列データMX(x,y)、MY(x,y)に格納することにより、エッジ画素と濃淡エッジ位置とを対応づけるようにしている。すなわち、MX(x,y)=x、MY(x,y)=yとなる。
なお、前記したように、数画素分のエッジ画素の組につき1つの濃淡エッジ位置を求めた場合には、その組を構成するすべての画素に前記濃淡エッジ位置を対応づけることができる。
さらにモデル画像については、エッジ画素以外の画素も含む全ての構成画素について、それぞれ前記濃淡エッジ位置が設定されたか否かを示すフラグデータML(x,y)が設けられる。このモデル画像の濃淡エッジ位置MX(x,y)、MY(x,y)、およびフラグデータML(x,y)は、いずれも登録エリアに登録され、計測処理において使用される。
前記したように、ハードディスク14の登録エリアには、前記モデル画像に加えて、エッジ強度モデル画像MEi(x,y)、エッジコードモデル画像MEc(x,y)、濃淡エッジ位置MX(x,y)、MY(x,y)、およびフラグデータML(x,y)が登録される。また、処理対象画像についても、画像入力と同時に、エッジ抽出部3によりエッジ強度画像Ei(x,y)、エッジコード画像Ec(x,y)が生成され、画像メモリ4に格納される。
つぎに、上記の各種データを用いた計測処理の具体例を説明する。
処理対象画像から対象物の仮の位置Sを抽出する処理では、エッジ強度画像Ei(x,y)、エッジコード画像Ec(x,y)、エッジ強度モデル画像MEi(x,y)およびエッジコードモデル画像MEc(x,y)を使用して、モデル画像に最も類似する領域を対応領域22として抽出する。具体的には、処理対象画像にモデル画像と同サイズの検索領域をピクセル単位で走査しながら、走査位置毎に、検索領域とモデル画像との間でのエッジコードの分布パターンの類似度を求め、類似度が最も大きい位置での検索領域を対応領域22とし、その左上頂点を仮の位置Sとする。
なお、この抽出処理は、特許文献1に記載されているのと同様の方法により行われるものであるため、ここでは詳細な説明を省略する。
つぎに、前記対応領域22においてモデル画像に対するエッジの位置ずれ量を求め、そこから対象物の真の位置を求める。以下、この処理について、図4を用いて詳細に説明する。なお、図4中のdxは、x軸方向における位置ずれ量であり、dyはy軸方向における位置ずれ量である。またnは、濃淡エッジ位置の抽出数である。また、(Sx,Sy)は前記対象物の仮の位置を示す点Sの座標であり、(x,y)は、この点Sに対する着目画素の相対位置を示す。モデル画像側の着目画素の対応点は、この(x,y)により示されると考えられる。
まず最初のST101(STは「ステップ」の略である。以下も同じ。)において、前記n,dx,dyに初期値0をセットし、前記点Sを起点に着目画素を1画素ずつ動かしながら(ST102,ST103,ST104,ST111,ST112,ST113,ST114の各ステップによる。)、各着目画素につき、以下のような処理を実行する。なお、ST111、ST113では、x,yの値が前記図2に示したモデル画像のサイズ(mx2−mx1),(my2−my1)に達したか否かを判別している(後述する図5のST218、220も同様である。)。
最初に、モデル画像側の対応画素について、前記フラグデータML(x,y)がオン設定されているか否かを判別する(ST105)。なお、この例では、フラグデータML(x,y)が「1」のときをオン状態としている。
前記ML(x,y)=1、すなわちモデル画像側の対応画素に濃淡エッジ位置(MX(x,y),MY(x,y))が対応づけられている場合には、ST105が「YES」となってST106に進み、着目画素がエッジ画素であるか否かを判別する。具体的には、処理対象画像から生成されたエッジ強度画像の画素Ei(Sx+x,Sy+y)が前記したしきい値Ei以上であれば、着目画素はエッジ画素であると判断する。
ST106が「YES」であれば、つぎのST107において、着目画素のエッジコードEc(Sx+x,Sy+y)をモデル画像側の対応画素のエッジコードMEc(x,y)と比較する。ここで、Ec(Sx+x,Sy+y)とMEc(x,y)との差の絶対値が所定値以下であれば、双方のエッジコードは一致していると判断し、ST108に進む。
ST108では、着目画素につき、前記濃淡エッジ位置(x,y)を抽出する。さらに、つぎのST109では前記抽出数nをインクリメントし、ST110に進む。
ST110では、ST108で求めた濃淡エッジ位置(x,y)、モデル画像側の対応画素の濃淡エッジ位置(MX(x,y),MY(x,y))、および前記点Sの座標(Sx,Sy)を用いて、x,yの各軸方向毎に、モデル側の濃淡エッジ位置に対する処理対象画像側の濃淡エッジ位置のずれ量dx,dyを求める。同時にST110では、画素毎のずれ量dx,dyを加算する処理も実行する。
前記モデル画像に対応する画像領域内の全ての画素について実行することにより、モデル画像に対する前記画像領域内の濃淡エッジ位置のずれ量dx,dyの総和が求められる。なお、前記ST105,ST106,ST107のいずれかのステップにおける判別結果が「NO」となった場合には、ST108〜110はスキップされる。
モデル画像に対応する画像領域内のすべての画素に対する処理が終了すると、ST115では、前記nを用いてずれ量dx,dyの平均値dx/n、dy/nを算出する。そして、前記点Sの座標(Sx,Sy)に平均化されたずれ量を加算して得られる座標を、対象物の真の位置を示す座標(Ox,Oy)とする。
上記一連の処理によれば、ピクセル単位で求められた対象物の位置を基準に、モデル画像に対するエッジ位置のずれ量をサブピクセル単位で抽出し、そのずれ量分だけ前記対象物の位置を修正することができる。このようにして、対象物の位置をサブピクセル単位で求めることが可能になるから、位置計測にかかる精度を従来よりも大幅に高めることができる。
図5は、前記対象物の真の位置(Ox,Oy)を求める処理の他の例を示す。
この実施例も、基本的な処理の内容は図4と同様であるが、エッジコードの示す方向によってずれ量の算出方法を変更した点に特徴がある。この方法を実行するために、この実施例では、濃淡エッジ位置の抽出数を、x,yの方向毎に個別に計数するようにしている。図中、xnはx方向における抽出数であり、ynはy方向における抽出数である。
その他のパラメータは、前記図4と同様である。
まずST201〜204において、前記図4のST101〜104と同様の設定を行った後、x,yを1つずつ動かしながら、モデル画像に対応する領域22内の各画素につき、それぞれ以下の処理を実行する。
ST205〜207では、前記図4のST105〜107と同様に、モデル画像側の対応画素に濃淡エッジ位置が設定されているか否か、着目画素がエッジ画素であるか否か、着目画素のエッジコードがモデル画素の対応画素におけるエッジコードに一致するか否かを判別する。ST205〜207の判別結果がすべて「YES」となれば、ST208に進み、着目画素について濃淡エッジ位置(x,y)を抽出する。
つぎのST209では、着目画素のエッジコードEc(Sx+x,Sy+y)を水平方向を示す180°で除算し、その剰余数をθとする。さらに、このθが90°より大きい場合には、ST211において、180°からθを差し引いた値により前記θの値を更新する。つぎのST212では、θが22°より大きいか否かを判別し、判別結果が「NO」であれば、ST214に進む。判別結果が「YES」であれば、さらにST213において、|θ−90|の値を22°と比較し、|θ−90|≦22°であればST215を実行し、|θ−90|>22°であればST216およびST217を実行する。
すなわち、着目画素のエッジコードが示す方向とx軸方向(0°または180°の方向)との角度差が22°以内であれば、着目画素の濃度勾配方向はx軸方向に沿っているものとしてST214に進み、x方向にかかるずれ量dxおよび抽出数xnを更新する。また着目画素のエッジコードが示す方向とy軸方向(90°または270°の方向)との角度差が22°以内であれば、着目画素の濃度勾配方向はy軸方向に沿っているものとしてST215に進み、y軸方向にかかるずれ量dyおよび抽出数ynを算出する。また、x軸およびy軸に対応する4方向(0°,90°,180°,270°の各方向)のいずれに対しても、着目画素のエッジコードが22°より大きな角度差を持つ場合(たとえば、22°<θ<68°)には、ST216において、x,y双方の抽出数xn,ynを更新し、ST217において,x,y双方のずれ量dx,dyを更新する。
モデル画像に対応する画像領域内のすべての画素を処理し終えると、ST222において、前記ずれ量dx,dyをそれぞれ抽出数xn,ynにより平均化し、その平均値により前記点Sの座標(Sx,Sy)を補正した座標を、対象物の真の位置(Ox,Oy)とする。
上記の手順によれば、モデルに対するずれが発生している方向でのみ抽出数がカウントされるので、位置ずれ量dx,dyの平均値の信頼度をより高めることができる。よって、対象物の位置をより精度良く求めることが可能になる。
上記の画像処理によれば、画像における対象物の位置をサブピクセル単位で求めることができるから、対象物の位置計測や位置決め処理などの精度を大幅に高めることができる。また、複数のカメラを用いた3次元計測処理に上記の画像処理を適用すれば、3次元計測の精度を大幅に高めることができる。
図6は、3次元計測処理機能を備えた検査装置の構成を示す。この検査装置は、工場の検査ラインを搬送される検査対象物(以下、「ワーク」という。)に対する3次元計測を行い、その計測値を用いて前記ワークの形状や高さなどの適否を判定するものである。
前記検査装置には、一対のカメラC0,C1を含む撮像部601が設けられる。各カメラC0,C1は、前記検査ラインの上方に設置されて、搬送されてくるワークを順に撮像する。なお、ここでは図示を省略するが、前記撮像部601のうち、カメラC0は、その光軸を鉛直方向に向けた状態で設置され、カメラC1は、前記カメラC0と視野が重なるように、光軸を傾斜させた状態で設置される。よって、カメラC0により、ワークを正面から見た状態の画像が生成され(以下、この画像を「正面視画像」という。)、カメラC1により前記ワークを斜め方向から見た状態の画像が生成される(以下、この画像を「斜め画像」という。)。
前記検査装置には、前記撮像部601のほか、本体部602、モニタ603、コンソール604などにより構成される。本体部602には、カメラC0,C1に対する画像入力部610,611、カメラ駆動部612,演算処理部620、出力部628などが設けられる。
前記カメラ駆動部612は、図示しないワーク検出用のセンサからの検知信号を受けて各カメラC0,C1を同時に駆動する。各カメラC0,C1により生成された画像信号は、それぞれの画像入力部610,611に入力され、ディジタル変換される。これにより、前記正面視画像および斜め画像が生成される。
前記演算処理部620は、コンピュータにより構成されるもので、前記正面視画像および斜め画像を用いた3次元計測処理を実行した後、その処理結果からワークの適否を判定する。出力部628は、前記計測処理や判定処理の結果を、PLCなどの外部機器に出力するための出力用インターフェースである。
演算処理部620には、画像メモリ621、画像処理部622,計測処理部623、判定部624、表示制御部625、パラメータ記憶部627などが設けられる。なお、画像メモリ621およびパラメータ記憶部627以外の各部は、専用のプログラムにより前記コンピュータに設定された機能であり、画像メモリ621やパラメータ記憶部627は、前記コンピュータのメモリ(RAM、ハードディスクなど)に設定される。
前記画像メモリ621には、前記正面視画像、斜め画像、および後記する被検査部位毎のモデル画像や、これらの画像に対応するエッジ強度画像およびエッジコード画像などが格納される。
前記画像処理部622には、前記図1のエッジ抽出部3の機能、エッジコードを用いてモデル画像への対応領域を抽出する機能、濃淡エッジ位置を求める機能などが組み込まれている。さらにこの実施例の画像処理部622には、前記カメラC1からの斜め画像を、カメラC0によるものと同様の正面視画像に変換する機能が設定されている
パラメータ記憶部627には、3次元計測処理や斜め画像A1の変換処理のための演算式に含まれる各種係数(以下、「パラメータ」という。)が保存される。
この実施例では、検査に先立ち、複数の特徴点を有するキャリブレーション用ワークをカメラC0,C1により撮像し、前記画像処理部622や計測処理部623の機能を用いて、生成された正面視画像および斜め画像上の特徴点を抽出し、これらの特徴点の座標と前記キャリブレーションワーク上の各特徴点の既知の位置関係に基づき、各パラメータの値を算出するようにしている。
図7は、前記ワークの具体例を携帯電話として、その操作部の正面視画像および斜め画像を示す。図中A0が正面視画像であり、A1が斜め画像である。
この実施例のワークには複数の被検査部位(操作部のキー)が含まれており、これら被検査部位毎に個別のモデル画像が登録されている。またモデル画像毎に、最初の実施例と同様のエッジ強度モデル画像MEi(x,y)、エッジコードモデル画像MEc(x,y)、濃淡エッジ位置MX(x,y)、MY(x,y)、ならびにフラグデータML(x,y)が登録される。なお、この実施例のモデル画像は、良品モデルの正面視画像から切り出される。
図7では、各画像A0,A1に特定の被検査部位(「2」の文字キー)用のモデル画像への対応領域70,71を示している。各対象領域70,71内の点80,81は、モデル画像上の代表点(この実施例ではモデル画像の中心点とする。)に対応する点である。
この実施例では、前記モデル画像上の代表点への対応点80,81を計測対象点として、それぞれの座標をサブピクセル単位で求める。なお、以下では、正面視画像A0の計測対象点80の座標を(Ox,Oy)、斜め画像A1の計測対象点81の座標を(Ox,Oy)とする。
前記計測処理部623は、各計測対象点80,81の座標(Ox,Oy)(Ox,Oy)と前記パラメータとを用いた演算を行って、前記計測対象点80,81に対応する3次元座標を求める。
前記判定部624は、前記計測処理部623が算出した3次元座標のうち、高さを表すZ座標を所定の判定基準値と比較することにより、被検査部位であるキーの高さの適否を判定する。この判定結果は出力部628および表示制御部625に出力される。
図8は、前記図7に示したワークについて、各キーの高さを検査する場合の処理手順を示す。この手順は、1つのワークに対して行われるもので、まず最初のST301では、カメラC0,C1を同時駆動して画像を生成する。
つぎのST302では、前記正面視画像A0からエッジ画素およびエッジコードを抽出する。なお、エッジ画素の抽出は前記エッジ強度画像Ei(x,y)を生成することにより行われ、エッジコードの抽出は前記エッジコード画像Ec(x,y)を生成することにより行われる。
つぎのST303では、正面視画像A0を処理対象として、前記モデル画像への対応領域70を抽出し、その領域70内の中心点を計測代表点80として仮設定する。なお、対応領域70の抽出は、正面視画像A0に前記モデル画像に対応する大きさの検索領域をピクセル単位で走査し、走査位置毎に検索領域内のエッジコードのパターンをモデル画像におけるエッジコードのパターンと比較することにより行われる。
つぎのST304では、エッジ強度画像やエッジコード画像のうちの前記対応領域70に対応するデータを用いて、前記図4または図5と同様の処理を実行することにより、前記計測対象点80の真の座標(Ox,Oy)を算出する。
つぎのST305では、斜め画像A1を正面視画像に変換する。この変換で生成される画像(以下、「変換後画像」という。)は、前記正面視画像A0の結像面と同一の平面上に斜め画像A1を投影したものに相当する。
この変換処理は公知であるので簡単に言うと、まず前記パラメータ記憶部627に登録されたパラメータを用いて、変換後画像の各画素毎に、斜め画像A1上で当該画素に対応する矩形領域の頂点を求める。さらに、前記矩形領域の各頂点を含む4つの画素の濃度を、それぞれその画素と前記矩形領域との重なり部分が矩形領域全体に占める割合により重み付けし、重み付けされた4画素の濃度を加算して得られる値を、前記矩形領域に対応する画素の濃度に設定する。
ST306では、前記ST305で生成された変換後画像に対し、前記ST302と同様の処理によりエッジ画素およびエッジコードを抽出する。ST307では、前記変換後画像に前記ST303と同様の処理を行って、モデル画像への対応領域を求め、その中心点を計測対象点として仮設定する。ただし、この対応領域は前記正面視画像A0の対応領域70に対応するものであるので、エピポーララインに沿ってサーチを行えばよい。
変換後画像は正面視画像A0と同一平面上にあることから、エピポーララインはx軸またはy軸に平行になる。したがって、たとえばエピポーララインがx軸に平行であれば、y座標の範囲が前記対応領域70に対応する帯状の検索領域を設定してサーチを行えばよい。
つぎに、ST308では、前記ST307で抽出した対応領域について、図4または図5と同様の処理を行うことにより、計測対象点について、サブピクセル単位の座標(Ox´,Oy´)を算出する。
さらにST309では、座標(Ox´,Oy´)を斜め画像上の座標(Ox,Oy)に変換し、変換後の座標が示す点を斜め画像A1の計測対象点81として設定する。この変換処理も、前記斜め画像A1の変換処理で使用したパラメータを用いた演算により行われるので、変換後の座標(Ox,Oy)としてもサブピクセル単位の座標を得ることができる。
このように、斜め画像A1を正面視画像に変換することで、モデル画像の代表点に対応する点を簡単に求めた後に、その座標を元の斜め画像A1に反映させることにより、斜め画像A1についても、サブピクセル単位の計測対象点81を求めることができる。
ST310では、各計測代表点81,81の座標(Ox,Oy)(Ox,Oy)を用いて、これらに対応する3次元座標を算出する。ST311では、前記3次元座標のうちのZ座標を所定のしきい値と比較することにより、キーの高さの適否を判定する。
以下、ST312が「NO」となってST302に戻り、つぎの被検査部位について、同様にST302〜311を実行する。すべての被検査部位に対する処理が終了すると、ST312が「YES」となってST313に進み、前記判定結果を出力し、前記ワークに対する検査を終了する。
なお、上記のST307およびST308では、前記モデル画像との照合により対応領域や計測対象点を抽出したが、これに代えて、前記正面視画像C0から抽出した対応領域70内の画像を用いた照合を行っても良い。
また、上記の処理では、計測対象領域内の代表点を1つにしているが、これに限らず、複数の代表点を抽出してもよい。また上記の処理では、エッジ画素であるか否かに関わらず、計測対象領域内の中心点を代表点としたが、これに代えて、各対応領域内のエッジに含まれる点を代表点としてもよい。またST309では、高さ情報の判定ではなく、たとえば3次元座標が表す点と所定の基準点との距離を求め、その距離が設定範囲内であるかどうかを判定してもよい。
また、エッジ上の複数の点を計測対象点とするのであれば、これらの点に対応する3次元座標を用いて被検査部位の3次元形状の適否(たとえば前記文字キーの表面の凹凸状態)を判定してもよい。
この発明が適用された画像処理装置のブロック図である。 登録対象画像と処理対象画像との例を示す説明図である。 エッジ画素、濃淡エッジ位置、および濃淡エッジ位置の抽出方法をイメージ化して示す説明図である。 対象物の位置をサブピクセル単位で抽出する処理の流れの例を示すフローチャートである。 対象物の位置をサブピクセル単位で抽出する処理の流れの他の例を示すフローチャートである。 この発明が適用された検査装置のブロック図である。 図6の検査装置の処理対象画像の例を示す説明図である。 検査の流れを示すフローチャートである。
符号の説明
1 画像処理装置
2 画像入力部
3 エッジ抽出部
4 画像メモリ
10 制御部
11 CPU
14 ハードディスク
22,70,71 モデル画像への対応領域
80,82 計測対象点
620 演算処理部
622 画像処理部
623 計測処理部
C0,C1 カメラ
M モデル画像
S 仮の位置

Claims (5)

  1. 所定大きさの濃淡画像を処理対象として、この処理対象画像からあらかじめ特定されたモデルに対応する対象物の位置を抽出する方法において、
    前記モデルを撮像して得られたモデル画像に対し、その画像中のエッジからエッジ画素を抽出するステップAと、抽出された各エッジ画素につき、それぞれそのエッジ画素を基準に濃度勾配方向を検索して、サブピクセル単位でのエッジ位置を抽出するステップBと、前記ステップBでエッジ位置が抽出されたエッジ画素について、その抽出位置および抽出に用いた濃度勾配方向を当該エッジ画素に対応づけて登録するステップCとを、あらかじめ実行した後に、前記処理対象画像に対して第1、第2、第3の各ステップを実行し、
    前記第1ステップでは、前記モデル画像と同サイズの検索領域を処理対象画像にピクセル単位で走査して、走査位置毎に前記検索領域の画像とモデル画像との類似度を算出し、その算出結果を用いて前記モデル画像への対応領域を抽出し、
    前記第2ステップでは、前記第1ステップで抽出された対応領域において、前記サブピクセル単位でのエッジ位置が登録されているモデル画像中のエッジ画素に対応するエッジ画素を、前記ステップCで登録された濃度勾配方向および前記対応領域内の濃度勾配方向を用いて抽出し、抽出された各エッジ画素に対し、それぞれ前記ステップBと、そのステップBにより得たサブピクセル単位でのエッジ位置と前記ステップCで登録されたエッジ位置とのずれ量を算出する処理とを実行し、
    前記第3ステップでは、前記第2ステップで算出されたずれ量により前記対応領域の位置を修正し、修正後の対応領域の位置を前記対象物の位置として特定することを特徴とする画像処理方法。
  2. 前記第1ステップでは、前記検索領域の各走査位置において、前記モデル画像の各エッジ画素における濃度勾配方向の分布パターンと前記検索領域内の各エッジ画素における濃度勾配方向の分布パターンとの類似度を算出する請求項1に記載された画像処理方法。
  3. 前記第1ステップでは、前記検索領域が合わせられた処理対象画像上の領域のうち、前記類似度が最も高くなった領域を対応領域として抽出する請求項1に記載された画像処理方法。
  4. 視野が互いに重なるように配置された複数台の撮像手段により生成される複数の画像からそれぞれ計測対象点を抽出し、各画像上の計測対象点の座標を用いてこれら計測対象点に対応する3次元座標を算出する方法において、
    前記エッジを表す特徴点の抽出処理では、前記複数の画像のそれぞれについて、あらかじめ用意されたモデル画像を用いてステップa,b,cを実行し、
    前記モデル画像には、サブピクセル単位でのエッジ位置と濃度勾配方向とが対応づけられた複数のエッジ画素と少なくとも1つの代表点とが含まれており、
    前記ステップaでは、前記モデル画像と同サイズの検索領域をピクセル単位で走査して、走査位置毎に前記検索領域の画像とモデル画像との類似度を算出し、その算出結果を用いて前記モデル画像への対応領域を抽出し、
    前記ステップbでは、ステップaで抽出された対応領域において、前記モデル画像中のサブピクセル単位のエッジ位置が対応づけられたエッジ画素に対応するエッジ画素を、前記モデル画像側のエッジ画素に対応づけられた濃度勾配方向および前記対応領域内の濃度勾配方向を用いて抽出し、抽出された各エッジ画素に対し、そのエッジ画素を基準に濃度勾配方向を検索して、サブピクセル単位でのエッジ位置を抽出する処理と、当該エッジ位置と前記モデル画像に対応づけられたサブピクセル単位のエッジ位置とのずれ量を算出する処理を実行し、
    前記ステップcでは、前記ステップaで抽出された対応領域につきモデル画像との間の画素の対応関係に基づき前記代表点に対応する点を計測対象点として抽出し、抽出した計測対象点の座標を前記ステップbで算出されたずれ量により修正することを特徴とする3次元計測方法。
  5. 濃淡画像を入力するための画像入力手段と、
    前記画像入力手段から入力した濃淡画像について、その画像中のエッジからエッジ画素を抽出するとともに、そのエッジ画素における濃度勾配方向を抽出するエッジ抽出手段と、
    前記エッジ抽出手段の抽出結果に基づき、前記濃淡画像上のエッジ画素について、その画素を基準に濃度勾配方向を検索して、サブピクセル単位でのエッジ位置を抽出するエッジ位置抽出手段と、
    対象物のモデルを含むモデル画像およびそのモデル画像から抽出されたデータを保存するためのメモリと、
    前記画像入力手段から前記モデル画像を含む画像が入力されたとき、この入力画像に対する前記エッジ抽出手段およびエッジ位置抽出手段の処理結果をエッジ抽出手段により抽出された各エッジ画素に対応づけたデータを作成して、前記メモリに登録する登録手段と、
    前記画像入力手段から前記モデルに対応する対象物を含む処理対象画像が入力されたとき、この処理対象画像に前記モデル画像と同サイズの検索領域をピクセル単位で走査して、走査位置毎に前記検索領域内の画像とモデル画像との類似度を算出し、その算出結果に基づき前記モデル画像への対応領域を抽出する対応領域抽出手段と、
    前記対応領域抽出手段により抽出された対応領域において、前記エッジ抽出手段の処理結果に基づき、前記メモリにエッジ位置が登録されているモデル画像中のエッジ画素に対応するエッジ画素を抽出する対応エッジ画素抽出手段と、
    前記対応エッジ画素抽出手段により抽出されたエッジ画素およびその近傍の画像を前記エッジ位置抽出手段に処理させて、この処理により抽出されたサブピクセル単位のエッジ位置と前記メモリに登録されたエッジ位置とのずれ量を算出するずれ量算出手段と、
    前記ずれ量算出手段により算出されたずれ量により前記対応領域の設定位置を修正し、修正後の対応領域の位置を前記対象物の位置として特定する位置特定手段とを、具備している画像処理装置。
JP2006068212A 2005-03-15 2006-03-13 画像処理方法およびその方法を用いた3次元計測方法ならびに画像処理装置 Active JP4687518B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006068212A JP4687518B2 (ja) 2005-03-15 2006-03-13 画像処理方法およびその方法を用いた3次元計測方法ならびに画像処理装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005072989 2005-03-15
JP2005072989 2005-03-15
JP2006068212A JP4687518B2 (ja) 2005-03-15 2006-03-13 画像処理方法およびその方法を用いた3次元計測方法ならびに画像処理装置

Publications (2)

Publication Number Publication Date
JP2006294003A true JP2006294003A (ja) 2006-10-26
JP4687518B2 JP4687518B2 (ja) 2011-05-25

Family

ID=36809239

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006068212A Active JP4687518B2 (ja) 2005-03-15 2006-03-13 画像処理方法およびその方法を用いた3次元計測方法ならびに画像処理装置

Country Status (5)

Country Link
US (1) US7742634B2 (ja)
EP (1) EP1708138B1 (ja)
JP (1) JP4687518B2 (ja)
KR (1) KR100817656B1 (ja)
CN (1) CN100582663C (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008275341A (ja) * 2007-04-25 2008-11-13 Canon Inc 情報処理装置、情報処理方法
JP2008286756A (ja) * 2007-05-21 2008-11-27 Canon Inc 位置姿勢計測装置及びその制御方法
JP2010203826A (ja) * 2009-03-02 2010-09-16 Fujitsu Ltd 測定方法、測定装置、測定制御プログラム
JP2010210586A (ja) * 2009-03-12 2010-09-24 Omron Corp 3次元計測処理のパラメータの導出方法および3次元視覚センサ

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100844640B1 (ko) * 2006-12-12 2008-07-07 현대자동차주식회사 물체 인식 및 거리 계측 방법
WO2008111452A1 (ja) * 2007-03-09 2008-09-18 Omron Corporation 認識処理方法およびこの方法を用いた画像処理装置
JP2009205479A (ja) * 2008-02-28 2009-09-10 Kddi Corp 撮像装置のキャリブレーション装置、方法及びプログラム
JP5355292B2 (ja) * 2009-08-10 2013-11-27 キヤノン株式会社 画像処理装置、画像処理方法
KR101268520B1 (ko) * 2009-12-14 2013-06-04 한국전자통신연구원 영상 인식 장치 및 방법
US9628775B2 (en) 2010-01-20 2017-04-18 Faro Technologies, Inc. Articulated arm coordinate measurement machine having a 2D camera and method of obtaining 3D representations
US9607239B2 (en) * 2010-01-20 2017-03-28 Faro Technologies, Inc. Articulated arm coordinate measurement machine having a 2D camera and method of obtaining 3D representations
US9879976B2 (en) 2010-01-20 2018-01-30 Faro Technologies, Inc. Articulated arm coordinate measurement machine that uses a 2D camera to determine 3D coordinates of smoothly continuous edge features
JP5393531B2 (ja) * 2010-02-25 2014-01-22 キヤノン株式会社 位置姿勢推定装置、位置姿勢推定方法、プログラム、記憶媒体
CN102168945B (zh) * 2010-02-26 2014-07-16 鸿富锦精密工业(深圳)有限公司 影像测量系统及方法
CN102792333B (zh) * 2010-03-19 2016-11-23 拉碧斯半导体株式会社 图像处理装置、方法、程序以及记录介质
WO2012023412A1 (ja) 2010-08-19 2012-02-23 日産自動車株式会社 立体物検出装置及び立体物検出方法
CN103477624A (zh) * 2011-04-13 2013-12-25 日产自动车株式会社 行驶辅助装置及其雨滴检测方法
JPWO2013161384A1 (ja) * 2012-04-25 2015-12-24 オリンパス株式会社 画像処理システム、画像処理方法および画像処理プログラム
WO2014002725A1 (ja) * 2012-06-29 2014-01-03 富士フイルム株式会社 3次元測定方法、装置、及びシステム、並びに画像処理装置
CN102901444B (zh) * 2012-08-29 2015-02-18 浙江大学 一种基于mp小波滤波的零件尺寸检测方法及其检测系统
JP6015267B2 (ja) * 2012-09-13 2016-10-26 オムロン株式会社 画像処理装置、画像処理プログラム、これを記録したコンピュータ読み取り可能な記録媒体、および、画像処理方法
JP6197340B2 (ja) * 2013-04-05 2017-09-20 オムロン株式会社 画像処理装置、画像処理方法、およびプログラム
CN104132650A (zh) * 2014-06-05 2014-11-05 贵州大学 采用最大轮廓矩形法检测果树树叶稀密程度的方法
US10048749B2 (en) * 2015-01-09 2018-08-14 Microsoft Technology Licensing, Llc Gaze detection offset for gaze tracking models
US9578207B1 (en) * 2015-09-30 2017-02-21 Csr Imaging Us, Lp Systems and methods for selectively screening image data
JP2017090945A (ja) * 2015-11-02 2017-05-25 キヤノン株式会社 画像処理装置、画像処理方法、計測装置、及びプログラム
JP6348093B2 (ja) * 2015-11-06 2018-06-27 ファナック株式会社 入力データから検出対象物の像を検出する画像処理装置および方法
US9613412B1 (en) 2015-12-21 2017-04-04 Cambria Company Llc Stone slab manufacturing methods and systems
CN105654473A (zh) * 2015-12-25 2016-06-08 傅之成 一种亚像素边缘检测方法
CN105716528A (zh) * 2016-05-09 2016-06-29 西安捷创测控技术有限公司 一种油管螺纹尺寸参数检测方法与设备
CN106204528A (zh) * 2016-06-27 2016-12-07 重庆理工大学 一种零件几何质量的尺寸检测方法
CN109863365B (zh) * 2016-10-21 2021-05-07 Abb瑞士股份有限公司 从容器中拾取对象的方法、电子设备和系统
JP6833460B2 (ja) * 2016-11-08 2021-02-24 株式会社東芝 作業支援システム、作業方法、および処理装置
CN106969706A (zh) * 2017-04-02 2017-07-21 聊城大学 基于双目立体视觉的工件检测与三维测量系统及检测方法
US10467352B2 (en) 2017-04-03 2019-11-05 Cambria Company Llc Stone slab production methods and systems
JP6764533B2 (ja) * 2017-06-20 2020-09-30 株式会社ソニー・インタラクティブエンタテインメント キャリブレーション装置、キャリブレーション用チャート、チャートパターン生成装置、およびキャリブレーション方法
CN108190418A (zh) * 2017-12-29 2018-06-22 苏州德创测控科技有限公司 上料平台及工件上料方法
CN113538479B (zh) * 2020-04-20 2023-07-14 深圳市汉森软件有限公司 图像边缘处理方法、装置、设备及存储介质
CN111751002B (zh) * 2020-05-15 2021-11-23 国网浙江省电力有限公司嘉兴供电公司 一种基于红外热成像的带电设备故障智能诊断方法
TWI803369B (zh) * 2022-06-24 2023-05-21 寶成工業股份有限公司 自動模具噴塗系統
GB2628671A (en) * 2023-03-31 2024-10-02 Bertrand Lucas Method, system and device for analysing placement of digital assets in a user interface

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0743309A (ja) * 1993-08-02 1995-02-14 Nec Corp パターン検査方法
JPH11201908A (ja) * 1998-01-16 1999-07-30 Nec Corp 外観検査装置、外観検査方法及び外観検査プログラムを記録した記録媒体
JPH11345315A (ja) * 1998-06-01 1999-12-14 Nec Corp 画像位置合わせ方法、画像位置合わせ装置及び記録媒体
JP2001338304A (ja) * 1999-08-26 2001-12-07 Nano Geometry Kenkyusho:Kk パターン検査装置、パターン検査方法および記録媒体
JP2002230549A (ja) * 2001-02-05 2002-08-16 Omron Corp 画像処理方法およびその装置
JP2006093172A (ja) * 2004-09-21 2006-04-06 Hitachi Ltd 半導体デバイスの製造方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040081350A1 (en) * 1999-08-26 2004-04-29 Tadashi Kitamura Pattern inspection apparatus and method
JP4861574B2 (ja) * 2001-03-28 2012-01-25 パナソニック株式会社 運転支援装置
US7133572B2 (en) * 2002-10-02 2006-11-07 Siemens Corporate Research, Inc. Fast two dimensional object localization based on oriented edges

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0743309A (ja) * 1993-08-02 1995-02-14 Nec Corp パターン検査方法
JPH11201908A (ja) * 1998-01-16 1999-07-30 Nec Corp 外観検査装置、外観検査方法及び外観検査プログラムを記録した記録媒体
JPH11345315A (ja) * 1998-06-01 1999-12-14 Nec Corp 画像位置合わせ方法、画像位置合わせ装置及び記録媒体
JP2001338304A (ja) * 1999-08-26 2001-12-07 Nano Geometry Kenkyusho:Kk パターン検査装置、パターン検査方法および記録媒体
JP2002230549A (ja) * 2001-02-05 2002-08-16 Omron Corp 画像処理方法およびその装置
JP2006093172A (ja) * 2004-09-21 2006-04-06 Hitachi Ltd 半導体デバイスの製造方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008275341A (ja) * 2007-04-25 2008-11-13 Canon Inc 情報処理装置、情報処理方法
JP2008286756A (ja) * 2007-05-21 2008-11-27 Canon Inc 位置姿勢計測装置及びその制御方法
JP2010203826A (ja) * 2009-03-02 2010-09-16 Fujitsu Ltd 測定方法、測定装置、測定制御プログラム
JP2010210586A (ja) * 2009-03-12 2010-09-24 Omron Corp 3次元計測処理のパラメータの導出方法および3次元視覚センサ

Also Published As

Publication number Publication date
US20060221417A1 (en) 2006-10-05
KR100817656B1 (ko) 2008-03-31
US7742634B2 (en) 2010-06-22
KR20060101268A (ko) 2006-09-22
CN100582663C (zh) 2010-01-20
EP1708138A2 (en) 2006-10-04
EP1708138A3 (en) 2013-08-28
CN1834582A (zh) 2006-09-20
JP4687518B2 (ja) 2011-05-25
EP1708138B1 (en) 2017-09-13

Similar Documents

Publication Publication Date Title
JP4687518B2 (ja) 画像処理方法およびその方法を用いた3次元計測方法ならびに画像処理装置
JP5273196B2 (ja) 画像処理装置
JP4811272B2 (ja) 3次元計測を行う画像処理装置および画像処理方法
US8300986B2 (en) Image measurement apparatus for creating a panoramic image
JP6749528B1 (ja) 変状管理装置、変状管理方法、および変状管理プログラム
JP3545542B2 (ja) ウェハの回転方向検出方法
JP4670994B2 (ja) カラー画像の処理方法および画像処理装置
JP4788475B2 (ja) 画像処理装置および画像処理方法
JP2002140713A (ja) 画像処理方法およびその装置
JP2000339462A (ja) 欠陥検査方法および欠陥検査装置
JP2008139262A (ja) 欠陥検査方法およびその方法を用いた検査装置
JP4513394B2 (ja) カラー画像の処理方法および画像処理装置
JP4470513B2 (ja) 検査方法および検査装置
JP4670993B2 (ja) カラー画像の処理方法および画像処理装置
JP4670995B2 (ja) カラー画像の処理方法および画像処理装置
JP2009014519A (ja) 面積測定方法および面積測定プログラム
JP4406978B2 (ja) テンプレートマッチング方法
JP2910706B2 (ja) Lsi画像の位置合わせ方法
JPH10208066A (ja) 被検査物のエッジライン抽出方法及びこの方法を用いた外観検査方法
JPWO2021044629A1 (ja) 画像処理システムおよび画像処理方法
JPH10153407A (ja) 計測処理装置
JP3447717B2 (ja) 画像処理装置
JP2005121406A (ja) パンタグラフ検出装置
JPH01263773A (ja) 円筒物の検査方法
JP2003168111A (ja) テンプレート登録方法及びその装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101220

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: 20110118

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: 20110131

R150 Certificate of patent or registration of utility model

Ref document number: 4687518

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140225

Year of fee payment: 3