JP2019213164A - 画像処理装置、画像処理方法 - Google Patents

画像処理装置、画像処理方法 Download PDF

Info

Publication number
JP2019213164A
JP2019213164A JP2018110507A JP2018110507A JP2019213164A JP 2019213164 A JP2019213164 A JP 2019213164A JP 2018110507 A JP2018110507 A JP 2018110507A JP 2018110507 A JP2018110507 A JP 2018110507A JP 2019213164 A JP2019213164 A JP 2019213164A
Authority
JP
Japan
Prior art keywords
pixel
image
frames
image processing
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018110507A
Other languages
English (en)
Inventor
香織 田谷
Kaori Taya
香織 田谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018110507A priority Critical patent/JP2019213164A/ja
Priority to US16/415,318 priority patent/US11010882B2/en
Publication of JP2019213164A publication Critical patent/JP2019213164A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/76Circuitry for compensating brightness variation in the scene by influencing the image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/95Computational photography systems, e.g. light-field imaging systems
    • H04N23/951Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2625Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of images from a temporal image sequence, e.g. for a stroboscopic effect
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/265Mixing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20216Image averaging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

【課題】動体の軌跡を途切れさせずに複数の画像から1枚の画像を生成するための技術を提供する。【解決手段】画像処理装置は、複数フレームの撮像画像から選択した画素を用いて1枚の合成画像を生成する。複数フレームの撮像画像のうち、少なくとも2つのフレーム間における移動ベクトルを算出する。合成画像の画素に対応する移動ベクトルに基づいて、該合成画像を補正する。【選択図】図3

Description

