(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025001908
(43)【公開日】2025-01-09
(54)【発明の名称】鮮明画像取得システム、鮮明画像取得方法及びプログラム
(51)【国際特許分類】
H04N 23/60 20230101AFI20241226BHJP
H04N 23/68 20230101ALI20241226BHJP
H04N 23/55 20230101ALI20241226BHJP
G03B 15/00 20210101ALI20241226BHJP
G03B 5/00 20210101ALI20241226BHJP
G03B 17/17 20210101ALI20241226BHJP
G03B 19/12 20210101ALI20241226BHJP
G06T 7/00 20170101ALI20241226BHJP
G06V 10/40 20220101ALI20241226BHJP
【FI】
H04N23/60 100
H04N23/68
H04N23/55
G03B15/00 T
G03B5/00 J
G03B17/17
G03B19/12
G06T7/00 300F
G06V10/40
【審査請求】有
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023101674
(22)【出願日】2023-06-21
(71)【出願人】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(71)【出願人】
【識別番号】523033279
【氏名又は名称】パーソルクロステクノロジー株式会社
(74)【代理人】
【識別番号】110002789
【氏名又は名称】弁理士法人IPX
(72)【発明者】
【氏名】山川 雄司
(72)【発明者】
【氏名】米津 真之介
【テーマコード(参考)】
2H054
2H101
2K005
5C122
5L096
【Fターム(参考)】
2H054BB02
2H101FF00
2K005AA06
5C122DA04
5C122DA12
5C122EA41
5C122FA08
5C122FB11
5C122FH03
5C122FH11
5C122FH12
5C122FH23
5C122HA13
5C122HA35
5C122HA82
5C122HA88
5C122HB01
5C122HB05
5C122HB10
5L096CA04
5L096FA06
5L096FA23
5L096FA60
5L096FA62
5L096FA69
5L096JA11
(57)【要約】
【課題】振動するオブジェクトに対し鮮明な画像を取得できる鮮明画像取得システムを提供する。
【解決手段】本発明の一態様によれば、鮮明画像取得システムが提供される。この鮮明画像取得システムは、プロセッサを備える。プロセッサは、受付ステップと、処理ステップと、を実行するように構成される。受付ステップでは、振動するオブジェクトを連続的に撮影した複数の画像の入力を受け付ける。処理ステップでは、複数の画像からモーションブラーが予め定めた基準よりも小さい鮮明画像を抽出する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
鮮明画像取得システムであって、
プロセッサを備え、
前記プロセッサは、受付ステップと、処理ステップと、を実行するように構成され、
前記受付ステップでは、振動するオブジェクトを連続的に撮影した複数の画像の入力を受け付け、
前記処理ステップでは、前記複数の画像からモーションブラーが予め定めた基準よりも小さい鮮明画像を抽出する、鮮明画像取得システム。
【請求項2】
請求項1に記載の鮮明画像取得システムにおいて、
前記処理ステップでは、前記複数の画像における前記オブジェクトの中心点の移動量を算出し、前記移動量が小さい画像を前記鮮明画像として抽出する、鮮明画像取得システム。
【請求項3】
請求項2に記載の鮮明画像取得システムにおいて、
前記処理ステップでは、前記複数の画像における前記オブジェクトの輪郭をそれぞれ抽出し、前記輪郭で画定される図形の重心を前記中心点とする、鮮明画像取得システム。
【請求項4】
請求項1に記載の鮮明画像取得システムにおいて、
前記処理ステップでは、前記複数の画像の離散フーリエ変換により振幅スペクトルを算出し、前記振幅スペクトルの分布に基づいて前記鮮明画像を抽出する、鮮明画像取得システム。
【請求項5】
請求項4に記載の鮮明画像取得システムにおいて、
前記処理ステップでは、前記振幅スペクトルにおける振幅が一定値未満の点の数が閾値以上の画像を前記鮮明画像として抽出する、鮮明画像取得システム。
【請求項6】
請求項1に記載の鮮明画像取得システムにおいて、
撮影装置をさらに備え、
前記撮影装置は、前記複数の画像を取得するカメラを有し、
前記プロセッサは、調整ステップをさらに実行するように構成され、
前記調整ステップでは、前記複数の画像のうち少なくとも1つの画像における前記オブジェクトの位置を算出し、前記オブジェクトの位置に基づいて前記オブジェクトからの反射光の前記カメラへの入射角を調整する、鮮明画像取得システム。
【請求項7】
請求項6に記載の鮮明画像取得システムにおいて、
前記撮影装置は、前記反射光を前記カメラに向けて反射させる反射面を有する反射部材をさらに有し、
前記調整ステップでは、前記オブジェクトの中心点の位置に基づいて前記反射面の向きを調整する、鮮明画像取得システム。
【請求項8】
請求項7に記載の鮮明画像取得システムにおいて、
前記調整ステップでは、前記カメラの画角の中心に前記中心点が近づくように前記反射面の向きを調整する、鮮明画像取得システム。
【請求項9】
鮮明画像取得方法であって、
請求項1から請求項8のいずれか1項に記載の鮮明画像取得システムの各ステップを備える、鮮明画像取得方法。
【請求項10】
プログラムであって、
コンピュータを、請求項1から請求項8のいずれか1項に記載の鮮明画像取得システムとして機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、鮮明画像取得システム、鮮明画像取得方法及びプログラムに関する。
【背景技術】
【0002】
製造ラインにおいて、下記の文献に開示されるように、製品(ワーク)を撮影した画像を用いて、製品の外観検査を行う方法が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
製造ライン上の製品には振動が存在しうる。そのため、振動によって製品の鮮明な撮影画像が得られないケースでは、画像処理による外観検査が難しい。
【0005】
本発明では上記事情に鑑み、振動するオブジェクトに対し鮮明な画像を取得できる鮮明画像取得システムを提供することとした。
【課題を解決するための手段】
【0006】
本発明の一態様によれば、鮮明画像取得システムが提供される。この鮮明画像取得システムは、プロセッサを備える。プロセッサは、受付ステップと、処理ステップと、を実行するように構成される。受付ステップでは、振動するオブジェクトを連続的に撮影した複数の画像の入力を受け付ける。処理ステップでは、複数の画像からモーションブラーが予め定めた基準よりも小さい鮮明画像を抽出する。
【0007】
このような態様によれば、連続的に撮影した複数の画像からモーションブラーが基準よりも小さい画像が抽出されることで、振動するオブジェクトに対し、鮮明な画像を自動で取得することができる。
【図面の簡単な説明】
【0008】
【
図1】鮮明画像取得システム1を表す構成図である。
【
図2】情報処理装置2のハードウェア構成を示すブロック図である。
【
図3】ユーザ端末3のハードウェア構成を示すブロック図である。
【
図5】ユーザ端末3(プロセッサ33)によって実現される機能を示すブロック図である。
【
図6】カメラ41への入射角の調整処理を示すフロー図である。
【
図7】ガルバノミラー44の角度とオブジェクトTの中心点Pの位置との関係を説明する模式図である。
【
図9】2つの画像間におけるオブジェクトの中心点Pの移動を示す概念図である。
【発明を実施するための形態】
【0009】
以下、図面を用いて本発明の実施形態について説明する。以下に示す実施形態中で示した各種特徴事項は、互いに組み合わせ可能である。
【0010】
ところで、本実施形態に登場するソフトウェアを実現するためのプログラムは、コンピュータが読み取り可能な非一時的な記録媒体(Non-Transitory Computer-Readable Medium)として提供されてもよいし、外部のサーバからダウンロード可能に提供されてもよいし、外部のコンピュータで当該プログラムを起動させてクライアント端末でその機能を実現(いわゆるクラウドコンピューティング)するように提供されてもよい。
【0011】
また、本実施形態において「部」とは、例えば、広義の回路によって実施されるハードウェア資源と、これらのハードウェア資源によって具体的に実現されうるソフトウェアの情報処理とを合わせたものも含みうる。また、本実施形態においては様々な情報を取り扱うが、これら情報は、例えば電圧・電流を表す信号値の物理的な値、0又は1で構成される2進数のビット集合体としての信号値の高低、又は量子的な重ね合わせ(いわゆる量子ビット)によって表され、広義の回路上で通信・演算が実行されうる。
【0012】
また、広義の回路とは、回路(Circuit)、回路類(Circuitry)、プロセッサ(Processor)、及びメモリ(Memory)等を少なくとも適当に組み合わせることによって実現される回路である。すなわち、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理デバイス(例えば、単純プログラマブル論理デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理デバイス(Complex Programmable Logic Device:CPLD)、及びフィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))等を含むものである。
【0013】
1.ハードウェア構成
本節では、ハードウェア構成について説明する。
【0014】
<鮮明画像取得システム1>
図1は、鮮明画像取得システム1を表す構成図である。鮮明画像取得システム1は、情報処理装置2と、ユーザ端末3と、撮影装置4とを備える。情報処理装置2と、ユーザ端末3とは、電気通信回線を通じて通信可能に構成されている。一実施形態において、鮮明画像取得システム1とは、1つ又はそれ以上の装置又は構成要素からなるものである。仮に例えば、情報処理装置2又はユーザ端末3のみからなる場合であれば、鮮明画像取得システム1は、情報処理装置2又はユーザ端末3となりうる。以下、これらの構成要素について説明する。
【0015】
<情報処理装置2>
図2は、情報処理装置2のハードウェア構成を示すブロック図である。情報処理装置2は、通信バス20と、通信部21と、記憶部22と、プロセッサ23とを備える。通信部21、記憶部22、及びプロセッサ23は、情報処理装置2の内部において通信バス20を介して電気的に接続されている。
【0016】
<通信部21>
通信部21は、USB、IEEE1394、Thunderbolt(登録商標)、有線LANネットワーク通信等といった有線型の通信手段が好ましいものの、無線LANネットワーク通信、3G/LTE/5G等のモバイル通信、BLUETOOTH(登録商標)通信等を必要に応じて含めてもよい。すなわち、これら複数の通信手段の集合として実施することがより好ましい。すなわち、情報処理装置2は、通信部21及びネットワークを介して、外部から種々の情報を通信してもよい。
【0017】
<記憶部22>
記憶部22は、前述の記載により定義される様々な情報を記憶する。これは、例えば、プロセッサ23によって実行される情報処理装置2に係る種々のプログラム等を記憶するソリッドステートドライブ(Solid State Drive:SSD)等のストレージデバイスとして、あるいは、プログラムの演算に係る一時的に必要な情報(引数、配列等)を記憶するランダムアクセスメモリ(Random Access Memory:RAM)等のメモリとして実施されうる。記憶部22は、プロセッサ23によって実行される情報処理装置2に係る種々のプログラムや変数等を記憶している。
【0018】
<プロセッサ23>
プロセッサ23は、情報処理装置2に関連する全体動作の処理・制御を行う。プロセッサ23は、例えば中央処理装置(Central Processing Unit:CPU)である。プロセッサ23は、記憶部22に記憶された所定のプログラムを読み出すことによって、情報処理装置2に係る種々の機能を実現する。すなわち、記憶部22に記憶されているソフトウェアによる情報処理が、ハードウェアの一例であるプロセッサ23によって具体的に実現されることで、プロセッサ23に含まれる各機能部として実行されうる。これらについては、次節においてさらに詳述する。なお、プロセッサ23は単一であることに限定されず、機能ごとに複数のプロセッサ23を有するように実施してもよい。またそれらの組合せであってもよい。
【0019】
<ユーザ端末3>
図3は、ユーザ端末3のハードウェア構成を示すブロック図である。ユーザ端末3は、通信バス30と、通信部31と、記憶部32と、プロセッサ33と、表示部34と、入力部35と、を備える。通信部31、記憶部32、プロセッサ33、表示部34、及び入力部35は、ユーザ端末3の内部において通信バス30を介して電気的に接続されている。通信部31、記憶部32及びプロセッサ33の説明は、情報処理装置2における各部の説明と同様のため省略する。
【0020】
<表示部34>
表示部34は、ユーザが操作可能なグラフィカルユーザインターフェース(Graphical User Interface:GUI)の画面を表示する。表示部34は、ユーザ端末3の筐体に含まれるものであってもよいし、外付けされるものであってもよい。具体的には、表示部34は、CRTディスプレイ、液晶ディスプレイ、有機ELディスプレイ、又はプラズマディスプレイ等の表示デバイスとして実施され得る。これらの表示デバイスは、ユーザ端末3の種類に応じて使い分けて実施されることが好ましい。
【0021】
<入力部35>
入力部35は、ユーザによってなされた操作入力を受け付ける。操作入力は、命令信号として通信バス30を介してプロセッサ33に転送される。プロセッサ33は、必要に応じて、転送された命令信号に基づいて所定の制御や演算を実行しうる。入力部35は、ユーザ端末3の筐体に含まれるものであってもよいし、外付けされるものであってもよい。例えば、入力部35は、表示部34と一体となってタッチパネルとして実施されてもよい。入力部35がタッチパネルとして実施される場合、ユーザは、入力部35に対してタップ操作、スワイプ操作等を入力することができる。入力部35としては、タッチパネルに代えて、スイッチボタン、マウス、QWERTYキーボード等が採用可能である。
【0022】
情報処理装置2は、オンプレミス形態であってもよく、クラウド形態であってもよい。クラウド形態の情報処理装置2としては、例えば、SaaS(Software as a Service)、クラウドコンピューティングという形態で、上述の機能や処理を提供してもよい。
【0023】
<撮影装置4>
図4は、撮影装置4の構成を示す模式図である。撮影装置4は、カメラ41と、複数のレンズ42と、光源43と、ガルバノミラー44(反射部材の一例)と、駆動回路46とを有する。
【0024】
カメラ41は、振動台Vの上に配置されたターゲットとなるオブジェクトTの複数の画像を取得する。カメラ41は、イメージセンサ41Aを内蔵した高速カメラ(高速ビジョン)である。レンズ42は、カメラ41とガルバノミラー44との間に配置されている。光源43は、オブジェクトTに光を照射する。
【0025】
ガルバノミラー44は、オブジェクトTからの反射光をカメラ41に向けて反射させる反射面を有する。具体的には、ガルバノミラー44は、X軸ミラー44Aと、Y軸ミラー44Bとの2つのミラーを有する2軸回転ミラーである。X軸ミラー44A及びY軸ミラー44Bは、それぞれ独立して回転可能に構成されている。なお、
図4では、2つのガルバノミラー44が図示されているが、これらは同一のガルバノミラー44を異なる方向から視た形状をそれぞれ模式的に示したものである。図中上方のガルバノミラー44は、平面視であり、下方のガルバノミラー44は、正面視である。
【0026】
駆動回路46は、ガルバノミラー44の反射面の向きを変更する回路である。駆動回路46は、DAコンバータ46Aと、第1モータドライバ46Bと、第2モータドライバ46Cとを有する。DAコンバータ46Aは、ユーザ端末3からのデジタル信号をアナログ信号に変換して、第1モータドライバ46B及び第2モータドライバ46Cに入力する。第1モータドライバ46Bは、ユーザ端末3からの入力信号に基づいて、X軸ミラー44Aを回転させ、反射面の角度を変更する。第2モータドライバ46Cは、ユーザ端末3からの入力信号に基づいて、Y軸ミラー44Bを回転させ、反射面の角度を変更する。
【0027】
2.機能構成
本節では、本実施形態の機能構成について説明する。記憶部32に記憶されているソフトウェアによる情報処理がハードウェアの一例であるプロセッサ33によって具体的に実現されることで、プロセッサ33に含まれる各機能部として実行されうる。
【0028】
図5は、ユーザ端末3(プロセッサ33)によって実現される機能を示すブロック図である。具体的には、ユーザ端末3(プロセッサ33)は、受付部331と、調整部332と、処理部333とを備える。
【0029】
<受付部331>
受付部331は、種々の情報を取得するように構成される。例えば、受付部331は、撮影装置4が振動するオブジェクトTを定位置から連続的に撮影した複数の画像の入力を受け付ける。具体的には、受付部331は、カメラ41から画像を取得する。なお、調整部332及び処理部333で扱う画像の解像度は、数百ピクセル×数百ピクセルのオーダ(例えば、320ピクセル×240ピクセル)である。
【0030】
<調整部332>
調整部332は、撮影装置4を制御するように構成される。例えば、調整部332は、撮影装置4から取得された複数の画像のうち少なくとも1つの画像におけるオブジェクトTの位置を算出し、オブジェクトTの位置に基づいてオブジェクトTからの反射光のカメラ41への入射角を調整する。これにより、処理部333で抽出処理を行う前に、撮影した画像自体の鮮明度を高めることができる。
【0031】
具体的には、調整部332は、オブジェクトTの中心点の位置に基づいてガルバノミラー44の反射面の向きを調整する。これにより、撮影装置4を大型化することなく、比較的簡潔な構成でカメラ41への入射角を調整することができる。
【0032】
より詳細には、調整部332は、カメラ41の画角の中心にオブジェクトTの中心点が近づくようにガルバノミラー44の反射面の向きを調整する。これにより、反射面の向きの調整量を簡潔な手順で算出することができる。
【0033】
図6は、カメラ41への入射角の調整処理を示すフロー図である。まず、調整部332は、カメラ41が取得した画像をモノクロの画像としてメモリに格納する(ステップS110)。次に、調整部332は、画像を公知の方法にて平滑化することで、隣接するピクセルの数値変化を滑らかにする(ステップS120)。平滑化後、調整部332は、各ピクセルを、閾値を用いて白(画素値が0)又は黒(画素値が255)に二値化する(ステップS130)。ここでの閾値は、例えば30以上60以下の任意の値(例えば45)であり、画素値が閾値未満のピクセルを白、閾値以上のピクセルを黒とする。
【0034】
続いて、調整部332は、二値化した画像から、画角の中心付近に存在し、かつサイズが最大の輪郭をオブジェクトTの輪郭として抽出する(ステップS140)。輪郭の抽出後、調整部332は、抽出した輪郭で画定される図形の重心をオブジェクトTの中心点とする(ステップS150)。重心は、例えば、輪郭の外接円の中心点として求められる。また、画像モーメントを用いて重心を算出してもよい。オブジェクトTの中心点の算出後、調整部332は、画像の中心(つまり画角の中心)と、オブジェクトTの中心点とのずれ(ベクトル移動量)を算出する(ステップS160)。
【0035】
最後に、調整部332は、ベクトル移動量がゼロとなるようにガルバノミラー44の反射面の向きを調整する(ステップS170)。具体的には、調整部332は、第1モータドライバ46B及び第2モータドライバ46Cに、ガルバノミラー44のX軸回転量及びY軸回転量を制御する電圧値を入力する。
【0036】
図7は、ガルバノミラー44の角度とオブジェクトTの中心点Pの位置との関係を説明する模式図である。k番目の画像(フレーム)におけるX軸回転電圧V
xkと、X軸回転量θ
xk(deg)との関係は、X軸ミラー44Aの回転量と入力電圧との比Kを用いて、下記式(1)で表される。なお、
図7では、K=0.5(K
-1=2)としたケースの例が示されている。
【数1】
【0037】
オブジェクトTからX軸ミラー44Aへの入射光の角度θ
xl(deg)は、X軸回転量θ
xkの2倍であるため、下記式(2)で表される。また、式(1)及び式(2)から、下記式(3)が成立する。
【数2】
【0038】
X軸ミラー44Aへの入射光の角度θ
xlは、オブジェクトTの中心点PのX軸の移動量X(mm)と、X軸ミラー44AからオブジェクトTまでの光線距離L
x+L
y(mm)で決まるため、下記式(4)が成立する。
【数3】
【0039】
調整部332によるX軸ミラー44Aの回転によって、画像におけるオブジェクトTの中心点Pの座標は画角の中心にリセットされる。そのため、移動量Xは、毎フレームの中心点Pのx座標の総和として、下記式(5)で求められる。
【数4】
【0040】
式(2)、(4)及び(5)から、第1モータドライバ46Bに送信する電圧値V
x(V)は、下記式(6)で求められる。
【数5】
【0041】
ユーザ端末3からDAコンバータ46AへのX軸回転の指令値は、アナログ値とする必要がある。そのため、例えば下記式(7)で表されるAxがDAコンバータ46Aに入力される。
【数6】
【0042】
Y軸ミラー44Bの回転量についても、同様の手順で算出される。ただし、Y軸回転では、Y軸ミラー44BからオブジェクトTまでの光線距離がL
y(mm)となる。そのため、ユーザ端末3からDAコンバータ46AへのY軸回転の指令値として、例えば下記式(8)で表されるA
yがDAコンバータ46Aに入力される。
【数7】
【0043】
調整部332は、カメラ41による画像の撮影中、カメラ41への入射角の調整(ステップS110からステップS170まで)を繰り返す。つまり、調整部332は、リアルタイムで撮影装置4にオブジェクトを追跡させる。
【0044】
<処理部333>
処理部333は、種々の情報を処理するように構成される。例えば、処理部333は、撮影装置4が撮影した複数の画像からモーションブラーが予め定めた基準よりも小さい鮮明画像を抽出する。具体的には、処理部333は、第1抽出処理及び第2抽出処理のいずれかを実行する。
【0045】
処理部333が処理する画像は、調整部332によって撮影装置4(ガルバノミラー44)の調整が行われながら撮影された画像である。また、処理部333による第1抽出処理又は第2抽出処理は、撮影装置4による画像の撮影と並行して行われてもよい。
【0046】
<第1抽出処理>
第1抽出処理は、オブジェクトの中心点の移動量(振動軌跡)を可視化して、移動量の小さい画像を抽出する処理である。第1抽出処理では、処理部333は、複数の画像におけるオブジェクトの中心点の移動量を算出し、移動量が小さい画像を鮮明画像として抽出する。つまり、処理部333は、オブジェクトの中心点の移動量を「モーションブラーの大きさ」として鮮明画像の抽出に用いる。これにより、振動によるオブジェクトの移動が小さいときに撮影された画像を抽出することができる。
【0047】
詳細には、処理部333は、複数の画像におけるオブジェクトの輪郭をそれぞれ抽出し、輪郭で画定される図形の重心をオブジェクトの中心点とする。これにより、オブジェクトの移動量を簡潔な手順で算出することができる。
【0048】
図8は、第1抽出処理を示すフロー図である。まず、処理部333は、カメラ41が取得した画像をモノクロの画像としてメモリに格納する(ステップS210)。次に、処理部333は、画像を公知の方法にて平滑化することで、隣接するピクセルの数値変化を滑らかにする(ステップS220)。平滑化後、処理部333は、各ピクセルを、閾値を用いて白(画素値が0)又は黒(画素値が255)に二値化する(ステップS230)。ここでの閾値は、例えば30以上60以下の任意の値(例えば45)であり、画素値が閾値未満のピクセルを白、閾値以上のピクセルを黒とする。
【0049】
続いて、処理部333は、二値化した画像から、画角の中心付近に存在し、かつサイズが最大の輪郭をオブジェクトの輪郭として抽出する(ステップS240)。輪郭の抽出後、処理部333は、抽出した輪郭で画定される図形の重心をオブジェクトの中心点とする(ステップS250)。重心の求め方は、調整部332による入射角の調整処理と同じである。オブジェクトの中心点の算出後、処理部333は、時間的に連続する2つの第1画像(k-1番目の画像)及び第2画像(k番目の画像)におけるオブジェクトの中心点のずれ(ベクトル移動量)を算出する(ステップS260)。
【0050】
図9は、2つの画像間におけるオブジェクトの中心点Pの移動を示す概念図である。k番目の画像(フレーム)における移動量デルタLkは、下記式(9)で算出される。
【数8】
【0051】
次に、処理部333は、ベクトル移動量が閾値(例えば1ピクセル)以下であるか否か判定する(ステップS270)。ベクトル移動量が閾値以下の場合(S270:YES)、処理部333は、ベクトル移動量を算出した2つの画像のうち、第2画像を「鮮明画像」と判定する(ステップS280)。一方、ベクトル移動量が閾値を超える場合(S270:NO)、処理部333は、ベクトル移動量を算出した2つの画像のうち、第2画像を「非鮮明画像」と判定する(ステップS290)。なお、ベクトル移動量の閾値は、1ピクセルの距離(mm)、カメラ41の露光時間(ms)等によって適宜設定することができる。
【0052】
処理部333は、受付部331が受け付けた複数の画像全てに対し、第1抽出処理(ステップS210からステップS290まで)を繰り返す。これにより、撮影された画像が「鮮明画像」又は「非鮮明画像」に分類される。
【0053】
<第2抽出処理>
第2抽出処理は、画像の鮮明度を可視化して、鮮明度の高い画像を抽出する処理である。第2抽出処理では、処理部333は、複数の画像の離散フーリエ変換により振幅スペクトルを算出し、振幅スペクトルの分布に基づいて鮮明画像を抽出する。つまり、処理部333は、振幅スペクトルの分布を「モーションブラーの程度」として鮮明画像の抽出に用いる。これにより、画像の鮮明度及び鮮明度の判定基準を定量化できるため、鮮明画像の抽出精度が高められる。
【0054】
詳細には、処理部333は、振幅スペクトルにおける振幅が一定値未満の点の数が閾値以上の画像を鮮明画像として抽出する。これにより、鮮明度及び鮮明度の判定基準を簡潔な手順で算出することができる。
【0055】
図10は、第2抽出処理を示すフロー図である。第2抽出処理では、共通のオブジェクトを撮影した一定数の画像が処理の対象とされる。まず、処理部333は、カメラ41が取得した画像をモノクロの画像としてメモリに格納する(ステップS310)。次に、処理部333は、画像を公知の方法にて平滑化することで、隣接するピクセルの数値変化を滑らかにする(ステップS320)。
【0056】
平滑化後、処理部333は、画像を離散フーリエ変換(高速フーリエ変換)し、振幅スペクトル(フーリエ変換画像)を算出する(ステップS330)。
図11は、振幅スペクトルの一例を示す図である。撮影画像の離散フーリエ変換によって、
図11Aに示す振幅スペクトルの分布が得られる。
【0057】
振幅スペクトルの算出後、処理部333は、振幅スペクトルを、閾値を用いて白(画素値が0)又は黒(画素値が255)へ変換した(二値化した)画像を作成する(ステップS340)。ここでの閾値は、例えば70以上150以下の任意の値(例えば110)であり、振幅が閾値未満のピクセルを白、閾値以上のピクセルを黒とする。これにより、
図11Bに示す白黒画像が得られる。この画像における白のピクセルは、振幅が小さい点であり、このピクセルが多いほど、フーリエ変換前の画像が鮮明であると言える。
【0058】
二値化後、処理部333は、画像にマスクを付与する(ステップS350)。具体的には、振動スペクトルの低周波領域及び周期性領域を黒色にマスクする。これにより、
図11Cに示すマスクされた白黒画像が得られる。
【0059】
マスクの対象となる低周波領域は、
図11Aの画像における四隅の部分(破線の丸で囲った部分)であり、例えば、画像の角からの距離が16ピクセル以内(直径32ピクセルの円内)の領域である。低周波領域は、オブジェクトの輪郭がぼやけているときに発生するノイズ領域である。同じくマスクの対象となる周期性領域は、
図11Aの画像における四辺から一定距離の帯状の部分(破線の四角で囲った部分)であり、例えば、画像の辺からの距離が16ピクセル以内の領域である。周期性領域は、振動方向、撮影背景等に依存して白線が発生し、鮮明画像でなくても白色のピクセルが生じる領域である。
【0060】
マスク処理の後、処理部333は、マスクされた白黒画像に含まれる白ピクセル(振幅が一定値未満の点)をカウントする(ステップS360)。白ピクセルのカウント後、処理部333は、白ピクセルをカウントした画像の数が一定の数値(例えば100以上1000以下、具体的には500)以上であるか否か判定する(ステップS370)。カウント済みの画像の数が一定未満の場合(S370:NO)、処理部333は、次の画像に対し、S310からS360までを実行する。
【0061】
一方、カウント済みの画像の数が一定以上の場合(S370:YES)、処理部333は、各画像の白ピクセルの数が閾値以上であるか否か判定する(ステップS380)。白ピクセルの数が閾値以上である場合(S380:YES)、処理部333は、この画像を「鮮明画像」と判定する(ステップS390)。一方、白ピクセルの数が閾値未満の場合(S380:NO)、処理部333は、この画像を「非鮮明画像」と判定する(ステップS400)。
【0062】
鮮明画像の判定に用いる閾値は、例えば、以下の手順で設定される。すなわち、S360でカウントした複数の画像における白ピクセルの数を「鮮明度」とし、複数の画像の鮮明度のうち、最大値をWmax、最小値をWminとする。閾値Wtは、鮮明度の最大値及び最小値の差分の上位20%として、下記式(10)で求められる。
【数9】
【0063】
4.作用
本実施形態の作用をまとめると、次の通りとなる。連続的に撮影した複数の画像からモーションブラーが基準よりも小さい画像が抽出されることで、振動するオブジェクトに対し、鮮明な画像を自動で取得することができる。
【0064】
以上、本発明の実施形態について説明したが、本発明はこれに限定されることなく、その発明の技術的思想を逸脱しない範囲で適宜変更可能である。
【0065】
5.その他
上記実施形態では、ユーザ端末3が種々の記憶・制御を行ったが、ユーザ端末3に代えて、複数の外部装置が用いられてもよい。すなわち、種々の情報やプログラムは、ブロックチェーン技術等を用いて複数の外部装置に分散して記憶されてもよい。
【0066】
本実施形態の態様は、鮮明画像取得システム1に限定されず、情報処理方法であっても、プログラムであってもよい。鮮明画像取得方法は、鮮明画像取得システム1の各ステップを備える。プログラムは、コンピュータを、鮮明画像取得システム1として機能させる。
【0067】
鮮明画像取得システム1において、情報処理装置2のプロセッサ23が調整部332及び/又は処理部333を有してもよい。ただし、撮影装置4による画像取得と調整部332による撮影装置4の調整(撮影装置4へのフィードバック)とのタイムラグを低減する観点から、調整部332は、ユーザ端末3のプロセッサ33が有することが好ましい。
【0068】
調整部332は、ガルバノミラー44の向きの調整に替えて、又はガルバノミラー44の向きの調整に加えて、カメラ41又はターゲットの向き又は位置を調整してもよい。したがって、撮影装置4は、必ずしもガルバノミラー44を有しなくてもよい。
【0069】
次に記載の各態様で提供されてもよい。
【0070】
(1)鮮明画像取得システムであって、プロセッサを備え、前記プロセッサは、受付ステップと、処理ステップと、を実行するように構成され、前記受付ステップでは、振動するオブジェクトを連続的に撮影した複数の画像の入力を受け付け、前記処理ステップでは、前記複数の画像からモーションブラーが予め定めた基準よりも小さい鮮明画像を抽出する、鮮明画像取得システム。
【0071】
(2)上記(1)に記載の鮮明画像取得システムにおいて、前記処理ステップでは、前記複数の画像における前記オブジェクトの中心点の移動量を算出し、前記移動量が小さい画像を前記鮮明画像として抽出する、鮮明画像取得システム。
【0072】
(3)上記(2)に記載の鮮明画像取得システムにおいて、前記処理ステップでは、前記複数の画像における前記オブジェクトの輪郭をそれぞれ抽出し、前記輪郭で画定される図形の重心を前記中心点とする、鮮明画像取得システム。
【0073】
(4)上記(1)に記載の鮮明画像取得システムにおいて、前記処理ステップでは、前記複数の画像の離散フーリエ変換により振幅スペクトルを算出し、前記振幅スペクトルの分布に基づいて前記鮮明画像を抽出する、鮮明画像取得システム。
【0074】
(5)上記(4)に記載の鮮明画像取得システムにおいて、前記処理ステップでは、前記振幅スペクトルにおける振幅が一定値未満の点の数が閾値以上の画像を前記鮮明画像として抽出する、鮮明画像取得システム。
【0075】
(6)上記(1)から(5)のいずれか1つに記載の鮮明画像取得システムにおいて、撮影装置をさらに備え、前記撮影装置は、前記複数の画像を取得するカメラを有し、前記プロセッサは、調整ステップをさらに実行するように構成され、前記調整ステップでは、前記複数の画像のうち少なくとも1つの画像における前記オブジェクトの位置を算出し、前記オブジェクトの位置に基づいて前記オブジェクトからの反射光の前記カメラへの入射角を調整する、鮮明画像取得システム。
【0076】
(7)上記(6)に記載の鮮明画像取得システムにおいて、前記撮影装置は、前記反射光を前記カメラに向けて反射させる反射面を有する反射部材をさらに有し、前記調整ステップでは、前記オブジェクトの中心点の位置に基づいて前記反射面の向きを調整する、鮮明画像取得システム。
【0077】
(8)上記(7)に記載の鮮明画像取得システムにおいて、前記調整ステップでは、前記カメラの画角の中心に前記中心点が近づくように前記反射面の向きを調整する、鮮明画像取得システム。
【0078】
(9)鮮明画像取得方法であって、上記(1)から(8)のいずれか1つに記載の鮮明画像取得システムの各ステップを備える、鮮明画像取得方法。
【0079】
(10)プログラムであって、コンピュータを、上記(1)から(8)のいずれか1つに記載の鮮明画像取得システムとして機能させるためのプログラム。
もちろん、この限りではない。
【0080】
最後に、本開示に係る種々の実施形態を説明したが、これらは、例として提示したものであり、発明の範囲を限定することは意図していない。当該新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。当該実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0081】
1 :鮮明画像取得システム
2 :情報処理装置
3 :ユーザ端末
4 :撮影装置
20 :通信バス
21 :通信部
22 :記憶部
23 :プロセッサ
30 :通信バス
31 :通信部
32 :記憶部
33 :プロセッサ
34 :表示部
35 :入力部
41 :カメラ
41A :イメージセンサ
42 :レンズ
43 :光源
44 :ガルバノミラー
44A :X軸ミラー
44B :Y軸ミラー
46 :駆動回路
46A :DAコンバータ
46B :第1モータドライバ
46C :第2モータドライバ
331 :受付部
332 :調整部
333 :処理部