JPH09288568A - 画像処理装置およびその実行フロー作成方法 - Google Patents
画像処理装置およびその実行フロー作成方法Info
- Publication number
- JPH09288568A JPH09288568A JP12775196A JP12775196A JPH09288568A JP H09288568 A JPH09288568 A JP H09288568A JP 12775196 A JP12775196 A JP 12775196A JP 12775196 A JP12775196 A JP 12775196A JP H09288568 A JPH09288568 A JP H09288568A
- Authority
- JP
- Japan
- Prior art keywords
- execution flow
- symbol
- displayed
- image processing
- 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.)
- Pending
Links
Landscapes
- Processing Or Creating Images (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】
【課題】対象物や求める結果に応じた適正な処理方法を
1台で選択することができる画像処理装置を提供する。 【解決手段】フレームメモリ11はTVカメラ3により
撮像された画像を格納する。フラッシュメモリ13には
フレームメモリ11に格納された画像に施す一連の画像
処理を処理単位として、複数種類の処理単位が格納され
ている。CPU10は、RAM12に格納された実行フ
ローに従って各処理単位を用いながらフレームメモリ1
1に格納された画像に画像処理を施す。実行フローは別
途に設けた実行フロー作成装置から通信用インタフェー
ス14を介して転送される。
1台で選択することができる画像処理装置を提供する。 【解決手段】フレームメモリ11はTVカメラ3により
撮像された画像を格納する。フラッシュメモリ13には
フレームメモリ11に格納された画像に施す一連の画像
処理を処理単位として、複数種類の処理単位が格納され
ている。CPU10は、RAM12に格納された実行フ
ローに従って各処理単位を用いながらフレームメモリ1
1に格納された画像に画像処理を施す。実行フローは別
途に設けた実行フロー作成装置から通信用インタフェー
ス14を介して転送される。
Description
【0001】
【発明の属する技術分野】本発明は、主として生産ライ
ンにおいて物体をTVカメラのような画像入力手段によ
り撮像して得た画像に基づいて、物体の形状、寸法、位
置を求めたり物体として撮像された物品の良否を判定し
たりする画像処理装置およびその実行フロー作成方法に
関するものである。
ンにおいて物体をTVカメラのような画像入力手段によ
り撮像して得た画像に基づいて、物体の形状、寸法、位
置を求めたり物体として撮像された物品の良否を判定し
たりする画像処理装置およびその実行フロー作成方法に
関するものである。
【0002】
【従来の技術】従来より提供されている画像処理装置に
は、入力された画像に基づいて画像内の対象物の形状を
認識するもの、寸法を測定するもの、位置を求めるも
の、対象物への異物の付着や対象物の欠けのような欠陥
を検出して良否を判定するものなどがある。これらの画
像処理装置には、単機能のものや機能の制限されたもの
が多い。
は、入力された画像に基づいて画像内の対象物の形状を
認識するもの、寸法を測定するもの、位置を求めるも
の、対象物への異物の付着や対象物の欠けのような欠陥
を検出して良否を判定するものなどがある。これらの画
像処理装置には、単機能のものや機能の制限されたもの
が多い。
【0003】ところで、画像処理装置の各段階で用いる
処理方法は同目的であっても種々の手順が提案されてい
る。たとえば、対象物と背景との境界になるエッジを検
索する処理として、濃淡画像を2値化した後の明暗の境
界線をエッジとする処理や、濃淡画像の空間微分により
微分値の極大値付近を細線化してエッジとする処理があ
り、どちらの処理を採用するかに応じてエッジの位置が
変化することがある。したがって、対象物や求めようと
する結果に応じて最適な処理方法を選択するのが望まし
いが、画像処理装置は上述のように単機能であったり機
能が制限されていたりするものであるから、必ずしも最
適な処理方法が選択されているとは言えないのが現状で
ある。このような現状で最適な処理方法を選択しようと
すれば、対象物や求める結果に応じた画像処理装置を用
意しなければならず、導入コストが大幅に増加すること
になる。
処理方法は同目的であっても種々の手順が提案されてい
る。たとえば、対象物と背景との境界になるエッジを検
索する処理として、濃淡画像を2値化した後の明暗の境
界線をエッジとする処理や、濃淡画像の空間微分により
微分値の極大値付近を細線化してエッジとする処理があ
り、どちらの処理を採用するかに応じてエッジの位置が
変化することがある。したがって、対象物や求めようと
する結果に応じて最適な処理方法を選択するのが望まし
いが、画像処理装置は上述のように単機能であったり機
能が制限されていたりするものであるから、必ずしも最
適な処理方法が選択されているとは言えないのが現状で
ある。このような現状で最適な処理方法を選択しようと
すれば、対象物や求める結果に応じた画像処理装置を用
意しなければならず、導入コストが大幅に増加すること
になる。
【0004】この種の問題を解決するには、画像処理装
置に外部から実行フローを与えることが考えられるが、
画像処理の実行フローをユーザが作成するのは容易では
なく、画像処理装置の機能をユーザが変更するのは困難
である。ところで、実行フローの作成を容易にする技術
として、特開平5−265733号公報に記載されてい
るように、ディスプレイ装置の画面上にフローチャート
を構成する図形を表示し、各図形に実行フローのコード
となるテキストを貼り付けることによってフローチャー
トを作成し、このフローチャートからテキストを取り出
してソース実行フローに変換し、ソース実行フローをイ
ンタプリタにより実行することが記載されている。フロ
ーチャートを構成する図形は、テキスト以外に、各図形
に大きさ、位置、他の図形との接続関係等を属性として
備える。このようなプログラミング方法を画像処理装置
の実行フローを作成する方法として採用すれば、実行フ
ローの作成が視覚化されて容易になると考えられる。
置に外部から実行フローを与えることが考えられるが、
画像処理の実行フローをユーザが作成するのは容易では
なく、画像処理装置の機能をユーザが変更するのは困難
である。ところで、実行フローの作成を容易にする技術
として、特開平5−265733号公報に記載されてい
るように、ディスプレイ装置の画面上にフローチャート
を構成する図形を表示し、各図形に実行フローのコード
となるテキストを貼り付けることによってフローチャー
トを作成し、このフローチャートからテキストを取り出
してソース実行フローに変換し、ソース実行フローをイ
ンタプリタにより実行することが記載されている。フロ
ーチャートを構成する図形は、テキスト以外に、各図形
に大きさ、位置、他の図形との接続関係等を属性として
備える。このようなプログラミング方法を画像処理装置
の実行フローを作成する方法として採用すれば、実行フ
ローの作成が視覚化されて容易になると考えられる。
【0005】
【発明が解決しようとする課題】しかしながら、上述し
たプログラミング方法では、フローチャートを構成する
各図形に実行フローをテキストとして貼り付けるから、
実行フローのすべてのコードを記述することになり、画
像処理の実行フローの困難さを解消するには至らない。
たプログラミング方法では、フローチャートを構成する
各図形に実行フローをテキストとして貼り付けるから、
実行フローのすべてのコードを記述することになり、画
像処理の実行フローの困難さを解消するには至らない。
【0006】本発明は上記問題点の解決を目的とするも
のであり、対象物や求める結果に応じた適正な処理方法
を1台で選択することができるようにした画像処理装置
を提供し、また画像処理装置の各種処理に応じた実行フ
ローを容易に作成することができるようにした画像処理
装置の実行フロー作成方法を提供しようとするものであ
る。
のであり、対象物や求める結果に応じた適正な処理方法
を1台で選択することができるようにした画像処理装置
を提供し、また画像処理装置の各種処理に応じた実行フ
ローを容易に作成することができるようにした画像処理
装置の実行フロー作成方法を提供しようとするものであ
る。
【0007】
【課題を解決するための手段】請求項1の発明は、画像
処理装置に関するものであって、入力された画像から特
定情報を抽出することにより画像内に含まれる対象物に
関する特定の性状を検出する画像処理装置において、入
力された画像を格納する画像記憶手段と、画像に施す一
連の処理を処理単位として複数種類の処理単位を格納し
た処理単位記憶手段と、処理単位記憶手段に格納された
処理単位を選択して用いるための手順を記述した実行フ
ローを格納する実行フロー記憶手段と、実行フロー記憶
手段に格納された実行フローに従って処理単位記憶手段
に格納された各処理単位を組み合わせて用いることによ
り画像記憶手段に格納された画像から対象物に関する特
定の性状を検出する処理手段と、処理手段による処理結
果を出力する出力手段とを備えるものである。
処理装置に関するものであって、入力された画像から特
定情報を抽出することにより画像内に含まれる対象物に
関する特定の性状を検出する画像処理装置において、入
力された画像を格納する画像記憶手段と、画像に施す一
連の処理を処理単位として複数種類の処理単位を格納し
た処理単位記憶手段と、処理単位記憶手段に格納された
処理単位を選択して用いるための手順を記述した実行フ
ローを格納する実行フロー記憶手段と、実行フロー記憶
手段に格納された実行フローに従って処理単位記憶手段
に格納された各処理単位を組み合わせて用いることによ
り画像記憶手段に格納された画像から対象物に関する特
定の性状を検出する処理手段と、処理手段による処理結
果を出力する出力手段とを備えるものである。
【0008】この構成によれば、処理単位記憶手段に複
数種類の処理単位を格納しており、処理手段では実行フ
ローに従って処理単位を組み合わせて用いることにより
画像記憶手段に格納された対象物に関する特定の性状を
検出するから、1台の装置を用いて多種類の画像処理が
可能になる。つまり、対象物や求める結果に応じた適正
な処理方法を1台で選択することができるのである。
数種類の処理単位を格納しており、処理手段では実行フ
ローに従って処理単位を組み合わせて用いることにより
画像記憶手段に格納された対象物に関する特定の性状を
検出するから、1台の装置を用いて多種類の画像処理が
可能になる。つまり、対象物や求める結果に応じた適正
な処理方法を1台で選択することができるのである。
【0009】請求項2の発明は、請求項の画像処理装置
で用いる実行フローを作成する方法であって、処理内容
を書き込むことができるフローチャート作成用の第1の
シンボル群と上記各処理単位をそれぞれ表す第2のシン
ボル群とをディスプレイ装置の画面上に設定したワーク
シートにノードとして配列するとともに各ノードを実行
順序に従ってリンクにより結合することによって実行フ
ローをフローチャートとして画面上に表示し、さらに各
処理単位に与える初期設定値およびノード間でのデータ
の受渡し情報を定義した後、第1のシンボル群およびデ
ータの受渡し情報を前記処理手段での実行が可能な形式
に変換するとともに第2のシンボル群を前記処理手段が
前記処理単位記憶手段から各処理単位を選択して用いる
形式に変換するのである。
で用いる実行フローを作成する方法であって、処理内容
を書き込むことができるフローチャート作成用の第1の
シンボル群と上記各処理単位をそれぞれ表す第2のシン
ボル群とをディスプレイ装置の画面上に設定したワーク
シートにノードとして配列するとともに各ノードを実行
順序に従ってリンクにより結合することによって実行フ
ローをフローチャートとして画面上に表示し、さらに各
処理単位に与える初期設定値およびノード間でのデータ
の受渡し情報を定義した後、第1のシンボル群およびデ
ータの受渡し情報を前記処理手段での実行が可能な形式
に変換するとともに第2のシンボル群を前記処理手段が
前記処理単位記憶手段から各処理単位を選択して用いる
形式に変換するのである。
【0010】この方法によれば、フローチャートを用い
ることによって実行フローを視覚化した形で記述するこ
とができ、しかも、各処理単位に初期設定値やデータの
受渡し情報を与えることができるから、実行フローの作
成作業が容易になるとともに、目的に応じた細かな条件
設定が可能になる。請求項3の発明は、請求項2の発明
において、第1のシンボル群をそれぞれ表すアイコン群
を配列した第1のパレットと、第2のシンボル群をそれ
ぞれ表すアイコン群を配列した第2のパレットとを備え
るパッケージウインドウを画面上に表示し、画面上に表
示したポインタを所望のアイコンの位置に合わせるとと
もに選択操作を行なうことによって、選択された第1ま
たは第2のシンボル群をワークシートに表示するのであ
る。
ることによって実行フローを視覚化した形で記述するこ
とができ、しかも、各処理単位に初期設定値やデータの
受渡し情報を与えることができるから、実行フローの作
成作業が容易になるとともに、目的に応じた細かな条件
設定が可能になる。請求項3の発明は、請求項2の発明
において、第1のシンボル群をそれぞれ表すアイコン群
を配列した第1のパレットと、第2のシンボル群をそれ
ぞれ表すアイコン群を配列した第2のパレットとを備え
るパッケージウインドウを画面上に表示し、画面上に表
示したポインタを所望のアイコンの位置に合わせるとと
もに選択操作を行なうことによって、選択された第1ま
たは第2のシンボル群をワークシートに表示するのであ
る。
【0011】この方法では、フローチャートを作成する
際に用いるシンボルをパッケージウインドウにあらかじ
め用意しているから、シンボルの選択のみでフローチャ
ートのノードを表記することができる。しかも、シンボ
ルの種類ごとに異なるパレットに分類されているから、
フローチャートの作成時に所望のシンボルを見つける作
業が容易になる。
際に用いるシンボルをパッケージウインドウにあらかじ
め用意しているから、シンボルの選択のみでフローチャ
ートのノードを表記することができる。しかも、シンボ
ルの種類ごとに異なるパレットに分類されているから、
フローチャートの作成時に所望のシンボルを見つける作
業が容易になる。
【0012】請求項4の発明は、請求項3の発明におい
て、第1のパレットと第2のパレットとがパッケージウ
インドウ内の同じ位置に択一的に表示されるとともに、
第1のパレットと第2のパレットとにはパッケージウイ
ンドウ内の異なる位置に表示されるタグがそれぞれ付設
され、いずれかのタグの位置にポインタを合わせるとと
もに選択操作を行なうことにより、第1のパレットと第
2のパレットとのうち選択されたほうがウインドウ内に
表示されるのである。
て、第1のパレットと第2のパレットとがパッケージウ
インドウ内の同じ位置に択一的に表示されるとともに、
第1のパレットと第2のパレットとにはパッケージウイ
ンドウ内の異なる位置に表示されるタグがそれぞれ付設
され、いずれかのタグの位置にポインタを合わせるとと
もに選択操作を行なうことにより、第1のパレットと第
2のパレットとのうち選択されたほうがウインドウ内に
表示されるのである。
【0013】この方法では、シンボルを分類して設けた
パレットをパッケージウインドウ内の同じ位置に選択的
に表示させるから、画面内でパッケージウインドウの占
有するスペースを小さくすることができ、フローチャー
トの画面上での表示領域を広くとることができる。つま
り、フローチャートを作成する作業スペースを広くとる
ことができる。
パレットをパッケージウインドウ内の同じ位置に選択的
に表示させるから、画面内でパッケージウインドウの占
有するスペースを小さくすることができ、フローチャー
トの画面上での表示領域を広くとることができる。つま
り、フローチャートを作成する作業スペースを広くとる
ことができる。
【0014】請求項5の発明は、請求項3の発明におい
て、パッケージウインドウ内のアイコンを選択すると、
第1のシンボル群は位置変更可能かつ寸法変更可能な選
択状態となってワークシートの定位置に表示されるとと
もに位置および寸法の変更後に選択状態を解除する操作
により位置および寸法が決定され、第2のシンボル群は
位置変更可能な選択状態となってワークシートの定位置
に表示されるとともに位置変更後に選択状態を解除する
操作により位置が決定されるのである。
て、パッケージウインドウ内のアイコンを選択すると、
第1のシンボル群は位置変更可能かつ寸法変更可能な選
択状態となってワークシートの定位置に表示されるとと
もに位置および寸法の変更後に選択状態を解除する操作
により位置および寸法が決定され、第2のシンボル群は
位置変更可能な選択状態となってワークシートの定位置
に表示されるとともに位置変更後に選択状態を解除する
操作により位置が決定されるのである。
【0015】この方法によれば、シンボルを所望位置に
配置し、またシンボルの大きさを適宜に変更することが
できるから、フローチャートを見やすく記述することが
できる。請求項6の発明は、請求項2の発明において、
ワークシートに表示されている複数のノードの間のリン
クによる結合を指示する接続ツールおよびノード間を結
合しているリンクの解除を指示する切断ツールを備える
ツールバーが画面上に表示され、接続ツールを選択した
後に結合すべき一対のノードを順次選択することにより
選択順が処理順となるように両ノード間をリンクで結合
し、切断ツールを選択した後にリンクを解除すべき一対
のノードを順次選択することにより両ノード間のリンク
を解除するのである。
配置し、またシンボルの大きさを適宜に変更することが
できるから、フローチャートを見やすく記述することが
できる。請求項6の発明は、請求項2の発明において、
ワークシートに表示されている複数のノードの間のリン
クによる結合を指示する接続ツールおよびノード間を結
合しているリンクの解除を指示する切断ツールを備える
ツールバーが画面上に表示され、接続ツールを選択した
後に結合すべき一対のノードを順次選択することにより
選択順が処理順となるように両ノード間をリンクで結合
し、切断ツールを選択した後にリンクを解除すべき一対
のノードを順次選択することにより両ノード間のリンク
を解除するのである。
【0016】この方法はノード間の実行順を決める方法
であって、接続ツールによりノード間の接続を指示して
いる状態で2つのノードを処理順に選択すれば自動的に
リンクで結合することができ、また、切断ツールにより
切断を指示している状態で2つのノードを選択すれば自
動的にリンクを解除することができるのである。つま
り、単なる選択操作のみで処理順を容易に指定すること
ができる。
であって、接続ツールによりノード間の接続を指示して
いる状態で2つのノードを処理順に選択すれば自動的に
リンクで結合することができ、また、切断ツールにより
切断を指示している状態で2つのノードを選択すれば自
動的にリンクを解除することができるのである。つま
り、単なる選択操作のみで処理順を容易に指定すること
ができる。
【0017】請求項7の発明は、請求項2の発明におい
て、各処理単位が初期設定値および外部から受渡される
データを入力値とするとともに処理結果のデータを外部
に受渡す出力値とし、ワークシート上に表示されている
複数個の第2のシンボル群のうちデータの受渡しが必要
な一対の第2のシンボルの一方をドラッグして他方に重
ねた状態でドロップすると設定ウインドウが画面上に表
示され、設定ウインドウは上記他方の第2のシンボルに
対応する処理単位に入力値を与える入力フィールドを備
えるとともに、上記一方の第2のシンボルに対応する処
理単位の出力値を上記他方の第2のシンボルに対応する
処理単位の入力値として受渡すように入力値と出力値と
の対応関係を設定する機能を有するのである。
て、各処理単位が初期設定値および外部から受渡される
データを入力値とするとともに処理結果のデータを外部
に受渡す出力値とし、ワークシート上に表示されている
複数個の第2のシンボル群のうちデータの受渡しが必要
な一対の第2のシンボルの一方をドラッグして他方に重
ねた状態でドロップすると設定ウインドウが画面上に表
示され、設定ウインドウは上記他方の第2のシンボルに
対応する処理単位に入力値を与える入力フィールドを備
えるとともに、上記一方の第2のシンボルに対応する処
理単位の出力値を上記他方の第2のシンボルに対応する
処理単位の入力値として受渡すように入力値と出力値と
の対応関係を設定する機能を有するのである。
【0018】この方法では、フローチャート上のシンボ
ルにドラッグドロップの操作を施すだけで、初期設定値
や入力値と出力値との受渡しの関係を設定する設定ウイ
ンドウを開くことができ、これらの情報の設定作業が容
易になる。請求項8の発明では、請求項2の発明におい
て、第1のシンボル群の各シンボルは、そのシンボルを
シンボルの外にドラッグした後に元の位置にドラッグ
し、元の位置に重ねた状態でドロップすると、そのシン
ボルに対応するテキストの入力を可能とする設定ウイン
ドウが画面上に表示され、第2のシンボル群のシンボル
は、そのシンボルをシンボルの外にドラッグした後に元
の位置にドラッグし、元の位置に重ねた状態でドロップ
すると、そのシンボルに対応する処理単位の変数名を定
義することができる設定ウインドウが画面上に表示され
るのである。
ルにドラッグドロップの操作を施すだけで、初期設定値
や入力値と出力値との受渡しの関係を設定する設定ウイ
ンドウを開くことができ、これらの情報の設定作業が容
易になる。請求項8の発明では、請求項2の発明におい
て、第1のシンボル群の各シンボルは、そのシンボルを
シンボルの外にドラッグした後に元の位置にドラッグ
し、元の位置に重ねた状態でドロップすると、そのシン
ボルに対応するテキストの入力を可能とする設定ウイン
ドウが画面上に表示され、第2のシンボル群のシンボル
は、そのシンボルをシンボルの外にドラッグした後に元
の位置にドラッグし、元の位置に重ねた状態でドロップ
すると、そのシンボルに対応する処理単位の変数名を定
義することができる設定ウインドウが画面上に表示され
るのである。
【0019】この方法では、フローチャート上のシンボ
ルにドラッグドロップの操作を施すだけで、変数名を定
義することができる設定ウインドウを開くことができる
から、フローチャートには多数の変数名を表示しておく
必要がなく、フローチャートが見やすくなる。請求項9
の発明は、請求項7の発明において、第2のシンボル群
の各シンボルの上辺に入力値の個数に応じた個数のマー
クを表示するとともに下辺に出力値の個数に応じた個数
のマークを表示し、入出力の対応関係が設定されている
シンボル間で入出力の対応関係が設定されているマーク
を結ぶ直線を画面上に表示するのである。
ルにドラッグドロップの操作を施すだけで、変数名を定
義することができる設定ウインドウを開くことができる
から、フローチャートには多数の変数名を表示しておく
必要がなく、フローチャートが見やすくなる。請求項9
の発明は、請求項7の発明において、第2のシンボル群
の各シンボルの上辺に入力値の個数に応じた個数のマー
クを表示するとともに下辺に出力値の個数に応じた個数
のマークを表示し、入出力の対応関係が設定されている
シンボル間で入出力の対応関係が設定されているマーク
を結ぶ直線を画面上に表示するのである。
【0020】この方法では、入力値や出力値の個数と関
係をマークおよび直線によって視覚的に知ることがで
き、データの受渡し情報の理解を補助することになる。
請求項10の発明は、請求項2の発明において、フロー
チャートから実行フローを作成するにあたり、各シンボ
ルのリンクを次のリンクがなくなるまで順次追跡すると
ともに各シンボルに対応付けた処理内容に基づいて実行
可能な形式に変換し、判断を示すシンボルについては真
となる分岐について次のリンクがなくなるまで追跡して
実行可能な形式に変換した後、偽となる分岐について次
のリンクがなくなるまで追跡して実行可能な形式に変換
するのである。
係をマークおよび直線によって視覚的に知ることがで
き、データの受渡し情報の理解を補助することになる。
請求項10の発明は、請求項2の発明において、フロー
チャートから実行フローを作成するにあたり、各シンボ
ルのリンクを次のリンクがなくなるまで順次追跡すると
ともに各シンボルに対応付けた処理内容に基づいて実行
可能な形式に変換し、判断を示すシンボルについては真
となる分岐について次のリンクがなくなるまで追跡して
実行可能な形式に変換した後、偽となる分岐について次
のリンクがなくなるまで追跡して実行可能な形式に変換
するのである。
【0021】この方法により、フローチャートから実行
可能な形式の実行フローに変換する作業が容易になり、
変換処理に複雑な処理を必要としないのである。請求項
11の発明は、請求項2の発明において、あらかじめ格
納されている画像を用いて変換後の実行フローをシミュ
レーションするのである。この方法では、フローチャー
トを用いて作成した実行フローの動作を画像処理装置に
転送する前に点検することができ、画像処理装置への実
行フローの転送回数を削減してデバッグ時の作業効率を
高めることができ、結果的に実行フローを作成するのに
要する時間を短くすることができる。
可能な形式の実行フローに変換する作業が容易になり、
変換処理に複雑な処理を必要としないのである。請求項
11の発明は、請求項2の発明において、あらかじめ格
納されている画像を用いて変換後の実行フローをシミュ
レーションするのである。この方法では、フローチャー
トを用いて作成した実行フローの動作を画像処理装置に
転送する前に点検することができ、画像処理装置への実
行フローの転送回数を削減してデバッグ時の作業効率を
高めることができ、結果的に実行フローを作成するのに
要する時間を短くすることができる。
【0022】請求項12の発明は、請求項2の発明にお
いて、実行フローが請求項1記載の画像処理装置とは別
に設けた実行フロー作成装置により作成されるととも
に、画像処理装置に対してデータ通信により転送され、
実行フローの転送時にはフローチャートに記述されたコ
メント文が除去されるのである。この方法では、画像処
理装置に転送される情報にコメント文が含まれないか
ら、画像処理装置に転送されるデータを比較的少なくす
ることができ、結果的に転送時間を短縮することができ
る。
いて、実行フローが請求項1記載の画像処理装置とは別
に設けた実行フロー作成装置により作成されるととも
に、画像処理装置に対してデータ通信により転送され、
実行フローの転送時にはフローチャートに記述されたコ
メント文が除去されるのである。この方法では、画像処
理装置に転送される情報にコメント文が含まれないか
ら、画像処理装置に転送されるデータを比較的少なくす
ることができ、結果的に転送時間を短縮することができ
る。
【0023】請求項13の発明は、請求項8の発明にお
いて、フローチャートから実行可能な形式への変換に際
して、第1のシンボル群のシンボルに対応して記述され
た処理内容から変数名を抽出するとともに、画像処理関
数の出力値に定義付けた変数名と比較し、両者の変数名
のうち不一致であるものを未定義の変数名として画面上
に表示するのである。
いて、フローチャートから実行可能な形式への変換に際
して、第1のシンボル群のシンボルに対応して記述され
た処理内容から変数名を抽出するとともに、画像処理関
数の出力値に定義付けた変数名と比較し、両者の変数名
のうち不一致であるものを未定義の変数名として画面上
に表示するのである。
【0024】この方法は、変数名が未定義であるときに
画面上に表示するから、未定義の変数を容易に確認する
ことができ、実行フローの作成時間の短縮につながる。
請求項14の発明は、請求項8の発明において、フロー
チャートを作成する際に、第1のシンボル群のシンボル
に対応して処理内容を記述すると、その処理内容から変
数名を抽出するとともに、画像処理関数の出力値に定義
付けた変数名と比較し、両者の変数名が不一致であると
きに、一致する変数名に修正されるまでフローチャート
の次段階の作成を禁止するのである。
画面上に表示するから、未定義の変数を容易に確認する
ことができ、実行フローの作成時間の短縮につながる。
請求項14の発明は、請求項8の発明において、フロー
チャートを作成する際に、第1のシンボル群のシンボル
に対応して処理内容を記述すると、その処理内容から変
数名を抽出するとともに、画像処理関数の出力値に定義
付けた変数名と比較し、両者の変数名が不一致であると
きに、一致する変数名に修正されるまでフローチャート
の次段階の作成を禁止するのである。
【0025】この方法では、フローチャートの作成中に
未定義の変数が知らされるから、フローチャートの間違
いを迅速に知ることができ、実行フローの作成時間を短
縮することができる。
未定義の変数が知らされるから、フローチャートの間違
いを迅速に知ることができ、実行フローの作成時間を短
縮することができる。
【0026】
【発明の実施の形態】本発明の第1の特徴は、画像処理
に用いる処理を単位化した処理単位が画像処理装置に多
種類用意され、ユーザはこれらの処理単位を必要に応じ
て選択し組み合わせることによって所望の画像処理を実
行することができるようにした点にある。以下では処理
単位を画像処理関数と呼ぶ。また、画像処理関数は、前
処理、エッジ検索処理、異物判定処理、位置認識処理、
ひび検出処理、欠け検出処理に分類されているものとす
る。エッジ検索処理、異物判定処理、位置認識処理、ひ
び検出処理、欠け検出処理にはそれぞれ複数種類の処理
方法が用意されており、各処理方法ごとに画像処理関数
が用意される。
に用いる処理を単位化した処理単位が画像処理装置に多
種類用意され、ユーザはこれらの処理単位を必要に応じ
て選択し組み合わせることによって所望の画像処理を実
行することができるようにした点にある。以下では処理
単位を画像処理関数と呼ぶ。また、画像処理関数は、前
処理、エッジ検索処理、異物判定処理、位置認識処理、
ひび検出処理、欠け検出処理に分類されているものとす
る。エッジ検索処理、異物判定処理、位置認識処理、ひ
び検出処理、欠け検出処理にはそれぞれ複数種類の処理
方法が用意されており、各処理方法ごとに画像処理関数
が用意される。
【0027】画像処理装置1は、図1に示すように、画
像入力手段としてのTVカメラ3によって物体を撮像し
て得た画像をA/D変換器4によりアナログ−デジタル
変換し、画像記憶手段としてのフレームメモリ11に格
納する。このフレームメモリ11に格納された画像に対
して各種処理が施されることによって、所望の情報を結
果として出力するのであり、出力結果はD/A変換器5
によりデジタル−アナログ変換された後に出力手段とし
てのCRTよりなるディスプレイ装置6に表示される。
ここに、図示していないが、出力手段としてプリンタな
どを付加してもよく、またキーボードやマウスのような
入力手段を付加してもよい。これらの出力手段や入力手
段を付加したり、外部機器に出力結果を引き渡して利用
することができるように入出力部7が設けられている。
像入力手段としてのTVカメラ3によって物体を撮像し
て得た画像をA/D変換器4によりアナログ−デジタル
変換し、画像記憶手段としてのフレームメモリ11に格
納する。このフレームメモリ11に格納された画像に対
して各種処理が施されることによって、所望の情報を結
果として出力するのであり、出力結果はD/A変換器5
によりデジタル−アナログ変換された後に出力手段とし
てのCRTよりなるディスプレイ装置6に表示される。
ここに、図示していないが、出力手段としてプリンタな
どを付加してもよく、またキーボードやマウスのような
入力手段を付加してもよい。これらの出力手段や入力手
段を付加したり、外部機器に出力結果を引き渡して利用
することができるように入出力部7が設けられている。
【0028】フレームメモリ11に格納された画像は、
実行フロー記憶手段であるRAM12に格納された実行
フローを実行する処理手段としてのCPU10により処
理されることにより、所望の情報が抽出されるのであ
る。つまり、CPU10がRAM12に格納された実行
フローを実行することによって、フレームメモリ11に
格納された画像から濃度分布や濃度勾配、ときには色な
どの特定情報を抽出加工し、TVカメラ3で撮像された
物体に対応する画像内の対象物に関して、形状、寸法、
位置、良否などの性状を検出するのである。
実行フロー記憶手段であるRAM12に格納された実行
フローを実行する処理手段としてのCPU10により処
理されることにより、所望の情報が抽出されるのであ
る。つまり、CPU10がRAM12に格納された実行
フローを実行することによって、フレームメモリ11に
格納された画像から濃度分布や濃度勾配、ときには色な
どの特定情報を抽出加工し、TVカメラ3で撮像された
物体に対応する画像内の対象物に関して、形状、寸法、
位置、良否などの性状を検出するのである。
【0029】ところで、画像処理装置1には多数個の画
像処理関数を格納するために処理単位記憶手段としての
フラッシュメモリ13が設けられている。フラッシュメ
モリ13は、無給電で画像処理関数を保持するが、必要
に応じて画像処理関数を更新することができるようにな
っている。さらに、RAM12に格納される実行フロー
は別に設けた実行フロー作成装置2から転送されるので
あって、実行フロー作成装置2を接続するための通信用
インタフェース14も画像処理装置1に設けられてい
る。CPU10、フレームメモリ11、RAM12、フ
ラッシュメモリ13、通信用インタフェース14、A/
D変換器4、D/A変換器5、入出力部7はバス8を介
して接続されている。
像処理関数を格納するために処理単位記憶手段としての
フラッシュメモリ13が設けられている。フラッシュメ
モリ13は、無給電で画像処理関数を保持するが、必要
に応じて画像処理関数を更新することができるようにな
っている。さらに、RAM12に格納される実行フロー
は別に設けた実行フロー作成装置2から転送されるので
あって、実行フロー作成装置2を接続するための通信用
インタフェース14も画像処理装置1に設けられてい
る。CPU10、フレームメモリ11、RAM12、フ
ラッシュメモリ13、通信用インタフェース14、A/
D変換器4、D/A変換器5、入出力部7はバス8を介
して接続されている。
【0030】画像処理装置1は上記構成を有し、RAM
12に格納された実行フローを実行するに際してフラッ
シュメモリ13に格納された画像処理関数を必要に応じ
て呼び出して利用する。つまり、多数の画像処理関数が
格納されているから、実行フロー中に画像処理関数の関
数名を記述し、その画像処理関数に必要な引き数を与え
ることによって画像処理関数を利用することができるの
である。言い換えると、フラッシュメモリ13は画像処
理関数に関するライブラリを格納しているのであり、実
行フロー側ではライブラリから必要な画像処理関数を呼
び出して利用すればよいのである。このようなライブラ
リに格納する画像処理関数の個数を増やせば、それだけ
画像処理装置1を多様な処理に用いることが可能にな
り、しかも、画像処理関数はあらかじめ与えられている
から、画像処理関数そのものをコーディングする必要が
なく、画像処理関数を利用する順序を指示し、画像処理
関数に与える引き数を定義し、画像処理関数として用意
されているもの以外の機能を実現する小規模の実行フロ
ーをコーディングする程度の簡単な作業を行なうだけ
で、画像処理用の実行フローを記述することができるの
である。
12に格納された実行フローを実行するに際してフラッ
シュメモリ13に格納された画像処理関数を必要に応じ
て呼び出して利用する。つまり、多数の画像処理関数が
格納されているから、実行フロー中に画像処理関数の関
数名を記述し、その画像処理関数に必要な引き数を与え
ることによって画像処理関数を利用することができるの
である。言い換えると、フラッシュメモリ13は画像処
理関数に関するライブラリを格納しているのであり、実
行フロー側ではライブラリから必要な画像処理関数を呼
び出して利用すればよいのである。このようなライブラ
リに格納する画像処理関数の個数を増やせば、それだけ
画像処理装置1を多様な処理に用いることが可能にな
り、しかも、画像処理関数はあらかじめ与えられている
から、画像処理関数そのものをコーディングする必要が
なく、画像処理関数を利用する順序を指示し、画像処理
関数に与える引き数を定義し、画像処理関数として用意
されているもの以外の機能を実現する小規模の実行フロ
ーをコーディングする程度の簡単な作業を行なうだけ
で、画像処理用の実行フローを記述することができるの
である。
【0031】上述したように、画像処理用の実行フロー
は、画像処理装置1とは別に設けた実行フロー作成装置
2を用いて作成される。このように実行フロー作成装置
2を画像処理装置1とは分離していることによって、画
像処理装置1に不必要な機能を持たせる必要がなく、画
像処理装置1の構成を比較的簡単なものにすることがで
きる。また、画像処理装置1の台数にかかわらず1台の
実行フロー作成装置2で画像処理用の実行フローを作成
することができるから、画像処理装置1ごとに実行フロ
ーの作成機能を持たせる場合よりもコストを低減するこ
とができる。
は、画像処理装置1とは別に設けた実行フロー作成装置
2を用いて作成される。このように実行フロー作成装置
2を画像処理装置1とは分離していることによって、画
像処理装置1に不必要な機能を持たせる必要がなく、画
像処理装置1の構成を比較的簡単なものにすることがで
きる。また、画像処理装置1の台数にかかわらず1台の
実行フロー作成装置2で画像処理用の実行フローを作成
することができるから、画像処理装置1ごとに実行フロ
ーの作成機能を持たせる場合よりもコストを低減するこ
とができる。
【0032】実行フロー作成装置2は、図2に示す構成
を備える。実行フロー作成装置2は、基本的にはコンピ
ュータ装置であって、マイクロプロセッサよりなるCP
U20、CPU20に命令を与える実行フローを格納す
るためのRAM21、入力手段としてのキーボード31
aやマウス31bを接続するためのキーボードインタフ
ェース22、出力手段としてのプリンタ32を接続する
ためのプリンタインタフェース23、CRTよりなるビ
ットマップ型のディスプレイ装置33への表示内容を格
納するVRAM24、記憶手段としてのフロッピディス
ク装置34やハードディスク装置35を接続するための
ディスクインタフェース25、画像処理装置1との間で
実行フローなをの情報を授受するための通信用インタフ
ェース26を備える。CPU20、RAM21、キーボ
ードインタフェース22、プリンタインタフェース2
3、VRAM24、ディスクインタフェース25、通信
用インタフェース26はバス9を介して接続されてい
る。ここに、マウス31bは必ずしも用いなくてもよ
く、キーボード31aのキー操作によってマウス31b
と同様の操作を可能としてもよい。また、マウス31b
以外のポインティングデバイス(トラックボール、ペン
タブレット、トラックパッド、ライトペンなど)を用い
ることも可能である。
を備える。実行フロー作成装置2は、基本的にはコンピ
ュータ装置であって、マイクロプロセッサよりなるCP
U20、CPU20に命令を与える実行フローを格納す
るためのRAM21、入力手段としてのキーボード31
aやマウス31bを接続するためのキーボードインタフ
ェース22、出力手段としてのプリンタ32を接続する
ためのプリンタインタフェース23、CRTよりなるビ
ットマップ型のディスプレイ装置33への表示内容を格
納するVRAM24、記憶手段としてのフロッピディス
ク装置34やハードディスク装置35を接続するための
ディスクインタフェース25、画像処理装置1との間で
実行フローなをの情報を授受するための通信用インタフ
ェース26を備える。CPU20、RAM21、キーボ
ードインタフェース22、プリンタインタフェース2
3、VRAM24、ディスクインタフェース25、通信
用インタフェース26はバス9を介して接続されてい
る。ここに、マウス31bは必ずしも用いなくてもよ
く、キーボード31aのキー操作によってマウス31b
と同様の操作を可能としてもよい。また、マウス31b
以外のポインティングデバイス(トラックボール、ペン
タブレット、トラックパッド、ライトペンなど)を用い
ることも可能である。
【0033】実行フロー作成装置2として動作するため
の実行フローはハードディスク装置35に格納されてお
り、装置の起動とともにRAM21に読み込まれる。ま
た、ハードディスク装置35には画像処理装置1のフラ
ッシュメモリ13に格納されている画像処理関数と同じ
画像処理関数のライブラリが設けられている。このオペ
レーティングシステムは、ハードディスク装置35に格
納されており実行フロー作成装置2の起動直後にRAM
21に読み込まれる。また、オペレーティングシステム
としてはマルチウインドウおよびグラフィックユーザイ
ンタフェース(以下ではGUIと略称する)を備えるも
のを用いる。マルチウインドウとは、複数のウインドウ
を画面上に表示するものであり、各ウインドウはフロー
ティングウインドウ(画面上で任意に移動させることが
できるウインドウ)として画面上に表示される。また、
ポインティングデバイスであるマウス31bには2ボタ
ン式のものを用いており、左ボタンの2回クリック(ダ
ブルクリック)は選択、左ボタンの1回クリックは選択
ないし決定、右ボタンの1回クリックは解除の機能に用
いられる。
の実行フローはハードディスク装置35に格納されてお
り、装置の起動とともにRAM21に読み込まれる。ま
た、ハードディスク装置35には画像処理装置1のフラ
ッシュメモリ13に格納されている画像処理関数と同じ
画像処理関数のライブラリが設けられている。このオペ
レーティングシステムは、ハードディスク装置35に格
納されており実行フロー作成装置2の起動直後にRAM
21に読み込まれる。また、オペレーティングシステム
としてはマルチウインドウおよびグラフィックユーザイ
ンタフェース(以下ではGUIと略称する)を備えるも
のを用いる。マルチウインドウとは、複数のウインドウ
を画面上に表示するものであり、各ウインドウはフロー
ティングウインドウ(画面上で任意に移動させることが
できるウインドウ)として画面上に表示される。また、
ポインティングデバイスであるマウス31bには2ボタ
ン式のものを用いており、左ボタンの2回クリック(ダ
ブルクリック)は選択、左ボタンの1回クリックは選択
ないし決定、右ボタンの1回クリックは解除の機能に用
いられる。
【0034】実行フロー作成装置2を用いたプログラミ
ング作業の手順は、図3に示すとおりであって、まずG
UIの環境を用いて、各種シンボルを配列し(S1)、
必要に応じてシンボルに処理内容を書き込む(S2)。
次に、各シンボルをノードとしてノード同士の接続関係
を表すリンクを設定する(S3)。その後、データの受
渡し情報を設定することによって(S4)、フローチャ
ートを完成させるのである(S5)。完成したフローチ
ャートは実行可能な形式に変換される(S6)。ここ
で、実行可能な形式とは、必ずしも機械語を意味せず、
インタープリタを用いて実行することができる形式であ
ってもよい。
ング作業の手順は、図3に示すとおりであって、まずG
UIの環境を用いて、各種シンボルを配列し(S1)、
必要に応じてシンボルに処理内容を書き込む(S2)。
次に、各シンボルをノードとしてノード同士の接続関係
を表すリンクを設定する(S3)。その後、データの受
渡し情報を設定することによって(S4)、フローチャ
ートを完成させるのである(S5)。完成したフローチ
ャートは実行可能な形式に変換される(S6)。ここ
で、実行可能な形式とは、必ずしも機械語を意味せず、
インタープリタを用いて実行することができる形式であ
ってもよい。
【0035】実行フローが作成されると、画像処理装置
1に引き渡す前にデバッグが行なわれる。デバッグに際
しては、実行フロー作成装置2にあらかじめ用意されて
いる画像を用いて実行フローを実行し、所望の結果が得
られるか否かを検証する。つまり、実行フロー作成装置
2において画像処理装置1のシミュレーションを行うの
である(S7)。シミュレーションに用いる画像は、画
像処理装置1で扱う対象物をTVカメラ3によりあらか
じめ撮像しハードディスク装置35に画像ファイルとし
て格納しておいたものを用いる。シミュレーションによ
って修正すべき箇所があれば(S8)、フローチャート
に修正を施して(S9)、実行可能な形式に再度変換す
る。デバッグが終了すれば、実行フローを画像処理装置
1に転送する(S10)。画像処理装置1に転送される
実行フローは、ステップS6で変換された実行フローか
ら画像処理関数のコードを除いたものになる。これは、
画像処理関数にも実行フロー作成装置2と同じライブラ
リを設けてあり、画像処理装置1に転送した実行フロー
に含まれる画像処理関数は画像処理装置1に設けたもの
を用いるからである。
1に引き渡す前にデバッグが行なわれる。デバッグに際
しては、実行フロー作成装置2にあらかじめ用意されて
いる画像を用いて実行フローを実行し、所望の結果が得
られるか否かを検証する。つまり、実行フロー作成装置
2において画像処理装置1のシミュレーションを行うの
である(S7)。シミュレーションに用いる画像は、画
像処理装置1で扱う対象物をTVカメラ3によりあらか
じめ撮像しハードディスク装置35に画像ファイルとし
て格納しておいたものを用いる。シミュレーションによ
って修正すべき箇所があれば(S8)、フローチャート
に修正を施して(S9)、実行可能な形式に再度変換す
る。デバッグが終了すれば、実行フローを画像処理装置
1に転送する(S10)。画像処理装置1に転送される
実行フローは、ステップS6で変換された実行フローか
ら画像処理関数のコードを除いたものになる。これは、
画像処理関数にも実行フロー作成装置2と同じライブラ
リを設けてあり、画像処理装置1に転送した実行フロー
に含まれる画像処理関数は画像処理装置1に設けたもの
を用いるからである。
【0036】次に、実行フロー作成装置2における実行
フローの作成方法について説明する。実行フロー作成装
置2は、上述のように、マルチウインドウをサポートす
るとともにGUIを備えており、各種の処理がアイコン
の形で画面上に表示されている。画面上には、図4に示
すように、フローチャートを記入するためのワークシー
ト41を備えるウインドウW1と、シンボルに対応する
アイコンを配列したパッケージウインドウW2との2個
のウインドウが表示される。
フローの作成方法について説明する。実行フロー作成装
置2は、上述のように、マルチウインドウをサポートす
るとともにGUIを備えており、各種の処理がアイコン
の形で画面上に表示されている。画面上には、図4に示
すように、フローチャートを記入するためのワークシー
ト41を備えるウインドウW1と、シンボルに対応する
アイコンを配列したパッケージウインドウW2との2個
のウインドウが表示される。
【0037】ワークシート41を備えるウインドウW1
の上辺には釦形のアイコンを左右に配列したツールバー
42が設けられており、ツールバー42には、フロッピ
ディスク装置34やハードディスク装置35へのフロー
チャートの格納を指示する保存ツール42a、フローチ
ャートのプリンタ32への出力を指示する印刷ツール4
2b、各シンボル間のリンクによる連結を指示する接続
ツール42c、各シンボル間のリンクの切離しを指示す
る切断ツール42d、文字の入力を可能にするコメント
ツール42e、画像処理装置1から実行フロー作成装置
2への画像の転送を指示する画像送信ツール42f、実
行フロー作成装置2から画像処理装置1への実行フロー
の転送を指示する転送ツール42gなどが配列されてい
る。他にもツールはあるが、本実施形態の説明に必要な
ツールのみを列挙している。また、各ツール42a〜4
2gは上述のように釦形に表示され、さらに図形や文字
を釦内に記述することによって各ツール42a〜42g
を選択したときの処理内容を表すようにしてある。ワー
クシート41を備えるウインドウW1の最上段はタイト
ルバー43には、フローチャートのタイトルおよび格納
場所が表示される。さらに、ウインドウW1の下片およ
び右片にはスクロールバー44a,44bが表示され、
スクロールバー44a,44bの操作によってワークシ
ート41の表示領域をスクロールすることができる。ス
クロールバー44a,44bは両端に矢印釦を備え、両
矢印釦の間にレバーを備えるGUIでは周知のものであ
り、矢印釦を押せばワークシート41内の画面を連続的
にスクロールさせることができ、レバーを操作すればワ
ークシート41内の画面を所望の位置まで一気に不連続
的にスクロールさせることができる。
の上辺には釦形のアイコンを左右に配列したツールバー
42が設けられており、ツールバー42には、フロッピ
ディスク装置34やハードディスク装置35へのフロー
チャートの格納を指示する保存ツール42a、フローチ
ャートのプリンタ32への出力を指示する印刷ツール4
2b、各シンボル間のリンクによる連結を指示する接続
ツール42c、各シンボル間のリンクの切離しを指示す
る切断ツール42d、文字の入力を可能にするコメント
ツール42e、画像処理装置1から実行フロー作成装置
2への画像の転送を指示する画像送信ツール42f、実
行フロー作成装置2から画像処理装置1への実行フロー
の転送を指示する転送ツール42gなどが配列されてい
る。他にもツールはあるが、本実施形態の説明に必要な
ツールのみを列挙している。また、各ツール42a〜4
2gは上述のように釦形に表示され、さらに図形や文字
を釦内に記述することによって各ツール42a〜42g
を選択したときの処理内容を表すようにしてある。ワー
クシート41を備えるウインドウW1の最上段はタイト
ルバー43には、フローチャートのタイトルおよび格納
場所が表示される。さらに、ウインドウW1の下片およ
び右片にはスクロールバー44a,44bが表示され、
スクロールバー44a,44bの操作によってワークシ
ート41の表示領域をスクロールすることができる。ス
クロールバー44a,44bは両端に矢印釦を備え、両
矢印釦の間にレバーを備えるGUIでは周知のものであ
り、矢印釦を押せばワークシート41内の画面を連続的
にスクロールさせることができ、レバーを操作すればワ
ークシート41内の画面を所望の位置まで一気に不連続
的にスクロールさせることができる。
【0038】一方、パッケージウインドウW2には、フ
ローチャートを作成するためのシンボルに対応付けた釦
形のアイコンを複数個ずつ配列してあるパレットP1〜
P8が表示される。パレットP1〜P8は複数枚(ここ
では8枚)設けられているが、互いに重なっているかの
ように画面上に表示され、いずれか1枚のみが画面上に
表示される。また、各パレットP1〜P8にはそれぞれ
タグ45が設けられており、タグ45は互いに重ならな
いように表示される。したがって、マウス31bを用い
てタグ45の位置にポインタ(矢印形のカーソル)を位
置合わせし、マウス31bをクリックする(つまり選択
操作する)と、そのタグ45に対応するパレットP1〜
P8が画面上に表示される。パレットP1〜P8には、
フローチャートの記述に普通に用いられるシンボルに対
応付けたアイコンを配列したパレットP1のほか、各画
像処理関数に対応付けたアイコンを機能ごとにまとめて
配列したパレットP2〜P8がある。つまり、パレット
P2〜P8は、画像の読込や2値化や微分のような前処
理を集めたもの、画像内の対象物のエッジを検出する各
種方法、対象物への異物の付着を検出する各種方法、対
象物の位置を検出する各種方法、対象物のひびを検出す
る各種方法、対象物の欠けを検出する各種方法、その他
の有用な方法にそれぞれ対応する画像処理関数をまとめ
てある。
ローチャートを作成するためのシンボルに対応付けた釦
形のアイコンを複数個ずつ配列してあるパレットP1〜
P8が表示される。パレットP1〜P8は複数枚(ここ
では8枚)設けられているが、互いに重なっているかの
ように画面上に表示され、いずれか1枚のみが画面上に
表示される。また、各パレットP1〜P8にはそれぞれ
タグ45が設けられており、タグ45は互いに重ならな
いように表示される。したがって、マウス31bを用い
てタグ45の位置にポインタ(矢印形のカーソル)を位
置合わせし、マウス31bをクリックする(つまり選択
操作する)と、そのタグ45に対応するパレットP1〜
P8が画面上に表示される。パレットP1〜P8には、
フローチャートの記述に普通に用いられるシンボルに対
応付けたアイコンを配列したパレットP1のほか、各画
像処理関数に対応付けたアイコンを機能ごとにまとめて
配列したパレットP2〜P8がある。つまり、パレット
P2〜P8は、画像の読込や2値化や微分のような前処
理を集めたもの、画像内の対象物のエッジを検出する各
種方法、対象物への異物の付着を検出する各種方法、対
象物の位置を検出する各種方法、対象物のひびを検出す
る各種方法、対象物の欠けを検出する各種方法、その他
の有用な方法にそれぞれ対応する画像処理関数をまとめ
てある。
【0039】図4に示すパレットP1に配列されたアイ
コンは、左から開始を示す端子、判断、演算(JIS規
格の「処理」に相当する)、初期化、入出力、表示、サ
ブルーチン呼出(JIS規格の「定義済み処理」に相当
する)、終了を示す端子、結合子を示している。ここ
に、開始と終了との端子はJIS規格では同形状である
が、本実施形態では終了の端子を開始の端子よりも小さ
いシンボルで表してある。パレットP1に並ぶアイコン
は、ポインタを位置合わせして選択操作をしたときに
(つまり、マウス31bによる矢印カーソルの位置合わ
せとクリック操作)、対応するシンボル51をワークシ
ート41の定位置(ワークシート41の中心位置)に表
示させる処理に対応付けてある。
コンは、左から開始を示す端子、判断、演算(JIS規
格の「処理」に相当する)、初期化、入出力、表示、サ
ブルーチン呼出(JIS規格の「定義済み処理」に相当
する)、終了を示す端子、結合子を示している。ここ
に、開始と終了との端子はJIS規格では同形状である
が、本実施形態では終了の端子を開始の端子よりも小さ
いシンボルで表してある。パレットP1に並ぶアイコン
は、ポインタを位置合わせして選択操作をしたときに
(つまり、マウス31bによる矢印カーソルの位置合わ
せとクリック操作)、対応するシンボル51をワークシ
ート41の定位置(ワークシート41の中心位置)に表
示させる処理に対応付けてある。
【0040】たとえば、開始の端子に対応するアイコン
を選択するものとすれば、図5に示すように、開始の端
子を示すシンボル51がワークシート41の中心位置に
表示される。この状態でシンボル51はワークシート4
1の上を移動可能であって、ワークシート41の所望位
置にポインタを移動させてマウス31bをクリックすれ
ば、ワークシート41に表示されている格子(グリッド
という)の格子点のうちクリックされた位置にもっとも
近い位置にシンボル51の基準位置を合わせるようにシ
ンボル51が移動する。ここに、シンボル51の基準位
置はシンボルの上端中央(図5に十字形52で表した位
置)としてある。このような操作によってシンボル51
の位置が確定する。
を選択するものとすれば、図5に示すように、開始の端
子を示すシンボル51がワークシート41の中心位置に
表示される。この状態でシンボル51はワークシート4
1の上を移動可能であって、ワークシート41の所望位
置にポインタを移動させてマウス31bをクリックすれ
ば、ワークシート41に表示されている格子(グリッド
という)の格子点のうちクリックされた位置にもっとも
近い位置にシンボル51の基準位置を合わせるようにシ
ンボル51が移動する。ここに、シンボル51の基準位
置はシンボルの上端中央(図5に十字形52で表した位
置)としてある。このような操作によってシンボル51
の位置が確定する。
【0041】シンボル51は移動だけではなく、寸法を
自由に変更することができる。寸法の変更の際にはシン
ボル51をクリックして選択状態にし、シンボル51が
選択状態となったときに表示されるハンドル53(図6
参照)をドラッグする(マウス31bの左ボタンを押し
ながらカーソルを移動させる操作すること)。シンボル
51は、形状にかかわりなくシンボル51の占める領域
として長方形状の領域を有しており、この長方形状の領
域の角部に正方形状のマークがハンドル53として表示
されるのである。
自由に変更することができる。寸法の変更の際にはシン
ボル51をクリックして選択状態にし、シンボル51が
選択状態となったときに表示されるハンドル53(図6
参照)をドラッグする(マウス31bの左ボタンを押し
ながらカーソルを移動させる操作すること)。シンボル
51は、形状にかかわりなくシンボル51の占める領域
として長方形状の領域を有しており、この長方形状の領
域の角部に正方形状のマークがハンドル53として表示
されるのである。
【0042】パレットP1のアイコンについてのみ説明
したが、他のパレットP2〜P8のアイコンについても
同様の操作が可能であり、選択すればワークシート41
の中心位置にシンボル51が表示され、位置決定および
寸法決定を行なうのである。ここで、パレットP1に対
応したシンボル51は内容が未記入であり、後述するよ
うにワークシート41に表示した後にテキストとなる文
字を入力することになる。また、他のパレットP2〜P
8のアイコンは画像処理関数に対応するものであり、処
理内容があらかじめ決められているから、ワークシート
41に表示されたシンボル51には処理内容を表すテキ
ストがあらかじめシンボル51の中に記入されている。
したが、他のパレットP2〜P8のアイコンについても
同様の操作が可能であり、選択すればワークシート41
の中心位置にシンボル51が表示され、位置決定および
寸法決定を行なうのである。ここで、パレットP1に対
応したシンボル51は内容が未記入であり、後述するよ
うにワークシート41に表示した後にテキストとなる文
字を入力することになる。また、他のパレットP2〜P
8のアイコンは画像処理関数に対応するものであり、処
理内容があらかじめ決められているから、ワークシート
41に表示されたシンボル51には処理内容を表すテキ
ストがあらかじめシンボル51の中に記入されている。
【0043】フローチャートを作成するには、ワークシ
ート41に表示されたシンボル51を処理順に従って結
合する必要がある。つまり、シンボル51をノードとし
ノード51の間をリンクとなる線で結合しなければなら
ない。この処理には、まず接続ツール42cのアイコン
をクリックしてシンボル51間の接続を指示する。次
に、処理順で前になるシンボル51に対応する領域内に
ポインタを位置させてクリックする。このとき、シンボ
ル51は選択状態になって、図6のように画面上にハン
ドル53が表示される。次に、処理順で後になるシンボ
ル51にポインタを位置させてクリックすると、図6
(b)のようにシンボル51間のリンクを設定すること
ができる。リンクの設定は接続ツール42cで選択され
た動作モードが解除(つまり、マウス31bの右ボタン
のクリック)されるまで続けることができる。ここで、
処理順で後になるシンボル51を選択するときにシンボ
ル51の領域内で選択操作が行なわれなかったときに
は、接続エラーを示すメッセージウインドウ(図示せ
ず)を画面上に表示して警告文を表示する。メッセージ
ウインドウには「OK」と表記された釦が表示されるか
ら、警告文を確認した後に「OK」の釦をクリックすれ
ば、メッセージウインドウは画面上から消去され接続先
待ちの状態に戻る。
ート41に表示されたシンボル51を処理順に従って結
合する必要がある。つまり、シンボル51をノードとし
ノード51の間をリンクとなる線で結合しなければなら
ない。この処理には、まず接続ツール42cのアイコン
をクリックしてシンボル51間の接続を指示する。次
に、処理順で前になるシンボル51に対応する領域内に
ポインタを位置させてクリックする。このとき、シンボ
ル51は選択状態になって、図6のように画面上にハン
ドル53が表示される。次に、処理順で後になるシンボ
ル51にポインタを位置させてクリックすると、図6
(b)のようにシンボル51間のリンクを設定すること
ができる。リンクの設定は接続ツール42cで選択され
た動作モードが解除(つまり、マウス31bの右ボタン
のクリック)されるまで続けることができる。ここで、
処理順で後になるシンボル51を選択するときにシンボ
ル51の領域内で選択操作が行なわれなかったときに
は、接続エラーを示すメッセージウインドウ(図示せ
ず)を画面上に表示して警告文を表示する。メッセージ
ウインドウには「OK」と表記された釦が表示されるか
ら、警告文を確認した後に「OK」の釦をクリックすれ
ば、メッセージウインドウは画面上から消去され接続先
待ちの状態に戻る。
【0044】一方、リンクを修正する場合など、シンボ
ル51間のリンクを外したい場合がある。このようなと
きには、まず切断ツール42dを選択する。切断ツール
42dを選択した後に、リンクの両端のシンボル51を
それぞれ選択操作すれば、両シンボル51間のリンクは
切断される。ところで、画像処理関数は入力値と出力値
との受渡しが必要であるから、フローチャートにおいて
も入出力の受渡し情報を記述しておく必要がある。そこ
で、図7のように、データを受渡す画像処理関数を表す
シンボル51を、データが受渡される画像処理関数を表
すシンボル51の位置までドラッグし、シンボル51が
重なったときにマウス31bの左ボタンから指を離すの
である(いわゆるドラッグドロップ)。このとき、デー
タが受渡されるシンボル51はそれまでの表示色とは異
なる色で表示され(たとえば水色、図7(c)では斜線
部)、設定ウインドウW3(図8参照)が画面上に表示
される。
ル51間のリンクを外したい場合がある。このようなと
きには、まず切断ツール42dを選択する。切断ツール
42dを選択した後に、リンクの両端のシンボル51を
それぞれ選択操作すれば、両シンボル51間のリンクは
切断される。ところで、画像処理関数は入力値と出力値
との受渡しが必要であるから、フローチャートにおいて
も入出力の受渡し情報を記述しておく必要がある。そこ
で、図7のように、データを受渡す画像処理関数を表す
シンボル51を、データが受渡される画像処理関数を表
すシンボル51の位置までドラッグし、シンボル51が
重なったときにマウス31bの左ボタンから指を離すの
である(いわゆるドラッグドロップ)。このとき、デー
タが受渡されるシンボル51はそれまでの表示色とは異
なる色で表示され(たとえば水色、図7(c)では斜線
部)、設定ウインドウW3(図8参照)が画面上に表示
される。
【0045】設定ウインドウW3は、図8に示すよう
に、データを受渡す画像処理関数の名称(エッジ検索
B)および出力値として得られるデータ名を示すフィー
ルドF1と、データが受渡される画像処理関数の名称
(二値化)および入力値として必要なデータ名を示すフ
ィールドF2並びにデータの入力フィールドF3が表示
される。この状態で、フィールドF1の所望項目とフィ
ールドF2の所望項目とをそれぞれ選択操作すると、両
項目間に図9のようなリンクLが設定され、画像処理関
数間でデータの授受の定義がなされたことを示す。ま
た、データを受け取る側の入力フィールドF3にはデー
タの書込みが不要であることを示すように「****
*」の表示がなされる。
に、データを受渡す画像処理関数の名称(エッジ検索
B)および出力値として得られるデータ名を示すフィー
ルドF1と、データが受渡される画像処理関数の名称
(二値化)および入力値として必要なデータ名を示すフ
ィールドF2並びにデータの入力フィールドF3が表示
される。この状態で、フィールドF1の所望項目とフィ
ールドF2の所望項目とをそれぞれ選択操作すると、両
項目間に図9のようなリンクLが設定され、画像処理関
数間でデータの授受の定義がなされたことを示す。ま
た、データを受け取る側の入力フィールドF3にはデー
タの書込みが不要であることを示すように「****
*」の表示がなされる。
【0046】このようにして画像処理関数間でのデータ
の授受を定義しても、データを受け取る側の入力フィー
ルドF3には空欄が生じることがある。これらの空欄に
は適宜の初期設定値を入力することになる。たとえば、
図示例では二値化を行なう範囲を指定するようになって
いる。画像処理関数の入出力間の対応付けと、入力フィ
ールドF3への初期設定値の入力が終了すれば、画像処
理関数にデフォルトの入力値を与えて処理結果を確認す
ることができる。この操作には設定ウインドウW3に表
示されている実行釦B1を選択操作(クリック)する。
また、設定が終了すれば設定釦B2を選択操作すれば、
設定した入出力関係および初期設定値が登録される。設
定釦B2が操作されると設定ウインドウW3は画面から
消去される。なお、設定ウインドウW3にはTVカメラ
3を選択する領域D1が設けられており、4台までのT
Vカメラ3の位置を選択することができるようになって
いる。
の授受を定義しても、データを受け取る側の入力フィー
ルドF3には空欄が生じることがある。これらの空欄に
は適宜の初期設定値を入力することになる。たとえば、
図示例では二値化を行なう範囲を指定するようになって
いる。画像処理関数の入出力間の対応付けと、入力フィ
ールドF3への初期設定値の入力が終了すれば、画像処
理関数にデフォルトの入力値を与えて処理結果を確認す
ることができる。この操作には設定ウインドウW3に表
示されている実行釦B1を選択操作(クリック)する。
また、設定が終了すれば設定釦B2を選択操作すれば、
設定した入出力関係および初期設定値が登録される。設
定釦B2が操作されると設定ウインドウW3は画面から
消去される。なお、設定ウインドウW3にはTVカメラ
3を選択する領域D1が設けられており、4台までのT
Vカメラ3の位置を選択することができるようになって
いる。
【0047】一方、パレットP1に表示されたアイコン
に対応するシンボル51は、内容に関するテキストを記
述しなければならないから、図10のように所望のシン
ボル51から離れるようにドラッグし、その後、元の位
置まで戻すようにドラッグしてからドロップする。この
操作によって図11のような設定ウインドウW4を画面
上に表示させることができる。設定ウインドウW4で
は、使用可能な関数の種類(たとえば「表示」であれ
ば、位置指定のための関数、表示内容を指定する関数、
画面の消去を指示する関数など)を表示するフィールド
F4と、シンボル51の内容として書き込むべきテキス
トを入力するフィールドF5とを備える。ここでも設定
終了釦B3を選択操作すれば、入力内容が格納されて設
定ウインドウW4は消去される。
に対応するシンボル51は、内容に関するテキストを記
述しなければならないから、図10のように所望のシン
ボル51から離れるようにドラッグし、その後、元の位
置まで戻すようにドラッグしてからドロップする。この
操作によって図11のような設定ウインドウW4を画面
上に表示させることができる。設定ウインドウW4で
は、使用可能な関数の種類(たとえば「表示」であれ
ば、位置指定のための関数、表示内容を指定する関数、
画面の消去を指示する関数など)を表示するフィールド
F4と、シンボル51の内容として書き込むべきテキス
トを入力するフィールドF5とを備える。ここでも設定
終了釦B3を選択操作すれば、入力内容が格納されて設
定ウインドウW4は消去される。
【0048】さらに、表示、演算、入出力などでは、デ
ータを受け取る必要があるから、データの受渡し側で適
宜の変数名で出力することを指定しておき、受取側でそ
の変数名を用いることにより、データの授受を可能にし
ている。つまり、画像処理関数のシンボルをそのシンボ
ル51から離れるようにドラッグした後に元の位置まで
戻すようにドラッグしてからドロップすると、図12に
示すように、その画像処理関数の入力値と出力値との種
類が各フィールドF6,F7に表示され、さらに、出力
値に付ける変数名を入力するフィールドF8が表示され
る。ここで、表示、入出力、処理などに引き渡す変数名
をフィールドF8に入力しておき、表示、入出力、処理
などのデータが受渡される側で同じ変数名を用いて処理
内容を記述すれば、データの受渡しを行なうことができ
る。
ータを受け取る必要があるから、データの受渡し側で適
宜の変数名で出力することを指定しておき、受取側でそ
の変数名を用いることにより、データの授受を可能にし
ている。つまり、画像処理関数のシンボルをそのシンボ
ル51から離れるようにドラッグした後に元の位置まで
戻すようにドラッグしてからドロップすると、図12に
示すように、その画像処理関数の入力値と出力値との種
類が各フィールドF6,F7に表示され、さらに、出力
値に付ける変数名を入力するフィールドF8が表示され
る。ここで、表示、入出力、処理などに引き渡す変数名
をフィールドF8に入力しておき、表示、入出力、処理
などのデータが受渡される側で同じ変数名を用いて処理
内容を記述すれば、データの受渡しを行なうことができ
る。
【0049】以上のような手順で、図13に示すような
フローチャートをワークシート41に作成することがで
きる。また、実際の処理には無関係であるが、記述して
おくことで可読性を高めるコメント文をフローチャート
に記述することができる。コメント文はコメントツール
42eを選択操作することによってキーボード31aか
ら入力可能になる。コメント文を入力する位置は、ポイ
ンタで位置指定し選択操作(クリック)することによっ
て決定することができる。コメント文はコメントデータ
としてフローチャートとは別に保存され、実行フローを
画像処理装置1に転送する際などにはコメント文は送信
されず、フローチャートデータのみの送信を行なって送
信時間が短縮できるようになっている。
フローチャートをワークシート41に作成することがで
きる。また、実際の処理には無関係であるが、記述して
おくことで可読性を高めるコメント文をフローチャート
に記述することができる。コメント文はコメントツール
42eを選択操作することによってキーボード31aか
ら入力可能になる。コメント文を入力する位置は、ポイ
ンタで位置指定し選択操作(クリック)することによっ
て決定することができる。コメント文はコメントデータ
としてフローチャートとは別に保存され、実行フローを
画像処理装置1に転送する際などにはコメント文は送信
されず、フローチャートデータのみの送信を行なって送
信時間が短縮できるようになっている。
【0050】上述のようにしてフローチャートを作成し
た後に、各シンボル51に対応した画像処理関数の入出
力の関係を視覚化することができるように、図14のよ
うに、シンボル51の上辺に入力値の個数に対応した個
数のマーク54を表示するとともに下辺に出力値の個数
に対応した個数のマーク54を表示し、入出力が結び付
けられているもの同士を直線で結ぶ。この表示状態はツ
ールバー42から選択することができる。このような入
出力関係を視覚化して表示することにより、明らかな設
定間違いを容易に知ることができる。
た後に、各シンボル51に対応した画像処理関数の入出
力の関係を視覚化することができるように、図14のよ
うに、シンボル51の上辺に入力値の個数に対応した個
数のマーク54を表示するとともに下辺に出力値の個数
に対応した個数のマーク54を表示し、入出力が結び付
けられているもの同士を直線で結ぶ。この表示状態はツ
ールバー42から選択することができる。このような入
出力関係を視覚化して表示することにより、明らかな設
定間違いを容易に知ることができる。
【0051】フローチャートの作成後には、実行可能な
形式への変換を行うのであって、ツールバー42から変
換を指示すると変換が開始される。変換処理では、開始
を示す端子のシンボル51から始めて、リンクによる接
続順で次のシンボル51を探し、次にリンクで接続され
ているノードがなくなるまでノードを追跡し、シンボル
51から実行可能な形式への変換を順次行なう。ここ
で、シンボル51が判断である場合には、リンクによっ
てノード間を結合する際にリンクの属性として真偽(y
es,no)を記述してあり、その真偽に基づいて真の
ほうか先にリンクを追跡する。偽の分岐は真の分岐に接
続されたノードがなくなった後に追跡される。また、本
実施形態では判断のシンボルは2分岐に限定されてお
り、多分岐が必要な場合には判断のシンボルを必要個数
だけ用いるようにする。変換中には、図15に示すよう
に、変換された実行フローのリストを表示する。この実
行フローは変数や引き数などの細部については記述され
ず、実行フローのおおまかな流れを示すものとなる。
形式への変換を行うのであって、ツールバー42から変
換を指示すると変換が開始される。変換処理では、開始
を示す端子のシンボル51から始めて、リンクによる接
続順で次のシンボル51を探し、次にリンクで接続され
ているノードがなくなるまでノードを追跡し、シンボル
51から実行可能な形式への変換を順次行なう。ここ
で、シンボル51が判断である場合には、リンクによっ
てノード間を結合する際にリンクの属性として真偽(y
es,no)を記述してあり、その真偽に基づいて真の
ほうか先にリンクを追跡する。偽の分岐は真の分岐に接
続されたノードがなくなった後に追跡される。また、本
実施形態では判断のシンボルは2分岐に限定されてお
り、多分岐が必要な場合には判断のシンボルを必要個数
だけ用いるようにする。変換中には、図15に示すよう
に、変換された実行フローのリストを表示する。この実
行フローは変数や引き数などの細部については記述され
ず、実行フローのおおまかな流れを示すものとなる。
【0052】上述のようにして実行フローを変換した後
に実行フローの実際の動作を確認するためにデバッグを
行なう。デバッグに際しては、上述したように、TVカ
メラ3から取り込んであらかじめハードディスク装置3
5に格納しておいた画像を用い、この画像によって実行
フローを実際に動作させてシミュレーションを行なう。
このシミュレーションによって実行フローのデバッグを
行なうとともに、画像処理関数に与えた初期設定値の調
整を行なう。
に実行フローの実際の動作を確認するためにデバッグを
行なう。デバッグに際しては、上述したように、TVカ
メラ3から取り込んであらかじめハードディスク装置3
5に格納しておいた画像を用い、この画像によって実行
フローを実際に動作させてシミュレーションを行なう。
このシミュレーションによって実行フローのデバッグを
行なうとともに、画像処理関数に与えた初期設定値の調
整を行なう。
【0053】また、デバッグの際には、図16のよう
に、変数名のリストを表示することもでき、画像処理関
数の実行結果の出力値として未定義である変数名や変数
名の間違いなどを発見しやすくしてある。変数名の確認
は、各ノードで使用された変数を抽出しRAM21に設
けた変数エリアに格納した変数名と、画像処理関数の出
力値として定義した変数名(RAM21の所定エリアに
格納されている)とを比較し、一致しない場合には変数
名が未定義であるものとして、画面上に表示するのであ
る。変数出力値変数エリアのデータとの比較を行ない、
一致しなければ未定義変数としてエラーメッセージウイ
ンドウを開き、未定義変数を表示する。
に、変数名のリストを表示することもでき、画像処理関
数の実行結果の出力値として未定義である変数名や変数
名の間違いなどを発見しやすくしてある。変数名の確認
は、各ノードで使用された変数を抽出しRAM21に設
けた変数エリアに格納した変数名と、画像処理関数の出
力値として定義した変数名(RAM21の所定エリアに
格納されている)とを比較し、一致しない場合には変数
名が未定義であるものとして、画面上に表示するのであ
る。変数出力値変数エリアのデータとの比較を行ない、
一致しなければ未定義変数としてエラーメッセージウイ
ンドウを開き、未定義変数を表示する。
【0054】なお、画像処理関数以外のシンボルについ
て変数名を定義したときにRAM21の変数エリアに変
数名を格納しておき、この変数名と画像処理関数の出力
値として定義された変数名とを比較し、一致しなければ
入力変数が無効である旨のメッセージを画面上に表示
し、フローチャートの作成時に使用者に入力ミスを報知
するとともに、変数名が正しく入力されるまでは次段階
に進めないようにしてもよい。この方法を採用すれば、
デバッグ作業中に変数チェックを行なうことなく、変数
名の入力ミスを早期に発見することができる。
て変数名を定義したときにRAM21の変数エリアに変
数名を格納しておき、この変数名と画像処理関数の出力
値として定義された変数名とを比較し、一致しなければ
入力変数が無効である旨のメッセージを画面上に表示
し、フローチャートの作成時に使用者に入力ミスを報知
するとともに、変数名が正しく入力されるまでは次段階
に進めないようにしてもよい。この方法を採用すれば、
デバッグ作業中に変数チェックを行なうことなく、変数
名の入力ミスを早期に発見することができる。
【0055】ところで、上述の処理が可能となるよう
に、各ノードは以下のデータを持つ。すなわち、シンボ
ルの種類を示すパッケージ番号、ワークシート41の上
での座標値(矩形領域の対角線の両端の座標で表す)、
接続先(判断の場合には2個の接続先があるから2個用
意されている)、フローチャートの上での識別番号、各
種の入力値(16個まで登録可能)、出力値の変数名
(8個まで登録可能)、出力値(8個まで登録可能)で
ある。
に、各ノードは以下のデータを持つ。すなわち、シンボ
ルの種類を示すパッケージ番号、ワークシート41の上
での座標値(矩形領域の対角線の両端の座標で表す)、
接続先(判断の場合には2個の接続先があるから2個用
意されている)、フローチャートの上での識別番号、各
種の入力値(16個まで登録可能)、出力値の変数名
(8個まで登録可能)、出力値(8個まで登録可能)で
ある。
【0056】以下では、実際にフローチャートを作成す
る場合の手順を説明する。ここで、図17に示すような
フローチャートを作成するものとする。このフローチャ
ートでは、まず画像を取り込んだ後(S11)、X方向
について対象物のエッジを検索し(S12)、次にY方
向について対象物のエッジを検索する(S13)。ま
た、対象物に2箇所の検査領域を設定してそれぞれクラ
ックを検出する(S14,S15)。クラック検出の処
理では、クラックと認識された領域の画素数cr1,cr2 を
求め、次に2つの検査領域で求めたクラックの領域の画
素数の和cr_sumを求める(S16)。ここで、クラッ
クの領域の画素数が50を越えるときに大きいクラック
があると判断し、出力値の第1ビットSET をオン、第2
ビットRESをオフにする(S17)。また、クラックの
領域の画素数が50以下であれば出力値の第1ビットSE
T をオフ、第2ビットをオンにする(S18)。
る場合の手順を説明する。ここで、図17に示すような
フローチャートを作成するものとする。このフローチャ
ートでは、まず画像を取り込んだ後(S11)、X方向
について対象物のエッジを検索し(S12)、次にY方
向について対象物のエッジを検索する(S13)。ま
た、対象物に2箇所の検査領域を設定してそれぞれクラ
ックを検出する(S14,S15)。クラック検出の処
理では、クラックと認識された領域の画素数cr1,cr2 を
求め、次に2つの検査領域で求めたクラックの領域の画
素数の和cr_sumを求める(S16)。ここで、クラッ
クの領域の画素数が50を越えるときに大きいクラック
があると判断し、出力値の第1ビットSET をオン、第2
ビットRESをオフにする(S17)。また、クラックの
領域の画素数が50以下であれば出力値の第1ビットSE
T をオフ、第2ビットをオンにする(S18)。
【0057】このようなフローチャートを作成するに際
しては、まず開始の端子であるシンボルをパッケージウ
インドウW2から選択してワークシート41に表示させ
た後、所望位置にポインタを合わせてクリックする。こ
の操作によって開始のシンボルはワークシート41上で
指定された位置に移動する。次に、画像取込のシンボル
をパッケージウインドウW2から選択して同様の操作を
行なうことで、画像取込のシンボルの位置が決まる。こ
こで、開始のシンボルを画像取込のシンボルに対してド
ラッグドロップすれば、設定ウインドウW3が開いて画
像取込に関する初期設定値を設定することができる。画
像取込の画像処理関数を選択したときには、TVカメラ
3を指定するとともにあらかじめハードディスク装置3
5に格納されている画像を選択する。次に、開始の端子
のシンボルと画像取込のシンボルとを接続する。この操
作には接続ツール42cをクリックした後に接続すべき
ノード(開始の端子と画像取込とのシンボル)を順次ク
リックする。
しては、まず開始の端子であるシンボルをパッケージウ
インドウW2から選択してワークシート41に表示させ
た後、所望位置にポインタを合わせてクリックする。こ
の操作によって開始のシンボルはワークシート41上で
指定された位置に移動する。次に、画像取込のシンボル
をパッケージウインドウW2から選択して同様の操作を
行なうことで、画像取込のシンボルの位置が決まる。こ
こで、開始のシンボルを画像取込のシンボルに対してド
ラッグドロップすれば、設定ウインドウW3が開いて画
像取込に関する初期設定値を設定することができる。画
像取込の画像処理関数を選択したときには、TVカメラ
3を指定するとともにあらかじめハードディスク装置3
5に格納されている画像を選択する。次に、開始の端子
のシンボルと画像取込のシンボルとを接続する。この操
作には接続ツール42cをクリックした後に接続すべき
ノード(開始の端子と画像取込とのシンボル)を順次ク
リックする。
【0058】各ノードは図18に示すようなデータを保
有している。これらのデータは上述したように設定ウイ
ンドウW3で設定することができる。ここに、ID番号
はフローチャートの上での識別番号でありノードの発生
順に割り当てられる。しかして、図19(a)に示すよ
うにID番号が5と7とのノードが分離された状態で
は、ID番号と接続先1、2とは図19(b)の関係に
なり、この状態から図20(a)のようにID番号が5
と7とのノードを接続すれば図20(b)のような関係
になる。なお、ノードを削除した場合にはID番号を0
にする。
有している。これらのデータは上述したように設定ウイ
ンドウW3で設定することができる。ここに、ID番号
はフローチャートの上での識別番号でありノードの発生
順に割り当てられる。しかして、図19(a)に示すよ
うにID番号が5と7とのノードが分離された状態で
は、ID番号と接続先1、2とは図19(b)の関係に
なり、この状態から図20(a)のようにID番号が5
と7とのノードを接続すれば図20(b)のような関係
になる。なお、ノードを削除した場合にはID番号を0
にする。
【0059】また、パラメータは初期設定値、出力結果
変数指定は変数名、実行結果値は出力値に対応する。ま
た、判断のシンボルでは接続先1がyesに対応し、接
続先2がnoに対応する。さらに、クラック検出の処理
のように受渡されるデータがない場合は、クラック検出
のシンボル自身にドラッグドロップして設定ウインドウ
W3を開くようにすればよい(この場合、フィールドF
1は表示されない)。演算では変数を定義した出力値間
であらかじめ用意されている演算命令を用いて演算内容
を指定する。
変数指定は変数名、実行結果値は出力値に対応する。ま
た、判断のシンボルでは接続先1がyesに対応し、接
続先2がnoに対応する。さらに、クラック検出の処理
のように受渡されるデータがない場合は、クラック検出
のシンボル自身にドラッグドロップして設定ウインドウ
W3を開くようにすればよい(この場合、フィールドF
1は表示されない)。演算では変数を定義した出力値間
であらかじめ用意されている演算命令を用いて演算内容
を指定する。
【0060】なお、上述の実施形態ではオペレーティン
グシステムとしてWindows(商標)を用い、フロ
ーチャートの作成用にはVisual Basic(商
標)を用いた。
グシステムとしてWindows(商標)を用い、フロ
ーチャートの作成用にはVisual Basic(商
標)を用いた。
【0061】
【発明の効果】請求項1の発明は、入力された画像から
特定情報を抽出することにより画像内に含まれる対象物
に関する特定の性状を検出する画像処理装置において、
入力された画像を格納する画像記憶手段と、画像に施す
一連の処理を処理単位として複数種類の処理単位を格納
した処理単位記憶手段と、処理単位記憶手段に格納され
た処理単位を選択して用いるための手順を記述した実行
フローを格納する実行フロー記憶手段と、実行フロー記
憶手段に格納された実行フローに従って処理単位記憶手
段に格納された各処理単位を組み合わせて用いることに
より画像記憶手段に格納された画像から対象物に関する
特定の性状を検出する処理手段と、処理手段による処理
結果を出力する出力手段とを備えるものであり、処理単
位記憶手段に複数種類の処理単位を格納しており、処理
手段では実行フローに従って処理単位を組み合わせて用
いることにより画像記憶手段に格納された対象物に関す
る特定の性状を検出するから、1台の装置を用いて多種
類の画像処理が可能になり、対象物や求める結果に応じ
た適正な処理方法を1台で選択することができるという
効果を奏する。
特定情報を抽出することにより画像内に含まれる対象物
に関する特定の性状を検出する画像処理装置において、
入力された画像を格納する画像記憶手段と、画像に施す
一連の処理を処理単位として複数種類の処理単位を格納
した処理単位記憶手段と、処理単位記憶手段に格納され
た処理単位を選択して用いるための手順を記述した実行
フローを格納する実行フロー記憶手段と、実行フロー記
憶手段に格納された実行フローに従って処理単位記憶手
段に格納された各処理単位を組み合わせて用いることに
より画像記憶手段に格納された画像から対象物に関する
特定の性状を検出する処理手段と、処理手段による処理
結果を出力する出力手段とを備えるものであり、処理単
位記憶手段に複数種類の処理単位を格納しており、処理
手段では実行フローに従って処理単位を組み合わせて用
いることにより画像記憶手段に格納された対象物に関す
る特定の性状を検出するから、1台の装置を用いて多種
類の画像処理が可能になり、対象物や求める結果に応じ
た適正な処理方法を1台で選択することができるという
効果を奏する。
【0062】請求項2の発明は、処理内容を書き込むこ
とができるフローチャート作成用の第1のシンボル群と
各処理単位をそれぞれ表す第2のシンボル群とをディス
プレイ装置の画面上に設定したワークシートにノードと
して配列するとともに各ノードを実行順序に従ってリン
クにより結合することによって実行フローをフローチャ
ートとして画面上に表示し、さらに各処理単位に与える
初期設定値およびノード間でのデータの受渡し情報を定
義した後、第1のシンボル群およびデータの受渡し情報
を前記処理手段での実行が可能な形式に変換するととも
に第2のシンボル群を処理手段が処理単位記憶手段から
各処理単位を選択して用いる形式に変換するのであり、
フローチャートを用いることによって実行フローを視覚
化した形で記述することができ、しかも、各処理単位に
初期設定値やデータの受渡し情報を与えることができる
から、実行フローの作成作業が容易になるとともに、目
的に応じた細かな条件設定が可能になるという利点があ
る。
とができるフローチャート作成用の第1のシンボル群と
各処理単位をそれぞれ表す第2のシンボル群とをディス
プレイ装置の画面上に設定したワークシートにノードと
して配列するとともに各ノードを実行順序に従ってリン
クにより結合することによって実行フローをフローチャ
ートとして画面上に表示し、さらに各処理単位に与える
初期設定値およびノード間でのデータの受渡し情報を定
義した後、第1のシンボル群およびデータの受渡し情報
を前記処理手段での実行が可能な形式に変換するととも
に第2のシンボル群を処理手段が処理単位記憶手段から
各処理単位を選択して用いる形式に変換するのであり、
フローチャートを用いることによって実行フローを視覚
化した形で記述することができ、しかも、各処理単位に
初期設定値やデータの受渡し情報を与えることができる
から、実行フローの作成作業が容易になるとともに、目
的に応じた細かな条件設定が可能になるという利点があ
る。
【0063】請求項3の発明は、第1のシンボル群をそ
れぞれ表すアイコン群を配列した第1のパレットと、第
2のシンボル群をそれぞれ表すアイコン群を配列した第
2のパレットとを備えるパッケージウインドウを画面上
に表示し、画面上に表示したポインタを所望のアイコン
の位置に合わせるとともに選択操作を行なうことによっ
て、選択された第1または第2のシンボル群をワークシ
ートに表示するのであり、フローチャートを作成する際
に用いるシンボルをパッケージウインドウにあらかじめ
用意しているから、シンボルの選択のみでフローチャー
トのノードを表記することができ、しかも、シンボルの
種類ごとに異なるパレットに分類されているから、フロ
ーチャートの作成時に所望のシンボルを見つける作業が
容易になるという利点を有する。
れぞれ表すアイコン群を配列した第1のパレットと、第
2のシンボル群をそれぞれ表すアイコン群を配列した第
2のパレットとを備えるパッケージウインドウを画面上
に表示し、画面上に表示したポインタを所望のアイコン
の位置に合わせるとともに選択操作を行なうことによっ
て、選択された第1または第2のシンボル群をワークシ
ートに表示するのであり、フローチャートを作成する際
に用いるシンボルをパッケージウインドウにあらかじめ
用意しているから、シンボルの選択のみでフローチャー
トのノードを表記することができ、しかも、シンボルの
種類ごとに異なるパレットに分類されているから、フロ
ーチャートの作成時に所望のシンボルを見つける作業が
容易になるという利点を有する。
【0064】請求項4の発明は、第1のパレットと第2
のパレットとがパッケージウインドウ内の同じ位置に択
一的に表示されるとともに、第1のパレットと第2のパ
レットとにはパッケージウインドウ内の異なる位置に表
示されるタグがそれぞれ付設され、いずれかのタグの位
置にポインタを合わせるとともに選択操作を行なうこと
により、第1のパレットと第2のパレットとのうち選択
されたほうがウインドウ内に表示されるのであり、シン
ボルを分類して設けたパレットをパッケージウインドウ
内の同じ位置に選択的に表示させるから、画面内でパッ
ケージウインドウの占有するスペースを小さくすること
ができ、フローチャートの画面上での表示領域を広くと
ることができるという利点がある。つまり、フローチャ
ートを作成する作業スペースを広くとることができるの
である。
のパレットとがパッケージウインドウ内の同じ位置に択
一的に表示されるとともに、第1のパレットと第2のパ
レットとにはパッケージウインドウ内の異なる位置に表
示されるタグがそれぞれ付設され、いずれかのタグの位
置にポインタを合わせるとともに選択操作を行なうこと
により、第1のパレットと第2のパレットとのうち選択
されたほうがウインドウ内に表示されるのであり、シン
ボルを分類して設けたパレットをパッケージウインドウ
内の同じ位置に選択的に表示させるから、画面内でパッ
ケージウインドウの占有するスペースを小さくすること
ができ、フローチャートの画面上での表示領域を広くと
ることができるという利点がある。つまり、フローチャ
ートを作成する作業スペースを広くとることができるの
である。
【0065】請求項5の発明は、パッケージウインドウ
内のアイコンを選択すると、第1のシンボル群は位置変
更可能かつ寸法変更可能な選択状態となってワークシー
トの定位置に表示されるとともに位置および寸法の変更
後に選択状態を解除する操作により位置および寸法が決
定され、第2のシンボル群は位置変更可能な選択状態と
なってワークシートの定位置に表示されるとともに位置
変更後に選択状態を解除する操作により位置が決定され
るのであり、シンボルを所望位置に配置し、またシンボ
ルの大きさを適宜に変更することができるから、フロー
チャートを見やすく記述することができるという利点が
ある。
内のアイコンを選択すると、第1のシンボル群は位置変
更可能かつ寸法変更可能な選択状態となってワークシー
トの定位置に表示されるとともに位置および寸法の変更
後に選択状態を解除する操作により位置および寸法が決
定され、第2のシンボル群は位置変更可能な選択状態と
なってワークシートの定位置に表示されるとともに位置
変更後に選択状態を解除する操作により位置が決定され
るのであり、シンボルを所望位置に配置し、またシンボ
ルの大きさを適宜に変更することができるから、フロー
チャートを見やすく記述することができるという利点が
ある。
【0066】請求項6の発明は、ワークシートに表示さ
れている複数のノードの間のリンクによる結合を指示す
る接続ツールおよびノード間を結合しているリンクの解
除を指示する切断ツールを備えるツールバーが画面上に
表示され、接続ツールを選択した後に結合すべき一対の
ノードを順次選択することにより選択順が処理順となる
ように両ノード間をリンクで結合し、切断ツールを選択
した後にリンクを解除すべき一対のノードを順次選択す
ることにより両ノード間のリンクを解除するのであり、
接続ツールによりノード間の接続を指示している状態で
2つのノードを処理順に選択すれば自動的にリンクで結
合することができ、また、切断ツールにより切断を指示
している状態で2つのノードを選択すれば自動的にリン
クを解除することができるという利点がある。つまり、
単なる選択操作のみで処理順を容易に指定することがで
きるのである。
れている複数のノードの間のリンクによる結合を指示す
る接続ツールおよびノード間を結合しているリンクの解
除を指示する切断ツールを備えるツールバーが画面上に
表示され、接続ツールを選択した後に結合すべき一対の
ノードを順次選択することにより選択順が処理順となる
ように両ノード間をリンクで結合し、切断ツールを選択
した後にリンクを解除すべき一対のノードを順次選択す
ることにより両ノード間のリンクを解除するのであり、
接続ツールによりノード間の接続を指示している状態で
2つのノードを処理順に選択すれば自動的にリンクで結
合することができ、また、切断ツールにより切断を指示
している状態で2つのノードを選択すれば自動的にリン
クを解除することができるという利点がある。つまり、
単なる選択操作のみで処理順を容易に指定することがで
きるのである。
【0067】請求項7の発明は、各処理単位が初期設定
値および外部から受渡されるデータを入力値とするとと
もに処理結果のデータを外部に受渡す出力値とし、ワー
クシート上に表示されている複数個の第2のシンボル群
のうちデータの受渡しが必要な一対の第2のシンボルの
一方をドラッグして他方に重ねた状態でドロップすると
設定ウインドウが画面上に表示され、設定ウインドウは
上記他方の第2のシンボルに対応する処理単位に入力値
を与える入力フィールドを備えるとともに、上記一方の
第2のシンボルに対応する処理単位の出力値を上記他方
の第2のシンボルに対応する処理単位の入力値として受
渡すように入力値と出力値との対応関係を設定する機能
を有するのであり、フローチャート上のシンボルにドラ
ッグドロップの操作を施すだけで、初期設定値や入力値
と出力値との受渡しの関係を設定する設定ウインドウを
開くことができ、これらの情報の設定作業が容易になる
という利点がある。
値および外部から受渡されるデータを入力値とするとと
もに処理結果のデータを外部に受渡す出力値とし、ワー
クシート上に表示されている複数個の第2のシンボル群
のうちデータの受渡しが必要な一対の第2のシンボルの
一方をドラッグして他方に重ねた状態でドロップすると
設定ウインドウが画面上に表示され、設定ウインドウは
上記他方の第2のシンボルに対応する処理単位に入力値
を与える入力フィールドを備えるとともに、上記一方の
第2のシンボルに対応する処理単位の出力値を上記他方
の第2のシンボルに対応する処理単位の入力値として受
渡すように入力値と出力値との対応関係を設定する機能
を有するのであり、フローチャート上のシンボルにドラ
ッグドロップの操作を施すだけで、初期設定値や入力値
と出力値との受渡しの関係を設定する設定ウインドウを
開くことができ、これらの情報の設定作業が容易になる
という利点がある。
【0068】請求項8の発明では、第1のシンボル群の
各シンボルは、そのシンボルをシンボルの外にドラッグ
した後に元の位置にドラッグし、元の位置に重ねた状態
でドロップすると、そのシンボルに対応するテキストの
入力を可能とする設定ウインドウが画面上に表示され、
第2のシンボル群のシンボルは、そのシンボルをシンボ
ルの外にドラッグした後に元の位置にドラッグし、元の
位置に重ねた状態でドロップすると、そのシンボルに対
応する処理単位の変数名を定義することができる設定ウ
インドウが画面上に表示されるのであり、フローチャー
ト上のシンボルにドラッグドロップの操作を施すだけ
で、変数名を定義することができる設定ウインドウを開
くことができるから、フローチャートには多数の変数名
を表示しておく必要がなく、フローチャートが見やすく
なるという利点がある。
各シンボルは、そのシンボルをシンボルの外にドラッグ
した後に元の位置にドラッグし、元の位置に重ねた状態
でドロップすると、そのシンボルに対応するテキストの
入力を可能とする設定ウインドウが画面上に表示され、
第2のシンボル群のシンボルは、そのシンボルをシンボ
ルの外にドラッグした後に元の位置にドラッグし、元の
位置に重ねた状態でドロップすると、そのシンボルに対
応する処理単位の変数名を定義することができる設定ウ
インドウが画面上に表示されるのであり、フローチャー
ト上のシンボルにドラッグドロップの操作を施すだけ
で、変数名を定義することができる設定ウインドウを開
くことができるから、フローチャートには多数の変数名
を表示しておく必要がなく、フローチャートが見やすく
なるという利点がある。
【0069】請求項9の発明は、第2のシンボル群の各
シンボルの上辺に入力値の個数に応じた個数のマークを
表示するとともに下辺に出力値の個数に応じた個数のマ
ークを表示し、入出力の対応関係が設定されているシン
ボル間で入出力の対応関係が設定されているマークを結
ぶ直線を画面上に表示するのであり、入力値や出力値の
個数と関係をマークおよび直線によって視覚的に知るこ
とができ、データの受渡し情報の理解を補助することに
なるという利点がある。
シンボルの上辺に入力値の個数に応じた個数のマークを
表示するとともに下辺に出力値の個数に応じた個数のマ
ークを表示し、入出力の対応関係が設定されているシン
ボル間で入出力の対応関係が設定されているマークを結
ぶ直線を画面上に表示するのであり、入力値や出力値の
個数と関係をマークおよび直線によって視覚的に知るこ
とができ、データの受渡し情報の理解を補助することに
なるという利点がある。
【0070】請求項10の発明は、フローチャートから
実行フローを作成するにあたり、各シンボルのリンクを
次のリンクがなくなるまで順次追跡するとともに各シン
ボルに対応付けた処理内容に基づいて実行可能な形式に
変換し、判断を示すシンボルについては真となる分岐に
ついて次のリンクがなくなるまで追跡して実行可能な形
式に変換した後、偽となる分岐について次のリンクがな
くなるまで追跡して実行可能な形式に変換するのであ
り、フローチャートから実行可能な形式の実行フローに
変換する作業が容易になり、変換処理に複雑な処理を必
要としないという利点がある。
実行フローを作成するにあたり、各シンボルのリンクを
次のリンクがなくなるまで順次追跡するとともに各シン
ボルに対応付けた処理内容に基づいて実行可能な形式に
変換し、判断を示すシンボルについては真となる分岐に
ついて次のリンクがなくなるまで追跡して実行可能な形
式に変換した後、偽となる分岐について次のリンクがな
くなるまで追跡して実行可能な形式に変換するのであ
り、フローチャートから実行可能な形式の実行フローに
変換する作業が容易になり、変換処理に複雑な処理を必
要としないという利点がある。
【0071】請求項11の発明は、あらかじめ格納され
ている画像を用いて変換後の実行フローをシミュレーシ
ョンするのであり、フローチャートを用いて作成した実
行フローの動作を画像処理装置に転送する前に点検する
ことができ、画像処理装置への実行フローの転送回数を
削減してデバッグ時の作業効率を高めることができ、結
果的に実行フローを作成するのに要する時間を短くする
ことができるという利点がある。
ている画像を用いて変換後の実行フローをシミュレーシ
ョンするのであり、フローチャートを用いて作成した実
行フローの動作を画像処理装置に転送する前に点検する
ことができ、画像処理装置への実行フローの転送回数を
削減してデバッグ時の作業効率を高めることができ、結
果的に実行フローを作成するのに要する時間を短くする
ことができるという利点がある。
【0072】請求項12の発明は、実行フローが請求項
1記載の画像処理装置とは別に設けた実行フロー作成装
置により作成されるとともに、画像処理装置に対してデ
ータ通信により転送され、実行フローの転送時にはフロ
ーチャートに記述されたコメント文が除去されるのであ
り、画像処理装置に転送される情報にコメント文が含ま
れないから、画像処理装置に転送されるデータを比較的
少なくすることができ、結果的に転送時間を短縮するこ
とができるという利点がある。
1記載の画像処理装置とは別に設けた実行フロー作成装
置により作成されるとともに、画像処理装置に対してデ
ータ通信により転送され、実行フローの転送時にはフロ
ーチャートに記述されたコメント文が除去されるのであ
り、画像処理装置に転送される情報にコメント文が含ま
れないから、画像処理装置に転送されるデータを比較的
少なくすることができ、結果的に転送時間を短縮するこ
とができるという利点がある。
【0073】請求項13の発明は、フローチャートから
実行可能な形式への変換に際して、第1のシンボル群の
シンボルに対応して記述された処理内容から変数名を抽
出するとともに、画像処理関数の出力値に定義付けた変
数名と比較し、両者の変数名のうち不一致であるものを
未定義の変数名として画面上に表示するのであり、変数
名が未定義であるときに画面上に表示するから、未定義
の変数を容易に確認することができ、実行フローの作成
時間の短縮につながるという利点がある。
実行可能な形式への変換に際して、第1のシンボル群の
シンボルに対応して記述された処理内容から変数名を抽
出するとともに、画像処理関数の出力値に定義付けた変
数名と比較し、両者の変数名のうち不一致であるものを
未定義の変数名として画面上に表示するのであり、変数
名が未定義であるときに画面上に表示するから、未定義
の変数を容易に確認することができ、実行フローの作成
時間の短縮につながるという利点がある。
【0074】請求項14の発明は、フローチャートを作
成する際に、第1のシンボル群のシンボルに対応して処
理内容を記述すると、その処理内容から変数名を抽出す
るとともに、画像処理関数の出力値に定義付けた変数名
と比較し、両者の変数名が不一致であるときに、一致す
る変数名に修正されるまでフローチャートの次段階の作
成を禁止するのであり、フローチャートの作成中に未定
義の変数が知らされるから、フローチャートの間違いを
迅速に知ることができ、実行フローの作成時間を短縮す
ることができるという利点がある。
成する際に、第1のシンボル群のシンボルに対応して処
理内容を記述すると、その処理内容から変数名を抽出す
るとともに、画像処理関数の出力値に定義付けた変数名
と比較し、両者の変数名が不一致であるときに、一致す
る変数名に修正されるまでフローチャートの次段階の作
成を禁止するのであり、フローチャートの作成中に未定
義の変数が知らされるから、フローチャートの間違いを
迅速に知ることができ、実行フローの作成時間を短縮す
ることができるという利点がある。
【図1】実施形態における画像処理装置のブロック図で
ある。
ある。
【図2】実施形態に用いる実行フロー作成装置のブロッ
ク図である。
ク図である。
【図3】実施形態の動作説明図である。
【図4】実施形態の動作説明図である。
【図5】実施形態の動作説明図である。
【図6】実施形態の動作説明図である。
【図7】実施形態の動作説明図である。
【図8】実施形態の動作説明図である。
【図9】実施形態の動作説明図である。
【図10】実施形態の動作説明図である。
【図11】実施形態の動作説明図である。
【図12】実施形態の動作説明図である。
【図13】実施形態の動作説明図である。
【図14】実施形態の動作説明図である。
【図15】実施形態の動作説明図である。
【図16】実施形態の動作説明図である。
【図17】実施形態の動作説明図である。
【図18】実施形態の動作説明図である。
【図19】実施形態の動作説明図である。
【図20】実施形態の動作説明図である。
1 画像処理装置 2 実行フロー作成装置 3 TVカメラ 10 CPU 11 フレームメモリ 12 RAM 13 フラッシュメモリ 14 通信用インタフェース
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成9年2月17日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0046
【補正方法】変更
【補正内容】
【0046】このようにして画像処理関数間でのデータ
の授受を定義しても、データを受け取る側の入力フィー
ルドF3には空欄が生じることがある。これらの空欄に
は適宜の初期設定値を入力することになる。たとえば、
図示例では二値化を行なう範囲を指定するようになって
いる。画像処理関数の入出力間の対応付けと、入力フィ
ールドF3への初期設定値の入力が終了すれば、画像処
理関数にデフォルトの入力値を与えて処理結果を確認す
ることができる。この操作には設定ウインドウW3に表
示されている実行釦B1を選択操作(クリック)する。
また、設定が終了すれば設定釦B2を選択操作すれば、
設定した入出力関係および初期設定値が登録される。設
定釦B2が操作されると設定ウインドウW3は画面から
消去される。なお、設定ウインドウW3にはTVカメラ
3を選択する領域D1が設けられており、どのTVカメ
ラ3に対する設定であるかを選択指定することができる
ようになっている。
の授受を定義しても、データを受け取る側の入力フィー
ルドF3には空欄が生じることがある。これらの空欄に
は適宜の初期設定値を入力することになる。たとえば、
図示例では二値化を行なう範囲を指定するようになって
いる。画像処理関数の入出力間の対応付けと、入力フィ
ールドF3への初期設定値の入力が終了すれば、画像処
理関数にデフォルトの入力値を与えて処理結果を確認す
ることができる。この操作には設定ウインドウW3に表
示されている実行釦B1を選択操作(クリック)する。
また、設定が終了すれば設定釦B2を選択操作すれば、
設定した入出力関係および初期設定値が登録される。設
定釦B2が操作されると設定ウインドウW3は画面から
消去される。なお、設定ウインドウW3にはTVカメラ
3を選択する領域D1が設けられており、どのTVカメ
ラ3に対する設定であるかを選択指定することができる
ようになっている。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0051
【補正方法】変更
【補正内容】
【0051】フローチャートの作成後には、実行可能な
形式への変換を行うのであって、ツールバー42から変
換を指示すると変換が開始される。変換処理では、開始
を示す端子のシンボル51から始めて、リンクによる接
続順で次のシンボル51を探し、次にリンクで接続され
ているノードがなくなるまでノードを追跡し、シンボル
51から実行可能な形式への変換を順次行なう。ここ
で、シンボル51が判断である場合には、リンクによっ
てノード間を結合する際にリンクの属性として真偽(y
es,no)を記述してあり、その真偽に基づいて真の
ほうから先にリンクを追跡する。偽の分岐は真の分岐に
接続されたノードがなくなった後に追跡される。また、
本実施形態では判断のシンボルは2分岐に限定されてお
り、多分岐が必要な場合には判断のシンボルを必要個数
だけ用いるようにする。変換中には、図15に示すよう
に、変換された実行フローのリストを表示する。この実
行フローは変数や引き数などの細部については記述され
ず、実行フローのおおまかな流れを示すものとなる。
形式への変換を行うのであって、ツールバー42から変
換を指示すると変換が開始される。変換処理では、開始
を示す端子のシンボル51から始めて、リンクによる接
続順で次のシンボル51を探し、次にリンクで接続され
ているノードがなくなるまでノードを追跡し、シンボル
51から実行可能な形式への変換を順次行なう。ここ
で、シンボル51が判断である場合には、リンクによっ
てノード間を結合する際にリンクの属性として真偽(y
es,no)を記述してあり、その真偽に基づいて真の
ほうから先にリンクを追跡する。偽の分岐は真の分岐に
接続されたノードがなくなった後に追跡される。また、
本実施形態では判断のシンボルは2分岐に限定されてお
り、多分岐が必要な場合には判断のシンボルを必要個数
だけ用いるようにする。変換中には、図15に示すよう
に、変換された実行フローのリストを表示する。この実
行フローは変数や引き数などの細部については記述され
ず、実行フローのおおまかな流れを示すものとなる。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0056
【補正方法】変更
【補正内容】
【0056】以下では、実際にフローチャートを作成す
る場合の手順を説明する。ここで、図17に示すような
フローチャートを作成するものとする。このフローチャ
ートでは、まず画像を取り込んだ後(S11)、X方向
について対象物のエッジを検索し(S12)、次にY方
向について対象物のエッジを検索する(S13)。ま
た、対象物に2箇所の検査領域を設定してそれぞれクラ
ックを検出する(S14,S15)。クラック検出の処
理では、クラックと認識された領域の画素数cr1,cr2 を
求め、次に2つの検査領域で求めたクラックの領域の画
素数の和cr_sumを求める(S16)。ここで、クラッ
クの領域の画素数が50を越えるときに大きいクラック
があると判断し、出力値の第1ビットをオン、第2ビッ
トをオフにする(S17)。また、クラックの領域の画
素数が50以下であれば出力値の第1ビットをオフ、第
2ビットをオンにする(S18)。
る場合の手順を説明する。ここで、図17に示すような
フローチャートを作成するものとする。このフローチャ
ートでは、まず画像を取り込んだ後(S11)、X方向
について対象物のエッジを検索し(S12)、次にY方
向について対象物のエッジを検索する(S13)。ま
た、対象物に2箇所の検査領域を設定してそれぞれクラ
ックを検出する(S14,S15)。クラック検出の処
理では、クラックと認識された領域の画素数cr1,cr2 を
求め、次に2つの検査領域で求めたクラックの領域の画
素数の和cr_sumを求める(S16)。ここで、クラッ
クの領域の画素数が50を越えるときに大きいクラック
があると判断し、出力値の第1ビットをオン、第2ビッ
トをオフにする(S17)。また、クラックの領域の画
素数が50以下であれば出力値の第1ビットをオフ、第
2ビットをオンにする(S18)。
Claims (14)
- 【請求項1】 入力された画像から特定情報を抽出する
ことにより画像内に含まれる対象物に関する特定の性状
を検出する画像処理装置において、入力された画像を格
納する画像記憶手段と、画像に施す一連の処理を処理単
位として複数種類の処理単位を格納した処理単位記憶手
段と、処理単位記憶手段に格納された処理単位を選択し
て用いるための手順を記述した実行フローを格納する実
行フロー記憶手段と、実行フロー記憶手段に格納された
実行フローに従って処理単位記憶手段に格納された各処
理単位を組み合わせて用いることにより画像記憶手段に
格納された画像から対象物に関する特定の性状を検出す
る処理手段と、処理手段による処理結果を出力する出力
手段とを備えることを特徴とする画像処理装置。 - 【請求項2】 請求項1に記載の画像処理装置に用いる
実行フローを作成する方法において、処理内容を書き込
むことができるフローチャート作成用の第1のシンボル
群と上記各処理単位をそれぞれ表す第2のシンボル群と
をディスプレイ装置の画面上に設定したワークシートに
ノードとして配列するとともに各ノードを実行順序に従
ってリンクにより結合することによって実行フローをフ
ローチャートとして画面上に表示し、さらに各処理単位
に与える初期設定値およびノード間でのデータの受渡し
情報を定義した後、第1のシンボル群およびデータの受
渡し情報を前記処理手段での実行が可能な形式に変換す
るとともに第2のシンボル群を前記処理手段が前記処理
単位記憶手段から各処理単位を選択して用いる形式に変
換することを特徴とする画像処理装置の実行フロー作成
方法。 - 【請求項3】 第1のシンボル群をそれぞれ表すアイコ
ン群を配列した第1のパレットと、第2のシンボル群を
それぞれ表すアイコン群を配列した第2のパレットとを
備えるパッケージウインドウを画面上に表示し、画面上
に表示したポインタを所望のアイコンの位置に合わせる
とともに選択操作を行なうことによって、選択された第
1または第2のシンボル群をワークシートに表示するこ
とを特徴とする請求項2記載の画像処理装置の実行フロ
ー作成方法。 - 【請求項4】 第1のパレットと第2のパレットとはパ
ッケージウインドウ内の同じ位置に択一的に表示される
とともに、第1のパレットと第2のパレットとにはパッ
ケージウインドウ内の異なる位置に表示されるタグがそ
れぞれ付設され、いずれかのタグの位置にポインタを合
わせるとともに選択操作を行なうことにより、第1のパ
レットと第2のパレットとのうち選択されたほうがウイ
ンドウ内に表示されることを特徴とする請求項3記載の
画像処理装置の実行フロー作成方法。 - 【請求項5】 パッケージウインドウ内のアイコンを選
択すると、第1のシンボル群は位置変更可能かつ寸法変
更可能な選択状態となってワークシートの定位置に表示
されるとともに位置および寸法の変更後に選択状態を解
除する操作により位置および寸法が決定され、第2のシ
ンボル群は位置変更可能な選択状態となってワークシー
トの定位置に表示されるとともに位置変更後に選択状態
を解除する操作により位置が決定されることを特徴とす
る請求項3記載の画像処理装置の実行フロー作成方法。 - 【請求項6】 ワークシートに表示されている複数のノ
ードの間のリンクによる結合を指示する接続ツールおよ
びノード間を結合しているリンクの解除を指示する切断
ツールを備えるツールバーが画面上に表示され、接続ツ
ールを選択した後に結合すべき一対のノードを順次選択
することにより選択順が処理順となるように両ノード間
をリンクで結合し、切断ツールを選択した後にリンクを
解除すべき一対のノードを順次選択することにより両ノ
ード間のリンクを解除することを特徴とする請求項2記
載の画像処理装置の実行フロー作成方法。 - 【請求項7】 各処理単位は初期設定値および外部から
受渡されるデータを入力値とするとともに処理結果のデ
ータを外部に受渡す出力値とし、ワークシート上に表示
されている複数個の第2のシンボル群のうちデータの受
渡しが必要な一対の第2のシンボルの一方をドラッグし
て他方に重ねた状態でドロップすると設定ウインドウが
画面上に表示され、設定ウインドウは上記他方の第2の
シンボルに対応する処理単位に入力値を与える入力フィ
ールドを備えるとともに、上記一方の第2のシンボルに
対応する処理単位の出力値を上記他方の第2のシンボル
に対応する処理単位の入力値として受渡すように入力値
と出力値との対応関係を設定する機能を有することを特
徴とする請求項2記載の画像処理装置の実行フロー作成
方法。 - 【請求項8】 第1のシンボル群の各シンボルは、その
シンボルをシンボルの外にドラッグした後に元の位置に
ドラッグし、元の位置に重ねた状態でドロップすると、
そのシンボルに対応するテキストの入力を可能とする設
定ウインドウが画面上に表示され、第2のシンボル群の
シンボルは、そのシンボルをシンボルの外にドラッグし
た後に元の位置にドラッグし、元の位置に重ねた状態で
ドロップすると、そのシンボルに対応する処理単位の変
数名を定義することができる設定ウインドウが画面上に
表示されることを特徴とする請求項2記載の画像処理装
置の実行フロー作成方法。 - 【請求項9】 第2のシンボル群の各シンボルの上辺に
入力値の個数に応じた個数のマークを表示するとともに
下辺に出力値の個数に応じた個数のマークを表示し、入
出力の対応関係が設定されているシンボル間で入出力の
対応関係が設定されているマークを結ぶ直線を画面上に
表示することを特徴とする請求項7記載の画像処理装置
の実行フロー作成方法。 - 【請求項10】 フローチャートから実行フローを作成
するにあたり、各シンボルのリンクを次のリンクがなく
なるまで順次追跡するとともに各シンボルに対応付けた
処理内容に基づいて実行可能な形式に変換し、判断を示
すシンボルについては真となる分岐について次のリンク
がなくなるまで追跡して実行可能な形式に変換した後、
偽となる分岐について次のリンクがなくなるまで追跡し
て実行可能な形式に変換することを特徴とする請求項2
記載の画像処理装置の実行フロー作成方法。 - 【請求項11】 あらかじめ格納されている画像を用い
て変換後の実行フローをシミュレーションすることを特
徴とする請求項2記載の画像処理装置の実行フロー作成
方法。 - 【請求項12】 実行フローは請求項1記載の画像処理
装置とは別に設けた実行フロー作成装置により作成され
るとともに、画像処理装置に対してデータ通信により転
送され、実行フローの転送時にはフローチャートに記述
されたコメント文が除去されることを特徴とする請求項
2記載の画像処理装置の実行フロー作成方法。 - 【請求項13】 フローチャートから実行可能な形式へ
の変換に際して、第1のシンボル群のシンボルに対応し
て記述された処理内容から変数名を抽出するとともに、
画像処理関数の出力値に定義付けた変数名と比較し、両
者の変数名のうち不一致であるものを未定義の変数名と
して画面上に表示することを特徴とする請求項8記載の
画像処理装置の実行フロー作成方法。 - 【請求項14】 フローチャートを作成する際に、第1
のシンボル群のシンボルに対応して処理内容を記述する
と、その処理内容から変数名を抽出するとともに、画像
処理関数の出力値に定義付けた変数名と比較し、両者の
変数名が不一致であるときに、一致する変数名に修正さ
れるまでフローチャートの次段階の作成を禁止すること
を特徴とする請求項8記載の画像処理装置の実行フロー
作成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12775196A JPH09288568A (ja) | 1996-04-23 | 1996-04-23 | 画像処理装置およびその実行フロー作成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12775196A JPH09288568A (ja) | 1996-04-23 | 1996-04-23 | 画像処理装置およびその実行フロー作成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09288568A true JPH09288568A (ja) | 1997-11-04 |
Family
ID=14967792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12775196A Pending JPH09288568A (ja) | 1996-04-23 | 1996-04-23 | 画像処理装置およびその実行フロー作成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09288568A (ja) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000089959A (ja) * | 1998-07-31 | 2000-03-31 | Sony United Kingdom Ltd | デ―タ処理方法及び装置 |
JP2002251603A (ja) * | 2001-02-23 | 2002-09-06 | Matsushita Electric Works Ltd | 画像処理プログラム作成方法およびそのシステム |
JP2009123070A (ja) * | 2007-11-16 | 2009-06-04 | Keyence Corp | 検査支援システム及び画像処理コントローラ |
JP2009122824A (ja) * | 2007-11-13 | 2009-06-04 | Keyence Corp | 画像処理コントローラ用のプログラム作成装置及び検査支援システム |
JP2009122822A (ja) * | 2007-11-13 | 2009-06-04 | Keyence Corp | 画像処理コントローラ用のプログラム作成装置 |
JP2009122823A (ja) * | 2007-11-13 | 2009-06-04 | Keyence Corp | 画像処理コントローラ用のプログラム作成装置 |
DE102008060388A1 (de) | 2007-12-13 | 2009-06-18 | Keyence Corporation | Bildverarbeitungs-Steuereinheit und Test-Supportsystem |
JP2010128908A (ja) * | 2008-11-28 | 2010-06-10 | Canon It Solutions Inc | 情報処理装置及びその制御方法、並びに、プログラム |
JP2010244507A (ja) * | 2009-03-18 | 2010-10-28 | Canon It Solutions Inc | 情報処理装置及びその制御方法、並びに、プログラム |
JP2011022133A (ja) * | 2009-06-19 | 2011-02-03 | Yaskawa Electric Corp | 形状検出装置及びロボットシステム |
DE102010034546A1 (de) | 2009-08-19 | 2011-02-24 | Keyence Corporation, Takatsuki | Bildverarbeitungsvorrichtung und Bildverarbeitungsverfahren |
DE102010049955A1 (de) | 2009-10-30 | 2011-05-05 | Keyence Corporation | Bildbearbeitungsvorrichtung und Bildbearbeitungsverfahren |
US7973826B2 (en) | 2007-11-16 | 2011-07-05 | Keyence Corporation | Program creating and editing apparatus for image processing controller, and apparatus for editing image processing program executed in image processing controller |
JP4886910B1 (ja) * | 2010-11-17 | 2012-02-29 | キヤノンItソリューションズ株式会社 | 情報処理装置、情報処理装置の制御方法、プログラム、及びプログラムを記録した記録媒体 |
WO2013018204A1 (ja) * | 2011-08-03 | 2013-02-07 | 株式会社日立製作所 | 画像処理ソフトウェア開発方法、画像処理ソフトウェア開発装置、および、画像処理ソフトウェア開発プログラム |
JP2013140572A (ja) * | 2011-12-06 | 2013-07-18 | Canon Marketing Japan Inc | 情報処理装置、その制御方法、及びプログラム |
-
1996
- 1996-04-23 JP JP12775196A patent/JPH09288568A/ja active Pending
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000089959A (ja) * | 1998-07-31 | 2000-03-31 | Sony United Kingdom Ltd | デ―タ処理方法及び装置 |
JP2002251603A (ja) * | 2001-02-23 | 2002-09-06 | Matsushita Electric Works Ltd | 画像処理プログラム作成方法およびそのシステム |
US7929024B2 (en) * | 2007-11-13 | 2011-04-19 | Keyence Corporation | Program creation apparatus for image processing controller |
JP2009122824A (ja) * | 2007-11-13 | 2009-06-04 | Keyence Corp | 画像処理コントローラ用のプログラム作成装置及び検査支援システム |
JP2009122822A (ja) * | 2007-11-13 | 2009-06-04 | Keyence Corp | 画像処理コントローラ用のプログラム作成装置 |
JP2009122823A (ja) * | 2007-11-13 | 2009-06-04 | Keyence Corp | 画像処理コントローラ用のプログラム作成装置 |
US7973826B2 (en) | 2007-11-16 | 2011-07-05 | Keyence Corporation | Program creating and editing apparatus for image processing controller, and apparatus for editing image processing program executed in image processing controller |
JP2009123070A (ja) * | 2007-11-16 | 2009-06-04 | Keyence Corp | 検査支援システム及び画像処理コントローラ |
DE102008043752A1 (de) | 2007-11-16 | 2009-06-10 | Keyence Corporation | Test-Supportsystem und Bildverarbeitungs-Steuereinrichtung |
US8081213B2 (en) | 2007-11-16 | 2011-12-20 | Keyence Corporation | Test support system and image processing controller |
JP2009146075A (ja) * | 2007-12-13 | 2009-07-02 | Keyence Corp | 画像処理コントローラ及び検査支援システム |
DE102008060388A1 (de) | 2007-12-13 | 2009-06-18 | Keyence Corporation | Bildverarbeitungs-Steuereinheit und Test-Supportsystem |
US8111288B2 (en) | 2007-12-13 | 2012-02-07 | Keyence Corporation | Image processing controller and test support system |
JP2010128908A (ja) * | 2008-11-28 | 2010-06-10 | Canon It Solutions Inc | 情報処理装置及びその制御方法、並びに、プログラム |
JP2010244507A (ja) * | 2009-03-18 | 2010-10-28 | Canon It Solutions Inc | 情報処理装置及びその制御方法、並びに、プログラム |
JP2011022133A (ja) * | 2009-06-19 | 2011-02-03 | Yaskawa Electric Corp | 形状検出装置及びロボットシステム |
DE102010034546A1 (de) | 2009-08-19 | 2011-02-24 | Keyence Corporation, Takatsuki | Bildverarbeitungsvorrichtung und Bildverarbeitungsverfahren |
DE102010049955A1 (de) | 2009-10-30 | 2011-05-05 | Keyence Corporation | Bildbearbeitungsvorrichtung und Bildbearbeitungsverfahren |
US8487992B2 (en) | 2009-10-30 | 2013-07-16 | Keyence Corporation | Image processing device and image processing method |
JP4886910B1 (ja) * | 2010-11-17 | 2012-02-29 | キヤノンItソリューションズ株式会社 | 情報処理装置、情報処理装置の制御方法、プログラム、及びプログラムを記録した記録媒体 |
WO2013018204A1 (ja) * | 2011-08-03 | 2013-02-07 | 株式会社日立製作所 | 画像処理ソフトウェア開発方法、画像処理ソフトウェア開発装置、および、画像処理ソフトウェア開発プログラム |
US9195435B2 (en) | 2011-08-03 | 2015-11-24 | Hitachi, Ltd. | Image processing software development method, image processing software development device, and image processing software development program |
JP2013140572A (ja) * | 2011-12-06 | 2013-07-18 | Canon Marketing Japan Inc | 情報処理装置、その制御方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH09288568A (ja) | 画像処理装置およびその実行フロー作成方法 | |
EP1074927B2 (en) | Intelligent wiring diagram system | |
EP1650619B1 (en) | Sequence program editing apparatus | |
KR102430090B1 (ko) | 사용자 입력에 기반하여 생성된 인공지능 모델을 이용하여 가상 결함 이미지를 생성하기 위한 컴퓨터 프로그램, 방법, 및 장치 | |
EP3951647A1 (en) | Techniques for labeling, reviewing and correcting label predictions for p&ids | |
US20240168863A1 (en) | Programming devices and programs for creating and editing programs used for image processing | |
JP2019133303A (ja) | 情報処理装置、情報処理プログラム及び情報処理方法 | |
CN110910414B (zh) | 图像轮廓生成方法、图像标注方法、电子装置及存储介质 | |
JPH06203024A (ja) | 文書処理装置 | |
CN113553055A (zh) | 一种基于机器学习的可视化图表代码自动生成方法 | |
JP2008299412A (ja) | 光学式認識コード認識結果表示方法 | |
CN111158669A (zh) | 一种图形化编程视觉***及工业控制方法 | |
US20170357412A1 (en) | Data creating device, data creating method, and data creating program | |
CN115526015A (zh) | 基于命令交互式的电网图生成方法、装置、介质及设备 | |
US20210271350A1 (en) | Information processing apparatus and non-transitory computer readable medium | |
JP5331015B2 (ja) | 図面管理システムおよび図面管理方法 | |
EP0897156A1 (en) | Device and method for preparing original text and program storing medium for the same | |
JP5595224B2 (ja) | ラダープログラム比較方法 | |
JP6686093B2 (ja) | 画面対応付け方法、情報処理装置、操作再現システム及び画面対応付けプログラム | |
JPH0588869A (ja) | プログラム自動生成方法及び装置 | |
JP2011197844A (ja) | 差分検知システム | |
JP3581538B2 (ja) | プログラム仕様書自動生成支援システム | |
US20240219312A1 (en) | Inspection support device, inspection support method, and program | |
JP4948843B2 (ja) | Cadデータ同一性保証サーバ装置、cadデータ同一性保証方法 | |
Ma et al. | Digitization of Drill Bit Inspections; User-Centered Design Methods to Automate Robotic Inspections |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040309 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040510 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050308 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050802 |