本発明は、複数の画像から1枚の画像を生成するための技術に関するものである。
近年、連写して得た画像や動画像の各フレームの画像を位置合わせして合成する技術が発展してきている。この技術は、例えば、星空の星が動く軌跡を連写して得た複数枚の画像を比較明合成することで1枚の画像を作成したり、動画像の複数フレームの画像を足し合わせることで流し撮りのような画像を作成する技術である。
特許文献1には、複数の画像を比較明合成した時に発生する、明るい光の軌跡の途切れを低減する技術が開示されている。この技術によれば、複数の画像を加算平均して光跡の重複部分を作った画像を比較明合成することで、比較明合成に起因する途切れを低減することができる。
特開2015−233238号公報
しかしながら、特許文献1に記載の技術では、フレーム間に非露光期間があるため、複数の画像を合成すると動体の軌跡が途切れてしまうという問題がある。本発明では、動体の軌跡を途切れさせずに複数の画像から1枚の画像を生成するための技術を提供する。
本発明の一様態は、複数フレームの撮像画像から選択した画素を用いて1枚の合成画像を生成する生成手段と、前記複数フレームの撮像画像のうち、少なくとも2つのフレーム間における移動ベクトルを算出する算出手段と、前記合成画像の画素に対応する移動ベクトルに基づいて、該合成画像を補正する補正手段とを備えることを特徴とする。
本発明の構成によれば、動体の軌跡を途切れさせずに複数の画像から1枚の画像を生成することができる。
コンピュータ装置1000のハードウェア構成例を示すブロック図。 画像処理装置の機能構成例を示すブロック図。 画像処理装置100が行う処理のフローチャート。 撮像画像、動体マップ、合成画像、合成動体マップ、補正後合成画像の一例を示す図。 形態1,2を説明する図。 形態3を説明する図。 形態5を説明する図。 画像処理装置の機能構成例を示すブロック図。 画像処理装置1002が行う処理のフローチャート。 撮像画像、動体マップ、合成画像、合成動体マップ、補正後合成画像、平均画像、ブレンド合成画像の一例を示す図。 α値を変更したときのブレンド合成画像の一例を示す図。
以下、添付図面を参照し、本発明の実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施形態の1つである。
[第1の実施形態]
本実施形態では、被写体(対象物)を撮像することで得られる複数フレームの撮像画像から1枚の画像を合成画像として生成する(複数フレームの撮像画像を合成して1枚の合成画像を生成する)。被写体の撮像画像は、該被写体の動画像を構成する各フレームの画像であっても良いし、該被写体を連写することで得られる各フレームの画像であっても良い。ここで、被写体の撮像画像が、該被写体の動画像を構成する各フレームの画像であっても、該被写体を連写することで得られる各フレームの画像であっても、フレーム間には非露光期間が存在する。然るに、このような複数フレームの撮像画像を合成すると、つなぎ目での途切れが見えてしまう。本実施形態では、このような途切れを低減するべく、生成した合成画像を補正する。
以下では、取り扱う画像は何れも、各画素の画素値の色成分がRGBである画像(各画素の画素値が、R成分の画素値、G成分の画素値、B成分の画素値を含む画像)であるとする。しかし、以下で取り扱う画像の各画素の画素値の色成分はRGBに限らず、他の色成分(例えば、YUV、XYZ、Lab)であっても良い。
本実施形態に係る画像処理装置の機能構成例を図2に示す。図2に示した機能構成を有する画像処理装置100が複数フレームの撮像画像から1枚の合成画像を生成するために行う処理について、図3のフローチャートに従って説明する。
ステップS301では、入力部201は、同一の被写体を撮像した複数フレームの撮像画像を取得する。複数フレームの撮像画像の取得元については特定の取得元に限らない。例えば入力部201は、同一の被写体の動画像を撮像している若しくは該同一の被写体を連写している撮像装置から出力される各フレームの撮像画像を取得するようにしても良い。また入力部201は、予め画像処理装置100の内部若しくは外部のメモリ装置に格納されている各フレームの撮像画像を該メモリ装置から取得するようにしても良い。なお、それぞれの撮像画像には、該撮像画像に固有の識別情報が添付されているものとするが、撮像画像の識別情報は該撮像画像に添付されていることに限らず、撮像画像と対応付けられていれば良い。
ステップS301で取得した撮像画像の一例を図4(A)に示す。図4(A)に示した撮像画像401A、401B、401Cは、ステップS301で取得した連続する3フレームの撮像画像の一例であり、暗闇で光源が移動するような被写体を撮像することで得られる、連続する3フレームの撮像画像である。
ステップS302では、抽出部202は、ステップS301で取得したそれぞれの撮像画像から、処理対象となる画像領域(処理対象領域)を抽出する。処理対象領域は、後述する画像合成の内容に応じて決まる。
例えば、後述する画像合成として、複数の撮像画像の着目画素位置(x、y)の画素のうち最大の輝度値を有する画素を選択して合成画像における着目画素位置(x、y)の画素とする合成(比較明合成)を行うとする。この場合、ステップS302では、抽出部202は、ステップS301で取得したそれぞれの撮像画像について、該撮像画像において閾値以上の輝度値を有する画素によって構成される領域を処理対象領域として抽出する。
また例えば、後述する画像合成として、複数の撮像画像の着目画素位置(x、y)の画素のうち最小の輝度値を有する画素を選択して合成画像における着目画素位置(x、y)の画素とする合成(比較暗合成)を行うとする。この場合、ステップS302では、抽出部202は、ステップS301で取得したそれぞれの撮像画像について、該撮像画像において閾値未満の輝度値を有する画素によって構成される領域を処理対象領域として抽出する。
なお、ステップS302における処理の目的は、撮像画像において処理対象領域を特定することにあるため、同様の目的を達成できるのであれば、他の処理によって該目的を達成するようにしても良い。例えば、抽出部202は、撮像画像において処理対象領域を構成する画素にはマスク値「1」、処理対象領域を構成しない画素にはマスク値「0」を割り当てることで、各画素のマスク値を保持する2値画像を生成しても良い。
また、撮像画像における処理対象領域は、撮像画像の部分領域であることに限らず、撮像画像の全体領域であっても良く、その場合、ステップS302における処理は省略することができる。
ステップS303では、算出部203は、ステップS301で取得した各フレームの撮像画像について、隣接するフレーム間における処理対象領域の移動ベクトルを画素ごとに保持する動体マップを生成する。例えば算出部203は、フレームAの撮像画像(撮像画像A)と、フレームAと隣接するフレームB(フレームAと隣接する前後フレームの何れか一方)の撮像画像(撮像画像B)と、の間における処理対象領域の移動ベクトルを画素ごとに保持する動体マップを、「撮像画像Aに対する動体マップ」として生成する。
例えば、撮像画像A中の画素位置(x、y)における画素が処理対象領域を構成する画素であり、該画素がフレームAの直前のフレームBの撮像画像B中の画素位置(x’,y’)から移動した画素である場合、撮像画像Aの動体マップ中の位置(x,y)には(Vx,Vy)=(x−x’,y−y’)が登録される。また例えば、撮像画像A中の画素位置(x、y)における画素が処理対象領域を構成する画素であり、該画素がフレームAの直後のフレームBの撮像画像B中の画素位置(x’,y’)に移動している場合、撮像画像Aの動体マップ中の位置(x,y)には(Vx,Vy)=(x’−x,y’−y)が登録される。なお、撮像画像A中の画素位置(x、y)における画素が処理対象領域を構成する画素ではない場合には、撮像画像Aの動体マップ中の位置(x,y)には(Vx,Vy)=(0,0)等の値が登録される。
図4(A)の撮像画像に対応する動体マップの一例を図4(B)に示す。図4(B)の動体マップ402A,402B,402Cはそれぞれ、図4(A)の撮像画像401A、401B、401Cに対応する動体マップの一例である。
ここで、非露光期間を効果的に埋めるためには、算出部203は、(Vx,Vy)の代わりに以下の式で表される(Vx’,Vy’)を動体マップ中の位置(x、y)に登録するようにしても良い。
(V’x,V’y)=((1−Tv×fps)×Vx,(1−Tv×fps)×Vy)
ここで、Tvは複数フレームの撮像画像の撮像時における露光時間[sec]、fpsは複数フレームの撮像画像のフレームレート(取得周波数:撮像画像間の時間差の逆数)[fps,frame/sec]である。たとえば、露光時間Tv=1/60[sec]で、フレームレートfps=30[fps]の場合、(Vx’,Vy’)は以下の式で得られる。
(V’x,V’y)=((1−30/60)×Vx,(1−30/60)×Vy)=(0.5×Vx,0.5×Vy)
つまり、(Vx’,Vy’)は(Vx,Vy)を露光時間及びフレームレートに基づいて修正したものである。以下では、動体マップ中の位置(x,y)に登録したものが(Vx,Vy)であっても(Vx’,Vy’)であっても、(Vx,Vy)と表記する。
ステップS304では、生成部204は、ステップS301で取得した複数フレームの撮像画像から選択した画素を用いて1枚の合成画像を生成する(画像合成)。画像合成には上記の通り、比較明合成や比較暗合成などがある。図4(C)の403は、図4(A)の撮像画像401A、401B,401Cを用いて比較明合成を行うことで得られる合成画像の一例である。合成画像403は「撮像画像401Aの処理対象領域から選択された画素の領域」(領域A)、「撮像画像401Bの処理対象領域から選択された画素の領域」(領域B)、「撮像画像401Cの処理対象領域から選択された画素の領域」(領域C)を有する。また生成部204は、合成画像の各画素に対し、該画素の選択もとの撮像画像の識別情報を対応付ける。
ステップS305では、合成部205は、合成画像を構成する各画素に対応付けられた識別情報に対応する撮像画像の動体マップから、合成画像に対応する動体マップを合成動体マップとして生成する。例えば、合成部205は、合成画像中の画素位置(s、t)における画素に対応付けられている識別情報に対応する撮像画像の動体マップ中の位置(s、t)における要素(Vs,Vt)を、合成動体マップ中の位置(s、t)に登録する。
図4(C)の合成動体マップ404は、合成画像403に対応する合成動体マップの一例である。合成動体マップ404は、動体マップ402Aにおいて領域Aに対応する部分(斜線部分)、動体マップ402Bにおいて領域Bに対応する部分(斜線部分)、動体マップ402Cにおいて領域Cに対応する部分(斜線部分)、を有する。
ステップS306では、補正部206は、ステップS304で生成した合成画像に対して、ステップS305で生成した合成動体マップを用いた画像補正処理を行うことで、該合成画像を補正した補正後合成画像を生成する。ステップS305で生成した合成動体マップを用いた画像補正処理には様々な処理があり、以下では幾つかの例について説明する。
<単方向の動体マップを使った画像補正処理(形態1)>
図5(B)は合成画像を示しており、以下では合成画像中の画素501(画素位置は(xA,yA))を処理対象画素とし、該処理対象画素に対する画像補正処理について説明する。図5(A)は、図5(B)に示した合成画像に対応する合成動体マップを表しており、合成動体マップ中の位置(xA,yA)における要素502として移動ベクトルVA(Vx,Vy)が登録されているものとする。ここでは具体例を挙げて説明するために、(Vx,Vy)=(−3,3)とする。
この場合、補正部206は先ず、合成画像中の画素位置(x,y)=(xA+α,yA+Round(α×Vy/Vx))における画素を特定する(|Vx|≧|Vy|の場合)。ここで、αはVxと同符号で0≦|α|≦|Vx|を満たす整数、Round(x)はxに最も近い整数を表す。図5(B)の場合、画素501の画素位置から移動ベクトルVAの方向に移動ベクトルVAの大きさだけ離間した位置と、画素501の画素位置と、を結ぶ線分が通過する画素(画素501、画素503、画素504、画素505)を特定する。図5(B)においてA,B,C,Dはそれぞれ、画素501の画素値、画素503の画素値、画素504の画素値、画素505の画素値、である。
もし、|Vx|<|Vy|の場合には、補正部206は、合成画像中の画素位置(x,y)=(xA+Round(β×Vx/Vy),yA+β)における画素を特定する。ここで、βはVyと同符号で0≦|β|≦|Vy|を満たす整数である。
そして補正部206は、ステップS305における画像合成が比較明合成であった場合には、画素501の画素値AをA’=Max(A,B,C,D)を満たすA’に更新する。以下、Max()は、()内の要素のうち最大の値を返す関数である。
補正部206は、このような画像補正処理を合成画像を構成する各画素について行うことで、該合成画像を補正する。図5(C)は、図5(B)の画素501,503,504,505のそれぞれに対して上記の画像補正処理を行った結果、画素値A,B,C,Dがそれぞれ画素値A’,B’,C’,D’に更新された結果を示している。図4(C)の合成画像403に対して上記の(形態1)の画像補正処理を行うことで、図4(C)の「途切れた光跡が繋がっている補正後合成画像405」が得られる。
<単方向の動体マップを使った画像補正処理(形態2)>
(形態1)の画像補正処理は、移動ベクトル上にある画素の画素値に基づいて処理対象画素の画素値を更新していたが、(形態2)の画像補正処理では、移動ベクトル上にある画素(処理対象画素を除く)の画素値を、処理対象画素の画素値に基づいて更新する。
例えば、図5(B)、(C)の例では、B’=Max(A,B),C’=Max(A,C),D’=Max(A,D)とする。この処理では非露光期間が長く開いた場合でも途切れを繋げることが可能になる。
<双方向の動体マップを使った画像補正処理(形態3)>
上記の例では算出部203は、フレームAの撮像画像(撮像画像A)に対する動体マップとして、撮像画像Aと、フレームAと隣接する前後フレームの何れか一方の撮像画像と、の間における動体マップを生成した。しかし算出部203は、撮像画像Aに対する動体マップとして、撮像画像AとフレームAと隣接する前フレームの撮像画像との間における動体マップ、撮像画像AとフレームAと隣接する後フレームの撮像画像との間における動体マップ、の2つを生成しても良い。以下では、「撮像画像Aと、フレームAと隣接する前フレームの撮像画像と、の間における動体マップ」を前動体マップ、「撮像画像Aと、フレームAと隣接する後フレームの撮像画像と、の間における動体マップ」を後動体マップと称する。前動体マップ及び後動体マップの生成方法については第1の実施形態にて説明した通りである。
そして合成部205は、上記の合成動体マップの生成と同様の方法でもって、それぞれの撮像画像に対する前動体マップを合成した前合成動体マップ、それぞれの撮像画像に対する後動体マップを合成した後合成動体マップ、を生成する。
前合成動体マップ及び後合成動体マップを用いて合成画像の画像補正処理を行うことで、例えば、円運動のように曲がった軌跡もより自然に補正することができる。補正部206が前合成動体マップ及び後合成動体マップを用いて行う合成画像の画像補正処理について図6を例に取り説明する。
図6(B)は合成画像を示しており、画素601(画素値はA、画素位置は(xA,yA))を処理対象画素とする。また、図6(B)に示す如く、画素604の画素値はB、画素605の画素値はC、画素606の画素値はD、画素607の画素値はE、である。
また、図6(A)の上側には、図6(B)の合成画像の前合成動体マップを示しており、画素501の(前フレームからの)移動ベクトルV1Aは、前合成動体マップにおける位置(xA,yA)に要素602として登録されている。図6(A)の下側には、図6(B)の合成画像の後合成動体マップを示しており、画素501の(後フレームへの)移動ベクトルV2Aは、後合成動体マップにおける位置(xA,yA)に要素603として登録されている。以下では具体的な説明を行うために、V1A=(Vx,Vy)=(−4,4)、V2A=(Vx,Vy)=(4,0)とする。
この場合、前方向、後方向に移動ベクトルの半分ずつ処理すれば良いので、V1A,V2Aのそれぞれの大きさを半分にして、0.5×V1A=(Vx,Vy)=(−2,2)、0.5×V2A=(Vx,Vy)=(2,0)とする。そして0.5×V1A=(Vx,Vy)=(−2,2)を用いて合成画像中の画素位置(x,y)=(xA+α,yA+Round(α×Vy/Vx))(|Vx|<|Vy|の場合、(xA+Round(β×Vx/Vy),yA+β))における画素を特定する。同様に0.5×V2A=(Vx,Vy)=(2,0)を用いて合成画像中の画素位置(x,y)=(xA+α,yA+Round(α×Vy/Vx))(|Vx|<|Vy|の場合、(xA+Round(β×Vx/Vy),yA+β))における画素を特定する。その結果、図6(B)に示す如く、移動ベクトル(0.5×V1A)上の画素(画素604,605)、移動ベクトル(0.5×V2A)上の画素(画素606,607)を特定することができる。そして、画像合成が比較明合成であった場合には、画素601の画素値AをA’=Max(A,B,C,D,E)を満たすA’に更新する。
補正部206は、このような画像補正処理を合成画像を構成する各画素について行うことで、該合成画像を補正する。図6(C)は、図6(B)の画素601,604,605,606,607のそれぞれに対して上記の画像補正処理を行った結果、画素値A,B,C,D,Eがそれぞれ画素値A’,B’,C’,D’,E’に更新された結果を示している。図4(C)の合成画像403に対して上記の(形態3)の画像補正処理を行うことで、図4(C)の「途切れた光跡が繋がっている補正後合成画像405」が得られる。形態3では、光跡の動きが当直直線運動ではなく加速度運動をしている場合に、単方向処理よりもつなぎ目を目立たなくさせる効果がある。
<双方向の動体マップを使った画像補正処理(形態4)>
(形態3)の画像補正処理は、移動ベクトル上にある画素の画素値に基づいて処理対象画素の画素値を更新していたが、(形態4)の画像補正処理では、移動ベクトル上にある画素(処理対象画素を除く)の画素値を、処理対象画素の画素値に基づいて更新する。
例えば、図6(B)、(C)の例では、B’=Max(A,B),C’=Max(A,C),D’=Max(A,D)、E’=Max(A,E)とする。この処理では非露光期間が長く開いた場合でも途切れを繋げることが可能になる。
<小数精度の画素位置を考慮した画像補正処理(形態5)>
上記の例では、合成画像において移動ベクトルに基づく線分が通過する画素を特定していた。しかし、線分は画素の中心位置近傍を通過する場合にもあれば、画素の一部を通過する場合もあり、また、線分の端部が位置する画素の場合、線分は該画素の一部しか通らない。
そこで本実施形態では、補正部206は、合成画像において移動ベクトルに基づく線分が通過する画素を特定する場合には、先ず、合成画像において以下の式に従って得られる画素位置(x,y)における画素を特定する(|Vx|≧|Vy|の場合)。
(x,y)=(xA+α,yA+Floor(αVy/Vx)) 若しくは
(x、y)=(xA+α,yA+Ceil(αVy/Vx))
なお、補正部206は、|Vx|<|Vy|の場合には、合成画像において以下の式に従って得られる画素位置(x,y)における画素を特定する。
(x,y)=(xA+Floor(βVx/Vy),yA+β) 若しくは
(x、y)=(xA+Ceil(βVx/Vy),yA+β)
そして補正部206は、特定した各画素の画素値に対して、該画素と線分との間の距離に応じた重み付けを行い、該重み付けを行った画素値に基づいて、処理対象画素の画素値を決定する。本形態における画像補正処理について図7に示す具体例を挙げて説明する。
図7(B)は合成画像を示しており、以下では合成画像中の画素701(画素位置は(xA,yA))を処理対象画素とし、該処理対象画素に対する画像補正処理について説明する。図7(A)は、図7(B)に示した合成画像に対応する合成動体マップを表しており、合成動体マップ中の位置(xA,yA)における要素702として移動ベクトルVA(Vx,Vy)が登録されているものとする。ここでは具体例を挙げて説明するために、(Vx,Vy)=(−2.5,1.5)とする。補正部206は上記の式に従って画素の特定処理を行うことで、画素703a〜703f(それぞれ画素値がB1,B2,C1,C2,D1,D2)を特定する。
そして補正部206は、ステップS305の画像合成が比較明合成であった場合、画素701の画素値AをA’=Max(b×B1+(1−b)×B2,c×C1+(1−c)×C2,α×(d×D1+(1−d)×D2))を満たすA’に更新する。
ここで、b、c、dはそれぞれ、画素値に対する重み値であり、図7の場合は、画素と線分との間の縦方向の距離が小さいほど大きくなり、画素と線分との間の縦方向の距離が大きいほど小さくなる。図7の場合は、b=0.6、c=0.2、d=0.8、α=|−2.5|−|−2.0|=0.5である。ここで、D1、D2は通過する線分の長さが1以下なので、重みαがかけている。このように設定すれば斜めの光跡の補正処理を行ったときのギザギザが低減できる。なお、線分との距離に応じた重み値の計算方法は特定の計算方向に限らない。
<防振との組み合わせをする場合>
画像に対して電子防振処理を行う場合、電子防振後の画像を入力として処理を行えばよい。また、算出部203の結果を用いて防振を行う場合は、動体マップに基づいた電子防振後の画像を生成部204で合成し、動体マップは防振後の画像同士の動体マップになるよう防振分を差し引く変換をすれば良い。
本実施形態では主に比較明合成について例に挙げて説明したが、この処理はMaxをMinに変えると比較暗合成にも適用できる。また、Maxの代わりにMedianなど、範囲内の画素値の1つを選択する処理に適用しても良い。
また、補正部206による補正後合成画像の出力先については特定の出力先に限らず、例えば、画像処理装置の内部若しくは外部のメモリを出力先としても良いし、表示装置、投影装置を出力先としても良いし、印刷機能を有する装置を出力先としても良い。
また、本実施形態では、ステップS305で生成した合成動体マップを用いた画像補正処理として幾つかの形態を説明したが、これらの形態は一例であり、適宜変形/変更しても良い。また、これらの形態はその一部若しくは全部を適宜組み合わせても構わないし、選択的に使用しても良い。
[第2の実施形態]
以下では第1の実施形態との差分について説明し、以下で特に触れない限りは第1の実施形態と同様であるものとする。本実施形態では、第1の実施形態に係る処理によって生成された補正後合成画像を用いて透明度を調整する。
上述した第1の実施形態を夜景画像の比較明合成に用いた場合、途切れた動体の軌跡を繋げることができる。しかし、実際に同じ場面で長秒の露光を行うと、動体の軌跡には後ろの背景が透けて半透明に映るのに対して、第1の実施形態にて生成される補正後合成画像では軌跡の部分が不透明になる。そこで本実施形態では、複数フレームの撮像画像の平均画像と補正後合成画像とをαブレンドすることで、補正後合成画像における動体の軌跡の透明度を調整することを可能にする。
本実施形態に係る画像処理装置の機能構成例について、図8のブロック図を用いて説明する。図8において、図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。図8に示した画像処理装置1002の構成は、図2に示した構成に、逆γ変換部802、平均部803、αブレンド部809、γ変換部810を加えたものである。本実施形態では主に、逆γ変換部802及びγ変換部810によって、第1の実施形態に係る処理によって生成される補正後合成画像における光の強さを調整し、αブレンド部809で透明度を調整する。画像処理装置1002による補正後合成画像の生成処理について、同処理のフローチャートを示す図9に従って説明する。
ステップS901では、入力部201は上記のステップS301と同様に、同一の被写体を撮像した複数フレームの撮像画像を取得する。ステップS901で取得した撮像画像の一例を図10(A)に示す。図10(A)に示した撮像画像1001A、1001B、1001Cは、ステップS901で取得した連続する3フレームの撮像画像の一例である。図10(A)に示した撮像画像1001A、1001B、1001Cは、暗闇で光源が移動するような被写体(移動する光源の背後に構造物がある例)を撮像することで得られる、連続する3フレームの撮像画像である。
ステップS902では、逆γ変換部802は、ステップS901にて取得したそれぞれの撮像画像に対して逆γ変換を行う。逆γ変換は変換前のRGB画素値と変換後のRGB画素値のテーブルに基づいて行っても良いし、数式に基づいて行っても良い。
ステップS903では、平均部803は、逆γ変換されたそれぞれの撮像画像の平均画像を生成する。複数の画像の平均画像は、例えば、複数の画像における同一の画素位置(x、y)の画素値の平均値を平均画像における画素位置(x、y)の画素値とすることで生成される。図10(D)の1006は、撮像画像1001A,1001B,1001Cの平均画像の一例である。この「複数の画像」の枚数が多くなると、平均画像中の動きのある部分の光跡はどんどん薄くなり、ほとんど見えなくなっていく。
ステップS904〜S908の各ステップにおける処理は、撮像画像が逆γ変換されていることを除けば、それぞれ上記のステップS302〜S306と同様であるため、説明を省略する。
ここで、撮像画像1001A,1001B,1001Cのそれぞれの動体マップは、図10(B)の動体マップ1002A,1002B,1002Cである。また、撮像画像1001A,1001B,1001Cの合成画像は、図10(C)の合成画像1003であり、動体マップ1002A,1002B,1002Cの合成動体マップは、図10(C)の合成動体マップ1004である。また、合成画像1003の補正後合成画像は、図10(D)の補正後合成画像1005である。補正後合成画像1005では合成画像1003の光跡の途切れが繋がっている。
ステップS909では、αブレンド部809は、ステップS903で生成した平均画像と、ステップS908で生成した補正後合成画像と、をαブレンドして、ブレンド合成画像を生成する。αブレンドは平均画像をRGBave、補正後合成画像をRGBsyn、ブレンド合成画像をRGBoutとすると、RGBout=(1−α)×RGBave+α×RGBsyn (0≦α≦1)と表現できる。平均画像1006と補正後合成画像1005とのαブレンドの結果であるブレンド合成画像の一例は、図10(D)のブレンド合成画像1007である。
そしてステップS910では、γ変換部810は、ステップS909で生成したブレンド合成画像をγ変換(ステップS902の逆γ変換の逆変換)する。γ変換したブレンド合成画像の出力先については第1の実施形態と同様、特定の出力先に限らない。
光跡の強さと透明度はαブレンドのαと逆γ変換・γ変換の変換テーブル(または変換式)を変えることで調整できる。例えば、上記のα値を大きくしていくと、ブレンド合成画像は図11の1101、1102、1103のように光跡は明るく不透明になってゆく。さらに、γを変えると明るさごとに透明度を調整できる。
このように、本実施形態では、平均画像と、第1の実施形態にて生成された補正後合成画像と、をαブレンドすることで補正後合成画像における動体の軌跡の透明度を調整することができる。
なお、本実施形態では平均画像は撮像画像の平均画像としたが、平均の代わりにMedianをとっても良い。また、画素値の上位と下位を除く部分の平均(刈り込み平均)を取るようにしても良い。また、第1,2の実施形態は、画像など異なる色空間での画像に対して適用することが可能であり、また、RAW画像に対してベイヤーごとに適用しても良い。
[第3の実施形態]
図2,8に示した各機能部はハードウェアで実装しても良いが、ソフトウェア(コンピュータプログラム)で実装しても良い。後者の場合、このコンピュータプログラムを実行可能なプロセッサを有するコンピュータ装置は、上記の画像処理装置100,1002に適用することができる。画像処理装置100,1002に適用可能なコンピュータ装置1000のハードウェア構成例について、図1のブロック図を用いて説明する。
CPU101は、RAM102やROM103に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU101は、画像処理装置100,1002全体の動作制御を行うと共に、画像処理装置100,1002が行うものとして上述した各処理を実行若しくは制御する。
RAM102は、ROM103、記憶部104からロードされたコンピュータプログラムやデータを格納するためのエリア、入力インターフェース105を介して外部から受信したデータを格納するためのエリア、を有する。また、RAM102は、CPU101が各種の処理を実行する際に用いるワークエリアを有する。このようにRAM102は、各種のエリアを適宜提供することができる。ROM103には、コンピュータ装置1000の起動プログラムや設定データなど、書換不要の情報が格納されている。
記憶部104は、ハードディスクドライブ装置に代表される大容量情報記憶装置である。記憶部104には、OS(オペレーティングシステム)や、画像処理装置100,1002が行うものとして上述した各処理をCPU101に実行若しくは制御させるためのコンピュータプログラムやデータが保存されている。記憶部104に保存されているコンピュータプログラムには、図2,8に示した各機能部の機能をCPU101に実現させるためのコンピュータプログラムが含まれている。また、記憶部104に保存されているデータには、上記の説明において予め用意されているものとして説明したデータが含まれている。記憶部104に保存されているコンピュータプログラムやデータは、CPU101による制御に従って適宜RAM102にロードされ、CPU101による処理対象となる。なお、記憶部104には、ハードディスクドライブ装置以外にも、光ディスクドライブ装置やフラッシュメモリなどを適用することができる。
入力インターフェース105は、USBやIEEE1394などのシリアルバスインターフェースである。入力インターフェース105には、外部メモリ108が接続されており、CPU101はこの入力インターフェース105を介して外部メモリ108への情報の読み書きを行う。
外部メモリ108は、コンピュータ装置1000に対して着脱可能なメモリ装置であり、例えば、ハードディスクドライブ装置、メモリカード、CFカード、SDカード、USBメモリを適用することができる。
CPU101は、記憶部104や外部メモリ108から上記の撮像画像を読み出しても良いし、入力インターフェース105に撮像装置を接続し、該撮像装置から入力インターフェース105を介して撮像画像を取得するようにしても良い。
出力インターフェース106は、DVIやHDMIなどの映像出力端子である。出力インターフェース106には表示装置109が接続されている。表示装置109は、液晶画面やタッチパネル画面などにより構成されており、CPU101による処理結果を画像や文字などでもって表示することができる。
CPU101、RAM102、ROM103、記憶部104、入力インターフェース105、出力インターフェース106は何れも、バス107に接続されている。なお、画像処理装置100,1002に適用可能なコンピュータ装置のハードウェア構成は図1に示した構成に限らない。例えば、各種のユーザ操作をコンピュータ装置に入力するための操作部を設けても良いし、コンピュータ装置による処理結果を外部の装置に対して出力するために通信インターフェースを設けても良い。また、画像処理装置100,1002は、撮像装置等の装置に組み込まれる組み込み装置であっても構わない。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201:入力部 202:抽出部 203:算出部 204:生成部 205:合成部 206:補正部

