(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024145573
(43)【公開日】2024-10-15
(54)【発明の名称】個体識別装置、個体識別方法、及びプログラム
(51)【国際特許分類】
G06V 10/86 20220101AFI20241004BHJP
G06T 7/00 20170101ALI20241004BHJP
G06T 7/33 20170101ALI20241004BHJP
G06V 10/24 20220101ALI20241004BHJP
【FI】
G06V10/86
G06T7/00 300Z
G06T7/33
G06V10/24
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023057984
(22)【出願日】2023-03-31
(71)【出願人】
【識別番号】000003193
【氏名又は名称】TOPPANホールディングス株式会社
(71)【出願人】
【識別番号】504157024
【氏名又は名称】国立大学法人東北大学
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100139686
【弁理士】
【氏名又は名称】鈴木 史朗
(74)【代理人】
【識別番号】100169764
【弁理士】
【氏名又は名称】清水 雄一郎
(74)【代理人】
【識別番号】100147267
【弁理士】
【氏名又は名称】大槻 真紀子
(72)【発明者】
【氏名】酒井 修二
(72)【発明者】
【氏名】渡邉 隆史
(72)【発明者】
【氏名】青木 孝文
(72)【発明者】
【氏名】伊藤 康一
(72)【発明者】
【氏名】渡邉 浩太
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA13
5L096BA08
5L096EA12
5L096EA14
5L096EA23
5L096FA46
5L096HA08
5L096JA05
(57)【要約】
【課題】印刷物における個体識別において識別の精度を向上させる。
【解決手段】対象印刷物が撮像された対象画像から前記対象印刷物の個体識別を行う個体識別装置であり、前記対象画像における輝度値の補正を行うことにより補正画像を生成する画像補正部と、前記補正画像に対応する二次元座標に、前記補正画像の特徴が対応づけられた特徴マップを生成する特徴マップ生成部と、前記特徴マップから、前記補正画像における特徴がベクトルで示された算出特徴ベクトルを算出する特徴ベクトル算出部と、前記算出特徴ベクトルと、データベースにあらかじめ登録されている登録特徴ベクトルとの類似度を算出する類似度算出部と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
対象印刷物が撮像された対象画像から前記対象印刷物の個体識別を行う個体識別装置であり、
前記対象画像における輝度値の補正を行うことにより補正画像を生成する画像補正部と、
前記補正画像に対応する二次元座標に、前記補正画像の特徴が対応づけられた特徴マップを生成する特徴マップ生成部と、
前記特徴マップから、前記補正画像における特徴がベクトルで示された算出特徴ベクトルを算出する特徴ベクトル算出部と、
前記算出特徴ベクトルと、データベースにあらかじめ登録されている登録特徴ベクトルとの類似度を算出する類似度算出部と、
を備える個体識別装置。
【請求項2】
前記画像補正部は、前記対象画像における各ピクセルの輝度値に対して、線形濃度変換を行うことにより前記補正画像を生成する、
請求項1に記載の個体識別装置。
【請求項3】
前記画像補正部は、前記線形濃度変換を行うための変数を、前記対象印刷物の原稿である印刷元画像における各ピクセルの輝度値に基づいて決定する、
請求項2に記載の個体識別装置。
【請求項4】
前記画像補正部は、前記対象画像に対して適応的ヒストグラム均等化を行うことにより前記補正画像を生成する、
請求項1に記載の個体識別装置。
【請求項5】
前記画像補正部は、前記適応的ヒストグラム均等化を行うための変数を、前記対象印刷物の原稿である印刷元画像に基づいて決定する、
請求項4に記載の個体識別装置。
【請求項6】
前記特徴マップ生成部は、畳み込みニューラルネットワーク(CNN)を用いて中間特徴マップを生成し、生成した前記中間特徴マップに対して、平均プーリング(Average Pooling)を行い、前記中間特徴マップよりも解像度が低い前記特徴マップを生成する、
請求項1に記載の個体識別装置。
【請求項7】
前記特徴ベクトル算出部は、前記特徴マップに対して全結合を行い、前記特徴マップの解像度とチャネル数により特定されるそれぞれの次元数の総和である総次元数よりも小さい次元数を持つ前記算出特徴ベクトルを算出する、
請求項1に記載の個体識別装置。
【請求項8】
前記類似度算出部は、前記算出特徴ベクトルと、前記登録特徴ベクトルとのコサイン類似度を算出し、算出したコサイン類似度を前記類似度とする、
請求項1に記載の個体識別装置。
【請求項9】
前記畳み込みニューラルネットワークは、学習データセットにおける学習用画像から任意に選択した一部領域をノイズ画像に置き換えることにより、前記学習用画像から生成した複数の画像を用いた学習が行われた学習済モデルである、
請求項6に記載の個体識別装置。
【請求項10】
前記対象画像における位置調整を行う位置調整部をさらに備え、
前記位置調整部は、前記対象画像からコーナー点群を検出し、前記コーナー点群の中から、あらかじめ設定された範囲に含まれるコーナー点を位置合わせ用のコーナー点として選択し、選択した前記位置合わせ用のコーナー点が、あらかじめ設定された位置になるように、前記対象画像における位置座標を変換する、
請求項1に記載の個体識別装置。
【請求項11】
前記対象画像における位置調整を行う位置調整部をさらに備え、
前記位置調整部は、前記対象画像からコーナー点群を検出し、前記対象印刷物の原稿である印刷元画像においてあらかじめ設定された小領域に対して、前記コーナー点群の各点の周辺にある画素群における前記対象画像の画素値と、前記小領域における前記印刷元画像の画素群における画素値との間でパターンマッチングを行い、前記コーナー点群の中から最もマッチングしたコーナー点を位置合わせ用のコーナー点として選択し、選択した前記位置合わせ用のコーナー点が、あらかじめ設定された位置になるように、前記対象画像における位置座標を変換する、
請求項1に記載の個体識別装置。
【請求項12】
対象印刷物が撮像された対象画像から前記対象印刷物の個体識別を行う個体識別装置が行う個体識別方法であり、
画像補正部が、前記対象画像における輝度値の補正を行うことにより補正画像を生成し、
特徴マップ生成部が、前記補正画像に対応する二次元座標に、前記補正画像の特徴が対応づけられた特徴マップを生成し、
特徴ベクトル算出部が、前記特徴マップから、前記補正画像における特徴がベクトルで示された算出特徴ベクトルを算出し、
類似度算出部が、前記算出特徴ベクトルと、データベースにあらかじめ登録されている登録特徴ベクトルとの類似度を算出する、
個体識別方法。
【請求項13】
対象印刷物が撮像された対象画像から前記対象印刷物の個体識別を行う個体識別装置であるコンピュータに、
前記対象画像における輝度値の補正を行うことにより補正画像を生成させ、
前記補正画像に対応する二次元座標に、前記補正画像の特徴が対応づけられた特徴マップを生成させ、
前記特徴マップから、前記補正画像における特徴がベクトルで示された算出特徴ベクトルを算出させ、
前記算出特徴ベクトルと、データベースにあらかじめ登録されている登録特徴ベクトルとの類似度を算出させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、個体識別装置、個体識別方法、及びプログラムに関する。
【背景技術】
【0002】
バーコードなどの印刷物における個体識別を行う技術がある(例えば、特許文献1)。例えば、印刷物における印刷のカスレやかけなどが様々に発生し、印刷物における製造ばらつきが生じる。このような製造ばらつきに基づいて、個々の印刷物を識別することができる。
【0003】
図9には、印刷物の製造工程が模式的に示されている。
図9に示すように、印刷物の製造工程においては、例えば、製版工程、刷版工程、及び印刷工程のそれぞれの工程が行われる。製版工程では、1つの原稿を多面付けに編集するなどして印刷に用いる版が製版される。刷版工程では、印刷に用いる版が版胴に巻き付けられて装着される。印刷工程では、インキを付着した版胴(または、版胴に付着させたインキを転写したブランケット胴)と圧胴を回転させることにより版胴に印刷用紙を圧着させる。これにより、印刷用紙に印刷が行われ、印刷物が製造される。
【0004】
多面付けされた場合、同じ版から印刷された印刷物であっても、版胴における原稿の位置が異なれば、それぞれの原稿から個体として異なる印刷物が生成される。また、印刷工程において、印刷用紙そのものの素材のばらつきや、印刷時の湿度、圧胴が回転するスピードや振動などによって印刷用紙の状態が変化し印刷する毎に異なる印刷物が生成される。また、同じ版を用いて複数回の印刷を行った場合、印刷が繰り返されることにより版が劣化し印刷する毎に異なる印刷物が生成される。このような印刷物のそれぞれを個体識別できるようにする。
【0005】
一般的に、画像を用いて個体識別を行う場合、識別したい対象を撮像した画像から特徴量を抽出し、複数の画像のそれぞれから抽出された特徴量同士の類似度を計算することにより、それら複数の画像のそれぞれに写されている対象物が、同一個体であるか否かを判定する。このとき、それぞれの画像から抽出される特徴量は、同一個体同士であれば、似た特徴量として抽出され、異個体同士であれば異なる特徴量として抽出されることが望ましい。このような特徴量を抽出する手法として、ディープラーニングに基づく手法がある。例えば、ディープラーニングにより、画像から特徴量を抽出する代表的な手法として、非特許文献1が挙げられる。
【先行技術文献】
【特許文献】
【0006】
【非特許文献】
【0007】
【非特許文献1】Min. Lin, Qiang. Chen, Shuicheng. Yan,“Network In Network”,2014、[online]、[令和5年1月20日検索]、インターネット<URL:https://arxiv.org/pdf/1312.4400v3.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0008】
このような印刷物における個体識別においては識別の精度がよい方が望ましい。
【0009】
本発明は、上記の課題に基づいてなされたものであり、印刷物における個体識別において識別の精度を向上させることができる個体識別装置、個体識別方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明の個体識別装置は、対象印刷物が撮像された対象画像から前記対象印刷物の個体識別を行う個体識別装置であり、前記対象画像における輝度値の補正を行うことにより補正画像を生成する画像補正部と、前記補正画像に対応する二次元座標に、前記補正画像の特徴が対応づけられた特徴マップを生成する特徴マップ生成部と、前記特徴マップから、前記補正画像における特徴がベクトルで示された算出特徴ベクトルを算出する特徴ベクトル算出部と、前記算出特徴ベクトルと、データベースにあらかじめ登録されている登録特徴ベクトルとの類似度を算出する類似度算出部と、を備える。
【0011】
本発明の個体識別方法は、対象印刷物が撮像された対象画像から前記対象印刷物の個体識別を行う個体識別装置が行う個体識別方法であり、画像補正部が、前記対象画像における輝度値の補正を行うことにより補正画像を生成し、特徴マップ生成部が、前記補正画像に対応する二次元座標に、前記補正画像の特徴が対応づけられた特徴マップを生成し、特徴ベクトル算出部が、前記特徴マップから、前記補正画像における特徴がベクトルで示された算出特徴ベクトルを算出し、類似度算出部が、前記算出特徴ベクトルと、データベースにあらかじめ登録されている登録特徴ベクトルとの類似度を算出する。
【0012】
本発明のプログラムは、対象印刷物が撮像された対象画像から前記対象印刷物の個体識別を行う個体識別装置であるコンピュータに、前記対象画像における輝度値の補正を行うことにより補正画像を生成させ、前記補正画像に対応する二次元座標に、前記補正画像の特徴が対応づけられた特徴マップを生成させ、前記特徴マップから、前記補正画像における特徴がベクトルで示された算出特徴ベクトルを算出させ、前記算出特徴ベクトルと、データベースにあらかじめ登録されている登録特徴ベクトルとの類似度を算出させる、プログラムである。
【発明の効果】
【0013】
本発明によれば、印刷物における個体識別において識別の精度を向上させることができる。
【図面の簡単な説明】
【0014】
【
図1】実施形態の個体識別装置1の構成例を示すブロック図である。
【
図2】実施形態の個体識別装置1が行う処理を説明するための図である。
【
図3】実施形態の位置調整部100が行う処理を説明するための図である。
【
図4】実施形態の画像補正部101が行う処理を説明するための図である。
【
図5】実施形態の画像補正部101が行う処理を説明するための図である。
【
図6】実施形態の特徴マップ生成部102及び特徴ベクトル算出部103が行う処理を説明するための図である。
【
図7】実施形態の特徴マップ生成部102におけるCNNに学習させる処理を説明するための図である。
【
図8】実施形態の個体識別装置1が行う処理の流れを示すフローチャートである。
【
図9】印刷物における製造ばらつきが生じる要因を説明するための図である。
【発明を実施するための形態】
【0015】
以下、実施形態の個体識別装置1を、図面を参照しながら説明する。
【0016】
<個体識別装置1について>
個体識別装置1について、
図1及び
図2を用いて説明する。
図1は、実施形態に係る個体識別装置1の構成例を示すブロック図である。
図2は、実施形態の個体識別装置1が行う処理を説明するための図である。
【0017】
図1に示すように、個体識別装置1は、例えば、位置調整部100、画像補正部101、特徴マップ生成部102、特徴ベクトル算出部103、類似度算出部104、対象画像記憶部105、印刷元画像記憶部106、特徴マップ記憶部107、算出特徴ベクトル記憶部108、及び登録特徴ベクトル記憶部109を備える。
【0018】
個体識別装置1がその機能を実現するための機能部(位置調整部100、画像補正部101、特徴マップ生成部102、特徴ベクトル算出部103、及び類似度算出部104)は、個体識別装置1の記憶部(不図示)に記憶されたプログラムが実行されることにより実現される。
【0019】
個体識別装置1が情報を記憶するための構成(印刷元画像記憶部106、特徴マップ記憶部107、算出特徴ベクトル記憶部108、及び登録特徴ベクトル記憶部109)は、HDD(Hard Disk Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、RAM(Random Access read /write Memory)、ROM(Read Only Memory)などの記憶媒体、あるいはこれらの組合せによって構成される。
【0020】
図2に示すように、個体識別装置1において、位置調整部100に対象画像TGが入力される。対象画像TGは、個体識別の対象とする印刷物TPが撮像された画像である。
【0021】
位置調整部100は位置合わせを行う。位置合わせは、対象画像TGにおける特定の位置(後述する位置合わせ用のコーナー点)が、所定の位置座標となるように位置座標を変換する処理である。例えば、対象画像TGにおいて、識別の対象としてのバーコードが印刷されている場合、位置調整部100は、バーコードの四隅の位置などが、特定の位置となるように位置合わせを行う。位置調整部100による位置合わせが行われた対象画像TGは、画像補正部101に入力される。位置調整部100が位置合わせを行う具体的な方法については後で詳しく説明する。
【0022】
画像補正部101は、補正画像を生成する。補正画像は、対象画像TGにおける画素値が補正された画像である。画像補正部101は、線形濃度変換、または、適応的ヒストグラム均等化により、対象画像TGにおける画素値の補正を行う。画像補正部101により生成された補正画像は、特徴マップ生成部102に入力される。画像補正部101が補正画像を生成する具体的な方法については後で詳しく説明する。
【0023】
特徴マップ生成部102は、特徴マップを生成する。特徴マップは、補正画像から抽出された特徴が、二次元座標に対応付けられた画像(マップ)である。特徴マップ生成部102は、畳み込みニューラルネットワーク(CNN、Convolutional Neural Network)を用いて、補正画像に畳み込みを行い、さらに平均プーリング(Average Pooling)を用いることにより特徴マップを生成する。特徴マップ生成部102により生成された特徴マップは、特徴ベクトル算出部103に入力される。特徴マップ生成部102が特徴マップを生成する具体的な方法については後で詳しく説明する。また、特徴マップ生成部102が用いるCNNに画像を学習させる方法について、後で詳しく説明する。
【0024】
特徴ベクトル算出部103は、算出特徴ベクトルSTVを算出する。算出特徴ベクトルSTVは、特徴マップにおける特徴をベクトルで示したものである。特徴ベクトル算出部103は、特徴マップを平坦化して全結合することにより、算出特徴ベクトルSTVを算出する。特徴ベクトル算出部103により算出された算出特徴ベクトルSTVは、類似度算出部104に入力される。特徴ベクトル算出部103が算出特徴ベクトルSTVを算出する具体的な方法については後で詳しく説明する。
【0025】
類似度算出部104は、算出特徴ベクトルSTVと、登録特徴ベクトルTTV(登録特徴ベクトルTTV1~TTV4)とが、互いに似ている度合である類似度を算出する。登録特徴ベクトルTTVは、個体識別の対象である個体(印刷物)のそれぞれの特徴をベクトルで示したものである。印刷物から登録特徴ベクトルTTVを生成する方法は、対象画像TGから算出特徴ベクトルSTVを生成する方法と同様の方法を用いることができる。
【0026】
類似度算出部104は、算出特徴ベクトルSTVを、登録特徴ベクトルTTVとの類似度を算出し、算出した類似度が閾値以上であるか否かを判定する。類似度算出部104は、類似度を比較することにより両ベクトルが互いに類似すると判定できる場合、その算出特徴ベクトルSTVに対応する対象画像TGは、その算出特徴ベクトルSTVとの類似度が閾値以上であった登録特徴ベクトルTTVに対応する印刷物であると識別する。これにより、個体を識別することができる。類似度算出部104が類似度を算出する具体的な方法については後で詳しく説明する。
【0027】
対象画像記憶部105は、対象画像TGの画像情報を記憶する。例えば、ユーザの操作などにより、インターネットや可搬型記憶媒体(USBメモリ等)を介して、対象画像TGの画像情報が対象画像記憶部105に記憶される。
【0028】
印刷元画像記憶部106は、印刷元画像の画像情報を記憶する。印刷元画像は、個体識別の対象とする印刷物の原稿とした画像であり、例えば、バーコードが印刷された印刷物の原稿画像である。例えば、ユーザの操作などにより、インターネットや可搬型記憶媒体(USBメモリ等)を介して、印刷元画像の画像情報が印刷元画像記憶部106に記憶される。
【0029】
特徴マップ記憶部107は、特徴マップ生成部102によって生成された特徴マップを記憶する。算出特徴ベクトル記憶部108は、特徴ベクトル算出部103によって算出された算出特徴ベクトルを記憶する。
【0030】
登録特徴ベクトル記憶部109は、登録特徴ベクトルを記憶する。登録特徴ベクトルは、個体識別の対象である個体(印刷物)の特徴ベクトルである。例えば、ユーザの操作などにより、インターネットや可搬型記憶媒体(USBメモリ等)を介して、個体識別の対象である個体(印刷物)の特徴ベクトルを示す情報が、登録特徴ベクトルとして、各個体の識別情報と対応づけられて印刷元画像記憶部106に記憶される。
【0031】
<位置調整部100が位置合わせを行う方法>
ここで、位置調整部100が位置合わせを行う方法について、
図3を用いて説明する。
図3は、実施形態の位置調整部100が行う処理を説明するための図である。
【0032】
図3に示すように、位置調整部100は、対象画像TGからコーナー点CPを検出する。コーナー点CPは、対象画像TGに写された印刷物の角(コーナー)となり得る画素であり、例えば、四角形のバーコードが印刷された印刷物に係る対象画像TGであれば、そのバーコードの四隅となり得る画素である。
【0033】
位置調整部100は、例えば、画素と、その画素を囲む画素の画素値の差分が閾値以上である画素をコーナー点CPとして検出する。
図3に示すように、対象画像TGに撮像された印刷物に応じて、複数のコーナー点CP(コーナー点群)が検出される。
【0034】
位置調整部100は、対象画像TGにおいて予め設定された探索範囲TE(例えば、31[ピクセル]×31[ピクセル]の領域)を抽出する。位置調整部100は、抽出した探索範囲TEの中にあるコーナー点CPから選択した点を、位置合わせ用のコーナー点CPとしてその座標を取得する。例えば、四角形のバーコードが印刷された印刷物に係る対象画像TGであれば、そのバーコードの四隅となり得る範囲に、探索範囲TEが設定される。例えば、この図では、位置合わせ用のコーナー点CPとして、4点の位置座標(139、392)、(139、639)、(842、389)、(850、638)のそれぞれが取得された例が示されている。
【0035】
位置調整部100は、探索範囲TEに対応して予め設定された目標座標を取得する。例えば、この図では、目標座標として、4点の位置座標(146、383)、(146、629)、(847、383)、(847、629)が取得された例が示されている。位置調整部100は、位置合わせ用のコーナー点CPの位置座標を、目標座標に変換するための変換行列を算出する。例えば、この図では、変換行列としてアフィン行列が用いられる場合が例示されている。
【0036】
位置調整部100は、算出した変換行列を用いて、対象画像TGにおける各画素の位置を変換する。この図では、アフィン行列を用いたアフィン変換を行うことによって、対象画像TGにおける各画素の位置を変換する。これにより、位置調整部100は、対象画像TGにおける各画素の位置を調整して位置合わせを行う。
【0037】
すなわち、位置調整部100は、対象画像TGにおける位置調整を行う。位置調整部100は、対象画像TGからコーナー点群を検出し、検出したコーナー点群の中から、予め設定された範囲に含まれるコーナー点CPを位置合わせ用のコーナー点CPとして選択する。位置調整部100は、選択した位置合わせ用のコーナー点CPが、あらかじめ設定された位置になるように、対象画像TGにおける位置座標を変換する。
【0038】
なお、上記では、アフィン変換を行う場合を例示したが、これに限定されない。位置調整部100は、少なくとも、印刷物を撮像した際の撮像条件、例えば、印刷物の正面に対する撮像角度など、に応じて対象画像TGに生じた印刷物形状の歪みが是正されるように、対象画像TGにおける各画素の位置が変換できればよい。アフィン変換ではなく、射影変換が行われてもよい。また、拡大、縮小、平行移動、及び回転、或いはこれらの組合せにより各画素の位置が変換されてもよい。
【0039】
位置調整部100は、位置合わせを行った対象画像TGから、予め設定されたクロップ範囲CEを切り出すクロップ処理を行う。位置調整部100は、クロップ処理した後の対象画像TGを、画像補正部101による補正の対象となる対象画像TGとする。
【0040】
<位置調整部100が位置合わせを行う方法(変形例)>
ここで、位置調整部100が位置合わせを行う方法(変形例)について説明する。本変形例では、位置調整部100は、探索範囲TEを設定する代わりに、印刷元画像のコーナー点CPを用いて、対象画像TGにおける位置合わせ用のコーナー点CPを選択する。
【0041】
例えば、位置調整部100は、印刷元画像における特定のコーナー点CPを含む領域における画素の並び方(第1パターン)を取得する。位置調整部100は、例えば、あらかじめ設定した領域を、特定のコーナー点CPを含む領域とする。位置調整部100は、印刷元画像記憶部106を参照して印刷元画像の画像情報を取得し、取得した画像情報に基づいて、印刷元画像における特定のコーナー点CPを、対象画像TGにおける位置合わせに用いるコーナー点CPに対応する点として検出する。例えば、位置調整部100は、四角形のバーコードが印刷された印刷物に係る印刷元画像であれば、そのバーコードの四隅に対応するコーナー点CPを、特定のコーナー点CPとして検出する。
【0042】
位置調整部100は、検出したコーナー点CPを含む領域(例えば、7[ピクセル]×7[ピクセル]の領域)を、4つのコーナー点CPのそれぞれについて抽出する。位置調整部100は、印刷元画像から抽出した領域における画素の並び方(第1パターン)と、対象画像TGから抽出したコーナー点CPを含む領域における画素の並び方(第2パターン)とを比較する。位置調整部100は、例えば、パターンマッチングを行うことにより、第1パターンと第2パターンとを比較する。具体的には、位置調整部100は、第2パターンに対応する対象画像TGから抽出したコーナー点群における各点の周辺にある画素群の画素値と、第1パターンに対応する小領域における印刷元画像の画素群における画素値との間でパターンマッチングを行う。
【0043】
例えば、位置調整部100は、第1パターンと第2パターンのそれぞれの領域において、対応する画素同士の画素値の差分を算出する。位置調整部100は、算出した差分の絶対値の総和が閾値未満である場合、第1パターンと第2パターンとにおいて画素の並び方が互いに似ていると判定する。一方、位置調整部100は、算出した差分の絶対値の総和が閾値以上である場合、第1パターンと第2パターンとにおいて画素の並び方が似ていないと判定する。
【0044】
或いは、位置調整部100は、第1パターンと第2パターンの相関値を算出する。ここで相関値を導出する関数としては、既にある任意の導出関数を利用することができる。例えば、相関値が-1から+1までの値をとり、0(ゼロ)に近い値である程、相関がない、つまり、似ていないことを示すものであるとする。この場合、位置調整部100は、相関値の絶対値が正の閾値(例えば、0.8)以上である場合、第1パターンと第2パターンとにおいて画素の並び方が互いに似ていると判定する。一方、位置調整部100は、相関値が閾値未満である場合、第1パターンと第2パターンとにおいて画素の並び方が似ていないと判定する。
【0045】
位置調整部100は、第1パターンと画素の並び方が似ていると判定した第2パターンに対応するコーナー点CPを、対象画像TGにおける位置合わせに用いるコーナー点CPとして選択する。
【0046】
すなわち、位置調整部100は、第1パターンと、第2パターンとを比較する。第1パターンは印刷元画像における特定のコーナー点CPを含む領域における画素の並び方である。第2パターンは対象画像TGから検出したコーナー点CPを含む領域における画素の並び方である。位置調整部100は、このような比較を行うことにより、対象画像TGにおける位置合わせ用のコーナー点CPを選択する。
【0047】
<画像補正部101が補正画像を生成する方法(その1)>
ここで、画像補正部101が補正画像を生成する方法(その1)について、
図4を用いて説明する。
図4は、実施形態の画像補正部101が行う処理を説明するための図である。
【0048】
本方法(その1)では、線形濃度変換を用いて、補正画像HGを生成する。ここでの線形濃度変換は、対象画像TGにおける明るさが正規化されるように、対象画像TGにおける各画素の画素値を変換するものである。
【0049】
画像を用いて印刷物の個体識別を行う方法では、画像を撮像する際の撮像条件、例えば、照明条件や、カメラなどの撮影機材の設定により、画像において印刷物が明るく写ったり、暗く写ったりする場合がある。印刷物が明るく写っている対象画像TGと、暗く写っている対象画像TGとでは、個体識別を行った結果が異なる可能性がある。このように、画像における明るさが、画像ごとに様々であると個体識別の精度が低下する要因となり得る。
【0050】
この対策として、本方法(その1)では、線形濃度変換を用いて画像の明るさを正規化する。つまり、画像補正部101は、対象画像TGにおける、各ピクセル(各画素)の輝度値に対して、線形濃度変換を行うことにより、補正画像HGを生成する。
【0051】
以下では、対象画像TGがグレースケール画像である、つまり、画素値が0~255の値をとり、画素値0が最も暗い黒色を示し、画素値255が最も明るい白色を示すものである場合を例に説明する。しかしながらこれに限定されることはなく、カラー画像にも適用することができる。例えば、カラー画像をグレースケール画像に変換することにより同様の手法を適用することが可能である。もしくは、カラー画像のRGB(Red、Green、Blue)のそれぞれのチャネルに対して、同様の手法を適用することが可能である。
【0052】
画像補正部101は、対象画像TGにおいて、画素値の最小値が0、最大値が255になるように変換する。具体的に、画像補正部101は、
図3に示すように、(1)式を用いて、対象画像TGにおける画素値を変換する。対象画像TGの座標(x、y)にある画素の画素値I(x、y)を、画素値I’(x、y)に変換する。
【0053】
【0054】
本方法(その1)では、(1)式における変数Iminは対象画像TGにおける画素値の最小値である。また、変数Imaxは画素値の最大値である。
【0055】
<画像補正部101が補正画像を生成する方法(その1変形例1)>
ここで、画像補正部101が補正画像を生成する方法(その1変形例1)について説明する。本変形例では、印刷元画像の画素値を用いて、(1)式における変数Imin、及び変数Imaxを決定する。
【0056】
例えば、印刷元画像における画素値が最小値をとるピクセルに対応する対象画像TGの画素値を変数Iminとする。また、印刷元画像における画素値が最大値をとるピクセルに対応する対象画像TGの画素値を変数Imaxとする。すなわち、画像補正部101は、線形濃度変換を行うための変数を、印刷元画像における各ピクセル(各画素)の輝度値に基づいて決定する。
【0057】
或いは、印刷元画像における画素値が最小となる領域を特定し、特定した領域における対象画像TGの画素値の平均を変数Iminとしてもよい。また、印刷元画像における画素値が最大となる領域を特定し、特定した領域における対象画像TGの画素値の平均を変数Imaxとしてもよい。例えば、バーコードが印刷された印刷物に係る対象画像TGであれば、バーコードが印刷された黒色の領域が、画素値が最小となる領域である。このようなバーコードが印刷された黒色の領域にある画素群における画素値の平均値を変数Iminとする。また、バーコードが印刷されていない白色の領域が、画素値が最大となる領域である。このようなバーコードが印刷されていない白色の領域にある画素群における画素値の平均値を変数Imaxとする。
【0058】
<画像補正部101が補正画像を生成する方法(その1変形例2)>
ここで、画像補正部101が補正画像を生成する方法(その1変形例2)について説明する。対象画像TGを撮像する場合、ボケや位置合わせ誤差などの影響により、画像において画素値が変化する境界付近の画素値が不正確となる可能性がある。
【0059】
このため、本変形例では、画素値が変化する境界の近傍、例えば、境界にある画素からn[ピクセル]以内(nは任意の自然数)にある画素の画素値を、変数Imin及び変数Imaxを算出する対象から除外する。これにより、対象画像TGにおいて、撮像時に混入されたノイズに起因して、境界付近において、たまたま、画素値が最大または最小となる画素が発生したような場合に、その画素を、変数Imin及び変数Imaxを算出する対象から除外することができ、撮像時におけるノイズの影響を抑制することが可能となる。この場合において、境界となるピクセルの判定は、対象画像TGに対して行ってもよいし、印刷元画像に対して行ってもよい。印刷元画像に対して境界となるピクセルを判定する場合、印刷元画像で境界ピクセルを判定し、判定された境界ピクセルの情報を用いて、対象画像TGの画素値から、変数Imin及び変数Imaxを算出する。対象画像TGに対して境界となるピクセルを判定する場合、判定した境界となるピクセルの情報を用いて、対象画像TGの画素値から、変数Imin及び変数Imaxを算出する。
【0060】
<画像補正部101が補正画像を生成する方法(その2)>
ここで、画像補正部101が補正画像を生成する方法(その2)について、
図5を用いて説明する。
図5は、実施形態の画像補正部101が行う処理を説明するための図である。
【0061】
本方法(その2)では、適応的ヒストグラム均等化を用いて画像のコントラストを強調する。すなわち、画像補正部101は、対象画像TGに対して、適応的ヒストグラム均等化を行うことにより、補正画像HG#を生成する。
【0062】
適応的ヒストグラム均等化の手法を用いることにより、対象画像TGにおける小領域ごとにコントラストを強調させることができる。したがって、対象画像TGが、印刷時のインキの濃淡などが強調された画像に変換でき、変換後の画像(補正画像HG#)を用いて個体を識別することにより、識別の精度を向上させることが可能となる。
【0063】
適応的ヒストグラム均等化を行う方法としては、既にある任意の方法を利用することができる。本実施形態では、適応的ヒストグラム均等化を行う際に、少なくとも、変数GS、及び変数CLが指定できればよい。変数GSは、タイル(小領域)の大きさ(Grid size)、つまりグリッドサイズを示す変数である。変数CLはヒストグラム均等化において同じ画素値となる画素数の上限(Clip limit)を示す変数である。
【0064】
この図の例では、補正画像HG#1として、変数GSを(4[ピクセル]×4[ピクセル])とし、変数CLを(2.0)とした場合の例が示されている。また、補正画像HG#2として、変数GSを(32[ピクセル]×32[ピクセル])とし、変数CLを(2.0)とした場合の例が示されている。また、補正画像HG#3として、変数GSを(4[ピクセル]×4[ピクセル])とし、変数CLを(8.0)とした場合の例が示されている。
【0065】
適応的ヒストグラム均等化を行う場合における、変数GS及び変数CLは、印刷物の種別などに応じて任意に決定されてよい。例えば、バーコードが印刷された印刷物に係る対象画像TGである場合、変数GSを(16[ピクセル]×16[ピクセル])とし、変数CLを(4.0)とした場合に、識別の精度が向上することが確認されている。
【0066】
また、適応的ヒストグラム均等化を行う場合における、変数CLは、対象画像TGの何れの小領域においても一律の値を用いてもよいし、小領域ごとに異なる値を用いてもよい。これらの変数(変数GS及び変数CL)は印刷物の種別などに応じて任意に決定されてよい。また、異なる変数の組合せ(変数GS及び変数CLの組合せ)を用いて複数の補正画像HG#を生成し、複数の補正画像HG#のそれぞれから抽出した小領域を合成した合成画像を、個体識別に用いる補正画像としてもよい。
【0067】
<画像補正部101が補正画像を生成する方法(その2変形例)>
ここで、画像補正部101が補正画像を生成する方法(その2変形例)について説明する。本変形例では、印刷元画像の画素値を用いて、適応的ヒストグラム均等化を行う場合における、変数を決定する。すなわち、画像補正部101は、適応的ヒストグラム均等化を行うための変数を、印刷元画像に基づいて決定する。
【0068】
例えば、印刷元画像における印刷物の小領域ごとのデザインに応じて、コントラストを強調する度合を決定する。例えば、印刷元画像において、インキがベタ塗されている領域には明るさの対比が大きくなるように強めのコントラスト強調をかける。ある程度広い範囲にインキがベタ塗されているような領域では、領域が単一色で塗りつぶされており、微妙な輝度の違いなどによりデザインが表現されていない。このため、コントラストを強調させても、デザインが損なわれてしまうことがなく、印刷ムラなどの個体ごとのばらつきのみを強調することができる。一方、印刷元画像において、細かい模様が印刷されている領域には弱めにコントラスト強調をかける。これにより、細かい模様などで表現されたデザインの特徴が失われてしまうことがないようにする。
【0069】
また、印刷元画像において、ベタ塗りが広い領域では、小領域のサイズが大きくなるように、変数GS(グリッドサイズ)を設定するようにしてもよい。一方、印刷元画像において、細かい模様が印刷された領域では、小領域のサイズが小さくなるように、変数GSを設定するようにしてもよい。
【0070】
このように、適応的ヒストグラム均等化を行う場合において、小領域ごとに、変数CLを異なる値に設定する場合、a)画素ごとに違う変数を用いて適応的ヒストグラム均等化の処理を実行してもよいし、b)異なる変数の組合せにて適応的ヒストグラム均等化の処理を実行することにより複数の補正画像HG#を生成し、生成した複数の補正画像HG#を用いて、画素毎に、複数の補正画像HG#のそれぞれの画素の何れの画素値を用いるかを選択し、選択したそれぞれの画素値を1つの画像に統合させることにより、個体識別に用いる補正画像を生成するようにしてもよい。
【0071】
<特徴マップ生成部102が特徴マップTMを生成する方法>
ここで、特徴マップ生成部102が特徴マップTMを生成する方法について、
図6を用いて説明する。
図6は、実施形態の特徴マップ生成部102及び特徴ベクトル算出部103が行う処理を説明するための図である。
【0072】
図6の左側には、特徴マップ生成部102が行う処理が模式的に示されている。この図の例に示すように、特徴マップ生成部102は、補正画像HG(HG#)を入力として、CNNを用いた畳み込みを行うことにより中間特徴マップMTMを生成する。補正画像HG(HG#)から中間特徴マップMTMを生成するまでの間には、複数の畳み込みが行われ、それぞれの畳み込みの結果として複数の二次元マップが生成されてよい。各二次元マップにおける二次元座標の値は、入力となる補正画像HG(HG#)の二次元座標の値(画素値)と対応関係があるように、畳み込みが行われる。
【0073】
また、特徴マップ生成部102は、中間特徴マップMTMに、平均プーリング(Average Pooling)(
図6ではAvgPoolと記載)を行うことにより特徴マップTMを生成する。特徴マップ生成部102は、中間特徴マップMTMを複数の領域に分割し、それぞれの領域にある二次元座標の値の平均値を、特徴マップTMにおける二次元座標の値とすることにより平均プーリングを行う。これにより、中間特徴マップMTMよりも解像度が低い特徴マップTMが生成される。すなわち、特徴マップ生成部102は、CNNを用いて中間特徴マップMTMを生成し、生成した中間特徴マップMTMに対して、平均プーリングを行い、中間特徴マップMTMよりも解像度が低い特徴マップTMを生成する。
【0074】
ここで、入力となる補正画像HG(HG#)の情報量(総次元数)は、例えば、(W×H×C)と表現することができる。ここでの変数Wは画像の幅を示す。変数Hは画像の高さを示す。Cはチャネル数を示す。補正画像HG(HG#)がRGB画像である場合、変数C(チャネル数)は3である。補正画像HG(HG#)の解像度は(W×H)である。
【0075】
この場合において、特徴マップ生成部102は、出力となる特徴マップの情報量が(W’×H’×C’)となるように、特徴マップTMを生成する。ここで、(変数W’<変数W)の関係である。また、(変数H’<変数H)の関係である。また、変数C’は変数Cと同じ値であってもよいし、異なる値であってもよい。つまり、特徴マップ生成部102は、入力となる補正画像HG(HG#)よりも、解像度が低い特徴マップTMを生成する。特徴マップTMは、C’次元の特徴ベクトルが、高さ方向と幅方向に対応する縦横の二次元に配置された、C’チャネルの画像(マップ)ということができる。
【0076】
特徴マップTMにおいて、補正画像HG(HG#)よりも、どの程度、解像度を小さくするかは、任意に決定されてよい。例えば、特徴マップTMにおいて、印刷物に固有の特徴が抽出されており、かつ、印刷物を撮像したことに起因する特徴や傾向が反映されていないような程度の分解能が設定されることが望ましい。これにより、印刷物に固有の特徴に基づいて、撮像ノイズに依らずに、個体識別を行うことが可能となる。したがって、識別の精度を向上させることができる。
【0077】
また、本実施形態では、平均プーリングを用いて、1チャネルあたりの特徴マップTMの解像度が(W’×H’)となるようにプーリングを行う。変数W’は2以上である。H’は2以上である。すなわち、W’×H’=2×2以上である。例えば、W’×H’=4×4との設定は、識別の精度が高い設定の1つである。
【0078】
<特徴ベクトル算出部103が算出特徴ベクトルSTVを算出する方法>
ここで、特徴ベクトル算出部103が算出特徴ベクトルSTVを算出する方法について、
図6を用いて説明する。
【0079】
図6の右側には、特徴ベクトル算出部103が行う処理が模式的に示されている。この図の例に示すように、特徴ベクトル算出部103は、特徴マップTMを入力として、特徴マップTMを平坦化(Flatten)して全結合層で扱える形式に変換した後に、全結合をすることにより、算出特徴ベクトルSTVを算出する。
【0080】
特徴マップTMの総次元数は、特徴マップTMの解像度(W’×H’)とチャネル数(C’)により特定される、それぞれの次元数の総和である。つまり、特徴マップTMの総次元数は、(W’×H’×C’)である。
【0081】
一方、算出特徴ベクトルSTVの次元数をDとすると、算出特徴ベクトルSTVは(1×1×D)と表現することができる。算出特徴ベクトルSTVは、二次元座標に値がマッピングされていないことから、特徴マップTMや、入力として補正画像HG(HG#)における二次元座標と対応関係を持たない。
【0082】
特徴ベクトル算出部103は、特徴マップTMの総次元数よりも小さい次元数を持つ算出特徴ベクトルSTVを算出する。具体的には、特徴ベクトル算出部103は、次元数D<(W’×H’×C’)となるように、算出特徴ベクトルSTVを算出する。すなわち、特徴ベクトル算出部103は、特徴マップTMに対して全結合を行い、特徴マップTMの解像度(W’×H’)とチャネル数(C’)特定される総次元数(W’×H’×C’)よりも小さい次元数Dを持つ算出特徴ベクトルSTVを算出する。
【0083】
ここで、一般に、特徴マップから特徴ベクトルを算出する手法として、GAP(Global Average Pooling)が用いられているものがある。GAPを用いることにより、特徴マップTMを複数の領域に分割することなく、特徴マップTM全体の各二次元座標の値の平均値を、特徴ベクトルの1要素とすることができる。
【0084】
これに対し、本実施形態では、GAPではなく、平均プーリング(Average Pooling)、及び平坦化(Flatten)を用いた全結合により、算出特徴ベクトルSTVを算出する。これは、入力とした補正画像HG(HG#)における位置に対応した特徴を残すためである。
【0085】
仮にGAPを用いて特徴ベクトルを算出した場合、GAPにより算出される特徴量には二次元座標に対応する位置情報が失われてしまう。このため、例えば、GAPにより算出された重要な特徴が、入力画像(本実施形態では補正画像HG(HG#))の左上にある特徴であるのか、右下にある特徴であるのかを、区別することができない。
【0086】
これに対し、特徴マップ生成部102、及び特徴ベクトル算出部103は、平均プーリング(Average Pooling)、及び平坦化(Flatten)を用いた全結合を行うことにより、ある程度、入力画像(本実施形態では補正画像HG(HG#))の位置情報を残して、位置情報と特徴とが対応づけられたものを、最終的な特徴ベクトルに反映させることができる。このため、補正画像HG(HG#)の何処に如何なる特徴があるのかが反映された算出特徴ベクトルSTVを算出することができる。したがって、このようにして算出した算出特徴ベクトルSTVを用いて、画像における印刷物のどの領域にどの様な特徴が示されているかに応じた個体識別を行うことが可能となり、識別の精度を向上させることができる。
【0087】
<類似度算出部104が類似度を算出する方法>
ここで、類似度算出部104が類似度を算出する方法について説明する。
【0088】
類似度算出部104は、例えば、特徴ベクトル空間におけるベクトル間距離を相違度として算出する。ここでのベクトル間距離は、算出特徴ベクトルSTVの位置から、登録特徴ベクトルTTVの位置までの距離である。また、ここでの相違度は、両ベクトルが相違する度合を示す指標であり、相違度が大きい程、ベクトル間の距離が大きく、両ベクトルは相違する、つまり類似していないと判定することができる。一方、相違度が小さい程、ベクトル間の距離が小さく、両ベクトルは相違しない、つまり類似していると判定することができる。
【0089】
例えば、類似度算出部104は、(2)式、又は(3)式の何れかを用いて、相違度を算出する。
【0090】
【0091】
或いは、類似度算出部104は、コサイン類似度を、類似度として算出するようにしてもよい。すなわち、類似度算出部104は、算出特徴ベクトルSTVと、登録特徴ベクトルTTVとのコサイン類似度を計算し、算出したコサイン類似度を、類似度とする。コサイン類似度は、値が大きい程、両ベクトルが類似していると判定することができる。一方、値が小さい程、両ベクトルが類似していないと判定することができる。
【0092】
例えば、類似度算出部104は、(4)式を用いて、コサイン類似度を算出する。
【0093】
【0094】
<CNNに画像を学習させる方法>
ここで、特徴マップ生成部102が用いるCNNに画像を学習させる方法について、
図7を用いて説明する。
図7は、実施形態の特徴マップ生成部102におけるCNNに学習させる処理を説明するための図である。
【0095】
本実施形態において、CNNに学習させる画像を仮想的に水増しして、学習に用いる画像の数を増やすデータ拡張を行うようにしてもよい。一般に、学習させる画像の数が多い程、学習済のCNN(学習済モデル)が画像から抽出する特徴の精度を向上させることが可能となる。
【0096】
データ拡張の手法として、例えば、ランダムイレイシング(Random Erasing)を適用することができる。
図7の例に示すように、ノイズ画像NG(ノイズ画像NG1~NG3)を用いて、1つの学習用画像KGから、複数の学習用画像KGが生成される。ノイズ画像NGとして、輝度値がランダムな画像(ノイズ画像NG1)、及び/又は、一定の輝度値である画像(ノイズ画像NG2、NG3)などを用いることができる。この図の例において、ノイズ画像NG2は輝度値が255等である真っ白な画像である。ノイズ画像NG0は輝度値が0(ゼロ)等である真っ黒な画像である。
【0097】
学習用画像KGは、学習に用いる画像であり、個体識別の対象とする印刷物(例えば、印刷されたバーコード)が撮像された不特定の画像である。
【0098】
例えば、学習用画像KGにおける一部領域を任意に選択し、選択した領域をノイズ画像NGに置換えることにより、複数の学習用画像KGを生成することができる。学習用画像KGから選択する一部領域における位置や、選択する一部領域の大きさは、任意(ランダム)に決定される。これにより、1つの学習用画像KGから、多数の互いに異なる学習用画像KGを生成することができる。
【0099】
この図の例では、1つの学習用画像KGから、ノイズ画像NG1を用いて、2つの学習用画像KG#1、及び学習用画像KG#2が生成される例が示されている。また、同じ学習用画像KGから、ノイズ画像NG2を用いて、2つの学習用画像KG#3、及び学習用画像KG#4が生成される例が示されている。また、同じ学習用画像KGから、ノイズ画像NG3を用いて、2つの学習用画像KG#5、及び学習用画像KG#6が生成される例が示されている。これにより、1つの学習用画像KGから、学習用画像KG、及び学習用画像KG#1~KG#6の7つの画像を生成することができる。
【0100】
すなわち、本実施形態のCNN(畳み込みニューラルネットワーク)は、学習データセットにおける学習用画像KGから任意に選択した一部領域を、ノイズ画像NGに置き換えることにより、1つの学習用画像KGから生成した、複数の画像(学習用画像KG#1~KG#6)を用いた学習が行われた学習済モデルである。
【0101】
撮像時における撮像条件、或いは反射や遮蔽などにより、印刷物におけるカスレやかけ等の傷の状態が、登録時における印刷物の状態と一部異なるような場合であっても、ランダムイレイシングにより、1つの学習用画像KGから生成した多数の互いに異なる学習用画像KGを学習させることにより、識別の精度を低下し難くすることが可能となる。印刷物におけるカスレやかけ等の傷がない場合であっても、1つの学習用画像KGから生成した多数の互いに異なる学習用画像KGを学習させることにより、識別の精度が向上することが確認されている。
【0102】
<CNNに画像を学習させる方法(変形例)>
学習用画像KGにおいて、ノイズ画像NGに置換える一部領域を、印刷元画像の座標上で設定するようにしてもよい。例えば、印刷物のデザインに応じて、学習用画像KGにおいて選択する位置や大きさを決定することができる。例えば、印刷元画像においてベタ塗りされている領域では、個体ごとの特徴が現れやすく、その領域が登録時の印刷物の状態と異なると、識別の精度が低下しやすい。このような観点から、印刷元画像においてベタ塗りの面積が大きいほど、そのベタ塗りの領域がランダムイレイシングによりノイズ画像NGに置き換えられる確率を高くしてもよい。
【0103】
<個体識別装置1が行う処理の流れ>
ここで、個体識別装置1が行う処理の流れについて、
図8を用いて説明する。
図8は、実施形態の個体識別装置1が行う処理の流れを示すフローチャートである。
【0104】
まず、個体識別装置1は、位置調整部100により対象画像TGにおける位置を調整する位置調整を行う(ステップS100)。次に、個体識別装置1は、画像補正部101により対象画像TGの輝度値を補正した補正画像HG(HG#)を生成する(ステップS101)。次に、個体識別装置1は、特徴マップ生成部102により補正画像HG(HG#)から特徴マップTMを生成する(ステップS102)。次に、個体識別装置1は、特徴ベクトル算出部103により特徴マップTMから算出特徴ベクトルSTVを算出する(ステップS103)。そして、個体識別装置1は、類似度算出部104により、算出特徴ベクトルSTVと、あらかじめ登録された登録特徴ベクトルTTVとの類似度を算出する(ステップS104)。
【0105】
なお、個体識別装置1は、ステップS100に示す位置調整を省略してもよい。この場合、個体識別装置1の画像補正部101は、位置調整が行われていない対象画像TGから、補正画像HG又は補正画像HG#を生成する。
【0106】
また、個体識別装置1の画像補正部101は、線形濃度変換による補正画像HG、又は、適応的ヒストグラム均等化による補正画像HG#の少なくともいずれか一方を、補正画像として生成すればよい。画像補正部101が、すくなくとも対象画像TGの輝度値(明るさの正規化、及び/又はコントラストの強調)が補正された補正画像を生成することにより、対象画像TGにおける印刷物のそれぞれの特徴を識別し易くすることができ、識別の精度を向上させることができる。
【0107】
また、個体識別装置1は、ステップS100、及びS101に示す処理(位置調整、及び輝度値の補正)を省略してもよい。この場合、個体識別装置1の特徴マップ生成部102は、位置調整が行われていない対象画像TGから、特徴マップTMを生成する。平均プーリング(Average Pooling)を行うことにより、GAPによるプーリングと比較して、対象画像TGから抽出した特徴をその二次元位置に対応付けておくことができ、対象画像TGにおける位置とその位置にある特徴の関係に基づいて、個体を識別することができ、識別の精度を向上させることができる。
【0108】
ここで、本実施形態の効果について説明する。以下の条件により個体識別を行ったところ、従来の手法(非特許文献1に記載の手法)で特徴ベクトルを抽出し、コサイン類似度で個体識別を行った場合、等価誤差率(EER)が2.21%であった。ここでの等価誤差率(EER)は、類似度(マッチングスコア、本実施形態ではコサイン類似度)の閾値を変化させた際に、誤って、本人ペアを異なる個体として拒否する割合(FRR)と、誤って、他人ペアを同じ個体として受け入れる割合(FAR)とが、一致するときの誤差率である。ここでの本人ペアとは、同一個体による、対象画像TGと、登録特徴ベクトルに対応する個体(印刷物)の画像からなるペアである。他人ペアとは、異なる個体による、対象画像TGと、登録特徴ベクトルに対応する個体(印刷物)の画像からなるペアである。
【0109】
(従来の手法による識別条件とその結果)
個体数 :500個体
画像枚数:20枚/1個体
評価指標:等価誤差率(EER):2.21%
【0110】
これに対し、上記と同じ条件により、本実施形態に係る個体識別を行ったところ、等価誤差率(EER)が0.09%であった。このように、本実施形態に係る個体識別において識別の精度が向上することが確認されている。
【0111】
(本実施形態に係る識別条件とその結果)
個体数 :500個体
画像枚数:20枚/1個体
評価指標:等価誤差率(EER):0.09%
【0112】
以上説明したように、実施形態の個体識別装置1は、対象印刷物が撮像された対象画像TGから、対象印刷物の個体識別を行う個体識別装置である。個体識別装置1は画像補正部101と、特徴マップ生成部102と、特徴ベクトル算出部103と、類似度算出部104とを備える。画像補正部101は、対象画像TGにおける輝度値の補正を行うことにより補正画像HG(HG#)を生成する特徴マップ生成部102は、特徴マップTMを生成する。特徴マップTMは、補正画像HG(HG#)に対応する二次元座標に、補正画像HG(HG#)の特徴が対応づけられた画像(マップ)である。特徴ベクトル算出部103は、算出特徴ベクトルSTVを算出する。算出特徴ベクトルSTVは、補正画像HG(HG#)における特徴がベクトルで示された特徴ベクトルである。類似度算出部104は、類似度を算出する。類似度は、算出特徴ベクトルSTVと、印刷元画像記憶部106(データベース)にあらかじめ登録されている登録特徴ベクトルTTVとが、類似する度合である。
【0113】
これにより、実施形態の個体識別装置1では、対象画像TGにおける輝度値を補正した補正画像HG(HG#)を用いて、補正画像HG(HG#)の特徴ベクトルに基づく類似度を算出することができる。輝度値を補正することにより、識別対象である印刷物の特徴を強調することができる。したがって印刷物における個体識別において識別の精度を向上させることができる。
【0114】
また、実施形態の個体識別装置1では、画像補正部101は、対象画像TGにおける各ピクセルの輝度値に対して、線形濃度変換を行うことにより、補正画像HGを生成する。これにより、実施形態の個体識別装置1では、対象画像TGにおける明るさを正規化することができる。したがって、上述した効果と同様の効果を奏する。
【0115】
また、実施形態の個体識別装置1では、画像補正部101は、線形濃度変換を行うための変数(例えば、変数Imax、及び変数Imin)を、印刷元画像(対象印刷物の原稿)における各ピクセルの輝度値に基づいて決定する。これにより、実施形態の個体識別装置1では、対象画像TGにおける撮像時の影響、例えば、撮像時のボケや位置合わせ誤差などに起因して輝度値が最大となる画素、及び/又は輝度値が最小となる画素が生じることの影響を排除することができる。したがって、上述した効果と同様の効果を奏する。
【0116】
また、実施形態の個体識別装置1では、画像補正部101は、対象画像TGに対して、適応的ヒストグラム均等化を行うことにより、補正画像HG#を生成する。これにより、実施形態の個体識別装置1では、対象画像TGにおける小領域のそれぞれにおいてコントラストが強調された補正画像HG#を生成することができる。したがって、上述した効果と同様の効果を奏する。
【0117】
また、実施形態の個体識別装置1では、画像補正部101は、適応的ヒストグラム均等化を行うための変数(例えば、変数GS、及び変数CL)を、印刷元画像(対象印刷物の原稿)に基づいて決定する。これにより、実施形態の個体識別装置1では、対象画像TGにおける撮像時の影響を排除することができる。したがって、上述した効果と同様の効果を奏する。
【0118】
また、実施形態の個体識別装置1では、特徴マップ生成部102は、畳み込みニューラルネットワーク(CNN)を用いて中間特徴マップMTMを生成する。特徴マップ生成部102は、生成した中間特徴マップMTMに対して、平均プーリング(Average Pooling)を行い、中間特徴マップMTMよりも解像度が低い特徴マップTMを生成する。これにより、実施形態の個体識別装置1では、解像度を下げて、情報量を削減して処理を行い易くすることができる。さらに、平均プーリング(Average Pooling)を行うことにより、GAPによるプーリングと比較して、補正画像HG(HG#)から抽出した特徴を、補正画像HG(HG#)の二次元位置に対応付けておくことができる。
【0119】
また、実施形態の個体識別装置1では、特徴ベクトル算出部103は、特徴マップTMに対して全結合を行い、特徴マップTMの総次元数(W’×H’×C’)よりも小さい次元数Dを持つ算出特徴ベクトルSTVを算出する。これにより、実施形態の個体識別装置1では、情報量を削減して処理を行い易くすることができる。さらに、印刷物に固有の特徴を抽出しつつ、撮像に起因する特徴が抽出されないようにすることができる。
【0120】
また、実施形態の個体識別装置1では、類似度算出部104は、算出特徴ベクトルSTVと、登録特徴ベクトルTTVとのコサイン類似度を算出する。類似度算出部104は、算出したコサイン類似度を、対象画像TGと、登録特徴ベクトルTTVに対応する画像(識別対象とする印刷物の画像)との類似度とする。これにより、実施形態の個体識別装置1では、コサイン類似度という定量的な指標を用いて、個体識別を行うことができる。
【0121】
また、実施形態の個体識別装置1では、CNN(畳み込みニューラルネットワーク)は、学習用画像KGから生成した複数の画像を用いた学習が行われた学習済モデルである。学習データセットにおける学習用画像KGから任意に選択した一部領域をノイズ画像NGに置き換えることにより、1つの学習用画像KGから複数の画像が生成される。これにより、実施形態の個体識別装置1では、学習用画像KGを、仮想的に水増しすることができ、個体識別を正しく行うことができる特徴を抽出するようにCNNを学習させることができる。
【0122】
また、実施形態の個体識別装置1では、位置調整部100を更に備える。位置調整部100は、対象画像TGにおける位置調整を行う。位置調整部100は、対象画像からコーナー点群を検出する。位置調整部100は、検出したコーナー点群の中から、あらかじめ設定された範囲に含まれるコーナー点CPを位置合わせ用のコーナー点CPとして選択する。位置調整部100は、選択した位置合わせ用のコーナー点CPが、あらかじめ設定された位置になるように、対象画像TGにおける位置座標を変換する。これにより、実施形態の個体識別装置1では、対象画像TGの位置を調整することができる。したがって、撮像時における、撮像位置や撮像方向による印刷物の歪み、画角に対する画像に写った印刷物の位置のばらつき、画角に対する画像に写った印刷物の大きさのばらつきなどの影響を排除することができる。
【0123】
また、実施形態の個体識別装置1では、位置調整部100は、第1パターンと、第2パターンとを比較する。第1パターンは印刷元画像(対象印刷物の原稿)における特定のコーナー点CPを含む領域(あらかじめ設定された小領域)における画素の並び方である。第2パターンは対象画像TGから検出したコーナー点CPを含む領域における画素の並び方である。位置調整部100は、第1パターンと、第2パターンとのパターンマッチングを行い、第2パターンに対応するコーナー点群の中から、最もマッチングしたコーナー点を、位置合わせ用のコーナー点として選択する。位置調整部100は、選択した位置合わせ用のコーナー点CPが、あらかじめ設定された位置になるように、対象画像TGにおける位置座標を変換する。位置調整部100は、このような比較を行うことにより、対象画像TGにおける位置合わせ用のコーナー点CPを選択する。これにより、実施形態の個体識別装置1では、印刷元画像を用いて、位置合わせ用のコーナー点CPを選択することができる。
【0124】
上述した実施形態における個体識別装置1の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
【符号の説明】
【0125】
1…個体識別装置
100…位置調整部
101…画像補正部
102…特徴マップ生成部
103…特徴ベクトル算出部
104…類似度算出部