(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023180137
(43)【公開日】2023-12-20
(54)【発明の名称】画像処理装置、画像処理方法、および画像処理プログラム
(51)【国際特許分類】
H04N 23/60 20230101AFI20231213BHJP
H04N 5/262 20060101ALI20231213BHJP
【FI】
H04N5/232 290
H04N5/262 050
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022093274
(22)【出願日】2022-06-08
(71)【出願人】
【識別番号】000004112
【氏名又は名称】株式会社ニコン
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】綱井 史郎
【テーマコード(参考)】
5C023
5C122
【Fターム(参考)】
5C023AA04
5C023AA16
5C023BA04
5C023BA12
5C122DA04
5C122EA61
5C122FA06
5C122FH02
5C122FH04
5C122FH10
5C122FH12
5C122FH18
5C122HA13
5C122HA35
5C122HB01
5C122HB05
5C122HB10
(57)【要約】
【課題】多重露光フレームから単露光フレームを生成すること。
【解決手段】画像処理装置は、被写体を多重露光撮像した第1多重露光フレームを取得する取得部と、前記被写体の画像データと、前記取得部によって取得された第1多重露光フレームと、に基づいて、前記第1多重露光フレーム内における前記被写体の動きベクトルを検出する検出部と、前記検出部によって検出された動きベクトルと、前記被写体の画像データと、前記第1多重露光フレームにおいて前記被写体が多重化された第1多重露光被写体を除く背景の画像データと、に基づいて、前記第1多重露光フレームにおける前記第1多重露光被写体の位置から前記動きベクトルの方向に前記被写体が配置された予測フレームを生成する生成部と、を有する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
被写体を多重露光撮像した第1多重露光フレームを取得する取得部と、
前記被写体の画像データと、前記取得部によって取得された第1多重露光フレームと、に基づいて、前記第1多重露光フレーム内における前記被写体の動きベクトルを検出する検出部と、
前記検出部によって検出された動きベクトルと、前記被写体の画像データと、前記第1多重露光フレームにおいて前記被写体が多重化された第1多重露光被写体を除く背景の画像データと、に基づいて、前記第1多重露光フレームにおける前記第1多重露光被写体の位置から前記動きベクトルの方向に前記被写体が配置された予測フレームを生成する生成部と、
を有する画像処理装置。
【請求項2】
請求項1に記載の画像処理装置であって、
前記予測フレームは、前記第1多重露光被写体の位置から前記動きベクトルの方向に前記動きベクトルの長さ分ずれた位置に前記被写体が配置されたフレームである、
画像処理装置。
【請求項3】
請求項1に記載の画像処理装置であって、
前記生成部は、前記被写体の配置位置が異なる複数の前記予測フレームを生成する、
画像処理装置。
【請求項4】
請求項3に記載の画像処理装置であって、
前記生成部は、複数の前記予測フレームのうち時間的に前後する2つの予測フレームの一方の前記被写体と他方の前記被写体との間隔を、前記動きベクトルの長さに基づいて決定する、
画像処理装置。
【請求項5】
請求項1に記載の画像処理装置であって、
前記取得部は、前記第1多重露光フレームの次に多重露光撮像した第2多重露光フレームを取得し、
前記生成部は、前記第1多重露光フレームにおける前記第1多重露光被写体と前記第2多重露光フレームにおける第2多重露光被写体との間に前記被写体が配置された前記予測フレームを生成する、
画像処理装置。
【請求項6】
請求項1に記載の画像処理装置であって、
前記検出部は、前記被写体の画像データに基づいて、前記第1多重露光フレームの中から、多重露光の各々の露光時における前記被写体の画像データを検出し、
前記生成部は、前記検出部によって検出された前記被写体の画像データの各々と、前記第1多重露光フレームのうち前記第1多重露光被写体の画像データを除く背景の画像データと、に基づいて、前記露光時ごとの前記被写体の画像データおよび前記背景の画像データを含む時系列な分離フレームを生成する、
画像処理装置。
【請求項7】
被写体を多重露光撮影した多重露光フレームを取得する取得部と、
前記被写体の画像データに基づいて、前記取得部によって取得された多重露光フレームの中から、多重露光の各々の露光時における前記被写体の画像データを検出する検出部と、
前記検出部によって検出された前記被写体の画像データの各々と、前記多重露光フレームにおいて前記被写体が多重化された多重露光被写体の画像データを除く背景の画像データと、に基づいて、前記露光時ごとの前記被写体の画像データおよび前記背景の画像データを含む時系列なフレームを生成する生成部と、
を有する画像処理装置。
【請求項8】
請求項7に記載の画像処理装置であって、
前記多重露光フレームは、前記被写体を複数の色の各々で多重露光撮影したフレームであり、
前記検出部は、前記多重露光被写体の画像データに基づいて、前記多重露光フレームの中から、多重露光の各色の露光時における前記被写体の画像データを検出し、
前記生成部は、前記検出部によって検出された前記被写体の画像データの各々と、前記背景の画像データと、に基づいて、前記各色の露光時ごとの前記被写体の画像データおよび前記背景の画像データを含む時系列なフレームを生成する、
画像処理装置。
【請求項9】
画像処理装置が、
被写体を多重露光撮像した第1多重露光フレームを取得する取得処理と、
前記被写体の画像データと、前記取得処理によって取得された第1多重露光フレームと、に基づいて、前記第1多重露光フレーム内における前記被写体の動きベクトルを検出する検出処理と、
前記検出処理によって検出された動きベクトルと、前記被写体の画像データと、前記第1多重露光フレームにおいて前記被写体が多重化された第1多重露光被写体を除く背景の画像データと、に基づいて、前記第1多重露光フレームにおける前記第1多重露光被写体の位置から前記動きベクトルの方向に前記被写体が配置された予測フレームを生成する生成処理と、
を実行する画像処理方法。
【請求項10】
画像処理装置が、
被写体を多重露光撮影した多重露光フレームを取得する取得処理と、
前記被写体の画像データに基づいて、前記取得処理によって取得された多重露光フレームの中から、多重露光の各々の露光時における前記被写体の画像データを検出する検出処理と、
前記検出処理によって検出された前記被写体の画像データの各々と、前記多重露光フレームにおいて前記被写体が多重化された多重露光被写体の画像データを除く背景の画像データと、に基づいて、前記露光時ごとの前記被写体の画像データおよび前記背景の画像データを含む時系列なフレームを生成する生成処理と、
を実行する画像処理方法。
【請求項11】
プロセッサに、
被写体を多重露光撮像した第1多重露光フレームを取得する取得処理と、
前記被写体の画像データと、前記取得処理によって取得された第1多重露光フレームと、に基づいて、前記多重露光フレーム内における前記被写体の動きベクトルを検出する検出処理と、
前記検出処理によって検出された動きベクトルと、前記被写体の画像データと、前記第1多重露光フレームにおいて前記被写体が多重化された第1多重露光被写体を除く背景の画像データと、に基づいて、前記第1多重露光フレームにおける前記第1多重露光被写体の位置から前記動きベクトルの方向に前記被写体が配置された予測フレームを生成する生成処理と、
を実行させる画像処理プログラム。
【請求項12】
プロセッサに、
被写体を多重露光撮影した多重露光フレームを取得する取得処理と、
前記被写体の画像データに基づいて、前記取得処理によって取得された多重露光フレームの中から、多重露光の各々の露光時における前記被写体の画像データを検出する検出処理と、
前記検出処理によって検出された前記被写体の画像データの各々と、前記多重露光フレームにおいて前記被写体が多重化された多重露光被写体の画像データを除く背景の画像データと、に基づいて、前記露光時ごとの前記被写体の画像データおよび前記背景の画像データを含む時系列なフレームを生成する生成処理と、
を実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、および画像処理プログラムに関する。
【背景技術】
【0002】
被写体を連続して撮影し、1枚の画像を得る多重露光による撮影が知られている。従来から動いている被写体(動体)の多重露光による撮影が求められていた(たとえば、下記特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【0004】
第1開示技術にかかる画像処理装置は、被写体を多重露光撮像した第1多重露光フレームを取得する取得部と、前記被写体の画像データと、前記取得部によって取得された第1多重露光フレームと、に基づいて、前記第1多重露光フレーム内における前記被写体の動きベクトルを検出する検出部と、前記検出部によって検出された動きベクトルと、前記被写体の画像データと、前記第1多重露光フレームにおいて前記被写体が多重化された第1多重露光被写体を除く背景の画像データと、に基づいて、前記第1多重露光フレームにおける前記第1多重露光被写体の位置から前記動きベクトルの方向に前記被写体が配置された予測フレームを生成する生成部と、を有する。
【0005】
第2開示技術にかかる画像処理装置は、被写体を多重露光撮影した多重露光フレームを取得する取得部と、前記被写体の画像データに基づいて、前記取得部によって取得された多重露光フレームの中から、多重露光の各々の露光時における前記被写体の画像データを検出する検出部と、前記検出部によって検出された前記被写体の画像データの各々と、前記多重露光フレームにおいて前記被写体が多重化された多重露光被写体の画像データを除く背景の画像データと、に基づいて、前記露光時ごとの前記被写体の画像データおよび前記背景の画像データを含む時系列なフレームを生成する生成部と、を有する。
【図面の簡単な説明】
【0006】
【
図1】
図1は、撮像装置のハードウェア構成例を示すブロック図である。
【
図2】
図2は、画像処理装置の機能的構成例を示すブロック図である。
【
図3】
図3は、補間フレームの一例を示す説明図である。
【
図4】
図4は、予測フレームの生成例1を示す説明図である。
【
図5】
図5は、予測フレームの生成例2を示す説明図である。
【
図6】
図6は、画像処理装置による画像処理手順例1を示すフローチャートである。
【
図7】
図7は、
図6に示した予測フレーム生成処理(ステップS604)の詳細な処理手順例を示すフローチャートである。
【
図8】
図8は、分離フレームの生成例1-1を示す説明図である。
【
図9】
図9は、分離フレームの生成例1-2を示す説明図である。
【
図10】
図10は、画像処理装置による画像処理手順例2を示すフローチャートである。
【
図11】
図11は、分離フレーム生成処理(ステップS1004)の詳細な処理手順例を示すフローチャートである。
【
図12】
図12は、分離フレームの生成例2-1を示す説明図である。
【
図13】
図13は、分離フレームの生成例2-2を示す説明図である。
【発明を実施するための形態】
【0007】
<撮像装置のハードウェア構成例>
図1は、撮像装置のハードウェア構成例を示すブロック図である。撮像装置100は、静止画または動画撮影可能な装置であり、具体的には、たとえば、デジタルカメラ、デジタルビデオカメラ、スマートフォン、タブレット、パーソナルコンピュータ、ゲーム機である。
図1では、撮像装置の一例としてデジタルカメラを例に挙げて説明する。
【0008】
撮像装置100は、プロセッサ101と、記憶デバイス102と、駆動部103と、光学系104と、撮像素子105と、AFE(Analog Front End)106と、LSI(Large Scale Integration)107と、操作デバイス108と、マイク109と、センサ110と、表示デバイス111と、通信IF(Interface)112と、スピーカ113と、レーザ光源114と、バス115と、を有する。プロセッサ101、記憶デバイス102、駆動部103、LSI107、操作デバイス108、マイク109、センサ110、表示デバイス111、通信IF112、スピーカ113およびレーザ光源114は、バス115に接続される。
【0009】
プロセッサ101は、撮像装置100を制御する。記憶デバイス102は、プロセッサ101の作業エリアとなる。また、記憶デバイス102は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。記憶デバイス102としては、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、フラッシュメモリがある。記憶デバイス102は、撮像装置100に複数実装されてもよく、そのうちの少なくとも1つは、撮像装置100に対し着脱自在でもよい。
【0010】
駆動部103は、光学系104を駆動制御する。駆動部103は、駆動回路103aと駆動源103bとを有する。駆動回路103aは、プロセッサ101からの指示により駆動源103bを制御する。駆動源103bは、たとえば、モータであり、駆動回路103aの制御により、光学系104内のズーミングレンズ141bおよびフォーカシングレンズ141cを光軸方向に移動させたり、絞り142を開閉制御する。
【0011】
光学系104は、光軸方向に配列された複数のレンズ(レンズ141a、ズーミングレンズ141b、およびフォーカシングレンズ141c)と、絞り142と、を含む。光学系104は、被写体光を集光し、撮像素子105に出射する。
【0012】
撮像素子105は、光学系104からの被写体光を受光して電気信号に変換する。撮像素子105は、たとえば、XYアドレス方式の固体撮像素子(たとえば、CMOS(Complementary Metal‐Oxide Semiconductor))であってもよく、順次走査方式の固体撮像素子(たとえば、CCD(Charge Coupled Device))であってもよい。
【0013】
撮像素子105の受光面には、複数の受光素子(画素)がマトリクス状に配列されている。そして、撮像素子105の画素には、それぞれが異なる色成分の光を透過させる複数種類のカラーフィルタが所定の色配列(たとえば、ベイヤ配列)に従って配置される。そのため、撮像素子105の各画素は、カラーフィルタでの色分解によって各色成分に対応するアナログの電気信号を出力する。
【0014】
AFE106は、撮像素子105からのアナログの電気信号に対して信号処理を施すアナログフロントエンド回路である。AFE106は、電気信号のゲイン調整、アナログ信号処理(相関二重サンプリング、黒レベル補正など)、A/D変換処理、デジタル信号処理(欠陥画素補正など)を順次実行してRAW画像データを生成し、LSI107に出力する。上述した駆動部103、光学系104、撮像素子105、およびAFE106は、撮像部120を構成する。
【0015】
LSI107は、AFE106からのRAW画像データについて、色補間、ホワイトバランス調整、輪郭強調、ガンマ補正、階調変換などの画像処理や符号化処理、復号処理、圧縮伸張処理、記録処理、再生処理など、特定の処理を実行する集積回路である。LSI107は、具体的には、たとえば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などのPLD(Programmable Logic Device)によって実現してもよい。
【0016】
操作デバイス108は、コマンドやデータを入力する。操作デバイス108としては、たとえば、レリーズボタンを含む各種ボタン、スイッチ、ダイヤル、タッチパネルがある。マイク109は、音声を入力し音声データを生成する。センサ110は、情報を検出するデバイスであり、たとえば、AF(Automatic Focus)センサ、AE(Automatic Exposure)センサ、ジャイロセンサ、加速度センサ、温度センサなどがある。表示デバイス111は、画像データや設定画面を表示する。表示デバイス111には、撮像装置100の背面にある背面モニタと、電子ビューファインダと、がある。通信IF112は、ネットワークと接続し、データを送受信する。スピーカ113は、音声を出力する。
【0017】
レーザ光源114は、被写体に短パルスのレーザ光を照射する。レーザ光源114は、プロセッサ101またはLSI107の制御により、1フレームを撮像する露光時間内に1回以上レーザ光を照射可能である。これにより、撮像装置100は、多重露光撮影が可能になる。
【0018】
なお、プロセッサ101、記憶デバイス102、LSI107、操作デバイス108、マイク109、センサ110、表示デバイス111、通信IF112、スピーカ113、レーザ光源114およびバス115を、画像処理部130と称す。また、撮像装置100から撮像部120を除いた画像処理部130からなる装置を、画像処理装置と称す。
【0019】
また、
図1では、画像処理部130は、撮像装置100の内部に設けたが、画像処理装置は、撮像装置100の外部に存在してもよい。
【0020】
<画像処理装置の機能的構成例>
図2は、画像処理装置の機能的構成例を示すブロック図である。画像処理装置200は、取得部201と、検出部202と、生成部203と、を有する。取得部201、検出部202、および生成部203は、具体的には、たとえば、
図1に示した記憶デバイス102に記憶されたプログラムをプロセッサ101に実行させることにより、または、LSI107により、実現される。
【0021】
取得部201は、被写体を多重露光撮像した多重露光フレームを取得する。具体的には、たとえば、取得部201は、撮像部120の撮影により生成された多重露光フレームを記憶デバイス102から読み込む。動画撮モードの場合、取得部201は、時間的に連続する複数の多重露光フレームを記憶デバイス102から読み込む。
【0022】
なお、撮像装置100は、ある位置からある方向に向けて多重露光撮影する。したがって、多重露光フレームの各々は、同一背景の画像データと、移動により位置が異なる多重露光被写体の画像データと、を含む。
【0023】
検出部202は、多重露光フレーム内の多重露光被写体の動きベクトルを検出する。具体的には、たとえば、検出部202は、記憶デバイス102に記憶されている被写体のテンプレート画像データを読み出す。検出部202は、被写体のテンプレート画像データを用いて多重露光フレームに対しパターンマッチングを実行し、多重露光フレーム内の多重露光被写体の画像データを、被写体を多重露光した画像データとして検出する。
【0024】
また、検出部202は、時間的に連続する2枚の多重露光フレームを比較し、2枚の多重露光フレームの各々から多重露光被写体を検出する。検出部202は、2枚の多重露光フレームの各々から多重露光被写体の位置から、被写体の移動方向を検出する。
【0025】
また、検出部202は、移動方向における被写体の長さと、移動方向における多重露光被写体の長さと、多重露光の露光回数と、に基づいて、1回の露光での被写体の移動距離を検出する。検出部202は、移動方向および移動距離を動きベクトルとして検出する。
【0026】
生成部203は、被写体の画像データと、多重露光フレームの背景の画像データと、動きベクトルと、に基づいて、補間フレームを生成する。補間フレームは、多重露光フレーム間を補間する単露光フレームである。補間フレームには、予測フレームと分離フレームの2種類のフレームがある。
【0027】
予測フレームとは、多重露光フレームの多重露光被写体の位置から被写体が動きベクトルにより移動した移動後の被写体の画像データと、多重露光フレームの背景の画像データと、を合成した単露光フレームである。多重露光フレームの多重露光被写体の画像データのうち、移動後の被写体の画像データと重複しない部分については、生成部203は、背景の画像データのうち当該重複しない部分の周囲の画像データにより補間する。
【0028】
分離フレームとは、多重露光被写体を露光ごとの被写体に分離した単露光フレームである。具体的には、たとえば、分離フレームは、多重露光フレームの多重露光被写体の位置において、露光ごとに分離された被写体と画像データと、多重露光フレームの背景の画像データと、を合成した、露光ごとの単露光フレームである。多重露光フレームの多重露光被写体の画像データのうち、露光時の被写体の画像データと重複しない部分については、生成部203は、背景の画像データのうち当該重複しない部分の周囲の画像データにより補間する。
【0029】
<補間フレームの一例>
図3は、補間フレームの一例を示す説明図である。
図3では、移動する被写体であるバスを多重露光撮影した際に得られた多重露光フレームについて説明する。多重露光フレームF1~FN(Nは1以上の整数)は、多重露光フレームF1から時間的に連続する多重露光フレーム群Fsである。多重露光フレーム群Fsは、あるフレームレートで撮像されたフレーム群である。多重露光フレームF1~FNを区別しない場合は、単に、多重露光フレームFi(iは多重露光フレームFiを一意に特定するイタレーションであり、1≦i≦Nを満たす整数)と称す。
【0030】
多重露光フレームFiは、1フレームの撮影で2回露光した多重露光フレームとする。多重露光フレームFiは、背景の画像データ(以下、単に「背景」)300と、多重露光被写体の画像データ(以下、単に「多重露光被写体」)301―Fiと、を含む画像データである。多重露光被写体301-Fiは、1回目の露光で得られた被写体(バス)の画像データ(以下、単に「被写体」)OBi-1と、2回目の露光で得られた被写体OBi-2と、を含む。
【0031】
多重露光フレームFi+1は、背景300と、多重露光被写体301―Fi+1と、を含む画像データである。多重露光被写体301-Fi+1は、1回目の露光で得られた被写体OBi+1-1と、2回目の露光で得られた被写体OBi+1-2と、を含む。
【0032】
補間フレームXF[i,i+1]は、多重露光フレームFi、Fi+1間を補間するフレームであり、生成部203によって多重露光フレームFiから生成された予測フレームまたは分離フレームである。補間フレームXF[i,i+1]は、背景300と、被写体OB[i,i+1]と、を含む。被写体OB[i,i+1]は、多重露光被写体301-Fiから予測または分離された被写体の画像データである。
【0033】
補間フレームXF[i,i+1]を生成することにより、多重露光フレームFi、Fi+1の間のフレームを取得することができる。また、多重露光フレームFi、Fi+1の間に補間フレームXF[i,i+1]を生成して挿入することにより、多重露光フレーム群Fsの撮像で設定されたフレームレートよりも高速なフレームレートの多重露光フレーム群が得られる。これにより、補間フレームXF[i,i+1]が未挿入な多重露光フレーム群Fsに比べて滑らかな再生動画が得られる。
【0034】
<予測フレームの生成例>
つぎに、
図4~
図7を用いて、補間フレームXF[i,i+1]の一例である予測フレームの生成例について説明する。
【0035】
図4は、予測フレームの生成例1を示す説明図である。画像処理装置200は、多重露光フレームF1、F2と、被写体のテンプレート画像データ(以下、テンプレート画像)TOBと、を用いて、予測フレームPF[1,2]-1を生成する。
【0036】
具体的には、たとえば、検出部202は、記憶デバイス102からテンプレート画像TOBを読み出し、テンプレート画像TOBを用いて多重露光フレームF1に対しパターンマッチングを実行する。これにより、多重露光フレームF1内の多重露光被写体301-F1を、被写体を多重露光した画像データとして検出する。
【0037】
また、検出部202は、時間的に連続する2枚の多重露光フレームF1、F2を比較し、2枚の多重露光フレームF1、F2の各々から多重露光被写体301-F1、301-F2を検出する。検出部202は、2枚の多重露光フレームF1、F2の各々から多重露光被写体301-F1、301-F2の位置から、被写体であるバスの移動方向を検出する。
図4の例では、被写体であるバスが多重露光被写体301-F1の位置から多重露光被写体301-F2の位置へ移動する方向が被写体であるバスの移動方向として検出される。
【0038】
また、検出部202は、移動方向における被写体であるテンプレート画像TOBの長さと、移動方向における多重露光被写体301-F1の長さと、多重露光の露光回数(本例では2回)と、に基づいて、1回の露光での被写体の移動距離を検出する。検出部202は、移動方向および移動距離を動きベクトルmvとして検出する。
【0039】
具体的には、たとえば、移動距離は、下記式(1)により算出される。
【0040】
d=(L-Lt)/(k-1)・・・(1)
【0041】
dは、移動距離である。Lは多重露光被写体301-F1の移動方向の長さである。Ltはテンプレート画像TOBの移動方向の長さである。kは露光回数である。
【0042】
生成部203は、テンプレート画像TOBと、多重露光フレームF1の背景300と、動きベクトルmvと、に基づいて、予測フレームPF[1,2]-1を生成する。予測フレームPF[1,2]-1は、多重露光フレームF1の多重露光被写体301-F1の位置(具体的には、被写体OB1-1,OB1-2のうち移動方向側の被写体OB1-2)から動きベクトルmvにより移動した移動後の被写体OB[1,2]-1と、多重露光フレームF1の背景300と、を合成したフレームである。被写体OB[1,2]-1には、たとえば、テンプレート画像TOBが用いられる。
【0043】
予測フレームPF[1,2]-1において、多重露光フレームF1の多重露光被写体301-F1のうち、移動後の被写体OB[1,2]-1と重複しない部分401については、生成部203は、背景300のうち当該重複しない部分401の周囲の画像データにより補間する。
【0044】
また、画像処理装置200は、予測フレームPF[1,2]-1からさらに被写体が動きベクトル分移動した予測フレームPF[1,2]-2を生成することもできる。この場合、画像処理装置200は、多重露光フレームF2、F3と、テンプレート画像TOBと、を用いて、予測フレームPF[1,2]-2を生成する。この場合、検出部202は、動きベクトルmvを流用してもよく、多重露光フレームF2、F3を用いて新たに動きベクトルmvを検出してもよい。
【0045】
また、生成部203は、テンプレート画像TOBと、多重露光フレームF2の背景300と、動きベクトルmvと、に基づいて、予測フレームPF[1,2]-2を生成する。予測フレームPF[1,2]-2は、予測フレームPF[1,2]-1の被写体OB[1,2]-1の位置から動きベクトルmvにより移動した移動後の被写体OB[1,2]-2と、多重露光フレームF1の背景300と、を合成したフレームである。被写体OB[1,2]-2には、たとえば、テンプレート画像TOBが用いられる。
【0046】
予測フレームPF[1,2]-2において、被写体OB[1,2]-1のうち、移動後の被写体OB[1,2]-2と重複しない部分402については、生成部203は、背景300のうち当該重複しない部分402の周囲の画像データにより補間する。
【0047】
図5は、予測フレームの生成例2を示す説明図である。
図5では、多重露光フレームF1、F2間に、n(nは1以上の整数)枚の予測フレームPF[1,2]-1~PF[1,2]-nが生成された例である。多重露光フレームF1、F2間において、予測フレームPF[1,2]-nは、移動後の被写体が多重露光フレームF2の多重露光被写体301-F2の位置に到達するまで生成可能である。
【0048】
図6は、画像処理装置200による画像処理手順例1を示すフローチャートである。画像処理装置200は、予測フレームの生成対象となる多重露光フレーム群Fsを指定する(ステップS601)。多重露光フレーム群Fsは、ユーザの操作により指定されてもよく、画像処理装置200が、多重露光被写体301-Fiが存在する多重露光フレームFiを指定してもよい。
【0049】
つぎに、画像処理装置200は、多重露光フレームFiを一意に特定するイタレーションiをi=1に設定する(ステップS602)。
【0050】
つぎに、画像処理装置200は、取得部201により多重露光フレームFi,Fi+1を取得し、検出部202により多重露光被写体301-Fiの移動方向を検出する(ステップS603)。
【0051】
つぎに、画像処理装置200は、
図4および
図5に示したように、予測フレーム生成処理を実行する(ステップS604)。生成された予測フレームは記憶デバイス102に格納される。
【0052】
このあと、画像処理装置200は、イタレーションiをインクリメントし(ステップS605)、i=Nであるか否かを判断する(ステップS606)。i=Nでない場合(ステップS606:No)、ステップS603に戻る。一方、i=Nである場合(ステップS606:Yes)、画像処理装置200は、一連の処理を終了する。
【0053】
図7は、
図6に示した予測フレーム生成処理(ステップS604)の詳細な処理手順例を示すフローチャートである。画像処理装置200は、何番目の予測フレームであるかを指定するイタレーションjをj=1に設定する(ステップS701)。つぎに、画像処理装置200は、多重露光フレームFiを生成元フレームに設定する(ステップS702)。
【0054】
つぎに、画像処理装置200は、検出部202により、生成元フレームから生成元被写体を検出する(ステップS703)。生成元被写体は、j=1の場合、多重露光被写体301-Fiである。たとえば、
図4の例では、生成元フレームが多重露光フレームF1であるとすると、検出部202は、生成元被写体として多重露光被写体301-F1を検出する。
【0055】
また、生成元被写体は、j≧2の場合、被写体OB[i,i+1]-jである。たとえば、
図4の例では、生成元フレームが予測フレームPF[1,2]-1であるとすると、検出部202は、生成元被写体として被写体OB[1,2]-1を検出する。
【0056】
つぎに、画像処理装置200は、被写体の動きベクトルmvを検出する(ステップS704)。具体的には、たとえば、検出部202は、
図4に示したように、上記式(1)による被写体の移動距離dを算出して、移動距離dとステップS603で検出された移動方向とを組み合わせて、被写体の動きベクトルmvを生成する(ステップS704)。
【0057】
つぎに、画像処理装置200は、テンプレート画像TOBと動きベクトルmvとを用いて、生成元被写体からの移動後の被写体OB[i,i+1]-jとその位置を決定する(ステップS705)。
【0058】
つぎに、画像処理装置200は、移動後の被写体OB[i,i+1]-jの位置が、フレームFi+1の多重露光被写体301-Fi+1の位置に到達したか否かを判断する(ステップS706)。移動後の被写体OB[i,i+1]-jの位置が、フレームFi+1の多重露光被写体301-Fi+1の位置に到達していない場合(ステップS706:No)、画像処理装置200は、移動後の被写体OB[i,i+1]-jと背景300とを合成して、予測フレームPF[i,i+1]-jを生成して、多重露光フレームFi、Fi+1の間に挿入し、生成元フレームに設定する(ステップS707)。そして、画像処理装置200は、イタレーションjをインクリメントして(ステップS708)、ステップS703に戻る。
【0059】
一方、ステップS706において、移動後の被写体OB[i,i+1]-jの位置が、フレームFi+1の多重露光被写体301-Fi+1の位置に到達した場合(ステップS706:Yes)、画像処理装置200は、予測フレーム生成処理(ステップS604)を終了し、ステップS605に移行する。
【0060】
このように、予測フレームPF[i,i+1]-jを生成することにより、多重露光フレームFi、Fi+1の間のフレームを取得することができる。また、多重露光フレームFi、Fi+1の間に予測フレームPF[i,i+1]-jを生成して多重露光フレームFi、Fi+1の間に挿入することにより、多重露光フレーム群Fsの撮像で設定されたフレームレートよりも高速なフレームレートの多重露光フレーム群が得られる。これにより、予測フレームPF[i,i+1]-jが未挿入な多重露光フレーム群Fsに比べて滑らかな再生動画が得られる。
【0061】
なお、
図6および
図7の例では、画像処理装置200は、動きベクトルmvの長さ単位で予測フレームPF[i,i+1]-jを生成したが、動きベクトルmvの長さの整数倍の単位で予測フレームPF[i,i+1]-jを生成してもよい。また、可能な限り予測フレームPF[i,i+1]-jを生成したが、画像処理装置200は、予測フレームPF[i,i+1]-jの生成数の上限を事前に設定してもよい。
【0062】
<分離フレームの生成例1>
つぎに、
図8~
図11を用いて、補間フレームXF[i,i+1]の一例である分離フレームの生成例1について説明する。
【0063】
図8は、分離フレームの生成例1-1を示す説明図である。画像処理装置200は、多重露光フレームF1と、テンプレート画像TOBと、を用いて、分離フレームPF[1,2]-1、PF[1,2]-2を生成する。
【0064】
具体的には、たとえば、検出部202は、
図4で説明した場合と同様に、多重露光フレームF1内の多重露光被写体301-F1を、被写体を多重露光した画像データとして検出する。また、検出部202は、2枚の多重露光フレームF1、F2の各々から多重露光被写体301-F1、301-F2の位置から、被写体であるバスの移動方向を検出する。
【0065】
また、検出部202は、多重露光フレームF1の多重露光被写体301―F1から、検出した移動方向および露光回数kに基づいて、露光ごとの被写体OB[i,i+1]-1,…,OB[i,i+1]-kとそれらの位置を決定する。
図8の場合は、露光回数k=2であるため、検出部202は、移動方向に存在する露光ごとの被写体OB[1,2]-1,OB[1,2]-2とそれらの位置を決定する。
【0066】
生成部203は、露光ごとの被写体OB[i,i+1]-1,…,OB[i,i+1]-kと背景300とを用いて、露光ごとに多重露光被写体301―Fiを分離した分離フレームSF[i,i+1]-1,…,SF[i,i+1]-kを生成する。
図8の場合は、露光回数k=2であるため、生成部203は、露光ごとの分離フレームSF[1,2]-1,SF[1,2]-2を生成する。
【0067】
図9は、分離フレームの生成例1-2を示す説明図である。画像処理装置200は、多重露光フレームF2と、テンプレート画像TOBと、を用いて、分離フレームPF[2,3]-1、PF[2,3]-2を生成する。
【0068】
具体的には、たとえば、検出部202は、
図4で説明した場合と同様に、多重露光フレームF2内の多重露光被写体301-F2を、被写体を多重露光した画像データとして検出する。また、検出部202は、2枚の多重露光フレームF2、F3の各々から多重露光被写体301-F2、301-F3の位置から、被写体であるバスの移動方向を検出する。
【0069】
また、検出部202は、多重露光フレームF2の多重露光被写体301―F2から、検出した移動方向および露光回数kに基づいて、露光ごとの被写体OB[i,i+1]-1,…,OB[i,i+1]-kとそれらの位置を決定する。
図9の場合は、露光回数k=2であるため、検出部202は、露光ごとの被写体OB[2,3]-1,OB[2,3]-2とそれらの位置を決定する。
【0070】
生成部203は、露光ごとの被写体OB[i,i+1]-1,…,OB[i,i+1]-kと背景300とを用いて、露光ごとに多重露光被写体301―Fiを分離した分離フレームSF[i,i+1]-1,…,SF[i,i+1]-kを生成する。
図9の場合は、露光回数k=2であるため、生成部203は、露光ごとの分離フレームSF[2,3]-1,SF[2,3]-2を生成する。
【0071】
図10は、画像処理装置200による画像処理手順例2を示すフローチャートである。
図6と共通部分については同一ステップ番号を付し、その説明を省略する。ステップS603のあと、画像処理装置200は、
図8および
図9に示したように、分離フレーム生成処理を実行し(ステップS1004)、ステップS605に移行する。生成された分離フレームは記憶デバイス102に格納される。
【0072】
図11は、分離フレーム生成処理(ステップS1004)の詳細な処理手順例を示すフローチャートである。画像処理装置200は、検出部202により、
図8および
図9に示したように、多重露光フレームFiの多重露光被写体301-Fiから、露光ごとの被写体OB[i,i+1]-1~OB[i,i+1]-kとそれらの位置を検出する(ステップS1101)。
【0073】
つぎに、画像処理装置200は、生成部203により、
図8および
図9に示したように、k個の分離フレームFi-1~Fi-kを生成して、多重露光フレームFi、Fi+1の間に挿入する(ステップS1102)。そして、ステップS1005に移行する。
【0074】
このように、k個の分離フレームFi-1~Fi-kを生成することにより、多重露光フレームFi、Fi+1の間のフレームを取得することができる。また、多重露光フレームFi、Fi+1の間にk個の分離フレームFi-1~Fi-kを生成して多重露光フレームFi、Fi+1の間に挿入することにより、多重露光フレーム群Fsの撮像で設定されたフレームレートよりも高速なフレームレートの多重露光フレーム群が得られる。これにより、k個の分離フレームFi-1~Fi-kが未挿入な多重露光フレーム群Fsに比べて滑らかな再生動画が得られる。
【0075】
k個の分離フレームFi-1~Fi-kを生成して多重露光フレームFi、Fi+1の間に挿入する場合、画像処理装置200は、分離元となる多重露光フレームFiを多重露光フレーム群Fsから削除してもよい。これにより、多重露光フレームFiと、k個の分離フレームFi-1~Fi-kとの時間的な重複を解消することができる。
【0076】
<分離フレームの生成例2>
つぎに、分離フレームの生成例2について説明する。分離フレームの生成例2では、撮像装置100が1多重露光フレームの撮影の際に露光時間内で色別の露光を時分割で行って多重露光撮影した場合の多重露光フレーム群を用いて、分離フレームを生成する例である。ここでは、
図8~
図11に示した分離フレームの生成例1との相違点を中心に説明するため、共通部分については説明を省略する。
【0077】
図12は、分離フレームの生成例2-1を示す説明図である。多重露光フレームF1は、露光時間内に、たとえば、レーザ光源114が赤色、緑色、青色の順に発光して撮像された多重露光フレームである。赤色、緑色、青色の発光順は、異なる順序でもよい。
【0078】
多重露光フレームF1内の多重露光被写体1201-F1は、赤色露光で撮像された被写体(以下、赤色被写体)OB1-r、緑色露光で撮像された被写体(以下、緑色被写体)OB1-g、青色露光で撮像された被写体(以下、青色被写体)OB1-bが露光タイミングがずれて重畳した画像データである。
【0079】
具体的には、たとえば、画像処理装置200は、検出部202により、動きベクトルmvにより、赤色、緑色、青色の露光ごとの被写体の位置を検出し、赤色被写体OB1-rの位置であれば、当該位置における赤色の輝度情報のみを赤色被写体OB1-rとして抽出する。緑色被写体OB1-gおよび青色被写体OB1-bについても、同様に抽出される。
【0080】
赤色被写体OB1-rは、赤色の輝度情報のみの画像データであり、緑色被写体OB1-gは、緑色の輝度情報のみの画像データであり、青色被写体OB1-bは、青色の輝度情報のみの画像データであり、背景300は、赤色、緑色、青色の輝度情報により生成された画像データである。多重露光被写体1201-F1は、分離フレーム生成処理(ステップS1004)により、分離フレームSF1-r、SF1-g、SF1-bに分離される。
【0081】
分離フレームSF1-rは、赤色被写体OB1-rと背景300とが合成されたフレームであり、分離フレームSF1-gは、緑色被写体OB1-gと背景300とが合成されたフレームであり、分離フレームSF1-bは、青色被写体OB1-bと背景300とが合成されたフレームである。
【0082】
図13は、分離フレームの生成例2-2を示す説明図である。画像処理装置200は、生成部203により、分離フレームSF1-rと、分離フレームSF1-g内の緑色被写体OB1-gと、分離フレームSF1-b内の青色被写体OB1-bと、を合成して、赤色露光時における被写体OB1-1をRGB画像データとして生成する。そして、画像処理装置200は、生成部203により、被写体OB1-1と背景300とを合成して、赤色露光時における分離フレームSF1-1を生成する。
【0083】
同様に、画像処理装置200は、生成部203により、分離フレームSF1-gと、分離フレームSF1-r内の赤色被写体OB1-rと、分離フレームSF1-b内の青色被写体OB1-bと、を合成して、緑色露光時における被写体OB1-2をRGB画像データとして生成する。そして、画像処理装置200は、生成部203により、被写体OB1-2と背景300とを合成して、緑色露光時における分離フレームSF1-2を生成する。
【0084】
同様に、画像処理装置200は、生成部203により、分離フレームSF1-bと、分離フレームSF1-r内の赤色被写体OB1-rと、分離フレームSF1-g内の緑色被写体OB1-gと、を合成して、青色露光時における被写体OB1-3をRGB画像データとして生成する。そして、画像処理装置200は、生成部203により、被写体OB1-3と背景300とを合成して、青色露光時における分離フレームSF1-3を生成する。
【0085】
このように、色別に多重露光した多重露光フレーム群Fsについても、画像処理装置200は、分離フレームを生成することができる。
【0086】
なお、上述した説明では、画像処理装置200が、予測フレーム生成処理(ステップS604)と分離フレーム生成処理(ステップS1004)とを別々に実行した例について説明したが、多重露光フレーム群Fsに対し予測フレーム生成処理(ステップS604)および分離フレーム生成処理(ステップS1004)の両方を適用してもよい。
【0087】
また、上述した例では、被写体の一例としてバスを用いて説明したが、移動体であればバス以外でもよい。たとえば、順次搬送されてくる複数の同種の検査対象物品を被写体として多重露光撮像した多重露光フレーム群Fsについて、画像処理装置200は、補間フレームを生成してもよい。この場合、テンプレート画像TOBは、検査対象物品の画像データとなる。これにより、多重露光フレーム群Fsの撮像時に設定されたフレームレートよりも高速なフレームレートにおけるフレームを抽出することが可能になり、検品作業の高精度化を図ることができる。
【0088】
なお、本発明は上記の内容に限定されるものではなく、これらを任意に組み合わせたものであっても良い。また、本発明の技術的思想の範囲で考えられるその他の態様も本発明の範囲に含まれる。
【符号の説明】
【0089】
100 撮像装置、101 プロセッサ、102 記憶デバイス、114 レーザ光源、120 撮像部、130 画像処理部、200 画像処理装置、201 取得部、202 検出部、203 生成部