JP6979860B2 - 画像処理システム - Google Patents

画像処理システム Download PDF

Info

Publication number
JP6979860B2
JP6979860B2 JP2017223729A JP2017223729A JP6979860B2 JP 6979860 B2 JP6979860 B2 JP 6979860B2 JP 2017223729 A JP2017223729 A JP 2017223729A JP 2017223729 A JP2017223729 A JP 2017223729A JP 6979860 B2 JP6979860 B2 JP 6979860B2
Authority
JP
Japan
Prior art keywords
setting data
data
image processing
setting
storage
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.)
Active
Application number
JP2017223729A
Other languages
English (en)
Other versions
JP2019095984A (ja
JP2019095984A5 (ja
Inventor
彰信 瀬里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Keyence Corp
Original Assignee
Keyence Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Keyence Corp filed Critical Keyence Corp
Priority to JP2017223729A priority Critical patent/JP6979860B2/ja
Publication of JP2019095984A publication Critical patent/JP2019095984A/ja
Publication of JP2019095984A5 publication Critical patent/JP2019095984A5/ja
Application granted granted Critical
Publication of JP6979860B2 publication Critical patent/JP6979860B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
  • Retry When Errors Occur (AREA)
  • Image Analysis (AREA)

Description

本発明は、検査対象物の画像を処理する画像処理システムに関する。
工場で生産された製品(ワーク)をカメラで撮像し、ワークの画像に基づいてワークを測定したり、外観を検査したりする画像処理システム(外観検査システム)が普及している。ワークの画像は外観検査システムの記憶装置を圧迫するため、検査が終了すると削除される。
一方で特許文献1によれば工業機械システムから工業データを収集するクラウドサービスとクラウドプラットフォームが提案されている。
米国特許第9,477,936号明細書
工場に設置された画像処理システムの設定データや画像データは一般に工場内のデータストレージに格納される。これは、設定データや画像データがノウハウなど第三者には知られるべきでない重要な情報を含むためである。しかし、オンラインストレージなどのクラウドにこれらのデータをバックアップできれば、工場が被災してもデータを復旧することが可能となる。さらに、これらのデータを解析することで、画像処理システムを改善したり、画像処理システムの動作不良や故障を未然に防いだりすることも期待される。しかし、画像処理システムのデータストレージにバックアップされた設定データや画像データなどのすべてをクラウドにバックアップすると、通信負荷が増大する。従量料金制の元では通信コストも増大しうる。そこで、本発明は、画像処理システムのデータをクラウドの外部サーバに対してバックアップする際の通信負荷を軽減することを目的とする。
本発明は、たとえば、
画像処理装置と、前記画像処理装置が実行する画像検査の設定データを保存するデータストレージとを有する画像処理システムであって、
前記画像処理装置は、
画像検査の設定データを記憶する第一記憶手段と、
前記画像処理装置に接続または一体化された撮像手段により取得されたワークの画像に対して、前記設定データにしたがった画像検査を実行する検査手段と、
前記第一記憶手段に記憶されている設定データと前記データストレージに記憶されている設定データとの間に差があるかを判定する第一判定手段と、
前記第一判定手段が、前記第一記憶手段に記憶されている設定データと前記データストレージに記憶されている設定データとの間に差があると判定すると、前記第一記憶手段に記憶されている設定データを前記データストレージに送信する第一送信手段と、を有し、
前記データストレージは、
前記画像処理装置から受信された設定データを記憶する第二記憶手段と、
前記第二記憶手段に記憶されている設定データと前記画像処理システムの外部に存在する外部サーバに記憶されている設定データとの間に差があるかを判定する第二判定手段と、
前記第二判定手段が前記第二記憶手段に記憶されている設定データと前記画像処理システムの外部に存在する外部サーバに記憶されている設定データとの間に差があると判定すると、前記第二記憶手段に記憶されている設定データを前記外部サーバに送信する第二送信手段と
を有することを特徴とする画像処理システムを提供する。
画像処理システムのデータをクラウドの外部サーバに対してバックアップする際の通信負荷を軽減することが可能となる。
外観検査システムとクラウドなどを示す図 画像処理装置を示す図 画像処理装置の機能を説明する図 データストレージを示す図 データストレージの機能を示す図 クラウドを示す図 PCを示す図 設定UIを示す図 設定UIを示す図 設定データの保存処理を示すフローチャート 検査結果の保存処理を示すフローチャート 設定データのバックアップ処理を示すフローチャート 検査結果の保存処理を示すフローチャート
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
図1は外観検査システム1の概略を示す概略図である。外観検査システム1は、工場で生産された製品(検査対象物)の外観を検査し、合格品かどうかを判定する画像処理システムである。検査対象物は一般にワークと呼ばれる。外観検査システム1は、画像処理装置2、プログラマブルロジックコントローラ(PLC)3、カメラ4、照明装置5、コンソール9、モニタ10、プログラム作成支援装置11を有している。PLC3はパーソナルコンピュータなどのコンピュータであってもよい。PLC3によって制御されるベルトコンベヤなどの搬送装置7によって検査対象物8が搬送され、照明装置5によって照明された検査対象物8がカメラ4によって撮像される。検査対象物8はワークと呼ばれることもある。画像処理装置2は、たとえば、PLC3からの命令にしたがって、照明装置5の照明条件を切り替えたり、カメラ4に撮像を実行させたりする。
画像処理装置2は検査対象物8の画像から寸法計測や位置検出、面積計算などの各種計測処理を実行する。たとえば、画像処理装置2はカメラ4から得られた画像データを用いて画像処理を実行し、外部接続されたPLC3などの制御機器に対し、検査対象物8の良否などの判定結果を示す信号として判定信号を出力する。
カメラ4は検査対象物8を撮像する撮像素子を有するカメラモジュールを備えている。撮像素子としては、たとえばCMOS(相補型金属酸化膜半導体)やCCD(電荷結合素子)を用いることができる。カメラ4は、PLC3から入力される制御信号、たとえばカメラ4から画像データを取り込むタイミングを規定する撮像トリガ信号に基づいて、検査対象物8の撮像を行う。
モニタ10は液晶パネルや自発光式パネル等の表示装置である。検査対象物8を撮像して得られた画像や、その画像データを用いた計測処理の結果を表示する。モニタ10は、パターンマッチング用の比較データ(規範画像)を作成するために使用される基準画像など、良品から取得された画像を表示してもよい。なお、規範画像はモデル画像と呼ばれてもよい。
コンソール9は、ユーザがモニタ10上で各種操作するため(モニタ10がタッチパネルなら省略可)の入力装置である。コンソール9は、モニタ10上で各メニュー項目を選択したり、パラメータ値を設定したりする。コンソール9は、ポインティングデバイスの一例である。つまり、コンソール9はマウスであってもよい。ユーザは、モニタ10を視認することで、画像処理装置2の運転中の動作状態を確認することができる。また、ユーザは、モニタ10を視認しつつ、コンソール9を操作することによって、必要に応じて各種設定や各種編集を行うことができる。
照明装置5は、検査対象物8を照明する装置である。照明装置5としては、たとえば、光沢を際立たせる同軸落射照明、傷や刻印のエッジが際立つローアングル照明、ブラックライトを当てるブラックライト照明、面照明(検査対象物の透過光または影を観察するための透過照明)、四方八方から拡散光を照射するドーム照明など、各種の照明を行う照明装置が採用されうる。特に、同軸落射照明は、視野全体に略均一に照明を当てる照明手法であり、カメラ4と照明装置5をV字に配置して検査対象物8からの正反射光を受光する照明手法とほぼ同様の効果が得られる利点がある。また、ローアングル照明は、たとえばLED等の投光素子をリング状に配置し、検査対象物8の表面を浅い角度で全周方向から光を照らす照明手法である。検査対象物8の表面に当たった光はカメラ4の方向には反射せず、刻印や傷のエッジ部分で反射した光だけが受光される。すなわち、照射角度が非常に浅い角度であるため、光沢面では反射が弱く、検査対象物8上の僅かな傷やエッジでのみ強い反射が得られ、はっきりとしたコントラストが得られる。
プログラム作成支援装置11は、画像処理装置2が実行する制御プログラムまたは設定データを作成するためのコンピュータ(PC)である。制御プログラムは、以下で説明するような外観検査に関するそれぞれ異なる計測を実行するための複数の計測処理モジュールを有している。画像処理装置2は、設定された順番に沿って各種計測処理モジュールを呼び出して実行する。プログラム作成支援装置11と画像処理装置2とは、通信ケーブルや通信ネットワークを介して接続されている。プログラム作成支援装置11上で生成された制御プログラムやパラメータ値等の設定データは通信ケーブル等を介して画像処理装置2に転送される。また逆に、画像処理装置2から制御プログラムやパラメータ値等の設定データなどを取り込んで、プログラム作成支援装置11が再編集してもよい。
工場において、複数の検査対象物8は、コンベアなどの搬送装置7のライン上を流れてくる。画像処理装置2は、検査対象物8の上方(または側方、下方)に設置されているカメラ4により検査対象物8を撮像し、撮像した画像を基準画像(たとえば良品を撮像した画像)や基準画像から作成したモデル画像と比較して、検査対象物8に傷や欠損等が存在するか否かの判断を行う。検査対象物8に傷や欠損等が存在すると判断した場合には、NG判定となる。一方、検査対象物8に傷や欠損等が存在しないと判断した場合には、OK判定となる。このように、外観検査システム1は、検査対象物8を撮像した画像を用いて、検査対象物8の外観の良否判定を行う。なお、本明細書において外観検査とは、検査対象物の傷や欠損の有無に基づく良否判定のみならず、検査対象物の有無の判別や、検査対象物の位置決め、検査対象物の寸法測定等を含む。
検査対象物8の外観検査を行う場合、ユーザは検査に用いる各種パラメータの内容(パラメータ値等)を設定する必要がある。パラメータとしては、たとえば、シャッタースピードなどの撮像条件を規定する撮像パラメータ、照度などの照明条件を規定する照明パラメータ、どのような検査を行うかを示す検査条件を規定する計測処理パラメータ(いわゆる検査パラメータ)等がある。外観検査システム1では、良否判定を行う前に、これらの各種パラメータの内容を設定する。
外観検査システム1は、実際に搬送装置7のライン上を次々と流れてくる検査対象物8の外観検査を行うモード、すなわち実際に検査対象物8の良否判定を行う運転モード(Runモード)と、検査に用いられる各種パラメータの内容の設定を行う設定モード(非Runモード)とを有しており、これらのモードを切り替えるためのモード切替手段を有している。ユーザは、運転モードにおいて、搬送装置7のライン上を流れてくる複数の検査対象物8に対して良否判定が繰り返し行われる前に、設定モードにおいて、各種パラメータに対して最適なパラメータ値を設定(調整)する。基本的に、各種パラメータに対してはデフォルト値が設定されており、ユーザがパラメータ値としてデフォルト値が最適であると判断した場合には、特段、パラメータ値を調整する必要はない。しかし、実際のところ、周囲の照明環境、カメラ4の取り付け位置、カメラ4の姿勢ずれ、ピント調整等の相違に起因して、デフォルト値のままではユーザが望む判定結果を得ることができない場合がある。そこで、設定モードにおいて、画像処理装置2のモニタ10上またはプログラム作成支援装置11上にて、運転モードから設定モードに切り換え、各種パラメータの内容を編集できるようになっている。
データストレージ6は、外観検査システム1の設定データや検査結果などを保存するNAS(Network Attached Storage)などのストレージである。画像処理装置2はデータストレージ6に保存されている設定データを画像処理装置2に対してリストアする機能を有していてもよい。
クラウド12は、たとえば、データストレージ6に記憶されているデータをバックアップするストレージサーバ(ファイルサーバ)である。クラウド12は、外観検査システム1が設置されている工場の外部に設けられていることから、外部サーバと呼ばれてもよい。なお、データストレージ6は、外観検査システム1が設置されている工場の内部に設置されていてもよいし、工場の外部に設置されていてもよい。PC(パーソナルコンピュータ)13a、13bはデータストレージ6やクラウド12に接続し、設定データや検査結果などを表示装置に表示するコンピュータである。
<外観検査システム1のハードウエア構成>
図2は外観検査システム1のハードウエア構成の一例を示す図である。主制御部21は、各種プログラムに基づき数値計算や情報処理を行うとともに、ハードウエア各部の制御を行う。たとえば、中間演算処理装置としてのCPU22a、ワークメモリ23aおよびプログラムメモリ24aとを有している。ワークメモリ23aは主制御部21が各種プログラムを実行する際のワークエリアとして機能するRAMなどである。プログラムメモリ24aは、起動プログラムや初期化プログラムなどが格納されたROM、フラッシュROMまたはEEPROMなどである。照明制御部26は主制御部21のCPU22aやPLC3からの命令に基づいて照明装置5に対して照明制御信号を送信する。
画像入力部25はカメラ4での撮像により取得された画像データを取り込むASIC(Application Specific Integrated Circuit)などから構成される。画像入力部25には画像データをバッファリングするためのフレームバッファが含まれていてもよい。具体的に、画像入力部25は、CPU22aからカメラ4の撮像指令を受信すると、カメラ4に対して画像データ取り込み信号を送信する。そして、画像入力部25は、カメラ4で撮像が行われた後、撮像して得られた画像データを取り込む。取り込んだ画像データは、一旦バッファリング(キャッシュ)される。
操作入力部27aは、コンソール9からの操作信号が入力される。操作入力部27aは、ユーザの操作に応じてコンソール9が出力する操作信号を受信するインターフェース(I/F)として機能する。
モニタ10には、コンソール9を用いたユーザの操作内容が表示される。具体的に説明すると、コンソール9を操作することによって、ユーザはモニタ10上で、画像処理の制御プログラムを編集したり、各計測処理モジュールのパラメータ値を編集したり、カメラ4の撮像条件を設定したり、基準画像の中で特徴的な部分を規範画像として登録したり、サーチ領域内をサーチして規範画像に一致した領域を検査領域として設定したりと、様々なことを行うことができる。
表示制御部28aはモニタ10に対して画像やGUIを表示させる表示用DSP(デジタルシグナルプロセッサ)などから構成される。GUIはグラフィカルユーザインタフェースの略称である。表示制御部28aには、画像を表示させる際に画像データを一時記憶するVRAMなどのビデオメモリが含まれていてもよい。表示制御部28aはCPU22から送られてきた表示指令(表示コマンド)に基づいてモニタ10に対して所定の画像(映像)を表示させるための制御信号を送信する。たとえば、表示制御部28aは、画像データや検査結果を表示するために、モニタ10に対して制御信号を送信する。また、表示制御部28aはコンソール9を用いたユーザの操作内容をモニタ10に表示させるための制御信号も送信する。
通信部29aは、外部のPLC3やプログラム作成支援装置11、データストレージ6などと通信可能に接続される。通信部29aは送信回路と受信回路とを含むネットワーク通信デバイスやシリアル通信デバイスなどである。たとえば、センサ(不図示の光電センサ等)が検査対象物8の到着タイミングを認識するために製造ラインに設置され、かつ、PLC3に接続されている。当該センサは検査対象物8を検知するとトリガ信号を出力する。通信部29aはPLC3から出力されたトリガ信号を受信するインターフェース(I/F)として機能する。トリガ信号はカメラ4に撮像を実行させる制御信号として利用される。また、通信部29は、プログラム作成支援装置11から転送されてくる画像処理装置2の制御プログラムなどを受信するインターフェース(I/F)としても機能する。
画像処理部30は寸法演算やエッジ検出、面積計算などの計測処理を実行する演算用DSPなどから構成される。画像処理部30には計測処理用の画像データを記憶するメモリが含まれていてもよい。画像処理部30は画像データに対する計測処理を実行する。具体的に、画像処理部30は、画像入力部25のフレームバッファから画像データを読み出して、画像処理部30内のメモリへ内部転送を行う。そして、画像処理部30は、そのメモリに記憶された画像データを読み出して、計測処理を実行する。
プログラムメモリ24aは、照明制御部26、画像入力部25、操作入力部27、表示制御部28、通信部29、および画像処理部30の各部を、CPU22aのコマンド等により制御するための制御プログラムを格納している。また、プログラム作成支援装置11から転送されてきた制御プログラムはプログラムメモリ24aに格納される。
CPU22aは、通信部29を介してPLC3から撮像トリガ信号を受信すると、画像入力部25に対して撮像指令(コマンド)を送る。また、CPU22aは、制御プログラムに基づいて、画像処理部30に対して、実行すべき画像処理を指示するコマンドを送信する。なお、撮像トリガ信号を生成する装置として、PLC3ではなく、光電センサなどのトリガ入力用のセンサを通信部29に直接接続してもよい。
これらの各ハードウエアは、バスなどの電気的な通信路(配線)を介し、通信可能に接続されている。
<計測モジュール(画像処理ツール)>
ここでは、外観検査を実行する計測モジュールを画像処理ツールと呼ぶことにする。なお、画像処理ツールは検査ツールや計測ツールと呼ばれてもよい。画像処理ツールには様々なものがあり、主要な画像処理ツールとしては、エッジ位置計測ツール、エッジ角度計測ツール、エッジ幅計測ツール、エッジピッチ計測ツール、エリア計測ツール、ブロブ計測ツール、パターンサーチ計測ツール、傷計測ツールなどがある。
●エッジ位置計測ツール:検査対象物8の画像が表示される画面上において、エッジ位置を検出したい検査領域に対してウインドウを設定することにより、設定された検査領域内で、任意の方向にスキャンして複数のエッジ(明から暗に切り替わる箇所または暗から明に切り替わる箇所)を検出する。検出した複数のエッジから、一のエッジの指定を受け付け、指定を受け付けたエッジの位置を計測する。
●エッジ角度計測ツール:設定を受け付けた検査領域内に2つのセグメントを設定し、それぞれのセグメントで検出したエッジからの検査対象物8の傾斜角度を計測する。傾斜角度は、たとえば時計回りを正とすることができる。
●エッジ幅計測ツール:設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出し、検出した複数のエッジ間の幅を計測する。
●エッジピッチ計測ツール:設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出する。検出した複数のエッジ間の距離(角度)の最大値/最小値や平均値を計測する。
●エリア計測ツール:カメラ4で撮像した検査対象物8の画像を二値化処理して、白色領域または黒色領域の面積を計測する。たとえば、計測する対象として白色領域または黒色領域の指定をパラメータとして受け付けることにより、白色領域または黒色領域の面積を計測する。
●ブロブ計測ツール:カメラ4で撮像した検査対象物8の画像を二値化処理して、同一の輝度値(255または0)の画素の集合(ブロブ)に対してパラメータとしての数、面積、重心位置等を計測する。
●パターンサーチ計測ツール:比較対象とする画像パターン(モデル画像)を事前に記憶装置に記憶しておき、撮像した検査対象物8の画像の中から記憶してある画像パターンに類似している部分を検出することで、画像パターンの位置、傾斜角度、相関値を計測する。
●傷計測ツール:設定を受け付けた検査領域内で、小領域(セグメント)を移動させて画素値の平均濃度値を算出し、閾値以上の濃度差となった位置を傷が存在すると判定する。
●その他にも、検査領域内の文字情報を切り出して辞書データ等と照合することで文字列を認識するOCR認識ツール、画像上に設定したウインドウ(領域)をシフトさせながら、各ウインドウの位置においてエッジの検出を繰り返す機能を有するトレンドエッジツール、設定したウインドウ内の濃淡の平均、偏差等を計測する機能を有する濃淡ツール、設定したウインドウ内の濃度の平均、偏差等を計測する機能を有する濃度ツールなどもあり、ユーザは検査内容に応じて必要な画像処理ツールを選択することができる。なお、これらの画像処理ツールは、典型的な機能およびその実現方法の代表例を示すものに過ぎない。あらゆる画像処理に対応する画像処理ツールが本願発明の対象になり得る。
<画像処理装置の機能>
図3は画像処理装置2の主要部を示している。画像処理部30のサーチ部33はワークメモリ23aの設定データ40aの検査領域データ42に基づき検査対象物8の画像から計測対象をサーチして計測対象の位置を求める。サーチ部33は基準画像41を用いたマッチング処理により計測対象の位置を求めてもよい。検査領域データ42は、たとえば、基準画像41における模範画像の位置を示す座標データや、模範画像の位置を基準とした計測対象の位置を示す座標データなどであってもよい。寸法演算部34は上記の計測モジュールを有しており、たとえば、設定データ40aに基づき検査対象物8の画像から計測対象の寸法を計測する。
CPU22aの検査部31は画像処理部30で取得された計測結果(例:検査結果35aの寸法データ36)が、設定データ40aに含まれている判定条件(例:合格条件43)を満たしているかどうかを判定する。合格条件は公差のデータであってもよい。検査部31は検査対象物8ごとの検査結果35aをワークメモリ23aに書き込む。検査結果35aは、たとえば、寸法演算部34により取得された寸法データ36を含む。なお、合格と判定された検査対象物8の画像はOK画像37として検査結果35aに含まれていてもよい。不合格と判定された検査対象物8の画像はNG画像38として検査結果35aに含まれていてもよい。保存部32は、保存条件が満たされると、ワークメモリ23aに保持されている設定データ40aや検査結果35aをデータストレージ6に対して通信部29aを介して保存(送信)する。設定データ40aについての保存条件は、たとえば、設定データ40aが編集されたことである。検査結果35aの保存条件は、たとえば、検査対象物8を撮像するごとや、合格条件を満たさなかったことなどである。
判定部50aは、ワークメモリ23aに保持されている設定データ40aと、データストレージ6に保存されている設定データ40bとの間に差があるかを判定する。判定部50aは、通信部29aを介してデータストレージ6に保存されている設定データ40bを取得する(読み出す)。たとえば、画像比較部51aは、画像処理装置2に保存されている設定データ40aに含まれている基準画像41とデータストレージ6のHDD39bに記憶されている設定データ40bに含まれている基準画像とが異なっている場合に、設定データ40aと設定データ40bとの間に差があると判定してもよい。情報量比較部52aは、設定データ40aの情報量と、設定データ40bの情報量とに差がある場合に、両者に差があると判定する。タイムスタンプ比較部53aは、設定データ40aのタイムスタンプと、設定データ40bのタイムスタンプとに差がある場合に、両者に差があると判定してもよい。なお、HDD39bが複数の設定データを記憶している場合、判定部50aは、タイムスタンプが最も新しい設定データを比較対象として選択する。設定部54aは、検査に関する設定や画像処理装置2からデータストレージへのデータの保存に関する設定を実行する。
判定部50aが設定データ40aと設定データ40bとの間に差があると判定すると、保存部32は設定データ40aをデータストレージ6に送信し、HDD39bに書き込む。なお、設定データ40aは、基準画像41、検査領域データ42、合格条件43などの複数のサブデータを有していてもよい。判定部50aは、サブデータごとに一致/不一致を判定し、保存部32は不一致と判定されたサブデータだけをデータストレージ6へ送信してもよい。なお、保存部32は、ワークメモリ23aに記憶されている検査結果35aをすべてデータストレージ6のHDD39bに書き込んでもよい。保存部32は、ワークメモリ23aに記憶されている設定データ40aをすべてHDD39bに書き込んでもよい。ただし、保存部32は、一致したサブデータを削除し、その代わりに、HDD39bに保持されている同一の他のデータを参照することを示す参照情報(リンクファイルなど)をHDD39bに格納してもよい。なお、参照情報は、たとえば、実データの記憶位置(絶対パスまたは相対パス)を示す情報である。
設定部54aは、PC13aから保存に関する設定情報(保存設定)を受け付け、設定情報をプログラムメモリ24aに記憶させる。なお、設定部54aはPC13aに対して設定情報を作成するためのWebユーザインタフェースを提供してもよい。PC13aは、画像処理装置2に関連付けられた所定のURLにWebブラウザを通じてアクセスすることで設定情報の作成画面を開き、必要な情報を入力してもよい。設定部54aは、検査結果35aに含まれているOK画像37をデータストレージ6に送信するか否かを設定する第一設定手段として機能してもよい。設定部54aは、検査結果35aに含まれているNG画像38をデータストレージ6に送信するか否かを設定する第二設定手段として機能してもよい。設定部54aは、検査結果35b、35cをデータストレージ6に送信するか否かを設定する第三設定手段として機能してもよい。なお、設定情報を作成するプログラムはPC13aにインストールされていてもよい。この場合、設定部54aはPC13aに設けられる。PC13aの設定部54aは画像処理装置2のプログラムメモリ24aなどに設定情報を書き込む。
このように判定部50aはデータストレージ6から設定データ40bなどを取得する。保存部32は、判定部50aの判定結果にしたがって、設定データ40aや検査結果35aなどをHDD39bに書き込んでもよい。設定データ40bや検査結果35bは一時的にワークメモリ23aに保持されて判定処理を適用されてもよい。
設定部54aは、複数のサブデータのうち通信部29aを通じてデータストレージ6に保存されるサブデータを指定する指定手段として機能してもよい。この場合、判定部50aは、指定されたサブデータについて差の有無を判定する。保存部32は、指定されたサブデータのうち判定部50aにより差があると判定されたサブデータをデータストレージ6に送信する。
保存部32は、設定データ40aを保存するタイミングごとにHDD39bにフォルダ58a、58bを作成して設定データを記憶してもよい。フォルダ58aは、第一バックアップタイミングに画像処理装置2から保存された設定データ40bを記憶する第一フォルダの一例である。フォルダ58bは第一バックアップタイミングよりも後の第二バックアップタイミングに画像処理装置2から保存された設定データ40aを記憶する第二フォルダの一例である。上述したように、フォルダ58bは、第二バックアップタイミングに画像処理装置2から保存された複数のサブデータを記憶している。この複数のサブデータのうち一部が、フォルダ58aに記憶されているいずれかのサブデータと同一である場合もある。この場合に、保存部32は、フォルダ58bに同一のサブデータを記憶する代わりに、フォルダ58aのサブデータを参照するファイルを書き込む。保存部32は、検査結果の保存条件が満たされるたびに検査結果をデータストレージ6のフォルダ58cに保存する。
<データストレージ6のハードウエア構成>
図4はデータストレージ6のハードウエア構成を示している。すでに説明された構成要素と同一または類似の構成要素には同一の参照符号が付与されている。ただし、参照符号の末尾には構成要素を区別するためのa、b、c・・・文字が付与されている。本明細書において共通する事項が説明されるときは参照符号の末尾に付与されているa、b、c・・・の文字は省略されることがある。
CPU22bはプログラムメモリ24bに記憶されている制御プログラムを実行し、制御プログラムにしたがって画像処理装置2からデータを取得してワークメモリ23bまたはHDD(ハードディスクドライブ)39bに書き込む。通信部29bは画像処理装置2やクラウド12、PC13aへデータを送信する送信回路と、これらからデータを受信する受信回路とを含む通信回路である。CPU22bはクラウド12への転送条件が満たされると、画像処理装置2から保存されたデータを、通信部29bを介してクラウド12に送信する。
図5はCPU22bが制御プログラムを実行することで実現する機能を示している。各機能はハードウエア回路により実現されてもよい。判定部50bは、クラウド12にバックアップされている最新の設定データ40d(図6)とHDD39bに記憶されている設定データ40bとの間に差があるかを判定する。たとえば、画像比較部51bは、設定データ40dに含まれている基準画像41とHDD39bに記憶されている設定データ40bに含まれている基準画像とが異なっている場合に、両者に差があると判定してもよい。情報量比較部52bは、設定データ40dの情報量と、HDD39bに記憶されている設定データ40bの情報量とに差がある場合に、両者に差があると判定する。タイムスタンプ比較部53bは、設定データ40dのタイムスタンプと、HDD39bに記憶されている設定データ40bのタイムスタンプとに差がある場合に、両者に差があると判定してもよい。なお、HDD39bが複数の設定データ40b、40cを記憶している場合、判定部50bは、タイムスタンプが最も新しい設定データを比較対象として選択する。判定部50bは、クラウド12に保持されている設定データについても、タイムスタンプが最も新しい設定データを比較対象として選択する。設定部54bは、クラウド12へのデータのバックアップに関する設定を実行する。
判定部50bが設定データ40dと設定データ40bとの間に差があると判定すると、バックアップ部55は設定データ40bをクラウド12へ送信する。判定部50bは、設定データを構成しているサブデータごとに一致/不一致を判定し、バックアップ部55は不一致と判定されたサブデータだけをクラウド12へ転送してもよい。なお、バックアップ部55は、設定データ40bのすべてをクラウド12へ転送してもよい。ただし、バックアップ部55は、一致したサブデータを、クラウド12に保持されている同一の他のデータを参照することを示す参照情報(リンクファイルなど)に置換してクラウド12に転送してもよい。たとえば、バックアップ対象の設定データ40bがすでにフォルダ58dに保持されている過去の設定データ40dと一致している場合、書込み部56は、設定データ40bを、設定データ40dを参照する参照ファイル(リンクファイル)に置換して、フォルダ58eに書き込んでもよい。
設定部54bは、PC13aからバックアップに関する設定情報(バックアップ設定)を受け付け、設定情報をプログラムメモリ24cまたはHDD39cに記憶させる。なお、設定部54bはPC13aに対して設定情報を作成するためのWebユーザインタフェースを提供してもよい。PC13aは、データストレージ6に関連付けられた所定のURLにWebブラウザを通じてアクセスすることで設定情報の作成画面を開き、必要な情報を入力してもよい。設定部54bは、検査結果35b、35cに含まれているOK画像37をクラウド12に送信するか否かを設定する第一設定手段として機能してもよい。設定部54bは、検査結果35b、35cに含まれているNG画像38をクラウド12に送信するか否かを設定する第二設定手段として機能してもよい。設定部54bは、検査結果35b、35cをクラウド12に送信するか否かを設定する第三設定手段として機能してもよい。なお、設定情報を作成するプログラムはPC13aにインストールされていてもよい。この場合、設定部54bはPC13aに設けられ、設定情報はPC13aからデータストレージ6のHDD39bなどに書き込まれる。
このようにバックアップ部55は設定データの比較に必要な情報(サイズ、タイムスタンプなど)をクラウド12から取得し、判定部50bに渡す。バックアップ部55は、判定部50bの判定結果にしたがって、設定データ40bなどをクラウド12のHDD39cに書き込ででもよい。バックアップ部55は、バックアップ条件を満たして検査結果をクラウド12のフォルダ58fに書き込む。
設定部54bは、複数のサブデータのうち通信部29bを通じてクラウド12にバックアップされるサブデータを指定する指定手段として機能してもよい。この場合、判定部50bは、指定されたサブデータについて差の有無を判定する。バックアップ部55は、指定されたサブデータのうち判定部50bにより差があると判定されたサブデータをクラウド12に送信する。
バックアップ部55は、バックアップタイミングごとにHDD39cにフォルダ58d、58eを作成して設定データを記憶してもよい。フォルダ58dは、第一バックアップタイミングにバックアップされた設定データ40dを記憶する第一フォルダの一例である。フォルダ58eは第一バックアップタイミングよりも後の第二バックアップタイミングにバックアップされた設定データ40bを記憶する第二フォルダの一例である。上述したように、フォルダ58eは、第二バックアップタイミングにバックアップされた複数のサブデータを記憶している。この複数のサブデータのうち一部が、フォルダ58dに記憶されているいずれかのサブデータと同一である場合もある。この場合に、バックアップ部55は、フォルダ58eに同一のサブデータを記憶する代わりに、フォルダ58dのサブデータを参照するファイルを書き込む。
<クラウド12の構成>
図6はクラウド12のハードウエア構成を示している。CPU22cはプログラムメモリ24cに記憶されている制御プログラムを実行し、制御プログラムにしたがってデータストレージ6からデータを受信してワークメモリ23cまたはHDD39cに書き込む。通信部29cはデータストレージ6やPC13とデータを送信したり、受信したりする通信回路である。CPU22cはデータストレージ6からログインIDやパスワードなどの認証情報を受信して認証処理を実行し、認証処理に成功すると、ログインIDに関連付けられているフォルダへのデータの書き込みを許可してもよい。上述したデータストレージ6の転送部57は、ログインIDやパスワードをHDD39bから読み出して、クラウド12へ送信する。
<PC13の構成>
図7はPC13のハードウエア構成を示している。CPU22dはプログラムメモリ24dに記憶されている制御プログラムを実行し、制御プログラムにしたがってデータストレージ6の設定情報を作成し、データストレージ6に書き込む。この場合、制御プログラムは設定情報の作成プログラムである。データストレージ6がWebサーバ機能を有し、Webサーバ機能を通じてWebUIを提供している場合、制御プログラムはWebブラウザである。通信部29dはデータストレージ6やクラウド12へデータを送信する送信回路と、これらからデータを受信する受信回路とを含む通信回路である。CPU22dは通信部29dを介して受信したデータをワークメモリ23dまたはHDD39dに書き込む。操作部14はキーボードとポインティングデバイスであり、ユーザからの情報をCPU22dに入力する。ディスプレイ15は液晶表示装置などの表示デバイスであり、CPU22dから出力された情報を表示する。
<設定UI>
図8はバックアップ設定を編集するための設定UI(ユーザインタフェース)60aを示す図である。設定UI60aは、データストレージ6から設定データや検査結果をクラウド12へバックアップするための設定UIである。画像処理装置2からデータストレージ6へ設定データや検査結果を保存するための設定は別の設定UIを通じて設定されてもよい。
CPU22dは設定プログラムにしたがって設定UI60aをディスプレイ15に表示する。あるいは、CPU22dはWebブラウザを通じてデータストレージ6から受信したhtmlファイルなどをディスプレイ15に表示してもよい。メッセージ61は、設定UI60aの概要と、現時点で設定されているバックアップ日時やバックアップ対象などを説明するためのテキストである。ラジオボタン62はクラウド12へのバックアップを実行するかどうかを選択するためのボタンである。キャンセルボタン63は、今回ユーザにより入力または変更された設定内容を破棄することをCPU22dに指示するためのボタンである。確定ボタン64は、今回ユーザにより入力または変更された設定内容を確定することをCPU22dに指示するためのボタンである。CPU22dは確定ボタン64が押されたことを検知すると、変更された設定情報をプログラムメモリ24dまたはHDD39dに書き込む。さらに、CPU22dは設定情報(バックアップ設定)をデータストレージ6に送信し、データストレージ6のHDD39bなどに書き込む。詳細設定ボタン65は設定情報を詳細に設定することをCPU22dに要求するためのボタンである。CPU22dは詳細設定ボタン65が押されたことを検知すると、ディスプレイ15に詳細設定を行うための設定UIを表示する。
図9は詳細設定のための設定UI60bを示している。テキストボックス66はバックアップ時刻を設定するためのボックスである。テキストボックス66は複数のバックアップ時刻の入力を受け付けてもよい。これにより、一日に複数回にわたりバックアップが実行される。バックアップ対象設定部67は、バックアップ対象となる画像処理装置(コントローラ)、設定データおよび検査結果を設定するためのUIである。ここでは省略されているが、設定データに含まれている複数のサブデータのいずれかをクラウド12にバックアップするかを指定するためのUIや検査結果に含まれる複数の計測データのうちいずれをバックアップするかを指定するためのUI、クラウド12のURLや認証情報を指定するためのUIなども設定UI60bに含まれてもよい。
<保存処理フローチャート>
図10は画像処理装置2からデータストレージ6へ設定データを保存する処理を示すフローチャートである。画像処理装置2のCPU22aは制御プログラムにしたがって以下の処理を実行する。
S1でCPU22a(保存部32)は設定データの保存条件が満たされているかどうかを判定する。たとえば、CPU22aは、コンソール9を通じて設定データ40が編集されたかどうかを判定する。設定データ40が編集されると、CPU22aはS2に進む。設定データ40が編集されていなければ、CPU22aは保存処理を終了する。つまり、CPU22aは保存条件が満たされるまで待機することになる。
S2でCPU22a(保存部32)は設定データ40の比較に必要な情報をデータストレージ6から取得する。たとえば、保存部32は、データストレージ6に保存されている最新の設定データそのものを取得したり、最新の設定データのサイズ情報やタイムスタンプ情報を取得したりする。保存部32は通信部29aを通じて設定データリクエストをデータストレージ6に送信してもよい。データストレージ6のCPU22bは設定データリクエストを受信すると、レスポンス(応答)として最新の設定データを、通信部29bを通じて画像処理装置2に送信する。設定データそのものが送信されてもよいが、判定に必要なサイズ情報やタイムスタンプだけが送信されてもよい。
S3でCPU22a(判定部50a)は、画像処理装置2に記憶されている最新の設定データ40aと、データストレージ6に記憶されている最新の設定データ40bとを比較し、両者に差分があるかどうかを判定する。ここで、比較対象とされるデータは保存設定によりデータストレージ6への保存対象として指定されたデータである。画像処理装置2に記憶されている最新の設定データ40aと、データストレージ6に記憶されている最新の設定データ40bとの間に差分があると、CPU22aはS4に進む。差分がなければ、CPU22aはS4をスキップして保存処理を終了する。S3の判定処理は、保存設定により指定された複数の保存対象のそれぞれについて実行される。また、複数の保存対象のうち一つでも差分が検知されると、CPU22aはS4に進む。また、この判定処理には、画像比較部51aにより実行される画像比較、情報量比較部52aにより実行される情報量比較、タイムスタンプ比較部53aにより実行されるタイムスタンプ比較などが含まれてもよい。
S4でCPU22a(保存部32)は、保存対象をデータストレージ6に書き込む。保存部32は、保存対象のうち、差分の検出されたデータだけをデータストレージ6へ書き込んでもよい。これによりデータストレージ6への通信負荷が削減される。あるいは、保存部32は、保存対象をすべて書き込んでもよい。この場合、保存部32は、差分の検出されなかった保存対象をそのまま書き込まずに、過去のデータと同一であったことを示すデータ(参照ファイル)に置換してから書き込んでもよい。一般に参照ファイルの情報量は元のデータの情報量よりも少ないため、通信負荷や記憶に必要な領域が減少する。たとえば、保存部32設定データ40を構成する複数のサブデータのうち差分の検出されたサブデータをデータストレージ6に書き込み、差分の検出されなかったサブデータは参照データに置換してデータストレージ6に書き込んでもよい。ここで、参照データは、差分の検出されなかったサブデータと同一であるサブデータの所在位置(HDD39b内のフォルダのパス名)を示すデータである。
図11は画像処理装置2からデータストレージ6へ検査結果を保存する処理を示すフローチャートである。画像処理装置2のCPU22aは制御プログラムにしたがって以下の処理を実行する。
S5でCPU22a(保存部32)は検査結果の保存条件が満たされているかどうかを判定する。たとえば、CPU22aは、検査結果がNG(不合格)になったかどうかを判定する。保存条件が満たされていれば(例:検査結果がNGであれば)、CPU22aはS6に進む。保存条件が満たされていなければ、CPU22aは保存処理を終了する。つまり、CPU22aは保存条件が満たされるまで待機することになる。
S6でCPU22a(保存部32)は保存条件を満たしいている検査結果をデータストレージ6に書き込む。
<バックアップ処理のフローチャート>
図12はデータストレージ6からクラウド12へ設定データをバックアップする処理を示すフローチャートである。データストレージ6のCPU22bは制御プログラムにしたがって以下の処理を実行する。
S11でCPU22b(バックアップ部55)は設定データのバックアップ条件が満たされているかどうかを判定する。たとえば、CPU22b(バックアップ部55)はPC13aによって編集されたバックアップ設定に含まれているバックアップ時刻とリアルタイムクロックの時刻とを比較し、バックアップ時刻が到来したかどうかを判定する。リアルタイムクロック(RTC)はCPU22bが備える内部時計である。バックアップ時刻が到来すると、CPU22bはS12に進む。バックアップ時刻が到来していなければ、CPU22bはS12〜S14をスキップしてバックアップ処理を終了する。つまり、CPU22bはバックアップ条件が満たされるまで待機することになる。
S12でCPU22b(バックアップ部55)は設定データ40の比較に必要な情報をクラウド12から取得する。たとえば、バックアップ部55は、クラウド12にバックアップされている最新の設定データそのものを取得したり、最新の設定データのサイズ情報やタイムスタンプ情報を取得したりする。バックアップ部55は通信部29bを通じて設定データリクエストをクラウド12に送信してもよい。クラウド12のCPU22cは設定データリクエストを受信すると、レスポンス(応答)として最新の設定データを、通信部29cを通じてデータストレージ6に送信する。設定データそのものが送信されてもよいが、判定に必要なサイズ情報やタイムスタンプだけが送信されてもよい。
S13でCPU22b(判定部50b)は、データストレージ6に記憶されている最新の設定データ40bと、クラウド12に記憶されている最新の設定データ40dとを比較し、両者に差分があるかどうかを判定する。ここで、比較対象とされるデータはバックアップ設定によりクラウド12へのバックアップ対象として指定されたデータである。データストレージ6に記憶されている最新の設定データ40bと、クラウド12に記憶されている最新の設定データ40dとの間に差分があると、CPU22bはS14に進む。差分がなければ、CPU22bはS14をスキップしてS15に進む。S13の判定処理は、バックアップ設定により指定された複数のバックアップ対象のそれぞれについて実行される。また、複数のバックアップ対象のうち一つでも差分が検知されると、CPU22bはS14に進む。また、この判定処理には、画像比較部51bにより実行される画像比較、情報量比較部52bにより実行される情報量比較、タイムスタンプ比較部53bにより実行されるタイムスタンプ比較などが含まれてもよい。
S14でCPU22b(バックアップ部55)は、バックアップ対象の設定データをクラウド12にバックアップする。バックアップ部55は、バックアップ対象のうち、差分の検出されたデータだけをクラウド12へ書き込んでもよい。これによりクラウド12への通信負荷が削減される。あるいは、バックアップ部55は、バックアップ対象をすべて書き込んでもよい。この場合、バックアップ部55は、差分の検出されなかったバックアップ対象をそのまま書き込まずに、過去のデータと同一であったことを示すデータ(参照ファイル)に置換してから書き込んでもよい。バックアップ部55は、サブデータごとに参照ファイルへの置き換えを実行してもよい。一般に参照ファイルの情報量は元のデータの情報量よりも少ないため、通信負荷や記憶に必要な領域が減少する。なお、参照ファイルは、差分の検出されなかったサブデータと同一であると判定された過去のサブデータの所在位置(クラウド12内のフォルダのパス名)を示す位置データを含む。
図13はデータストレージ6からクラウド12へ検査結果をバックアップする処理を示すフローチャートである。データストレージ6のCPU22bは制御プログラムにしたがって以下の処理を実行する。
S15でCPU22b(バックアップ部55)は検査結果のバックアップ条件が満たされているかどうかを判定する。たとえば、CPU22bは、検査結果がNG(不合格)になったかどうかを判定する。バックアップ条件が満たされていれば(例:検査結果がNGであれば)、CPU22bはS16に進む。バックアップ条件が満たされていなければ、CPU22bはバックアップ処理を終了する。つまり、CPU22bはバックアップ条件が満たされるまで待機することになる。
S16でCPU22b(バックアップ部55)はバックアップ条件を満たしいている検査結果をクラウド12にバックアップする。
<まとめ>
図1を用いて説明したように、外観検査システム1は画像処理装置2と、画像処理装置2が実行する画像検査(画像処理)の設定データを保存するデータストレージ6とを有する。なお、外観検査システム1は画像処理システムと呼ばれてもよい。図2、図3が示すように、ワークメモリ23aは、画像検査の設定データを記憶する第一記憶手段の一例である。検査部31や画像処理部30は画像処理装置2に接続または一体化された撮像手段(例:カメラ4)により取得されたワークの画像に対して、設定データにしたがった画像検査を実行する検査手段の一例である。判定部50aはワークメモリ23aに記憶されている設定データ40とデータストレージ6に記憶されている設定データ40との間に差があるかを判定する第一判定手段の一例である。保存部32や通信部29aは第一送信手段の一例である。つまり、判定部50aが、ワークメモリ23aに記憶されている設定データ40とデータストレージ6に記憶されている設定データ40との間に差があると判定すると、保存部32や通信部29aはワークメモリ23aに記憶されている設定データ40をデータストレージ6に送信する。図4、図5が示すように、HDD39bは画像処理装置2の設定データを記憶する第二記憶手段の一例である。通信部29bやバックアップ部55は、画像処理装置2から送信される設定データを受信する受信手段の一例である。判定部50bは、HDD39bに記憶されている設定データ40と外観検査システム1の外部に存在する外部サーバに記憶されている設定データ40との間に差があるかを判定する第二判定手段の一例である。クラウド12は外部に存在する外部サーバの一例である。バックアップ部55や通信部29bは、HDD39bに記憶されている設定データ40とクラウド12に記憶されている設定データ40との間に差があると判定されると、HDD39bに記憶されている設定データ40を外部サーバに送信する第二送信手段の一例である。このように、本実施例によれば、外観検査システム1のデータをクラウド12に対してバックアップする際の通信負荷が軽減される。
図3が示すように、設定データ40aは、予め良品と判定されたワークから取得され、画像検査の基準として使用される基準画像41を含んでもよい。判定部50aは、ワークメモリ23aに記憶されている設定データ40aに含まれている基準画像と、HDD39bに記憶されている設定データ40bに含まれている基準画像とが異なっている場合に、設定データ40aと設定データ40bとの間に差があると判定してもよい。とりわけ、基準画像41は、他の設定データと比較して情報量が多い。そのため、基準画像41の転送を省略することで、通信負荷が軽減される。
判定部50aは、ワークメモリ23aに記憶されている設定データ40aの情報量と、HDD39bに記憶されている設定データ40bの情報量とに差がある場合に、設定データ40aと設定データ40bとの間に差があると判定してもよい。一般に、二つのデータが異なれば、二つのデータの情報量も異なるからである。
判定部50aは、ワークメモリ23aに記憶されている設定データ40aのタイムスタンプと、HDD39bに記憶されている設定データ40bのタイムスタンプとに差がある場合に、設定データ40aと設定データ40bとの間に差があると判定してもよい。一般に二つのデータのタイムスタンプが異なれば、二つのデータが異なっている可能性が高いからである。
判定部50bは、HDD39bに記憶されている設定データ40に含まれている基準画像と、クラウド12に記憶されている設定データ40に含まれている基準画像とが異なっている場合に、HDD39bに記憶されている設定データ40とクラウド12に記憶されている設定データ40との間に差があると判定してもよい。判定部50bは、HDD39bに記憶されている設定データ40の情報量と、クラウド12に記憶されている設定データ40の情報量とに差がある場合に、HDD39bに記憶されている設定データ40とクラウド12に記憶されている設定データ40との間に差があると判定してもよい。判定部50aは、HDD39bに記憶されている設定データ40のタイムスタンプと、クラウド12に記憶されている設定データ40のタイムスタンプとに差がある場合に、HDD39bに記憶されている設定データ40とクラウド12に記憶されている設定データ40との間に差があると判定してもよい。
図3などに示したように、ワークメモリ23aおよびHDD39bは、設定データ40aとともに、検査部31により合格と判定されたワークの画像であるOK画像37を記憶するように構成されていてもよい。さらに、設定部54bは、OK画像37を外部サーバに送信するか否かを設定する第一設定手段を有していてもよい。クラウド12が多数のOK画像37を解析することで、ワークの製造精度に余裕があるのかどうかを判定することも可能となろう。
ワークメモリ23aおよびHDD39bは、設定データ40aとともに、検査部31により不合格と判定されたワークの画像であるNG画像38を記憶してもよい。設定部54bは、NG画像38を外部サーバに送信するか否かを設定する第二設定手段を有してもよい。クラウド12が多数のNG画像38を解析することで、ワークの製造上の課題を見つけやすくなろう。
設定データ40は複数のサブデータから構成されていてもよい。設定部54bは複数のサブデータのうち通信部29bにより送信されて外部サーバにバックアップされるサブデータを指定する指定手段を有してもよい。判定部50bは、設定部54bにより指定されたサブデータについて差の有無を判定するように構成されていてもよい。バックアップ部55は、設定部54bにより指定されたサブデータのうち判定部50bにより差があると判定されたサブデータを外部サーバに送信してもよい。このように設定データの比較は設定データを構成しているサブデータごとに実行されてもよい。
バックアップ部55は、設定データを外部サーバにバックアップするタイミングごとに外部サーバにフォルダを作成して当該設定データを記憶させてもよい。これにより、バックアップされた設定データ40b、40dの管理が容易になろう。
バックアップ部55は、第一バックアップタイミングにデータストレージ6からバックアップされた設定データ40dを記憶する第一フォルダ(例:フォルダ58d)と、第一バックアップタイミングよりも後の第二バックアップタイミングにデータストレージ6からバックアップされた設定データ40bを記憶する第二フォルダ(フォルダ58e)とを有してもよい。第二バックアップタイミングにデータストレージ6からバックアップされた複数のサブデータには、第一フォルダに記憶されているいずれかのサブデータと同一のサブデータが含まれていることがある。この場合、バックアップ部55は、第二フォルダに同一のサブデータを記憶する代わりに、第一フォルダのサブデータの所在位置を示すデータやファイルを記憶させてもよい。これにより、HDD39bの記憶容量を有効活用することが可能となろう。
ワークメモリ23aおよびHDD39bは、設定データ40とともに、検査部31によるワークの検査結果35を記憶するように構成されていてもよい。データストレージ6の設定部54bは、検査結果を外部サーバに送信するか否かを設定する第三設定手段をさらに有してもよい。これにより、検査結果の転送を省略して、設定データがクラウド12にバックアップされるようになる。また、検査結果とともに設定データがクラウド12にバックアップされるようになってもよい。
データストレージ6から外部サーバに設定データをバックアップする頻度は、画像処理装置2からデータストレージ6に設定データをバックアップする頻度よりも少なくてもよい。本実施例によれば、現在の設定データと過去の設定データとに差がある場合に、現在の設定データがクラウド12にバックアップされる。これは、両者に差がない場合は、バックアップが実行されない。よって、クラウド12のバックアップ頻度は、データストレージ6のバックアップ頻度よりも少なくなる。また、画像処理装置2がデータストレージ6に設定データをN回バックアップするごとに、データストレージ6はクラウド12に対して設定データを1回転送してもよい。ここで、データストレージ6からクラウド12へ転送されるデータは、N回のバックアップにより取得されたすべてのデータであってもよいし、最新の一回分のデータであってもよい。前者のバックアップは、ネットワークの通信負荷が比較的に低い深夜に実行されてもよい。
データストレージ6とクラウド12との間の通信速度は、画像処理装置2とデータストレージ6との間の通信速度よりも遅くてもよい。このようなケースでは、特に本発明を適用することが望まれるであろう。
データストレージ6はネットワークアタッチストレージ(NAS)であってもよい。また、外部サーバはクラウドであってもよい。
判定部50bは、バックアップ部55により取得された現在の設定データと、現在の設定データよりも先にバックアップ部55により取得されてHDD39bに記憶された過去の設定データとの間にある差を検知する検知手段の一例である。バックアップ部55は、判定部50bが差を検知すると、外観検査システム1の外部に存在する外部サーバに現在の設定データを書き込む書き込み手段の一例である。プログラム作成支援装置11やコンソール9は、画像処理装置2に接続され、第一記憶手段(ワークメモリ23a)に記憶されている設定データを編集する編集手段(CPU22)を有していてもよい。プログラム作成支援装置11のハードウエア構成はPC13と基本的に同じであってもよい。
1...外観検査システム、2...画像処理システム、6...データストレージ

Claims (17)

  1. 画像処理装置と、前記画像処理装置が実行する画像検査の設定データを保存するデータストレージとを有する画像処理システムであって、
    前記画像処理装置は、
    画像検査の設定データを記憶する第一記憶手段と、
    前記画像処理装置に接続または一体化された撮像手段により取得されたワークの画像に対して、前記設定データにしたがった画像検査を実行する検査手段と、
    前記第一記憶手段に記憶されている設定データと前記データストレージに記憶されている設定データとの間に差があるかを判定する第一判定手段と、
    前記第一判定手段が、前記第一記憶手段に記憶されている設定データと前記データストレージに記憶されている設定データとの間に差があると判定すると、前記第一記憶手段に記憶されている設定データを前記データストレージに送信する第一送信手段と、を有し、
    前記データストレージは、
    前記画像処理装置から受信された設定データを記憶する第二記憶手段と、
    前記第二記憶手段に記憶されている設定データと前記画像処理システムの外部に存在する外部サーバに記憶されている設定データとの間に差があるかを判定する第二判定手段と、
    前記第二判定手段が前記第二記憶手段に記憶されている設定データと前記画像処理システムの外部に存在する外部サーバに記憶されている設定データとの間に差があると判定すると、前記第二記憶手段に記憶されている設定データを前記外部サーバに送信する第二送信手段と
    を有することを特徴とする画像処理システム。
  2. 前記設定データは、予め良品と判定されたワークから取得され、前記画像検査の基準として使用される基準画像を含み、
    前記第一判定手段は、前記第一記憶手段に記憶されている設定データに含まれている基準画像と、前記第二記憶手段に記憶されている設定データに含まれている基準画像とが異なっている場合に、前記第一記憶手段に記憶されている設定データと前記第二記憶手段に記憶されている設定データとの間に差があると判定することを特徴とする請求項1に記載の画像処理システム。
  3. 前記第一判定手段は、前記第一記憶手段に記憶されている設定データの情報量と、前記第二記憶手段に記憶されている設定データの情報量とに差がある場合に、前記第一記憶手段に記憶されている設定データと前記第二記憶手段に記憶されている設定データとの間に差があると判定することを特徴とする請求項1に記載の画像処理システム。
  4. 前記第一判定手段は、前記第一記憶手段に記憶されている設定データのタイムスタンプと、前記第二記憶手段に記憶されている設定データのタイムスタンプとに差がある場合に、前記第一記憶手段に記憶されている設定データと前記第二記憶手段に記憶されている設定データとの間に差があると判定することを特徴とする請求項1に記載の画像処理システム。
  5. 前記設定データは、予め良品と判定されたワークから取得され、前記画像検査の基準として使用される基準画像を含み、
    前記第二判定手段は、前記第二記憶手段に記憶されている設定データに含まれている基準画像と、前記外部サーバに記憶されている設定データに含まれている基準画像とが異なっている場合に、前記第二記憶手段に記憶されている設定データと前記外部サーバに記憶されている設定データとの間に差があると判定することを特徴とする請求項1に記載の画像処理システム。
  6. 前記第二判定手段は、前記第二記憶手段に記憶されている設定データの情報量と、前記外部サーバに記憶されている設定データの情報量とに差がある場合に、前記第二記憶手段に記憶されている設定データと前記外部サーバに記憶されている設定データとの間に差があると判定することを特徴とする請求項1に記載の画像処理システム。
  7. 前記第判定手段は、前記第二記憶手段に記憶されている設定データのタイムスタンプと、前記外部サーバに記憶されている設定データのタイムスタンプとに差がある場合に、前記第二記憶手段に記憶されている設定データと前記外部サーバに記憶されている設定データとの間に差があると判定することを特徴とする請求項1に記載の画像処理システム。
  8. 前記第一記憶手段および前記第二記憶手段は、前記設定データとともに、前記検査手段により合格と判定されたワークの画像であるOK画像を記憶するように構成されており、
    前記データストレージは、さらに、
    前記OK画像を前記外部サーバに送信するか否かを設定する第一設定手段を有することを特徴とする請求項1ないし7のいずれか一項に記載の画像処理システム。
  9. 前記第一記憶手段および前記第二記憶手段は、前記設定データとともに、前記検査手段により不合格と判定されたワークの画像であるNG画像を記憶するように構成されており、
    前記データストレージは、さらに、
    前記NG画像を前記外部サーバに送信するか否かを設定する第二設定手段を有することを特徴とする請求項1ないし8のいずれか一項に記載の画像処理システム。
  10. 前記設定データは複数のサブデータから構成されており、
    前記データストレージは、さらに、
    前記複数のサブデータのうち前記第二送信手段により送信されて前記外部サーバにバックアップされるサブデータを指定する指定手段を有し、
    前記第二判定手段は、前記指定手段により指定されたサブデータについて前記差の有無を判定するように構成されており、
    前記第二送信手段は、前記指定手段により指定されたサブデータのうち前記第二判定手段により差があると判定されたサブデータを前記外部サーバに送信するように構成されていることを特徴とする請求項1ないし9のいずれか一項に記載の画像処理システム。
  11. 前記第二送信手段は、前記設定データを前記外部サーバにバックアップするタイミングごとに前記外部サーバにフォルダを作成して当該設定データを記憶させることを特徴とする請求項10に記載の画像処理システム。
  12. 前記外部サーバは、
    第一バックアップタイミングに前記データストレージから取得された設定データを記憶する第一フォルダと、
    前記第一バックアップタイミングよりも後の第二バックアップタイミングに前記データストレージから取得された設定データを記憶する第二フォルダと、を有し、
    前記第二バックアップタイミングに前記データストレージから取得された複数のサブデータに前記第一フォルダに記憶されているいずれかのサブデータと同一のサブデータが含まれている場合、前記第二フォルダは、前記同一のサブデータを記憶する代わりに、前記第一フォルダのサブデータの所在位置を示すデータを記憶することを特徴とする請求項11に記載の画像処理システム。
  13. 前記第一記憶手段および前記第二記憶手段は、前記設定データとともに、前記検査手段による前記ワークの検査結果を記憶するように構成されており、
    前記データストレージは、さらに、
    前記検査結果を前記外部サーバに送信するか否かを設定する第三設定手段をさらに有することを特徴とする請求項1ないし12のいずれか一項に記載の画像処理システム。
  14. 前記データストレージから前記外部サーバに設定データをバックアップする頻度は、前記画像処理装置から前記データストレージに設定データを保存する頻度よりも少ないことを特徴とする請求項1ないし13のいずれか一項に記載の画像処理システム。
  15. 前記データストレージと前記外部サーバとの間の通信速度は、前記画像処理装置と前記データストレージとの間の通信速度よりも遅いことを特徴とする請求項14に記載の画像処理システム。
  16. 画像処理装置と、前記画像処理装置が実行する画像検査の設定データをバックアップするデータストレージとを有する画像処理システムであって、
    前記画像処理装置は、
    画像検査の設定データを記憶する第一記憶手段と、
    前記画像処理装置に接続または一体化された撮像手段により取得されたワークの画像に対して、前記設定データにしたがった画像検査を実行する検査手段と、
    前記第一記憶手段に記憶されている設定データと前記データストレージに記憶されている設定データとの間に差があるときに、前記第一記憶手段に記憶されている設定データを前記データストレージに保存する保存手段と、
    を有し、
    前記データストレージは、
    前記画像処理装置から受信された設定データを記憶する第二記憶手段と、
    前記第二記憶手段に記憶されている設定データと前記画像処理システムの外部に存在する外部サーバに記憶されている設定データとの間に差があるときに、前記第二記憶手段に記憶されている設定データを前記外部サーバにバックアップするバックアップ手段と
    を有することを特徴とする画像処理システム。
  17. 前記画像処理装置に接続され、前記第一記憶手段に記憶されている設定データを編集する編集手段をさらに有することを特徴とする請求項1ないし1のいずれか一項に記載の画像処理システム。
JP2017223729A 2017-11-21 2017-11-21 画像処理システム Active JP6979860B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017223729A JP6979860B2 (ja) 2017-11-21 2017-11-21 画像処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017223729A JP6979860B2 (ja) 2017-11-21 2017-11-21 画像処理システム

Publications (3)

Publication Number Publication Date
JP2019095984A JP2019095984A (ja) 2019-06-20
JP2019095984A5 JP2019095984A5 (ja) 2020-11-12
JP6979860B2 true JP6979860B2 (ja) 2021-12-15

Family

ID=66971647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017223729A Active JP6979860B2 (ja) 2017-11-21 2017-11-21 画像処理システム

Country Status (1)

Country Link
JP (1) JP6979860B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7311360B2 (ja) * 2019-08-29 2023-07-19 株式会社キーエンス 画像計測システム
CN111831483A (zh) * 2020-07-20 2020-10-27 北京百度网讯科技有限公司 备份管理方法、系统、电子设备以及介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000357116A (ja) * 1999-06-15 2000-12-26 Matsushita Electric Works Ltd 画像処理装置のデータ転送方法および画像処理装置のデータ転送システム
JP4195955B2 (ja) * 1999-12-22 2008-12-17 パナソニック電工株式会社 画像処理システムおよびそのデータ編集方法
JP2009163587A (ja) * 2008-01-09 2009-07-23 Hitachi Ltd バックアップ制御装置、コンテンツバックアップ方法、コンテンツ再生方法
JP5865707B2 (ja) * 2012-01-06 2016-02-17 株式会社キーエンス 外観検査装置、外観検査方法及びコンピュータプログラム
JP2013243802A (ja) * 2012-05-18 2013-12-05 Mitsubishi Electric Corp 電力系統監視制御システム
JP2014021691A (ja) * 2012-07-18 2014-02-03 Nec Corp データバックアップ装置、データバックアップ方法、及びそのプログラム
US9952936B2 (en) * 2012-12-05 2018-04-24 Hitachi, Ltd. Storage system and method of controlling storage system
JP2014170525A (ja) * 2013-02-06 2014-09-18 Ricoh Co Ltd 情報処理システム
JP2017054489A (ja) * 2016-07-19 2017-03-16 株式会社エーピーコミュニケーションズ ストレージシステム、アーカイブ処理方法、ストレージ通信装置、及びコンピュータプログラム

Also Published As

Publication number Publication date
JP2019095984A (ja) 2019-06-20

Similar Documents

Publication Publication Date Title
JP6630545B2 (ja) 位置決め方法、位置決め装置、プログラムおよびコンピュータ可読記録媒体
JP6608682B2 (ja) 位置決め方法、外観検査装置、プログラム、コンピュータ可読記録媒体および外観検査方法
JP5947169B2 (ja) 外観検査装置、外観検査法およびプログラム
US10489900B2 (en) Inspection apparatus, inspection method, and program
KR102300951B1 (ko) 기판 검사 장치 및 스크린 프린터의 결함 유형 결정 방법
JP5415182B2 (ja) 画像処理装置及びプログラム作成支援装置並びに画像処理方法
JP5381166B2 (ja) モデル画像取得支援装置、モデル画像取得支援方法およびモデル画像取得支援プログラム
KR101117472B1 (ko) 육안 검사장치와 육안 검사방법
JP6979860B2 (ja) 画像処理システム
JP2022507678A (ja) 自動目視検査プロセスにおけるセットアップ段階の最適化
JP6987616B2 (ja) 設定サポートシステム、データサーバ、制御方法およびプログラム
JP2014055915A (ja) 外観検査装置、外観検査法およびプログラム
JP6987617B2 (ja) 設定サポートシステム、データサーバ、制御方法およびプログラム
JP6207283B2 (ja) 画像処理装置、画像処理システム、検査方法およびプログラム
JP5696194B2 (ja) プログラム作成支援装置及び画像処理装置
JP6008667B2 (ja) 外観検査装置、外観検査法およびプログラム
WO2021220437A1 (ja) 外観検査装置および外観検査方法
JP7080123B2 (ja) 画像検査装置
WO2023162941A1 (ja) 検査装置、画像処理方法、及び画像処理プログラム
JP5947168B2 (ja) 外観検査装置、外観検査装置の制御方法およびプログラム
WO2023162940A1 (ja) 検査装置、検査方法、及び検査プログラム
JP4613090B2 (ja) 検査装置
JP2020035052A (ja) 撮影装置の制御方法、撮影装置、および部品の製造方法
WO2020184567A1 (ja) 画像検査装置及び画像検査方法
US20220261943A1 (en) Image processing device, image processing method, production system, product manufacturing method, and storage medium

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200923

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200923

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210820

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211008

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211116

R150 Certificate of patent or registration of utility model

Ref document number: 6979860

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150