JP6577855B2 - 画像処理システムおよび画像処理方法 - Google Patents

画像処理システムおよび画像処理方法 Download PDF

Info

Publication number
JP6577855B2
JP6577855B2 JP2015243220A JP2015243220A JP6577855B2 JP 6577855 B2 JP6577855 B2 JP 6577855B2 JP 2015243220 A JP2015243220 A JP 2015243220A JP 2015243220 A JP2015243220 A JP 2015243220A JP 6577855 B2 JP6577855 B2 JP 6577855B2
Authority
JP
Japan
Prior art keywords
mask
decomposition level
roi
unit
image
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.)
Expired - Fee Related
Application number
JP2015243220A
Other languages
English (en)
Other versions
JP2017112417A5 (ja
JP2017112417A (ja
Inventor
水野 雄介
雄介 水野
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.)
MegaChips Corp
Original Assignee
MegaChips Corp
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 MegaChips Corp filed Critical MegaChips Corp
Priority to JP2015243220A priority Critical patent/JP6577855B2/ja
Priority to US15/376,027 priority patent/US10419780B2/en
Publication of JP2017112417A publication Critical patent/JP2017112417A/ja
Publication of JP2017112417A5 publication Critical patent/JP2017112417A5/ja
Application granted granted Critical
Publication of JP6577855B2 publication Critical patent/JP6577855B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • 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/20048Transform domain processing
    • G06T2207/20064Wavelet transform [DWT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Description

本発明は、画像処理システムおよび画像処理方法に関する。
特許文献1〜3には、動画像中の動体を検出する技術が開示されている。また、特許文献4,5には、パーティクルフィルタを利用して動体を追跡する技術が開示されている。このような動体検出技術を利用すれば、画像中の動体をROI(関心領域)として切り取ることができる。
また、デジタルカメラによって撮影された静止画像を対象として、グラフカットによって、画像全体から前景画像と背景画像とを分離する技術が知られている。このような画像分離技術を利用すれば、前景画像をROIとして切り取ることができる。
特開2013−254291号公報 特開2007−088897号公報 特開2006−093784号公報 特開2009−199363号公報 特開2005−165688号公報 特開2006−203409号公報 特表2001−520466号公報
INTERNATIONAL STANDARD ISO/IEC 15444-1 ITU-T RECOMMENDATION T.800 Information technology - JPEG 2000 image coding system: Core coding system Annex H - Coding of images with regions of interest 荻田健夫、渡辺裕、「JPEG2000トランスコーダにおけるROI自動抽出と評価」、画像電子学会年次大会予稿集、2002年06月19日、30th、p.115-116
上記のようにROIを自動的に設定する種々の技術が開発されている。しかし、ROIとして設定されるべき所期の領域を精度良く検出することは、技術的に未だ難しいと思われる。
例えば、ROIの輪郭、換言すればROIと非ROIとの境界を正確に判別することは、難しい。このため、所期の領域から局所的に張り出した部分を有して、あるいは逆に所期の領域を局所的に侵食した部分を有して、ROIが設定されることがある。また、所期の領域内に欠損を有して、ROIが設定されることがある。すなわち、本来は所期の領域の全域がROIとして設定されるべきところ、当該領域内に非ROIが存在すると判別され、その非ROIがROIの欠損を成すのである。輪郭および/または内部にそのような不具合を有した不十分なROIを別の画像と合成しても、不自然さを感じるであろう。
本発明は、不十分なROIを利用しても、修復されたROIを有する合成画像を生成可能であり、さらには合成具合を調整可能な技術を提供することを目的とする。また、関連技術を提供することを目的とする。
本発明の一態様に係る画像処理システムは、第1画像中のROI(関心領域)と第2画像とを合成する画像合成システムを含んでいる。前記画像合成システムは、前記第1画像用の量子化ウエーブレット係数データから第1ウエーブレット係数データを生成する、第1準備部と、前記第2画像のデータから第2ウエーブレット係数データを生成する、第2準備部と、前記第1ウエーブレット係数データに含まれる各ウエーブレット係数が、前記ROIに関与するROI係数と非ROIに関与する非ROI係数とのいずれであるかを判別するためのマスクを準備する、マスク準備部と、前記第1ウエーブレット係数データ中の前記ROI係数と前記非ROI係数とを前記マスクに基づいて判別し、前記ROI係数と、前記非ROI係数に対応する前記第2ウエーブレット係数データ中のウエーブレット係数とを合成し、それにより合成済み係数データを生成する、合成実行部と、前記合成済み係数データに対して、分解レベルが所定の終了レベルになるまで逆ウエーブレット変換を行うことによって、合成画像データを生成する、合成画像データ生成部とを含んでいる。前記量子化ウエーブレット係数データの分解レベルを、g1とする。前記合成実行部において利用する前記第1ウエーブレット係数データと前記第2ウエーブレット係数データと前記マスクとの分解レベルを、g2とする。前記第1準備部は、前記量子化ウエーブレット係数データに対して逆量子化を行うことによって、分解レベルg1の前記第1ウエーブレット係数データを生成する、逆量子化部と、g2<g1の場合に、分解レベルg1の前記第1ウエーブレット係数データに対して、分解レベルg2まで逆ウエーブレット変換を行う、レベル減少部と、g2>g1の場合に、前記第1画像と同一視できる補助画像用のウエーブレット係数であり且つ分解レベルがg1である補助ウエーブレット係数データを取得し、前記補助ウエーブレット係数データを利用した係数調整処理によって、分解レベルg1の前記第1ウエーブレット係数データを調整する、係数調整部と、前記係数調整処理によって調整された前記第1ウエーブレット係数データに対して、分解レベルg2までウエーブレット変換を行う、レベル増加部とを有している。g2=g1の場合、前記マスク準備部は、分解レベルg1の前記マスクを準備して前記合成実行部に供給し、前記第1準備部は、前記逆量子化部によって生成された分解レベルg1の前記第1ウエーブレット係数データを前記合成実行部に供給する。g2<g1の場合、前記マスク準備部は、分解レベルg2の前記マスクを準備して前記合成実行部に供給し、前記第1準備部は、前記レベル減少部によって生成された分解レベルg2の前記第1ウエーブレット係数データを前記合成実行部に供給する。g2>g1の場合、前記マスク準備部は、分解レベルg2の前記マスクを準備して前記合成実行部に供給すると共に、分解レベルg1の前記マスクを準備して前記第1準備部に供給し、前記第1準備部は、前記係数調整部によって行われる前記係数調整処理において、分解レベルg1の前記マスクに基づいて分解レベルg1の前記第1ウエーブレット係数データ中の前記ROI係数と前記非ROI係数とを判別し、前記ROI係数と、前記非ROI係数に対応する前記補助ウエーブレット係数データ中のウエーブレット係数とを合成し、前記第1準備部は、前記レベル増加部によって生成された分解レベルg2の前記第1ウエーブレット係数データを前記合成実行部に供給する。
上記一態様によれば、第1画像中のROIと第2画像との合成は、第1画像データおよび第2画像データを変換した第1ウエーブレット係数データおよび第2ウエーブレット係数データを用いて行われる。また、第1画像中のROIの判別は、第1ウエーブレット係数データについてROI係数を判別することによって行われる。このため、不十分なROIを利用しても、合成画像上では、修復されたROIを提供できる。すなわち、第1画像データおよび第2画像データをそのまま合成する場合に比べて、良好な合成画像が得られる。また、第1ウエーブレット係数データと第2ウエーブレット係数データとの合成時の分割レベルをg2で制御することによって、合成具合(ROIの修復、ROIの拡張、等)を調整できる。また、第1ウエーブレット係数データを、第2ウエーブレット係数データと合成する前に、係数調整処理によって調整するので、合成画像の画質を向上させることができる。
本発明の目的、特徴、局面、および利点は、以下の詳細な説明と添付図面とによって、より明白となる。
実施の形態1について、画像処理システムの概念図である。 実施の形態1について、画像処理システムを説明するブロック図である。 実施の形態1について、データ供給システムを説明するブロック図である。 実施の形態1について、Mallat型のウエーブレット平面を説明する図である(分解レベル1)。 実施の形態1について、Mallat型のウエーブレット平面を説明する図である(分解レベル2)。 実施の形態1について、Mallat型のウエーブレット平面を説明する図である(分解レベル3)。 実施の形態1について、マスク生成部を説明するブロック図である。 実施の形態1について、第1画像の例を示す図である。 実施の形態1について、原マスクの例を示す図である。 実施の形態1について、展開マスクを説明する図である(分解レベル1)。 実施の形態1について、展開マスクを説明する図である(分解レベル2)。 実施の形態1について、展開マスクを説明する図である(分解レベル3)。 実施の形態1について、マスク展開処理を説明するフローチャートである。 実施の形態1について、ウエーブレット変換に5×3フィルタが使用される場合のマスク展開処理を説明する図である。 実施の形態1について、ウエーブレット変換にDaubechies9×7フィルタが使用される場合のマスク展開処理を説明する図である。 実施の形態1について、データ供給システムの動作を説明するフローチャートである。 実施の形態1について、画像合成システムを説明するブロック図である。 実施の形態1について、合成実行処理を説明するフローチャートである。 実施の形態1について、合成実行処理を説明するフローチャートである。 実施の形態1について、全体座標系およびサブバンド座標系を説明する図である。 実施の形態1について、マスク準備部を説明するブロック図である。 実施の形態1について、マスク準備部での処理を説明する概念図である。 実施の形態1について、非参照型マスクの生成処理を説明するフローチャートである。 実施の形態1について、参照型マスクの生成処理を説明するフローチャートである。 実施の形態1について、マスク拡大処理を説明するフローチャートである。 実施の形態1について、マスク拡大処理を説明する図である(1次元)。 実施の形態1について、マスク拡大処理を説明する図である(2次元)。 実施の形態1について、マスクマージ処理を説明するフローチャートである。 実施の形態1について、マージマスクの第2例を説明する図である。 実施の形態1について、マージマスクの第3例を説明する図である。 実施の形態1について、マスク復元処理を説明するフローチャートである。 実施の形態1について、ウエーブレット変換に5×3フィルタが使用される場合のマスク復元処理を説明する図である。 実施の形態1について、ウエーブレット変換にDaubechies9×7フィルタが使用される場合のマスク復元処理を説明する図である。 実施の形態1について、マスク準備部の動作を説明するフローチャートである。 実施の形態1について、第1準備部を説明するブロック図である。 実施の形態1について、画像合成システムの動作を説明するフローチャートである。 実施の形態1について、画像合成システムの動作を説明するフローチャートである。 実施の形態1について、第1画像の例を示す図である。 図38の画像用のマスクを示す図である。 図39のマスクを分解レベル5まで展開したマスクを示す図である。 図38の画像用の非参照型マスクを示す図である。 図38の画像用の参照型マスクを示す図である。 図42の分解レベル2のサブバンドマスクに対してモフォロジー処理を行ったマスクを示す図である。 図43のマスクを拡大したマスク(整形マスク)を示す図である。 図44のマスクを分解レベル5まで展開した暫定マスクを示す図である。 図41の非参照型マスクと図45の暫定マスクとをマージしたマージマスクを示す図である。 図46のマスクを用いた合成画像を示す図である。 図46のマスクを用いた合成画像を示す図である。 図46のマスクを分解レベル6まで展開したマスクを示す図である。 図49のマスクを用いた合成画像を示す図である。 図49のマスクを用いた合成画像を示す図である。 図46のマスクを分解レベル3まで復元したマスクを示す図である。 図52のマスクを用いた合成画像を示す図である。 図52のマスクを用いた合成画像を示す図である。 図46のマスクを分解レベル0まで復元したマスクを示す図である。 図55のマスクを用いた合成画像を示す図である。 実施の形態2について、マスク準備部を説明するブロック図である。 実施の形態3について、マスク準備部の第1例を説明するブロック図である。 実施の形態3について、マスク準備部の動作を説明するフローチャートである。 実施の形態3について、マスクの例を示す図である。 実施の形態3について、マスクの例を示す図である。 実施の形態3について、マスク準備部の第2例を説明するブロック図である。 実施の形態3について、マスク準備部の第3例を説明するブロック図である。 実施の形態4について、マスク準備部を説明するブロック図である。 実施の形態4について、マスク準備部の動作を説明するフローチャートである。 実施の形態5について、参照型マスクの生成を説明する概念図である。 実施の形態5について、複数の色空間成分を一纏めにして参照型推定規則を適用する場合の参照型マスク生成処理を説明するフローチャートである。 実施の形態5について、複数の色空間成分を一纏めにして参照型推定規則を適用する場合の参照型マスク生成処理を説明するフローチャートである。 実施の形態6について、マスク準備部を説明するブロック図である。 実施の形態6について、マスク準備部の動作を説明するフローチャートである。 実施の形態6について、外来マスクの例を示す図である。 図71のマスクを用いた合成画像を示す図である。 図71の外来マスクを分解レベル6まで展開したマスクを示す図である。 図73のマスクを用いた合成画像を示す図である。 図71の外来マスクを分解レベル3まで復元したマスクを示す図である。 図75のマスクを用いた合成画像を示す図である。 図71の外来マスクを分解レベル0まで復元したマスクを示す図である。 図77のマスクを用いた合成画像を示す図である。 実施の形態7について、マスク準備部を説明するブロック図である。 実施の形態7について、マスク準備部の動作を説明するフローチャートである。 実施の形態8について、マスク準備部の動作を説明するフローチャートである。
<実施の形態1>
<システムの概要>
図1に、実施の形態1に係る画像処理システム1の概念図を示す。図1に示すように、画像処理システム1は2つの画像処理システム10,20を含んでいる。一方の画像処理システム10はデータ供給システム11を含み、もう一方の画像処理システム20は画像合成システム21を含んでいる。画像合成システム21は画像合成処理を実行する。データ供給システム11は画像合成処理に使用するデータを出力する。以下では、画像処理システム1を全体システム1と呼び、データ供給システム11を供給システム11と呼び、画像合成システム21を合成システム21と呼ぶ場合もある。
画像処理システム10は、供給システム11だけで構成されてもよいし、他の処理システムをさらに含んでもよい。同様に、画像処理システム20は、合成システム21だけで構成されてもよいし、他の処理システムをさらに含んでもよい。また、図1から分かるように、供給システム11は、画像処理システム10に含まれると共に全体システム1にも含まれる。同様に、合成システム21は、画像処理システム20に含まれると共に全体システム1にも含まれる。
画像処理システム10,20は、ここでは、半導体集積回路によって提供される。すなわち、画像処理システム10,20の各種の機能および処理は、回路的に、換言すればハードウェア的に実現される。但し、機能および処理の一部または全部を、マイクロプロセッサを機能させるプログラムによって、換言すればソフトウェアによって実現することも可能である。
<全体システム1の例>
図2に、全体システム1の適用例を示す。図2の例では、画像処理システム10がデータ供給側装置30に設けられ、画像処理システム20が画像合成側装置40に設けられている。以下では、データ供給側装置30を供給側装置30と呼び、画像合成側装置40を合成側装置40と呼ぶ場合もある。供給側装置30のユーザは合成側装置40のユーザとは異なるものとするが、この例に限定されるものではない。
供給側装置30は、画像処理システム10の他に、表示部31と、操作部32と、外部インターフェース33と、画像入力部34とを含んでいる。合成側装置40は、画像処理システム20の他に、表示部41と、操作部42と、外部インターフェース43と、画像入力部44とを含んでいる。以下では、外部インターフェース33,43をI/F33,43と呼ぶ場合もある。
表示部31,41は例えば液晶表示装置で構成されるが、表示部31,41は異なる種類の表示装置で構成されてもよい。操作部32,42は、ユーザが装置30,40に対して、換言すれば画像処理システム10,20に対して、指示、データ等を入力するための操作媒体である。操作部32,42はキーボード、マウス、ボタン、スイッチ等の1つまたは複数の装置によって構成される。
I/F33は供給側装置30が装置外部と信号の入出力を行う部分である。同様に、I/F43は合成側装置40が装置外部と信号の入出力を行う部分である。I/F33,43を利用することによって、供給側装置30と合成側装置40との間で情報(データ、指示等)の伝達が可能になる。
具体的にI/F33,43は通信インターフェースを含んでおり、それにより供給側装置30と合成側装置40とがI/F33,43によって通信可能になる。装置30,40間の通信方式は、有線と、無線と、それらの組み合わせとのいずれでもよい。装置30,40間の情報伝達には、媒体50が介在する。上記のように通信の場合、媒体50は無線または有線の通信媒体(換言すれば通信経路)である。
I/F33,43は、通信インターフェースに加えてまたは代えて、外部記憶媒体用のインターフェースを含んでもよい。その場合、供給側装置30と合成側装置40との間の情報伝達は外部記憶媒体を介して行うことが可能であり、その外部記憶媒体が装置30,40間に介在する媒体50に該当する。
画像入力部34は、デジタルカメラによって構成される。あるいは、画像入力部34は、画像データを供給する記憶装置であってもよい。画像入力部44も同様に構成される。なお、画像入力部34,44は異なる種類の装置で構成されてもよい。
なお、供給側装置30および合成側装置40の構成は図2の例に限定されるものではない。すなわち、上記の構成要素のうちの一部を省略してもよいし、他の構成要素を追加してもよい。
<供給システム11の例>
図3に、供給システム11の構成例を示す。供給システム11は、以下に説明するように画像データの符号化機能を有している。かかる符号化機能によって、合成システム21に供給する第1画像のデータである第1画像データA20を符号化し、符号化画像データA50を生成する。なお、符号化画像データA50を単に符号化データA50とも呼ぶ場合もある。
なお、一般的に、画像データの圧縮には符号化が採用されている。このため「圧縮」と「符号化」とが同義で用いられ、例えば画像圧縮が画像符号化または画像圧縮符号化と表現される場合がある。同様に、「伸張」と「復号化」とが同義で用いられ、例えば画像伸張が画像復号化または画像伸張復号化と表現される場合がある。
符号化データA50は、符号化データA50用のビットストリーム(以下、符号化ビットストリームとも呼ぶ)Absによって供給システム11から出力され、合成システム21に供給される。
第1画像は、ROI(関心領域)を含む画像であり、合成システム21での画像合成において主画像を提供する。第1画像は、デジタルカメラ等によって撮影した画像であってもよいし、あるいは、コンピュータグラフィックスであってもよい。
図3の例によれば、供給システム11は、前処理部1020と、ウエーブレット変換部1030と、量子化部1040と、マスク生成部1050と、符号化部1060と、ビットストリーム生成部1070とを含んでいる。
<前処理部1020>
前処理部1020は、第1画像データA20に対して所定の前処理を行う。図3の例では、前処理部1020は、DCレベルシフト部1021と、色空間変換部1022と、タイリング部1023とを含んでいる。
DCレベルシフト部1021は、第1画像データA20のDCレベルを必要に応じて変換する。色空間変換部1022は、DCレベル変換後の画像データの色空間を変換する。例えば、RGB成分がYCbCr成分(輝度成分Yと色差成分Cb,Crとから成る)に変換される。タイリング部1023は、色空間変換後の画像データを、「タイル」と呼ばれる矩形状の複数の領域成分に分割する。そして、タイリング部1023は、タイルごとに画像データをウエーブレット変換部1030に供給する。なお、必ずしも画像データをタイルに分割する必要はなく、色空間変換部1022から出力された1フレーム分の画像データを、そのままウエーブレット変換部1030に供給してもよい。
<ウエーブレット変換部1030>
ウエーブレット変換部1030はウエーブレット変換処理を行う。具体的には、ウエーブレット変換部1030は、前処理後の第1画像データA20に対して、整数型または実数型の離散ウエーブレット変換(DWT)を行い、その結果得られた変換係数を出力する。以下では、変換係数を例えば、ウエーブレット変換係数、または、ウエーブレット係数と呼ぶ場合もある。また、第1画像データA20に対してウエーブレット変換を行うことによって生成されるデータ(ウエーブレット係数の群)を、第1ウエーブレット係数データA21と呼ぶことにする。
ウエーブレット変換では、2次元画像データが高域成分(換言すれば高周波成分)と低域成分(換言すれば低周波成分)とに分解される。かかる周波数分解は例えば帯域分割とも呼ばれる。また、周波数分解によって得られた各帯域成分(すなわち低域成分と高域成分のそれぞれ)はサブバンドとも呼ばれる。ここでは、JPEG(Joint Photographic Experts Group)2000の基本方式に倣い、垂直方向と水平方向の両方について低域側に分割されたサブバンドのみを再帰的に帯域分割していく、オクターブ分割方式を採用するものとする。再帰的な帯域分割を行った回数は、分解レベルと呼ばれる。分解レベルの情報は、ウエーブレット係数データに付随している。
ウエーブレット変換部1030では、所定の分解レベルまで第1画像データA20が分解される。一般的には分解レベルが3〜5程度の場合に、良好な符号化効率が得られる。なお、ウエーブレット変換部1030における上記所定の分解レベルを、初期の分解レベルと呼ぶ場合もある。
図4〜図6に、2次元でのウエーブレット変換について、Mallat型のウエーブレット平面61〜63を示す。図4〜図6の例によれば、入力画像(2次元画像)は、分解レベル1において(図4参照)、垂直方向と水平方向のそれぞれについて周波数分解が行われる。これにより、図4のウエーブレット平面61に示すように、4つのサブバンドHH1,HL1,LH1,LL1に分解される。分解レベル1で得られたサブバンドLL1は、分解レベル2において(図5のウエーブレット平面62を参照)、更に4つのサブバンドHH2,HL2,LH2,LL2に分解される。分解レベル2で得られたサブバンドLL2は、分解レベル3において(図6のウエーブレット平面63を参照)、更に4つのサブバンドHH3,HL3,LH3,LL3に分解される。
2次元のウエーブレット変換に関する表記について、例えばHL1は、分解レベル1における水平方向の高域成分Hと垂直方向の低域成分Lとからなるサブバンドである。その表記法は「XYm」と一般化される(XおよびYはそれぞれH,Lのいずれか。mは1以上の整数)。すなわち、分解レベルmにおける水平方向のサブバンドXと垂直方向のサブバンドYとからなるサブバンドは「XYm」と表記される。
なお、以下では、サブバンドLL1,LL2,…のそれぞれをLLサブバンドまたはLL成分と略称する場合がある。また、サブバンドLL1をLL1サブバンドまたはLL1成分と呼ぶ場合がある。他のサブバンドについても同様である。
ここで、ウエーブレット平面(図4〜図6参照)は、ウエーブレット変換の演算結果データを、原画像(ウエーブレット変換が行われていない状態の画像)中の画素の並びに対応付けて2次元配列したデータ群である。例えばウエーブレット平面においてサブバンドLL1として示されている領域内には、原画像中のある画素を注目画素として得られた演算結果データ(LL成分データ)が、原画像中での当該注目画素の位置に対応して並べられている。なお、ウエーブレット平面はウエーブレット空間、または、ウエーブレット領域と呼ばれる場合もある。また、2次元配列された係数値を画素値に見立てて、ウエーブレット平面をウエーブレット画像と呼ぶ場合もある。
分解レベル1において、サブバンドLL1は画像の本質的な情報に対応する。なお、サブバンドLL1によれば、分解前の画像の1/4のサイズの画像(換言すれば、分解前の画像に対する縮小比が1/2の画像)を提供可能である。サブバンドHL1は垂直方向に伸びるエッジの情報に対応し、サブバンドLH1は水平方向に伸びるエッジの情報に対応する。サブバンドHHは斜め方向に伸びるエッジの情報に対応する。これらの点は他の分解レベルについても同様である。例えば、分解レベル2のサブバンドLL2,HL2,LH2,HH2は、分解前のサブバンドLL1を原画像と見なした場合におけるサブバンドLL1,HL1,LH1,HH1とそれぞれ同様の関係にある。
以下では、ウエーブレット変換が行われていない状態の原画像を分解レベル0に対応させることにより、当該原画像を分解レベル0のウエーブレット画像、または、分解レベル0のウエーブレット平面と表現する場合もある。
また、ウエーブレット平面において最も分解されたサブバンドを、最上位サブバンドと呼ぶことにする。具体的には、分解レベル3のウエーブレット平面63(図6参照)において、最上位サブバンドはLL3,HL3,LH3,HH3である。一般化するならば、分解レベルkのウエーブレット平面において、最上位サブバンドはLLk,HLk,LHk,HHkである。また、分解回数が同じサブバンドにおいて、サブバンドLLを最低域のサブバンドと呼び、サブバンドHHを最高域のサブバンドと呼ぶことにする。
なお、Mallat型では、上記のように、LL成分を水平方向と垂直方向のそれぞれについて同じ回数で、再帰的に分解する。また後述のように、Mallat型では分解とは逆の手順でサブバンドが合成される。但し、水平方向と垂直方向のそれぞれのL成分とH成分を同じ回数で、分解および合成する必要はない。すなわち、Mallat型とは異なる型式のウエーブレット変換を用いてもよい。
また、原画像およびウエーブレット画像において左上端を座標系(全体座標系。後述の図20参照)の原点に採り、原点を0として扱い、ウエーブレット変換のL成分出力を偶数として扱い、H成分出力を奇数として扱う例を挙げる。但し、L成分出力を奇数として扱い、H成分出力を偶数として扱うことも可能である。なお、ウエーブレット平面(図4〜図6参照)は、ウエーブレット変換の偶数番目および奇数番目の出力を、サブバンドごとに再配置した概念的な平面である。
<量子化部1040>
図3に戻り、量子化部1040は量子化処理を行う。具体的には、量子化部1040は、ウエーブレット変換部1030から供給された第1ウエーブレット係数データA21に対して、量子化ステップサイズに基づいて、スカラー量子化を行い、それにより量子化ウエーブレット係数データA22を生成する。量子化ステップサイズは、例えば目標画質に応じて設定される。
ここで、量子化ウエーブレット係数データA22は、ウエーブレット係数データA21と同様のデータ構造を有している。このため、量子化ウエーブレット係数データA22によれば、ウエーブレット係数データA21と同様に、ウエーブレット画像が提供される。量子化ウエーブレット係数データA22によって提供されるウエーブレット画像を、量子化ウエーブレット画像と呼ぶ場合もある。
特に量子化部1040は、第1ウエーブレット係数データA21を構成する各データ(換言すれば、各係数値)について、第1画像中のROIに関与する係数(以下、ROI係数とも呼ぶ)と、非ROIに関与する係数(以下、非ROI係数とも呼ぶ)とを判別する係数判別処理を行う。そして、量子化部1040は、量子化後の非ROI係数が0になるように、第1ウエーブレット係数データA21の量子化を行う。このような量子化は、例えばノルムに基づいて量子化値を決定する技術(特許文献6参照)によって、実現可能である。
量子化部1040は、係数判別処理を、マスク生成部1050から供給されるマスクデータB21に基づいて行う。マスクデータB21は、第1ウエーブレット係数データA21についてROI係数と非ROI係数とを判別するためのマスクを提供する。
<マスク生成部1050>
マスク生成部1050はマスク生成処理を行う。具体的には、マスク生成部1050は、第1ウエーブレット係数データA21についてROI係数と非ROI係数とを判別するためのマスクのデータであるマスクデータB21を生成する。
図7に、マスク生成部1050の構成例を示す。図7の例によれば、マスク生成部1050は、原マスク生成部1051と、マスク展開部1052とを含んでいる。
<原マスク生成部1051>
原マスク生成部1051は原マスク生成処理を行う。具体的には、原マスク生成部1051は、第1画像データA20に基づいて、第1画像の全範囲においてROIと非ROIとを判別するための原マスクのデータである原マスクデータB10を生成する。
原マスク生成部1051は、各種のマスク生成技術によって構成可能である。例えば動画像中の動体を検出する技術が知られており、この動体検出技術を利用すれば、画像中の動体をROIに設定したマスクを生成できる。動体検出技術に関しては、例えば特許文献1〜3を参照。また、例えば特許文献4,5にはパーティクルフィルタを利用して動体を追跡する技術が記載されており、かかる動体追跡技術によれば動体検出精度を向上でき、また、演算量を削減できる。
また、デジタルカメラによって撮影された静止画像を対象として、グラフカットによって、画像全体から前景画像と背景画像とを分離する技術が知られている。この画像分離技術を利用して原マスク生成部1051を構成すれば、前景画像をROIに設定したマスクを生成できる。
なお、原マスク生成部1051は、マスク生成に際して適宜、前処理を行う。例えば、第1画像データA20が、デジタルカメラによる撮影画像データ(Bayerデータ)である場合、BayerデータをRGBカラーデータに変換する。また、第1画像のサイズが大きい場合、演算量を減らすために縮小処理を行う。また、特徴量を抽出するために、白黒、YUV、HSV等への色空間変換を行う。
ここで、図8に第1画像60の例を示す。第1画像60において、移動中の人物の部分をROI60aに設定し、それ以外の部分を非ROI60bに設定するものとする。
第1画像60の全範囲に対応する原マスク70を、図9に示す。原マスク70は、第1画像60中の各画素がROI60aと非ROI60bのどちらに属するのかを示す画像として理解できる。原マスク70は、第1画像60中のROI60aおよび非ROI60bに対応するROI対応部分70aおよび非ROI対応部分70bを有している。図9において、白抜き部分がROI対応部分70aであり、黒塗り部分が非ROI対応部分70bである。
なお、動画像の場合、全てのフレーム画像を対象にして原マスク70を生成してもよいし、あるいは、例えば一定フレーム毎または一定時間毎に原マスク70を生成してもよい。また、静止画像が順次入力される場合についても、同様である。
<マスク展開部1052>
マスク展開部1052はマスク展開処理を行う。具体的には、マスク展開部1052は、原マスク70のROI対応部分70aおよび非ROI対応部分70bを、第1ウエーブレット係数データA21に含まれる各サブバンド用に(換言すれば、第1ウエーブレット係数データA21に対応するウエーブレット画像に含まれる各サブバンド用に)展開する。このようなマスク展開処理によって、第1ウエーブレット係数データA21用のマスクである展開マスクが生成される。マスクの展開に関しては、例えば特許文献6,7および非特許文献1を参照。
マスク展開部1052によって生成された展開マスクが、第1ウエーブレット係数データA21についてROI係数と非ROI係数とを判別するための上記マスクである。すなわち、マスク生成部1050は、上記マスクデータB21として展開マスクのデータを生成して出力する。
図10〜図12に、図9の原マスク70を分解レベル1,2,3のウエーブレット平面61〜63(図4〜図6参照)に展開した展開マスク71,72,73をそれぞれ示す。展開マスク71,72,73において、ROI対応部分71a,72a,73aが白抜きで図示され、非ROI対応部分71b,72b,73bが黒塗りで図示されている。
ここで、展開マスクは、マスク対象のウエーブレット画像に含まれる各サブバンド用のマスクの集合体として把握できる。すなわち、サブバンドごとのマスクをサブバンドマスクと呼ぶことにすると、展開マスクはサブバンドマスクの集合体として把握できる。例えば、展開マスクのうちでLLサブバンド用の部分をLLサブバンドマスクと呼ぶことにする。他のサブバンドに対応する部分についても同様とする。展開マスクの分解レベルは、当該展開マスクのデータに付随するものとする。
図13に、マスク展開処理のフローチャートを示す。図13のマスク展開処理S100によれば、マスクの分解レベルを1段階上げる処理(以下、レベル増加単位処理とも呼ぶ)S102が行われる。第1ウエーブレット係数データA21の分解レベルが2以上である場合、その分解レベルのマスクが得られるまで、レベル増加単位処理S102が繰り返される(ステップS101参照)。なお、図13中のステップS101において、第1ウエーブレット係数データA21の分解レベルをg1と表記している。
レベル増加単位処理S102では、処理対象とする現在のマスクを、現在のマスクが適用される現在のウエーブレット平面よりも分解レベルが1段階高い新ウエーブレット平面用の新マスクに、変換する。なお、現在のマスクが原マスクである場合、上記の現在のウエーブレット平面はウエーブレット変換前の原画像が対応する。上記のように原画像を分解レベル0のウエーブレット平面と表現することによって、現在のウエーブレット平面には原画像も含まれることが理解できる。
レベル増加単位処理S102の繰り返しは、再帰的に行われる。すなわち、新マスクを次の現在のマスクに設定することによって、レベル増加単位処理S102が再度、行われる。また、レベル増加単位処理S102の繰り返しは、ウエーブレット変換の方式に従って行われる。例えば上記のMallat型の方式が採用されている場合(図4〜図6参照)、ウエーブレット平面は最低域のサブバンドLLのみを再帰的に分解していく。このため、マスクの展開もサブバンドLLに対応する部分に対してのみ再帰的に行う。
レベル増加単位処理S102は所定のマスク展開条件に基づいて行われ、マスク展開条件はウエーブレット変換のフィルタのタップ数に依存する。
例えばウエーブレット変換の演算処理において5×3フィルタが使用される場合、マスク展開条件は、図14に基づいた2つの条件(第1展開条件と第2展開条件と呼ぶことにする)を含む。なお、5×3フィルタでは、分解側のローパスフィルタが5タップであり、分解側のハイパスフィルタが3タップである。
第1展開条件:現在のウエーブレット平面上の偶数番目(nを整数として、2n番目と表記できる)のデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において低域成分(ローパスフィルタの側の出力データに対応する)のn番目のデータがROIに対応付けられるように、新マスクを形成する。それと共に、新ウエーブレット平面において高域成分(ハイパスフィルタの側の出力データに対応する)の{n−1}番目およびn番目のデータがROIに対応付けられるように、新マスクを形成する。
第2展開条件:現在のウエーブレット平面上の{2n+1}番目のデータが現在のマスクによってROIに対応付けられているとき、新ウエーブレット平面において低域成分のn番目および{n+1}番目ならびに高域成分の{n−1}番目から{n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
また、ウエーブレット変換の演算処理においてDaubechies9×7フィルタが用いられる場合、マスク展開条件は、図15に基づいた2つの条件(第3展開条件と第4展開条件と呼ぶことにする)を含む。なお、Daubechies9×7フィルタでは、分解側のローパスフィルタが9タップであり、分解側のハイパスフィルタが7タップである。
第3展開条件:現在のウエーブレット平面上の2n番目のデータが現在のマスクによってROIに対応付けられているとき、新ウエーブレット平面において低域成分の{n−1}番目から{n+1}番目および高域成分の{n−2}番目から{n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
第4展開条件:現在のウエーブレット平面上の{2n+1}番目のデータが現在のマスクによってROIに対応付けられているとき、新ウエーブレット平面において低域成分の{n−1}番目から{n+2}番目および高域成分の{n−2}番目から{n+2}番目のデータがROIに対応付けられるように、新マスクを形成する。
第1ウエーブレット係数データA21の分解レベルが3の場合、マスク生成部1050は、分解レベル3の展開マスク73(図12参照)を生成し、当該展開マスク73を量子化部1040に供給する。量子化部1040は、展開マスク73におけるROI対応部分73aと非ROI対応部分73bとの区別に基づいて、分解レベル3の第1ウエーブレット係数データA21、換言すれば分解レベル3のウエーブレット画像63(図6参照)の係数判別処理を行う。そして上記のように、量子化部1040は、係数判別結果に基づいて、第1ウエーブレット係数データA21中の非ROI係数の量子化後の値が0になるように、分解レベル3の量子化ウエーブレット係数データA22を生成する。
<符号化部1060>
図3に戻り、符号化部1060は符号化処理を行う。具体的には、符号化部1060は、量子化部1040によって生成された量子化ウエーブレット係数データA22に対して、所定の符号化を行い、それにより符号化データA50を生成する。所定の符号化では、例えば、ビットプレーン符号化を行うEBCOT(Embedded Block Coding with Optimized Truncation)に従ってエントロピー符号化が行われる。図3の例では、符号化部1060は、係数ビットモデリング部1061と、エントロピー符号化部1062とを含んでいる。
係数ビットモデリング部1061は、量子化されたウエーブレット係数に対して、ビットモデリング処理を行う。ここでは、ビットモデリング処理は既知技術を利用するものとし、詳細な説明は省略する。
なお、係数ビットモデリング部1061は、入力されたサブバンドを32×32または64×64程度の「コードブロック」と呼ばれる領域に分割する。そして、係数ビットモデリング部1061は、コードブロック中の各量子化ウエーブレット係数の二進値を構成する各ビット値を別々のビットプレーンに割り当てる。ビットモデリング処理は、そのようなビットプレーン単位で行われる。
エントロピー符号化部1062は、係数ビットモデリング部1061で生成されたデータに対してエントロピー符号化を行って、符号化画像データを生成する。エントロピー符号化として、例えば既知の算術符号化が利用される。
なお、符号化部1060では、エントロピー符号化部1062によって生成された符号化画像データに対してレート制御を行って、符号量を制御してもよい。
<ビットストリーム生成部1070>
ビットストリーム生成部1070はビットストリーム生成処理を行う。具体的には、ビットストリーム生成部1070は、符号化部1060から出力される符号化データA50を付加情報と多重化し、それによりJPEG2000に準拠した符号化ビットストリームAbsを生成する。付加情報として例えば、ヘッダ情報,レイヤー構成、スケーラビリティ情報、量子化テーブル、等が挙げられる。
<供給システム11の動作>
図16に、供給システム11の動作を説明するフローチャートを示す。図16の動作フローS200によれば、供給システム11に第1画像データA20が入力されると、前処理部1020およびマスク生成部1050が第1画像データA20を取得する(ステップS201)。
前処理部1020は、第1画像データA20に対して所定の前処理を行う(ステップS211)。次に、ウエーブレット変換部1030が、前処理後の第1画像データA20に対して所定の分解レベルまでウエーブレット変換を行い、それにより第1ウエーブレット係数データA21を生成する(ステップS212)。
一方、マスク生成部1050は、第1画像データA20に基づいて、第1ウエーブレット係数データA21用のマスク、すなわち第1ウエーブレット係数データA21の分解レベルに対応した展開マスクのデータB21を生成する(ステップS220)。具体的には、原マスク生成部1051が上記の原マスク生成処理を行い(ステップS221)、マスク展開部1052が上記のマスク展開処理を行う(ステップS222)。
なお、図16の例では、ステップS220をステップS211,S212と並行して実行するが、ステップS220をステップS211,S212の前または後で実行することも可能である。
ステップS212で生成された第1ウエーブレット係数データA21と、ステップS220で生成されたマスクデータB21とは、量子化部1040に入力される。量子化部1040は、上記のように、マスクデータB21に基づいて、第1ウエーブレット係数データA21中の非ROI係数の量子化後の値が0になるように、第1ウエーブレット係数データA21に対して量子化を行う(ステップS202)。それにより、量子化ウエーブレット係数データA22が生成される。
量子化ウエーブレット係数データA22は符号化部1060によって符号化され、符号化データA50が生成される(ステップS203)。符号化データA50はビットストリーム生成部1070によって、第1画像用の符号化ビットストリームAbsに変換される(ステップS204)。その後、符号化ビットストリームAbsは、ビットストリーム生成部1070から出力される(ステップS205)。
<合成システム21の例>
図17に、合成システム21の構成例を示す。図17の例によれば、合成システム21は、ビットストリーム解析部1210と、復号化部1220と、第1準備部1230と、第2準備部1240と、マスク準備部1250と、合成実行部1270と、合成画像データ生成部1280と、後処理部1290とを含んでいる。
<ビットストリーム解析部1210>
ビットストリーム解析部1210はビットストリーム解析処理を行う。具体的には、ビットストリーム解析部1210は、符号化ビットストリームAbsをJPEG2000の仕様に準拠して解析し、当該符号化ビットストリームAbsから符号化データA50と付加情報とを抽出する。符号化データA50は復号化部1220に供給される。各種の付加情報はそれぞれ所定の処理部に供給される。
<復号化部1220>
復号化部1220は復号化処理を行う。具体的には、復号化部1220は、符号化データA50に対して、所定の復号化を行う。所定の復号化は、符号量制御を除いて、基本的には、図3の符号化部1060における符号化とは逆の処理にあたる。所定の復号化によって、符号化データA50から、量子化ウエーブレット係数データA22が生成される。図17の例では、復号化部1220は、エントロピー復号化部1221と、係数ビットモデリング部1222とを含んでいる。
エントロピー復号化部1221は、符号化データA50に対してエントロピー復号化を行って、ビットデータを生成する。エントロピー復号化は、図3のエントロピー符号化部1062におけるエントロピー符号化とは逆の処理にあたる。
係数ビットモデリング部1222は、エントロピー復号化部1221によって生成されたビットデータに対してビットモデリング処理を行って、量子化ウエーブレット係数データA22を復元する。ここでのビットモデリング処理は、図3の係数ビットモデリング部1061におけるそれとは逆の処理にあたる。係数ビットモデリング部1222によって生成された量子化ウエーブレット係数データA22は、第1準備部1230とマスク準備部1250とに供給される。
<第1準備部1230>
第1準備部1230は、復号化部1220から量子化ウエーブレット係数データA22を取得し、量子化ウエーブレット係数データA22から第1ウエーブレット係数データA61を生成する。第1ウエーブレット係数データA61は合成実行部1270に供給される。第1準備部1230については後に更に説明する。
<第2準備部1240>
第2準備部1240は、第2画像のデータである第2画像データD20を取得する。第2画像は、第1画像のROIと合成される画像であり、画像合成のための背景画像を提供する。
第2画像データD20は、例えば、合成システム21の側に設けられた画像入力部44、または、画像処理システム20の他のシステムから供給される。なお、第2画像は、デジタルカメラ等によって撮影した画像であってもよいし、あるいは、コンピュータグラフィックスであってもよい。ここで、第2画像として、過去に生成した合成画像(例えば、動画像において所定フレーム数だけ前の合成画像)を利用することもできる。
第2準備部1240は、第2画像データD20から第2ウエーブレット係数データD61を生成する。具体的には、第2準備部1240は、第2画像データD20に対して所定の分解レベルまで(具体的には後述の分解レベルg2まで)ウエーブレット変換を行う。それにより、第2ウエーブレット係数データD61が生成される。ここでのウエーブレット変換は、供給システム11のウエーブレット変換部1030(図3参照)と同様の仕様によって行われる。第2ウエーブレット係数データD61は、合成実行部1270に供給される。
第2準備部1240は、第2画像データD20が更新されるごとに、および、ウエーブレット変換の分解レベルが更新されるごとに、第2ウエーブレット係数データD61を生成する。換言すれば、第2画像データD20が更新されるまで、または、ウエーブレット変換の分解レベルが更新されるまで、その時点で保有している最新の第2ウエーブレット係数データD61が合成実行部1270に供給される。
<マスク準備部1250>
マスク準備部1250は、第1準備部1230で生成される第1ウエーブレット係数データA61に含まれる各ウエーブレット係数が、ROIに関与するROI係数と非ROIに関与する非ROI係数とのいずれであるかを判別するためのマスクを準備する。ここでは、マスク準備部1250は、復号化部1220から量子化ウエーブレット係数データA22を取得し、量子化ウエーブレット係数データA22からマスクデータB61を生成する。マスクデータB61は合成実行部1270に供給される。マスク準備部1250については後に更に説明する。
<合成実行部1270>
合成実行部1270は、第1準備部1230から第1ウエーブレット係数データA61を取得し、第2準備部1240から第2ウエーブレット係数データD61を取得し、マスク準備部1250からマスクデータB61を取得する。合成実行部1270は、これらのデータA61,D61,B61に基づいて、第1画像中のROIと第2画像との画像合成を行う(合成実行処理)。
具体的には、合成実行部1270は、第1ウエーブレット係数データA61中のROI係数と非ROI係数とを、マスクデータB61に基づいて判別する(係数判別処理)。判別結果に基づいて、合成実行部1270は、第1ウエーブレット係数データA61中のROI係数と、第2ウエーブレット係数データD61中のウエーブレット係数(詳細には、第1ウエーブレット係数データA61中の非ROI係数に対応する係数)と、を合成する(係数合成処理)。それにより、合成済み係数データE61が生成される。合成済み係数データE61は、合成画像データ生成部1280に供給される。
図18および図19に、合成実行処理を説明するフローチャートを示す。なお、図18および図19のフローは結合子C1,C2によって繋がっている。図18および図19の合成実行処理S300は、HLサブバンド用の合成実行処理(ステップS310〜S314)と、LHサブバンド用の合成実行処理(ステップS320〜S324)と、HHサブバンド用の合成実行処理(ステップS330〜S334)と、LLサブバンド用の合成実行処理(ステップS340〜S344)とを含んでいる。
具体的には、ステップS301,S303のループによって、処理対象とするサブバンドの分解レベルkが順次設定される。kはge以上gs以下の範囲の整数である。gsはループを開始する分解レベルであり、geはループを終了する分解レベルである。ここではgs≧geとする。すなわち、分解レベルの高い方から順に、処理対象のサブバンドが選択される。
HLサブバンド用の合成実行処理(ステップS310〜S314)では、分解レベルkのHLサブバンド、すなわちHLkサブバンドについて合成実行処理が行われる。具体的には、ステップS310,S314のループによって、HLkサブバンドに対して規定されたサブバンド座標系において、座標(i,j)が順次設定される。iは0以上wk−1以下の範囲の整数である。wkは、処理対象のサブバンド(すなわち分解レベルkのサブバンドであり、ここではHLkサブバンド)の幅(換言すれば水平方向のデータ数)である。jは0以上hk−1以下の範囲の整数である。hkは、処理対象のサブバンドの高さ(換言すれば垂直方向のデータ数)である。
ここで、座標系を説明する。図20に示すように、ウエーブレット平面(換言すれば、ウエーブレット画像)に対して、全体座標系とサブバンド座標系とを規定できる。全体座標系はウエーブレット平面全体に対して規定される。これに対し、サブバンド座標系はサブバンドごとに規定される。図20では図面の煩雑化を避けるためにHH2サブバンド用のサブバンド座標系のみを示しているが、他のサブバンドについてもそれぞれサブバンド座標系を規定できる。
なお、各座標系の原点の位置は、図20の例(対象とする領域の左上端)に限定されるものではない。また、ウエーブレット平面の分解レベルは、図20の例(分解レベル3)に限定されるものではない。
図20のウエーブレット平面は、ウエーブレット係数データによって提供されるウエーブレット画像に対応すると共に、展開マスクにも対応する。すなわち、図20は、画像データと同様に扱える各種データ(ウエーブレット係数データ、量子化ウエーブレット係数データ、展開マスクデータ、等)によって提供される画像を、サブバンド構成に則して示している。このため、サブバンド構成を有する各種画像に対して、サブバンド座標系を規定できる。
図18に戻り、ステップS311では、マスクのHLkサブバンドマスクの座標(i,j)のマスク値MVk(i,j)が0であるか否かが判別される。
MVk(i,j)≠0の場合、ステップS312において、第1ウエーブレット係数データA61の係数値WCk(i,j)、すなわちROI用の係数値WCk(i,j)が、合成済み係数データE61の係数値WCk(i,j)として採用される。換言すれば、第1ウエーブレット画像のHLkサブバンドの座標(i,j)の係数値WCk(i,j)が、合成済みウエーブレット画像のHLkサブバンドの座標(i,j)の係数値WCk(i,j)として、採用される。ここでは、第1ウエーブレット画像は、第1ウエーブレット係数データA61によって提供されるウエーブレット平面である。同様に、合成済みウエーブレット画像は、合成済み係数データE61によって提供されるウエーブレット平面である。
これに対し、マスク値MVk(i,j)=0の場合、ステップS313において、第2ウエーブレット係数データD61の係数値WCk(i,j)、すなわち背景用の係数値WCk(i,j)が、合成済み係数データE61の係数値WCk(i,j)として採用される。換言すれば、第2ウエーブレット画像のHLkサブバンドの座標(i,j)の係数値WCk(i,j)が、合成済みウエーブレット画像のHLkサブバンドの座標(i,j)の係数値WCk(i,j)として、採用される。ここでは、第2ウエーブレット画像は、第2ウエーブレット係数データD61によって提供されるウエーブレット平面である。
同様にして、ステップS301で設定された分解レベルkに関して、LHkサブバンド用、HHkサブバンド用およびLLkサブバンド用の合成実行処理が実行される。すなわち、ステップS320〜S324は上記ステップS310〜S314にそれぞれ対応し、ステップS330〜S334,S340〜S344についても同様である。
ここで、LLサブバンドは1つしか存在しないので、LLサブバンド用の生成処理(ステップS340〜S344)は、分解レベルの最高値(ここではgs)の場合のみ、すなわちLLgsが処理対象として選択された場合のみ、実行される(ステップS302参照)。
<合成画像データ生成部1280>
合成画像データ生成部1280は、合成実行部1270から合成済み係数データE61を取得する。そして、合成画像データ生成部1280は、合成済み係数データE61に対して、分解レベルが所定の終了レベルになるまで逆ウエーブレット変換(IDWT)を行う。これにより、合成済み係数データE61から、合成画像データE80が生成される。
逆ウエーブレット変換は、供給システム11のウエーブレット変換部1030で行われるウエーブレット変換とは逆の処理である。逆ウエーブレット変換では、サブバンドが再帰的に合成される。逆ウエーブレット変換における合成回数は、合成レベルと呼ばれる。なお、逆ウエーブレット変換前の状態の合成レベルを0と表現することにする。
ここでは、逆ウエーブレット変換に関する上記所定の終了レベルは、分解レベル0であるものとする。但し、所定の終了レベルは分解レベル0でなくてもよい。例えば、合成画像データ生成部1280が、逆ウエーブレット変換を分解レベル1まで行い、LL1サブバンドのデータのみを合成画像データE80として出力してもよい。これによれば、分解レベル0まで逆ウエーブレット変換を行った場合の1/4のサイズの合成画像が得られる。すなわち、所定の終了レベルをgfとした場合、1/2gfサイズの合成画像が得られる。
<後処理部1290>
後処理部1290は、合成画像データ生成部1280から合成画像データE80を取得し、合成画像データE80に対して所定の後処理を行う。所定の後処理は、ここでは、供給システム11の前処理部1020で行われる所定の前処理とは逆の処理にあたる。図17の例では、後処理部1290は、タイリング部1291と、色空間変換部1292と、DCレベルシフト部1293とを含んでいる。
タイリング部1291は、供給システム11のタイリング部1023とは逆の処理を行う。具体的には、タイリング部1291は、合成画像データ生成部1280から出力されるタイル単位の合成画像データE80を合成して、1フレーム分の画像データを生成する。なお、合成画像データE80がタイル単位で供給されない場合、換言すれば供給システム11においてウエーブレット変換がタイル単位で行われていなかった場合、タイリング部1291による処理は省略される。あるいは、タイリング部1291自体を省略してもよい。
色空間変換部1292は、供給システム11の色空間変換部1022とは逆の処理を行う。例えば、タイリング部1291から出力された画像データをRGB成分に変換する。DCレベルシフト部1293は、色空間変換部1292から出力された画像データのDCレベルを必要に応じて変換する。図17の例では、DCレベルシフト部1293から出力される合成画像データE100が、合成システム21の出力画像データとなる。
合成画像データE100に基づいて表示部41に表示動作を行わせることによって、第1画像中のROIと第2画像との合成画像が表示される。
<分解レベルg1,g2について>
ここで、以下の説明を理解しやすくするために、量子化ウエーブレット係数データA22の分解レベルを、g1とする。g1は1以上の整数である。量子化ウエーブレット係数データA22は供給システム11において第1ウエーブレット係数データA21から生成されるので、g1は第1ウエーブレット係数データA21の分解レベルでもある。g1の情報は、第1ウエーブレット係数データA21および量子化ウエーブレット係数データA22に付随している。このため、g1の情報は供給システム11から取得される。
また、合成実行部1270において利用する(換言すれば、合成実行部1270に供給される)第1ウエーブレット係数データA61と第2ウエーブレット係数データD61とマスク(マスクデータB61)との分解レベルを、g2とする。g2は基本的には1以上の整数である。但し、以下の説明で述べるように、g2=0であることを許容することによって、g2は0以上の整数であってもよい。
g2の情報は、合成システム21のユーザによって指定されるものとする。例えば、ユーザがg2の値を操作部42を介して入力する。あるいは、供給システム11のユーザがg2を指定してもよい。この場合、g2は、符号化ビットストリームAbsに埋め込まれて、または、符号化ビットストリームAbsとは別個に、合成システム21に供給される。あるいは、g2を合成システム21に固定的に組み込んでおいてもよい。
g2は、g1と異なってもよいし、あるいは同じであってもよい。なお、ユーザによってg2の値が指定されない場合、および、合成システム21にg2の固定値が与えられていない場合、合成システム21がg2=g1と設定するものとする。
<マスク準備部1250の具体例>
図21に、マスク準備部1250の構成例を示す。図21によれば、マスク準備部1250は、基礎マスク生成部1251と、マスク整形部1252と、暫定マスク生成部1253と、マスクマージ部1254と、マスクレベル変換部1255とを含んでいる。
また、図22に、マスク準備部1250での処理についての概念図を示す。図22中のハッチングは、図面を見やすくするために付しているのであって、具体的なマスク画像を示しているのではない。
<基礎マスク生成部1251>
基礎マスク生成部1251は、復号化部1220から、分解レベルg1の量子化ウエーブレット係数データA22を取得する。ここで、量子化ウエーブレット係数データA22では、上記のように、非ROI係数が0に設定されている。基礎マスク生成部1251は、そのような量子化ウエーブレット係数データA22に含まれる各量子化ウエーブレット係数が0であるか否かを判別することによって、分解レベルg1の基礎マスクを生成する。基礎マスクは、量子化ウエーブレット係数データA22用および第1ウエーブレット係数データA61用のマスクである。すなわち、基礎マスクは分解レベルg1の展開マスクである。
図21の例によれば、基礎マスク生成部1251は、非参照型マスク生成部1251aと、参照型マスク生成部1251bとを含んでいる。
<非参照型マスク生成部1251a>
非参照型マスク生成部1251aは、基礎マスクの第1例である非参照型マスクを生成する。具体的には、非参照型マスク生成部1251aは、非参照型のマスク推定規則(以下、非参照型推定規則とも呼ぶ)に従って、量子化ウエーブレット係数データA22から非参照型マスクを生成する。
非参照型推定規則によれば、マスク(すなわち非参照型マスク)を構成する或るサブバンドマスクを生成する際に、量子化ウエーブレット係数データA22のうちで対応するサブバンドのみを参照し、他のサブバンドを参照しない。
非参照型推定規則では、量子化ウエーブレット係数データA22によって提供される量子化ウエーブレット画像の各サブバンドに、サブバンド座標系を規定する。そして、分解レベルkのサブバンドにおける座標(i,j)の量子化ウエーブレット係数値を、QCk(i,j)とする。同様に、非参照型マスクの各サブバンドに、サブバンド座標系を規定する。そして、分解レベルkのサブバンドにおける座標(i,j)のマスク値を、MVk(i,j)とする。
この場合、非参照型推定規則では、QCk(i,j)が0である場合、非参照型マスクのMVk(i,j)を非ROI指示値に設定する。これに対し、QCk(i,j)が0でない場合、非参照型マスクのMVk(i,j)をROI指示値に設定する。なお、ROI指示値は、マスクにおいてROI対応部分(図9〜図12のROI対応部分70a〜73aを参照)に対応することを示す所定値であり、例えば“1”が割り当てられる。これに対し、非ROI指示値は、マスクにおいて非ROI対応部分(図9〜図12の非ROI対応部分70b〜73bを参照)に対応することを示す所定値であり、例えば“0”が割り当てられる。
図23に、非参照型マスクの生成処理のフローチャートを示す。図23のマスク生成処理S400は、HLサブバンドマスク生成処理(ステップS410〜S414)と、LHサブバンドマスク生成処理(ステップS420〜S424)と、HHサブバンドマスク生成処理(ステップS430〜S434)と、LLサブバンドマスク生成処理(ステップS440〜S444)とを含んでいる。
具体的には、ステップS401,S403のループによって、処理対象とするサブバンドの分解レベルkが順次設定される。kは1以上g1以下の範囲の整数である。
HLサブバンドマスク生成処理(ステップS410〜S414)では、非参照型マスクのうちで分解レベルkのHLサブバンド、すなわちHLkサブバンドマスクが生成される。具体的には、ステップS410,S414のループによって、HLkサブバンドに対して規定されたサブバンド座標系において、座標(i,j)が順次設定される。iは0以上wk−1以下の範囲の整数である。wkは、処理対象のサブバンド(すなわち分解レベルkのサブバンドであり、ここではHLkサブバンド)の幅(換言すれば水平方向のデータ数)である。jは0以上hk−1以下の範囲の整数である。hkは、処理対象のサブバンドの高さ(換言すれば垂直方向のデータ数)である。
ステップS411では、量子化ウエーブレット画像のHLkサブバンドについて、量子化ウエーブレット係数QCk(i,j)が0であるか否かが判別される。QCk(i,j)≠0の場合、ステップS412において、HLkサブバンドマスクの座標(i,j)のマスク値MVk(i,j)がROI指示値(ここでは“1”)に設定される。これに対し、QCk(i,j)=0の場合、ステップS413において、HLkサブバンドマスクの座標(i,j)のマスク値MVk(i,j)が非ROI指示値(ここでは“0”)に設定される。
同様にして、ステップS401で設定された分解レベルkに関して、LHkサブバンドマスクと、HHkサブバンドマスクと、LLkサブバンドマスクとが生成される。すなわち、ステップS420〜S424は上記ステップS410〜S414にそれぞれ対応し、ステップS430〜S434,S440〜S444についても同様である。
ここで、LLサブバンドは、分解レベルg1のサブバンド構成において1つしか存在しない。このため、LLサブバンドマスク生成処理(ステップS440〜S444)は、k=g1の場合のみ、すなわちLLg1が処理対象として選択された場合のみ、実行される(ステップS402参照)。
なお、非参照型推定規則は、全体座標系を用いて規定することもできる。すなわち、全体座標系の下で、座標(i,j)の量子化ウエーブレット係数値をQC(i,j)とし、座標(i,j)のマスク値をMV(i,j)とする。この場合、QC(i,j)が0である場合、MV(i,j)を非ROI指示値に設定する。これに対し、QC(i,j)が0でない場合、MV(i,j)をROI指示値に設定する。
<参照型マスク生成部1251b>
図21に戻り、参照型マスク生成部1251bは、基礎マスクの第2例である参照型マスクを生成する。具体的には、参照型マスク生成部1251bは、参照型のマスク推定規則(以下、参照型推定規則とも呼ぶ)に従って、量子化ウエーブレット係数データA22から参照型マスクを生成する。
参照型推定規則によれば、マスク(すなわち参照型マスク)を構成する或るサブバンドマスクを生成する際に、量子化ウエーブレット係数データA22のうちで対応するサブバンドだけでなく、分解レベルが同じである他のサブバンドも参照する。
具体的には、量子化ウエーブレット係数データA22によって提供される量子化ウエーブレット画像の各サブバンドに、サブバンド座標系を規定する。そして、分解レベルkのサブバンドにおける座標(i,j)の量子化ウエーブレット係数値を、QCk(i,j)とする。同様に、参照型マスクの各サブバンドに、サブバンド座標系を規定する。そして、分解レベルkのサブバンドにおける座標(i,j)のマスク値を、MVk(i,j)とする。この場合、参照型推定規則は、次の第1〜第4のマスク値設定規則を含む。
第1のマスク値設定規則:分解レベルkのサブバンドが複数存在し且つ少なくとも1つのQCk(i,j)が0でない場合、参照型マスクの全てのMVk(i,j)をROI指示値に設定する。
第2のマスク値設定規則:分解レベルkのサブバンドが複数存在し且つ全てのQCk(i,j)が0である場合、参照型マスクの全てのMVk(i,j)を非ROI指示値に設定する。
第3のマスク値設定規則:分解レベルkのサブバンドが1つしか存在せず且つQCk(i,j)が0でない場合、参照型マスクのMVk(i,j)をROI指示値に設定する。
第4のマスク値設定規則:分解レベルkのサブバンドが1つしか存在せず且つQCk(i,j)が0である場合、参照型マスクのMVk(i,j)を非ROI指示値に設定する。
図24に、参照型マスクの生成処理のフローチャートを示す。図24のマスク生成処理S500は、HL、LHおよびHH用のサブバンドマスク生成処理(ステップS510〜S514)と、LL用のサブバンドマスク生成処理(ステップS540〜S544)とを含んでいる。
具体的には、ステップS501,S503のループによって、処理対象とするサブバンドの分解レベルkが順次設定される。kは1以上g1以下の範囲の整数である。
HL、LHおよびHH用のサブバンドマスク生成処理(ステップS510〜S514)では、HLkサブバンドマスクと、LHkサブバンドマスクと、HHkサブバンドマスクとが生成される。具体的には、ステップS510,S514のループによって、HLkサブバンドとLHkサブバンドとHHkサブバンドとのそれぞれに対して規定されたサブバンド座標系において、座標(i,j)が順次設定される。iは0以上wk−1以下の範囲の整数である。wkは、処理対象のサブバンド(すなわち分解レベルkのサブバンドであり、ここではHLk、LHkおよびHHkの3つのサブバンド)の幅である。jは0以上hk−1以下の範囲の整数である。hkは、処理対象のサブバンドの高さである。
ステップS511では、量子化ウエーブレット画像のHLk、LHkおよびHHkの3つのサブバンドについて、量子化ウエーブレット係数QCk(i,j)が0であるか否かが判別される。
HLk、LHkおよびHHkのサブバンドのうちの少なくとも1つにおいてQCk(i,j)≠0の場合、ステップS512において、HLk、LHkおよびHHkの全てのサブバンドマスクの座標(i,j)のマスク値MVk(i,j)がROI指示値(ここでは“1”)に設定される。すなわち、ステップS512によって、上記の第1のマスク値設定規則が適用される。
これに対し、HLk、LHkおよびHHkのサブバンドの全てにおいてQCk(i,j)=0の場合、ステップS513において、HLk、LHkおよびHHkの全てのサブバンドマスクの座標(i,j)のマスク値MVk(i,j)が非ROI指示値(ここでは“0”)に設定される。すなわち、ステップS513によって、上記の第2のマスク値設定規則が適用される。
ここで、LLサブバンドは、分解レベルg1のサブバンド構成において1つしか存在しない。このため、LL用のサブバンドマスク生成処理(ステップS540〜S544)は、k=g1の場合のみ、すなわちLLg1が処理対象として選択された場合のみ、実行される(ステップS502参照)。ステップS540〜S544は、非参照型推定規則のステップS440〜S444(図23参照)と同様である。ここで、ステップS542によって上記の第3のマスク値設定規則が適用され、ステップS543によって上記の第4のマスク値設定規則が適用される。
<マスク整形部1252>
図21に戻り、マスク整形部1252は、基礎マスク(ここでは、非参照型マスクと参照型マスクとのうちのいずれか一方)のうちの所定のサブバンドの部分を、サブバンドマスクとして取得する。そして、マスク整形部1252は、取得したサブバンドマスクに対して、所定の整形処理を行う。整形処理によって得られたマスクを、整形マスクと呼ぶことにする。特に、整形マスクのマスクサイズ(換言すれば形状および大きさ)は非参照型マスクおよび参照型マスクと同じであり、且つ、整形マスクの分解レベルは0である(図22参照)。
図22の例によれば、参照型マスクのうちの分解レベル2のサブバンドが、サブバンドマスクとして抽出される。上記ステップS511〜S513によれば、分解レベルが同じサブバンド(HLk、LHkおよびHHk)のマスク画像は同じになる。このため、HL2、LH2およびHH2のいずれのサブバンドマスクを選択しても、同じサブバンドマスクデータが得られる。
サブバンドマスクの抽出は、図22の例に限定されるものではない。
すなわち、非参照型マスクと参照型マスクとのいずれを選択するのかについての情報は、合成システム21のユーザによって指定されるものとする。例えば、ユーザが、選択するマスクの種別を操作部42を介して入力する。あるいは、供給システム11のユーザが、選択するマスクを指定してもよい。この場合、その情報は、符号化ビットストリームAbsに埋め込まれて、または、符号化ビットストリームAbsとは別個に、合成システム21に供給される。あるいは、選択するマスクの種別を、マスク整形部1252に固定的に組み込んでおいてもよい。
同様に、どのサブバンドマスクを選択するのかについての情報は、合成システム21のユーザによって指定されるものとする。例えば、ユーザが、選択するサブバンドマスクの分解レベルを、操作部42を介して入力する。分解レベルに加えて、HL、LHおよびHHのいずれを選択するのかを指定してもよい。あるいは、どのサブバンドマスクを選択するのかについての情報を、供給システム11のユーザが指定してもよいし、マスク整形部1252に固定的に組み込んでおいてもよい。
図21の例によれば、マスク整形部1252は、モフォロジー処理部1252aと、拡大部1252bとを含んでいる。
<モフォロジー処理部1252a>
モフォロジー処理部1252aは、整形対象のサブバンドマスクに対して、モフォロジー処理を行う。モフォロジー処理は一般的に、2値画像を平滑化するために利用されている。マスク画像は2値画像であるので、モフォロジー処理はサブバンドマスクにも適用可能である。
モフォロジー処理は、例えば、膨張(Dilation)と収縮(Erosion)とを数回組み合わせて行う処理である。膨張とは、注目画素を中心にした周辺領域内に1画素でも白い画素があれば、その注目画素を白に置き換える処理である。逆に収縮とは、周辺領域内に1画素でも黒い画素があれば、注目画素を黒に置き換える処理である。周辺領域として3×3、5×5、7×7等の範囲が設定される。モフォロジー処理によれば、マスク画像を平滑化する(ギザギザ形状を減らして滑らかにする)ことができ、さらに孤立点除去(換言すれば、穴埋め)等にも有効である。
<拡大部1252b>
拡大部1252bは、モフォロジー処理後のサブバンドマスクを非参照型マスクと同じマスクサイズに拡大し、それにより拡大マスクを生成する。ここで、モフォロジー処理前のサブバンドマスクは、1つのサブバンド用のマスクである。このため、当該サブバンドマスクだけを見れば、分解レベルは0である。したがって、拡大部1252bによって生成される拡大マスクが、マスクサイズが非参照型マスクと同じであり且つ分解レベルが0である整形マスクとなる(図22参照)。
ここでは、拡大部1252bが、拡大比2の拡大処理をR回行うことによって、拡大マスクを生成する例を挙げる。例えば、非参照型マスクまたは参照型マスクから分解レベル2のサブバンドマスクを抽出し、当該サブバンドマスクを非参照型マスクのサイズまで拡大する場合を想定する。この場合、R=2である(図22参照)。
そのようなマスク拡大処理を説明するフローチャートを図25に示す。図25の処理フローS600によれば、ステップS602において拡大比2の拡大処理が実行される。拡大比2の拡大処理が所定回数(ここではR回)実行済みであるとステップS601において判別されるまで、ステップS602が実行される。
図26に、拡大比2の拡大処理について説明図を示す。図26によれば、拡大前のマスクにおいてi番目(iは整数)のデータがROIに対応する場合、拡大比2で拡大した後のマスクにおいて{2i−1}番目から{2i+1}番目までのデータがROIに対応すると推定する。
図26の推定規則を2次元に発展させると、図27に示すように、マスク画像の縦方向および横方向のそれぞれに図26の推定規則が適用される。具体的には、拡大前のマスクにおいて座標(I,J)の点のデータがROIに対応する場合、1段階(すなわち拡大比2)拡大した後のマスクにおいて座標(2I,2J)を中心にした3×3点の範囲のデータがROIに対応すると推定する。換言すれば、座標(2I−1,2J−1)および座標(2I+1,2J+1)を対角点とする矩形範囲のデータをROIに対応付ける。同様に、2段階(すなわち拡大比2)拡大した後のマスクでは、座標(4I,4J)を中心にした5×5点の範囲、換言すれば、座標(4I−2,J−2)および座標(I+2,J+2)を対角点とする矩形範囲のデータがROIに対応付ける。
なお、図25の処理フローS600とは違えて、一度に1/2の拡大を行うことも可能である。
なお、拡大処理をモフォロジー処理の後に実行してもよい。あるいは、R回の拡大処理のうちの少なくとも1回の終了時点で、拡大後のマスクに対してモフォロジー処理を行ってもよい。
マスク整形部1252によって生成された整形マスクのデータは、暫定マスク生成部1253に供給される。
<暫定マスク生成部1253>
図21に戻り、暫定マスク生成部1253は、整形マスクに対してマスク展開処理を行う。具体的には、暫定マスク生成部1253は、分解レベル0の整形マスクを分解レベルg1のサブバンド構成に展開し、それにより分解レベルg1の暫定マスクを生成する(図22参照)。
暫定マスク生成部1253は、供給システム11のマスク展開部1052と同様に動作する(図7、図13〜図15参照)。このため、ここでは重複の説明を省略する。
暫定マスク生成部1253によって生成された暫定マスクのデータは、マスクマージ部1254に供給される。
<マスクマージ部1254>
図21に示すように、マスクマージ部1254は、非参照型マスクおよび暫定マスクのデータを取得し、非参照型マスクと暫定マスクとをサブバンド単位で部分的にマージし、それによりマスク(以下、マージマスクと呼ぶ場合もある)を生成する。マージマスクの分解レベルは、非参照型マスクおよび暫定マスクと同じg1である。
図22の例では、非参照型マスクのサブバンドLL3,HL3,LH3,HH3,HL2,LH2,HH2と、暫定マスクのサブバンドHL1,LH1,HH1とがマージされている。すなわち、マージマスクにおいて、分解レベル2以上のサブバンドが非参照型マスクによって構成され、分解レベル1のサブバンドが暫定マスクによって構成されている。
図22のマージマスクは、図28のフローチャートによって生成可能である。図28のマスクマージ処理S700によれば、ステップS701,S705のループによって、処理対象とするサブバンドの分解レベルkが順次設定される。kは1以上g1以下の範囲の整数である。
ステップS701で設定された分解レベルkは、ステップS702において分解レベルgmと比較される。分解レベルgmは、マージマスクにおいて非参照型マスクと暫定マスクとの境界を示す。より具体的には、マージマスクにおいて分解レベルがgm以下のサブバンドは、暫定マスクを採用する(ステップS702,S704参照)。これに対し、マージマスクにおいて分解レベルがgmよりも高いサブバンドは、非参照型マスクを採用する(ステップS702,S703参照)。図22の例ではgm=1である。なお、1≦gm≦g1である。
図29および図30に、マージマスクの他の構成例を示す。図29のマージマスクでは、サブバンドLL3,HL3,LH3,HH3,HL2,LH2が非参照型マスクによって構成され、サブバンドHH2,HL1,LH1,HH1が暫定マスクによって構成されている。図30のマージマスクでは、サブバンドLL3が非参照型マスクによって構成され、サブバンドHL3,LH3,HH3,HL2,LH2,HH2,HL1,LH1,HH1が暫定マスクによって構成されている。
なお、図22と図29と図30のいずれの例においても、マージマスクの低分解側サブバンドに暫定マスクが採用され、マージマスクの高分解側サブバンドに非参照型マスクが採用されている。但し、この例に限定されるものではない。
ここで、図29の例によれば、図22および図30の例とは異なり、非参照型マスクと暫定マスクとの組み合わせを、分解レベルgmの値によって規定するのは難しい。このため、図29の例に関しては、図28のステップS702において、非参照型マスクと暫定マスクとのいずれを採用するのかについて予め規定されたマージ割り当て情報を利用すればよい。具体的にマージ割り当て情報として、マージマスクのサブバンドLL3,HL3,LH3,HH3,HL2,LH2には非参照型マスクのうちで対応するサブバンドマスクを採用し、マージマスクのサブバンドHH2,HL1,LH1,HH1には暫定マスクのうちで対応するサブバンドマスクを採用する、という内容が規定される。なお、マージ割り当て情報は、一例として、分解レベルgmによって規定することができる。
マージ割り当て情報は、合成システム21のユーザによって指定されるものとする。例えば、ユーザが、マージ割り当て情報を、操作部42を介して入力する。あるいは、マージ割り当て情報を、供給システム11のユーザが指定してもよい。この場合、マージ割り当て情報は、符号化ビットストリームAbsに埋め込まれて、または、符号化ビットストリームAbsとは別個に、合成システム21に供給される。あるいは、マージ割り当て情報を、マスクマージ部1254に固定的に組み込んでおいてもよい。
マスクマージ部1254によって生成されたマージマスクのデータB31(図21参照)は、g2=g1の場合、マスクデータB61(図17参照)としてマスク準備部1250から出力され、合成実行部1270に供給される。
これに対し、g2<g1の場合、マージマスクデータB31は、マスクレベル変換部1255に供給される。
また、g2>g1の場合、マージマスクデータB31は、マスクレベル変換部1255に供給されると共に、マスクデータB41(図17参照)としてマスク準備部1250から出力され、第1準備部1230に供給される。
<マスクレベル変換部1255>
図21に戻り、マスクレベル変換部1255は、マスクマージ部1254から供給された分解レベルg1のマスクから、分解レベルg2のマスクを生成する。図21の例によれば、マスクレベル変換部1255は、マスク復元部1255aとマスク展開部1255bとを含んでいる。
<マスク復元部1255a>
マスク復元部1255aは、g2<g1の場合に、マスクマージ部1254から供給された分解レベルg1のマスクに対してマスク復元処理を行う。具体的には、マスク復元部1255aは、分解レベルg1のマスクを分解レベルg2(<g1)のサブバンド構成に復元する。マスク復元処理は、与えられたマスクから、分解レベルがより低いマスクを復元する処理であり、上記のマスク展開処理(図13〜図15参照)の逆の処理にあたる。マスクの復元に関しては、例えば特許文献6,7および非特許文献1を参照。生成された分解レベルg2のマスクのデータは、マスクレベル変換部1255からの出力データ(すなわちマスクデータ)B32となる。
図31に、マスク復元処理のフローチャートを示す。図31のマスク復元処理S800によれば、マスクの分解レベルを1段階下げる処理(以下、レベル減少単位処理とも呼ぶ)S802が行われる。分解レベルg1と分解レベルg2との差が2以上である場合、分解レベルg2のマスクが得られるまで、レベル減少単位処理S802が繰り返される(ステップS801参照)。
レベル減少単位処理S802では、処理対象とする現在のマスクを、現在のマスクが適用される現在のウエーブレット平面よりも分解レベルが1段階低い新ウエーブレット平面用の新マスクに、変換する。
レベル減少単位処理S802の繰り返しは、再帰的に行われる。すなわち、新マスクを次の現在のマスクに設定することによって、レベル減少単位処理S802が再度、行われる。また、レベル減少単位処理S802の繰り返しは、合成画像データ生成部1280での逆ウエーブレット変換の方式に従って行われる。例えば上記のMallat型の方式が採用されている場合(図4〜図6参照)、ウエーブレット平面中の最上位サブバンド(分解レベルkではLLk,HLk,LHk,HHk)のみを再帰的に合成していく。このため、マスクの復元は最上位サブバンドに対応する部分に対してのみ再帰的に行う。
<マスク復元条件>
レベル減少単位処理S802は所定のマスク復元条件に基づいて行われる。マスク復元条件は、現在のウエーブレット平面の指定位置のデータが現在のマスクによってROIに対応付けられている場合に、新ウエーブレット平面において上記指定位置に対応付けられた位置のデータがROIに対応付けられるように新マスクを形成することを規定している。
マスク復元条件は逆ウエーブレット変換のフィルタのタップ数に依存する。例えば逆ウエーブレット変換の演算処理において5×3フィルタが使用される場合、マスク復元条件は図32に基づく。また、逆ウエーブレット変換の演算処理においてDaubechies9×7フィルタが用いられる場合、マスク復元条件は図33に基づく。
図32および図33のいずれの場合にも、マスク復元条件は2つの条件(第1復元条件と第2復元条件と呼ぶことにする)に大別される。すなわち、第1復元条件は、新ウエーブレット平面において2n番目(nは整数)のデータがROIに対応付けられるように新マスクを形成するためのものである。第2復元条件は、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように新マスクを形成するためのものである。
ここで、第1復元条件および第2復元条件も、現在のウエーブレット平面の指定位置のデータが現在のマスクによってROIに対応付けられているという条件(復元実行条件と呼ぶことにする)を課している。
第1復元条件において上記指定位置は、新ウエーブレット平面の上記2n番目に対応付けられた位置である。当該位置を以下、第1指定位置と呼ぶ場合もある。図32を参照すると5×3フィルタの場合、第1指定位置の候補は、現在のウエーブレット平面において低域成分(ローパスフィルタの側の入力データに対応する)のn番目および高域成分(ハイパスフィルタの側の入力データに対応する)の{n−1}番目とn番目である。図33を参照するとDaubechies9×7フィルタの場合、現在のウエーブレット平面において低域成分の{n−1}番目から{n+1}番目および高域成分の{n−2}番目から{n+1}番目が、第1指定位置の候補になる。
同様に、第2復元条件において上記指定位置は、新ウエーブレット平面の上記{2n+1}番目に対応付けられた位置である。当該位置を以下、第2指定位置と呼ぶ場合もある。図32を参照すると5×3フィルタの場合、第2指定位置の候補は、現在のウエーブレット平面において低域成分のn番目と{n+1}番目および高域成分の{n−1}番目から{n+1}番目である。図33を参照するとDaubechies9×7フィルタの場合、現在のウエーブレット平面において低域成分の{n−1}番目から{n+2}番目および高域成分の{n−2}番目から{n+2}番目が、第2指定位置の候補になる。
指定位置のこれらの候補の利用形態に応じて、第1復元条件および第2復元条件を様々に規定可能である。その結果、新マスクを様々に調整可能である。ここでは、指定位置の候補の利用形態は、ユーザの指示によって設定されるものとする。以下、このユーザ指示を、マスク調整指示と呼ぶことにする。また、マスク調整指示は分解レベルg2の情報に付随するものとし、それによりマスク調整指示が合成システム21におけるレベル減少単位処理S802に供給されるものとする(図31参照)。但し、マスク調整指示を、分解レベルg2の情報とは別個に供給することも可能である。
指定位置の候補の利用形態、換言すればマスク調整指示の内容は、数多く想定される。以下では、マスク調整指示がモード指示と低域選択指示と高域選択指示という3つの指示によって構成される例を説明する。
モード指示(MODE)は、現在のウエーブレット平面の低域成分と高域成分とのうちでどのサブバンドを利用するのか否かに関する。低域成分のみを利用する指示を、MODE=Lと表現することにする。また、低域成分と高域成分の両方を利用する指示を、MODE=LHと表現することにする。
低域選択指示(LSEL)は、現在のウエーブレット平面の低域成分に含まれる全ての候補に復元実行条件を課すのか否かに関する。低域成分に含まれる全ての候補が復元実行条件を満足することを要求する場合、LSEL=ANDと表現することにする。逆に、低域成分に含まれる少なくとも1つの候補が復元実行条件を満足すれば良い場合、LSEL=ORと表現することにする。
高域選択指示(HSEL)は、現在のウエーブレット平面の高域成分に含まれる全ての候補に復元実行条件を課すのか否かに関する。高域成分に含まれる全ての候補が復元実行条件を満足することを要求する場合、HSEL=ANDと表現することにする。逆に、高域成分に含まれる少なくとも1つの候補が復元実行条件を満足すれば良い場合、HSEL=ORと表現することにする。
なお、モード指示MODEと低域選択指示LSELと高域選択指示HSELとは、回路的には、各指示用に割り当てられた3つの信号によって、マスク復元部1255aに供給可能である。
マスク調整指示の具体例のいくつかを表1に示す。但し、マスク調整指示の内容は表1の例に限定されるものではない。
表1において、マスク調整指示#1はロスレス圧縮向けである。すなわち、供給システム11での画像圧縮(より具体的にはROI係数の量子化)がロスレスである場合、マスク調整指示#1が好適である。なお、ロスレス圧縮によれば、量子化後のROI係数は0にならない。
マスク調整指示#2はニアロスレス圧縮向けである。ニアロスレス圧縮によれば、ロスレス圧縮に比べてデータロスは大きくなるが、ロスレス圧縮と同程度の画質が得られる。かかる点に鑑みれば、ニアロスレス圧縮は、データ上は非可逆性であるが画質上は可逆性の圧縮として捉えることができる。但し、ロスレスとロッシーという2つの大分類においては、ニアロスレスはロッシーに分類されることが多い。
マスク調整指示#3〜#7はロッシー圧縮用である。ロッシー圧縮によれば、高域成分において量子化後のROI係数が0になりやすい傾向がある。この傾向が強くなるほど(換言すれば、量子化値が大きい(つまり圧縮率が大きい)、高域成分において、量子化後の値が0になるROI係数が多い場合)、#4、#7、#3、#6、#5の順に指示を適用するのが好ましい。
なお、表1の例ではマスク調整指示#1,#2,#5は同じであるが、説明のために重複して記載している。
<5×3フィルタの場合>
以下、表1を参照しつつ、逆ウエーブレット変換に5×3フィルタが使用される場合について、マスク調整指示ごとに、第1復元条件および第2復元条件を説明する。
<5×3フィルタの場合のマスク調整指示#1,#2,#5>
マスク調整指示#1,#2,#5(MODE=LH、且つ、LSEL=AND、且つ、HSEL=AND)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分のn番目のデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−1}番目とn番目との全てのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分のn番目と{n+1}番目との全てのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−1}番目から{n+1}番目の全てのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<5×3フィルタの場合のマスク調整指示#3>
マスク調整指示#3(MODE=L、且つ、LSEL=AND)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分のn番目のデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分のn番目と{n+1}番目との全てのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<5×3フィルタの場合のマスク調整指示#4>
マスク調整指示#4(MODE=L、且つ、LSEL=OR)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分のn番目のデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
ここでは、低域成分のn番目のみが候補であるので、この第1復元条件は上記のマスク調整指示#3と同じになる。
第2復元条件:現在のウエーブレット平面の低域成分のn番目と{n+1}番目とのうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<5×3フィルタの場合のマスク調整指示#6>
マスク調整指示#6(MODE=LH、且つ、LSEL=AND、且つ、HSEL=OR)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分のn番目のデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−1}番目とn番目とのうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分のn番目と{n+1}番目との全てのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−1}番目から{n+1}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<5×3フィルタの場合のマスク調整指示#7>
マスク調整指示#7(MODE=LH、且つ、LSEL=OR、且つ、HSEL=OR)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分のn番目のデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−1}番目とn番目とのうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
ここでは、低域成分のn番目のみが候補であるので、この第1復元条件は上記のマスク調整指示#6と同じになる。
第2復元条件:現在のウエーブレット平面の低域成分のn番目と{n+1}番目とのうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−1}番目から{n+1}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<Daubechies9×7フィルタの場合>
以下、表1を参照しつつ、逆ウエーブレット変換にDaubechies9×7フィルタが使用される場合について、マスク調整指示ごとに、第1復元条件および第2復元条件を説明する。
<Daubechies9×7フィルタの場合のマスク調整指示#1,#2,#5>
マスク調整指示#1,#2,#5(MODE=LH、且つ、LSEL=AND、且つ、HSEL=AND)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+1}番目の全てのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−2}番目から{n+1}番目の全てのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+2}番目の全てのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−2}番目から{n+2}番目の全てのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<Daubechies9×7フィルタの場合のマスク調整指示#3>
マスク調整指示#3(MODE=L、且つ、LSEL=AND)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+1}番目の全てのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+2}番目の全てのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
Daubechies9×7フィルタの場合のマスク調整指示#4>
マスク調整指示#4(MODE=L、且つ、LSEL=OR)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+1}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+2}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<Daubechies9×7フィルタの場合のマスク調整指示#6>
マスク調整指示#6(MODE=LH、且つ、LSEL=AND、且つ、HSEL=OR)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+1}番目の全てのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−2}番目から{n+1}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+2}番目の全てのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−2}番目から{n+2}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<Daubechies9×7フィルタの場合のマスク調整指示#7>
マスク調整指示#7(MODE=LH、且つ、LSEL=OR、且つ、HSEL=OR)によれば、第1復元条件および第2復元条件は次のように規定される。
第1復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+1}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−2}番目から{n+1}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において2n番目のデータがROIに対応付けられるように、新マスクを形成する。
第2復元条件:現在のウエーブレット平面の低域成分の{n−1}番目から{n+2}番目のうちの少なくとも1つデータが現在のマスクによってROIに対応付けられ、且つ、現在のウエーブレット平面の高域成分の{n−2}番目から{n+2}番目のうちの少なくとも1つのデータが現在のマスクによってROIに対応付けられている場合、新ウエーブレット平面において{2n+1}番目のデータがROIに対応付けられるように、新マスクを形成する。
<マスク調整指示>
このように、第1復元条件および第2復元条件における上記指定位置を、マスク調整指示によって指示できる。ユーザは、モード指示(MODE)と低域選択指示(LSEL)と高域選択指示(HSEL)とをそれぞれ入力することによって、マスク調整指示を入力することが可能である。あるいは、表1のように、モード指示(MODE)と低域選択指示(LSEL)と高域選択指示(HSEL)とを予め組み合わせて複数のマスク調整指示を予め規定しておき、ユーザはその中からマスク調整指示を選ぶようにしてもよい。
なお、モード指示(MODE)を低域選択指示(LSEL)と高域選択指示(HSEL)のそれぞれに組み込むことも可能である。例えば、低域成分を利用しない指示としてLSEL=NOを追加し、高域成分を利用しない指示としてHSEL=NOを追加すれば、モード指示(MODE)を別途設ける必要がない。
<マスク展開部1255b>
図21に戻り、マスク展開部1255bは、g2>g1の場合に、マスクマージ部1254から供給された分解レベルg1のマスクに対してマスク展開処理を行う。具体的には、マスク展開部1255bは、分解レベルg1のマスクを分解レベルg2(>g1)のサブバンド構成に展開する。生成された分解レベルg2のマスクのデータは、マスクレベル変換部1255からの出力データ(すなわちマスクデータ)B32となる。
マスク展開部1255bは、供給システム11のマスク展開部1052と同様に動作する(図7、図13〜図15参照)。このため、ここでは重複の説明を省略する。
また、マスク展開部1255bは、暫定マスク生成部1253と同様に動作する。このため、マスク展開部1255bは暫定マスク生成部1253と同じ回路によって実現できる。これとは逆に、マスク展開部1255bと暫定マスク生成部1253とを別々の回路によって実現してもよい。
<マスク準備部1250の出力データB61,B41>
マスク準備部1250の上記構成によれば、マスクマージ部1254によって分解レベルg1のマスク(マスクデータB31)が生成され、マスクレベル変換部1255によって分解レベルg2のマスク(マスクデータB32)が生成される。
g2=g1の場合、マスクマージ部1254によって生成された分解レベルg1のマスクデータB31が、マスクデータB61としてマスク準備部1250から出力され、合成実行部1270に供給される。
g2<g1の場合、マスクレベル変換部1255(詳細にはマスク復元部1255a)によって生成された分解レベルg2のマスクデータB32が、マスクデータB61としてマスク準備部1250から出力され、合成実行部1270に供給される。
g2>g1の場合、マスクレベル変換部1255(詳細にはマスク展開部1255b)によって生成された分解レベルg2のマスクデータB32が、マスクデータB61としてマスク準備部1250から出力され、合成実行部1270に供給される。また、マスクマージ部1254によって生成された分解レベルg1のマスクデータB31が、マスクデータB41としてマスク準備部1250から出力され、第1準備部1230に供給される。
<マスク準備部1250の動作>
図34に、マスク準備部1250の動作を説明するフローチャートを示す。図34のマスク準備フローS900によれば、ステップS901において、基礎マスク生成部1251が基礎マスクを生成する。例えば図22のフローでは、分解レベルg1の非参照型マスクと、分解レベルg1の参照型マスクが生成される。その後、ステップS902において、マスク整形部1252が、非参照型マスクまたは参照型マスクから、分解レベル0の整形マスクを生成する。なお、非参照型マスクから整形マスクを生成する場合、上記ステップS901において参照型マスクの生成を省略することも可能である。
次に、ステップS903において、暫定マスク生成部1253が、分解レベル0の整形マスクから、分解レベルg1の暫定マスクを生成する。そして、ステップS904において、マスクマージ部1254が、分解レベルg1の暫定マスクと、分解レベルg1の非参照型マスクとをマージする。
その後は、g1とg2との比較結果に応じて、処理内容が決まる。すなわち、g2>g1の場合(ステップS905参照)、マスクレベル変換部1255が、マスク展開処理によって、マージマスクを分解レベルg1から分解レベルg2に変換する(ステップS911)。そして、マスクレベル変換部1255は、分解レベルg2の変換済みマスクを合成実行部1270に出力し、分解レベルg1のマージマスクを第1準備部1230に出力する(ステップS912)。
これに対し、g2<g1の場合(ステップS905,S906参照)、マスクレベル変換部1255が、マスク復元処理によって、マージマスクを分解レベルg1から分解レベルg2に変換する(ステップS931)。そして、マスクレベル変換部1255は、分解レベルg2の変換済みマスクを合成実行部1270に出力する(ステップS932)。
あるいは、g2=g1の場合(ステップS905,S906参照)、マスクマージ部1254が、分解レベルg1のマージマスクを合成実行部1270に出力する(ステップS921)。
<第1準備部1230の具体例>
図35に、第1準備部1230の構成例を示す。図35によれば、第1準備部1230は、逆量子化部1231と、レベル減少部1232と、係数調整部1233と、レベル増加部1234とを含んでいる。
<逆量子化部1231>
逆量子化部1231は、復号化部1220から取得した量子化ウエーブレット係数データA22に対して、逆量子化を行う。ここでの逆量子化は、図3の量子化部1040における量子化とは逆の処理にあたる。逆量子化によって、量子化ウエーブレット係数データA22は、第1ウエーブレット係数データA31に変換される。第1ウエーブレット係数データA31の分解レベルは、量子化ウエーブレット係数データA22と同じg1である。
逆量子化部1231によって生成された分解レベルg1の第1ウエーブレット係数データA31は、g2=g1の場合に、第1準備部1230の出力データA61として出力され、合成実行部1270に供給される。
これに対し、g2<g1の場合、第1ウエーブレット係数データA31は、レベル減少部1232に供給される。
また、g2>g1の場合、第1ウエーブレット係数データA31は、係数調整部1233に供給される。
<レベル減少部1232>
レベル減少部1232は、g2<g1の場合、逆量子化部1231によって生成された分解レベルg1の第1ウエーブレット係数データA31に対して、分解レベルg2まで逆ウエーブレット変換を行う。それにより、分解レベルg2の第1ウエーブレット係数データA32が生成される。
逆ウエーブレット変換は、合成画像データ生成部1280と同様に動作する。レベル減少部1232と合成画像データ生成部1280とは、同じ回路によって実現されてもよいし、あるいは別々の回路によって実現されてもよい。
レベル減少部1232によって生成された分解レベルg2の第1ウエーブレット係数データA32は、g2<g1の場合における第1準備部1230の出力データA61として出力され、合成実行部1270に供給される。
<係数調整部1233>
係数調整部1233は、逆量子化部1231によって生成された第1ウエーブレット係数データA31を、所定の係数調整処理によって調整する。係数調整処理のために、係数調整部1233は、補助ウエーブレット係数データA41を取得する。
補助ウエーブレット係数データA41は、補助画像用のウエーブレット係数データである。補助ウエーブレット係数データA41の分解レベルは、第1ウエーブレット係数データA31と同じg1である。
補助画像は、第1画像と同一視できる画像であり、例えば第1画像が撮影されたのと同じ空間を撮影した画像である。より具体的には、ROIに設定されるべき移動物体が存在しない状態で撮影された画像を補助画像として利用でき、そのような補助画像は供給システム11から取得可能である。あるいは、過去に生成した合成画像(例えば、動画像において所定フレーム数だけ前の合成画像)を、補助画像として利用することもできる。過去の合成画像に人物が映っていても構わない。また、補助画像として第2画像を利用してもよい。
さらに、係数調整部1233は、係数調整処理のために、マスク準備部1250から、分解レベルg1のマスク(ここではマージマスク)のデータB41を取得する。
係数調整処理では、分解レベルg1の第1ウエーブレット係数データA31と、分解レベルg1の補助ウエーブレット係数データA41とを、分解レベルg1のマスクデータB41に基づいて合成する。それにより、調整済みの第1ウエーブレット係数データA31を生成する。調整済みの第1ウエーブレット係数データA31の分解レベルは、g1である。係数調整処理は、合成実行部1270による合成実行処理と同様に行われる。
すなわち、係数調整部1233は、第1ウエーブレット係数データA31中のROI係数と非ROI係数とを、マスクデータB41に基づいて判別する(係数判別処理)。判別結果に基づいて、係数調整部1233は、第1ウエーブレット係数データA31中のROI係数と、補助ウエーブレット係数データA41中の係数(詳細には、第1ウエーブレット係数データA31中の非ROI係数に対応する係数)と、を合成する(係数合成処理)。それにより、調整済みの第1ウエーブレット係数データA31が生成される。より具体的には、係数調整処理は、合成実行処理S300(図18および図19参照)と同様に行われる。
係数調整処理と合成実行処理との類似性に鑑み、係数調整部1233は合成実行部1270と同じ回路によって実現できる。これとは逆に、係数調整部1233と合成実行部1270とを別々の回路によって実現してもよい。
上記では補助ウエーブレット係数データA41そのものが、係数調整部1233に供給されるものとした。これに対し、係数調整部1233は、補助画像データを取得し、当該補助画像データに対して分解レベルg1までウエーブレット変換を行い、それにより補助ウエーブレット係数データA41を生成してもよい。
係数調整部1233によって調整済された第1ウエーブレット係数データA31は、レベル増加部1234に供給される。
<レベル増加部1234>
レベル増加部1234は、調整済みの第1ウエーブレット係数データA31に対して、分解レベルg2までウエーブレット変換を行う。それにより、分解レベルg2の第1ウエーブレット係数データA33が生成される。
ウエーブレット変換は、第2準備部1240と同様に動作することによって、実行可能である。レベル増加部1234と第2準備部1240とは、同じ回路によって実現されてもよいし、あるいは別々の回路によって実現されてもよい。
レベル増加部1234によって生成された分解レベルg2の第1ウエーブレット係数データA33は、g2>g1の場合における第1準備部1230の出力データA61として出力され、合成実行部1270に供給される。
<係数調整部1233の変形例>
上記のように、レベル増加部1234は、係数調整部1233によって調整された第1ウエーブレット係数データA31に対して、ウエーブレット変換を行う。ここで、例えばMallat型のウエーブレット変換では、LLサブバンドのみが再帰的に分解される。この場合、調整済みの第1ウエーブレット係数データA31において、分解されるのはLLサブバンドのみである。
このため、係数調整処理は、調整前の第1ウエーブレット係数データA31のうちでLLサブバンドのみに対して、行ってもよい。これによれば、処理量を削減できる。なお、その場合、補助ウエーブレット係数データA41は、少なくともLLサブバンド分のデータを含めばよい。
<合成システム21の動作>
図36に、合成システム21の動作を説明するフローチャートを示す。図36の動作フローS1000によれば、合成システム21に符号化ビットストリームAbsが入力されると、ビットストリーム解析部1210が、符号化ビットストリームAbsを取得し(ステップS1011)、符号ビットストリームAbsから符号化データA50を抽出する(ステップS1012)。
そして、符号化データA50は、復号化部1220によって復号化され、量子化ウエーブレット係数データA22が生成される(ステップS1013)。量子化ウエーブレット係数データA22から、第1準備部1230によって、第1ウエーブレット係数データA61が生成される(ステップS1014)。また、マスク準備部1250によって、量子化ウエーブレット係数データA22からマスクデータB61が生成される(ステップS1015)。図36の例では、ステップS1014,S1015を並行して実行するが、ステップS1014をステップS1015の前または後で実行することも可能である。
ここで、合成システム21に第2画像データD20が入力されると、第2準備部1240が第2画像データD20を取得し(ステップS1021)、第2画像データD20から、第2ウエーブレット係数データD61を生成する(ステップS1022)。
ステップS1014,S1015,S1022の後、合成実行部1270が、第1ウエーブレット係数データA61と第2ウエーブレット係数データD61とを合成し、合成済み係数データE61を生成する(ステップS1031)。そして、合成画像データ生成部1280が、合成済み係数データE61に対して逆ウエーブレット変換を行う(ステップS1032)。これにより、合成画像データE80が生成される。
その後、合成画像データE80に対して後処理部1290が所定の後処理を行い(ステップS1033)、ステップS1033後の合成画像データE100が合成システム21から出力される(ステップS1034)。
ここで図37に、ステップS1014,S1031,S1032について、より具体的なフローチャートを示す。図37の処理フローS1100によれば、ステップS1101において、第1準備部1230は、g2>g1を満足するか否かを判別する。
g2>g1を満足する場合、ステップS1111において、第1準備部1230の係数調整部1233が、第1ウエーブレット係数データA31を補助ウエーブレット係数データA41に基づいて調整する。上記のように係数調整処理は合成実行処理と同様に行われるので、係数調整部1233は、gs=g1およびge=g1に設定して、合成実行処理S300を実行する(図18および図19参照)。それにより、調整済みの第1ウエーブレット係数データA31が生成される。なお、gs=g1およびge=g1という設定によれば、LLサブバンドのみに対して、係数調整処理が行われる。
次に、ステップS1112において、第1準備部1230のレベル増加部1234が、調整済みの第1ウエーブレット係数データA31から、分解レベルg2の第1ウエーブレット係数データA61を生成する。なお、図37では省略しているが、マスク準備部1250のマスク展開部1255bが、分解レベルg2のマスクを生成する。
そして、ステップS1113において、合成実行部1270が、gs=g2およびge=1に設定して、合成実行処理S300を実行する(図18および図19参照)。その後、ステップS1103において、合成画像データ生成部1280が合成済み係数データE61から合成画像データE80を生成する。
一方、ステップS1101においてg2>g1を満足しない場合、第1準備部1230は、ステップS1102において、g2<g1を満足するか否かを判別する。ステップS1102においてg2<g1を満足しない場合、g2=g1である。この場合、第1ウエーブレット係数データA31およびマスクデータB31はそのまま、第1ウエーブレット係数データA61およびマスクデータB61として、合成実行部1270に供給される。合成実行部1270は、ステップS1121において、gs=g2(=g1)およびge=1に設定して、合成実行処理S300を実行する(図18および図19参照)。それにより、合成済み係数データE61が生成される。
その後、ステップS1103において、合成済み係数データE61から合成画像データE80が生成される。
これに対し、ステップS1102においてg2<g1を満足する場合、第1準備部1230のレベル減少部1232が、第1ウエーブレット係数データA31から、分解レベルg2の第1ウエーブレット係数データA61を生成する。なお、図37では省略しているが、マスク準備部1250のマスク復元部1255aが、分解レベルg2のマスクを生成する。
次に、ステップS1132において、合成実行部1270が、g2≠0を満足するか否かを判別する。
g2≠0を満足する場合、ステップS1133において、合成実行部1270が、gs=g2およびge=1に設定して、合成実行処理S300を実行する(図18および図19参照)。その後、ステップS1103において、合成済み係数データE61から合成画像データE80が生成される。
これに対し、ステップS1132においてg2≠0を満足しない場合、g2=0である。この場合、第1ウエーブレット係数データA61は、ステップS1131において、分解レベル0すなわち原画像レベルまで変換されている。また、マスクデータB61も原マスクレベルまで変換されることになる。この場合、第2画像に対するウエーブレット変換を行う必要がない。すなわち、第2準備部1240は、第2画像データD20を、分解レベル0の第2ウエーブレット係数データD61として、合成実行部1270に供給する。
その後、ステップS1141において、合成実行部1270が、gs=0およびge=0に設定して、合成実行処理S300を実行する(図18および図19参照)。これにより、合成済み係数データE61が生成される。ここで、ステップS1141では原画像レベルで合成が行われるので、ステップS1141によって生成された合成済み係数データE61は、そのまま合成画像データE80になる。このため、ステップS1141の後で、ステップS1103は行われない。
ステップS1132,S1141のフローから分かるように、図37の処理フローS1100では、g2=0であることを許容しており、このため、g2は0以上の整数である。これに対し、g2は0よりも大きい整数であるという使用条件を課すことも可能である。その場合、ステップS1132,S1141は省略される。
<画像の例>
まず、参考のために、図38〜図40を示す。図38は第1画像の例を示し、図38において移動中の人物の部分をROIに設定するものとする。図39は、図38のROIを判別するために供給システム11で用いられる原マスクの例を示す。図40は、図39のマスクを分解レベル5まで展開したマスクを示す。
図41および図42に、図38の画像用の非参照型マスクおよび参照型マスクの例をそれぞれ示す。図43に、図42の分解レベル2のサブバンドマスクに対してモフォロジー処理を行ったマスクを示す。図44に、図43のマスクを拡大したマスク、すなわち整形マスクを示す。図45に、図44の整形マスクを分解レベル5まで展開した暫定マスクを示す。図46に、図41の非参照型マスクと図45の暫定マスクとをマージしたマージマスクを示す図である。なお、図46ではgm=2である(図28のステップS702参照)。
図46のマスクを用いた合成画像を、図47および図48に示す。図47および図48では、g2=g1=5である。すなわち、供給システム11から供給された量子化ウエーブレット係数データA22の分解レベルg1が5であり、合成実行処理時の分解レベルg2も5である。
図47では、第2画像は全面黒の画像である。図47によれば、ROIとして設定された人物のみならず当該人物の周辺領域も黒い背景上に映し出されている。すなわち、第1画像用の第1ウエーブレット係数データA61は、ROIに関するデータのみならず、ROI周辺領域に関するデータも含んでいることが分かる。
これは、画像合成をウエーブレット係数によって行うことに起因する。すなわち、ウエーブレット変換では、処理対象とする注目座標の画像情報だけでなく、周辺座標の画像情報も利用する。このため、供給システム11では、ウエーブレット変換で利用するROI周辺領域の画像情報も含むようにマスク形状を決定する。それにより、ROIの画像情報が、ウエーブレット変換後においても精度良く保持される。そのようなマスク形状は、量子化ウエーブレット係数値に反映されて、合成システム21でも引き継がれる。このため、図47のような画像が得られる。
図48では、第2画像は第1画像と同一視できる画像、例えば第1画像が撮影されたのと同じ空間を撮影した画像である。より具体的には、ROIに設定されるべき移動物体が存在しない状態で撮影された画像を第2画像として利用でき、そのような第2画像は供給システム11から取得可能である。あるいは、過去に生成した合成画像(例えば、動画像において所定フレーム数だけ前の合成画像)を、第2画像として利用することもできる。過去の合成画像に人物が映っていても構わない。なぜならば、その人物は、第1画像側の広い画像(図47参照)によって、上書きされるからである。
図48の例は、いわゆる定点撮影に応用でき、供給システム11(撮影側を構成する)から合成システム21に伝達するデータ量を小さくできる。なぜならば、第1画像は、ROIに関与しないウエーブレット係数が0になるように量子化されるからである。
なお、第2画像は図47および図48の例に限定されるものではない。
図49に、図46のマスクを分解レベル6まで展開したマスクを示す。また、図49のマスクを用いた合成画像を、図50および図51に示す。図49〜図51では、g2=6、g1=5であり、よってg2>g1である。図50では、図47と同様に、第2画像は全面黒の画像である。図51では、図48と同様に、第2画像は第1画像と同一視できる画像である。
図52に、図46のマスクを分解レベル3まで復元したマスクを示す。また、図52のマスクを用いた合成画像を、図53および図54に示す。図52〜図54では、g2=3、g1=5であり、よってg2<g1である。図53では、第2画像は全面黒の画像である。図54では、第2画像は第1画像と同一視できる画像である。
図55に、図46のマスクを分解レベル0まで復元したマスクを示す。また、図55のマスクを用いた合成画像を、図56に示す。図55〜図56では、g2=0、g1=5であり、よってg2<g1である。図56では、第2画像は第1画像と同一視できる画像である。
<効果>
実施の形態1によれば、第1画像中のROIと第2画像との合成は、第1ウエーブレット係数データA61および第2ウエーブレット係数データD61を用いて行われる。また、第1画像中のROIの判別は、第1ウエーブレット係数データA61についてROI係数を判別することによって行われる。かかる係数判別は、第1ウエーブレット係数データA61用のマスクデータB61に基づいて、行われる。
上記のように、ウエーブレット変換では、処理対象とする注目座標の画像情報だけでなく、周辺座標の画像情報も利用する。ウエーブレット係数用のマスクの生成についても同様である。このため、実施の形態1によれば、第1画像データおよび第2画像データをそのまま合成する場合に比べて、良好な合成画像が得られる。すなわち、輪郭および/または内部に不具合を有した不十分なROIを利用しても(換言すれば、そのような不十分なROI用の原マスクを利用しても)、合成画像上では、修復されたROIを提供できる。
また、合成システム21によれば、画像合成時の分解レベルをg2によって制御することができる。それにより、合成具合(ROIの修復、ROIの拡張、等)を調整できる。
これらに鑑みると、実施の形態1によれば、ROIの設定に高コストな技術を利用しなくても済む。つまり、良好な合成画像を低コストで生成できる。
また、上記のように、供給システム11の量子化部1040は、量子化後の非ROI係数が0になるように、第1ウエーブレット係数データA21の量子化を行う。したがって、マスクデータ自体を供給システム11から出力する必要がない。このため、供給システム11と合成システム21とが有線または無線によって通信する場合、通信量を削減でき、伝送の即時性に役立つ。その結果、画像合成の高速化、換言すれば画像合成の即時性が向上する。
なお、マスクデータを量子化ウエーブレット係数に反映させる手法として、JPEG2000のオプション機能であるMax−shift法がある。このMax−shift法によれば、量子化および逆量子化においてウエーブレット係数のスケールアップおよびスケールダウンが行われる。これに対し、実施の形態1によれば、そのようなスケーリング処理は必要ない。
ここで、第1準備部1230から係数調整部1233を省略し、逆量子化部1231によって生成された第1ウエーブレット係数データA31を直接、レベル増加部1234に供給することも可能である。しかし、係数調整部1233を設けた方が、良好な合成画像が得られる。これは次の理由に拠る。
すなわち、第1ウエーブレット係数データA61の源となる量子化ウエーブレット係数デーA22は、量子化後の非ROI係数が0になるように生成されている。そのような量子化ウエーブレット係数データA22を逆量子化しても、合成システム21側の第1ウエーブレット係数データA31は、供給システム11側での第1ウエーブレット係数データA21との対比において、再現性が低い場合がある。そこで、第1ウエーブレット係数データA31に、補助ウエーブレット係数データA41(すなわち、第1画像と同一視できる補助画像のウエーブレット係数データ)を取り込み、それによって第1ウエーブレット係数データA61を改善しているのである。その結果、合成画像の画質が向上する。
また、上記のように、供給システム11では、ウエーブレット係数データA21に対して、非ROI係数が0になるように量子化を行う。この際、値が小さいROI係数も0に変換されてしまう場合がある。一方、合成システム21では、非参照型マスクおよび参照型マスクは、量子化ウエーブレット係数データA22の各係数値が0であるか否かの判別に基づいて生成される。したがって、量子化によって係数値が0になってしまったROI係数は、非ROI係数として判別されてしまう。このため、図41の非参照型マスクおよび図42の参照型マスクは、図40のマスク(供給システム11で利用)とは一致しない場合がある。
しかし、図46のマージマスクは、図41の非参照型マスクおよび図42の参照型マスクに比べて、図40のマスク(供給システム11で利用)に近い。すなわち、マスク準備部1250によれば、非ROI係数が0になるように生成された量子化ウエーブレット係数データA22から、供給システム11で利用されたマスクに、より近いマスクを生成できる。
ここで、分解レベルが低いサブバンドに関しては、図45の暫定マスクのROI対応部分(白抜き部分)の方が、図41の非参照型マスクのROI対応部分に比べて、広い。これは、暫定マスクにはモフォロジー処理と拡大処理とが適用されているからである。一般的にウエーブレット画像において、低分解側サブバンドは原画像の本質的な構造を提供する。このため、マージマスクの低分解側サブバンドに、広いROI対応部分が存在することは好ましい。かかる点に鑑みると、マージマスクの所定の低分解側サブバンドに暫定マスクを採用し、マージマスクの残余のサブバンド、すなわち所定の高分解側サブバンドに非参照型マスクを採用することが好ましい。
<実施の形態2>
図57に、実施の形態2に係るマスク準備部1250Bのブロック図を示す。マスク準備部1250Bは、マスク準備部1250に代えて、図17の合成システム21に適用される。図57に示すように、マスク準備部1250Bは、図21の基礎マスク生成部1251に代えて、基礎マスク生成部1251Bを有している。基礎マスク生成部1251Bは、図21の基礎マスク生成部1251から、参照型マスク生成部1251bを削除した構成を有している。実施の形態2によれば、実施の形態1と同様の効果を得ることができる。
<実施の形態3>
図58に、実施の形態3に係るマスク準備部1250Cのブロック図を示す。マスク準備部1250Cは、マスク準備部1250に代えて、図17の合成システム21に適用される。図58に示すように、マスク準備部1250Cは、図21のマスク準備部1250から、暫定マスク生成部1253とマスクマージ部1254とを削除した構成を有している。また、マスク準備部1250Cは、図21のマスクレベル変換部1255に代えて、マスクレベル変換部1255Cを有している。マスクレベル変換部1255Cは、図21のマスクレベル変換部1255から、マスク復元部1255aを削除した構成を有している。
マスク準備部1250Cによれば、マスク整形部1252によって生成された整形マスクのデータB33が、マスクレベル変換部1255Cに供給される。マスクレベル変換部1255Cは、g2=g1の場合およびg2<g1の場合、分解レベル0の整形マスクを分解レベルg2に展開する。分解レベルg2のマスクのデータB34は、マスクデータB61としてマスク準備部1250Cから出力され、合成実行部1270に供給される。
これに対し、g2>g1の場合、マスクレベル変換部1255Cは、分解レベル0の整形マスクから、分解レベルg1のマスクと、分解レベルg2のマスクとを生成する。例えば、マスクレベル変換部1255Cは、分解レベル0の整形マスクをまず分解レベルg1まで展開し、分解レベルg1のマスクをさらに分解レベルg2まで展開する。分解レベルg2のマスクのデータB34は、マスクデータB61としてマスク準備部1250Cから出力され、合成実行部1270に供給される。また、分解レベルg1のマスクのデータB34は、マスクデータB41としてマスク準備部1250Cから出力され、第1準備部1230に供給される。
なお、g2=0の場合、分解レベル0の整形マスクのデータB33を、マスク準備部1250Cから出力すればよい。
図59に、マスク準備部1250Cの動作を説明するフローチャートを示す。図59のマスク準備フローS900Cによれば、図34のマスク準備フローS900と同様に、ステップS901において基礎マスクが生成され、ステップS902において分解レベル0の整形マスクが生成される。
その後、g2≠0且つg2>g1の場合(ステップS941,S942参照)、マスクレベル変換部1255Cが、マスク展開処理によって、分解レベル0の整形マスクを分解レベルg1のマスクおよび分解レベルg2のマスクに変換する(ステップS951)。そして、分解レベルg2の変換済みマスクは合成実行部1270に出力され、分解レベルg1の変換済みマスクは第1準備部1230に出力される(ステップS952)。
これに対し、g2>g1を満たさない場合すなわちg2≦g1の場合(ステップS942参照)、マスクレベル変換部1255Cが、マスク展開処理によって、分解レベル0の整形マージマスクを分解レベルg2のマスクに変換する(ステップS961)。そして、分解レベルg2の変換済みマスクは合成実行部1270に出力される(ステップS962)。
一方、g2=0の場合(ステップS941参照)、分解レベル0の整形マスクが合成実行部1270に出力される(ステップS971)。
図60および図61に、マスクを例示する。図60は、整形マスク(図44参照)を分解レベル3まで展開したマスクである。なお、図60ではg2=3,g1=5である。図61は、整形マスク(図44参照)を分解レベル6まで展開したマスクである。なお、図61ではg2=6,g1=5である。なお、既述の図45は、整形マスク(図44参照)を分解レベル5まで展開したマスクである。
ここで、実施の形態2を参照して、図62に示すマスク準備部1250Dのように、基礎マスク生成部1251Dを非参照型マスク生成部1251aだけで構成することも可能である。また、図63に示すマスク準備部1250Eのように、基礎マスク生成部1251Eを参照型マスク生成部1251bだけで構成することも可能である。
実施の形態3によれば、実施の形態1と同様の効果を得ることができる。
<実施の形態4>
実施の形態4では、実施の形態1,3の組み合わせを説明する。図64に、実施の形態4に係るマスク準備部1250Fのブロック図を示す。マスク準備部1250Fは、マスク準備部1250に代えて、図17の合成システム21に適用される。マスク準備部1250Fは、図21のマスク準備部1250と同様の構成を有している。但し、整形マスクのデータB33がマスクレベル変換部1255にも供給されるように構成され、さらに整形マスクのデータB33がマスク準備部1250Fの外部に出力可能に構成されている。
マスク準備部1250Fは、例えば、図65のマスク準備フローS900Fに従って動作する。すなわち、ステップS981において、ユーザがマスクマージ機能を利用するか否かを選択する。マスクマージ機能を利用する場合、図34のマスク準備フローS900が実行される。これに対し、マスクマージ機能を利用しない場合、図59のマスク準備フローS900Cが実行される。
ここで、マスク準備部1250Fは、マスク準備部1250B,1250D,1250E(図57,62,63参照)の構成も含んでいる。このため、マスク準備部1250Fは、マスク準備部1250B,1250D,1250Eと同様に動作することもできる。
実施の形態4によれば、実施の形態1〜3と同様の効果を得ることができる。
<実施の形態5>
実施の形態1では、供給システム11の色空間変換部1022がYCbCr成分(輝度成分Yと色差成分Cb,Crとから成る)の画像データを生成する。このため、Y、CbおよびCrの成分ごとに、ウエーブレット係数データおよび量子化ウエーブレット係数データが生成される。このため、Y、CbおよびCrの成分ごとに、独立して、マージマスクが生成されるものとした。例えば、Y用のマージマスクの生成は、Y用の量子化ウエーブレット係数データA22を利用するが、CbおよびCr用の量子化ウエーブレット係数データA22を利用しないものとした。
これに対し、実施の形態5では、1組のY、CbおよびCr用の量子化ウエーブレット係数データA22を総合的に利用する。具体的には、図66の概念図に示すように、1組のY、CbおよびCr用の量子化ウエーブレット係数データA22を一纏めにして参照型推定規則を適用し、それにより単一の参照型マスクを生成する。
具体的な処理フローの例を、図67および図68のフローチャートに示す。なお、図67および図68のフローは結合子C3,C4によって繋がっている。図67および図68の参照型マスク生成処理S500Gは、図24の参照型マスク生成処理S500においてステップS511,S541をステップS511G,S541Gに変えた構成を有している。
ステップS511Gでは、ステップS511と同様に、サブバンドHLk,LHk,HHkについて量子化ウエーブレット係数QCk(i,j)が0であるか否かが判別される。特にステップS511Gでは、Y、CbおよびCr用の3つの量子化ウエーブレット画像に存在する全てのサブバンドHLk,LHk,HHkを対象とするので、分解レベルkの9つのサブバンドについてQCk(i,j)が0であるか否かが判別される。
分解レベルkの9つのサブバンドのうちの少なくとも1つにおいてQCk(i,j)≠0の場合、ステップS512において、HLk、LHkおよびHHkの全てのサブバンドマスクの座標(i,j)のマスク値MVk(i,j)がROI指示値(ここでは“1”)に設定される。すなわち、ステップS512によって、上記の第1のマスク値設定規則が適用される。
これに対し、分解レベルkの9つのサブバンドの全てにおいてQCk(i,j)=0の場合、ステップS513において、HLk、LHkおよびHHkの全てのサブバンドマスクの座標(i,j)のマスク値MVk(i,j)が非ROI指示値(ここでは“0”)に設定される。すなわち、ステップS513によって、上記の第2のマスク値設定規則が適用される。
一方、ステップS541Gでは、ステップS541と同様に、分解レベルg1のサブバンドLLg1について量子化ウエーブレット係数QCk(i,j)が0であるか否かが判別される。特にステップS541Gでは、Y、CbおよびCr用の3つの量子化ウエーブレット画像に存在する全てのサブバンドLLg1を対象とするので、3つのサブバンドLLg1についてQCk(i,j)が0であるか否かが判別される。
3つのサブバンドLLg1のうちの少なくとも1つにおいてQCk(i,j)≠0の場合、ステップS542において、LLg1のサブバンドマスクの座標(i,j)のマスク値MVk(i,j)がROI指示値(ここでは“1”)に設定される。すなわち、ステップS542によって、上記の第1のマスク値設定規則が適用される。
これに対し、3つのサブバンドLLg1の全てにおいてQCk(i,j)=0の場合、ステップS543において、LLg1のサブバンドマスクの座標(i,j)のマスク値MVk(i,j)が非ROI指示値(ここでは“0”)に設定される。すなわち、ステップS543によって、上記の第2のマスク値設定規則が適用される。
ここで、1組のY、CbおよびCr用の量子化ウエーブレット係数データA22を一纏めにして参照型推定規則を適用する場合、実施の形態1〜4とは異なり、Y、CbおよびCr用のLLサブバンド、すなわち3つのLLサブバンドが存在する。このため、図67および図68の参照型マスク生成処理S500Gでは、上記の第3および第4のマスク値設定規則は利用されない。
実施の形態5によれば、より多くの量子化ウエーブレット係数データA22に基づいて参照型マスクを生成する。このため、供給システム11で利用されたマスクにより近いマスクを生成できる。
参照型マスク生成処理S500Gは、Y、CbおよびCr以外の色空間成分についても適用可能である。例えば、色差成分としてCbおよびCr以外の成分も知られていることに鑑みると、それらはYUV方式として一般化される。すなわち、Y、UおよびVの色空間成分に対して、参照型マスク生成処理S500Gを適用可能である。あるいは、RGB方式に対しても参照型マスク生成処理S500Gを適用可能である。
なお,実施の形態1〜5では第1画像および第2画像がカラー画像であるものとした。しかし、第1画像および第2画像がモノクロ画像であってもよい。その場合、ウエーブレット係数データ等のデータは、1つの成分(具体的には輝度成分)だけで構成される。このため、色空間成分ごとの複数のマスクを生成する必要はない。
<実施の形態6>
実施の形態6では、マスクそのものを合成システム21の外部から取得する例を説明する。そのようなマスクを外来マスクと呼ぶ場合もある。なお、実施の形態1等のように、マスク準備部1250によって生成されたマスクを、内製マスクと呼んでもよい。
外来マスクは、ここでは、供給システム11で利用されたマスクとする。その場合、外来マスクは、符号化ビットストリームAbsに埋め込まれて、または、符号化ビットストリームAbsとは別個に、合成システム21に供給される。
図69に、実施の形態6に係るマスク準備部1250Hのブロック図を示す。マスク準備部1250Hは、マスク準備部1250に代えて、図17の合成システム21に適用される。また、図70に、マスク準備部1250Hの動作を説明するフローチャートを示す。
図69に示すように、マスク準備部1250Hは、マスクレベル変換部1255と、拡大部1256とを含んでいる。マスクレベル変換部1255は既述のものである。拡大部1256は例えば、既述の拡大部1252bと同様に構成される。
拡大部1256は、外来マスクのデータB50を取得する。外来マスクは、データ量削減のために、原マスクサイズ(すなわち第1画像の画像サイズ)に対して縮小される場合がある。外来マスクがそのような縮小サイズである場合、拡大部1256は外来マスクを原マスクサイズに拡大する(図70のステップS991,S992を参照)。外来マスクデータB50にはマスクサイズに関する情報(例えば縮小比)が付随しているものとし、その情報に基づいて拡大部1256は拡大処理の必要性および処理内容(例えば拡大比)を決定する。拡大部1256は、原マスクサイズに戻した外来マスクのデータを、マスクレベル変換部1255に供給する。
これに対し、外来マスクが原マスクサイズである場合、拡大部1256は、拡大処理を行わずに、取得した外来マスクデータB50をマスクレベル変換部1255に供給する(図70のステップS991,S992を参照)。
ここでは、外来マスクは、分解レベルg1(すなわち、第1画像用の量子化ウエーブレット係数データA22と同じ分解レベル)の展開マスクとする。例えば図40を参照。なお、拡大後の外来マスクも分解レベルg1である。
外来マスクの分解レベルは、g1であり、よって既述のマージマスク(図22参照)の分解レベルと同じである。このため、マスクレベル変換部1255は、図34のマスク準備フローS900と同様に動作する。具体的には、マスクレベル変換部1255は、図70に示すように、既述のステップS905,S906を行い、既述のステップS911,S912,S921,S931,S932と同様のステップS911H,S912H,S921H,S931H,S932Hを行う。
図71〜図78に画像の例を示す。図71は外来マスクの例である。図71のマスクを用いた合成画像の例を、図72に示す。図71および図72では、g2=g1=5である。すなわち、供給システム11から供給された量子化ウエーブレット係数データA22および外来マスクデータB50の分解レベルg1が5であり、合成実行処理時の分解レベルg2も5である。
図73は、図71の外来マスクを分解レベル6まで展開したマスクである。図73のマスクを用いた合成画像を、図74に示す。図73および図74では、g2=6、g1=5であり、よってg2>g1である。
図75は、図71の外来マスクを分解レベル3まで復元したマスクである。図75のマスクを用いた合成画像を、図76に示す。図75および図76では、g2=3、g1=5であり、よってg2<g1である。
図77は、図71の外来マスクを分解レベル0まで復元したマスクである。図77のマスクを用いた合成画像を、図78に示す。図77および図78では、g2=0、g1=5であり、よってg2<g1である。
上記では外来マスクは分解レベルg1の展開マスクとしたが、外来マスクは分解レベル0の原マスクであってもよい。この場合の分解レベルは、既述の整形マスクと同じである。このため、マスクレベル変換部1255は、図59のマスク準備フローS900CのステップS941〜S971と同様のステップによって、分解レベル0の外来マスクから分解レベルg1のマスクと分解レベルg2のマスクとを生成する。
実施の形態6によれば、外来マスクを用いた場合も、実施の形態1等と同様に画像合成を行うことができる。
<実施の形態7>
実施の形態7では、量子化ウエーブレット係数データA22がMaxshift法に準拠している例を説明する。図79に、実施の形態7に係るマスク準備部1250Iのブロック図を示す。マスク準備部1250Iは、マスク準備部1250に代えて、図17の合成システム21に適用される。また、図80に、マスク準備部1250Iの動作を説明するフローチャートを示す。
図79に示すように、マスク準備部1250Iは、マスクレベル変換部1255と、Maxshiftマスク生成部1257とを含んでいる。マスクレベル変換部1255は既述のものである。
Maxshiftマスク生成部1257は、Maxshift法に準拠して、量子化ウエーブレット係数データA22から、マスクを生成する(図80のステップS993を参照)。そのようなマスクをMaxshiftマスクと呼ぶ場合もある。ここでは、Maxshiftマスクの生成は既知技術を利用するものとし、詳細な説明は省略する。生成されたMaxshiftマスクは、マスクレベル変換部1255に供給される。
Maxshiftマスクは、量子化ウエーブレット係数データA22の分解レベルg1で生成される。したがって、Maxshiftマスクの分解レベルは、既述のマージマスク(図22参照)の分解レベルと同じである。このため、マスクレベル変換部1255は、図34のマスク準備フローS900と同様に動作する。具体的には、マスクレベル変換部1255は、図80に示すように、既述のステップS905,S906を行い、既述のステップS911,S912,S921,S931,S932と同様のステップS911I,S912I,S921I,S931I,S932Iを行う。
実施の形態7によれば、Maxshiftマスクを用いた場合(換言すれば、量子化ウエーブレット係数データA22がMaxshift法に準拠している場合)も、実施の形態1等と同様に画像合成を行うことができる。
<実施の形態8>
実施の形態1〜7で説明した様々なマスク準備部を組み合わせてもよい。例えば、実施の形態4のマスク準備部1250F(図64参照)に、実施の形態6の拡大部1256(図69参照)と、実施の形態7のMaxshiftマスク生成部1257(図79参照)とを追加することが可能である。その場合、図81に示すマスク準備フローS900Jのように、判別ステップS995〜S997を利用すればよい。
具体的には、ステップS995では、マスク準備部が、合成システム21の外部から外来マスクを取得したか否かを判別する。また、ステップS996では、マスク準備部が、量子化ウエーブレット係数データA22がMaxshift法に準拠しているか否かを判別する。また、ステップS997は、図65のステップS981と同様であり、ユーザがマスクマージ機能を利用するか否かを選択する。
判別ステップS995〜S997によって、図34のフローS900と、図59のフローS900Cと、図70のフローS900Hと、図80のフローS900Iとのいずれかが選択的に実行される。
実施の形態8によれば、様々な入力情報および様々な画像合成手法に対処可能なシステムを提供できる。
<変形例>
実施の形態1〜5で説明した様々なマスクおよびマスク生成技術は、合成システム21以外のシステムにも適用可能である。例えば、図21および図57の構成からマスクレベル変換部1255を削除することによって、マージマスクを、マスクレベル変換を行わずに、利用してもよい。
また、合成システム21から、ビットストリーム解析部1210と、復号化部1220と、後処理部1290とを省略しても、実施の形態1〜8で説明した様々な画像合成技術を実現することは可能である。同様に、供給システム11から、前処理部1020と、符号化部1060と、ビットストリーム生成部1070とを省略することも可能である。
本発明は詳細に説明されたが、上記した説明は、すべての局面において、例示であって、本発明がそれに限定されるものではない。例示されていない無数の変形例が、本発明の範囲から外れることなく想定され得るものと解される。
1,20 画像処理システム
21 画像合成システム
60a ROI(関心領域)
60b 非ROI
1230 第1準備部
1231 逆量子化部
1232 レベル減少部
1233 係数調整部
1234 レベル増加部
1240 第2準備部
1250,1250B〜1250F,1250H,1250I マスク準備部
1251,1251B,1251D,1251E 基礎マスク生成部
1251a 非参照型マスク生成部
1251b 参照型マスク生成部
1252 マスク整形部
1252a モフォロジー処理部
1252b 拡大部
1253 暫定マスク生成部
1254 マスクマージ部
1255,1255C マスクレベル変換部
1255a マスク復元部
1255b マスク展開部
1256 拡大部
1257 Maxshiftマスク生成部
1270 合成実行部
1280 合成画像データ生成部
A20 第1画像データ
A21,A31〜A33,A61 第1ウエーブレット係数データ
A22 量子化ウエーブレット係数データ
A41 補助ウエーブレット係数データ
B21,B31〜B34,B61 マスクデータ
B50 外来マスクデータ
D20 第2画像データ
D61 第2ウエーブレット係数データ
E61 合成済み係数データ
E80 合成画像データ
MVk マスク値
QCk 量子化ウエーブレット係数値
WCk ウエーブレット係数値

Claims (17)

  1. 第1画像中のROI(関心領域)と第2画像とを合成する画像合成システムを備え、
    前記画像合成システムは、
    前記第1画像用の量子化ウエーブレット係数データから第1ウエーブレット係数データを生成する、第1準備部と、
    前記第2画像のデータから第2ウエーブレット係数データを生成する、第2準備部と、
    前記第1ウエーブレット係数データに含まれる各ウエーブレット係数が、前記ROIに関与するROI係数と非ROIに関与する非ROI係数とのいずれであるかを判別するためのマスクを準備する、マスク準備部と、
    前記第1ウエーブレット係数データ中の前記ROI係数と前記非ROI係数とを前記マスクに基づいて判別し、前記ROI係数と、前記非ROI係数に対応する前記第2ウエーブレット係数データ中のウエーブレット係数とを合成し、それにより合成済み係数データを生成する、合成実行部と、
    前記合成済み係数データに対して、分解レベルが所定の終了レベルになるまで逆ウエーブレット変換を行うことによって、合成画像データを生成する、合成画像データ生成部と
    を含み、
    前記量子化ウエーブレット係数データの分解レベルを、g1とし、
    前記合成実行部において利用する前記第1ウエーブレット係数データと前記第2ウエーブレット係数データと前記マスクとの分解レベルを、g2とすると、
    前記第1準備部は、
    前記量子化ウエーブレット係数データに対して逆量子化を行うことによって、分解レベルg1の前記第1ウエーブレット係数データを生成する、逆量子化部と、
    g2<g1の場合に、分解レベルg1の前記第1ウエーブレット係数データに対して、分解レベルg2まで逆ウエーブレット変換を行う、レベル減少部と、
    g2>g1の場合に、前記第1画像と同一視できる補助画像用のウエーブレット係数であり且つ分解レベルがg1である補助ウエーブレット係数データを取得し、前記補助ウエーブレット係数データを利用した係数調整処理によって、分解レベルg1の前記第1ウエーブレット係数データを調整する、係数調整部と、
    前記係数調整処理によって調整された前記第1ウエーブレット係数データに対して、分解レベルg2までウエーブレット変換を行う、レベル増加部と
    を有し、
    g2=g1の場合、
    前記マスク準備部は、分解レベルg1の前記マスクを準備して前記合成実行部に供給し、
    前記第1準備部は、前記逆量子化部によって生成された分解レベルg1の前記第1ウエーブレット係数データを前記合成実行部に供給し、
    g2<g1の場合、
    前記マスク準備部は、分解レベルg2の前記マスクを準備して前記合成実行部に供給し、
    前記第1準備部は、前記レベル減少部によって生成された分解レベルg2の前記第1ウエーブレット係数データを前記合成実行部に供給し、
    g2>g1の場合、
    前記マスク準備部は、分解レベルg2の前記マスクを準備して前記合成実行部に供給すると共に、分解レベルg1の前記マスクを準備して前記第1準備部に供給し、
    前記第1準備部は、前記係数調整部によって行われる前記係数調整処理において、分解レベルg1の前記マスクに基づいて分解レベルg1の前記第1ウエーブレット係数データ中の前記ROI係数と前記非ROI係数とを判別し、前記ROI係数と、前記非ROI係数に対応する前記補助ウエーブレット係数データ中のウエーブレット係数とを合成し、
    前記第1準備部は、前記レベル増加部によって生成された分解レベルg2の前記第1ウエーブレット係数データを前記合成実行部に供給する、
    画像処理システム。
  2. 請求項1に記載の画像処理システムであって、
    前記係数調整部は、分解レベルg1の前記第1ウエーブレット係数データのLLサブバンドのみに対して前記係数調整処理を行う、画像処理システム。
  3. 請求項1または請求項2に記載の画像処理システムであって、
    前記マスク準備部は、
    前記量子化ウエーブレット係数データにおいて前記非ROI係数が0に設定されている場合に、非参照型推定規則に従って前記量子化ウエーブレット係数データから、分解レベルg1の非参照型マスクを生成する、非参照型マスク生成部と、
    前記量子化ウエーブレット係数データにおいて前記非ROI係数が0に設定されている場合に、参照型推定規則に従って前記量子化ウエーブレット係数データから、分解レベルg1の参照型マスクを生成する、参照型マスク生成部と、
    前記非参照型マスクまたは前記参照型マスクのうちの所定のサブバンドマスクから、整形処理によって、マスクサイズが前記マスクと同じであり且つ分解レベルが0である整形マスクを生成する、マスク整形部と、
    前記整形マスクを分解レベルg1のサブバンド構成に展開することによって、分解レベルg1の暫定マスクを生成する、暫定マスク生成部と、
    前記暫定マスクと前記非参照型マスクとをサブバンド単位で部分的にマージすることによって、分解レベルg1の前記マスクを生成する、マスクマージ部と、
    前記マスクマージ部によって生成された分解レベルg1の前記マスクから、分解レベルg2の前記マスクを生成する、マスクレベル変換部と
    を有し、
    前記量子化ウエーブレット係数データによって提供される量子化ウエーブレット画像と前記非参照型マスクと前記参照型マスクとに対して規定されるサブバンド座標系の下で、分解レベルkのサブバンドにおける座標(i,j)の量子化ウエーブレット係数値およびマスク値をQCk(i,j)およびMVk(i,j)とすると、
    前記非参照型推定規則では、QCk(i,j)が0である場合、前記非参照型マスクのMVk(i,j)を、前記非ROIに対応することを示す非ROI指示値に設定し、QCk(i,j)が0でない場合、前記非参照型マスクのMVk(i,j)を、前記ROIに対応することを示すROI指示値に設定し、
    前記参照型推定規則は、
    前記量子化ウエーブレット画像において分解レベルkのサブバンドが複数存在し且つ少なくとも1つのQCk(i,j)が0でない場合、前記参照型マスクの全てのMVk(i,j)を前記ROI指示値に設定する、という第1のマスク値設定規則と、
    前記量子化ウエーブレット画像において分解レベルkのサブバンドが複数存在し且つ全てのQCk(i,j)が0である場合、前記参照型マスクの全てのMVk(i,j)を前記非ROI指示値に設定する、という第2のマスク値設定規則と
    を含む、
    画像処理システム。
  4. 請求項1または請求項2に記載の画像処理システムであって、
    前記マスク準備部は、
    前記量子化ウエーブレット係数データにおいて前記非ROI係数が0に設定されている場合に、非参照型推定規則に従って前記量子化ウエーブレット係数データから、分解レベルg1の非参照型マスクを生成する、非参照型マスク生成部と、
    前記非参照型マスクのうちの所定のサブバンドマスクから、整形処理によって、マスクサイズが前記マスクと同じであり且つ分解レベルが0である整形マスクを生成する、マスク整形部と、
    前記整形マスクを分解レベルg1のサブバンド構成に展開することによって、分解レベルg1の暫定マスクを生成する、暫定マスク生成部と、
    前記暫定マスクと前記非参照型マスクとをサブバンド単位で部分的にマージすることによって、分解レベルg1の前記マスクを生成する、マスクマージ部と、
    前記マスクマージ部によって生成された分解レベルg1の前記マスクから、分解レベルg2の前記マスクを生成する、マスクレベル変換部と
    を有し、
    前記量子化ウエーブレット係数データによって提供される量子化ウエーブレット画像と前記非参照型マスクとに対して規定されるサブバンド座標系の下で、分解レベルkのサブバンドにおける座標(i,j)の量子化ウエーブレット係数値およびマスク値をQCk(i,j)およびMVk(i,j)とすると、
    前記非参照型推定規則では、QCk(i,j)が0である場合、前記非参照型マスクのMVk(i,j)を、前記非ROIに対応することを示す非ROI指示値に設定し、QCk(i,j)が0でない場合、前記非参照型マスクのMVk(i,j)を、前記ROIに対応することを示すROI指示値に設定する、
    画像処理システム。
  5. 請求項3または請求項4に記載の画像処理システムであって、
    前記マスクマージ部は、前記マスクの低分解側サブバンドに前記暫定マスクを採用し、前記マスクの高分解側サブバンドに前記非参照型マスクを採用する、画像処理システム。
  6. 請求項3〜請求項5のうちのいずれか1項に記載の画像処理システムであって、
    前記整形処理はモフォロジー処理および拡大処理を含む、画像処理システム。
  7. 請求項1または請求項2に記載の画像処理システムであって、
    前記マスク準備部は、
    前記量子化ウエーブレット係数データにおいて前記非ROI係数が0に設定されている場合に、前記量子化ウエーブレット係数データに含まれる各量子化ウエーブレット係数が0であるか否かを判別することによって、分解レベルg1の基礎マスクを生成する、基礎マスク生成部と、
    前記基礎マスクのうちの所定のサブバンドマスクから、整形処理によって、マスクサイズが前記マスクと同じであり且つ分解レベルが0である整形マスクを生成する、マスク整形部と、
    前記整形マスクから、分解レベルg1の前記マスクおよび分解レベルg2の前記マスクを生成する、マスクレベル変換部と
    を有する、画像処理システム。
  8. 請求項7に記載の画像処理システムであって、
    前記整形処理はモフォロジー処理および拡大処理を含む、画像処理システム。
  9. 請求項7または請求項8に記載の画像処理システムであって、
    前記基礎マスク生成部は、
    非参照型推定規則に従って前記量子化ウエーブレット係数データから、分解レベルg1の非参照型マスクを前記基礎マスクとして生成する、非参照型マスク生成部
    を含み、
    前記量子化ウエーブレット係数データによって提供される量子化ウエーブレット画像と前記非参照型マスクとに対して規定されるサブバンド座標系の下で、分解レベルkのサブバンドにおける座標(i,j)の量子化ウエーブレット係数値およびマスク値をQCk(i,j)およびMVk(i,j)とすると、
    前記非参照型推定規則では、QCk(i,j)が0である場合、前記非参照型マスクのMVk(i,j)を、前記非ROIに対応することを示す非ROI指示値に設定し、QCk(i,j)が0でない場合、前記非参照型マスクのMVk(i,j)を、前記ROIに対応することを示すROI指示値に設定する、
    画像処理システム。
  10. 請求項7〜請求項9のうちのいずれか1項に記載の画像処理システムであって、
    前記基礎マスク生成部は、
    参照型推定規則に従って前記量子化ウエーブレット係数データから、分解レベルg1の参照型マスクを前記基礎マスクとして生成する、参照型マスク生成部
    を含み、
    前記量子化ウエーブレット係数データによって提供される量子化ウエーブレット画像と前記参照型マスクとに対して規定されるサブバンド座標系の下で、分解レベルkのサブバンドにおける座標(i,j)の量子化ウエーブレット係数値およびマスク値をQCk(i,j)およびMVk(i,j)とすると、
    前記参照型推定規則は、
    前記量子化ウエーブレット画像において分解レベルkのサブバンドが複数存在し且つ少なくとも1つのQCk(i,j)が0でない場合、前記参照型マスクの全てのMVk(i,j)を、前記ROIに対応することを示すROI指示値に設定する、という第1のマスク値設定規則と、
    前記量子化ウエーブレット画像において分解レベルkのサブバンドが複数存在し且つ全てのQCk(i,j)が0である場合、前記参照型マスクの全てのMVk(i,j)を、前記非ROIに対応することを示す非ROI指示値に設定する、という第2のマスク値設定規則と
    を含む、
    画像処理システム。
  11. 請求項3または請求項10に記載の画像処理システムであって、
    前記参照型推定規則は、
    前記量子化ウエーブレット画像において分解レベルkのサブバンドが1つしか存在せず且つQCk(i,j)が0でない場合、前記参照型マスクのMVk(i,j)を前記ROI指示値に設定する、という第3のマスク値設定規則と、
    前記量子化ウエーブレット画像において分解レベルkのサブバンドが1つしか存在せず且つQCk(i,j)が0である場合、前記参照型マスクのMVk(i,j)を前記非ROI指示値に設定する、という第4のマスク値設定規則と
    をさらに含む、画像処理システム。
  12. 請求項3または請求項10に記載の画像処理システムであって、
    前記量子化ウエーブレット係数データは、複数の色空間成分用の複数の量子化ウエーブレット係数データを含み、
    前記第1のマスク値設定規則は、前記複数の色空間成分用の複数の量子化ウエーブレット画像に存在する全てのQCk(i,j)のうちで少なくとも1つが0でない場合に適用され、
    前記第2のマスク値設定規則は、前記複数の量子化ウエーブレット画像に存在する全てのQCk(i,j)が0である場合に適用される、
    画像処理システム。
  13. 請求項12に記載の画像処理システムであって、
    前記複数の色空間成分は、輝度と2種類の色差である、画像処理システム。
  14. 請求項1〜請求項13のうちのいずれか1項に記載の画像処理システムであって、
    前記マスク準備部は、分解レベルg1の前記マスクを前記画像合成システムの外部から取得した場合、当該外来のマスクから分解レベルg2の前記マスクを生成する、
    画像処理システム。
  15. 請求項1〜請求項14のうちのいずれか1項に記載の画像処理システムであって、
    前記マスク準備部は、分解レベル0の前記マスクを前記画像合成システムの外部から取得した場合、当該外来のマスクから分解レベルg1の前記マスクおよび分解レベルg2の前記マスクを生成する、
    画像処理システム。
  16. 請求項1〜請求項15のうちのいずれか1項に記載の画像処理システムであって、
    前記マスク準備部は、前記量子化ウエーブレット係数データがMaxshift法に準拠している場合、Maxshift法に準拠して前記量子化ウエーブレット係数データから分解レベルg1の前記マスクを生成し、分解レベルg1の前記マスクから分解レベルg2の前記マスクを生成する、
    画像処理システム。
  17. (a)ROI(関心領域)を有する第1画像用の量子化ウエーブレット係数データから第1ウエーブレット係数データを生成するステップと、
    (b)前記第1画像中の前記ROIと合成される第2画像のデータから第2ウエーブレット係数データを生成するステップと、
    (c)前記第1ウエーブレット係数データに含まれる各ウエーブレット係数が、前記ROIに関与するROI係数と非ROIに関与する非ROI係数とのいずれであるかを判別するためのマスクを準備するステップと、
    (d)前記第1ウエーブレット係数データ中の前記ROI係数と前記非ROI係数とを前記マスクに基づいて判別し、前記ROI係数と、前記非ROI係数に対応する前記第2ウエーブレット係数データ中のウエーブレット係数とを合成し、それにより合成済み係数データを生成するステップと、
    (e)前記合成済み係数データに対して、分解レベルが所定の終了レベルになるまで逆ウエーブレット変換を行うことによって、合成画像データを生成するステップと
    を備え、
    前記量子化ウエーブレット係数データの分解レベルを、g1とし、
    前記ステップ(d)において利用する前記第1ウエーブレット係数データと前記第2ウエーブレット係数データと前記マスクとの分解レベルを、g2とすると、
    前記ステップ(a)は、
    (a−1)前記量子化ウエーブレット係数データに対して逆量子化を行うことによって、分解レベルg1の前記第1ウエーブレット係数データを生成するステップと、
    (a−2)g2<g1の場合に、分解レベルg1の前記第1ウエーブレット係数データに対して、分解レベルg2まで逆ウエーブレット変換を行うステップと、
    (a−3)g2>g1の場合に、前記第1画像と同一視できる補助画像用のウエーブレット係数であり且つ分解レベルがg1である補助ウエーブレット係数データを取得し、前記補助ウエーブレット係数データを利用した係数調整処理によって、分解レベルg1の前記第1ウエーブレット係数データを調整するステップと、
    (a−4)前記係数調整処理によって調整された前記第1ウエーブレット係数データに対して、分解レベルg2までウエーブレット変換を行うステップと
    を含み、
    g2=g1の場合、
    前記ステップ(c)では、分解レベルg1の前記マスクを準備して前記ステップ(d)に供給し、
    前記ステップ(a)では、前記ステップ(a−1)によって生成された分解レベルg1の前記第1ウエーブレット係数データを前記ステップ(d)に供給し、
    g2<g1の場合、
    前記ステップ(c)では、分解レベルg2の前記マスクを準備して前記ステップ(d)に供給し、
    前記ステップ(a)では、前記ステップ(a−2)によって生成された分解レベルg2の前記第1ウエーブレット係数データを前記ステップ(d)に供給し、
    g2>g1の場合、
    前記ステップ(c)では、分解レベルg2の前記マスクを準備して前記ステップ(d)に供給すると共に、分解レベルg1の前記マスクを準備して前記ステップ(a)に供給し、
    前記ステップ(a)では、前記ステップ(a−3)の前記係数調整処理において、分解レベルg1の前記マスクに基づいて分解レベルg1の前記第1ウエーブレット係数データ中の前記ROI係数と前記非ROI係数とを判別し、前記ROI係数と、前記非ROI係数に対応する前記補助ウエーブレット係数データ中のウエーブレット係数とを合成し、
    前記ステップ(a)では、前記ステップ(a−4)によって生成された分解レベルg2の前記第1ウエーブレット係数データを前記ステップ(d)に供給する、
    画像処理方法。
JP2015243220A 2015-12-14 2015-12-14 画像処理システムおよび画像処理方法 Expired - Fee Related JP6577855B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015243220A JP6577855B2 (ja) 2015-12-14 2015-12-14 画像処理システムおよび画像処理方法
US15/376,027 US10419780B2 (en) 2015-12-14 2016-12-12 Image processing system and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015243220A JP6577855B2 (ja) 2015-12-14 2015-12-14 画像処理システムおよび画像処理方法

Publications (3)

Publication Number Publication Date
JP2017112417A JP2017112417A (ja) 2017-06-22
JP2017112417A5 JP2017112417A5 (ja) 2018-12-27
JP6577855B2 true JP6577855B2 (ja) 2019-09-18

Family

ID=59019252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015243220A Expired - Fee Related JP6577855B2 (ja) 2015-12-14 2015-12-14 画像処理システムおよび画像処理方法

Country Status (2)

Country Link
US (1) US10419780B2 (ja)
JP (1) JP6577855B2 (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE9800088D0 (sv) 1997-10-10 1998-01-16 Ericsson Telefon Ab L M Long filter lossless region of interest coding
JP2005165688A (ja) 2003-12-02 2005-06-23 Fuji Xerox Co Ltd 複数対象物追跡方法及びシステム
JP4390671B2 (ja) 2004-09-21 2009-12-24 三洋電機株式会社 画像処理装置
JP4489605B2 (ja) 2005-01-19 2010-06-23 株式会社メガチップス 圧縮符号化装置、圧縮符号化方法およびプログラム
JP4407600B2 (ja) 2005-09-22 2010-02-03 日本ビクター株式会社 画像処理装置
JP4991595B2 (ja) 2008-02-21 2012-08-01 株式会社東芝 パーティクルフィルタを使用する追跡システム
JP6076623B2 (ja) 2012-06-06 2017-02-08 株式会社メガチップス 動体検出装置、動体検出方法およびプログラム
JP6165491B2 (ja) * 2013-04-12 2017-07-19 株式会社メガチップス 画像処理装置および画像処理方法
JP6345961B2 (ja) * 2014-03-28 2018-06-20 株式会社メガチップス 画像復号化装置および画像復号化方法

Also Published As

Publication number Publication date
JP2017112417A (ja) 2017-06-22
US10419780B2 (en) 2019-09-17
US20170171562A1 (en) 2017-06-15

Similar Documents

Publication Publication Date Title
US9860566B2 (en) Image decoding apparatus and image decoding method
JP5389172B2 (ja) 深度画像を再構成する方法および深度画像を再構成する復号器
JP2008258994A (ja) 画像処理装置
JP2007181232A (ja) ヘッダ情報に基づく画像処理方法
JP2009177417A (ja) 画像符号化装置および方法、画像復号装置および方法、並びにプログラム
US20070160298A1 (en) Image encoder, image decoder, image encoding method, and image decoding method
JP2006115459A (ja) Svcの圧縮率を高めるシステムおよび方法
CA3031546C (en) Data compression by means of adaptive subsampling
KR20000059799A (ko) 웨이브릿 부호화를 이용한 움직임 보상 부호화 장치 및 방법
WO2016158310A1 (ja) 画像処理システムおよび画像処理方法
CN112399165A (zh) 解码方法及装置以及计算机设备和存储介质
JP2007028439A (ja) 画像処理装置、画像処理方法
US10298928B2 (en) Image processing system and image processing method
JP2020102704A (ja) 画像符号化装置及びその制御方法及びプログラム
JP2004186871A (ja) 画像処理装置、撮像装置、プログラム及び記憶媒体
JP2007036368A (ja) 符号化処理装置及び方法
JP6577855B2 (ja) 画像処理システムおよび画像処理方法
JP2006014086A (ja) 動画像符号化装置及び動画像符号化方法
JP2004236299A (ja) 画像処理装置、画像形成装置、画像処理方法、プログラム及び記憶媒体
JP2006246351A (ja) 画像符号化装置および画像復号化装置
JP4315928B2 (ja) 画像処理装置および画像処理方法
JP2006211513A (ja) 符号化処理装置、符号化処理方法、プログラム及び情報記録媒体
JPWO2013001720A1 (ja) 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
JP2010287917A (ja) 画像符号化/画像復号化装置及び方法
JP4034236B2 (ja) 特定変換係数優先符号化装置、特定変換係数優先符号化復号システム及び特定変換係数優先符号化方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190718

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190823

R150 Certificate of patent or registration of utility model

Ref document number: 6577855

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees