JP7033013B2 - 画像符号化装置、画像復号装置、及び、それらの制御方法、並びに、プログラム - Google Patents

画像符号化装置、画像復号装置、及び、それらの制御方法、並びに、プログラム Download PDF

Info

Publication number
JP7033013B2
JP7033013B2 JP2018114689A JP2018114689A JP7033013B2 JP 7033013 B2 JP7033013 B2 JP 7033013B2 JP 2018114689 A JP2018114689 A JP 2018114689A JP 2018114689 A JP2018114689 A JP 2018114689A JP 7033013 B2 JP7033013 B2 JP 7033013B2
Authority
JP
Japan
Prior art keywords
data
quantization parameter
subband
quantization
tile
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.)
Active
Application number
JP2018114689A
Other languages
English (en)
Other versions
JP2019220754A5 (ja
JP2019220754A (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.)
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 JP2018114689A priority Critical patent/JP7033013B2/ja
Priority to US16/430,824 priority patent/US11140392B2/en
Publication of JP2019220754A publication Critical patent/JP2019220754A/ja
Publication of JP2019220754A5 publication Critical patent/JP2019220754A5/ja
Application granted granted Critical
Publication of JP7033013B2 publication Critical patent/JP7033013B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/1883Methods 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 relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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

Description

本発明は、画像の符号化技術に関するものである。
デジタルカメラやビデオカメラは、撮像素子として、CCD又はCMOSイメージセンサを採用している。また、単板式の撮像素子の場合、いわゆるベイヤ配列のカラーフィルタを通すことにより、緑、青、赤の画素データを得ることになる。デジタルカメラでは、ベイヤ配列の緑、青、赤データ(以下、RAWデータ)に対し、デモザイク処理、ノイズ除去処理、光学歪み補正、色補正処理等を含む現像処理を行い最終的な画像データを生成することになる。そして、静止画の場合はJPEG、動画の場合はH.264等の符号化方式により圧縮画像データを記録媒体に記録することになる。一方で、撮像装置の中には、ユーザの好みに応じて現像処理が実行できるようにするため、現像処理前のRAWデータを記録する機能を搭載しているものも少なくない。
RAWデータの記録形式には、非圧縮又は可逆圧縮形式を採用する場合が多く、一般に記録される圧縮RAWデータのサイズは、現像後の通常の画像の圧縮画像データよりも大きい。しかし、撮像素子は高密度化、高画素化される一方であり、RAWデータをコンパクトに記録することが重要となってきている。そこで、視覚的に無損失な非可逆圧縮形式として、RAWデータから複数のカラーチャネルを生成し、各チャネルに対して2次元離散ウェーブレット変換を行い、生成された各サブバンドを個別に量子化して圧縮して符号化データとして記録する方法等が提案されている(特許文献1を参照)。
特表2002-516540号公報
ここで、RAWデータからR、B、G1、G2の4つのカラーチャネルのデータを生成し、それぞれのチャネルのデータに対して2次元離散ウェーブレット変換による3階層のオクターブ分割を行う場合を考察する。この場合、1チャネルにつき10個のサブバンドが生成される。チャネル数は4つであるから、トータルで4×10個のサブバンドが生成されることになる。これらのサブバンドを個別に量子化する場合、4×10=40個の量子化パラメータを必要とする。更に画面内の特徴に応じて、所定ブロック単位のより細かい量子化制御を行うこと想定した場合、4×10×ブロック分割数分の量子化パラメータが必要となる。つまり、RAWデータの圧縮符号化の際の量子化パラメータのデータ量も肥大化してしまう。これでは、視覚的に無損失な画質を維持しつつ、コンパクトにRAWデータを記録するのは困難である。
本発明は上記問題に鑑みなされたものであり、RAW画像データを複数のタイルに分割して符号化を行う際に、タイル境界での画質劣化を抑制しつつ、柔軟な量子化制御により非可逆圧縮を実現しつつ、符号化データに含める量子化パラメータのデータ量を抑制することで、コンパクトにRAWデータを記録することを可能にする技術を提供する。
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
ベイヤ配列のRAW画像データを符号化する符号化装置であって、
符号化対象のRAW画像データを複数のタイルに分割する分割手段と、
該分割手段により分割された前記複数のタイル毎に互いに異なる成分を持つ複数のチャネルのプレーンを生成する生成手段と、
該生成手段で生成した各チャネルのプレーンに対して周波数変換し、複数の分解レベルのサブバンドデータを生成する変換手段と、
前記RAW画像データの同じ領域に対応する複数のセグメントに分割するために、前記複数のサブバンドデータをそれぞれ同じ数のセグメントに分割し、セグメント毎に複数のサブバンドデータで共通となる第1の量子化パラメータを決定する制御手段と、
前記制御手段により決定された第1の量子化パラメータに基づいて、前記変換手段で得たサブバンドデータをセグメント毎にそれぞれ量子化する量子化手段と、
前記量子化により得られた量子化結果を、サブバンド毎に符号化する符号化手段と、
を有し、
前記生成手段は、
着目タイルから前記複数のチャネルのプレーンを生成する際に、前記着目タイルと、前記着目タイルの隣接タイル内の前記着目タイルとの境界から所定の距離までのデータとから、前記複数のチャネルのプレーンを生成し、
前記制御手段は、
前記着目タイルのサブバンドデータを前記複数のセグメントに分割して前記第1の量子化パラメータを決定し、前記隣接タイルのサブバンドデータは、前記着目タイルとの境界を介して隣接するセグメントの量子化パラメータを適応することを特徴とする。
本発明によれば、RAW画像データを複数のタイルに分割して符号化を行う際に、タイル境界での画質劣化を抑制しつつ、柔軟な量子化制御により非可逆圧縮を実現しつつ、符号化データに含める量子化パラメータのデータ量を抑制することで、コンパクトにRAWデータを記録することが可能になる。
実施形態に対応する画像処理装置の構成例を示すブロック図、及び、ベイヤ配列のRAWデータを示す図。 実施形態におけるRAWデータ符号化・復号部のブロック構成図。 実施形態におけるチャネル変換の例を示す図。 実施形態における周波数変換(サブバンド分割)、及び、予測符号化方法(MED予測)を説明するための図。 実施形態における量子化制御単位の一例を示す図。 実施形態における画質特性に基づく量子化制御単位の一例を示す図。 実施形態における画質特性に基づく量子化制御の処理を示すフローチャート。 実施形態における量子化制御単位とRAWデータの関係を示す図。 実施形態における符号化データのデータ構造の一例を示す図。 実施形態におけるヘッダ情報のシンタクス要素の一例を示す図。 実施形態における共通量子化パラメータの2次元座標系へのマッピング例を示す図。 第2の実施形態における画質特性に基づく量子化制御単位の一例を示す図。 第2の実施形態における符号化データに含まれるデータ量の従来手法との比較を示す図。 第3の実施形態における離散ウェーブレット変換処理を示す図。 第3の実施形態における離散ウェーブレット逆変換法を説明するための図。 第3の実施形態における離散ウェーブレット変換の実行法を説明するための図。 第3の実施形態における周波数変換(サブバンド分割)の一例を示す図。 第3の実施形態における量子化パラメータ生成部の処理のシーケンス図。 第3の実施形態における共通量子化パラメータの2次元座標系へのマッピングとサブバンドデータの関係の一例を示す図。 第4の実施形態におけるRAW画像を垂直方向に2分割した場合の、量子化制御単位の一例を示す図。 第4の実施形態におけるRAW画像を水平方向に2分割した場合の、量子化制御単位の一例を示す図。 第4の実施形態における共通量子化パラメータの2次元座標系へのマッピングとサブバンドデータの関係の一例を示す図。 第4の実施形態における共通量子化パラメータの2次元座標系へのマッピングとサブバンドデータの関係の他の例を示す図。 第3、第4の実施形態におけるRAWデータ符号化・復号部のブロック構成図。
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。なお、以下に示す実施形態における構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。まず、実施形態における前提部分について説明する。
[第1の実施形態]
図1(a)は、実施形態における撮像装置100における符号化に係る主要ブロック構成図である。撮像装置100は、例えばデジタルカメラ、デジタルビデオカメラとして実現することができる。また、それ以外に、例えばパーソナルコンピュータ、携帯電話、スマートフォン、PDA、タブレット端末、携帯型メディアプレーヤなどの任意の情報処理端末或いは画像処理装置として実現することもできる。なお、図1(a)は、撮像装置であるデジタルカメラ等として機能する場合を考慮して撮像部102を含む構成を示した。しかし、RAW画像を記録、再生することが可能な画像符号化装置、画像復号装置、画像記録装置、画像圧縮装置、画像復元装置等に適用できるので、RAW画像データの発生源である撮像部102は必須ではない。なぜなら、RAW画像データの発生源としては、RAW画像データを記憶している記憶媒体、ネットワーク上のファイルサーバでも構わず、その種類は問わないからである。
撮像装置100において、制御部101は、撮像装置100を構成する各処理部を制御するものであり、CPU、CPUが実行するプログラムを格納しているROM、並びに、ワークエリアとして使用するRAMで構成される。撮像部102は、光学レンズ、絞り、フォーカス制御及びレンズ駆動部を含む光学ズームが可能なレンズ光学系と、レンズ光学系からの光情報を電気信号に変換するCCDイメージセンサ又はCMOSイメージセンサなどの撮像素子を含む。撮像部102は、撮像素子により得られた電気信号をディジタル信号へ変換して得たRAWデータ(RAW画像データとも言う)を、RAWデータ符号化・復号部103へ供給する。
ここで1枚のRAWデータは、図1(b)に示すように、受光した画素領域である有効撮像領域と遮光された画素領域であるオプティカルブラック領域とで構成される。各画素はR(赤)、G1(緑)、G2(緑)、B(青)の周期的なパターンで構成されている。人間の視覚感度は緑に対して高いことが知られている。そこで、画像としての解像感に対して有利になるように緑を、赤や青に対して2倍の個数となるように割り当てている。本実施形態ではRAWデータは、ベイヤ配列の4色要素で構成されるものとするが、その配列や色要素はこの構成に限定されず他の方式であっても良い。
RAWデータ符号化・復号部103は、撮像部102が取得したRAWデータを符号化し、生成した符号化データをメモリ105へ書き込む。また、符号化されていないRAWデータを記録媒体107から取得して、本実施形態に対応する符号化処理を実行して符号化データを生成してもよい。また、RAWデータ符号化・復号部103は、符号化データを復号してRAWデータを復元することができる。RAWデータ符号化・復号部103に関わる詳細な構成や動作については後述する。
メモリI/F部104は、各処理部からのメモリ105へのメモリ・アクセス要求、メモリ105に対する読み出し又は書き込み要求の調停処理を行う。メモリ105は、撮像装置100を構成する各処理部から出力される各種データを格納するため、例えば高速な揮発性メモリ(SRAMがその代表)である。記録処理部106は、メモリ105へ格納された符号化データを読み出し、所定の記録フォーマット化を行い記録媒体107へ記録する。また、記録処理部106は、復号のため、記録媒体107から符号化データを読み出し、メモリ105への格納も行う。記録媒体107は、例えば不揮発性メモリで構成される記録メディアであり、撮像装置100に対して着脱可能に構成されている。以上、実施形態における撮像装置100の符号化に係る主要部を説明した。
続いて、RAWデータ符号化・復号部103の詳細な構成及び処理の流れについて図2(a)及び図2(b)に示すブロック図を参照しながら説明を行う。図2(a)は、RAWデータ符号化・復号部103のうちRAWデータ符号化部103Eの構成を示し、図2(b)はRAWデータ符号化・復号部103のうちRAWデータ復号部103Dの構成を示している。
図2(a)においてRAWデータ符号化部103Eは、主に、チャネル変換部201、周波数変換部202、量子化パラメータ生成部203、量子化部204、符号化部205及び量子化パラメータ符号化部206で構成されている。チャネル変換部201は、図3(a)に示すように、入力されたベイヤ配列のRAWデータから、それぞれが単一成分で表される、複数のチャネル(実施形態ではC0乃至3の4つのチャネル)のプレーンデータに変換する。周波数変換部202、量子化部204は、変換により得られたチャネル数に対応するブロックが用意され、並列に処理される。本実施形態では、チャネル変換部201は、まず、RAWデータをベイヤ配列のR、G1、G2、B毎に4つのチャネルへ変換し、更にR、G1、G2、Bに対して、以下の変換式(1)によりC0乃至C3の4つのチャネルへ変換する。
C0=a+c
C1=B-G2 …(1)
C2=R-G1
C3=b-a
式中、a=G2+floor(C1/2)、b=G1+floor(C2/2)、c=a+floor(C3/2)である。ここで、floor(x)は、実数x以下の最大整数を返す床関数である。
尚、ここでは図3(a)に示すように4つのチャネルへ変換する構成例を示しているが、図3(b)や図3(c)に示すようにR、B、及び、G1とG2を合わせたGの3つのチャネルへ変換しても良く、チャネル数や変換方法は上記以外の方法であっても良い。要するに、元のベイヤ配列のRAWデータを再現できれば良い。
次に、周波数変換部202は、チャネル単位のプレーンデータに所定の分解レベル(以降、単に「レベル」または「lev」と呼ぶ)で離散ウェーブレット変換による周波数変換処理を行い、生成された複数のサブバンドデータ(変換係数)を量子化パラメータ生成部203及び量子化部204へ出力する。
なお、周波数変換部202と量子化部204との間の、量子化部204の直前には適当な容量のバッファが設けられている。詳細は後述する説明から明らかになるが、量子化部204が着目ブロック内の着目セグメントの変換係数を量子化する際に、量子化パラメータ生成部203はその着目セグメントに対する量子化パラメータを決定する時間が必要なためである。
図4(a)は、lev=1のサブバンド分割処理に関わる離散ウェーブレット変換を実現するためのフィルタバンク構成を示している。離散ウェーブレット変換処理を水平、垂直方向に実行することで、図4(b)に示すように、1つの低周波数サブバンドLLと、3つの高周波数サブバンドHL、LH、HHが得られる。図4(a)に示すローパスフィルタ(以降、lpfと呼ぶ)及びハイパスフィルタ(以降、hpfと呼ぶ)の伝達関数を次式(2)、(3)に示す。
lpf(z)=(-z-2+2z-1+6+2z-z2)/8 …(2)
hpf(z)=(-z-1+2-z)/2 …(3)
また、図4(a)における「↓2」は2対1のダウンサンプリングを表す。従って、水平方向と垂直方向とで1回ずつのダウンサンプリングが実行されるので、1回のウェーブレット変換で得られる個々のサブバンドのサイズは元のサイズの1/4となる。levが1よりも大きい場合には、直前のレベルで生成された低周波数サブバンド(LL)に対して、再帰的にサブバンド分割を行うことになる。例えばlev=3の場合は、図4(c)に示すように10個のサブバンドに対応したサブバンドデータが生成される。尚、ここでは離散ウェーブレット変換は式(2)、(3)に示すように5タップのlpfと3タップのhpfで構成しているが、これとは異なるタップ数及び異なる係数のフィルタ構成であっても良い。
量子化パラメータ生成部203は、周波数変換部202により生成されたサブバンドデータ(変換係数)に対して量子化処理を行うための全チャネル、全サブバンドに共通の第1の量子化パラメータを生成し、量子化パラメータ符号化部206へ出力する。また、量子化パラメータ生成部203は、第1の量子化パラメータから各チャネル、各サブバンドのための個別の第2の量子化パラメータを生成し、量子化部204へ供給する。第1の量子化パラメータ及び第2の量子化パラメータの生成単位やその生成方法については、図5から図7等を参照して後述する。
量子化部204は、周波数変換部202から入力されたサブバンドデータ(変換係数)に対して量子化パラメータ生成部203から供給された第2の量子化パラメータに基づき量子化処理を行い、量子化結果として量子化後のサブバンドデータ(変換係数)を符号化部205へ出力する。
符号化部205は、量子化部204から入力された量子化後のサブバンドデータ(変換係数)に対して、サブバンド毎にラスタースキャン順で予測差分型エントロピー符号化を行う。これにより、量子化後のサブバンドデータはサブバンド単位で符号化されことになる。符号化部205は、図4(d)に示すように符号化対象データ(変換係数)に対して、既に符号化済みの周辺データ(図示のa,b,c)からMED(Median Edge Detector)予測により予測値pdを生成する。そして、符号化部205は、符号化対象データxの値xdと予測値pdとの差分データを、例えばハフマン符号化、ゴロム符号化等によりエントロピー符号化を行い、生成した符号化データをメモリ105へ格納する。ラスタースキャン順に符号化することになるので、符号化対象データがサブバンドの最初のラインや左両端に位置する場合、周辺データのいくつかが存在しない(サブバンド外)ことになる。その場合は、そのような存在しない周辺データは予め設定された値と持つものとする。また、特に、符号化対象データがサブバンドの先頭位置(左上隅位置)にある場合、周辺データの全てが存在しないことになるので、その符号化対象データxの値xdがそのまま符号化されるものとする。そして、それ以降の符号化対象データについては差分データが符号化される。尚、予測符号化方式やエントロピー符号化方式は、他の方式であっても良い。また、各サブバンド別にライン単位に発生した発生符号量を量子化パラメータ生成部203へ供給する。また、符号化部205が生成する符号化データの具体的なデータ構造については図9及び図10を参照して後述する。
量子化パラメータ符号化部206は、量子化パラメータ生成部203から入力された第1の量子化パラメータを符号化する処理部である。量子化パラメータ符号化部206は、符号化部205と共通の符号化方式により量子化パラメータを符号化し、生成した符号化済みの量子化パラメータをメモリ105へ格納する。図2(a)では量子化パラメータ符号化部206を符号化部205とは独立に設ける場合を示したが、両者は共通の符号化方式を採用するので、量子化パラメータ符号化部206の機能を符号化部205で共通化するように構成することも可能である。以上、実施形態におけるRAWデータ符号化部103Eの構成と処理内容を説明した。
次に、RAWデータ復号部103Dの構成を説明する。RAWデータ復号部103Dは、主に復号部211、量子化パラメータ復号部212、量子化パラメータ生成部213、逆量子化部214、周波数逆変換部215、チャネル逆変換部216で構成される。
まず、復号部211は、メモリ105から入力される符号化データを、RAWデータ符号化部103Eが採用した符号化方式に対応する復号方式により復号し、量子化済みのサブバンドデータ(変換係数)を復元する。例えば、予測差分型エントロピー符号化方式が用いられていた場合、対応する予測差分型エントロピー復号方式を採用する。このとき、図4(d)に示すように符号化データは、符号化対象データ(変換係数)の周辺データから生成された予測値pdと符号化対象データxの値xdとの差分データがエントロピー符号化されたものである。そこで、復号部211は符号化データをエントロピー復号方式により復号して差分データを復元する。そして、復号部211は、先に説明した符号化部205と同じように、復号対象データの周辺の復号済みデータから予測値pdを生成する。そして、復号部211は、復元した差分データに予測値pdを加算することにより復号対象データx(量子化後の変換係数に相当する)を復元する。符号化データはサブバンド単位に符号化されているので、復号部211でもサブバンド単位に変換係数を復元することになる。
量子化パラメータ復号部212は、メモリ105から入力された符号化データに含まれる、符号化された第1の量子化パラメータを復号部211と共通の復号方式により復号し、第1の量子化パラメータを復元する。また、量子化パラメータ復号部212は、チャネル、サブバンド単位の第2の量子化パラメータを算出するための所定の係数(後述する線形変換式(5)の係数α、β)も復号する。そして、量子化パラメータ復号部212は、復号結果を量子化パラメータ生成部213に出力する。量子化パラメータ生成部213は、量子化パラメータ復号部212から提供された第1の量子化パラメータと所定の係数とから、チャネル、サブバンド単位の第2の量子化パラメータを生成し、逆量子化部214に提供する。
逆量子化部214は、復号部211から出力されたチャネル単位の量子化済みサブバンドデータを、量子化パラメータ生成部213から提供された第2の量子化パラメータを用いて逆量子化して、サブバンドデータを復元する。周波数逆変換部215は、離散ウェーブレット逆変換による周波数逆変換処理を行い、所定の分割レベルのサブバンドデータ(変換係数)からチャネルを復元する。チャネル逆変換部216は、入力されたチャネルデータC0乃至C3を逆変換して、元のRAWデータを復元する。例えば、RAWデータ符号化部103Eのチャネル変換部201がベイヤ配列のR、G1、G2、Bを式(1)に従いC0からC3の4つのチャネルへ変換していた場合、式(1)に対応する逆変換処理に従い、C0からC3の4つのチャネルからR、G1、G2、BのRAWデータを復元する。以上、実施形態におけるRAWデータ復号部103Dの構成と処理内容を説明した。
次に、実施形態における量子化パラメータ生成部203における量子化パラメータ生成処理を説明する。本実施形態における量子化パラメータ生成部203は、全チャネル、全サブバンドに共通の第1の量子化パラメータを生成し、当該第1の量子化パラメータから各チャネル、各サブバンドのための個別の第2の量子化パラメータを生成する。量子化パラメータ生成部203は、符号化前に予め設定された目標符号量に基づき、所定のサブバンドデータ単位に符号量制御に関わる量子化パラメータ生成処理を行い、まず全チャネル、全サブバンドに共通の第1の量子化パラメータを生成する。
本実施形態では、第1の量子化パラメータを直接に生成するのではなく、2段階に分けて生成する場合を説明する。まず、各サブバンドデータについて所定のライン単位に、全チャネル、全サブバンドの共通の量子化パラメータ(第3の量子化パラメータ)を生成する。そして、上記所定のラインをセグメントと呼ぶ単位で分割し、セグメントにおけるサブバンドデータの画質特性に応じて、第3の量子化パラメータを修正して第1の量子化パラメータを生成する。以下、第1の量子化パラメータの生成手順について詳細に説明する。
図5は、各チャネルをlev=3でサブバンド分割した場合の符号量制御に関わる符号量の評価及び量子化パラメータを更新する単位を示す。C0からC3までの4つのチャネルのレベル3のサブバンド{3LL,3HL,3LH,3HH}の垂直方向にN(Nは整数)ライン分、レベル2のサブバンド{2HL,2LH,2HH}の垂直方向に2×Nライン分、レベル1のサブバンド{1HL,1LH,1HH}の垂直方向に4×Nライン分のサブバンドデータを纏めて1つの処理単位(第1の処理単位)とする。図5に示すように、第1の処理単位は、サブバンドをそれぞれ垂直方向に所定のラインごとに分割した領域(バンド)として設定される。特に、図5はN=1の場合を示している。
当業者であれば、図5の右側に示す各サブバンドの係数は、符号化する画像における同じ領域の係数を表すことになるのは容易に理解できよう。以降、図5の右側に示す係数の集合をバンドと呼ぶ。
量子化パラメータ生成部203は、バンド(第1の処理単位)に対応する目標符号量と発生符号量とを比較し、次のバンドの発生符号量を目標発生符号量に近づけるようにフィードバック制御を行うことを繰り返し、全チャネル、全サブバンドに共通の第3の量子化パラメータ(QpBr)を生成する。つまり、バンド数がBnである場合、QpBr(0)、QpBr(1)、QpBr(2)、…、QpBr(Bn-1)を求める。尚、RAWデータに対して画面内の符号量制御を行わない場合には、上記に示すような符号量制御単位に関係なく全画面固定となる全チャネル、全サブバンドに共通のQpBrを設定又は生成すれば良い。このときの符号量の制御は次式(4)に従って実行することができる。
QpBr(i)=QpBr(0)+r×Σ{S(i-1)-T(i-1)} …(4)
QpBr(0) : 最初のバンドの初期量子化パラメータ
QpBr(i):i番目のバンドに対する量子化パラメータ(i>0)
r:制御感度
S(i):第i番目のバンドで生成された符号化データの符号量
T(i):第i番目のバンドの目標符号量
なお、1フレームに含まれるバンドの個数をM,1フレームの目標符号量をTとしたとき、T(i)=T/Mとなる。本実施形態では、第i番目の目標符号量T(i)を、T(i)=T/Mに設定したが、異なる方法で目標符号量を設定してもよい。
式(4)では、サブバンドデータに設定された各バンド(第1の処理単位)のうちの先頭のバンドに対して設定した初期量子化パラメータQpBr(0)を基準とし、発生符号量と目標符号量との差分の大きさに応じて当該初期量子化パラメータを調整する。具体的に、先頭のバンド以降に発生した符号量の合計(総発生符号量)と、対応する目標符号量の合計(総目標符号量)との符号量差分が小さくなるように初期量子化パラメータの値を調整して、処理対象のバンドのための第3の量子化パラメータを決定する。先頭のバンドに対して設定される初期量子化パラメータは、圧縮率などに基づいて量子化パラメータ生成部203が決定したパラメータを用いることができる。
このようにして、バンドごとに第3の量子化パラメータ(QpBr)を生成した後、量子化パラメータ生成部203はバンドを更に細分化(セグメント化)し、第2の処理単位であるセグメントごとのサブバンドデータの画質評価結果に応じて第3の量子化パラメータ(QpBr)を調整して第1の量子化パラメータ(QpBs)を生成する。これにより、RAWデータの特性に応じて量子化の強弱を調整する画質制御に関わる量子化パラメータ生成を行うことができる。
図6(a)は、各チャネルをlev=3でサブバンド分割した場合の画質制御に関わるサブバンドデータの評価及び量子化パラメータを更新する第2の処理単位(セグメント)を示す。各セグメントでは、全チャネルのレベル3のサブバンド{3LL,3HL,3LH,3HH}の水平、垂直方向それぞれにM×N(M、Nはそれぞれ整数)、レベル2のサブバンド{2HL,2LH,2HH}の水平、垂直方向にそれぞれ(2×M)×(2×N)、レベル1のサブバンド{1HL,1LH,1HH}の水平、垂直方向にそれぞれ(4×M)×(4×N)としている。
ここに示す第2の処理単位としてのセグメントは、第1の処理単位としてのバンドを水平方向に細分化したものである。本実施形態ではセグメント化は、各サブバンドに含まれるセグメント数が一致するように行う。M=1、N=1とすると、セグメントはレベル1相当でバンドを水平方向に4画素単位に分割したものと捉えることができる。量子化パラメータ生成部203は、バンドごとに算出した第3の量子化パラメータQpBrを、セグメントごとの画質特性に応じて修正することで、セグメントごとの第1の量子化パラメータを生成する。
第p番目のバンドの量子化パラメータはQpBr(p)と表し、第p番目のバンド内の第q番目のセグメントの量子化パラメータをQpBs(p,q)とする。そして、1つのバンドがQ個のセグメントを含むとすると、QpBs(p,0)、QpBs(p,1)、…、QpBs(p,Q-1)を求めることになる。そして、第p番目のバンド内の第q番目のセグメントの量子化パラメータの値は、第p番目のバンドの第3の量子化パラメータQpBr(p)を基準に表現する。この量子化パラメータQpBs(p,q)の集合が、実施形態における第1の量子化パラメータである。
図6(b)は、M=1、N=1とした場合の、第1の量子化パラメータ(QpBs(p,q))とサブバンドデータとの関係を示す。ここに示すように、1つのセグメントに含まれる各チャネルの複数のサブバンドデータに対して1つの第1の量子化パラメータ(QpBs)が生成される。
セグメントごとの画質評価ついては、各セグメントに含まれるサブバンドデータのうち、例えば低周波サブバンド3LLを低周波成分として評価し、1HL,1LH,1HHのサブバンドデータにより高周波成分を評価する。このとき、低周波成分の振幅が小さい程量子化を細かく、高周波成分の振幅が大きい程量子化を粗く制御するように符号量制御により、第3の量子化パラメータ(QpBr)に対してゲイン、オフセット調整を行うようにフィードフォワード制御すれば良い。
図7は、量子化パラメータ生成部203が実行する、画質評価に基づく第3の量子化パラメータ(QpBr)の調整処理の一例に対応するフローチャートを示す。ここでは、第p番目のバンドの第q番目のセグメントに対する処理を説明する。該フローチャートに対応する処理は、例えば、量子化パラメータ生成部203として機能する1以上のプロセッサが対応するプログラム(ROM等に格納)を実行することにより実現できる。
S701にて、量子化パラメータ生成部203は、第p番目のバンドの第q番目のセグメントの低周波成分について判定を行う。具体的には、量子化パラメータ生成部203は3LLの変換係数と、判定用に設定された閾値Th1とを比較する。3LLの変換係数が閾値以下の大きさであれば(S701で「YES」)、量子化パラメータ生成部203は処理をS702に進める。S702において、量子化パラメータ生成部203は、処理対象のバンドの第3の量子化パラメータQpBr(p)を減少させた値を、着目セグメントの第1の量子化パラメータQpBs(p,q)として決定する。例えば、QpBr(p)に対して1未満の係数を掛けるか、あるいはQpBr(p)から所定値を減算した値とする。
S701には、3LLの変換係数が閾値Th1より大きい場合(S701で「NO」)、量子化パラメータ生成部203は処理をS703に進める。S703において量子化パラメータ生成部203は、量子化パラメータ生成部203は高周波成分について判定を行う。具体的には、量子化パラメータ生成部203は、着目セグメントにおける1HL、1LH、1HHの変換係数の平均値と、判定用に設定された閾値Th2とを比較する。そして、平均値が閾値Th2より小さい場合(S703で「NO」)、量子化パラメータ生成部203は処理をS704に進める。また、平均値が閾値Th2以上の大きさであれば(S703で「YES」)、量子化パラメータ生成部203は処理をS705に進める。S704にて、量子化パラメータ生成部203は、QpBr(p)の値を、着目セグメントの量子化パラメータQpBs(p,q)と決定する。また、S705にて、量子化パラメータ生成部203は、QpBr(p)を増大させた値を、着目セグメントの量子化パラメータQpBs(p,q)として決定する。例えば、QpBr(p)に対して1以上の係数を掛けるか、あるいはQpBr(p)に所定値を加算することで、着目セグメントの量子化パラメータQpBs(p,q)を決定する。
以上により、第p番目の着目バンドの第q番目のセグメントの第1の量子化パラメータQpBs(p,q)が決定される。1つのバンドにQ個のセグメントが含まれるとしているので、1つのバンドに対し、図7に示す処理はQ回実行されることになる。この結果、第p番目のバンドに含まれる全セグメントの第1の量子化パラメータQpBs(p,0)、QpBs(p,1)、…、パラメータQpBs(p,Q-1)が決定される。
更に、全バンドに対する処理を行うことで、全チャネル、全サブバンドの第1の量子化パラメータQpBs(p,q)が決定されることになる。例えば上記のM=1、N=1とした場合、図8に示すように各チャネルの8×8画素相当に対応し、元のRAWデータの16×16画素相当のRAWデータのブロック単位の量子化制御が可能となる。
次に、第1の量子化パラメータQpBsを用いて各チャネル、各サブバンドのための個別の第2の量子化パラメータQpSbを生成する処理について説明する。本実施形態では上述のように、セグメント毎に1つの第1の量子化パラメータQpBsが生成されるが、各チャネルの各セグメントの量子化はQpBsをそのまま用いるのではなく、チャネル、セグメントに個別に対応した第2の量子化パラメータQpSbをQpBsから生成して量子化処理を行う。
以下、第p番目のバンドの第q番目のセグメントに対する第1の量子化パラメータQpBs(p,q)から、各チャネル、各サブバンドに対する第2の量子化パラメータQpSbの生成方法を説明する。ここでは、第p番目のバンドの第q番目のセグメントに対する第1の量子化パラメータQpBs(p,q)を単にQpBsと表すものとする。
次式(5)は、QpSb生成のための計算式である。
QpSb[i][j]=QpBs×α[i][j]+β[i][j] …(5)
QpSb:各チャネル、各サブバンド個別の第2の量子化パラメータ
QpBs:全チャネル、全サブバンド共通の第1の量子化パラメータ
α:傾き
β:切片
i:チャネルインデックス(0~3)
j:サブバンドインデックス(0~9)
ここでサブバンドインデックスの値とサブバンドの関係は例えば図9(b)の関係にある。つまり、周波数成分が高いほど大きな値となる。
式(5)において、傾きα及び切片βは、各チャネル、各サブバンドに個別に与えられる係数(変数、もしくは条件パラメータ)であって、予め定めておくことができる。αの値は、チャネルC0からC3について、C0>C1=C2>C3の関係で値が大きくなり、αが大きいほどQpSbの値が大きくなる。また、各サブバンドについては低周波成分寄りのサブバンドほど量子化パラメータの値を小さくするためα、βの値を小さくし、高周波成分寄りのサブバンドほど量子化パラメータの値を大きくするためにα、βの値を大きくする。
また、α[i][j]、β[i][j]の各値は予め設定されるものであるが、設定される圧縮率に応じて複数の組み合わせが用意されても良い。例えば、圧縮率が高い場合にはQpSbの値が大きすぎると情報が消失してしまうので、QpSbが大きくなりすぎないようにα、βの値を小さめに調整することができる。
このようにして、各チャネル、各サブバンドの個別の重み係数α、βにより第1の量子化パラメータQpBsを修正して第2の量子化パラメータQpSbを生成するので、各チャネル、各サブバンドに対して柔軟に量子化制御することが可能になる。量子化部204は、式(5)に基づき生成された各チャネル、各サブバンドの第2の量子化パラメータQpSbを用いて、周波数変換部202から得られた変換係数を量子化する。
また、RAWデータ復号部103における第2の量子化パラメータQpSbの生成方法も、上述の式5に従って行うことができる。その際、第1の量子化パラメータQpSrとα、βの各値は、量子化パラメータ復号部212から提供される。
以上のようにしてRAWデータ符号化・復号部103で符号化された各チャネルのサブバンドデータ、及び、第1の量子化パラメータQpBs並びα、βは、記録処理部106により所定のデータ形式に基づき多重化され、符号化データとして記録される。図9(a)は、符号化データを記録する場合のデータ構造の一例を示す。図9(a)に示すように、符号化データは階層構造となっており、符号化データ全体に関わる情報を示す「main_header」から始まり、RAWデータを複数の画素ブロック単位にタイル分割して符号化することを想定して「tile_header」と「tile_data」によりタイル単位にデータを格納することが可能となっている。上記説明においては、RAWデータをチャネル、サブバンドデータ単位に直接符号化する場合を説明したが、タイルに限らずRAWデータ内の所定の集合を単位として本発明を適用することができる。即ち、RAWデータをタイルに分割し、当該タイルについてチャネル、サブバンドデータ単位に符号化する場合も、上記と同様の処理をRAWデータを複数に分割して得られたタイル単位に実行すればよい。この場合、タイル単位に各チャネルのサブバンドデータ、及び、第1の量子化パラメータQpBsが符号化されて、符号化データに包含される。タイル分割を行わない場合は、「tile_header」と「tile_data」は1つのみとなる。
「tile_data」は以下の要素を含む。まず符号化された第1の量子化パラメータQpBsに関わる情報を示す「qp_header」と符号化された第1の量子化パラメータ自体である「coded_qp_data」が配置される。続く「coded_raw_data」は、チャネル単位に並んで配置されており、各チャネルに関わる情報を示す「channel_header」とそのチャネル毎の本体データである「channel_data」の順にチャネル分の符号化済みのデータが格納される。「channel_data」は、サブバンド毎の符号化されたデータの集合で構成されており、各サブバンドに関わる情報を示す「sb_header」と符号化されたサブバンド毎のデータである「sb_data」がサブバンドインデックス順に並んでいる。サブバンドインデックスは、図9(b)に示す通りである。
続いて、各ヘッダ情報のシンタクス要素について図10に基づき説明を行う。「main_header」は以下の要素で構成される。「coded_data_size」は符号化データ全体のデータ量を示す。「width」はRAWデータの幅を示す。「height」はRAWデータの高さを示す。「depth」はRAWデータのビット深度を示す。「channel」はRAWデータの符号化時のチャネル数を示す。「type」はチャネル変換のタイプを示す。「lev」は各チャネルのサブバンドレベルを示す。
「tile_header」は、以下の要素で構成される。「tile_index」はタイル分割位置を識別するためのタイルのインデックスを示す。「tile_data_size」はタイルに含まれるデータ量を示す。「tile_width」はタイルの幅を示す。「tile_height」はタイルの高さを示す。
「qp_header」は、以下の要素で構成される。「qp_data_size」は符号化された第1の量子化パラメータのデータ量を示す。「qp_width」は、第1の量子化パラメータの幅、即ちRAWデータに対応する水平方向の第1の量子化パラメータの数を示す。「qp_height」は、第1の量子化パラメータの高さ、即ちRAWデータに対応する垂直方向の第1の量子化パラメータ数を示す。
「channel_header」は、以下の要素で構成される。「channel_index」はチャネルを識別するためのチャネルのインデックスを示す。「channel_data_size」はチャネルのデータ量を示す。「sb_header」は、以下の要素で構成される。「sb_index」はサブバンドを識別するためのサブバンドインデックスを示す。「sb_data_size」はサブバンドの符号化されたデータ量を示す。「sb_qp_a」は、各サブバンドに対する量子化パラメータを生成するための式(5)に示すα値を示す。「sb_qp_b」は、各サブバンドに対する量子化パラメータを生成するための式(5)に示すβ値を示す。
以上の実施形態によれば、各チャネル、各サブバンドの量子化パラメータを全て記録するのではなく、全チャネル、全サブバンドの共通の量子化パラメータを記録し、当該共通量子化パラメータから各チャネル、各サブバンドの量子化パラメータを生成可能にする。これにより、以下に述べるような量子化パラメータのデータ量抑制の効果を達成することができる。
各チャネル、各サブバンドの個別の量子化パラメータを全て記録する場合(従来例)と、全チャネル、全サブバンド共通の量子化パラメータを記録する場合(本実施形態)とでデータ量の比較を考える。ここで、レベル1からレベル3までの各サブバンドについて1つずつの量子化パラメータが記録されることになる。よって、1セグメントについて記録することになる量子化パラメータのデータサイズは、(1×4サブバンド+1×3サブバンド+1×3サブバンド)×4チャネル分となり全体で40となる。一方、共通量子化パラメータは、1つだけあればよいため1となり、記録対象とする量子化パラメータを共通の量子化パラメータとすることで量子化パラメータのサイズを40分の1に削減することできる。
図11は、バンド数がP個、1バンドに含まれるセグメント数をQとした場合の、記録対象の共通の第1の量子化パラメータQpBsを示している。図示の如く、第1の量子化パラメータQpBsは2次元座標系にマップされた画面データと見なすことができるので、量子化パラメータの符号化に用いた予測差分符号化方式(MED予測)を同様に適用することでより量子化パラメータのデータ量を削減することが可能となる。なお、図11において、QpBs[p,q]は、各セグメントに割り当てられた共通量子化パラメータを示し、pは、0から垂直方向のセグメントの分割数Pまでの値を取り、qは、0から水平方向のセグメントの分割数Qまでの値を取り得る。[p, q]の各値は、サブバンドにおける各セグメントの位置と対応する。
以上のようにRAWデータを複数のチャネルに変換し、各チャネル単位にサブバンド分割を行う場合に、セグメント単位に全チャネル、全サブバンドに共通の量子化パラメータと重み付け関数とにより各チャネル、各サブバンド個別の量子化パラメータを生成することができる。これにより、柔軟な量子化制御を実現しつつ、共通の量子化パラメータを2次元データとして予測符号化を行うことで量子化パラメータのデータ量を大幅に削減し、高画質且つコンパクトにRAWデータを記録することが可能となる。
[第2の実施形態]
以下、第2の実施形態について説明する。本第2の実施形態の撮像装置は、第1の実施形態の撮像装置と同様の構成とすることができる。但し、RAWデータ符号化・復号部103の量子化パラメータ生成部203における第1の量子化パラメータの生成単位と、各チャネル、各サブバンド個別の第2の量子化パラメータを生成するプロセスとが異なる。第1の実施形態と共通の構成の説明は本実施形態では省略するものとし、主に量子化パラメータ生成方法の相違に係る構成について説明する。
図12(a)は、各チャネルをlev=3でサブバンド分割した場合の画質制御に関わるサブバンドデータの評価及び量子化パラメータを更新する単位を示しており、全チャネルのレベル3のサブバンド(3LL,3HL,3LH,3HH)の水平、垂直方向それぞれに(1×M)×1ライン(Mはそれぞれ整数)に対し、レベル2のサブバンド(2HL,2LH,2HH)の水平、垂直方向にそれぞれ(2×M)×1ライン、レベル1のサブバンド(1HL,1LH,1HH)の水平、垂直方向にそれぞれ(4×M)×1ラインのサブバンドデータに対応する共通の第1の量子化パラメータ(QpBs)を生成する。
図6(a)に示した画質制御に関わるセグメントと比較すると、図12(a)ではレベル1においてセグメントサイズが垂直方向に4分の1となっている。よって、仮にM=1とした場合の第1の量子化パラメータ(QpBs)とサブバンドデータとの関係は、図12(b)のようになる。ここでは、レベル1においてセグメントサイズが4×1となっているため、4×4のセグメントに換算すると第1の量子化パラメータ(QpBs)が4つ存在することになる。これにより、第1の実施形態と比較して垂直方向により細かい量子化制御が可能となっている。尚、同様に水平方向に対しても細かくすることも可能である。
画質制御に関わるサブバンドデータの評価方法は、第1の実施形態と実質的には同様であるが、本第2の実施形態では低周波成分として評価する対象を3LLではなくサブバンド分割工程で中間的に生成される1LL相当のサブバンドデータとする。処理の流れは図7に示したフローチャートと同様であるが、S701における判定対象は3LLではなく1LLの変換係数となる。
本第2の実施形態では、例えばM=1の4×4のセグメントに換算した場合、画質制御の対象となるライン単位の量子化パラメータ数がレベル1からレベル3で異なるため、第1の実施形態のようにレベル1からレベル3まで第1の量子化パラメータQpBsを共通に使用できない。そこで、本第2の実施形態では、レベル1における4つのQpBsから、各レベルのQpLv1~QpLv3を以下の式6に示す計算式に基づき生成し、これらを用いて各チャネル、各サブバンドに対応する個別の第2の量子化パラメータQpSbを生成する。
QpLv1[m]=QpBs[m]
QpLv2[n]=(QpBs[n×2]+QpBs[n×2+1])>>1
QpLv3[n]=(QpBs[0]+QpBs[1]+QpBs[2]+QpBs[3])>>2 …(6)
m :セグメント単位のレベル1のサブバンドに対するライン数(0~3)
nn:セグメント単位のレベル2のサブバンドに対するライン数(0~1)
>>x:右方向(下位方向)へxビットシフト
尚、式(6)に示すようにレベル2及びレベル3の量子化パラメータを対応するQpBsの平均値により算出しているが、最大値や最小値のQpBsを選択するようにしても良い。また、QpLv3をQpLv2の平均値、最大値又は最小値として算出しても良い。最終的な量子化に用いる各チャネル、各サブバンドの第2の量子化パラメータ(QpSb)は、前述の式5におけるQpBsをQpLv1~QpLv3に置き換えて算出すれば良く、各量子化パラメータと量子化対象のサブバンドとの関係は、図12(c)に示すようになる。
次に、図13を参照して、本第2の実施形態における、記録される量子化パラメータのデータ量の削減度合いについて説明する。対比される従来例において、各レベルにつき1ライン単位に量子化パラメータを記録すると仮定すると、レベル3のサブバンドの量子化パラメータを1とした場合、レベル2はレベル3の2倍、レベル1はレベル3の4倍の量子化パラメータを記録することになる。よって、1セグメントについて記録することになる量子化パラメータのデータサイズは、(1×4サブバンド+2×3サブバンド+4×3サブバンド)×4チャネル分となり全体で88となる。一方、共通の量子化パラメータは、レベル1のサブバンド相当であるため4となり、記録対象とする量子化パラメータを共通の量子化パラメータとすることで量子化パラメータのサイズを22分の1に削減することできる。
このように、本実施形態のように垂直方向により細かい量子化制御を行なった場合であっても、従来例と比較して十分なデータ削減効果が期待できるものである。また、第1の実施形態と同様に、本実施形態でも柔軟な量子化制御を実現しつつ、共通の量子化パラメータを2次元データとして予測符号化を行うことで量子化パラメータのデータ量を大幅に削減し、高画質且つコンパクトにRAWデータを記録することが可能となる。
[第3の実施形態]
以下、発明の第3の実施形態について説明する。図23(a)は、本第3の実施形態の撮像装置のRAWデータ符号化部103Eの構成を、同図(b)はRAWデータ復号部103Dの構成を示している。図2(a),(b)と異なる点は、RAWデータ符号化部103Eにタイル分割部2301が追加された点、RAWデータ復号部103Dにタイル統合部2302が追加された点である。それ以外は、第2の実施形態と同じであるものとする。
タイル分割部2301は、入力した1フレームのRAW画像データを予め設定された個数のタイルに分割し、各タイル単位にチャネル変換部201に供給する。ただし、実施形態におけるタイル分割部2301は、分割した着目タイルのRAW画像データをチャネル変換部201に供給する際、隣接するタイル内の着目タイルとの境界から所定の距離に位置する画素データも含めて、チャネル変換部201に供給する。チャネル変換部201以降の符号化処理は上記第1、第2の実施形態と同じであるが、本第3の実施形態では、複数のタイルの符号化データが1フレームの画像の符号化データとなる点で異なる。また、周波数変換部202は、隣接タイル内の境界近傍のデータをも周波数変換(ウェーブレット変換)するので、着目タイルのみを周波数変換する場合と比べて、サブバンドデータが増える。また、タイル統合部2302は、復号して得た各タイルの画像を連結して1フレームのRAW画像データを生成し、出力することになる。
本第3の実施形態における周波数変換部202が用いるウェーブレット変換のフィルタは、第1の実施形態と同様に、5タップのlpfと3タップのhpfを用いるものとする。
ここで説明を単純化するため、ウェーブレット変換を1回行う場合について考察する。図14は、RAW画像を水平方向に2タイルに分割した場合の、周波数変換部202が離散ウェーブレット変換を水平方向に1回実行するためのリフティング構造を示している。
図14の参照符号a~iは、タイル境界付近の1ラインのデータを示している。図示は、データdとeの間にタイル境界がある例を示し、データe~iが離散ウェーブレット変換対象の符号化対象の着目タイルに属し、データa~dが左に位置する隣接タイルに属する例である。実施形態における符号化処理は、タイルを単位とするラスタースキャン順に行われるものとする。
5タップのlpfと3タップのhpfを用いて離散ウェーブレット変換を1回行う場合、連続する3つのデータを参照して高周波成分を示す変換係数が算出される。図示の、b’、d’、f’、h’が、分解レベル1の高周波成分の変換係数(1H)を示している。
また、連続する5つのデータを参照して低周波成分を示す変換係数が算出される。図示のc”、e”、g”が、分解レベル1の低周波成分を示す変換係数(1L)を示している。
ここで、ウェーブレット変換を1回実行して符号化する場合の着目タイルのタイル境界に最近接するデータ「e」を復号する場合を考察する。データ「e」を復号するためには、図示のように、高周波変換係数d’,f’と、低周波変換係数e”の3つがあればよい。このうち、半数以上を隣接タイルのデータを参照して生成された変換係数は、高周波変換係数d’である。そして、この高周波変換係数d’は、着目タイル内のデータeと、隣接タイルのデータc、dの2つの計3つから算出される。そのため、離散ウェーブレット変換を1回行う場合に、左に隣接するタイルの参照データ数は“2”となる。
このように、周波数変換部202は、着目タイルを符号化する際にその左隣にタイルがある場合であって、離散ウェーブレット変換を1回のみ行う場合には、着目タイルに加えて、左隣のタイルの境界から2画素分の距離にあるデータc、dを入力し、離散ウェーブレット変換を行う。
ここで、左隣のタイルは、着目タイルの直前に符号化を終えているので、左隣のタイルを符号化する際に高周波変換係数d’は演算済みであるので、それを利用すれば良いように思える。しかし、左隣のタイルの高周波変換係数d’は量子化されており、且つ、その量子化の際の量子化パラメータは、着目タイルの量子化パラメータと同じであるとは限らない。そこで、本実施形態では、左隣のタイル内の、タイル境界から2画素分の距離にあるデータc、dを含めて、ウェーブレット変換し、着目タイルの符号化を行う。
そして、周波数変換部202は、符号化対象タイルから得られた変換係数に加えて、半数以上を隣接タイルのデータを参照して生成された変換係数d’を、タイル境界付近の1ラインのデータの水平方向の離散ウェーブレット変換の変換係数とする。
前述の5タップのlpfと3タップのhpfを用いて離散ウェーブレット変換を、リフティング構造を用いて符号化した場合の復号処理を、図15を用いて説明する。
図15は、周波数逆変換部215が、図14を用いて説明した離散ウェーブレット変換で生成した係数をリフティング構造を用いて離散ウェーブレット逆変換する様を示す図である。図15のd’、e”、f’、g”は、図14のd’、e”、f’、g”に対応する。つまり、d’,f’は分解レベル1の高周波の変換係数(1H)であり、e”、g”は分解レベル1の低周波の変換係数(1L)を示している。このうち、変換係数d’は、半数以上を隣接タイルのデータを参照して生成された変換係数である。変換係数d’、e”、f’から、符号化対象タイルの端のデータeを生成することができる。
さて、実施形態では、ウェーブレット変換の実行回数が「3」の場合であるので、その説明に戻る。図16は、RAW画像を水平方向に2タイルに分割した場合の、周波数変換部202が離散ウェーブレット変換を水平方向に3回行う場合の実行法を示す図である。
離散ウェーブレット変換を1回実行する図14の場合には、符号化対象タイル内のデータを復号するのに必要な変換係数を生成するために、隣接タイルを参照して入力するデータは既に図14を用いて説明したように2つであった。一方、離散ウェーブレット変換を3回行う場合は、図16のように隣接タイル内のタイル境界から16個分の距離にある16個のデータを入力する必要がある。
符号化対象タイルの端に位置するデータを復号するのに必要な変換係数のうち、半数以上を隣接タイルのデータを参照して生成された変換係数は、図示の丸で囲った変換係数となる。つまり、分解レベル1の変換係数(1H)の1係数、分解レベル2の変換係数(2H)の1係数、分解レベル3の変換係数(3H)の1係数の計3係数だけである。よって、半数以上を隣接タイルのデータを参照して生成された変換係数のうち、これら3係数をタイル境界付近の1ラインのデータの水平方向の離散ウェーブレット変換の変換係数とすれば良い。
以上、図14、図15、図16を用いて、RAW画像を水平方向に2タイルに分割した場合の、周波数変換部202が離散ウェーブレット変換を水平方向に実施した場合について説明したが、RAW画像を垂直方向に2タイルに分割し、垂直方向に実施した場合についても同様である。
また、図14、図15、図16を用いて、水平方向の1次元の離散ウェーブレット変換について説明したが、周波数変換部202が離散ウェーブレット変換を水平、垂直方向に2次元に実施する場合は、以下のように処理される。
はじめに水平方向の処理は、前述の通りに符号化対象の着目タイルと隣接タイルから得られたデータを参照し、垂直方向の離散ウェーブレット変換処理を行い、着目タイルの端に位置するデータを復号するのに必要なだけ水平方向変換係数を出力する。
その後、垂直方向の処理は、着目タイルの前記水平方向変換係数のみならず、隣接タイルの水平方向変換係数を入力し、垂直方向の離散ウェーブレット変換処理を行い、着目タイルの端に位置するデータを復号するのに必要なだけサブバンドデータを出力する。
以後、水平方向の処理に必要なデータのうち、半数以上を着目タイルのデータを参照し、かつ垂直方向の処理に必要なデータのうち、半数以上を符号化対象タイルのデータを参照して生成された変換係数を第1の変換係数と定義し、それ以外のサブバンドデータを、第2の変換係数と定義する。
言い換えると、第2の変換係数は、水平方向の処理、もしくは垂直方向のいずれか一方の処理において、半数以上を隣接タイルのチャネルデータを参照して生成された変換係数である。
図17(a)は、RAW画像を左右の2タイルにタイル分割した場合の概念図である。ここでは、左タイルをタイルA、右タイルをタイルBとし、タイルBが符号化対象タイルであることを示している。
図17(b)は、タイルAおよびタイルBの第1の変換係数、および第2の変換係数を示している。タイルAは、右に隣接するタイルが存在しており、3HL/3HH/2HL/2HH/1HL/1HHの、6つのサブバンドにおいて、第1の変換係数の右側に第2の変換係数が2係数存在する例を示している。
タイルBは、左に隣接するタイルが存在しており、3HL/3HH/2HL/2HH/1HL/1HHの、6つのサブバンドにおいて、第1の変換係数の左側に第2の変換係数が1係数存在する例を示している。
図18は、RAW画像をタイル分割した場合の、第2の量子化パラメータ(QpSb)の生成処理を示すシーケンス図である。
なお、本実施形態では、セグメントの分割は第1の変換係数を対象とし、第2の変換係数は、セグメントに含まれない。そして、第1の実施形態と同様の手順でセグメントの分割を行うことで、セグメントは第2の変換係数の有無によらず、第1の実施形態と同一となるものとする。
S1801において、量子化パラメータ生成部203は、各バンド(第1の処理単位)ごとに第3の量子化パラメータ(QpBr)を生成する。
S1802において、量子化パラメータ生成部203は、第2の処理単位であるセグメントごとのサブバンドデータの画質評価結果に応じて第3の量子化パラメータ(QpBr)を調整して第1の量子化パラメータ(QpBs)を生成する。
S1803において、量子化パラメータ生成部203は、セグメントに隣接する第2の変換係数が存在するかどうかについて判定を行う。
第2の変換係数が存在する場合(S1803で「YES」)、量子化パラメータ生成部203は処理をS1804に進め、存在しない場合には処理をステップS1805に進める。
S1804にて、量子化パラメータ生成部203は、セグメントに含まれるサブバンドデータと、第2の変換係数の第2の量子化パラメータQpSbをQpBsから生成する。この詳細は、図19を用いて後述する。
また、ステップS1805に処理が進んだ場合、量子化パラメータ生成部203は、セグメントに含まれるサブバンドデータの第2の量子化パラメータQpSbをQpBsから生成する。ここでは、第1の実施形態と同様の方法で第3の量子化パラメータ(QpBr)、第2の量子化パラメータ(QpBs)、第1の量子化パラメータ(QpSb)を生成することとする。
ただし、S1801においては、上端に存在する第2の変換係数やラインの左右に存在する第2の変換係数を、第一の処理単位に対応する目標符号量と発生符号量に含めて第3の量子化パラメータ(QpBr)を生成する構成を取っても良い。
S1806にて、量子化パラメータ生成部203は、第2の量子化パラメータQpSb生成対象のセグメントを更新する。
S1807にて、量子化パラメータ生成部203は、バンド内の全チャネル、全セグメントの第2の量子化パラメータQpSb生成が完了したかどうかを判定する。そして、処理が完了していると判定した場合、量子化パラメータ生成部203は処理をS1808に進める。また、未完であると判定した場合には、量子化パラメータ生成部203は、処理をS1803に戻して、全チャネルの全セグメントの第2の量子化パラメータQpSbの生成が完了するまでセグメント単位の処理を繰り返す。
S1808にて、量子化パラメータ生成部203は、全バンドの処理が完了したかどうかを判定する。処理が完了していれば、量子化パラメータ生成部203は、本処理を終了する。また、未完である場合、量子化パラメータ生成部203は処理をS1801に戻し、全バンドの処理が完了するまでバンド単位の処理を繰り返す。
図19は、RAW画像を複数のタイルに分割し、着目タイルの上下左右に隣接するタイルが存在する場合の、上下左右の各第2の変換係数と、第1の量子化パラメータ(QpBs)の関係を、lev=1でサブバンド分割した場合のサブバンドを例に示している。
ここでは、量子化パラメータ生成部203の説明のため、上、左の第2の変換係数は1係数、右、下の第2の変換係数は2係数の例を示している。
図19を用いて、S1804の量子化パラメータ生成部203の処理を説明する。図示の点線で囲った第1の変換係数、第2の変換係数が、各々同じ第1の量子化パラメータ(QpBs)を参照していることを示している。
量子化パラメータ生成部203は、例えば、第1の量子化パラメータQpBs[1,1]を参照するセグメントを対象に第2の量子化パラメータ(QpSb)を生成する場合、処理対象のセグメントに隣接する第2の変換係数が存在する。そのため、処理対象のセグメントに含まれる第1の係数のみならず、隣接、もしくは最近接する第2の変換係数の第2の量子化パラメータを、第1の量子化パラメータQpBs[1,1]を参照し、第1の実施形態と同様の方法で第2の量子化パラメータ(QpSb)を生成する。
よって、処理対象のセグメントに含まれる第1の係数の第2の量子化パラメータと、隣接、もしくは最近接する第2の変換係数の第2の量子化パラメータは、同値となる。
その他の第2の変換係数についても、処理対象のセグメントに隣接する第2の変換係数が存在する場合に、同様の方法で第2の量子化パラメータが生成される。
なお、図19では、第2の変換係数の数を1つ、もしくは2つの例を示したが、第2の変換係数がN(Nは定数)の場合についても同様の仕組みで第2の変換係数の第2の量子化パラメータ(QpSb)を生成可能である。
以上、符号化装置における量子化パラメータ生成部203の処理について説明してきたが、復号装置における量子化パラメータ生成部213についても同様に、セグメントに含まれる第1の変換係数とセグメントに最近接する第2の変換係数の第2の量子化を、同じ第1の量子化パラメータ(QpBs)を参照し、第1の実施形態と同様の方法で第2の量子化パラメータ(QpSb)を生成する。
以上のようにすることで、RAW画像データを複数のタイルに分割し、タイル境界の劣化を抑えるために第2の変換係数を生成する場合に、第2の変換係数が存在しない場合と比較して量子化パラメータのデータ量を増やすことなくRAWデータを記録することが可能となる。
[第4の実施形態]
以下、第4の実施形態について説明する。上記第3の実施形態では、RAW画像データを複数のタイルに分割、タイルごとに符号化する場合、量子化パラメータ生成部203は、第2の変換係数と、第2の変換係数に最近接する第1の変換係数の第2の量子化パラメータが同値になるように第2の量子化パラメータを生成した。このため、第2の変換係数の画質評価結果に応じた、第2の変換係数の量子化パラメータの調整が出来ないため、画質面で不利な構成であった。
第4の実施形態では、第3の実施形態の撮像装置に対して量子化パラメータ生成処理を工夫することで、第2の変換係数の画質評価結果に応じた第2の量子化パラメータの調整を可能としている。
第3の実施形態と共通の構成の説明は省略し、以降では、本第4の実施形態における量子化パラメータ生成方法と、量子化パラメータ符号化方法の相違に係る構成について説明する。
以下、第1の変換係数の評価および量子化パラメータを更新する第1の処理単位を第1のセグメントと定義し、第2の変換係数の評価および量子化パラメータを更新する第2の処理単位を第2のセグメントと定義する。
図20(a)は、RAW画像を上下にタイル分割した際の着目タイルの上側に隣接タイルが存在する場合の、各チャネルをlev=3でサブバンド分割した場合の画質制御に関わるサブバンドデータのうち、第2の変換係数の評価および量子化パラメータを更新する第2の処理単位(第2のセグメント)を示す。
上下にタイル分割し、上側に隣接タイルが存在する場合、第2の変換係数は第1の変換係数の上にライン単位で存在する。
ここでは、量子化パラメータ生成部203の説明のため、3LH、3HHのサブバンドで第2の変換係数は1係数が、2LH、2HH、1LH、1HHのサブバンドで第2の変換係数は2係数が存在した場合の例を示している。
各第2のセグメントは、全チャネルのレベル3のサブバンド{3LL,3HL,3LH,3HH}の水平、垂直方向それぞれに1×{第2の変換係数のライン数}、レベル2のサブバンド{2HL,2LH,2HH}の水平、垂直方向にそれぞれ2×{第2の変換係数のライン数}、レベル1のサブバンド{1HL,1LH,1HH}の水平、垂直方向にそれぞれ4×{第2の変換係数のライン数}としている。
量子化パラメータ生成部203は、初期量子化パラメータQpBr(0)を、第2のセグメントごとの画質特性に応じて修正することで、第2のセグメントごとの第4の量子化パラメータ(QpBs’)を生成する。
図20(b)は、第4の量子化パラメータ(QpBs‘)とサブバンドデータ(第2の変換係数)との関係を示す。ここに示すように、1つのセグメントに含まれる各チャネルの複数のサブバンドデータ(変換係数)に対して1つの第4の量子化パラメータ(QpBs’)が生成されており、垂直方向は第1の実施形態の図6(b)とは異なり、上端、もしくは下端に1つの第4の量子化パラメータ(QpBs’)を固定で持つことになる。
以上のように、図20(a)、図(b)では、上端に隣接タイルが存在する場合について説明したが、下端に隣接タイルが存在する場合は、以下の通りに処理を行う。
各第2のセグメントは、上端に隣接タイルが存在する場合と同様である。量子化パラメータ生成部203は、第1の変換係数の最終ラインの第3の量子化パラメータ(QpBr)を、第2のセグメントごとの画質特性に応じて修正し、第2のセグメントごとの第4の量子化パラメータ(QpBs’)を生成する。
量子化パラメータ生成部203は、第2のセグメントごとの画質特性については、各第2のセグメントに含まれる第2の変換係数のうち、例えば3LLのサブバンドデータを低周波成分として評価し、1HL,1LH,1HHのサブバンドデータから高周波成分を評価する。なお、第2のセグメント内に評価対象の各サブバンドデータ(第2の変換係数)が複数存在する場合は、その平均値をもって評価する。そして、第1の実施形態と同様に、量子化パラメータ生成部203は、低周波成分の振幅が小さい程量子化を細かく、高周波成分の振幅が大きい程量子化を粗く制御するように、第3の量子化パラメータ(QpBr)に対してゲイン、オフセット調整を行う。
図21(a)は、RAW画像データを左右にタイル分割し、左側に隣接タイルが存在する場合の、各チャネルをlev=3でサブバンド分割した場合の画質制御に関わるサブバンドデータのうち、第2の変換係数の評価および量子化パラメータを更新する第2の処理単位(第2のセグメント)を示す。
左右にタイル分割し、左端に隣接タイルが存在する場合、第2の変換係数は第1の変換係数の左に垂直ライン単位で存在することになる。
ここでは、量子化パラメータ生成部203の説明のため、3HL、3HHのサブバンドで第2の変換係数は1係数、2HL、2HH、1HL、1HHのサブバンドで第2の変換係数は2係数存在した場合の例を示している。
各第2のセグメントは、全チャネルのレベル3のサブバンド{3LL,3HL,3LH,3HH}の水平、垂直方向それぞれに「水平方向の第2の変換係数の数」×1、レベル2のサブバンド{2HL,2LH,2HH}の水平、垂直方向にそれぞれを「水平方向の第2の変換係数の数」×1、レベル1のサブバンド{1HL,1LH,1HH}の水平、垂直方向にそれぞれ「水平方向の第2の変換係数の数」×1としている。
量子化パラメータ生成部203は、量子化パラメータQpBrを、第2のセグメントごとの画質特性に応じて修正することで、第2のセグメントごとの第4の量子化パラメータ(QpBs’)を生成する。第2のセグメントごとの画質特性に応じた修正方法は、図20(b)で説明した方法と同様とする。
図21(b)は、第4の量子化パラメータ(QpBs’)とサブバンドデータ(第2の変換係数)との関係を示す。ここに示すように、1つのセグメントに含まれる各チャネルの複数のサブバンドデータ(第2の変換係数)に対して4つの第4の量子化パラメータ(QpBs’)が生成されており、垂直方向は第1の実施形態の図6(b)と同様の関係となっている。
レベル1における4つのQpBs’から、各レベルのQpLv1~QpLv3の算出方法については、第2の実施形態に記載の、前述の式(6)を参照することとし、ここでの説明は省略する。
図22Aは、RAW画像を複数に分割し、上下左右に隣接するタイルが存在する場合の、上下左右の各第2の変換係数と、第1の量子化パラメータ(QpBs)、第4の量子化パラメータ(QpBs‘)の関係を、lev=1のサブバンドを例に示している。ここでは、量子化パラメータ生成部203の説明のため、図19と同様に、上、左の第2の変換係数は1係数、右、下の第2の変換係数は2係数の例を示す。前述した第2のセグメントの定義に従い、各第2の変換係数は、各々の第2のセグメント含まれている。第2のセグメントは、第1のセグメントに対して、隣接タイルがある方向(この場合、上下左右)に、1つずつ存在する。
また、第2のセグメントごとの第4の量子化パラメータ(QpBs‘)も同様に、第1のセグメントに対応した第1の量子化パラメータ(QpBs)に対して、隣接タイルがある方向(この場合、上下左右)に、1つずつ存在する。
量子化パラメータ生成部203は、第2のセグメントに含まれる、各チャネル、各サブバンド個別の第5の量子化パラメータ(QpSb’)を、第4の量子化パラメータ(QpBs’)を参照して算出する。
次式(7)は、第5の量子化パラメータ(QpSb‘)生成のための計算式である。
QpSb’[i][j]=QpBs’×α[i][j]+β[i][j] …(7)
QpSb‘:各チャネル、各サブバンド個別の第5の量子化パラメータ
QpBs‘:全チャネル、全サブバンド共通の第4の量子化パラメータ
α:傾き
β:切片
i:チャネルインデックス(0~3)
j:サブバンドインデックス(0~9)
第2の量子化パラメータ算出のための式(5)に対して、参照する量子化パラメータを第4の量子化パラメータ(QpBs‘)に変更したのみであるため、詳細な説明はここでは省略する。
量子化パラメータ符号化部206は、第1の量子化パラメータ(QpBs)および、第4の量子化パラメータ(QpBs‘)を混在させて符号化し、対応するセグメントの座標位置に対してラスター順に第2の量子化パラメータ(QpBs)および、第4の量子化パラメータ(QpBs‘)を入力し、符号化する。
図22Aの例では、以下の順で第1の量子化パラメータ(QpBs)および、第4の量子化パラメータ(QpBs‘)を量子化パラメータ符号化部206に入力することになる。
QpBs‘[0,0]、QpBs‘[0,1]・・・QpBs‘[0、P+1]、
QpBs‘[1,0]、QpBs[0,1]・・・QpBs‘[1、P+1]、
・・・
QpBs‘[Q,0]、QpBs[Q,1]・・・QpBs‘[Q、P+1]
QpBs‘[Q+1,0]、QpBs’[Q+1,1]・・・QpBs‘[Q+1、P+1]
図22B(a)及び図22B(b)は、第2のセグメントと第4の量子化パラメータ(QpBs‘)の関係を示している。
図22B(a)は、上端タイル境界近辺の第2のセグメントと第4の量子化パラメータ(QpBs‘)の関係を示している。第2のセグメントに含まれる第2の変換係数は、各々、第2のセグメントに対応した第4のパラメータ(QpBs‘)を参照する。
図22B(b)は、下端タイル境界近辺の第2のセグメントと第4の量子化パラメータ(QpBs‘)の関係を示しており、上端タイル境界近辺と同様の関係に第2のセグメントに含まれる第2の変換係数は、各々、第2のセグメントに対応した第4のパラメータ(QpBs‘)を参照する。
以上、符号化装置における量子化パラメータ生成部203の処理について説明してきた。復号装置においては、以下の処理を行うことになる。
量子化パラメータ復号部212は、メモリ105から入力された符号化データに含まれる、第1の量子化パラメータと第4の量子化パラメータを復号する。量子化パラメータ生成部213は、復号された第1の量子化パラメータを用いて、第1の変換係数を逆量子化で生成する際に使用する第2の量子化パラメータを生成し、復号された第4の量子化パラメータを用いて、第2の変換係数を逆量子化で生成する際に使用する第5の量子化パラメータを生成する。逆量子化部214は、復号部211から出力された量子化済み第1の変換係数を第2の量子化パラメータを用いて逆量子化処理し、量子化済み第2の変換係数を第5の量子化パラメータを用いて逆量子化する。周波数逆変換部215は、第1の変換係数と第2の変換係数を入力して離散ウェーブレット逆変換による周波数変換処理を行い、所定の分割レベルのサブバンドデータ(変換係数)からチャネルを復元する。
また、チャネル逆変換部216は、周波数逆変換部215からのデータを入力し、タイル単位のベイヤ配列のRAW画像データを生成する。そして、タイル統合部2302は、各タイルを接続し、1フレームのRAW画像データを生成し、出力する。
以上のようにすることで、第2のセグメントに対応した第4の量子化パラメータ(QpBs‘)を生成し符号化することで、第2の変換係数の量子化パラメータを、第2のセグメントごとの画質特性に応じて修正することができるため、僅かな量子化パラメータ符号量の増加で、より高品位のRAWデータを記録することが可能となる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100…撮像装置、101…制御部、102…撮像部、103…RAWデータ符号化・復号部、104…メモリI/F部、105…メモリ、106…記録処理部、107…記録媒体、201…チャネル変換部、202…周波数変換部、203…量子化パラメータ生成部、204…量子化部、205…符号化部、206…量子化パラメータ符号化部、2301…タイル分割部、2302…タイル統合部

Claims (16)

  1. ベイヤ配列のRAW画像データを符号化する符号化装置であって、
    符号化対象のRAW画像データを複数のタイルに分割する分割手段と、
    該分割手段により分割された前記複数のタイル毎に互いに異なる成分を持つ複数のチャネルのプレーンを生成する生成手段と、
    該生成手段で生成した各チャネルのプレーンに対して周波数変換し、複数の分解レベルのサブバンドデータを生成する変換手段と、
    前記RAW画像データの同じ領域に対応する複数のセグメントに分割するために、前記複数のサブバンドデータをそれぞれ同じ数のセグメントに分割し、セグメント毎に複数のサブバンドデータで共通となる第1の量子化パラメータを決定する制御手段と、
    前記制御手段により決定された第1の量子化パラメータに基づいて、前記変換手段で得たサブバンドデータをセグメント毎にそれぞれ量子化する量子化手段と、
    前記量子化により得られた量子化結果を、サブバンド毎に符号化する符号化手段と、
    を有し、
    前記生成手段は、
    着目タイルから前記複数のチャネルのプレーンを生成する際に、前記着目タイルと、前記着目タイルの隣接タイル内の前記着目タイルとの境界から所定の距離までのデータとから、前記複数のチャネルのプレーンを生成し、
    前記制御手段は、
    前記着目タイルのサブバンドデータを前記複数のセグメントに分割して前記第1の量子化パラメータを決定し、前記隣接タイルのサブバンドデータは、前記着目タイルとの境界を介して隣接するセグメントの量子化パラメータを適応する
    ことを特徴とする画像符号化装置。
  2. 前記制御手段は、前記第1の量子化パラメータに基づいて、前記複数のサブバンドデータそれぞれに対応する第2の量子化パラメータを決定し、
    前記量子化手段は、前記第2の量子化パラメータに基づいて、前記複数のサブバンドデータのセグメントをそれぞれ量子化することを特徴とする請求項1に記載の画像符号化装置。
  3. 前記制御手段は、前記複数のサブバンドデータについてそれぞれ設定された係数を用いて前記第1の量子化パラメータを修正することにより、前記第2の量子化パラメータを決定することを特徴とする請求項2に記載の画像符号化装置。
  4. 前記係数は、符号化データについて設定される圧縮率に応じて設定されることを特徴とする請求項3に記載の画像符号化装置。
  5. 前記係数は、複数のセグメントにそれぞれ対応する複数の第1の量子化パラメータに対して共通に割り当てられることを特徴とする請求項3に記載の画像符号化装置。
  6. 前記第1の量子化パラメータは、前記複数のチャネルのプレーンの前記複数のサブバンドにおいて共通となる量子化パラメータであることを特徴とする請求項1に記載の画像符号化装置。
  7. 前記制御手段は、各チャネルのプレーンに対応する前記複数のサブバンドデータ毎に設定された係数を用いて前記第1の量子化パラメータを修正することにより、前記第2の量子化パラメータを決定することを特徴とする請求項2に記載の画像符号化装置。
  8. 前記符号化手段により符号化されたサブバンドデータと共に、前記セグメント毎に決定された前記第1の量子化パラメータを記録媒体に記録する記録手段を有することを特徴とする請求項1に記載の画像符号化装置。
  9. 前記符号化手段により符号化されたサブバンドデータと共に、前記セグメント毎に決定された前記第1の量子化パラメータと、前記係数とを記録媒体に記録する記録手段を有することを特徴とする請求項3または7に記載の画像符号化装置。
  10. 前記変換手段は、ウェーブレット変換を実行し、
    前記距離は、前記ウェーブレット変換の実行回数に応じた距離であることを特徴とする請求項1に記載の画像符号化装置。
  11. 前記制御手段は、各セグメントにおける低周波サブバンドの係数に基づいて各セグメントの前記1の量子化パラメータを決定することを特徴とする請求項1に記載の画像符号化装置。
  12. 請求項1に記載の画像符号化装置で生成された符号化データを復号する画像復号装置であって、
    符号化データから、復号しようとする着目タイル内の各セグメントの第1の量子化パラメータを復号する第1の復号手段と、
    前記符号化データから、前記着目タイルの各セグメントの量子化後のデータを復号する第2の復号手段と、
    前記第2の復号手段で得た量子化後のデータを前記第1の量子化パラメータに従って逆量子化する逆量子化手段と、
    該逆量子化手段で得た各セグメントで構成されるデータを周波数逆変換を行うことで、着目タイルの複数のチャネルのプレーンを生成する逆変換手段と、
    複数のチャネルのプレーンから、着目タイルのRAW画像データを生成する生成手段と、
    該生成手段で得た各タイルのRAW画像データを統合して1枚のベイヤ配列のRAW画像データを生成する統合手段と
    を有することを特徴とする画像復号装置。
  13. ベイヤ配列のRAW画像データを符号化する符号化装置の制御方法であって、
    符号化対象のRAW画像データを複数のタイルに分割する分割工程と、
    該分割工程により分割された前記複数のタイル毎に互いに異なる成分を持つ複数のチャネルのプレーンを生成する生成工程と、
    該生成工程で生成した各チャネルのプレーンに対して周波数変換し、複数の分解レベルのサブバンドデータを生成する変換工程と、
    前記RAW画像データの同じ領域に対応する複数のセグメントに分割するために、前記複数のサブバンドデータをそれぞれ同じ数のセグメントに分割し、セグメント毎に複数のサブバンドデータで共通となる第1の量子化パラメータを決定する制御工程と、
    前記制御工程により決定された第1の量子化パラメータに基づいて、前記変換工程で得たサブバンドデータをセグメント毎にそれぞれ量子化する量子化工程と、
    前記量子化により得られた量子化結果を、サブバンド毎に符号化する符号化工程と、
    を有し、
    前記生成工程は、
    着目タイルから前記複数のチャネルのプレーンを生成する際に、前記着目タイルと、前記着目タイルの隣接タイル内の前記着目タイルとの境界から所定の距離までのデータとから、前記複数のチャネルのプレーンを生成し、
    前記制御工程は、
    前記着目タイルのサブバンドデータを前記複数のセグメントに分割して前記第1の量子化パラメータを決定し、前記隣接タイルのサブバンドデータは、前記着目タイルとの境界を介して隣接するセグメントの量子化パラメータを適応する
    ことを特徴とする画像符号化装置の制御方法。
  14. 請求項1に記載の画像符号化装置で生成された符号化データを復号する画像復号装置の制御方法であって、
    符号化データから、復号しようとする着目タイル内の各セグメントの第1の量子化パラメータを復号する第1の復号工程と、
    前記符号化データから、前記着目タイルの各セグメントの量子化後のデータを復号する第2の復号工程と、
    前記第2の復号工程で得た量子化後のデータを前記第1の量子化パラメータに従って逆量子化する逆量子化工程と、
    該逆量子化工程で得た各セグメントで構成されるデータを周波数逆変換を行うことで、着目タイルの複数のチャネルのプレーンを生成する逆変換工程と、
    複数のチャネルのプレーンから、着目タイルのRAW画像データを生成する生成工程と、
    該生成工程で得た各タイルのRAW画像データを統合して1枚のベイヤ配列のRAW画像データを生成する統合工程と
    を有することを特徴とする画像復号装置の制御方法。
  15. コンピュータが読み込み実行することで、前記コンピュータに、請求項13に記載の画像符号化装置の制御方法の各工程を実行させるためのプログラム。
  16. コンピュータが読み込み実行することで、前記コンピュータに、請求項14に記載の画像復号装置の制御方法の各工程を実行させるためのプログラム。
JP2018114689A 2018-06-15 2018-06-15 画像符号化装置、画像復号装置、及び、それらの制御方法、並びに、プログラム Active JP7033013B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018114689A JP7033013B2 (ja) 2018-06-15 2018-06-15 画像符号化装置、画像復号装置、及び、それらの制御方法、並びに、プログラム
US16/430,824 US11140392B2 (en) 2018-06-15 2019-06-04 Image encoding apparatus, image decoding apparatus, control methods thereof, and non- transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018114689A JP7033013B2 (ja) 2018-06-15 2018-06-15 画像符号化装置、画像復号装置、及び、それらの制御方法、並びに、プログラム

Publications (3)

Publication Number Publication Date
JP2019220754A JP2019220754A (ja) 2019-12-26
JP2019220754A5 JP2019220754A5 (ja) 2021-07-26
JP7033013B2 true JP7033013B2 (ja) 2022-03-09

Family

ID=68839339

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018114689A Active JP7033013B2 (ja) 2018-06-15 2018-06-15 画像符号化装置、画像復号装置、及び、それらの制御方法、並びに、プログラム

Country Status (2)

Country Link
US (1) US11140392B2 (ja)
JP (1) JP7033013B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190311697A1 (en) * 2016-12-01 2019-10-10 Lg Electronics Inc. Image display device and image display system comprising same
CN115984296B (zh) * 2023-03-21 2023-06-13 译企科技(成都)有限公司 一种应用多注意力机制的医学图像分割方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005150846A (ja) 2003-11-11 2005-06-09 Canon Inc 画像処理方法及び装置
JP2013138361A (ja) 2011-12-28 2013-07-11 Canon Inc 画像符号化装置、画像符号化方法及びプログラム
JP2018033044A (ja) 2016-08-25 2018-03-01 キヤノン株式会社 画像符号化装置及びその制御方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154493A (en) 1998-05-21 2000-11-28 Intel Corporation Compression of color images based on a 2-dimensional discrete wavelet transform yielding a perceptually lossless image
US8363717B2 (en) 2005-05-17 2013-01-29 Canon Kabushiki Kaisha Image processing apparatus
SG188255A1 (en) * 2010-09-30 2013-04-30 Panasonic Corp Image decoding method, image coding method, image decoding apparatus, image coding apparatus, program, and integrated circuit
JP5947641B2 (ja) 2012-07-06 2016-07-06 キヤノン株式会社 動画像符号化装置及びその制御方法、コンピュータプログラム
JP6722995B2 (ja) 2015-10-23 2020-07-15 キヤノン株式会社 符号化方法及び符号化装置、撮像装置及びプログラム
US10356408B2 (en) * 2015-11-27 2019-07-16 Canon Kabushiki Kaisha Image encoding apparatus and method of controlling the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005150846A (ja) 2003-11-11 2005-06-09 Canon Inc 画像処理方法及び装置
JP2013138361A (ja) 2011-12-28 2013-07-11 Canon Inc 画像符号化装置、画像符号化方法及びプログラム
JP2018033044A (ja) 2016-08-25 2018-03-01 キヤノン株式会社 画像符号化装置及びその制御方法及びプログラム

Also Published As

Publication number Publication date
US20190387228A1 (en) 2019-12-19
US11140392B2 (en) 2021-10-05
JP2019220754A (ja) 2019-12-26

Similar Documents

Publication Publication Date Title
JP6986868B2 (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、プログラム
US20210136394A1 (en) Encoding apparatus and encoding method, and decoding apparatus and decoding method
JP2006014121A (ja) 画像符号化方法、画像符号化装置および撮像装置
JP6857973B2 (ja) 画像符号化装置及びその制御方法
JP7033013B2 (ja) 画像符号化装置、画像復号装置、及び、それらの制御方法、並びに、プログラム
US9531915B2 (en) Image encoding system and method thereof
JP6857970B2 (ja) 画像符号化装置及びその制御方法
JP4449400B2 (ja) 画像符号化装置及び方法、並びにプログラム及び記録媒体
JP7001383B2 (ja) 符号化装置、符号化方法、及び、プログラム
EP1322116A2 (en) Image compression device, method for image compression, and electronic camera
JP4315928B2 (ja) 画像処理装置および画像処理方法
JP6465570B2 (ja) 撮像装置、撮像装置の制御方法
JP6849359B2 (ja) 符号化装置、符号化装置の制御方法、及びプログラム
JP7321237B2 (ja) 画像符号化装置、画像符号化方法、プログラム
JP6632752B2 (ja) 画像符号化装置及び方法及びプログラム及び記憶媒体
JP6465571B2 (ja) 撮像装置、撮像装置の制御方法
JP6813991B2 (ja) 画像符号化装置及びその制御方法及びプログラム
JP6875817B2 (ja) 画像処理装置、撮像装置、画像処理方法及びプログラム
JP6775339B2 (ja) 画像符号化装置及びその制御方法
JP6806466B2 (ja) 画像符号化装置及びその制御方法
JP2001231009A (ja) 画像データ格納装置および方法
JP7465073B2 (ja) 画像符号化装置及びその制御方法及びプログラム
JP6497981B2 (ja) 画像符号化装置及びその制御方法
JP2021069059A (ja) 画像処理装置および画像処理方法
JP2008124969A (ja) 画像可逆符号化方法及び画像可逆符号化装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180620

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

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210528

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220114

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: 20220128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220225

R151 Written notification of patent or utility model registration

Ref document number: 7033013

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151