錠剤包装検査装置、錠剤包装検査プログラム、錠剤包装検査方法
【課題】PTPシートの表面上にある連続的なメッシュがシートの欠陥検査に及ぼす影響を少なくし、PTPシートの検査の精度を上げることができる。
【解決手段】錠剤包装検査装置であって、PTPシートを撮像する撮像部と、PTPシート上の連続的なメッシュ形状と同型のカーネルを用いて、撮像されたPTPシートの画像に対して積分処理をする積分フィルタ部93と、積分処理された画像に基づき、撮像部によって撮像されたPTPシートの欠陥の有無を判定する欠陥判定部95とを有する。
【解決手段】錠剤包装検査装置であって、PTPシートを撮像する撮像部と、PTPシート上の連続的なメッシュ形状と同型のカーネルを用いて、撮像されたPTPシートの画像に対して積分処理をする積分フィルタ部93と、積分処理された画像に基づき、撮像部によって撮像されたPTPシートの欠陥の有無を判定する欠陥判定部95とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、錠剤を包装するPTPシートのシート不良を検査する技術に関する。
【背景技術】
【0002】
医薬品を製造する製薬会社では、出荷前に品質に関する検査を行っている。この検査工程では、異種錠剤の混入、錠剤に欠けた部分が無いか等の錠剤の品質検査以外にも、錠剤を包装するためのPTP(Press Through Package)シートに異物が付着していたり、またプラスチックシートとアルミ素材の蓋シートとがシワ等無く結合(シール)されているかのシートに関する検査も行っている。
【0003】
またPTPシートには、プラスチックシートと蓋シートとを結合するときに、結合用の型として、規則性のある連続した細かい井桁模様(以下、メッシュ)がシート表面に付着する。
【0004】
関連する技術として、以下の技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2002−99898号公報
【特許文献2】特開2005−164272号公報
【特許文献3】特開平11−73508号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
PTPシートを撮像し、その撮像画像を用いてPTPシートの表面検査を行う場合、コントラストの影響でメッシュが異物やシワと誤検知される場合がある。よって従来技術では、拡散照明を使ってメッシュを消して検査を行っている。しかし、生産状況によっては照明のみではメッシュを消しきれない場合があり、よって、映し出されたメッシュが異物、またはシワとして認識され、誤検知となる場合がある。
【0007】
本発明の実施形態は、上述した問題点を解決するためになされたものであり、シールされたPTPシート表面上にあるメッシュの影響を少なくし、検査精度を上げる技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決するため、本実施形態の錠剤包装検査装置は、PTPシートを撮像する撮像部を有する。また本実施形態の錠剤包装検査装置は、PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、撮像部によって撮像されたPTPシートの画像に対して積分処理をする積分フィルタ部を有する。さらに、本実施形態の錠剤包装検査装置は、積分フィルタ部によって積分処理された画像に基づき、撮像部によって撮像されたPTPシートの欠陥の有無を判定する判定部を有する。
【図面の簡単な説明】
【0009】
【図1】実施形態に係る錠剤包装装置の構成の一例を示す模式図である。
【図2】実施形態に係る撮像部の構成の一例を示す図である。
【図3】実施形態に係る撮像部が撮像する範囲の一例を示す図である。
【図4】実施形態に係る画像処理部の構成の一例を示すブロック図である。
【図5】実施形態に係る画像処理部の動作の一例を示すフローチャートである(その1)。
【図6】実施形態に係る画像処理部の動作の一例を示すフローチャートである(その2)。
【図7】実施形態に係る検査対象切出し部が切出す領域の一例を示す図である。
【図8】実施形態に係るマスク画像生成部がマスクする領域の一例を示す図である。
【図9】実施形態に係る積分フィルタ部が使用するデータ、数式の一例を示す図である。
【図10】実施形態に係る差分フィルタ部が使用する変位ベクトル、および補間カーネルの一例を説明する図である。
【図11】実施形態に係る画像処理部の処理過程で生成される中間画像の一例を示す図である。
【図12】実施形態に係るパラメータ生成部の動作例を示すフローチャートである。
【図13】実施形態に係るパラメータ生成部が切出す画像領域、および画像中の1次ピークの概略位置(矩形領域)の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施の形態について図面を参照しつつ説明する。
【0011】
本実施の形態に係る錠剤包装装置の構成について、図1の模式図を参照しつつ説明する。錠剤包装装置100は、プラスチックシート搬送部10、加熱装置20、成形装置21、錠剤充填装置30、蓋シート搬送部40、シール装置50、包装シート切断部60、取り出し部70、撮像部80、画像処理部90を有する。尚、撮像部80と画像処理部90とで錠剤包装検査装置が構成される。
【0012】
プラスチックシート搬送部10は、プラスチックシート200を供給し、次の工程である加熱装置20、成形装置21にプラスチックシート200を搬送する。加熱装置20は、搬送されたプラスチックシート200を加熱し、形成装置21は、加熱されたプラスチックシート200に、錠剤を入れるための凹部(以下、ポケット)を空圧と鋳型を用いて作成する。ポケットが作成されたプラスチックシート200は、複数の搬送ローラを経由してプレート301まで搬送される。
【0013】
錠剤充填装置30は、プレート301まで搬送されたプラスチックシート200上のポケットに錠剤201を一錠ずつ供給する。蓋シート搬送部40は、蓋シート202を供給し、シール装置50まで搬送する。
【0014】
シール装置50は、蓋シート202と、ポケットに錠剤201が供給されたプラスチックシート200とを結合(シール)する。
【0015】
包装シート切断部60は、蓋シート202とプラスチックシート200とが結合することで錠剤が包装されたシート(以下、PTPシート)を、所定の大きさ、すなわち錠剤の数が所定の数ずつとなるように切断する。取り出し部70は、切断されたPTPシートを取り出す。ここで、取り出し部70は、撮像部80、画像処理部90によって構成される錠剤包装検査装置によって不良と判定されたPTPシートを取り除く。
【0016】
画像処理部90は、CPU(Central Processing Unit)、主記憶装置であるメモリ、不揮発性の記憶装置を少なくとも有するコンピュータであり、撮像部80によって撮像された画像に対して処理演算することで、錠剤の欠錠、異種錠剤の混入を検出し、また、PTPシートに異物が付着していないか、PTPシートにシワが無いか等のシート不良の判定を行う。
【0017】
次に、撮像部80の構成の一例および撮像されるときのPTPシートの位置について、図2を参照しつつ説明する。
【0018】
撮像部80は、CCDカメラ81とドーム型、もしくは半円柱型のLED照明器具82とで構成されており、LED照明器具82の内側下部には、上方に向けて発光するLED照明発光部83が配置された構成となっている(図2(A)、(B)参照)。LED照明発光部83は三つあり、独立で点灯し、光量調整が可能である。
【0019】
図2(A)は、検査対象のPTPシートを画像入力視野の中央に配置した場合の図であり、図2(B)は、検査対象のPTPシートを視野端に配置した場合の図である。図2(A)の配置構成の場合、錠剤の検査やPTPシートの異物付着検査には最適であるものの、画像中のPTPシートのシワを目視で確認できるレベルまで至らない。一方、図2(B)の配置構成の場合、入力画像中のシワを目視で確認できるレベルになる。これは、カメラ視線とPTPシート面法線の角度が大きくなることより、PTPシート上の凹凸が影として画像上に反映され、画像中のシワのコントラストは視野中央から遠ざかるにつれ高くなるからである。本実施の形態では、シートのシワ検出には、図2(B)のように、正反射より少々ずらした位置にあるシートを検査対象とする。図2(C)は、LED照明器具82を用いずLED照明発光部83を横方向から発光させる場合の配置図であり、この図2(C)のような配置であってもよい。
【0020】
図3は、撮像部80により撮像される領域の一例を示す図である。撮像部80は、錠剤2列で1枚のシートの場合には図3(A)で示すように中央の1シートとその前後1シートずつが1画像中に入るように配置され、また錠剤3列で1枚のシートの場合には図3(B)で示すように1画像中に中央の1シートとその前後のシート半分ずつ(0.5シート)が入るように配置される。このようにすることで、シート異物検査とシワ検出検査の両立を実現することができる。すなわち異物検査では中央のシートを検査対象とし、シワ検出検査では前後のシートを検査対象とすることで、それぞれ最適化された照明配位で検査がきる。図3(B)の3列シートの場合は、前後のシートで合わせて100%の領域に対してシワ検出検査が可能となる。このように、撮像部80は、包装シート切断部60によって切断される前の連続したシートを撮像する位置に配置されることが望ましい。
【0021】
図4に、画像処理部90の構成の一例を示す。画像処理部90は、検査対象切出し部91、マスク画像生成部92、積分フィルタ部93、差分フィルタ部94、欠陥判定部95(判定部)、パラメータ生成部96を有する。これらの各ユニットは、画像処理部90内の不揮発性の記憶装置に予め記憶されているプログラムが主記憶装置にロードされ、CPUがこのプログラムを実行することで実現される。また、これら各ユニットそれぞれが使用する入力画像やパラメータ等の各種データは、画像処理部90内の不揮発性の記憶装置やメモリの記憶部に記憶されており、各ユニットそれぞれが入力画像やパラメータ等の各種データを取得し、演算実行し、記憶部へ生成した画像や値を出力する。
【0022】
次に、画像処理部90の動作について、図5、図6のフローチャートを参照しつつ説明する。また説明上の参照図として、各処理過程で生成される画像の一例を図11に示す。パラメータ生成部96の動作については後に詳説する。
【0023】
検査対象切出し部91は、検査対象画像上のPTPシート部の切り出しを行うことで、対象画像FTを導出する(S1)。対象画像FTは撮像された画像そのままよりも、アフィン変換等の処理が施された後の画像を用いた方がより検査精度が増す。よって、本実施の形態では以下の画像から1画像を切出し画像の対象とするが、撮像された画像そのままを対象画像とした実装であってもよい。
・アフィン変換画像 (FAFCR(x,y)、FAFCG(x,y)、FAFCB(x,y)、R、G、Bはそれぞれ赤、緑、青を示す。)
・色相画像 (S(x,y))
・輝度画像 (L(x,y))
・シートマークコントラスト低画像 (FSMKCL(x,y))
・シートマークコントラスト高画像 (FSMKCH(x,y))
【0024】
シートの切出し位置について、図7(A)に示す。まず検査対象切出し部91は、まずPTPシートの位置を検出する。検査対象切出し部91は、シートの上辺、下辺、側辺の座標から図7(A)に示されたx0、y0を算出する。その後検査対象切出し部91は、切り出す画像の原点(x1,y1)を、次式を用いて算出する。
x1=x0−x0m
y1=y0−y0m
(x0m、y0mは事前に定義されたパラメータ)
検査対象切出し部91は、幅W1、高さH1を切出し領域として画像を切り出す。幅W1、高さH1は、本実施の形態では事前に定義されたパラメータとする。
【0025】
次に、マスク画像生成部92は、切出し画像に対し検査の妨げに成り得る領域をマスクするためのマスク画像FMを生成する(S2)。マスク画像生成部92は、以下に示す5種類のマスク画像を用い、これらの合成マスク画像を生成する。
1.打ち抜きシートマスク(FMSH)
2.錠剤ポケットマスク(FMTB)
3.折り目マスク(FMFD)
4.刻印マスク(FMHN)
5.背景文字マスク(FMBP)
【0026】
打ち抜きシートマスクFMSHは、図8(A)に示すように検査対象のPTPシートの範囲外をマスクするマスク画像である。すなわち、以下の事項を満たす画像である。
FMSH(x,y)≡255((x,y)∈検査対象のPTPシート)
0(!((x,y)∈検査対象のPTPシート))
(「!」は否定を表す記号とする。以下同様。)
【0027】
錠剤ポケットマスクFMTBは、錠剤ポケットの領域をマスクするマスク画像である(図8(B)参照)。すなわち、
FMTB(x,y)≡ 0((x,y)∈錠剤ポケット)
255(!(x,y)∈錠剤ポケット)
【0028】
折り目マスクFMFDは、図8(C)に示すようにシートを折り易くするための折り目線をマスクするマスク画像であり、次の事項が成り立つ画像である。
FMFD(x,y)≡0((x,y)∈折り目線)
1(!(x,y)∈折り目線)
【0029】
刻印マスクFMHN、背景文字マスクFMBPは、錠剤名や社名、記号等をマスクするためのマスク画像であり(図8(D)、図8(E)参照)、それぞれ以下の事項を満たす画像である。
FMHN(x,y)≡0((x,y)∈刻印)
1(!(x,y)∈刻印)
FMBP(x,y)≡0((x,y)∈背景文字)
1(!(x,y)∈背景文字)
(上記「刻印」、「背景文字」の領域は、それぞれシートの種別ごとのパラメータとする。)
【0030】
マスク画像生成部92は、上記各マスク画像を合成した合成マスクFMを作成する。この合成マスクが使用されることで、切出し画像がマスクされる。
FM(x,y)=FMSH(x,y) AND FMTB(x,y)
AND FMFD(x,y) AND FMHN(x,y)
AND FMBP(x,y)
(上記の「AND」は合成を意味する)
【0031】
次に、積分フィルタ部93は、対象画像FT(x,y)、マスク画像FM(x,y)に対して積分フィルタ処理(積分フィルタ1)を行う(S3)。この積分フィルタ処理について、以下に詳説する。
【0032】
積分フィルタ部93は、まず対象画像FT(x,y)に合成マスク(マスク画像)FM(x,y)でマスクした後の残った部分の平均輝度GSHAVEを算出する。この処理は以下の手順となる。
1.マスク処理
積分フィルタ部93は、対象画像FT(x,y)に合成マスクFM(x,y)でマスク処理をする。
FTMKD(x,y)=FT(x,y) AND FM(x,y)
(「AND」は両画像を合成させることを意味する。)
2.ヒストグラム算出
積分フィルタ部93は、マスク処理された画像FTMKD(x,y)のヒストグラムを算出する。
hTMKD(g)=HIST(FTMKD(x,y))
(g=0〜255、「HIST(F(x,y))」の表記は、画像F(x,y)のヒストグラムを算出することを意味する)
3.平均輝度算出
積分フィルタ部93は、算出したヒストグラムhTMKD(g)を用いて、次式により平均輝度GSHAVEを算出する。
GSHAVE=(Σg・hTMKD(g))/(ΣhTMKD(g))
(上記「Σ」は、それぞれg=1からg=255までの合算値である。g=0でなくg=1であることに留意する。)
【0033】
次に積分フィルタ部93は、対象画像FT(x,y)、合成マスクFM(x,y)それぞれに対し、平均化処理を行う。平均化処理を行うに当り、以下のデータが用いられる。
・サブサンプル係数:N1SUB ∈ {1,2,4}
・平均カーネル: K1AVE(i,j) (i=0〜N1SUB−1、j=0〜N1SUB―1)
サブサンプル係数は、画像の画素を少なくする(サブサンプル)ときの間引き数である。また平均カーネルK1AVE(i,j)は、この平均化処理を行うときに用いられるカーネル(オペレータ)である。平均カーネルK1AVE(i,j)の例を図9(A)に示す。平均カーネルK1AVE(i,j)は、サブサンプル係数N1SUBに応じて図9(A)で示すように定義される。
【0034】
積分フィルタ部93は、図9(A)で示したサブサンプル係数N1SUB、平均カーネルK1AVE(i,j)を用いて、また図9(B)で示す式を用いて平均化処理を行う。図9(B)のFAVE1(x,y)は、対象画像FT(x,y)に対して平均化処理を行ったときの値であり、FMAVE(x,y)は、合成マスクFM(x,y)に対して平均化処理を行ったときの値である。
【0035】
次に積分フィルタ部93は、FAVE1(x,y)、FMAVE(x,y)を用いてサブサンプル処理を行う。サブサンプル処理は、以下の式が用いられることで算出される。
FAVE1SUB(x,y)=FAVE1((N1SUB・x,N1SUB・y)
FMAVESUB(x,y)=FMAVE((N1SUB・x,N1SUB・y)
(ここで、x=0 〜 W1/N1SUB−1、y=0〜 H1/N1SUB−1)
【0036】
積分フィルタ部93は、次に、積分カーネルK1(i,j)を用いて積分処理(カーネル処理)を行う。図9(C)は、積分カーネルK1(i,j)の一例を示した図である。このように積分カーネルK1(i,j)は、PTPシート上のメッシュの形状をしたカーネルである。図9(C)の例では5×5のカーネルとするが、態様を限定するものではない。このカーネルの導出方法については後述する。積分フィルタ部93は、次式により、サブサンプル処理後のFAVE1SUB(x,y)、FMAVESUB(x,y)に対し積分処理を行う。
FTF(x,y)= K1・FAVE1SUB(x,y)
FMF(x,y)= BIN(K1・FMAVESUB(x,y),255)
ここで、「K・F(x,y)」は、画像F(x,y)にカーネルKを適用させることを意味し、またBIN(F(x,y),T)は画像F(x,y)を閾値Tで2値化することを示す。すなわち、以下を意味する。
BIN(F(x,y),T)= 255 (F(x,y)≧T)
0 (F(x,y)<T)
尚、FTF(x,y)は、本実施の形態では符号付き16ビットの画像とする。
【0037】
次に、図5のステップS4の差分フィルタ処理(差分フィルタ1)について説明する。差分フィルタ部94は、ステップS4の差分フィルタ処理を行うに際し、以下の4方向の変位ベクトル、および画像補間用の補間カーネルを用いる。4方向の変位ベクトル(rd1、rd2、rd3、rd4)は、例えば図10(A)の矢印で示すように、PTPシート上のメッシュがひし形である場合、そのひし形の4つの辺方向を表すベクトルである。
rd1=(rdx1,rdy1)
rd2=(rdx2,rdy2)
rd3=(rdx3,rdy3)
rd4=(rdx4,rdy4)
【0038】
また、画像補間用に用いられる補間カーネルは以下とする。
Kd1=(kdx1,kdy1)
Kd2=(kdx2,kdy2)
Kd3=(kdx3,kdy3)
Kd4=(kdx4,kdy4)
KdM=Max(Kd1,Kd2,Kd3,Kd4)
(KdMはマスク処理が施された画像用であり、ここでのMax演算は、補間カーネルKd1〜Kd4の各構成要素の最大値を採用することを意味する。)
補間カーネルは、変位ベクトルに応じてそれぞれ定義されている。本実施の形態では、変位ベクトルrdiと補間カーネルKdiとは、図10(B)に示す関係とするが(尚、ceil(A)の表記は、浮動小数点数Aの小数点以下を切り上げた整数値を返すことを意味する。)、実装上では、図10(C)で示すように、変位ベクトルの方向に応じて要素が0または1となるカーネルとする。また本実施の形態では、マスク処理画像用に対する補間カーネルも定義される。
【0039】
差分フィルタ部94は、上述の積分処理で導出されたFTF(x,y)に対して、上記5つの補間カーネルを用いて補間処理を行う。
FTFD1(x,y)= Kd1・FTF(x,y)
FTFD2(x,y)= Kd2・FTF(x,y)
FTFD3(x,y)= Kd3・FTF(x,y)
FTFD4(x,y)= Kd4・FTF(x,y)
FMFD(x,y)=BIN( KdM・FTF(x,y),255)
【0040】
差分フィルタ部94は、次に差分処理を行う。この差分処理のx、yの座標は以下の範囲とする。
(x,y)∈処理領域
x∈0 〜 W1/N1SUB−1
y∈0 〜 H1/N1SUB−1
差分フィルタ部94は、補間処理後の画像FTFD1、FTFD2、FTFD3、FTFD4に対して以下の処理を行い、Viを生成する。
Vi=FTFDi(x+rdxi,y+rdyi)−FTF(x,y)
また差分フィルタ部94は、補間処理された画像FMFDを用いて、以下の条件を満たすかを判定する。
if(FMFD(x+rdxi,y+rdyi)=0)
この条件が真である場合、Vi=0となり、偽である場合、Viは上記式で算出された値となる。尚、上記iはi=1〜4である。
差分フィルタ部94は、このようにして算出されたVi(i=1〜4)に対して、それぞれ絶対値を算出し、その最大値となるViをFTD(x、y)の値とする。
FTD(x,y)=MAX{ABS(Vi)|i=1〜4}
【0041】
次に、図5のステップS5、および図6のステップS6の処理について説明する。ステップS5、S6の処理は、欠陥判定部95が行う処理であり、ステップS3で生成されたFTF(x,y)、FMF(x,y)を用いて判定が行われる。欠陥判定部95は、欠陥の判定を行うに際し、FTF(x,y)について、以下の手順でラベリングを行い、ラベリングの特徴量を抽出する(S5)。
【0042】
ステップS5のラベリング処理について説明する。欠陥判定部95は、まず上記積分処理後のFTF(x,y)を2値化し、2値化されたFTF(x,y)に対してFMF(x,y)でマスク処理を行うことで画像FTFB(x,y)を作成する。
FTFB(x,y)=FMF(x,y) AND BIN(FTF(x,y),TH1,TL1)
TH1,TL1は、2値化の際の範囲を示す閾値(TH1>TL1)である。また、BIN(F(x,y),TH,TL)の表記は以下の定義とする。
BIN(F(x,y),TH,TL)∈ 255(F(x、y)≧TH)
255(F(x、y)≦TL)
0(TL<F(x、y)<TH)
【0043】
次に欠陥判定部95は、2値化画像FTFB(x,y)と積分処理後の濃淡画像FTF(x,y)とを用いて、および既存のラベリング処理を用いて、ラベリングの特徴量を抽出する。本実施の形態では、島(連結している領域)の数N1、島の面積S1(i)、島の領域内の輝度値の最小値G1MIN(i)、および最大値G1MAX(i)をラベリングの特徴量とする(iはラベル識別番号でi=1〜 N1)。
【0044】
欠陥判定部95は、上記特徴量を用いて欠陥の有無を判定する(ステップS6)。判定の条件は以下の通りとする。
if(S1(i)≧T1S AND {G1MIN(i)≦T1MIN OR G1MAX(i)≧T1MAX})
上記の「AND」、「OR」は、それぞれ論理積、論理和を示すものであり、T1S、T1MIN、T1MAXは、事前に定義された閾値である。この条件が真である場合、欠陥判定部95は欠陥と判定する。
【0045】
次に欠陥判定部95は、ステップS7、S8においてステップS4で生成された差分処理後のデータに対して、判定処理を行う。欠陥判定部95は、上記差分処理で導出されたFTD(x,y)に対して、まず2値化処理を行う。
FTDB(x,y)=BIN(FTD(x,y),T2)
(T2は事前に定義された閾値)
また欠陥判定部95は、2値化画像FTDB(x,y)とFTD(x,y)とでラベリング処理を行い、特徴量を抽出する。ここで抽出される特徴量は以下である。
特徴量:島の個数N2、島の面積S2(i)、島の領域内の輝度値の最大値G2MAX(i) (i=1〜 N2)
尚、FTD(x,y)は絶対値であるため、輝度値の最小値は特徴量に含めない。
【0046】
欠陥判定部95は、これら特徴量を用いて欠陥を抽出する。
if(S2(i)≧T2S AND G2MAX(i)≧T2MAX})
(T2S、T2MAXは、閾値であり、パラメータとして事前に定義されている。)
欠陥判定部95は、この条件式を用いて処理を行い、真である場合に欠陥と判定する。
【0047】
上記処理以外に、差分フィルタ部94は、対象画像FT(x,y)、マスク画像FM(x,y)を用いて差分処理を行い(ステップS9)、その差分処理後の画像に基づき欠陥判定部95が判定処理を行う(ステップS10、S11)。
【0048】
差分フィルタ部94は、ステップS9においてもステップS4と同様に4方向の変位ベクトル(rp1、rp2、rp3、rp4)を用いる。
rp1=(rpx1,rpy1)
rp2=(rpx2,rpy2)
rp3=(rpx3,rpy3)
rp4=(rpx4,rpy4)
また、差分フィルタ部94は、画像補間用に補間カーネルを用いる。
kp1=(kpx1,kpy1)
kp2=(kpx2,kpy2)
kp3=(kpx3,kpy3)
kp4=(kpx4,kpy4)
kpM=(kpxM,kpyM):マスク用
これら変位ベクトル、補間カーネルは、ステップS4で用いたデータをそのまま使用してもよいし、また異なるデータを用いてもよい。
【0049】
差分フィルタ部94は、対象画像FT(x,y)に対して、補間カーネルを用いて補間処理を行う。
FTP1(x,y)= Kp1・FT(x,y)
FTP2(x,y)= Kp2・FT(x,y)
FTP3(x,y)= Kp3・FT(x,y)
FTP4(x,y)= Kp4・FT(x,y)
FMP(x,y)=BIN( KpM・FM(x,y),255)
【0050】
差分フィルタ部94は、次に差分処理を行う。この差分処理のx、yの座標は以下の範囲とする。
(x、y)∈処理領域
x∈0 〜 W1−1
y∈0 〜 H1−1
差分フィルタ部94は、補間処理後の画像FTP1、FTP2、FTP3、FTP4に対して以下の処理を行い、Viを生成する。
Vi=FTPi(x+rpxi,y+rpyi)−FT(x,y)
ここで、
if(FMP(x+rdxi,y+rdyi)=0)の条件が真である場合、Vi=0が採用され、偽である場合、Viは上記式で算出された値が採用される。尚、i=1〜4である。
【0051】
差分フィルタ部94は、このようにして算出されたVi(i=1〜4)に対して、それぞれ絶対値を算出し、その最大値を与えるViをFTC(x,y)の値とする。
FTC(x,y)={Vi|Vi=MAX{ABS(Vi)|i=1〜4}となるi}
【0052】
欠陥判定部95は、ステップS10として画像FTC(x,y)に対して2値化処理を行う。
FTCB(x,y)=BIN(FTC(x,y),T3)
(T3は事前に定義された閾値(パラメータ))
【0053】
欠陥判定部95は、ステップS10として、FTCB(x,y)とFTF(x,y)とでラベリングの特徴量を抽出する。ラベリングの特徴量は、島の個数N3、島の面積S3(i)、島の領域内の輝度値の最大値G3MAX(i)、および最小値G3MIN(i)とする(ここで、i=1〜 N3)。
【0054】
欠陥判定部95は、抽出した特徴量を用いて欠陥判定を行う(S11)。
if(S3(i)≧T3S AND {G3MIN(i)≦T3MIN OR G3MAX(i)≧T3MAX})
欠陥判定部95は上記条件を用いて判定を行い、真の場合、欠陥と判定する。
【0055】
図11に、画像処理部90の各処理過程で生成される中間処理画像の一例を示す。図11(A)は、検査対象切出し部91による切出し画像FT(x,y)、図11(B)は合成マスク画像FM(x,y)である。図11(C)、(D)は、それぞれ積分フィルタ部93による積分処理後の画像FTF(x,y)、FMF(x,y)であり、図11(E)は、差分フィルタ部94による差分処理後の画像FTD(x,y)である。尚、図11(A)、図11(C)の画像において、一部の領域(錠剤名、社名等の記載領域)に対してはモザイク処理を施してある。
【0056】
次に、積分フィルタ部93が使用する積分カーネルK1(i,j)、および差分フィルタ部94が使用する4方向の変位ベクトル(rd1、rd2、rd3、rd4)の各パラメータの生成方法について説明する。これらのパラメータは、パラメータ生成部96によって生成される。パラメータ生成部96の動作について、図12のフローチャートを参照しつつ説明する。
【0057】
パラメータ生成部96は、まずシート部が撮像された画像から検査対象領域を切り出す(S21)。本実施の形態では、検査対象画像とパラメータ生成用の対象画像は独立して選択できるようにする。切出しの対象は、アフィン変換画像(FAFCR、FAFCG、FAFCB)、色相画像S、輝度画像L、シートマークコントラスト低画像FSMKCL、シートマークコントラスト高画像FSMKCHから人手で選択される。また、FFT(Fast Fourier Transform)処理を次工程で行うため、切り出されるサイズの幅、高さは2n画素となる。ここで、具体的な切出し領域の例を図13(A)に示す。図13(A)で示すように、切り出し画像中に錠剤のポケット部や文字部が入っていても良い。この切り出し画像を
FMSH(x、y)
x∈0 〜 W2−1
y∈0 〜 H2 −1
とする。尚、本実施の形態ではW2=H2=2n(n=6,7,8,9)とする。
【0058】
パラメータ生成部96は、切り出し画像FMSH(x,y)に対してFFT処理を行うことでFFT画像FCM(x,y)を作成し(S22)、さらに、FFT画像FCMからパワースペクトル画像FPS(x,y)を生成する(S23)。尚、FCM(x,y)、FPS(x,y)の生成処理には従前より存在する技術が用いられ、FPS(x,y)は浮動小数点とする。
FPS(x,y):x∈0 〜 W2、y∈0 〜 H2
幅、高さが1増えることに留意する。
【0059】
パラメータ生成部96は、次にパワースペクトル画像FPS(x,y)からスペクトルのピークの位置を検出する(S24)。ここで、スペクトルのピーク位置の検出について説明する。図13(B)で示すように、スペクトルには、中央部、および4点のメッシュの1次ピーク、その他高次のピークが現れる。パラメータ生成部96は、人手により選択された4つの1次ピークの概略位置(矩形領域Ri)の重心位置を算出する。本実施の形態では、図13(B)のように、1〜4の矩形領域が人手で指定される。
矩形Ri:(x0(i)、y0(i)、w(i)、h(i)、i=1,2,3,4)
(「i」は領域1〜4の番号に対応している)
x0(i)、y0(i)は、各矩形領域の最左上の座標、w(i)、h(i)は各矩形領域の横幅長、縦幅長を示す。
パラメータ生成部96は、領域1〜4の重心位置Giをラベリング処理を行うことで算出する。各重心は全体画像における重心として算出する。
Gi:(xg(i),yg(i))(i=1〜4)
【0060】
パラメータ生成部96は、重心位置Giおよび切出し領域の横幅長W2、横幅長W2を用いて波数ベクトルa、bをそれぞれ算出する(S25)。
a=(W2/(xg(3)−xg(1)),H2/(yg(3)−yg(1)))
b=(W2/(xg(4)−xg(2)),H2/(yg(4)−yg(2)))
【0061】
パラメータ生成部96は、次に積分カーネルK1(i,j)、および4方向の変位ベクトル(rd1、rd2、rd3、rd4)を導出する(S26)。
【0062】
積分カーネルK1(i,j)の導出方法について説明する。パラメータ生成部96は、まず2つのベクトルa1、b1を次式にて求める。
a1=W2/NSUB・(xg(3)−xg(1),yg(3)−yg(1))
b1=H2/NSUB・(xg(4)−xg(2),yg(4)−yg(2))
次にパラメータ生成部96は、ベクトル関数V(s,t)=(s・a1+t・b1){s=0.0〜1.0、t=0.0〜1.0}の各成分の最大、最小を求める。
xmin = Min( Vx(0,0),Vx(1,0),Vx(0,1),Vx(1,1))
xmax = Max( Vx(0,0),Vx(1,0),Vx(0,1),Vx(1,1))
ymin = Min( Vy(0,0),Vy(1,0),Vy(0,1),Vy(1,1))
ymax = Max( Vy(0,0),Vy(1,0),Vy(0,1),Vy(1,1))
(Min(A,B,C,D)、Max(A,B,C,D)の表記は、A,B,C,Dのうちの最小値または最大値を意味し、Vx、Vyは、ベクトルVのx座標、y座標の要素値である)
【0063】
パラメータ生成部96は、積分カーネルK1のカーネルサイズを求める。
wk1=INT(xmax−xmin+1)
hk1=INT(ymax−ymin+1)
(「INT(F)」は、Fを整数に纏める処理を意味する)
【0064】
パラメータ生成部96は、以下の手順で積分カーネルK1(x,y){x=0〜(wk1−1)、y=0〜(hk1−1)}の各要素の値を埋め込む。
(1)最初にK1(x,y)を全て0にクリアする。
(2)以下の手法でK1(x,y)に値を代入する。
r=s・a1+t・b1−(xmin,ymin)
s=0.0〜1.0:0.02ずつインクリメント
t=0.0〜1.0:0.02ずつインクリメント
(3)上記(2)で求められたベクトルrのx、y座標の位置に、K1(x,y)=1と書き込む(上書きする)。
(4)正規化係数F1を算出する。
F1=1/ΣΣK1(x,y)
上式のΣは、それぞれx=0〜wk1−1、y=0〜hk1−1である。
【0065】
パラメータ生成部96は、ベクトルa1、b1を用いて4方向の変位ベクトル(rd1、rd2、rd3、rd4)を導出する。
rd1=a1
rd2=−a1
rd3=b1
rd4=−b1
【0066】
パラメータ生成部96は、このようにして導出した積分カーネルK1、4方向の変位ベクトル(rd1、rd2、rd3、rd4)の各値を画像処理部90の記憶部に記憶させる。積分フィルタ部93、差分フィルタ部94は、必要に応じてこれら各データを記憶部から取得する。
【0067】
以上より、本実施の形態によれば、メッシュの形状に基づいたカーネルを使用することで、シールされたPTPシート表面上にあるメッシュが検査に及ぼす影響を少なくし、検査精度を上げることができる。
【0068】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0069】
10 プラスチックシート搬送部、20 加熱装置、21 成形装置、30 錠剤充填装置、40 蓋シート搬送部、50 シール装置、60 包装シート切断部、70 取り出し部、80 撮像部、90 画像処理部、91 検査対象切出し部、92 マスク画像生成部、93 積分フィルタ部、94 差分フィルタ部、95 欠陥判定部、96 パラメータ生成部、100 錠剤包装装置。
【技術分野】
【0001】
本発明の実施形態は、錠剤を包装するPTPシートのシート不良を検査する技術に関する。
【背景技術】
【0002】
医薬品を製造する製薬会社では、出荷前に品質に関する検査を行っている。この検査工程では、異種錠剤の混入、錠剤に欠けた部分が無いか等の錠剤の品質検査以外にも、錠剤を包装するためのPTP(Press Through Package)シートに異物が付着していたり、またプラスチックシートとアルミ素材の蓋シートとがシワ等無く結合(シール)されているかのシートに関する検査も行っている。
【0003】
またPTPシートには、プラスチックシートと蓋シートとを結合するときに、結合用の型として、規則性のある連続した細かい井桁模様(以下、メッシュ)がシート表面に付着する。
【0004】
関連する技術として、以下の技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2002−99898号公報
【特許文献2】特開2005−164272号公報
【特許文献3】特開平11−73508号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
PTPシートを撮像し、その撮像画像を用いてPTPシートの表面検査を行う場合、コントラストの影響でメッシュが異物やシワと誤検知される場合がある。よって従来技術では、拡散照明を使ってメッシュを消して検査を行っている。しかし、生産状況によっては照明のみではメッシュを消しきれない場合があり、よって、映し出されたメッシュが異物、またはシワとして認識され、誤検知となる場合がある。
【0007】
本発明の実施形態は、上述した問題点を解決するためになされたものであり、シールされたPTPシート表面上にあるメッシュの影響を少なくし、検査精度を上げる技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決するため、本実施形態の錠剤包装検査装置は、PTPシートを撮像する撮像部を有する。また本実施形態の錠剤包装検査装置は、PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、撮像部によって撮像されたPTPシートの画像に対して積分処理をする積分フィルタ部を有する。さらに、本実施形態の錠剤包装検査装置は、積分フィルタ部によって積分処理された画像に基づき、撮像部によって撮像されたPTPシートの欠陥の有無を判定する判定部を有する。
【図面の簡単な説明】
【0009】
【図1】実施形態に係る錠剤包装装置の構成の一例を示す模式図である。
【図2】実施形態に係る撮像部の構成の一例を示す図である。
【図3】実施形態に係る撮像部が撮像する範囲の一例を示す図である。
【図4】実施形態に係る画像処理部の構成の一例を示すブロック図である。
【図5】実施形態に係る画像処理部の動作の一例を示すフローチャートである(その1)。
【図6】実施形態に係る画像処理部の動作の一例を示すフローチャートである(その2)。
【図7】実施形態に係る検査対象切出し部が切出す領域の一例を示す図である。
【図8】実施形態に係るマスク画像生成部がマスクする領域の一例を示す図である。
【図9】実施形態に係る積分フィルタ部が使用するデータ、数式の一例を示す図である。
【図10】実施形態に係る差分フィルタ部が使用する変位ベクトル、および補間カーネルの一例を説明する図である。
【図11】実施形態に係る画像処理部の処理過程で生成される中間画像の一例を示す図である。
【図12】実施形態に係るパラメータ生成部の動作例を示すフローチャートである。
【図13】実施形態に係るパラメータ生成部が切出す画像領域、および画像中の1次ピークの概略位置(矩形領域)の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施の形態について図面を参照しつつ説明する。
【0011】
本実施の形態に係る錠剤包装装置の構成について、図1の模式図を参照しつつ説明する。錠剤包装装置100は、プラスチックシート搬送部10、加熱装置20、成形装置21、錠剤充填装置30、蓋シート搬送部40、シール装置50、包装シート切断部60、取り出し部70、撮像部80、画像処理部90を有する。尚、撮像部80と画像処理部90とで錠剤包装検査装置が構成される。
【0012】
プラスチックシート搬送部10は、プラスチックシート200を供給し、次の工程である加熱装置20、成形装置21にプラスチックシート200を搬送する。加熱装置20は、搬送されたプラスチックシート200を加熱し、形成装置21は、加熱されたプラスチックシート200に、錠剤を入れるための凹部(以下、ポケット)を空圧と鋳型を用いて作成する。ポケットが作成されたプラスチックシート200は、複数の搬送ローラを経由してプレート301まで搬送される。
【0013】
錠剤充填装置30は、プレート301まで搬送されたプラスチックシート200上のポケットに錠剤201を一錠ずつ供給する。蓋シート搬送部40は、蓋シート202を供給し、シール装置50まで搬送する。
【0014】
シール装置50は、蓋シート202と、ポケットに錠剤201が供給されたプラスチックシート200とを結合(シール)する。
【0015】
包装シート切断部60は、蓋シート202とプラスチックシート200とが結合することで錠剤が包装されたシート(以下、PTPシート)を、所定の大きさ、すなわち錠剤の数が所定の数ずつとなるように切断する。取り出し部70は、切断されたPTPシートを取り出す。ここで、取り出し部70は、撮像部80、画像処理部90によって構成される錠剤包装検査装置によって不良と判定されたPTPシートを取り除く。
【0016】
画像処理部90は、CPU(Central Processing Unit)、主記憶装置であるメモリ、不揮発性の記憶装置を少なくとも有するコンピュータであり、撮像部80によって撮像された画像に対して処理演算することで、錠剤の欠錠、異種錠剤の混入を検出し、また、PTPシートに異物が付着していないか、PTPシートにシワが無いか等のシート不良の判定を行う。
【0017】
次に、撮像部80の構成の一例および撮像されるときのPTPシートの位置について、図2を参照しつつ説明する。
【0018】
撮像部80は、CCDカメラ81とドーム型、もしくは半円柱型のLED照明器具82とで構成されており、LED照明器具82の内側下部には、上方に向けて発光するLED照明発光部83が配置された構成となっている(図2(A)、(B)参照)。LED照明発光部83は三つあり、独立で点灯し、光量調整が可能である。
【0019】
図2(A)は、検査対象のPTPシートを画像入力視野の中央に配置した場合の図であり、図2(B)は、検査対象のPTPシートを視野端に配置した場合の図である。図2(A)の配置構成の場合、錠剤の検査やPTPシートの異物付着検査には最適であるものの、画像中のPTPシートのシワを目視で確認できるレベルまで至らない。一方、図2(B)の配置構成の場合、入力画像中のシワを目視で確認できるレベルになる。これは、カメラ視線とPTPシート面法線の角度が大きくなることより、PTPシート上の凹凸が影として画像上に反映され、画像中のシワのコントラストは視野中央から遠ざかるにつれ高くなるからである。本実施の形態では、シートのシワ検出には、図2(B)のように、正反射より少々ずらした位置にあるシートを検査対象とする。図2(C)は、LED照明器具82を用いずLED照明発光部83を横方向から発光させる場合の配置図であり、この図2(C)のような配置であってもよい。
【0020】
図3は、撮像部80により撮像される領域の一例を示す図である。撮像部80は、錠剤2列で1枚のシートの場合には図3(A)で示すように中央の1シートとその前後1シートずつが1画像中に入るように配置され、また錠剤3列で1枚のシートの場合には図3(B)で示すように1画像中に中央の1シートとその前後のシート半分ずつ(0.5シート)が入るように配置される。このようにすることで、シート異物検査とシワ検出検査の両立を実現することができる。すなわち異物検査では中央のシートを検査対象とし、シワ検出検査では前後のシートを検査対象とすることで、それぞれ最適化された照明配位で検査がきる。図3(B)の3列シートの場合は、前後のシートで合わせて100%の領域に対してシワ検出検査が可能となる。このように、撮像部80は、包装シート切断部60によって切断される前の連続したシートを撮像する位置に配置されることが望ましい。
【0021】
図4に、画像処理部90の構成の一例を示す。画像処理部90は、検査対象切出し部91、マスク画像生成部92、積分フィルタ部93、差分フィルタ部94、欠陥判定部95(判定部)、パラメータ生成部96を有する。これらの各ユニットは、画像処理部90内の不揮発性の記憶装置に予め記憶されているプログラムが主記憶装置にロードされ、CPUがこのプログラムを実行することで実現される。また、これら各ユニットそれぞれが使用する入力画像やパラメータ等の各種データは、画像処理部90内の不揮発性の記憶装置やメモリの記憶部に記憶されており、各ユニットそれぞれが入力画像やパラメータ等の各種データを取得し、演算実行し、記憶部へ生成した画像や値を出力する。
【0022】
次に、画像処理部90の動作について、図5、図6のフローチャートを参照しつつ説明する。また説明上の参照図として、各処理過程で生成される画像の一例を図11に示す。パラメータ生成部96の動作については後に詳説する。
【0023】
検査対象切出し部91は、検査対象画像上のPTPシート部の切り出しを行うことで、対象画像FTを導出する(S1)。対象画像FTは撮像された画像そのままよりも、アフィン変換等の処理が施された後の画像を用いた方がより検査精度が増す。よって、本実施の形態では以下の画像から1画像を切出し画像の対象とするが、撮像された画像そのままを対象画像とした実装であってもよい。
・アフィン変換画像 (FAFCR(x,y)、FAFCG(x,y)、FAFCB(x,y)、R、G、Bはそれぞれ赤、緑、青を示す。)
・色相画像 (S(x,y))
・輝度画像 (L(x,y))
・シートマークコントラスト低画像 (FSMKCL(x,y))
・シートマークコントラスト高画像 (FSMKCH(x,y))
【0024】
シートの切出し位置について、図7(A)に示す。まず検査対象切出し部91は、まずPTPシートの位置を検出する。検査対象切出し部91は、シートの上辺、下辺、側辺の座標から図7(A)に示されたx0、y0を算出する。その後検査対象切出し部91は、切り出す画像の原点(x1,y1)を、次式を用いて算出する。
x1=x0−x0m
y1=y0−y0m
(x0m、y0mは事前に定義されたパラメータ)
検査対象切出し部91は、幅W1、高さH1を切出し領域として画像を切り出す。幅W1、高さH1は、本実施の形態では事前に定義されたパラメータとする。
【0025】
次に、マスク画像生成部92は、切出し画像に対し検査の妨げに成り得る領域をマスクするためのマスク画像FMを生成する(S2)。マスク画像生成部92は、以下に示す5種類のマスク画像を用い、これらの合成マスク画像を生成する。
1.打ち抜きシートマスク(FMSH)
2.錠剤ポケットマスク(FMTB)
3.折り目マスク(FMFD)
4.刻印マスク(FMHN)
5.背景文字マスク(FMBP)
【0026】
打ち抜きシートマスクFMSHは、図8(A)に示すように検査対象のPTPシートの範囲外をマスクするマスク画像である。すなわち、以下の事項を満たす画像である。
FMSH(x,y)≡255((x,y)∈検査対象のPTPシート)
0(!((x,y)∈検査対象のPTPシート))
(「!」は否定を表す記号とする。以下同様。)
【0027】
錠剤ポケットマスクFMTBは、錠剤ポケットの領域をマスクするマスク画像である(図8(B)参照)。すなわち、
FMTB(x,y)≡ 0((x,y)∈錠剤ポケット)
255(!(x,y)∈錠剤ポケット)
【0028】
折り目マスクFMFDは、図8(C)に示すようにシートを折り易くするための折り目線をマスクするマスク画像であり、次の事項が成り立つ画像である。
FMFD(x,y)≡0((x,y)∈折り目線)
1(!(x,y)∈折り目線)
【0029】
刻印マスクFMHN、背景文字マスクFMBPは、錠剤名や社名、記号等をマスクするためのマスク画像であり(図8(D)、図8(E)参照)、それぞれ以下の事項を満たす画像である。
FMHN(x,y)≡0((x,y)∈刻印)
1(!(x,y)∈刻印)
FMBP(x,y)≡0((x,y)∈背景文字)
1(!(x,y)∈背景文字)
(上記「刻印」、「背景文字」の領域は、それぞれシートの種別ごとのパラメータとする。)
【0030】
マスク画像生成部92は、上記各マスク画像を合成した合成マスクFMを作成する。この合成マスクが使用されることで、切出し画像がマスクされる。
FM(x,y)=FMSH(x,y) AND FMTB(x,y)
AND FMFD(x,y) AND FMHN(x,y)
AND FMBP(x,y)
(上記の「AND」は合成を意味する)
【0031】
次に、積分フィルタ部93は、対象画像FT(x,y)、マスク画像FM(x,y)に対して積分フィルタ処理(積分フィルタ1)を行う(S3)。この積分フィルタ処理について、以下に詳説する。
【0032】
積分フィルタ部93は、まず対象画像FT(x,y)に合成マスク(マスク画像)FM(x,y)でマスクした後の残った部分の平均輝度GSHAVEを算出する。この処理は以下の手順となる。
1.マスク処理
積分フィルタ部93は、対象画像FT(x,y)に合成マスクFM(x,y)でマスク処理をする。
FTMKD(x,y)=FT(x,y) AND FM(x,y)
(「AND」は両画像を合成させることを意味する。)
2.ヒストグラム算出
積分フィルタ部93は、マスク処理された画像FTMKD(x,y)のヒストグラムを算出する。
hTMKD(g)=HIST(FTMKD(x,y))
(g=0〜255、「HIST(F(x,y))」の表記は、画像F(x,y)のヒストグラムを算出することを意味する)
3.平均輝度算出
積分フィルタ部93は、算出したヒストグラムhTMKD(g)を用いて、次式により平均輝度GSHAVEを算出する。
GSHAVE=(Σg・hTMKD(g))/(ΣhTMKD(g))
(上記「Σ」は、それぞれg=1からg=255までの合算値である。g=0でなくg=1であることに留意する。)
【0033】
次に積分フィルタ部93は、対象画像FT(x,y)、合成マスクFM(x,y)それぞれに対し、平均化処理を行う。平均化処理を行うに当り、以下のデータが用いられる。
・サブサンプル係数:N1SUB ∈ {1,2,4}
・平均カーネル: K1AVE(i,j) (i=0〜N1SUB−1、j=0〜N1SUB―1)
サブサンプル係数は、画像の画素を少なくする(サブサンプル)ときの間引き数である。また平均カーネルK1AVE(i,j)は、この平均化処理を行うときに用いられるカーネル(オペレータ)である。平均カーネルK1AVE(i,j)の例を図9(A)に示す。平均カーネルK1AVE(i,j)は、サブサンプル係数N1SUBに応じて図9(A)で示すように定義される。
【0034】
積分フィルタ部93は、図9(A)で示したサブサンプル係数N1SUB、平均カーネルK1AVE(i,j)を用いて、また図9(B)で示す式を用いて平均化処理を行う。図9(B)のFAVE1(x,y)は、対象画像FT(x,y)に対して平均化処理を行ったときの値であり、FMAVE(x,y)は、合成マスクFM(x,y)に対して平均化処理を行ったときの値である。
【0035】
次に積分フィルタ部93は、FAVE1(x,y)、FMAVE(x,y)を用いてサブサンプル処理を行う。サブサンプル処理は、以下の式が用いられることで算出される。
FAVE1SUB(x,y)=FAVE1((N1SUB・x,N1SUB・y)
FMAVESUB(x,y)=FMAVE((N1SUB・x,N1SUB・y)
(ここで、x=0 〜 W1/N1SUB−1、y=0〜 H1/N1SUB−1)
【0036】
積分フィルタ部93は、次に、積分カーネルK1(i,j)を用いて積分処理(カーネル処理)を行う。図9(C)は、積分カーネルK1(i,j)の一例を示した図である。このように積分カーネルK1(i,j)は、PTPシート上のメッシュの形状をしたカーネルである。図9(C)の例では5×5のカーネルとするが、態様を限定するものではない。このカーネルの導出方法については後述する。積分フィルタ部93は、次式により、サブサンプル処理後のFAVE1SUB(x,y)、FMAVESUB(x,y)に対し積分処理を行う。
FTF(x,y)= K1・FAVE1SUB(x,y)
FMF(x,y)= BIN(K1・FMAVESUB(x,y),255)
ここで、「K・F(x,y)」は、画像F(x,y)にカーネルKを適用させることを意味し、またBIN(F(x,y),T)は画像F(x,y)を閾値Tで2値化することを示す。すなわち、以下を意味する。
BIN(F(x,y),T)= 255 (F(x,y)≧T)
0 (F(x,y)<T)
尚、FTF(x,y)は、本実施の形態では符号付き16ビットの画像とする。
【0037】
次に、図5のステップS4の差分フィルタ処理(差分フィルタ1)について説明する。差分フィルタ部94は、ステップS4の差分フィルタ処理を行うに際し、以下の4方向の変位ベクトル、および画像補間用の補間カーネルを用いる。4方向の変位ベクトル(rd1、rd2、rd3、rd4)は、例えば図10(A)の矢印で示すように、PTPシート上のメッシュがひし形である場合、そのひし形の4つの辺方向を表すベクトルである。
rd1=(rdx1,rdy1)
rd2=(rdx2,rdy2)
rd3=(rdx3,rdy3)
rd4=(rdx4,rdy4)
【0038】
また、画像補間用に用いられる補間カーネルは以下とする。
Kd1=(kdx1,kdy1)
Kd2=(kdx2,kdy2)
Kd3=(kdx3,kdy3)
Kd4=(kdx4,kdy4)
KdM=Max(Kd1,Kd2,Kd3,Kd4)
(KdMはマスク処理が施された画像用であり、ここでのMax演算は、補間カーネルKd1〜Kd4の各構成要素の最大値を採用することを意味する。)
補間カーネルは、変位ベクトルに応じてそれぞれ定義されている。本実施の形態では、変位ベクトルrdiと補間カーネルKdiとは、図10(B)に示す関係とするが(尚、ceil(A)の表記は、浮動小数点数Aの小数点以下を切り上げた整数値を返すことを意味する。)、実装上では、図10(C)で示すように、変位ベクトルの方向に応じて要素が0または1となるカーネルとする。また本実施の形態では、マスク処理画像用に対する補間カーネルも定義される。
【0039】
差分フィルタ部94は、上述の積分処理で導出されたFTF(x,y)に対して、上記5つの補間カーネルを用いて補間処理を行う。
FTFD1(x,y)= Kd1・FTF(x,y)
FTFD2(x,y)= Kd2・FTF(x,y)
FTFD3(x,y)= Kd3・FTF(x,y)
FTFD4(x,y)= Kd4・FTF(x,y)
FMFD(x,y)=BIN( KdM・FTF(x,y),255)
【0040】
差分フィルタ部94は、次に差分処理を行う。この差分処理のx、yの座標は以下の範囲とする。
(x,y)∈処理領域
x∈0 〜 W1/N1SUB−1
y∈0 〜 H1/N1SUB−1
差分フィルタ部94は、補間処理後の画像FTFD1、FTFD2、FTFD3、FTFD4に対して以下の処理を行い、Viを生成する。
Vi=FTFDi(x+rdxi,y+rdyi)−FTF(x,y)
また差分フィルタ部94は、補間処理された画像FMFDを用いて、以下の条件を満たすかを判定する。
if(FMFD(x+rdxi,y+rdyi)=0)
この条件が真である場合、Vi=0となり、偽である場合、Viは上記式で算出された値となる。尚、上記iはi=1〜4である。
差分フィルタ部94は、このようにして算出されたVi(i=1〜4)に対して、それぞれ絶対値を算出し、その最大値となるViをFTD(x、y)の値とする。
FTD(x,y)=MAX{ABS(Vi)|i=1〜4}
【0041】
次に、図5のステップS5、および図6のステップS6の処理について説明する。ステップS5、S6の処理は、欠陥判定部95が行う処理であり、ステップS3で生成されたFTF(x,y)、FMF(x,y)を用いて判定が行われる。欠陥判定部95は、欠陥の判定を行うに際し、FTF(x,y)について、以下の手順でラベリングを行い、ラベリングの特徴量を抽出する(S5)。
【0042】
ステップS5のラベリング処理について説明する。欠陥判定部95は、まず上記積分処理後のFTF(x,y)を2値化し、2値化されたFTF(x,y)に対してFMF(x,y)でマスク処理を行うことで画像FTFB(x,y)を作成する。
FTFB(x,y)=FMF(x,y) AND BIN(FTF(x,y),TH1,TL1)
TH1,TL1は、2値化の際の範囲を示す閾値(TH1>TL1)である。また、BIN(F(x,y),TH,TL)の表記は以下の定義とする。
BIN(F(x,y),TH,TL)∈ 255(F(x、y)≧TH)
255(F(x、y)≦TL)
0(TL<F(x、y)<TH)
【0043】
次に欠陥判定部95は、2値化画像FTFB(x,y)と積分処理後の濃淡画像FTF(x,y)とを用いて、および既存のラベリング処理を用いて、ラベリングの特徴量を抽出する。本実施の形態では、島(連結している領域)の数N1、島の面積S1(i)、島の領域内の輝度値の最小値G1MIN(i)、および最大値G1MAX(i)をラベリングの特徴量とする(iはラベル識別番号でi=1〜 N1)。
【0044】
欠陥判定部95は、上記特徴量を用いて欠陥の有無を判定する(ステップS6)。判定の条件は以下の通りとする。
if(S1(i)≧T1S AND {G1MIN(i)≦T1MIN OR G1MAX(i)≧T1MAX})
上記の「AND」、「OR」は、それぞれ論理積、論理和を示すものであり、T1S、T1MIN、T1MAXは、事前に定義された閾値である。この条件が真である場合、欠陥判定部95は欠陥と判定する。
【0045】
次に欠陥判定部95は、ステップS7、S8においてステップS4で生成された差分処理後のデータに対して、判定処理を行う。欠陥判定部95は、上記差分処理で導出されたFTD(x,y)に対して、まず2値化処理を行う。
FTDB(x,y)=BIN(FTD(x,y),T2)
(T2は事前に定義された閾値)
また欠陥判定部95は、2値化画像FTDB(x,y)とFTD(x,y)とでラベリング処理を行い、特徴量を抽出する。ここで抽出される特徴量は以下である。
特徴量:島の個数N2、島の面積S2(i)、島の領域内の輝度値の最大値G2MAX(i) (i=1〜 N2)
尚、FTD(x,y)は絶対値であるため、輝度値の最小値は特徴量に含めない。
【0046】
欠陥判定部95は、これら特徴量を用いて欠陥を抽出する。
if(S2(i)≧T2S AND G2MAX(i)≧T2MAX})
(T2S、T2MAXは、閾値であり、パラメータとして事前に定義されている。)
欠陥判定部95は、この条件式を用いて処理を行い、真である場合に欠陥と判定する。
【0047】
上記処理以外に、差分フィルタ部94は、対象画像FT(x,y)、マスク画像FM(x,y)を用いて差分処理を行い(ステップS9)、その差分処理後の画像に基づき欠陥判定部95が判定処理を行う(ステップS10、S11)。
【0048】
差分フィルタ部94は、ステップS9においてもステップS4と同様に4方向の変位ベクトル(rp1、rp2、rp3、rp4)を用いる。
rp1=(rpx1,rpy1)
rp2=(rpx2,rpy2)
rp3=(rpx3,rpy3)
rp4=(rpx4,rpy4)
また、差分フィルタ部94は、画像補間用に補間カーネルを用いる。
kp1=(kpx1,kpy1)
kp2=(kpx2,kpy2)
kp3=(kpx3,kpy3)
kp4=(kpx4,kpy4)
kpM=(kpxM,kpyM):マスク用
これら変位ベクトル、補間カーネルは、ステップS4で用いたデータをそのまま使用してもよいし、また異なるデータを用いてもよい。
【0049】
差分フィルタ部94は、対象画像FT(x,y)に対して、補間カーネルを用いて補間処理を行う。
FTP1(x,y)= Kp1・FT(x,y)
FTP2(x,y)= Kp2・FT(x,y)
FTP3(x,y)= Kp3・FT(x,y)
FTP4(x,y)= Kp4・FT(x,y)
FMP(x,y)=BIN( KpM・FM(x,y),255)
【0050】
差分フィルタ部94は、次に差分処理を行う。この差分処理のx、yの座標は以下の範囲とする。
(x、y)∈処理領域
x∈0 〜 W1−1
y∈0 〜 H1−1
差分フィルタ部94は、補間処理後の画像FTP1、FTP2、FTP3、FTP4に対して以下の処理を行い、Viを生成する。
Vi=FTPi(x+rpxi,y+rpyi)−FT(x,y)
ここで、
if(FMP(x+rdxi,y+rdyi)=0)の条件が真である場合、Vi=0が採用され、偽である場合、Viは上記式で算出された値が採用される。尚、i=1〜4である。
【0051】
差分フィルタ部94は、このようにして算出されたVi(i=1〜4)に対して、それぞれ絶対値を算出し、その最大値を与えるViをFTC(x,y)の値とする。
FTC(x,y)={Vi|Vi=MAX{ABS(Vi)|i=1〜4}となるi}
【0052】
欠陥判定部95は、ステップS10として画像FTC(x,y)に対して2値化処理を行う。
FTCB(x,y)=BIN(FTC(x,y),T3)
(T3は事前に定義された閾値(パラメータ))
【0053】
欠陥判定部95は、ステップS10として、FTCB(x,y)とFTF(x,y)とでラベリングの特徴量を抽出する。ラベリングの特徴量は、島の個数N3、島の面積S3(i)、島の領域内の輝度値の最大値G3MAX(i)、および最小値G3MIN(i)とする(ここで、i=1〜 N3)。
【0054】
欠陥判定部95は、抽出した特徴量を用いて欠陥判定を行う(S11)。
if(S3(i)≧T3S AND {G3MIN(i)≦T3MIN OR G3MAX(i)≧T3MAX})
欠陥判定部95は上記条件を用いて判定を行い、真の場合、欠陥と判定する。
【0055】
図11に、画像処理部90の各処理過程で生成される中間処理画像の一例を示す。図11(A)は、検査対象切出し部91による切出し画像FT(x,y)、図11(B)は合成マスク画像FM(x,y)である。図11(C)、(D)は、それぞれ積分フィルタ部93による積分処理後の画像FTF(x,y)、FMF(x,y)であり、図11(E)は、差分フィルタ部94による差分処理後の画像FTD(x,y)である。尚、図11(A)、図11(C)の画像において、一部の領域(錠剤名、社名等の記載領域)に対してはモザイク処理を施してある。
【0056】
次に、積分フィルタ部93が使用する積分カーネルK1(i,j)、および差分フィルタ部94が使用する4方向の変位ベクトル(rd1、rd2、rd3、rd4)の各パラメータの生成方法について説明する。これらのパラメータは、パラメータ生成部96によって生成される。パラメータ生成部96の動作について、図12のフローチャートを参照しつつ説明する。
【0057】
パラメータ生成部96は、まずシート部が撮像された画像から検査対象領域を切り出す(S21)。本実施の形態では、検査対象画像とパラメータ生成用の対象画像は独立して選択できるようにする。切出しの対象は、アフィン変換画像(FAFCR、FAFCG、FAFCB)、色相画像S、輝度画像L、シートマークコントラスト低画像FSMKCL、シートマークコントラスト高画像FSMKCHから人手で選択される。また、FFT(Fast Fourier Transform)処理を次工程で行うため、切り出されるサイズの幅、高さは2n画素となる。ここで、具体的な切出し領域の例を図13(A)に示す。図13(A)で示すように、切り出し画像中に錠剤のポケット部や文字部が入っていても良い。この切り出し画像を
FMSH(x、y)
x∈0 〜 W2−1
y∈0 〜 H2 −1
とする。尚、本実施の形態ではW2=H2=2n(n=6,7,8,9)とする。
【0058】
パラメータ生成部96は、切り出し画像FMSH(x,y)に対してFFT処理を行うことでFFT画像FCM(x,y)を作成し(S22)、さらに、FFT画像FCMからパワースペクトル画像FPS(x,y)を生成する(S23)。尚、FCM(x,y)、FPS(x,y)の生成処理には従前より存在する技術が用いられ、FPS(x,y)は浮動小数点とする。
FPS(x,y):x∈0 〜 W2、y∈0 〜 H2
幅、高さが1増えることに留意する。
【0059】
パラメータ生成部96は、次にパワースペクトル画像FPS(x,y)からスペクトルのピークの位置を検出する(S24)。ここで、スペクトルのピーク位置の検出について説明する。図13(B)で示すように、スペクトルには、中央部、および4点のメッシュの1次ピーク、その他高次のピークが現れる。パラメータ生成部96は、人手により選択された4つの1次ピークの概略位置(矩形領域Ri)の重心位置を算出する。本実施の形態では、図13(B)のように、1〜4の矩形領域が人手で指定される。
矩形Ri:(x0(i)、y0(i)、w(i)、h(i)、i=1,2,3,4)
(「i」は領域1〜4の番号に対応している)
x0(i)、y0(i)は、各矩形領域の最左上の座標、w(i)、h(i)は各矩形領域の横幅長、縦幅長を示す。
パラメータ生成部96は、領域1〜4の重心位置Giをラベリング処理を行うことで算出する。各重心は全体画像における重心として算出する。
Gi:(xg(i),yg(i))(i=1〜4)
【0060】
パラメータ生成部96は、重心位置Giおよび切出し領域の横幅長W2、横幅長W2を用いて波数ベクトルa、bをそれぞれ算出する(S25)。
a=(W2/(xg(3)−xg(1)),H2/(yg(3)−yg(1)))
b=(W2/(xg(4)−xg(2)),H2/(yg(4)−yg(2)))
【0061】
パラメータ生成部96は、次に積分カーネルK1(i,j)、および4方向の変位ベクトル(rd1、rd2、rd3、rd4)を導出する(S26)。
【0062】
積分カーネルK1(i,j)の導出方法について説明する。パラメータ生成部96は、まず2つのベクトルa1、b1を次式にて求める。
a1=W2/NSUB・(xg(3)−xg(1),yg(3)−yg(1))
b1=H2/NSUB・(xg(4)−xg(2),yg(4)−yg(2))
次にパラメータ生成部96は、ベクトル関数V(s,t)=(s・a1+t・b1){s=0.0〜1.0、t=0.0〜1.0}の各成分の最大、最小を求める。
xmin = Min( Vx(0,0),Vx(1,0),Vx(0,1),Vx(1,1))
xmax = Max( Vx(0,0),Vx(1,0),Vx(0,1),Vx(1,1))
ymin = Min( Vy(0,0),Vy(1,0),Vy(0,1),Vy(1,1))
ymax = Max( Vy(0,0),Vy(1,0),Vy(0,1),Vy(1,1))
(Min(A,B,C,D)、Max(A,B,C,D)の表記は、A,B,C,Dのうちの最小値または最大値を意味し、Vx、Vyは、ベクトルVのx座標、y座標の要素値である)
【0063】
パラメータ生成部96は、積分カーネルK1のカーネルサイズを求める。
wk1=INT(xmax−xmin+1)
hk1=INT(ymax−ymin+1)
(「INT(F)」は、Fを整数に纏める処理を意味する)
【0064】
パラメータ生成部96は、以下の手順で積分カーネルK1(x,y){x=0〜(wk1−1)、y=0〜(hk1−1)}の各要素の値を埋め込む。
(1)最初にK1(x,y)を全て0にクリアする。
(2)以下の手法でK1(x,y)に値を代入する。
r=s・a1+t・b1−(xmin,ymin)
s=0.0〜1.0:0.02ずつインクリメント
t=0.0〜1.0:0.02ずつインクリメント
(3)上記(2)で求められたベクトルrのx、y座標の位置に、K1(x,y)=1と書き込む(上書きする)。
(4)正規化係数F1を算出する。
F1=1/ΣΣK1(x,y)
上式のΣは、それぞれx=0〜wk1−1、y=0〜hk1−1である。
【0065】
パラメータ生成部96は、ベクトルa1、b1を用いて4方向の変位ベクトル(rd1、rd2、rd3、rd4)を導出する。
rd1=a1
rd2=−a1
rd3=b1
rd4=−b1
【0066】
パラメータ生成部96は、このようにして導出した積分カーネルK1、4方向の変位ベクトル(rd1、rd2、rd3、rd4)の各値を画像処理部90の記憶部に記憶させる。積分フィルタ部93、差分フィルタ部94は、必要に応じてこれら各データを記憶部から取得する。
【0067】
以上より、本実施の形態によれば、メッシュの形状に基づいたカーネルを使用することで、シールされたPTPシート表面上にあるメッシュが検査に及ぼす影響を少なくし、検査精度を上げることができる。
【0068】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0069】
10 プラスチックシート搬送部、20 加熱装置、21 成形装置、30 錠剤充填装置、40 蓋シート搬送部、50 シール装置、60 包装シート切断部、70 取り出し部、80 撮像部、90 画像処理部、91 検査対象切出し部、92 マスク画像生成部、93 積分フィルタ部、94 差分フィルタ部、95 欠陥判定部、96 パラメータ生成部、100 錠剤包装装置。
【特許請求の範囲】
【請求項1】
PTPシートを撮像する撮像部と、
前記PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、前記撮像部によって撮像されたPTPシートの画像に対して積分処理をする積分フィルタ部と、
前記積分フィルタ部によって積分処理された画像に基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する判定部と、
を有する錠剤包装検査装置。
【請求項2】
請求項1に記載の錠剤包装検査装置において、さらに、
前記メッシュ形状の辺方向を表すベクトルを用いて、前記撮像部によって撮像されたPTPシートの画像に対して差分処理をする差分フィルタ部を有し、
前記判定部は、さらに、
前記差分フィルタ部によって差分処理された画像に基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する
錠剤包装検査装置。
【請求項3】
請求項1または請求項2に記載の錠剤包装検査装置において、
前記判定部は、前記積分フィルタ部によって積分処理された画像にラベリング処理を行い、生成される一つまたは複数の連結領域の大きさと、それぞれの連結領域を構成するピクセルの値とに基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する錠剤包装検査装置。
【請求項4】
PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、撮像されたPTPシートの画像に対して積分処理を行い、
前記積分処理した画像に基づき、前記撮像されたPTPシートの欠陥の有無を判定する
処理をコンピュータに実行させる錠剤包装検査プログラム。
【請求項5】
撮像部が、PTPシートを撮像し、
コンピュータが、
前記PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、前記撮像部によって撮像されたPTPシートの画像に対して積分処理をし、
前記積分処理された画像に基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する
錠剤包装検査方法。
【請求項1】
PTPシートを撮像する撮像部と、
前記PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、前記撮像部によって撮像されたPTPシートの画像に対して積分処理をする積分フィルタ部と、
前記積分フィルタ部によって積分処理された画像に基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する判定部と、
を有する錠剤包装検査装置。
【請求項2】
請求項1に記載の錠剤包装検査装置において、さらに、
前記メッシュ形状の辺方向を表すベクトルを用いて、前記撮像部によって撮像されたPTPシートの画像に対して差分処理をする差分フィルタ部を有し、
前記判定部は、さらに、
前記差分フィルタ部によって差分処理された画像に基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する
錠剤包装検査装置。
【請求項3】
請求項1または請求項2に記載の錠剤包装検査装置において、
前記判定部は、前記積分フィルタ部によって積分処理された画像にラベリング処理を行い、生成される一つまたは複数の連結領域の大きさと、それぞれの連結領域を構成するピクセルの値とに基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する錠剤包装検査装置。
【請求項4】
PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、撮像されたPTPシートの画像に対して積分処理を行い、
前記積分処理した画像に基づき、前記撮像されたPTPシートの欠陥の有無を判定する
処理をコンピュータに実行させる錠剤包装検査プログラム。
【請求項5】
撮像部が、PTPシートを撮像し、
コンピュータが、
前記PTPシート上の連続したメッシュ形状と同型のカーネルを用いて、前記撮像部によって撮像されたPTPシートの画像に対して積分処理をし、
前記積分処理された画像に基づき、前記撮像部によって撮像されたPTPシートの欠陥の有無を判定する
錠剤包装検査方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2012−68026(P2012−68026A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−210465(P2010−210465)
【出願日】平成22年9月21日(2010.9.21)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願日】平成22年9月21日(2010.9.21)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】
[ Back to top ]