Claims (13)

  1. 複数フレームの撮像画像から選択した画素を用いて1枚の合成画像を生成する生成手段と、
    前記複数フレームの撮像画像のうち、少なくとも2つのフレーム間における移動ベクトルを算出する算出手段と、
    前記合成画像の画素に対応する移動ベクトルに基づいて、該合成画像を補正する補正手段と
    を備えることを特徴とする画像処理装置。
  2. 前記補正手段は、前記合成画像の着目画素として前記生成手段が選択した画素について前記算出手段が算出した移動ベクトルを、前記着目画素の画素値を補正するために参照することを特徴とする請求項1に記載の画像処理装置。
  3. 前記補正手段は、前記合成画像における画素の画素値を、該画素と、該画素に対応する移動ベクトルの方向に該画素から離間した画素と、を結ぶ線分が通過する画素の画素値に基づいて補正することを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記補正手段は、前記合成画像における画素の画素値と、該画素に対応する移動ベクトルの方向に該画素から離間した画素の画素値と、に基づいて、該離間した画素の画素値を補正することを特徴とする請求項1または2に記載の画像処理装置。
  5. 前記補正手段は、前記合成画像における着目画素に対応する移動ベクトルの方向に該着目画素から離間した画素の画素値に対して、前記着目画素と該離間した画素とを結ぶ線分と該離間した画素との間の距離に応じた重み付けを行い、該重み付けした画素値に基づいて該着目画素の画素値を補正することを特徴とする請求項1または2に記載の画像処理装置。
  6. 前記生成手段は、前記複数フレームの撮像画像の着目画素位置における画素のうち最大の輝度値を有する画素を選択し、該選択した画素を前記合成画像の該着目画素位置における画素として選択することを特徴とする請求項1乃至5の何れか1項に記載の画像処理装置。
  7. 前記生成手段は、前記複数フレームの撮像画像の着目画素位置における画素のうち最小の輝度値を有する画素を選択し、該選択した画素を前記合成画像の該着目画素位置における画素として選択することを特徴とする請求項1乃至5の何れか1項に記載の画像処理装置。
  8. 前記算出手段は、前記撮像画像と該撮像画像の前のフレームの撮像画像との間のフレーム間における移動ベクトルを算出することを特徴とする請求項1乃至7の何れか1項に記載の画像処理装置。
  9. 前記算出手段は、前記撮像画像と該撮像画像の後のフレームの撮像画像との間のフレーム間における移動ベクトルを算出することを特徴とする請求項1乃至7の何れか1項に記載の画像処理装置。
  10. 前記算出手段は、フレーム間における移動ベクトルを前記撮像画像の露光時間及びフレームレートに基づいて修正することを特徴とする請求項1乃至9の何れか1項に記載の画像処理装置。
  11. 前記生成手段は、逆γ変換した複数フレームの撮像画像から選択した画素を用いて1枚の合成画像を生成し、
    前記算出手段は、前記逆γ変換した複数フレームの撮像画像のうち、少なくとも2つのフレーム間における移動ベクトルを算出し、
    前記補正手段は、前記合成画像の画素として前記生成手段が選択した画素について前記算出手段が算出した移動ベクトルに基づいて該合成画像を補正し、該補正した合成画像と、前記逆γ変換した複数フレームの撮像画像の平均画像と、をαブレンドした結果をγ変換することを特徴とする請求項1乃至10の何れか1項に記載の画像処理装置。
  12. 画像処理装置が行う画像処理方法であって、
    前記画像処理装置の生成手段が、複数フレームの撮像画像から選択した画素を用いて1枚の合成画像を生成する生成工程と、
    前記画像処理装置の算出手段が、前記複数フレームの撮像画像のうち、少なくとも2つのフレーム間における移動ベクトルを算出する算出工程と、
    前記画像処理装置の補正手段が、前記合成画像の画素に対応する移動ベクトルに基づいて、該合成画像を補正する補正工程と
    を備えることを特徴とする画像処理方法。
  13. コンピュータを、請求項1乃至11の何れか1項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
JP2018110507A 2018-06-08 2018-06-08 画像処理装置、画像処理方法 Pending JP2019213164A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018110507A JP2019213164A (ja) 2018-06-08 2018-06-08 画像処理装置、画像処理方法
US16/415,318 US11010882B2 (en) 2018-06-08 2019-05-17 Image processing apparatus, image processing method, and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018110507A JP2019213164A (ja) 2018-06-08 2018-06-08 画像処理装置、画像処理方法

Publications (1)

Publication Number Publication Date
JP2019213164A true JP2019213164A (ja) 2019-12-12

Family

ID=68765246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018110507A Pending JP2019213164A (ja) 2018-06-08 2018-06-08 画像処理装置、画像処理方法

Country Status (2)

Country Link
US (1) US11010882B2 (ja)
JP (1) JP2019213164A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024053824A1 (ko) * 2022-09-07 2024-03-14 삼성전자 주식회사 이미지를 제공하는 전자 장치 및 그의 동작 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6686988B2 (ja) * 2017-08-28 2020-04-22 株式会社Soken 映像出力装置及び映像生成プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012019337A (ja) * 2010-07-07 2012-01-26 Olympus Corp 画像処理装置及び方法並びにプログラム
CN102779334B (zh) * 2012-07-20 2015-01-07 华为技术有限公司 一种多曝光运动图像的校正方法及装置
JP6296909B2 (ja) 2014-06-10 2018-03-20 オリンパス株式会社 画像処理装置、画像処理方法、画像処理プログラム
JP6594180B2 (ja) * 2015-11-25 2019-10-23 キヤノン株式会社 撮像装置、撮像装置の制御方法及びプログラム
JP7188394B2 (ja) * 2017-10-02 2022-12-13 ソニーグループ株式会社 画像処理装置及び画像処理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024053824A1 (ko) * 2022-09-07 2024-03-14 삼성전자 주식회사 이미지를 제공하는 전자 장치 및 그의 동작 방법

Also Published As

Publication number Publication date
US20190378255A1 (en) 2019-12-12
US11010882B2 (en) 2021-05-18

Similar Documents

Publication Publication Date Title
US9591237B2 (en) Automated generation of panning shots
US7671892B2 (en) Image sensing apparatus, and control method, program, and storage medium of image sensing apparatus
US20160065865A1 (en) Imaging device and imaging system
US8290261B2 (en) Image processing apparatus and image processing method
KR20130038380A (ko) 화상표시 시스템, 화상처리장치 및 그 제어방법
JP2007006021A (ja) 撮像装置および画像処理プログラム
JP5089783B2 (ja) 画像処理装置及びその制御方法
US20150097976A1 (en) Image processing device and image processing method
US9451165B2 (en) Image processing apparatus
WO2014126032A1 (ja) 画像処理装置、画像処理方法、および記録媒体
JP2019213164A (ja) 画像処理装置、画像処理方法
US9516260B2 (en) Video processing method and apparatus
JP6541501B2 (ja) 画像処理装置、撮像装置、及び画像処理方法
JP5812739B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2018061130A (ja) 画像処理装置、画像処理方法、及びプログラム
WO2017184224A1 (en) Processing images based on generated motion data
JP6513305B2 (ja) 映像合成装置及び映像合成方法
US9836812B2 (en) Image processing apparatus, method, and medium to apply a restrictive condition
US10311550B2 (en) Image processing device for eliminating graininess of image
JP6417204B2 (ja) 画像処理装置および画像処理方法
JP2009296224A (ja) 撮像手段及びプログラム
CN111583125B (zh) 图像处理装置、图像处理方法及计算机可读存储介质
JP6708131B2 (ja) 映像処理装置、映像処理方法及びプログラム
JP7409604B2 (ja) 画像処理装置、撮像装置、画像処理方法、プログラムおよび記録媒体
JP2011135437A (ja) 撮像装置、画像合成方法及びプログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113