JP2001311692A - 外観検査装置及び外観検査方法 - Google Patents
外観検査装置及び外観検査方法Info
- Publication number
- JP2001311692A JP2001311692A JP2000129041A JP2000129041A JP2001311692A JP 2001311692 A JP2001311692 A JP 2001311692A JP 2000129041 A JP2000129041 A JP 2000129041A JP 2000129041 A JP2000129041 A JP 2000129041A JP 2001311692 A JP2001311692 A JP 2001311692A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- image data
- thread
- threads
- inspection
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 120
- 238000011179 visual inspection Methods 0.000 title claims abstract description 42
- 230000015654 memory Effects 0.000 claims abstract description 91
- 238000012545 processing Methods 0.000 claims description 198
- 238000007689 inspection Methods 0.000 claims description 167
- 239000011800 void material Substances 0.000 description 47
- 238000005259 measurement Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 8
- 230000010354 integration Effects 0.000 description 7
- 239000013256 coordination polymer Substances 0.000 description 5
- 239000000126 substance Substances 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 102100033040 Carbonic anhydrase 12 Human genes 0.000 description 1
- 241000257465 Echinoidea Species 0.000 description 1
- 101000867855 Homo sapiens Carbonic anhydrase 12 Proteins 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010894 electron beam technology Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/302—Contactless testing
- G01R31/308—Contactless testing using non-ionising electromagnetic radiation, e.g. optical radiation
- G01R31/311—Contactless testing using non-ionising electromagnetic radiation, e.g. optical radiation of integrated circuits
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L22/00—Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
- H01L22/10—Measuring as part of the manufacturing process
- H01L22/12—Measuring as part of the manufacturing process for structural parameters, e.g. thickness, line width, refractive index, temperature, warp, bond strength, defects, optical inspection, electrical measurement of structural dimensions, metallurgic measurement of diffusions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Electromagnetism (AREA)
- Toxicology (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Multi Processors (AREA)
Abstract
に実行できる外観検査装置及び外観検査方法を提供す
る。 【解決手段】検査対象物の外観の画像データを格納する
メモリ14と、このメモリ14に格納された画像データ
を独立に処理してメモリ14に格納する手順が記述され
たスレッドを生成するスレッド生成手段と、このスレッ
ド生成手段で生成された複数のスレッドの少なくとも一
部を並列して実行する複数のCPU10〜13、とを備
えている。
Description
を処理することにより外観検査を行う外観検査装置及び
外観検査方法に関し、特に画像データを並列に処理する
技術に関する。
により得られた画像データを用いて該ICの外観を検査
する外観検査装置が知られている。このような外観検査
装置として、例えば、特開平11−259434号公報
は、「並列データ処理装置とそれを用いた外観検査装
置」(以下、「第1先行技術」という)を開示してい
る。この外観検査装置では、駆動信号バスからの同期パ
ルスによって駆動されるデータ入力部は、画像データを
入力してデータバスを介して転送する。処理分配部とプ
ロセッサエレメントは、駆動信号バスの状態を監視し、
同期パルスのパルス期間に、これらの間で通信バスを介
して通信を行う。
態を監視しており、同期パルスのパルス期間に、その次
にデータ入力部から転送される単位画像データを処理す
るプロセッサエレメントを決定する。この決定を受けた
プロセッサエレメントはデータバスから単位画像データ
を取り込んで処理し、また、このパルス期間に、処理分
配部に処理中であることを通知する。処理が終わると、
次の同期パルス期間に、待機中であることを処理分配部
に通知する。上記の構成により、各プロセッサエレメン
トの稼働率を高めることができるので、特に画像データ
等の大量に連続入力されるデータの高速処理が可能にな
る。
は、「並列画像処理プロセッサを備えた荷電子ビーム装
置」(以下、「第2先行技術」という)を開示してい
る。この装置では、画像処理部に、データ転送を制御す
る1つのマスタCPUとデータの演算処理を行う複数の
スレーブCPUとから構成される並列画像処理プロセッ
サが付加されている。画像処理のための演算プログラム
は、制御用計算機よりマスタCPU及びスレーブCPU
へダウンロードされる。並列画像処理プロセッサの数を
可変にし、処理の内容に応じて事前に最適な並列CPU
の数を求める。また、処理する画像データの分割方法を
画像処理の種類や処理内容に応じて可変にする。この装
置によれば、基本的な画像処理のみならず高度な演算を
必要とする画像処理をも高速に実行することができる。
は、「画像処理装置および画像処理方法」(以下、「第
3先行技術」という)を開示している。この第3先行技
術では、画像データの分割領域データが複数の分割入力
手段に入力され、入力された分割領域データ各々に対し
て、分割領域毎に独立に処理可能な画像処理がパイプラ
イン処理により実行され、このパイプライン処理の結果
が統合される。
より行われる。即ち、第1統合処理部は、パイプライン
に指示を与えて処理を開始させる。また、パイプライン
から出力された処理済みの部分画像データを受け取り、
位置合わせを行って全体の画像データを作成し、画像記
憶部へ記憶する。
を参照する必要がある画像処理のために、複数の画像処
理部とこれらを制御する第2統合処理部を備えている。
この第2統合処理部は、複数の画像処理部で処理された
結果を統合し、画像記憶部へ記憶する。これら分割領域
毎に独立に行う画像処理と広い領域を参照する画像処理
とを任意の順序で実行することにより高速な画像処理が
達成される。
では、画像データが入力される都度、分配処理部がエレ
メントプロセッサを割り当てるので割り当てのためのオ
ーバーヘッドが大きく処理の高速化に限界がある。ま
た、詳細は開示されていないが、各エレメントプロセッ
サで処理された結果を統合するための処理が必要なこと
が予想される。
行技術と同様に、マスタCPUの制御の下にスレーブC
PUが順次割り当てられ、各スレーブCPUによって画
像データが並列処理される。従って、この第2先行技術
も上述した第1先行技術と同様の問題を含んでいる。
び第2統合処理部によって画像処理の開始や処理済みの
画像データの統合等が行われるのでオーバーヘッドが大
きく画像処理の高速化に限界がある。また、分割領域毎
の画像処理を行う部分と広い領域を参照する画像処理を
行う部分といった2種類が必要があるので、画像処理装
置の構成が複雑且つ大規模になる。
るにも拘わらず外観検査を高速に実行できる外観検査装
置及び外観検査方法を提供することを目的とする。
る外観検査装置は、上記目的を達成するために、検査対
象物の外観の画像データを格納するメモリと、前記メモ
リに格納された画像データを独立に処理して前記メモリ
に格納する手順が記述されたスレッドを生成するスレッ
ド生成手段と、前記スレッド生成手段で生成された複数
のスレッドの少なくとも一部を並列して実行する複数の
CPU、とを備えている。
メモリに格納された画像データを独立に処理するための
複数のスレッドが複数のCPUでそれぞれ実行される。
ここで、独立に処理するとは、各スレッドが自己完結的
に処理すること、換言すれば、自己が保有している情報
に従って処理し、その処理結果を自己が保有している情
報に従った位置に書き込んで処理を完結することをい
う。従って、従来の画像処理装置のように、外部から与
えられる情報に応答して処理し、その処理結果を外部で
更に統合する必要はない。その結果、外観検査装置の構
成が簡単になり、しかも処理の高速化を図れる。
の前記スレッド生成手段は、前記メモリに記憶された画
像データ上に設定された1つの検査領域が分割されるこ
とにより得られるn個(nは2以上の整数)の領域の画
像データをそれぞれ処理する手順が記述されたnの整数
倍個のスレッドを生成し、前記複数のCPUは、前記ス
レッド生成手段で生成された少なくとも前記n個のスレ
ッドを並列して実行する、ように構成できる。
の前記スレッド生成手段は、前記メモリに記憶された画
像データ上に設定された1つの検査領域が分割されるこ
とにより得られるn個(nは2以上の整数)の領域の画
像データをそれぞれ処理する手順が記述されたnの整数
倍個のスレッドと、前記n個の領域の画像データを一括
して処理する手順が記述されたm個(mは正の整数)の
スレッドとを生成し、前記複数のCPUは、前記スレッ
ド生成手段で生成された少なくとも前記n個のスレッド
を並列して実行し、前記複数のCPUの何れかは前記ス
レッド生成手段で生成された前記m個のスレッドを単独
で実行する、ように構成できる。
類又は前記検査領域のサイズに基づいて決定するように
構成できる。また、前記n及びmは、該n及びmの任意
の組合せの下で前記複数のCPUに処理させた時間を実
測した結果に基づいて決定するように構成できる。ま
た、前記n個のスレッドの各々には、所定種類の画像処
理と他の種類の画像処理とを続けて実行する手順が記述
するように構成できる。
の前記スレッド生成手段は、前記メモリに記憶された画
像データ上に設定されたn個(nは2以上の整数)の検
査領域の画像データをそれぞれ処理する手順が記述され
た少なくともn個のスレッドを生成し、前記複数のCP
Uは、前記スレッド生成手段で生成された前記n個のス
レッドを並列して実行する、ように構成できる。
方法は、上記と同様の目的で、検査対象物の外観の画像
データをメモリに格納し、該メモリに格納された画像デ
ータを独立に処理して前記メモリに格納する手順が記述
されたスレッドを生成し、該生成された複数のスレッド
の少なくとも一部を並列して実行する、ように構成ささ
れている。
る前記スレッドを生成するステップでは、前記メモリに
記憶された画像データ上に設定された1つの検査領域が
分割されることにより得られるn個(nは2以上の整
数)の領域の画像データをそれぞれ処理する手順が記述
されたnの整数倍個のスレッドを生成し、前記実行する
ステップでは、前記生成された少なくとも前記n個のス
レッドを並列して実行する、ように構成できる。
における前記スレッドを生成するステップでは、前記メ
モリに記憶された画像データ上に設定された1つの検査
領域が分割されることにより得られるn個(nは2以上
の整数)の領域の画像データをそれぞれ処理する手順が
記述されたnの整数倍個のスレッドと、前記n個の領域
の画像データを一括して処理する手順が記述されたm個
(mは正の整数)のスレッドとを生成し、前記実行する
ステップでは、前記生成された少なくとも前記n個のス
レッドは並列して実行され、前記生成された前記m個の
スレッドを単独で実行される、ように構成できる。
類又は前記検査領域のサイズに基づいて決定できる。ま
た、前記n及びmは、該n及びmの任意の組合せの下で
行われた処理の時間を実測した結果に基づいて決定でき
る。更に、前記n個のスレッドの各々には、所定種類の
画像処理と他の種類の画像処理とを続けて実行する手順
を記述するように構成できる。
における前記スレッドを生成するステップでは、前記メ
モリに記憶された画像データ上に設定されたn個(nは
2以上の整数)の検査領域の画像データをそれぞれ処理
する手順が記述された少なくともn個のスレッドを生成
し、前記実行するステップでは、前記生成された前記n
個のスレッドを並列して実行する、ように構成できる。
面を参照しながら説明する。
観検査装置の概略構成を示すブロック図である。この外
観検査装置は、複数のCPUを有するパーソナルコンピ
ュータ、ワークステーション、サーバといった汎用のコ
ンピュータを利用して構成できる。この場合、コンピュ
ータを動作させるソフトウェアとして、例えばWind
owsNT(R)、Windows2000(R)、U
NIX(登録商標)といったマルチスレッド対応のオペ
レーティングシステム(OS)を使用できる。
2CPU11、第3CPU12、第4CPU13、メモ
リ14、ハードディスク装置15、表示部16及びデー
タ入力部18といった構成要素がシステムバス20に接
続されることにより構成されている。システムバス20
は、上記各構成要素間のデータ転送を行うために使用さ
れる。また、上記表示部16にはディスプレイ装置17
が接続されており、データ入力部18にはカメラ19が
接続されている。
PU12及び第4CPU13の各々は、OSの制御の下
で、独立して同時動作する。これら第1CPU10、第
2CPU11、第3CPU12及び第4CPU13は、
OSから渡される、スレッドと呼ばれる小さなプログラ
ムモジュールに従って動作する。なお、このOSは、単
にスレッドをCPUに渡す制御を行うだけであり、従来
技術の欄で説明した分配処理部、マスタCPU、統合処
理部のように、各CPUに処理内容を指示したり、各C
PUによる処理結果を統合して全体の画像データを作成
する作業は行わない。
PU12及び第4CPU13は、それぞれメモリ10
a、11a、12a及び13aを備えている。これらの
メモリ10a、11a、12a及び13aの各々は、上
述したスレッドを格納する。
順、つまりプログラムが記述されている。第1CPU1
0、第2CPU11、第3CPU12及び第4CPU1
3は、メモリ10a、11a、12a及び13aに格納
されたスレッドに従って画像処理をそれぞれ実行する。
例えば、第1CPU10〜第4CPU13の各々は、メ
モリ14から画像データを読み出し、読み出した画像デ
ータに所定の処理を施し、処理結果をメモリ14に格納
するという動作を並行して実行する。
部18を介して入力される画像データ、この画像データ
を処理した結果等を記憶する。このメモリ14の具体的
な使用方法は後述する。
外観検査装置の全体を制御するためのプログラム、外観
検査に使用される検査データを記憶する。このハードデ
ィスク装置15から読み出されたプログラムが実行され
ることによりスレッドが生成され、第1CPU10、第
2CPU11、第3CPU12及び第4CPU13のメ
モリ10a、11a、12a及び13aにそれぞれ転送
される。
する。このディスプレイ装置17は、例えばカメラ19
から得られた画像データに基づくICの外観の画像や処
理結果を表すメッセージ等を表示する。
に使用される。このカメラ19は、例えばCCDカメラ
で構成することができる。このカメラ19でICの外観
を撮像することにより得られたアナログ画像データは、
データ入力部18に供給される。
ナログ画像データを、例えば256階調の画素の集まり
から成るデジタル画像データ(以下、単に「画像デー
タ」という)に変換する。このデータ入力部18で得ら
れたデジタル画像データは、例えば図示しないDMAユ
ニットの制御の下に、システムバス20を介してメモリ
14に転送される。
ICパッケージを形成するモールドにボイドが存在する
かどうかを検査するボイド検査、リードに異物が付着し
ていないことを検査するリード間異物検査、リードが異
形であるかどうかを検査するリード検査、モールドの異
形が存在するかどうかを検査するモールド検査、捺印が
正常であるかどうかを検査する捺印検査といった種々の
検査に使用される。
置の動作を説明する。
外観検査装置では、画像データ上に設定された1つの検
査領域が4つに分割され、各領域の画像データを4個の
CPUで並行して処理する。以下では、ボイド検査を行
う場合を例に挙げて説明する。
タ入力部18及びシステムバス20を経由してメモリ1
4に格納された画像データを2値化する「2値化処
理」、2値化された画像データを反転する「反転処
理」、反転された画像データの面積を計測する「面積計
測処理」、及び計測された面積を合計してボイドの有無
を判定する「検査判定処理」が順次行われる。
レッドが生成される。図2は、メモリ14に格納される
ICの画像データのイメージを示す。ボイド検査では、
この画像データのパッケージ部分にボイド検査領域が設
定される。そして、設定されたボイド検査領域は、第1
領域、第2領域、第3領域及び第4領域といった4つの
領域に分割される。そして、各領域の画像データを処理
するためのスレッドが生成される。
ドの一例を示す。各スレッドは、コマンド及びアドレス
を含む。コマンドは、実行すべき画像処理の内容を指示
する。アドレスは、画像データのメモリ14上の位置を
指定する。このスレッドに保有するアドレスとしては、
処理すべき画像データが格納されているメモリ14の位
置を示す読み出しアドレスのみ、読み出しアドレスと処
理済みの画像データを格納すべきメモリ14の位置を示
す書き込みアドレスの両方、書き込みアドレスのみ、の
何れであってもよい。
保有する場合は、この読み出しアドレスとコマンドとに
基づいて書き込みアドレスが算出される。同様に、書き
込みアドレスのみをスレッドに保有する場合は、この書
き込みアドレスとコマンドとに基づいて読み出しアドレ
スが算出される。
データを2値化するための手順がそれぞれ記述されてい
る。スレッド5〜8には、第1〜4領域の2値化された
画像データを反転させるための手順がそれぞれ記述され
ている。スレッド9〜12には、第1〜4領域の反転さ
れた画像データの面積を計測するための手順が記述され
ている。スレッド13には、第1〜4領域の計測された
面積を合計してボイドの有無を判定するための手順が記
述されている。
OSによって第1CPU10、第2CPU11、第3C
PU12及び第4CPU13の何れかに順次割り当てら
れる。即ち、OSは空いているCPUのメモリにスレッ
ドを転送する。これにより、ボイド検査が開始される。
の図である。以下では、各スレッドは、アドレスとし
て、読み出しアドレス及び書き込みアドレスを保有して
いるものとする。また、カメラ19から取り込まれた画
像データは、メモリ14の原画記憶領域に記憶されてい
るものとする。
U11、第3CPU12及び第4CPU13は何れも空
き状態である。従って、OSは、スレッド1を第1CP
U10のメモリ10aに、スレッド2を第2CPU11
のメモリ11aに、スレッド3を第3CPU12のメモ
リ12aに、スレッド4を第4CPU13のメモリ13
aに、それぞれ転送する。
は、該スレッド1に記述された手順で処理を実行する。
即ち、メモリ14の原画記憶領域の読み出しアドレスで
指定された位置(第1領域の先頭に対応する位置)から
画像データA1を順次読み出して2値化する。即ち、読
み出した画像データを構成する各画素を、該画像データ
に好適なスレッショルドレベルでスライスし、以て
「0」又は「1」のデータに変換する。この2値化され
た画像データA2は、メモリ14の反転画像記憶領域の
書き込みアドレスで指定される位置(第1領域の先頭に
対応する位置)に順次格納される。
原画記憶領域の読み出しアドレスで指定された位置(第
2領域の先頭に対応する位置)から画像データB1を読
み出して2値化し、2値化された画像データB2を、メ
モリ14の反転画像記憶領域の書き込みアドレスで指定
される位置(第2領域の先頭に対応する位置)に格納す
る。第3CPU12及び第4CPU13についても同様
である。以上の第1CPU10、第2CPU11、第3
CPU12及び第4CPU13による2値化処理は並行
して実行される。各CPUが2値化処理を完了した時点
では、メモリ14の反転画像記憶領域に2値化された画
像データが格納されている。
PUから順次スレッド5、6、7及び8をそのCPUの
メモリに転送する。これにより、各CPUは反転処理を
開始する。今、第1CPU10→第2CPU11→第3
CPU12→第4CPUの順番で2値化処理が完了した
ものとすると、第1CPU10は、メモリ14の反転記
憶領域の読み出しアドレスで指定された位置(第1領域
の先頭に対応する位置)から画像データA2を順次読み
出して反転する。この反転された画像データA3は、メ
モリ14の領域別面積計測値記憶領域の書き込みアドレ
スで指定される位置(第1領域の先頭に対応する位置)
に順次格納される。
反転記憶領域の読み出しアドレスで指定された位置(第
2領域の先頭に対応する位置)から画像データB2を順
次読み出して反転し、反転された画像データB3を、メ
モリ14の領域別面積計測値記憶領域の書き込みアドレ
スで指定される位置(第2領域の先頭に対応する位置)
に格納する。第3CPU12及び第4CPU13につい
ても同様である。以上の第1CPU10、第2CPU1
1、第3CPU12及び第4CPU13による反転処理
は並行して実行される。各CPUが反転処理を完了した
時点では、メモリ14の領域別面積計測値記憶領域には
反転された画像データが格納されている。
Uから順次スレッド9、10、11及び12をそのCP
Uのメモリに転送する。これにより、各CPUは面積計
測処理を開始する。今、第1CPU10→第2CPU1
1→第3CPU12→第4CPUの順番で反転処理が完
了したものとすると、第1CPU10は、メモリ14の
領域別面積計測値記憶領域の読み出しアドレスで指定さ
れた位置(第1領域の先頭に対応する位置)から画像デ
ータA3を順次読み出して面積を計算する。この計算結
果は、メモリ14の面積合計領域の書き込みアドレスで
指定される位置に格納される。
領域別面積計測値記憶領域の読み出しアドレスで指定さ
れた位置(第2領域の先頭に対応する位置)から画像デ
ータB3を読み出して面積を計算する。この計算結果
は、メモリ14の面積合計領域の書き込みアドレスで指
定される位置に格納される。第3CPU12及び第4C
PU13についても同様である。以上の第1CPU1
0、第2CPU11、第3CPU12及び第4CPU1
3による面積計測処理は並行して実行される。各CPU
が面積計測処理を完了した時点では、メモリ14の面積
合計領域にはボイド検査領域の第1領域、第2領域、第
3領域及び第4領域の面積が格納されている。
と、次いで、OSは、第1CPU10、第2CPU1
1、第3CPU12及び第4CPU13の何れかを選択
し、選択されたCPUのメモリに、スレッド13を転送
する。これにより、選択されたCPUは、メモリ14の
面積合計領域の読み出しアドレスで指定された位置から
領域別面積計測値を読み出して合計し、予め設定されて
いる判定値と比較する。この比較の結果、面積の合計値
が判定値より大きければボイド不良であることを判断
し、その旨のメッセージをディスプレイ装置17に表示
する。以上により、ボイド検査を終了する。
0、第2CPU11、第3CPU12及び第4CPU1
3の性能が同等であり、且つ第1領域、第2領域、第3
領域及び第4領域のサイズが同じであれば、各CPUが
2値化処理、反転処理及び面積計測処理に要する時間は
同じである。従って、2値化処理、反転処理及び面積計
測処理に要する時間は、1台のCPUでこれらの処理を
行う場合の略1/4で済み画像処理の高速化が実現でき
る。
原画記憶領域の画像データ、反転画像記憶領域の画像デ
ータ及び領域別面積計測値記憶領域の画像データがそれ
ぞれ対応するように決定されるので、従来の画像処理装
置のように、各CPUで処理された画像データの位置合
わせといった統合処理を行う必要がない。その結果、処
理が簡単になると共に処理の高速化を図ることができ
る。
置は、汎用のコンピュータを利用し、このコンピュータ
を動作させるソフトウェアも市販のOSを使用できるの
で、装置を安価に構成できるという利点がある。
検査領域を4分割し、各領域毎に2値化処理、反転処理
及び面積計測処理をそれぞれ実行するスレッドを作成し
たが、これらの各処理では1つの画素に基づいて他の1
つの画素が作成されるので、2値化処理、反転処理及び
面積計測処理を連続して実行するようなスレッドを領域
毎に作成し、これを複数のCPUで並列して処理させる
ように構成することもできる。
検査領域を4つの領域に分割し、各領域に1台のCPU
を対応させて合計4台のCPUで画像処理を行う構成と
したが、上記ボイド検査領域の分割数及びCPUの数は
「4」に限定されず任意に決定できる。
ッド生成時に、当該外観検査装置に搭載されているCP
Uの数を取得し、処理毎にCPUの数の分のスレッドを
生成するように構成できる。この構成によれば、搭載さ
れているCPUの数が異なるコンピュータを外観検査装
置として利用した場合であっても、1つのソフトウェア
でスレッドを生成することが可能になるので、CPUの
数毎にソフトウェアを作成しなくてもよいという利点が
ある。
検査を行う場合を例に挙げて説明したが、ボイド検査に
限らず、その他の種々の外観検査にも適用できることは
勿論である。
る外観検査装置を説明する。上述した実施の形態1に係
る外観検査装置では、2値化処理、反転処理及び面積計
測処理といった全ての処理を複数のスレッドで並列して
実行するように構成したが、この実施の形態2に係る外
観検査装置では、上記複数の処理の中の特定の処理を単
一のスレッドで実行するように構成されている。
理では、先ず、ボイド検査領域のサイズが算出される。
そして、この算出されたサイズが予め決められた設定値
αより大きいかどうかが調べられる。そして、設定値α
より大きいことが判断されると、実施の形態1で説明し
たと同様に、ボイド検査領域を4つに分割し、図3に示
すように、2値化処理、反転処理及び面積計測処理は各
領域の画像データ毎に実行し、検査判定処理は単一のス
レッドで実行するように13個のスレッドが生成され
る。
設定値α以下であることが判断されると、図5(A)に
示すように、2値化処理及び反転処理は各領域の画像デ
ータ毎に実行し、面積計測処理及び検査判定処理は単一
のスレッドで実行するように9個のスレッドが生成され
る。そして、このようにして生成された9個のスレッド
は、実施の形態1で説明したと同様の手順で実行され
る。
れば、ボイド検査領域のサイズが決められた設定値α以
下であれば、面積計測処理を4つのスレッドで実行し、
その後検査判定処理を1つのスレッドで実行するより
も、面積計測処理及び検査判定処理を1つのスレッドで
実行するほうが処理時間が短くて済むので、全体として
外観検査時間を短縮できる。
数の処理の中の特定の処理を単一のスレッドで実行する
ように構成されているが、全ての処理を単一のスレッド
で実行するように変形することができる。
は、ボイド検査時に実行されるスレッド生成処理では、
先ず、ボイド検査領域のサイズが算出される。そして、
この算出されたサイズが予め決められた設定値βより大
きいかどうかが調べられる。そして、設定値βより大き
いことが判断されると、実施の形態1で説明したと同様
に、ボイド検査領域を4つに分割し、図3に示すよう
に、2値化処理、反転処理及び面積計測処理は各領域の
画像データ毎に実行し、検査判定処理は単一のスレッド
で実行するように13個のスレッドが生成される。
設定値β以下であることが判断されると、図5(B)に
示すように、2値化処理、反転処理、面積計測処理及び
検査判定処理の全てを単一のスレッドで実行するように
1個のスレッドが生成される。そして、このようにして
生成された1個のスレッドは、実施の形態1で説明した
と同様の手順で実行される。
ボイド検査領域のサイズが決められた設定値β以下であ
れば、全ての処理を1つのスレッドで実行するほうが最
も処理時間が短くて済むので、外観検査時間を高速に行
うできる。この変形例に係る外観検査装置は、小さなサ
イズのボイド検査領域が複数存在する場合に有効であ
る。
ド検査領域のサイズが設定値αより大きい場合は、実施
の形態1で説明したと同様に、ボイド検査領域を4つに
分割し、2値化処理、反転処理及び面積計測処理は各領
域の画像データ毎に実行し、検査判定処理は単一のスレ
ッドで実行するように13個のスレッドを生成し、ボイ
ド検査領域のサイズが設定値α以下で設定値βより大き
い(α>β)場合は、2値化処理及び反転処理は各領域
の画像データ毎に実行し、面積計測処理及び検査判定処
理は単一のスレッドで実行するように9個のスレッドを
生成し、ボイド検査領域のサイズが設定値β以下である
場合は、2値化処理、反転処理、面積計測処理及び検査
判定処理の全てを単一のスレッドで実行するように1個
のスレッドを生成するように構成できる。
査時に、ボイド検査領域のサイズが予め決められた設定
値より大きいかどうかを調べることにより、生成すべき
スレッドを決定しているが、最も短時間で外観検査を行
うことができるスレッドの組合せを予め実測し、検査デ
ータとしてハードディスク装置15に格納しておくよう
に構成することもできる。
及び4つのスレッドを用いて実行し、その実行時間が計
測される。次いで、その所定の処理を1台のCPU及び
1つのスレッドを用いて実行し、その実行時間が計測さ
れる。そして、これらを比較し、当該所定の処理を行う
場合のCPU及びスレッド数が決定されて、検査データ
としてハードディスク装置15に格納される。この検査
データは、上記所定の処理が実行される際にハードディ
スク装置15から読み出され、スレッド生成時に参照さ
れる。
ド生成処理では、実測により最も短時間で外観検査を行
うことができることが実証されているスレッドが生成さ
れるので、外観検査を最も短時間で行うことができる。
転処理、面積計測処理及び検査判定処理の各々であって
もよいし、これらの処理の幾つかを組み合わせた処理で
あってもよいし、これらの全ての処理であってもよい。
要は、これらの中から外観検査を最も短時間で行うこと
ができるケースを見出し、検査データを作成すればよ
い。
外観検査装置は、例えばヒストグラム処理、投影処理と
いった並列処理が困難な処理を行う場合に、検査領域が
複数存在すれば各領域を1つのスレッドで処理するよう
に構成されている。
Cの画像データのイメージを示す。ボイド検査では、実
施の形態1及び2で説明したように、ICのパッケージ
部分にボイド検査領域が設定される。
に、各辺毎に第1〜第4リード間異物検査領域が設定さ
れる。そして、第1〜第4リード間異物検査領域に対応
する4つのスレッドが生成される。各スレッドには、リ
ード間異物検査を行うための手順がそれぞれ記述されて
いる。
は、OSによって第1CPU10、第2CPU11、第
3CPU12及び第4CPU13にそれぞれ割り当てら
れる。即ち、OSは空いているCPUのメモリにスレッ
ドを転送する。これにより、リード間異物検査が開始さ
れる。このリード間異物検査の詳細は、例えば特開平7
−128249号公報(特許第2500649号)に説
明されている。
容は、リード間異物検査領域を複数に分割して複数のC
PUで並列処理することが難しい内容である。そこで、
上述したように、ICの4つの辺のそれぞれにリード間
異物検査領域を設定し、4台のCPUでリード間異物検
査を行うことにより、CPUの使用効率を高めることが
できると共に、処理の高速化を実現できる。
に、各リードの先端部に、第1〜第100リード検査領
域が設定される。そして、第1〜第100リード検査領
域毎に100個のスレッドが生成される。各スレッドに
は、リード検査を行うための手順がそれぞれ記述されて
いる。
ッドは、OSによって第1CPU10、第2CPU1
1、第3CPU12及び第4CPU13に順次割り当て
られる。即ち、OSは空いているCPUのメモリにスレ
ッドを順次転送する。これにより、リード検査が開始さ
れる。このリード検査は、例えば、リード先端部の画像
をテンプレート画像として、各リード先端部に設けられ
たリード検査領域をサーチし、以てリード座標を検出す
る方法により行われる。
域のサイズは非常に小さい。従って、リード検査領域を
複数に分割して複数のCPUで並列処理すると処理時間
が却って増加することがある。そこで、各リードの先端
部にリード検査領域を設定し、4台のCPUで合計10
0のリード検査を順次行うことにより、CPUの使用効
率を高めることができると共に、処理の高速化を実現で
きる。
て複数のCPUで処理することが難しい処理として、例
えば、画像の全体又は一部を回転させる回転処理があ
る。この回転処理では、画像データの全体を参照する必
要があるが、読み出しアドレスと書き込みアドレスとを
指定する方法、読み出しアドレスのみを指定する方法、
書き込みアドレスのみを指定する方法の何れかを用いる
ことで、複数のCPUによる並列処理を実現することが
できる。
右90度回転する場合を例に挙げて図7を参照しながら
説明する。なお、図7では、説明を簡単にするために4
行×4列の16画素の画像データを右90度回転させる
例を示しているが、本実施の形態で取り扱うことのでき
る画素数は上記に限定されず任意である。
は、原画記憶領域又は回転画像記憶領域の行又は列毎に
スレッドが生成される。以下、アドレスの指定方法毎に
回転処理の動作を説明する。
び書込アドレスの双方がスレッドに保有される場合の動
作を、図7(A)を参照しながら説明する。この場合、
原画記憶領域のY4行処理用のスレッド1、Y3行処理
用のスレッド2、Y2行処理用のスレッド3及びY1行
処理用のスレッド4といった4個のスレッドが生成され
る。
アドレスは原画記憶領域の座標(X1、Y4)のアドレ
スであり、書き込みアドレスは回転画像記憶領域の座標
(X4、Y4)のアドレスである。また、スレッド2に
保有される読み出しアドレスは原画記憶領域の座標(X
1、Y3)のアドレスであり、書き込みアドレスは回転
画像記憶領域の座標(X3、Y4)のアドレスである。
スレッド3及び4に保有される読み出しアドレス及び書
込アドレスも上記と同様の規則によって決められる。
4は、OSによって第1CPU10、第2CPU11、
第3CPU12及び第4CPU13の何れかに割り当て
られる。即ち、OSは空いているCPUのメモリにスレ
ッドを転送する。これにより、4台のCPUで同時に回
転処理が開始される。以下では、スレッド1、2、3及
び4が第1CPU10、第2CPU11、第3CPU1
2及び第4CPU13にそれぞれ割り当てられたと仮定
する。
は、該スレッド1に記述された手順で処理を実行する。
即ち、メモリ14の原画記憶領域の読み出しアドレスで
指定された位置、即ち座標(X1、Y4)から画像デー
タB1が読み出され、回転画像記憶領域の書き込みアド
レスで指定された位置、即ち座標(X4、Y4)に書き
込まれる。以下、原画記憶領域の座標(X2、Y4)か
ら読み出された画像データB2が回転画像記憶領域の座
標(X4、Y3)に、原画記憶領域の座標(X3、Y
4)から読み出された画像データB3が回転画像記憶領
域の座標(X4、Y2)に、原画記憶領域の座標(X
4、Y4)から読み出された画像データB4が回転画像
記憶領域の座標(X4、Y1)に、順次書き込まれる。
11は、該スレッド2に記述された手順で処理を実行す
る。即ち、メモリ14の原画記憶領域の読み出しアドレ
スで指定された位置、即ち座標(X1、Y3)から画像
データが読み出され、回転画像記憶領域の書き込みアド
レスで指定された位置、即ち座標(X3、Y4)に書き
込まれる。以下、原画記憶領域の座標(X2、Y3)か
ら読み出された画像データが回転画像記憶領域の座標
(X3、Y3)に、原画記憶領域の座標(X3、Y3)
から読み出された画像データが回転画像記憶領域の座標
(X3、Y2)に、原画記憶領域の座標(X4、Y3)
から読み出された画像データが回転画像記憶領域の座標
(X3、Y1)に、順次書き込まれる。スレッド3を受
け取った第3CPU12及びスレッド4を受け取った第
4CPU13の動作も上記と同様である。
みがスレッドに保有されている場合の動作を図7(B)
を参照しながら説明する。この場合、原画記憶領域のY
4行処理用のスレッド1、Y3行処理用のスレッド2、
Y2行処理用のスレッド3及びY1行処理用のスレッド
4といった4個のスレッドが生成される。
アドレスは原画記憶領域の座標(X1、Y4)のアドレ
スであり、スレッド2に保有される読み出しアドレスは
原画記憶領域の座標(X1、Y3)のアドレスであり、
スレッド3に保有される読み出しアドレスは原画記憶領
域の座標(X1、Y2)のアドレスであり、スレッド4
に保有される読み出しアドレスは原画記憶領域の座標
(X1、Y1)のアドレスである。
1〜4が、上記と同様に、OSによって第1CPU1
0、第2CPU11、第3CPU12及び第4CPU1
3の何れかに割り当てられたと仮定する。
は、該スレッド1に記述された手順で処理を実行する。
ここでは、先ず書き込みアドレスが算出される。即ち、
メモリ14の原画記憶領域の座標(X1、Y4)を90
度右回転させた場合の座標は座標(X4、Y4)である
ことが算出され、回転画像記憶領域の座標(X4、Y
4)のアドレスが書き込みアドレスとして算出される。
次いで、メモリ14の原画記憶領域の読み出しアドレス
で指定された位置、即ち座標(X1、Y4)から画像デ
ータB1が読み出され、回転画像記憶領域の、算出され
た書き込みアドレスで指定された位置、即ち座標(X
4、Y4)に書き込まれる。以下同様にして、原画記憶
領域の座標(X2、Y4)から読み出された画像データ
B2が回転画像記憶領域の座標(X4、Y3)に、原画
記憶領域の座標(X3、Y4)から読み出された画像デ
ータB3が回転画像記憶領域の座標(X4、Y2)に、
原画記憶領域の座標(X4、Y4)から読み出された画
像データB4が回転画像記憶領域の座標(X4、Y1)
に、順次書き込まれる。
11は、該スレッド2に記述された手順で処理を実行す
る。ここでは、先ず書き込みアドレスが算出される。即
ち、メモリ14の原画記憶領域の座標(X1、Y3)を
90度右回転させた場合の座標は座標(X3、Y4)で
あることが算出され、回転画像記憶領域の座標(X3、
Y4)のアドレスが書き込みアドレスとして算出され
る。次いで、メモリ14の原画記憶領域の読み出しアド
レスで指定された位置、即ち座標(X1、Y3)から画
像データが読み出され、回転画像記憶領域の、算出され
た書き込みアドレスで指定された位置、即ち座標(X
3、Y4)に書き込まれる。以下同様にして、原画記憶
領域の座標(X2、Y3)から読み出された画像データ
が回転画像記憶領域の座標(X3、Y3)に、原画記憶
領域の座標(X3、Y3)から読み出された画像データ
が回転画像記憶領域の座標(X3、Y2)に、原画記憶
領域の座標(X4、Y3)から読み出された画像データ
が回転画像記憶領域の座標(X3、Y1)に、順次書き
込まれる。スレッド3を受け取った第3CPU12及び
スレッド4を受け取った第4CPU13の動作も上記と
同様である。
みがスレッドに保有されている場合の動作を図7(C)
を参照しながら説明する。この場合、回転画像記憶領域
のY4行処理用のスレッド1、Y3行処理用のスレッド
2、Y2行処理用のスレッド3及びY1行処理用のスレ
ッド4といった4個のスレッドが生成される。
ドレスは回転画像記憶領域の座標(X1、Y4)のアド
レスであり、スレッド2に保有される書き込みアドレス
は回転画像記憶領域の座標(X1、Y3)のアドレスで
あり、スレッド3に保有される書き込みアドレスは回転
画像記憶領域の座標(X1、Y2)のアドレスであり、
スレッド4に保有される書き込みアドレスは回転画像記
憶領域の座標(X1、Y1)のアドレスである。
1〜4が、上記と同様に、OSによって第1CPU1
0、第2CPU11、第3CPU12及び第4CPU1
3の何れかに割り当てられたと仮定する。
は、該スレッド1に記述された手順で処理を実行する。
ここでは、先ず読み出しアドレスが算出される。即ち、
メモリ14の回転画像記憶領域の座標(X1、Y4)を
90度左回転させた場合の座標は座標(X1、Y1)で
あることが算出され、原画記憶領域の座標(X1、Y
1)のアドレスが読み出しアドレスとして算出される。
次いで、メモリ14の原画記憶領域の、算出された読み
出しアドレスで指定された位置、即ち座標(X1、Y
1)から画像データB1が読み出され、回転画像記憶領
域の書き込みアドレスで指定された位置、即ち座標(X
1、Y4)に書き込まれる。以下同様にして、原画記憶
領域の座標(X1、Y2)から読み出された画像データ
B2が回転画像記憶領域の座標(X2、Y4)に、原画
記憶領域の座標(X1、Y3)から読み出された画像デ
ータB3が回転画像記憶領域の座標(X3、Y4)に、
原画記憶領域の座標(X1、Y4)から読み出された画
像データB4が回転画像記憶領域の座標(X4、Y4)
に、順次書き込まれる。
11は、該スレッド2に記述された手順で処理を実行す
る。ここでは、先ず読み出しアドレスが算出される。即
ち、メモリ14の回転画像記憶領域の座標(X1、Y
3)を90度左回転させた場合の座標は座標(X2、Y
1)であることが算出され、原画記憶領域の座標(X
2、Y1)のアドレスが読み出しアドレスとして算出さ
れる。次いで、メモリ14の原画記憶領域の、算出され
た読み出しアドレスで指定された位置、即ち座標(X
2、Y1)から画像データが読み出され、回転画像記憶
領域の書き込みアドレスで指定された位置、即ち座標
(X1、Y3)に書き込まれる。以下同様にして、原画
記憶領域の座標(X2、Y2)から読み出された画像デ
ータが回転画像記憶領域の座標(X2、Y3)に、原画
記憶領域の座標(X2、Y3)から読み出された画像デ
ータが回転画像記憶領域の座標(X3、Y3)に、原画
記憶領域の座標(X2、Y4)から読み出された画像デ
ータが回転画像記憶領域の座標(X4、Y3)に、順次
書き込まれる。スレッド3を受け取った第3CPU12
及びスレッド4を受け取った第4CPU13の動作も上
記と同様である。
ば、画像データの全体を参照する必要がある処理であっ
ても、複数のCPU(スレッド)で並行して処理を行う
ことができるので、処理の高速化を図ることができる。
また、上述した第3先行技術のような、画像全体を参照
する処理のための統合処理部を別途設ける必要がないの
で外観検査装置の構成を簡単且つ安価に構成できる。
した実施の形態1〜3の処理が連続して実行される。こ
の外観検査装置の全体的な処理の流れを図8に示す。
数が決定される(ステップS10)。このCPUの数
は、予め決められた固定値を用いるように構成してもよ
いし、ユーザが任意の値を入力するように構成してもよ
いし、プログラムによって当該外観検査装置に搭載され
ているCPUの数を自動的に取得するように構成しても
よい。
データが読み込まれる(ステップS11)。次いで、カ
メラ19から画像データが取り込まれる(ステップS1
2)。そして、上記検査データと画像データとに基づい
てボイド検査用のスレッドが生成される(ステップS1
3)。即ち、実施の形態1及び2で説明したように、ボ
イド検査を実行するための13個のスレッドが生成され
る。ここで生成されたスレッドは、OSの制御の下に、
第1CPU10、第2CPU11、第3CPU12及び
第4CPU13に送られる。これにより、ボイド検査が
実行される。
基づいてリード間異物検査用のスレッドが生成される
(ステップS14)。即ち、実施の形態3で説明したよ
うに、リード間異物検査を実行するための4個のスレッ
ドが生成される。ここで生成されたスレッドは、OSの
制御の下に、第1CPU10、第2CPU11、第3C
PU12及び第4CPU13に送られる。これにより、
リード間異物検査が実行される。
基づいてリード検査用のスレッドが生成される(ステッ
プS15)。即ち、実施の形態3で説明したように、リ
ード検査を実行するための400個のスレッドが生成さ
れる。ここで生成されたスレッドは、OSの制御の下
に、第1CPU10、第2CPU11、第3CPU12
及び第4CPU13に送られる。これにより、リード検
査が実行される。
ード間異物検査及びリード検査の各結果が出力される
(ステップS16)。その後、シーケンスはステップS
12に戻り、次のICに対する外観検査が実行される。
係る外観検査装置は、画像データを記憶するメモリとし
て唯一のメモリを備えており、全てのCPUがこのメモ
リにアクセスするように構成されている。この構成によ
り、従来のように複数のCPUの各々に対応して設けら
れた複数のメモリに、画像データを分割して格納する必
要がない。その結果、画像データを分割する処理が不要
になるので、処理速度が向上する。また、複数のメモリ
を設ける必要がないので、外観検査装置を簡単且つ安価
に構成できる。
は、OSにより割り当てられたスレッドを処理するだけ
で全体の処理が完了するので、従来の技術の欄で説明し
たような、処理分配部、マスタCPU、統合管理部とい
ったシステム全体を管理するための構成要素は不要であ
る。その結果、その構成要素が動作するための時間も不
要になるので外観検査装置の高速化が可能であり、ま
た、外観検査装置を簡単且つ安価に構成できる。
高速に画像を処理できる外観検査装置及び外観検査方法
を提供できる。
の概略構成を示すブロック図である。
置において、メモリに格納されるICの画像データのイ
メージを示す図である。
いて、ボイド検査用に生成されるスレッドの一例を示す
図である。
けるボイド検査の動作を説明するための図である。
いて、ボイド検査用に生成されるスレッドの一例を示す
図である。
いて、メモリに格納されるICの画像データのイメージ
を示す図である。
いて、回転処理の動作を説明するための図である。
にける全体的な処理の流れを示すフローチャートであ
る。
Claims (14)
- 【請求項1】 検査対象物の外観の画像データを格納す
るメモリと、 前記メモリに格納された画像データを独立に処理して前
記メモリに格納する手順が記述されたスレッドを生成す
るスレッド生成手段と、 前記スレッド生成手段で生成された複数のスレッドの少
なくとも一部を並列して実行する複数のCPU、とを備
えた外観検査装置。 - 【請求項2】 前記スレッド生成手段は、前記メモリに
記憶された画像データ上に設定された1つの検査領域が
分割されることにより得られるn個(nは2以上の整
数)の領域の画像データをそれぞれ処理する手順が記述
されたnの整数倍個のスレッドを生成し、 前記複数のCPUは、前記スレッド生成手段で生成され
た少なくとも前記n個のスレッドを並列して実行する、
請求項1に記載の外観検査装置。 - 【請求項3】 前記スレッド生成手段は、前記メモリに
記憶された画像データ上に設定された1つの検査領域が
分割されることにより得られるn個(nは2以上の整
数)の領域の画像データをそれぞれ処理する手順が記述
されたnの整数倍個のスレッドと、前記n個の領域の画
像データを一括して処理する手順が記述されたm個(m
は正の整数)のスレッドとを生成し、 前記複数のCPUは、前記スレッド生成手段で生成され
た少なくとも前記n個のスレッドを並列して実行し、前
記複数のCPUの何れかは前記スレッド生成手段で生成
された前記m個のスレッドを単独で実行する、請求項1
に記載の外観検査装置。 - 【請求項4】 前記n及びmは、画像処理の種類又は前
記検査領域のサイズに基づいて決定される請求項3に記
載の外観検査装置。 - 【請求項5】 前記n及びmは、該n及びmの任意の組
合せの下で前記複数のCPUに処理させた時間を実測し
た結果に基づいて決定される請求項3に記載の外観検査
装置。 - 【請求項6】 前記n個のスレッドの各々には、所定種
類の画像処理と他の種類の画像処理とを続けて実行する
手順が記述されている、請求項2又は3に記載の外観検
査装置。 - 【請求項7】 前記スレッド生成手段は、前記メモリに
記憶された画像データ上に設定されたn個(nは2以上
の整数)の検査領域の画像データをそれぞれ処理する手
順が記述された少なくともn個のスレッドを生成し、 前記複数のCPUは、前記スレッド生成手段で生成され
た前記n個のスレッドを並列して実行する、請求項1に
記載の外観検査装置。 - 【請求項8】 検査対象物の外観の画像データをメモリ
に格納し、 該メモリに格納された画像データを独立に処理して前記
メモリに格納する手順が記述されたスレッドを生成し、 該生成された複数のスレッドの少なくとも一部を並列し
て実行する、外観検査方法。 - 【請求項9】 前記スレッドを生成するステップでは、
前記メモリに記憶された画像データ上に設定された1つ
の検査領域が分割されることにより得られるn個(nは
2以上の整数)の領域の画像データをそれぞれ処理する
手順が記述されたnの整数倍個のスレッドを生成し、 前記実行するステップでは、前記生成された少なくとも
前記n個のスレッドを並列して実行する、請求項8に記
載の外観検査方法。 - 【請求項10】 前記スレッドを生成するステップで
は、前記メモリに記憶された画像データ上に設定された
1つの検査領域が分割されることにより得られるn個
(nは2以上の整数)の領域の画像データをそれぞれ処
理する手順が記述されたnの整数倍個のスレッドと、前
記n個の領域の画像データを一括して処理する手順が記
述されたm個(mは正の整数)のスレッドとを生成し、 前記実行するステップでは、前記生成された少なくとも
前記n個のスレッドは並列して実行され、前記生成され
た前記m個のスレッドを単独で実行される、請求項8に
記載の外観検査方法。 - 【請求項11】 前記n及びmは、画像処理の種類又は
前記検査領域のサイズに基づいて決定される請求項10
に記載の外観検査方法。 - 【請求項12】 前記n及びmは、該n及びmの任意の
組合せの下で行われた処理の時間を実測した結果に基づ
いて決定される請求項10に記載の外観検査方法。 - 【請求項13】 前記n個のスレッドの各々には、所定
種類の画像処理と他の種類の画像処理とを続けて実行す
る手順が記述されている、請求項9又は10に記載の外
観検査方法。 - 【請求項14】 前記スレッドを生成するステップで
は、前記メモリに記憶された画像データ上に設定された
n個(nは2以上の整数)の検査領域の画像データをそ
れぞれ処理する手順が記述された少なくともn個のスレ
ッドを生成し、 前記実行するステップでは、前記生成された前記n個の
スレッドを並列して実行する、請求項8に記載の外観検
査方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000129041A JP4693074B2 (ja) | 2000-04-28 | 2000-04-28 | 外観検査装置及び外観検査方法 |
US09/841,096 US6987894B2 (en) | 2000-04-28 | 2001-04-25 | Appearance inspection apparatus and method in which plural threads are processed in parallel |
KR10-2001-0022894A KR100380909B1 (ko) | 2000-04-28 | 2001-04-27 | 외형 검사 장치 및 외형 검사 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000129041A JP4693074B2 (ja) | 2000-04-28 | 2000-04-28 | 外観検査装置及び外観検査方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001311692A true JP2001311692A (ja) | 2001-11-09 |
JP4693074B2 JP4693074B2 (ja) | 2011-06-01 |
Family
ID=18638377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000129041A Expired - Fee Related JP4693074B2 (ja) | 2000-04-28 | 2000-04-28 | 外観検査装置及び外観検査方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6987894B2 (ja) |
JP (1) | JP4693074B2 (ja) |
KR (1) | KR100380909B1 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008065815A (ja) * | 2006-08-08 | 2008-03-21 | Juki Corp | 画像処理装置 |
JP2009544105A (ja) * | 2006-07-17 | 2009-12-10 | コグネックス・テクノロジー・アンド・インベストメント・コーポレーション | 多重シンボルデコーディングのための方法及び装置 |
KR101088588B1 (ko) | 2010-12-03 | 2011-12-06 | 삼성전자주식회사 | 멀티 칩 패키지 테스트 장치 및 테스트 방법 |
JP2016119111A (ja) * | 2016-01-21 | 2016-06-30 | 国立大学法人 東京大学 | 並列データ処理システム、計算機および並列データ処理方法 |
JP2016177716A (ja) * | 2015-03-23 | 2016-10-06 | 横河電機株式会社 | 冗長化pcシステム |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7963448B2 (en) | 2004-12-22 | 2011-06-21 | Cognex Technology And Investment Corporation | Hand held machine vision method and apparatus |
US9552506B1 (en) | 2004-12-23 | 2017-01-24 | Cognex Technology And Investment Llc | Method and apparatus for industrial identification mark verification |
KR100740250B1 (ko) * | 2005-12-26 | 2007-07-18 | (주) 인텍플러스 | 비전 검사 시스템 및 그를 이용한 검사 방법 |
US8108176B2 (en) | 2006-06-29 | 2012-01-31 | Cognex Corporation | Method and apparatus for verifying two dimensional mark quality |
CA2640884C (en) * | 2006-07-20 | 2010-02-23 | Optosecurity Inc. | Methods and systems for use in security screening, with parallel processing capability |
US8169478B2 (en) | 2006-12-14 | 2012-05-01 | Cognex Corporation | Method and apparatus for calibrating a mark verifier |
US8462369B2 (en) * | 2007-04-23 | 2013-06-11 | International Business Machines Corporation | Hybrid image processing system for a single field of view having a plurality of inspection threads |
US8675219B2 (en) * | 2007-10-24 | 2014-03-18 | International Business Machines Corporation | High bandwidth image processing with run time library function offload via task distribution to special purpose engines |
US9734376B2 (en) | 2007-11-13 | 2017-08-15 | Cognex Corporation | System and method for reading patterns using multiple image frames |
US20090132582A1 (en) * | 2007-11-15 | 2009-05-21 | Kim Moon J | Processor-server hybrid system for processing data |
US9135073B2 (en) | 2007-11-15 | 2015-09-15 | International Business Machines Corporation | Server-processor hybrid system for processing data |
US9332074B2 (en) * | 2007-12-06 | 2016-05-03 | International Business Machines Corporation | Memory to memory communication and storage for hybrid systems |
US20090150556A1 (en) * | 2007-12-06 | 2009-06-11 | Kim Moon J | Memory to storage communication for hybrid systems |
US8553040B2 (en) | 2009-06-30 | 2013-10-08 | Apple Inc. | Fingerprinting of fragment shaders and use of same to perform shader concatenation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0616855U (ja) * | 1992-08-06 | 1994-03-04 | 株式会社エルム | マルチcpuラインセンサコントローラ |
JP2000047995A (ja) * | 1998-07-28 | 2000-02-18 | Hitachi Ltd | 並列処理方法及び装置、並びにそれを用いた外観検査装置 |
JP2000047887A (ja) * | 1998-07-30 | 2000-02-18 | Toshiba Corp | 投機的マルチスレッド処理方法および投機的マルチスレッド処理装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5293481A (en) * | 1987-02-18 | 1994-03-08 | Canon Kabushiki Kaisha | Data parallel processing apparatus |
US5179702A (en) * | 1989-12-29 | 1993-01-12 | Supercomputer Systems Limited Partnership | System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling |
JP2500649B2 (ja) | 1993-11-04 | 1996-05-29 | 日本電気株式会社 | Ic異物検査装置 |
JP3231571B2 (ja) * | 1994-12-20 | 2001-11-26 | 日本電気株式会社 | 順序付きマルチスレッド実行方法とその実行装置 |
US5936224A (en) * | 1996-12-11 | 1999-08-10 | Intermec Ip Corporation | Method and apparatus for reading machine-readable symbols by employing a combination of multiple operators and/or processors |
JP2836617B2 (ja) * | 1997-03-12 | 1998-12-14 | 株式会社日立製作所 | レンダリングプロセッサ |
JPH10304184A (ja) | 1997-05-02 | 1998-11-13 | Fuji Xerox Co Ltd | 画像処理装置および画像処理方法 |
JP3581242B2 (ja) | 1997-10-30 | 2004-10-27 | 株式会社日立製作所 | 並列画像処理プロセッサを備えた荷電粒子ビーム装置 |
JP3893210B2 (ja) | 1998-03-13 | 2007-03-14 | 株式会社日立製作所 | 並列データ処理装置とそれを用いた外観検査装置 |
US6272437B1 (en) * | 1998-04-17 | 2001-08-07 | Cae Inc. | Method and apparatus for improved inspection and classification of attributes of a workpiece |
JPH11328383A (ja) * | 1998-05-20 | 1999-11-30 | Hitachi Ltd | 画像処理装置 |
US6728419B1 (en) * | 2000-02-17 | 2004-04-27 | Xerox Corporation | Multi-tasking multi-threaded image processing system and method for image capture devices |
-
2000
- 2000-04-28 JP JP2000129041A patent/JP4693074B2/ja not_active Expired - Fee Related
-
2001
- 2001-04-25 US US09/841,096 patent/US6987894B2/en not_active Expired - Fee Related
- 2001-04-27 KR KR10-2001-0022894A patent/KR100380909B1/ko not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0616855U (ja) * | 1992-08-06 | 1994-03-04 | 株式会社エルム | マルチcpuラインセンサコントローラ |
JP2000047995A (ja) * | 1998-07-28 | 2000-02-18 | Hitachi Ltd | 並列処理方法及び装置、並びにそれを用いた外観検査装置 |
JP2000047887A (ja) * | 1998-07-30 | 2000-02-18 | Toshiba Corp | 投機的マルチスレッド処理方法および投機的マルチスレッド処理装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009544105A (ja) * | 2006-07-17 | 2009-12-10 | コグネックス・テクノロジー・アンド・インベストメント・コーポレーション | 多重シンボルデコーディングのための方法及び装置 |
JP2008065815A (ja) * | 2006-08-08 | 2008-03-21 | Juki Corp | 画像処理装置 |
KR101088588B1 (ko) | 2010-12-03 | 2011-12-06 | 삼성전자주식회사 | 멀티 칩 패키지 테스트 장치 및 테스트 방법 |
JP2016177716A (ja) * | 2015-03-23 | 2016-10-06 | 横河電機株式会社 | 冗長化pcシステム |
US10268484B2 (en) | 2015-03-23 | 2019-04-23 | Yokogawa Electric Corporation | Redundant PC system |
JP2016119111A (ja) * | 2016-01-21 | 2016-06-30 | 国立大学法人 東京大学 | 並列データ処理システム、計算機および並列データ処理方法 |
Also Published As
Publication number | Publication date |
---|---|
US6987894B2 (en) | 2006-01-17 |
JP4693074B2 (ja) | 2011-06-01 |
US20010042065A1 (en) | 2001-11-15 |
KR20010098929A (ko) | 2001-11-08 |
KR100380909B1 (ko) | 2003-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001311692A (ja) | 外観検査装置及び外観検査方法 | |
CN102648449B (zh) | 一种用于处理干扰事件的方法和图形处理单元 | |
US8144167B2 (en) | Monitoring graphics processing | |
US9996386B2 (en) | Mid-thread pre-emption with software assisted context switch | |
KR102356705B1 (ko) | 커널 퓨징, 리사이징 및 인터리빙 자동 연산 방법 | |
US9164931B2 (en) | Clamping of dynamic capacitance for graphics | |
US8212825B1 (en) | System and method for geometry shading | |
US7760205B2 (en) | Information processing apparatus for efficient image processing | |
US11243795B2 (en) | CPU overcommit with guest idle polling | |
JPH03139777A (ja) | グラフイツク表示システム及び方法 | |
US20060164419A1 (en) | Image drawing device and image drawing method | |
US20240045787A1 (en) | Code inspection method under weak memory ordering architecture and corresponding device | |
US7199799B2 (en) | Interleaving of pixels for low power programmable processor | |
US7644214B2 (en) | Information processing apparatus and task execution method | |
US20060061579A1 (en) | Information processing apparatus for efficient image processing | |
JP2013506898A (ja) | 複数の入力/出力コントローラと補助演算ユニットとを備えるマルチプロセッサアーキテクチャにおけるソフトウェアアプリケーションの実行を最適化するための方法および装置 | |
CN107148619B (zh) | 用于多线程图形流水线的自由排序线程模型 | |
GB2527088A (en) | Executing debug program instructions on a target apparatus processing pipeline | |
US12019498B2 (en) | Core off sleep mode with low exit latency | |
JP2009086789A (ja) | 並列型画像処理装置 | |
CN113010281A (zh) | 多相机检测系统的线程处理方法、装置、存储介质和终端 | |
JP2002278753A (ja) | データ処理システム | |
JP2001051674A (ja) | 描画処理装置及び描画処理方法 | |
CN113360192A (zh) | 热缓存识别方法、装置、存储介质及电子设备 | |
EP1246068A2 (en) | System and method for monitoring data, computer program and data storage therefore |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091001 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100610 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100809 |
|
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: 20110218 |
|
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: 20110218 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140304 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |