以下、図面を参照しつつ実施の形態について詳細に説明する。図面においては、理解容易の目的で、必要に応じて各部の寸法や数を誇張または簡略化して描いている。なお、図面においては同様な構成及び機能を有する部分については同じ符号が付されており、下記説明では重複説明が省略される。また各図において、構成要素の方向関係を明確にするため、Z軸方向を鉛直方向とし、XY平面を水平面とするXYZ直交座標系を適宜付している。
第1の実施の形態.
図1は、錠剤印刷装置10の構成の一例を概略的に示す図である。錠剤印刷装置10は錠剤検査装置1と印刷ヘッド6とを備えている。
錠剤検査装置1は錠剤9の外観を検査する装置である。図2は、錠剤9の一例を概略的に示す斜視図である。図2の例では、錠剤9は略円盤形状を有している。具体的には、錠剤9は一対の主面9a,9bと側面9cとを備えている。主面9a,9bは平面視において、略同一の円形状を有する。この主面9a,9bの一方および他方はそれぞれ表面および裏面と呼ばれることがあり、また上面および下面と呼ばれることもある。
錠剤9の主面9aおよび側面9cは角部を形成しながら互いに連結されており、主面9bおよび側面9cも角部を形成しながら互いに連結されている。錠剤9の直径は例えば5[mm]程度~10数[mm]程度に設定され、その厚みは例えば5[mm]程度以下に設定され得る。
図1を参照して、錠剤検査装置1はホッパー2と搬送ドラム3と搬送部4と撮像ヘッド5と選別部7と制御部8とを備えている。
ホッパー2は、錠剤9を錠剤印刷装置10内に投入するための投入部である。このホッパー2は、錠剤印刷装置10の筐体(図示省略)の天井部上側に設けられている。ホッパー2から投入された錠剤9は搬送ドラム3に導かれる。なお、ホッパー2を除く他の要素は錠剤印刷装置10の筐体の内部に設けられている。
搬送ドラム3は略円柱状の形状を有しており、その中心軸がY軸方向に沿う姿勢で配置されている。搬送ドラム3は図示省略の回転駆動モータによって当該中心軸を回転中心として図1の紙面上で反時計回りに回転される。この回転駆動モータは例えば制御部8によって制御される。
搬送ドラム3の外周面には複数の吸着孔(不図示)が周方向に沿って並んで形成されている。複数の吸着孔のそれぞれは搬送ドラム3の内部に設けられた吸引機構(図示省略)と連通している。この吸引機構は例えば制御部8によって制御される。この吸引機構を作動させることによって複数の吸着孔のそれぞれに大気圧よりも低い負圧を作用させることができる。これにより、搬送ドラム3の各吸着孔は1個の錠剤9を吸着保持することができる。
搬送部4は搬送ドラム3の下方に配置されている。搬送ドラム3の外周面に吸着保持された錠剤9は搬送ドラム3の回転に伴って周方向に移動する。錠剤9が搬送ドラム3の下方側まで移動したときに吸引機構が錠剤9に対する吸着を解除することにより、錠剤9が落下して搬送部4へと受け渡される。
搬送部4は錠剤9を搬送する。図1の例では、搬送部4はベルトコンベアであって、搬送ベルト41と一対のプーリ42とを備えている。一対のプーリ42は例えばX軸方向において間隔を空けて配置されており、自身の中心軸がY軸方向に沿う姿勢で配置されている。一対のプーリ42はそれぞれ自身の中心軸を回転中心として回転する。
搬送ベルト41は一対のプーリ42に掛け渡されている。一対のプーリ42の少なくともいずれか一方が図示省略の駆動モータによって回転駆動されることにより、搬送ベルト41が図1の矢印にて示す向きに回走する。この駆動モータは例えば制御部8によって制御される。
搬送ベルト41の外周面にも、図示省略の複数の吸着孔がその周方向に沿って並んで形成されている。複数の吸着孔のそれぞれは搬送ベルト41の内部に設けられた吸引機構(図示省略)と連通している。この吸引機構は例えば制御部8によって制御される。この吸引機構を作動させることによって複数の吸着孔のそれぞれに大気圧よりも低い負圧を作用させることができる。これにより、搬送ベルト41の各吸着孔は1個の錠剤9を吸着保持することができる。
搬送ベルト41が錠剤9を吸着保持しながら回走することにより、錠剤9はX軸方向に沿って搬送ドラム3から遠ざかる方向に搬送される。
撮像ヘッド5は搬送部4による錠剤9の搬送経路の途中において搬送ドラム3の下流側で、搬送部4と対向する位置に配置されている。この撮像ヘッド5の撮像エリアは搬送ベルト41の一部を含んでいる。撮像ヘッド5は錠剤9がこの撮像エリア内を移動するときに錠剤9を撮像して、撮像画像を生成する。撮像ヘッド5はこの撮像画像を制御部8へ出力する。撮像ヘッド5の具体的な内部構成の一例については後に詳述する。
制御部8は、入力された撮像画像に対して画像処理を施すことにより、錠剤9の外観を検査する。制御部8は錠剤9の外観に欠陥が生じている場合にはその錠剤9を不良品と判断し、錠剤9の外観に欠陥が生じていない場合にはその錠剤9を良品と判断する。当該欠陥としては、錠剤9に付着した不純物または錠剤9の形状上の不備(例えば欠け)などの欠陥を例示できる。制御部8による具体的な画像処理の一例については後に詳述する。
印刷ヘッド6は錠剤9の搬送途中において撮像ヘッド5の下流側で、搬送ベルト41の上方に配置されている。印刷ヘッド6は例えば制御部8によって制御され、錠剤9に対して印刷処理を行う。印刷ヘッド6は複数の吐出ノズル(図示省略)を備えており、各吐出ノズルからインクジェット方式によってインクの液滴を吐出する。インクジェットの方式は、ピエゾ素子(圧電素子)に電圧を加えて変形させてインクの液滴を吐出するピエゾ方式であっても良いし、ヒータに通電してインクを加熱することによってインクの液滴を吐出するサーマル方式であっても良い。本実施形態においては、錠剤9に印刷処理を行うため、インクとしては食品衛生法で認められている原料によって製造された可食性インクを使用する。
図1の例では、印刷ヘッド6は撮像ヘッド5よりも搬送経路の下流側に位置しているので、制御部8は錠剤9の検査結果に応じて印刷処理の要否を決定してもよい。より具体的には、外観検査において錠剤9が良品と判断された場合には、制御部8はその錠剤9に対して印刷処理を行うように印刷ヘッド6を制御し、錠剤9が不良品と判断された場合には、その錠剤9に対して印刷処理を行わないように印刷ヘッド6を制御してもよい。これによれば、不要な印刷処理を回避することができる。
選別部7は外観検査の結果に応じて錠剤9を選別する。例えば選別部7は良品ボックスおよび不良品ボックスを有している。これらのボックスは上方に開口した箱状の形状を有している。良品ボックスは良品と判断された錠剤9を収容し、不良品ボックスは不良品と判断された錠剤9を収容する。例えばこれらのボックスは搬送ベルト41の下方側においてX軸方向に沿って並んで配置されている。制御部8は良品と判断した錠剤9が良品ボックスの開口部の直上に位置するときに、搬送ベルト41内の吸引機構を制御してその錠剤9に対する吸着を解除する。これにより、錠剤9は良品ボックスの内部へと落下して、これに収容される。不良品と判断された錠剤9についても同様にして、不良品ボックスの内部に収容される。
制御部8は上述したように各種の構成要素を制御し、また、撮像ヘッド5から入力される撮像画像に対して画像処理を行うことで錠剤9の外観検査を行う。
この制御部8は電子回路機器であって、例えばデータ処理装置および記憶媒体を有していてもよい。データ処理装置は例えばCPU(Central Processor Unit)などの演算処理装置であってもよい。記憶部は非一時的な記憶媒体(例えばROM(Read Only Memory)またはハードディスク)および一時的な記憶媒体(例えばRAM(Random Access Memory))を有していてもよい。非一時的な記憶媒体には、例えば制御部8が実行する処理を規定するプログラムが記憶されていてもよい。処理装置がこのプログラムを実行することにより、制御部8が、プログラムに規定された処理を実行することができる。もちろん、制御部8が実行する処理の一部または全部がハードウェアによって実行されてもよい。
<撮像ヘッド>
撮像ヘッド5は錠剤9の少なくとも2つの面が写る方向から、搬送途中の錠剤9を撮像する。なお錠剤9は、その主面9bが搬送ベルト41側を向く姿勢で搬送ベルト41に吸着保持されることもあれば、その主面9aが搬送ベルト41側を向く姿勢で搬送ベルト41に吸着保持されることもある。以下では、説明の便宜上、錠剤9はその主面9bが搬送ベルト41側を向く姿勢で搬送ベルト41に保持されるものとする。また錠剤9が搬送ベルト41に吸着保持された状態では、側面9cのうち少なくとも主面9a側の一部は搬送ベルト41から露出している。
撮像ヘッド5は錠剤9の主面9aおよび側面9cの両方が写る方向から錠剤9を撮像する。これにより、錠剤9の主面9aおよび側面9cの両方が写る撮像画像を生成する。図3および図4は、撮像ヘッド5の内部構成の一例を概略的に示す図である。例えば撮像ヘッド5は検査カメラ51とレンズ群52とミラー53とと角錐型ミラー54とを備えている。検査カメラ51は例えばCCD(Charge Coupled Device)イメージセンサまたはCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどのイメージセンサである。この検査カメラ51は錠剤9の搬送経路の一部とZ軸方向で対向する位置において、その撮像面が搬送ベルト41側を向く姿勢で配置されている。
ミラー53は、錠剤9の主面9aおよび側面9cからの光を後述する角錐型ミラー54に導くために設けられている。このミラー53の位置を説明するに当たって、便宜的に、錠剤9が検査カメラ51とZ軸方向で向かい合う位置に停止していると仮定する。図3を参照して、ミラー53はZ軸方向において検査カメラ51と錠剤9との間に位置しており、平面視において(つまりZ軸方向に沿って見て)錠剤9よりも外側に配置されている。また、ミラー53は角錐型ミラー54の各面に対向するように配置されている。
角錐型ミラー54は、ミラー53で反射した錠剤9の主面9aおよび側面9cからの光を、レンズ群52を介して検査カメラ51の撮像面に導く。角錐型ミラー54は、4つのミラーによって構成されており、各ミラー53と対向するように角錐型ミラー54が配置されている。
錠剤9の主面9aおよび側面9cで反射または散乱された光の一部はミラー53の一つに向かって斜め上方へと進み、当該ミラー53で反射し、ミラー53で反射した光は角錐型ミラー54で反射した上で、レンズ群52を介して検査カメラ51の撮像面に結像する。換言すれば、錠剤9の主面9aおよび側面9cから斜め上方に進む光を検査カメラ51の撮像面に向けて反射できるように、ミラー53および角錐型ミラー54の反射面の地面に対する角度が調整されている。
これにより、検査カメラ51は当該ミラー53から見た錠剤9の外観を撮像することができる。つまり、検査カメラ51は実質的に錠剤9を斜め方向から撮像することができ、その撮像画像には、錠剤9の主面9aおよび側面9cの両方が含まれることになる。なお図3では、光の経路の一例が破線で示されている。
図4の例では、複数(図では4つ)のミラー53が配置されている。例えば2つのミラー53がX軸方向において間隔を空けて配置されており、残り2つのミラー53がY軸方向において間隔を空けて配置されている。これによれば、錠剤9は平面視において四方をミラー53によって囲まれることになる。さらに、各ミラー53の中央に間隔をあけて角錐型ミラー54が配置されている。各ミラー53で反射された光は角錐型ミラー54でさらに反射され、レンズ群52を介して検査カメラ51の撮像面に結像される。具体的には、4つのミラー53で反射された光は検査カメラ51の撮像面のうち互いに異なる領域に結像される。これにより、撮像ヘッド5は4方向から錠剤9を撮像し、4方向から見た錠剤9の外観を含む撮像画像を生成する。
図5は、撮像画像IM1の一例を概略的に示す図である。撮像画像IM1には、4方向から見た錠剤9の外観が含まれており、これらのいずれにおいても、錠剤9の主面9aおよび側面9cが写っている。ここでは4方向から錠剤9を撮像するので、錠剤9の側面9cを全周に亘って撮像することができる。以下では、撮像画像IM1に写る錠剤9の主面9aおよび側面9cを、実際の錠剤9の主面9aおよび側面9cと区別すべく、それぞれ主面9aaおよび側面9caと呼ぶ。
撮像ヘッド5は図示省略の照明用光源を有していてもよい。この照明用光源は錠剤9へと光を照射する。これにより、撮像画像IM1における錠剤9の明るさを向上できる。
また、図3および図4の例では、ミラー53および角錐型ミラー54によって光の経路を曲げているものの、必ずしもこれに限らない。光の経路を曲げる素子として、プリズムなどの他の光学素子を採用してもよい。
<検査>
制御部8は、撮像ヘッド5から入力される撮像画像IM1に対して画像処理を行い、撮像された錠剤9の外観検査を行う。よって、制御部8は画像処理部として機能することとなる。
以下では、説明の簡単のために、一方向から見た錠剤9の外観について説明を行う。図6は、欠陥が生じている錠剤9を一方向から撮像した撮像画像IM11の一例を概略的に示す図である。図6の例では、錠剤9の主面9aaおよび側面9caにはそれぞれ欠陥d1,d2が存在している。
制御部8は、撮像画像IM11において錠剤9の主面9aaが占める主面領域Raと、錠剤9の側面9caが占める側面領域Rcとを特定し、主面領域Raおよび側面領域Rcに対してそれぞれ検査処理を行う。以下、より具体的に説明する。
図7は、錠剤検査装置1における動作の一例を示すフローチャートである。まずステップS1にて、撮像ヘッド5は錠剤9の主面9aおよび側面9cの両方が写る方向から搬送途中の錠剤9を撮像して、錠剤9の主面9aおよび側面9cの両方が写る撮像画像IM11を生成する。撮像ヘッド5はこの撮像画像IM11を制御部8へと出力する。
次に制御部8は撮像画像IM11における主面領域Raおよび側面領域Rcを特定する。この特定は例えば図7のステップS2~S6の一連の処理によって実行される。
まずステップS2にて、制御部8は撮像画像IM11に対してエッジ検出処理を行ってエッジ画像を生成する。ただしここでは、制御部8は、背景領域BRを削除した撮像画像IM11に対してエッジ検出処理を行う。背景領域BRとは、撮像画像IM11において錠剤9が占める錠剤領域TR以外の領域である。この錠剤領域TRは主面領域Raおよび側面領域Rcによって構成される。
背景領域BRの削除のために、まず制御部8は撮像画像IM11の錠剤領域TRと背景領域BRとを区別する。例えば制御部8は撮像画像IM11に対する二値化処理を用いて、錠剤領域TRと背景領域BRとを区別する。背景領域BRには、搬送ベルト41が含まれているので、錠剤領域TRと背景領域BRとを精度よく区別するために、実際の搬送ベルト41の色と錠剤9の色とのコントラストを大きくするとよい。例えば錠剤9が白色系である場合には、搬送ベルト41を黒色とする。制御部8は背景領域BRを特定すると、撮像画像IM11において背景領域BRを削除する。例えば制御部8は背景領域BR内の全ての画素の画素値を零にすることで、背景領域BRを削除する。
次に制御部8は、背景領域BRを削除した撮像画像IM11に対してエッジ検出処理を行って、エッジ画像を生成する。エッジ検出処理の具体的な処理方法は特に制限される必要は無いものの、その一例について簡単に説明する。例えば制御部8は除去後の撮像画像IM11に対してエッジ強度処理を行って、エッジ強度画像を生成する。エッジ強度処理は例えば各画素間の画素値の差の算出処理を含み、これにより、撮像画像IM11において画素間の画素値の差の大きい領域がエッジ強度画像において強調される。制御部8はこのエッジ強度画像において、画素値が所定のエッジ閾値よりも大きいか否かを画素ごとに判断する。エッジ閾値は例えば予め設定されて制御部8の記憶媒体に記憶されてもよい。制御部8はエッジ閾値よりも大きい画素値を有する画素を検出して、エッジ画像を生成する。
このエッジ画像は背景領域BRが除去された撮像画像IM11に基づいて生成されるので、背景領域BR内のエッジ(例えば搬送ベルト41の凹凸)はエッジ画像において検出されない。つまり、錠剤領域TRの輪郭に対応するエッジ(以下、錠剤エッジと呼ぶ)はエッジ画像内のエッジ群のうち最外周に位置することになる。
そこでステップS3にて、制御部8は錠剤エッジを次のように特定する。即ち、制御部8はエッジ画像におけるエッジ群のうち、最外周に位置するエッジを錠剤エッジP0(図8参照)として特定する。
図8は、錠剤エッジP0の一例を模式的に示す図である。図8の例では、模式的に、錠剤エッジP0が複数のエッジに分割して示されている。この錠剤エッジP0は側面外側エッジP1と主面外側エッジP2と一対の側面稜線エッジP4によって構成されている。側面外側エッジP1は、錠剤9の主面9bの周縁のうち撮像画像IM11に写っている部分に対応するエッジである。主面9bは円形状を有しているので、側面外側エッジP1は理想的には半楕円形状を有している。ここでいう半楕円形状とは、楕円をその長軸で2つに分割して得られる形状をいう。
主面外側エッジP2は撮像画像IM11における錠剤9の主面9aaの周縁のうち側面9caとは接していない部分に対応するエッジである。この主面外側エッジP2は錠剤9の主面9aaの周縁のうち錠剤領域TRの輪郭の一部に対応するエッジである、ともいえる。主面9aは円形状を有しているので、主面外側エッジP2は理想的には半楕円形状を有している。より具体的には、側面外側エッジP1および主面外側エッジP2は互いに反対側に膨らむ半楕円形状を有している。
一対の側面稜線エッジP4は理想的には直線状に延在しており、主面外側エッジP2の両端をそれぞれ側面外側エッジP1の両端に連結している。一対の側面稜線エッジP4は撮像画像IM11における錠剤9の側面9caの輪郭の一部に対応するエッジである。一対の側面稜線エッジP4はほぼ平行に延在しており、その延在方向は撮像ヘッド5の内部構成の配置によって予め決まっている。ここでは、側面稜線エッジP4は撮像画像IM11内の横方向に対して略45度で交差する方向に延在しているものとする。
なお一対の側面稜線エッジP4は実際には完全な平行ではない。一対の側面稜線エッジP4は側面外側エッジP1側に向かうにしたがって互いに近づくように僅かに傾斜している。以下では簡単のために、一対の側面稜線エッジP4は平行であると仮定する。より厳密に考えるのであれば、以下で述べる側面稜線エッジP4の延在方向を、一対の側面稜線エッジP4の延在方向の二等分線で表される方向と把握すればよい。
図8の例では、撮像画像IM11における錠剤9の主面9aaと側面9caとの間の境界に対応する境界エッジP3を破線で示している。言い換えれば、境界エッジP3は主面領域Raと側面領域Rcとの間の境界に対応するエッジである。境界エッジP3は理想的には、主面外側エッジP2とは反対側に膨らむ半楕円形状を有している。主面外側エッジP2および境界エッジP3の一組は錠剤9の主面9aaの周縁に対応しており、理想的に楕円形状を呈する。以下では、主面外側エッジP2および境界エッジP3の一組を主面エッジP23とも呼ぶ。
再び図7を参照して、ステップS4にて、制御部8はステップS3で特定した錠剤エッジP0から、側面外側エッジP1および主面外側エッジP2を抽出する。例えば制御部8は錠剤エッジP0のうち、所定方向D1(=側面稜線エッジP4の延在方向)に沿って延在するエッジを側面稜線エッジP4と特定する。そして制御部8は、錠剤エッジP0から側面稜線エッジP4を除いた2つのエッジのうち、所定側(図では右上側)にある一方を側面外側エッジP1と特定し、他方を主面外側エッジP2と特定する。
次にステップS5にて、制御部8は境界エッジP3をエッジ画像から特定する。例えば、境界エッジP3の形状と側面外側エッジP1の形状との類似性を考慮して、以下で説明するように境界エッジP3を特定する。
まず境界エッジP3と側面外側エッジP1との幾何学的な関係について述べる。境界エッジP3および側面外側エッジP1は同じ側に膨らむ半楕円形状を有している。またここでは錠剤9はさほど厚くないので、境界エッジP3および側面外側エッジP1はほぼ同一形状を有している、と考えることができる。つまり、境界エッジP3は側面外側エッジP1を所定方向D1に沿って主面外側エッジP2側へと、側面稜線エッジP4の長さの分だけ平行移動させた領域に存在している。側面稜線エッジP4の長さは錠剤9の厚みおよび撮像ヘッド5の内部構成の配置に応じて予め決まっているので、側面外側エッジP1が特定されれば、境界エッジP3が存在する領域を推定することができる。
そこで制御部8は、側面外側エッジP1から所定方向D1に沿って主面外側エッジP2側へと所定距離だけ離れた探索領域R1(図9も参照)内の画素を探索して境界エッジP3を特定する。図9は、探索領域R1の一例を模式的に示す図である。この探索領域R1の一例を説明するにあたって、その探索領域R1の中心線L0と、探索領域R1の輪郭を形成する線L1~L4とを導入する。
中心線L0は側面外側エッジP1を側面稜線エッジP4の長さの分だけ、所定方向D1に沿って主面外側エッジP2側へと移動させた線である。なお図9の例では、模式的に中心線L0と境界エッジP3とを一つの曲線で示しているものの、実際にはこれらは相違し得る。
線L1,L2は、中心線L0を所定方向D1に沿って互いに反対側へと所定幅だけ移動させた線である。図9では、線L1は線L2よりも側面外側エッジP1に近い。線L3,L4は所定方向D1に沿って延在しており、それぞれ線L1,L2の両端を連結する。探索領域R1はこれらの線L1~L4の一組によって囲まれた領域である。
以下では説明の便宜上、探索領域R1において所定方向D1に沿って並ぶ画素群を、「行」と呼ぶ。
図10は、制御部8の探索処理の一例を示すフローチャートである。まずステップS51にて、制御部8は値N,Mをそれぞれ1に初期化する。値Nは探索領域R1内の行の番号を示しており、値Mはその行に属する画素の番号を示している。第1番目の画素は線L1上の画素であり、第M番目の画素は各行において第(M-1)番目の画素の隣の画素である。
次にステップS52にて、制御部8はエッジ画像の探索領域R1内の第N行第M番目の画素がエッジを示すか否かを判断する。否定的な判断がなされたときには、ステップS53にて、制御部8は値Mに1を加算して値Mを更新し、更新後の値Mを用いて再びステップS52を実行する。つまり、エッジを示す画素(以下、エッジ画素とも呼ぶ)を検出できなければ、次の画素について同様の判断を行うのである。
ステップS52において肯定的な判断がなされたときには、ステップS54にて、制御部8はその画素を境界エッジP3の構成要素として把握する。次にステップS55にて、制御部8は値Nに1を加算して値Nを更新し、値Mを1に初期化する。次にステップS56にて、制御部8は値Nが基準値Nrefよりも大きいか否かを判断する。基準値Nrefは探索領域R1に含まれる行の総数である。つまり、制御部8は全ての行を探索したか否かを判断する。全ての行を探索してないと判断したときには、制御部8はステップS52を再び実行する。全ての行を探索したと判断したときには、制御部8は探索処理を終了する。
以上のように、制御部8は探索領域R1内の各行において、線L1から画素を順次に選択し、最初に検出したエッジ画素を境界エッジP3の構成要素として特定する。なお図9の例示では、画素の探索方向を探索領域R1内の実線矢印で模式的に示しており、矢印の終点は、境界エッジP3の構成要素を示している。
制御部8は、ステップS4で特定した主面外側エッジP2およびステップS5で特定した境界エッジP3の一組を、主面エッジP23として特定する。
以上のように、本実施の形態によれば、主面エッジP23を適切かつ容易に得ることができる。
ところで、この主面エッジP23は撮像画像IM11における錠剤9の主面9aaの周縁に対応するものの、実際に検出された主面エッジP23は理想的な楕円形状を呈するとは限らない。例えば錠剤9の主面9aの周縁近傍に照射される光にむらが生じていたり、あるいは、当該周縁近傍の一部から正反射した光が検査カメラ51に結像されて、一部の画素値が他の画素値に比べて非常に大きな値を有している場合がある。あるいは、当該周縁近傍に欠陥が生じている場合もある。このような場合には、主面エッジP23は理想的な楕円形状と相違し得る。
そこでステップS6にて、制御部8は楕円の関数に基づいて、主面エッジP23に近似する近似線(楕円)を主面領域Raの輪郭として算出する。より一般的に説明すれば、制御部8は撮像画像IM11における主面領域Raの輪郭の形状として予め決められた基準関数に基づいて、主面エッジP23の近似線を主面領域Raの輪郭として算出する。ここでいう基準関数とは、主面領域Raの輪郭の形状を表す関数であって、その位置および大きさが変数となる関数をいう。楕円の関数であれば、例えばその長軸の長さ、短軸の長さ、長軸の延在方向、および、中心などを変数として採用できる。制御部8は例えば最小二乗法により主面エッジP23に近似する楕円E1(より具体的にはその長軸の長さ、短軸の長さ、長軸の延在方向および中心)を算出する。
以上のように、主面領域Raの輪郭を示す関数に基づいて主面エッジP23の近似線を主面領域Raの輪郭として算出しているので、より高い精度で主面領域Raの輪郭を特定することができる。また上述の具体例では、錠剤9が略円盤形状を有している。つまり、錠剤9の主面9aが略円形状を有している。よって、撮像画像IM11において主面9aaの周縁は理想的には楕円形状を有する。これに対応して、楕円の関数が主面領域Raの輪郭を示す関数として用いられている。したがって、適切に主面領域Raの輪郭を特定することができる。
以下では、楕円E1をその長軸で分割して得られる2つの半楕円のうち、側面9ca側の半楕円を半楕円E11とも呼ぶ。この半楕円E11は境界エッジP3の近似線に相当することになる。
次にステップS7にて、制御部8は側面外側エッジP1に近似する近似線(半楕円)を楕円E1に基づいて算出する。例えば制御部8は楕円E1を所定方向D1に沿って移動させながらレーベンバーグ・マルカート(LM)法を用いて、側面外側エッジP1に沿う楕円E2を算出する。この楕円E2は錠剤9の主面9bの周縁に相当する。よって、制御部8はこの楕円E2をその長軸で分割し、得られた2つの半楕円のうち、境界エッジP3よりも遠い方にある半楕円E21を側面外側エッジP1の近似線として求める。
制御部8はこの楕円E2の算出に際して、楕円E1を所定の割合で縮小させてもよい。撮像画像IM11のような斜視図において、錠剤9の主面9bの周縁は錠剤9の主面9aの周縁よりも所定割合で小さくなるからである。この所定割合は錠剤9の厚みに応じて予め設定される。
なお制御部8は必ずしも楕円E1に基づいて楕円E2を算出し、楕円E2から半楕円E21を算出する必要はない。例えば制御部8は楕円E1から半楕円E11を求め、この半楕円E11を所定方向D1に沿って移動させながらLM法を用いて半楕円E21を算出してもよい。また半楕円E21の算出に当たって半楕円E11を所定割合で縮小しても構わない。
制御部8は、半楕円E11,E21の両端をそれぞれ連結する一対の直線を算出し、半楕円E11,E21および当該一対の直線を、錠剤9の側面9caが占める側面領域Rcの輪郭として把握する。
このように境界エッジP3および側面外側エッジP1に近似する近似線(半楕円E11,E21)を側面領域Rcの輪郭の一部として採用しているので、より高い精度で側面領域Rcを特定することができる。
次にステップS8にて、制御部8は撮像画像IM11における主面領域Raおよび側面領域Rcに対して検査処理(画像処理)を行う。以下、検査処理の具体例について述べる。
<第1検査処理(エッジ強度処理)>
さて、撮像画像IM11において欠陥d1(図6参照)が占める領域と、その欠陥d1の周囲の領域との境界部では、画素間の画素値の差が大きくなる。同様に、撮像画像IM11において欠陥d2が占める領域と、その欠陥d2の周囲の領域との境界部では、画素間の画素値の差が大きくなる。
そこで制御部8は次のように欠陥を検出してもよい。即ち、制御部8は撮像画像IM11の主面領域Raおよび側面領域Rcに対してエッジ強度処理を行ってエッジ強度画像を生成する。なお上述のように、エッジ画像の生成の途中でエッジ強度画像が既に生成されている場合には、そのエッジ強度画像を用いればよい。
制御部8はエッジ強度画像の主面領域Raにおける画素値が閾値(以下、欠陥閾値と呼ぶ)Th1よりも大きいか否かを画素ごとに判断し、肯定的な判断がなされたときに、その画素は欠陥の輪郭を示していると判断する。当該画素は主面領域Ra内にあるので、制御部8は錠剤9の主面9aに欠陥が生じていると判断してもよい。側面領域Rcについても同様である。これにより、欠陥d1,d2を検出することができる。
この欠陥閾値Th1は撮像画像IM11の主面領域Raおよび側面領域Rcにおいて互いに独立して設定されることが望ましい。以下、その理由について述べる。
例えば錠剤9の表面状態(例えば表面粗さ)は主面9aおよび側面9cにおいて相違する場合がある。例えば錠剤9の主面9aの表面粗さが側面9cの表面粗さよりも小さい場合、撮像画像IM11の主面領域Ra内の輝度成分の画素間のばらつきは、側面領域Rc内の輝度成分のばらつきよりも小さくなる。この画素間のばらつきはエッジ強度画像において各画素の画素値として定量化される。よって、錠剤9が良品であれば、エッジ強度画像の主面領域Ra内の画素の値の最大値Maはエッジ強度画像の側面領域Rc内の画素の値の最大値Mcよりも小さくなる。
ここで、主面領域Raおよび側面領域Rcに対して共通の欠陥閾値Th1を設定することを考慮する。例えば欠陥閾値Th1を側面領域Rcに応じて最大値Mcよりも大きい値に設定すると、主面領域Raに対して不要に大きな値を設定することになる。これによれば、錠剤9の主面9aに対する欠陥検出に漏れが生じ得る。逆に、欠陥閾値Th1を主面領域Raに応じて小さい値に設定すると、錠剤9の側面9cの表面粗さを欠陥として誤検出し得る。
そこで、主面領域Raおよび側面領域Rcに対して欠陥閾値Th1を互いに独立して設定する。上述の例では、表面粗さが小さい主面9aが写る主面領域Raに対する欠陥閾値Th1(以下、欠陥閾値Th11と呼ぶ)を、表面粗さが大きい側面9cが写る側面領域Rcに対する欠陥閾値Th1(以下、欠陥閾値Th12と呼ぶ)よりも小さく設定する。つまり、制御部8は主面領域Raおよび側面領域Rcに対して、互いに異なる欠陥閾値Th1を用いた検査処理をそれぞれ実行する。
より具体的には、制御部8はエッジ強度画像の主面領域Raの各画素の値が欠陥閾値Th11よりも大きいか否かを判断する。言い換えれば、制御部8は主面領域Raに対してエッジ強度処理を行って得られた各画素の値が欠陥閾値Th11よりも大きいか否かを判断する。制御部8はある画素の値が欠陥閾値Th11よりも大きいと判断したときに、その画素が欠陥の輪郭を示していると判断し、錠剤の主面9aに欠陥が生じていると判断する。
なお制御部8は主面領域Ra内の全ての画素に対して上記判断を行って全ての欠陥を検出してもよい。あるいは、単に錠剤9の欠陥の有無を判断するのであれば、一つの欠陥を検出したときに、残りの画素についての上記判断を省略してよい。この点は、以下で述べる検査処理でも同様である。
また制御部8はエッジ強度画像の側面領域Rcの各画素の値が、欠陥閾値Th11よりも大きな欠陥閾値Th12よりも大きいか否かを判断する。言い換えれば、制御部8は側面領域Rcに対してエッジ強度処理を行って得られた各画素の値が欠陥閾値Th12よりも大きいか否かを判断する。制御部8はある画素の値が欠陥閾値Th12よりも大きいと判断したときに、その画素が欠陥の輪郭を示していると判断し、錠剤の側面9cに欠陥が生じていると判断する。
これにより、主面領域Raおよび側面領域Rcにおける欠陥漏れおよび欠陥の誤検出を抑制して、高い精度で欠陥を検出できる。
欠陥閾値Th1は例えば予め設定されて制御部8の記憶媒体に記憶されていてもよい。あるいは、制御部8は良品と判断した錠剤9についての主面領域Raおよび側面領域Rcの画素値に応じて、欠陥閾値Th1を自動で設定してもよい。具体的には、例えば制御部8は良品と判断された錠剤9の側面領域Rcにおける最大値Mcよりも所定値だけ大きな値を、側面領域Rcに対する欠陥閾値Th11に採用してもよい。同様に、制御部8は良品と判断された錠剤9の主面領域Raにおける最大値Maよりも所定値だけ大きな値を、主面領域Raに対する欠陥閾値Th12に採用してもよい。
なお錠剤9の主面9aの表面粗さが側面9cの表面粗さよりも大きい場合には、主面領域Raに対する欠陥閾値Th11を側面領域Rcに対する欠陥閾値Th12よりも大きく設定すればよい。
<第2検査処理>
制御部8は上述の第1検査処理に替えて、あるいは、第1検査処理と共に、以下で述べる第2検査処理を行ってもよい。
さて、欠陥d1,d2が例えば黒色系の付着物である場合、この欠陥d1,d2に対応する領域の画素値は他の領域の画素値よりも小さくなる。そこで制御部8は次のようにして欠陥を検出してもよい。即ち、制御部8は撮像画像IM11の主面領域Raにおける画素値が欠陥閾値Th2よりも小さいか否かを画素ごとに判断し、肯定的な判断がなれたときに、その画素は欠陥を示していると判断する。当該画素は主面領域Ra内にあるので、制御部8は錠剤9の主面9aに欠陥が生じていると判断してもよい。側面領域Rcについても同様である。これにより、欠陥d1,d2を検出することができる。
この欠陥閾値Th2も主面領域Raおよび側面領域Rcに対して互いに独立して設定されることが望ましい。以下、その理由について述べる。
撮像画像IM11の主面領域Ra内の明るさ(輝度の平均)が側面領域Rc内の明るさと相違する場合がある。なぜなら、錠剤9の主面9aおよび側面9cに対する光の当り方が異なり得るからである。以下では、代表的に主面領域Raが側面領域Rcよりも明るい場合について説明する。
まず、撮像画像IM11における主面領域Raおよび側面領域Rcに対して共通の欠陥閾値Th2を設定することを考慮する。この場合、側面領域Rcにおいて単に暗い部分を欠陥として誤検出することを抑制すべく欠陥閾値Th2を小さくすると、明るい主面領域Raにおいて検出漏れが生じ得る。逆に、主面領域Raにおける検出漏れを抑制すべく、欠陥閾値Th2を大きくすると、側面領域Rcにおいて単に暗い部分を欠陥として誤検出し得る。
そこで、撮像画像IM11における主面領域Raおよび側面領域Rcに対して欠陥閾値Th2を互いに独立して設定する。上述の例では、明るい主面9aが写る主面領域Raに対する欠陥閾値Th2(以下、欠陥閾値Th21と呼ぶ)を、暗い側面9cが写る側面領域Rcに対する欠陥閾値Th2(以下、欠陥閾値Th22と呼ぶ)よりも大きく設定する。つまり、制御部8は撮像画像IM11における主面領域Raおよび側面領域Rcに対して、互いに異なる欠陥閾値Th2を用いた検査処理をそれぞれ実行する。
より具体的には、制御部8は撮像画像IM11の主面領域Raの各画素の値が欠陥閾値Th21よりも小さいか否かを判断する。制御部8はある画素の値が欠陥閾値Th21よりも小さいと判断したときに、その画素が欠陥を示していると判断し、錠剤の主面9aに欠陥が生じていると判断する。
また制御部8は撮像画像IM11の側面領域Rcの各画素の値が、欠陥閾値Th21よりも小さな欠陥閾値Th22よりも小さいか否かを判断する。制御部8はある画素の値が欠陥閾値Th22よりも小さいと判断したときに、その画素が欠陥を示していると判断し、錠剤の側面9cに欠陥が生じていると判断する。
これにより、主面領域Raおよび側面領域Rcにおける欠陥漏れおよび欠陥の誤検出を抑制して、高い精度で欠陥を検出できる。
欠陥閾値Th2は例えば予め設定されていてもよく、あるいは、良品と判断された錠剤9についての主面領域Raおよび側面領域Rcの明るさに応じて設定されてもよい。後者の場合、例えば制御部8は良品と判断された錠剤9の撮像画像IM11の側面領域Rcにおける画素値の最小値よりも所定値だけ小さい値を、側面領域Rcに対する欠陥閾値Th21に採用し、主面領域Raにおける画素値の最小値よりも所定値だけ小さい値を、主面領域Raに対する欠陥閾値Th22に採用してもよい。
なお主面領域Raが側面領域Rcよりも暗い場合には、主面領域Raに対する欠陥閾値Th21を側面領域Rcに対する欠陥閾値Th22よりも小さく設定すればよい。
また上述の例では、主面領域Raおよび側面領域Rcに対して異なる閾値で同種の検査処理を行っているものの、主面領域Raおよび側面領域Rcに対して異なる種類の検査処理を行ってもよい。
また上述の例では、側面領域Rcの全体に対して検査処理を行うものの、側面領域Rcのうち一対の側面稜線エッジP4にそれぞれ近い両端領域は検査処理の対象から除いてもよい。両端領域における側面9cの表面状態は撮像画像IM11において視認しにくいからである。
また上述の例では、探索領域R1の中心線L0は側面外側エッジP1を移動させて得られた線であると説明したが、この移動に際して側面外側エッジP1を所定倍率で拡大しても構わない。厳密には、境界エッジP3は側面外側エッジP1よりも所定倍率で大きいからである。
また上述の例では、一方向から見た錠剤9の撮像画像について説明したものの、複数方向から見た錠剤9の撮像画像に対しても同様の処理を行ってもよい。
第2の実施の形態.
第1の実施の形態では、探索領域R1の各行における探索で最初に検出されたエッジ画素を境界エッジP3の構成要素として把握した。この場合、撮像画像IM11において錠剤9の主面9aaと側面9caとの間の境界に欠陥が生じていれば、楕円E1の算出精度が低下し得る。以下、具体的に説明する。
図11は、錠剤9の主面9aaと側面9caとの間の境界に欠けが生じたときの、エッジ画像におけるエッジの一例を概略的に示す図である。図11に例示するように、錠剤9に生じた欠けの輪郭に沿ってエッジP’が検出されている。図11の例示では、エッジP’を太線で模式的に示している。第1の実施の形態で述べた探索処理によれば、エッジP’のうち線L1側のエッジ上の画素が境界エッジP3の構成要素として把握されることになる。図11の例においては、境界エッジP3の構成要素として把握される画素のいくつかを模式的に黒丸で示している。つまり、境界エッジP3の構成要素がエッジP’のうち線L1側のエッジPc’に偏ってしまう。したがって、境界エッジP3に近似する半楕円E11は錠剤9の主面9aaの周縁からずれやすい。つまり、主面領域Raの特定精度が低下し得る。
第2の実施の形態では、主面領域Raの特定精度を更に向上することを企図する。具体的には、撮像画像IM11における欠陥領域の画素値の分布に着目して、境界エッジP3の構成要素がエッジP’のうちエッジPc’と、線L2側のエッジPa’に分散されるように、境界エッジP3を特定することを企図する。
第2の実施の形態にかかる錠剤検査装置1の構成は第1の実施の形態と同様である。ただし、制御部8による境界エッジP3の特定方法が第1の実施の形態と相違する。
さて、錠剤9の欠けの表面は主面9aおよび側面9cの表面粗さに比べて粗く、撮像画像IM11における欠陥領域内の輝度成分はばらついている。よって、欠陥領域の輪郭(エッジP’)においても輝度成分はばらついている。したがって、撮像画像IM11におけるエッジPa’上の画素値もある範囲でばらついており、エッジPc’上の画素値も同様の範囲内でばらついている。
そこで、制御部8は、エッジ画像の探索領域R1内の画素であって、対応する撮像画像IM11における画素値が所定の閾値(以下、明るさ閾値と呼ぶ)よりも大きい画素を探索する。この明るさ閾値は錠剤9の主面9aaの明るさに応じて予め設定される。例えば明るさ閾値は上記範囲内の値に予め設定される。このような明るさ閾値は例えばシミュレーションまたは実験等によって設定することができる。明るさ閾値は例えば制御部8の記憶媒体に記憶されていてもよい。以下、具体的な動作の一例について説明する。
図12は、制御部8による探索処理の一例を示すフローチャートである。図10と比較して、制御部8はステップS57を更に実行する。このステップS57はステップS52において肯定的な判断がなされたときに実行される。ステップS57では、制御部8は撮像画像IM11の探索領域R1における第N行第M番目の画素の画素値が明るさ閾値よりも大きいか否かを判断する。
ステップS57にて否定的な判断がなされたときには、制御部8はステップS53を実行し、肯定的な判断がなされたときには、制御部8はステップS54を実行する。
これによれば、たとえ探索領域R1内のエッジ画素であっても、そのエッジ画素に対応する撮像画像IM11の画素の画素値が明るさ閾値よりも小さい場合には、そのエッジ画素は境界エッジP3の構成要素とは把握されず、撮像画像IM11の当該画素の画素値が明るさ閾値よりも大きい場合に、そのエッジ画像が境界エッジP3の構成要素と把握される。
この結果、境界エッジP3の構成要素として把握される画素がエッジP’上で分散される。図13は、錠剤9の主面9aaと側面9caとの間の境界に欠けが生じたときの、エッジ画像におけるエッジの一例を概略的に示す図である。図13の例でも、境界エッジP3として把握される画素のいくつかが模式的に黒丸で示されている。図13に例示するように、当該画素はエッジP’のエッジPa’,Pc’に分散される。言い換えれば、境界エッジP3として把握される画素がエッジP’において一方側のみに偏らないように明るさ閾値が設定される。より具体的な一例として、錠剤9の主面9aaの明るさ(例えば画素値(あるいは輝度値)の平均値、中央値、最大値または最小値など、以下、同様)が錠剤9の側面9caの明るさよりも高い場合には、当該明るさ閾値として主面9aaの明るさを採用し、錠剤9の主面9aaの明るさが錠剤9の側面9caの明るさよりも低い場合には、当該明るさ閾値として側面9caの明るさを採用する。
このような境界エッジP3に近似する半楕円E11は錠剤9の主面9aaの周縁により近い半楕円となる。ひいては、より高い精度で主面領域Raを特定することができる。
第3の実施の形態.
第3の実施の形態にかかる錠剤検査装置1の構成は第1の実施の形態と同様である。ただし、制御部8は撮像画像IM11における主面領域Raを複数の領域に分割する。
図14は、錠剤9の他の一例である錠剤9Aの一例を概略的に示す図である。錠剤9Aの主面9aには割線91が形成されている。割線91は主面9aの中心を通って主面9aの端から端まで直線状に延びる溝である。
このような錠剤9Aを撮像した撮像画像IM11’(図15参照)においては、割線91に相当する領域では他の領域に比べて画素値の差が大きい。よって、割線91を欠陥として誤検出し得る。
そこで第3の実施の形態では、主面領域Raを割線領域と非割線領域とに分割し、各領域に対して欠陥閾値Th1(あるいは欠陥閾値Th2)を独立して設定することを企図する。
なお図14の例では、錠剤9の主面9aは周縁部9a1および中央部9a2を有している。主面9aの中央部9a2は割線91を除いて平坦であり、周縁部9a1は中央部9a2が周縁部9a1に対して盛り上がるように傾斜している。
このような錠剤9Aを撮像した撮像画像IM11’では、周縁部9a1と中央部9a2との間の境界近傍の領域では他の領域に比べて画素間の画素値の差が大きく、当該境界を欠陥として誤検出し得る。
そこでここでは、制御部8は主面領域Raを割線領域、周縁領域および中央領域に分割し、各領域に対して欠陥閾値Th1(あるいは欠陥閾値Th2)を独立して設定することを企図する。
図15は、主面領域Raの分割例を概略的に示す図である。図15に例示するように、制御部8は主面領域Raを割線領域Ra1と一対の周縁領域Ra2と一対の中央領域Ra3とに分割する。図15の例では、割線領域Ra1、周縁領域Ra2および中央領域Ra3の相互の境界を破線で示している。割線領域Ra1は割線91を含む領域であり、周縁領域Ra2は割線領域Ra1以外の領域であって、錠剤9の周縁部9a1と中央部9a2との境界を含む領域である。中央領域Ra3は割線領域Ra1でも周縁領域Ra2でもない領域である。周縁領域Ra2および中央領域Ra3は割線領域Ra1を含まない領域であるので、周縁領域Ra2および中央領域Ra3の一組は非割線領域を構成している。
図16は、第3の実施の形態にかかる錠剤検査装置1の動作の一例を示すフローチャートである。ステップS11~S17はそれぞれステップS1~S7と同様であるので、詳細な説明を省略する。
ステップS17の次のステップS18にて、制御部8は、主面領域Raを割線領域Ra1、周縁領域Ra2および中央領域Ra3に分割する。以下、具体的に説明する。
まず制御部8は楕円E1の中心を縮小中心として楕円E1を所定の第1割合で縮小して楕円E3を算出する。第1割合は予め設定されて制御部8の記憶媒体に記憶されていてよい。第1割合は例えば1/2以下であって、より具体的な一例として3分の1である。そして、制御部8はエッジ画像における楕円E3内のエッジの一群に対して画像モーメントを求め、当該エッジの一群の延びる方向を求める。当該エッジの一群は主として割線91に対応するエッジで構成されるので、楕円E3内のエッジの一群の延びる方向は割線91の延びる方向であると把握できる。簡単には、当該エッジの一群を楕円に見立てて、その楕円の長軸の傾きを割線91の延びる方向と把握すればよい。以下の式は、楕円の長軸のx軸に対する角度θを示している。ここでいうx軸は撮像画像IM11’の横方向であり、y軸は撮像画像IM11’の縦方向である。
(x,y)はエッジ画像の楕円E3内における各エッジ画素の座標を示し、θは楕円の長軸とx軸との間の角度を示す。式(1)~式(3)はそれぞれx軸方向の分散、y軸方向の分散、xy軸の共分散を示す。
制御部8は、算出した割線91の延在方向に平行な直線であって楕円E1の中心を通る直線から、それぞれ両側に所定幅だけ広げた領域を割線領域Ra1として特定する。所定幅は予め設定されて、制御部8の記憶媒体に記憶されていてもよい。割線領域Ra1は主面領域Raの端から端まで延びる領域である。
次に制御部8は楕円E1の中心を縮小中心として楕円E1を所定の第2割合で縮小して楕円E4を算出する。第2割合は第1割合よりも大きく、楕円E4が主面9aaの周縁部9a1と中央部9a2との境界よりも内側となるように設定される。この第2割合も制御部8の記憶媒体に記憶されていてもよい。制御部8は楕円E4内の領域のうち割線領域Ra1以外の領域を一対の中央領域Ra3として特定する。
次に制御部8は、割線領域Ra1および一対の中央領域Ra3の全体を主面領域Raから除いた領域を一対の周縁領域Ra2として特定する。
次にステップS19にて、制御部8は主面領域Raおよび側面領域Rcに対してそれぞれ画像処理を行って検査処理を行う。側面領域Rcについては第1の実施の形態と同様である。
主面領域Raについては、割線領域Ra1、周縁領域Ra2および中央領域Ra3に対してそれぞれ異なる欠陥閾値Th1を採用する。なおここでは、錠剤9の主面9aにおいて周縁部9a1と中央部9a2との間の境界がなす角部は、割線91の角部よりも緩やかである。この場合、例えば割線領域Ra1に対する欠陥閾値Th1を非割線領域(周縁領域Ra2および中央領域Ra3)に対する欠陥閾値Th1よりも高く設定する。また非割線領域においては、周縁領域Ra2に対する欠陥閾値Th1を中央領域Ra3に対する欠陥閾値Th1よりも高く設定する。
以上のように、割線領域Ra1に対する欠陥閾値Th1を最も高く設定し、周縁領域Ra2に対する欠陥閾値Th1を次に高く設定し、中央領域Ra3に対する欠陥閾値Th1を最も低く設定する。
制御部8はエッジ強度画像の割線領域Ra1における各画素の画素値が割線領域Ra1の欠陥閾値Th1よりも大きいときに、割線領域Ra1において欠陥が生じていると判断する。非割線領域(周縁領域Ra2および中央領域Ra3の一組)についても同様である。具体的には、制御部8はエッジ強度画像の周縁領域Ra2における各画素の画素値が周縁領域Ra2の欠陥閾値Th1よりも大きいときに、周縁領域Ra2において欠陥が生じていると判断する。また制御部8はエッジ強度画像の中央領域Ra3における各画素の画素値が中央領域Ra3の欠陥閾値Th1よりも大きいときに、中央領域Ra3において欠陥が生じていると判断する。
これにより、第1の実施の形態と同様に、各領域における欠陥漏れおよび欠陥の誤検出を抑制して、高い精度で欠陥を検出できる。
<探索>
図14の例では、錠剤9Aの主面9aには、割線91が形成され、また周縁部9a1と中央部9a2とが鈍角の角を形成している。よって錠剤9Aが良品であっても、エッジ画像の主面領域Ra内にはエッジが含まれる。その一方で錠剤9Aが良品であれば、錠剤9Aの側面9cには角部が形成されていないので、エッジ画像の側面領域Rc内にはエッジが形成されない。したがって、境界エッジP3の特定において、第1の実施の形態で述べたように、制御部8は探索領域R1を側面外側エッジP1から主面外側エッジP2へと向かう方向で画素を探索するとよい。これによれば、周縁部9a1と中央部9a2との境界に対応するエッジ、および、割線91に対応するエッジを、境界エッジP3として誤検出することを回避できる。
変形例.
<錠剤の主面>
上述の例では、主面9bが搬送ベルト41側を向く姿勢で搬送された錠剤9を検査対象として説明した。錠剤9の主面9aが搬送ベルト41を向く姿勢で錠剤9が搬送される場合には、錠剤検査装置1は錠剤9の主面9bおよび側面9cに対する外観検査を行うことになる。
また例えば錠剤9に対する外観検査の後に、錠剤9の搬送姿勢を反転させ、その状態で錠剤9に対する外観検査を行ってもよい。これによれば、錠剤9の全面(主面9a,9bおよび側面9c)に対する外観検査を行うことができる。
<錠剤の形状>
上述の例では、錠剤9は略円盤形状を有していた。例えばこの円盤形状として、いわゆる平錠またはR付き錠を採用できる。ただし、錠剤9は必ずしも円盤形状に限らない。つまり、主面9a,9bは必ずしも円形状を有する必要は無い。主面9a,9bの形状は既知であるので、撮像画像IM11(あるいはIM11’、以下、同様)において現れるであろう主面9a(あるいは主面9b)の周縁の形状を予め基準関数で決めておくことができる。この基準関数は当該形状を示すものの、その大きさおよび位置が未定の関数である。基準関数は例えば制御部8の記憶媒体に予め記憶されてもよい。制御部8はからエッジ画像を生成し、エッジ画像に含まれる主面エッジの近似線をその基準関数に基づいて求めればよい。これによって、撮像画像IM11における主面領域Raをより高い精度で算出することができる。
以上のように、錠剤検査方法および錠剤検査装置は詳細に説明されたが、上記した説明は、全ての局面において例示であって、この開示がそれに限定されるものではない。また上述した各種変形例は、相互に矛盾しない限り組み合わせて適用可能である。そして、例示されていない多数の変形例が、この開示の範囲から外れることなく想定され得るものと解される。