JP2021078008A - 画像処理装置、画像処理方法及び撮像装置 - Google Patents
画像処理装置、画像処理方法及び撮像装置 Download PDFInfo
- Publication number
- JP2021078008A JP2021078008A JP2019203507A JP2019203507A JP2021078008A JP 2021078008 A JP2021078008 A JP 2021078008A JP 2019203507 A JP2019203507 A JP 2019203507A JP 2019203507 A JP2019203507 A JP 2019203507A JP 2021078008 A JP2021078008 A JP 2021078008A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- signal value
- interest
- coding
- pixels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Transforming Light Signals Into Electric Signals (AREA)
- Studio Devices (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】イメージセンサを用いて取得される画像データを圧縮して取扱う装置において、欠陥画素に起因する圧縮効率の低下を抑制するための、改善された仕組みを提供すること。【解決手段】イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する記憶手段と、前記イメージセンサにより生成される前記複数の画素の信号値を含む画像データを符号化して、符号化画像データを生成する符号化手段と、を備え、前記符号化手段は、注目画素が前記欠陥画素情報により特定される欠陥画素ではない正常画素である場合に、前記注目画素に先行する先行画素が欠陥画素であるか否かに依存して、前記注目画素の信号値を差分符号化する第1の符号化モード、又は前記注目画素の信号値を差分符号化を行うことなく符号化する第2の符号化モードのいずれかで符号化する、画像処理装置が提供される。対応する方法及び撮像装置もまた提供される。【選択図】図2
Description
本開示は、画像処理装置、画像処理方法及び撮像装置に関する。
近年、デジタルビデオカメラ及びデジタルスチルカメラといった撮像装置により扱われる画像データのデータ量は、高解像度化、高フレームレート化、及び連写されるコマ数の増大といった要因により、顕著に増加している。結果的に、撮像装置のメモリ及びバスインタフェースは、高速化及び容量の拡大といった要求に対応せざるを得ず、装置の製造コストは年々高くなっている。
メモリ及びバスインタフェースが扱うべきデータ量を抑制するために、特許文献1は、装置内で取扱われる画像データを、予測符号化及び量子化の組合せで圧縮符号化する手法を提案している。
しかし、撮像装置のイメージセンサにおいて生成される画像データ(RAWデータともいう)は、画素の構成要素の欠陥に起因して、極端な信号値を一部の画素において示すことがある。こうした信号値は、予測符号化の予測精度を撹乱し、圧縮効率を低下させる。特許文献2は、イメージセンサ内で、画像信号の信号値に基づいて動的に検出される欠陥画素について、信号値をメディアンフィルタ等で補正した上で、画像信号を圧縮符号化する手法を提案している。
しかしながら、特許文献2により提案された手法では、装置内のエンコーダの処理が複雑であり、処理のリアルタイム性を十分に確保することが難しく、実装コストもまた大きい。
そこで、本開示は、イメージセンサを用いて取得される画像データを圧縮して取扱う装置において、イメージセンサが欠陥画素を有する場合の圧縮効率の低下を抑制するための改善された仕組みを提供することを目的の1つとする。
ある観点によれば、イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する記憶手段と、前記イメージセンサにより生成される前記複数の画素の信号値を含む画像データを符号化して、符号化画像データを生成する符号化手段と、を備え、前記符号化手段は、注目画素が前記欠陥画素情報により特定される欠陥画素ではない正常画素である場合に、前記注目画素に先行する先行画素が欠陥画素であるか否かに依存して、前記注目画素の信号値を差分符号化する第1の符号化モード、又は前記注目画素の信号値を差分符号化を行うことなく符号化する第2の符号化モードのいずれかで符号化する、画像処理装置が提供される。
他の観点によれば、イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する記憶手段と、前記イメージセンサにより生成される前記複数の画素の信号値を含む画像データを符号化して、符号化画像データを生成する符号化手段と、を備え、前記符号化手段は、注目画素の前記信号値を量子化して、前記注目画素の量子化信号値を生成する量子化手段と、前記注目画素の前記量子化信号値から前記注目画素の直前の先行画素の量子化信号値を減算して、前記注目画素の差分量子化信号値を生成する減算手段と、前記注目画素の前記差分量子化信号値を可変長符号化して、前記注目画素の差分符号化信号値を生成する可変長符号化手段と、前記注目画素が前記欠陥画素情報により特定される欠陥画素である場合に、前記注目画素の前記信号値又は前記量子化信号値を、前記注目画素の直前の前記先行画素の前記信号値又は前記量子化信号値に置換する置換手段と、を含む、画像処理装置が提供される。
本開示によれば、イメージセンサを用いて取得される画像データを圧縮して取扱う装置における、イメージセンサが欠陥画素を有する場合の圧縮効率の低下を抑制するための、改善された仕組みを提供することができる。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
<<1.概要>>
本開示に係る技術は、例えばCMOS又はCCDといったイメージセンサにより生成される画像データを処理するための回路を有する画像処理装置一般に適用され得る。そうした画像処理装置の例は、イメージセンサを具備するデジタルスチルカメラ、デジタルビデオカメラ、携帯電話及びスマートフォンといった、撮像装置及び情報処理装置、並びにそれら装置に搭載される画像処理エンジンを含む。イメージセンサは複数の画素を有し、各画素は、例えば、光を集めるマイクロレンズと、集められた光のうち特定の色成分のみを通過させるカラーフィルタと、W光を電気信号に変換する撮像素子(例えば、フォトダイオード)とを含む。各画素から読出される電気信号のレベル(即ち、信号値)は、当該画素に割当てられた色の光の強さを表す。イメージセンサから読出された直後の画像データを、RAWデータともいう。
本開示に係る技術は、例えばCMOS又はCCDといったイメージセンサにより生成される画像データを処理するための回路を有する画像処理装置一般に適用され得る。そうした画像処理装置の例は、イメージセンサを具備するデジタルスチルカメラ、デジタルビデオカメラ、携帯電話及びスマートフォンといった、撮像装置及び情報処理装置、並びにそれら装置に搭載される画像処理エンジンを含む。イメージセンサは複数の画素を有し、各画素は、例えば、光を集めるマイクロレンズと、集められた光のうち特定の色成分のみを通過させるカラーフィルタと、W光を電気信号に変換する撮像素子(例えば、フォトダイオード)とを含む。各画素から読出される電気信号のレベル(即ち、信号値)は、当該画素に割当てられた色の光の強さを表す。イメージセンサから読出された直後の画像データを、RAWデータともいう。
イメージセンサにおいて2次元的に配列される複数の画素への色の割当ては、多くの場合、ベイヤパターンに従う。ベイヤパターンでは、赤色(R)と緑色(G)が交互に配列されたライン、及び緑色(G)と青色(B)が交互に配列されたラインが、それらラインと直交する方向へ交互に配列される。よって、ベイヤパターンのRAWデータでは、緑色の画素の割合が、赤色の画素の割合及び青色の画素の割合の2倍である。イメージセンサの後段の画像処理エンジンは、例えば光学的歪み補正、シェーディング補正、デベイヤ(デモザイクともいう)、カラーマトリクス変換(例えば、RGBからYUV)及びノイズ削減といった様々な画像処理を行う。
イメージセンサにより生成される画像データのデータ量は、近年、高解像度化、高フレームレート化、及び連写されるコマ数の増大といった要因により、顕著に増加している。増加した量の画像データをそのまま扱おうとすると、装置部品の高速化及び容量拡大が避けられないが、その場合には装置の製造コストが過大となる。そこで、画像データを装置内で伝送し又はメモリへ格納する際に、画像データを圧縮符号化することが有益である。圧縮符号化によってデータ量が削減されれば、装置部品の高速化及び容量拡大の要求は緩和され得る。但し、イメージセンサにより生成される画像データは、上述した画素の構成要素の欠陥に起因して、極端な信号値を一部の画素において示すことがある。極端な信号値とは、例えば、レンジの上限値又は下限値であり得る。本明細書では、このように極端な信号値を出力する異常な画素を欠陥画素、欠陥画素ではない正常な画素を正常画素という。入射光に関わらずレンジの上限値(又はそれに近い値)を出力する欠陥画素を、白キズともいう。また、入射光に関わらずレンジの下限値(又はそれに近い値)を出力する欠陥画素を、黒キズともいう。
欠陥画素が出力する極端な信号値は、とりわけ差分符号化(又は予測符号化)技術を活用した圧縮符号化の圧縮効率を低下させる。一方、製造上の不可避的な誤差のために、欠陥画素の発生を完全に排除することは困難である。これまでに、欠陥画素が出力する信号値を補正した上で画像信号を圧縮符号化する手法は提案されているが、過去に提案された手法は、処理が複雑であるために、処理のリアルタイム性の低下や実装コストの増大をもたらすことがあった。
そこで、本開示は、画像データを内部で圧縮して取扱う装置において、イメージセンサが欠陥画素を有する場合の圧縮効率の低下を抑制するための改善された仕組みを提案する。次節より、そうした仕組みのいくつかの実施形態について具体的に説明する。
<<2.第1の実施形態>>
<2−1.基本的な構成>
第1の実施形態では、イメージセンサから取得される画素の各々が欠陥画素ではない正常画素である場合に、当該画素に先行する先行画素が欠陥画素であるか否かに依存して異なる符号化モードを、当該画素の信号値の符号化のために利用する。第1の符号化モードは、信号値を差分符号化するモードであり、第2の符号化モードは、信号値を差分符号化を行うことなく符号化するモードである。ある画素が欠陥画素である場合には、当該画素の信号値は符号化されない。対応する形で、復号の際には、符号化画像データ内の符号値を差分復号する第1の復号モード、又は符号値を差分復号することなく復号する第2の復号モードが選択的に利用される。本明細書では、説明の簡明さのために、第1の符号化モード及び第1の復号モードをDPCM(Differential PCM)モード、第2の符号化モード及び第2の復号モードをPCM(Pulse Code Modulation)モードという。
<2−1.基本的な構成>
第1の実施形態では、イメージセンサから取得される画素の各々が欠陥画素ではない正常画素である場合に、当該画素に先行する先行画素が欠陥画素であるか否かに依存して異なる符号化モードを、当該画素の信号値の符号化のために利用する。第1の符号化モードは、信号値を差分符号化するモードであり、第2の符号化モードは、信号値を差分符号化を行うことなく符号化するモードである。ある画素が欠陥画素である場合には、当該画素の信号値は符号化されない。対応する形で、復号の際には、符号化画像データ内の符号値を差分復号する第1の復号モード、又は符号値を差分復号することなく復号する第2の復号モードが選択的に利用される。本明細書では、説明の簡明さのために、第1の符号化モード及び第1の復号モードをDPCM(Differential PCM)モード、第2の符号化モード及び第2の復号モードをPCM(Pulse Code Modulation)モードという。
図1は、第1の実施形態に係る画像処理装置100の基本的な構成の一例を示すブロック図である。ここでは、画像データの圧縮符号化に関係しない装置の構成要素は、説明を曖昧にしないために省略されている。図1を参照すると、画像処理装置100は、撮像部110及び画像処理部120を備える。
撮像部110は、光学系111及びイメージセンサ112を含む。光学系111は、実空間の光をイメージセンサ112の撮像面に向けて案内する少なくとも1つのレンズを含む。イメージセンサ112は、例えばCMOS又はCCDといった、いかなる種類のイメージセンサであってもよい。イメージセンサ112は、複数の画素を有し、各画素の撮像素子において、カラーフィルタを通過した特定の色成分の光が光電変換によって電気信号へ変換される。イメージセンサ112は、これら複数の画素の信号値を含む画像データを、画像処理部120へ出力する。イメージセンサ112のカラーフィルタは、例えばベイヤパターンで配置され、上記複数の画素の各々が、ベイヤパターンの3つの色の1つに対応する。なお、イメージセンサ112のカラーフィルタの配置は、複数の色の配列を予め定義した、ベイヤパターン以外のパターンに従ってもよい。
画像処理部120は、撮像部110から入力される画像データについて様々な画像処理を行うための回路(エンジンともいう)である。撮像部110と画像処理部120との間の接続インタフェースは、例えば、MIPI−CSI(Camera Serial Interface)又はLVDS(Low Voltage Differential Signaling)であってよい。但し、十分な転送性能を有する他の種類のカメラ用の高速インタフェースが利用されてもよい。画像処理部120は、符号化部121、フレームメモリ122、復号部123及び欠陥画素情報メモリ124を含む。画像処理部120のこれら構成要素は、ハードウェア、ソフトウェア、及びハードウェアとソフトウェアとの組合せのいずれによって実装されてもよい。
符号化部121は、撮像部110から入力される画像データを、画像処理装置100を制御するコントローラ(図示せず。例えば、CPU)から指示される制御パラメータ(例えば、圧縮率)に従って圧縮符号化して、符号化画像データを生成する。撮像部110から入力される画像データは、イメージセンサ112が有する複数の画素にそれぞれ対応する信号値を含むデータである。符号化部121は、後述するように、符号化画像データといくつかの符号化パラメータとを含む符号化データを、フレームメモリ122へ書き込む。
フレームメモリ122は、例えばDRAMといった大容量のメモリであってよく、符号化部121により書込まれる符号化データを記憶する。フレームメモリ122に書込まれた符号化データは、復号部123により読出される。
復号部123は、フレームメモリ122から符号化データを読出し、読出した符号化データに含まれる符号化画像データを復号して、元の画像データを復元する。復号部123は、復元した画像データを、再度フレームメモリ122へ書込んでもよく、又は他の画像処理用の回路(図示せず)へ出力してもよい。例えば、画像処理部120は、復元された画像データについて、光学的歪み補正、シェーディング補正、デベイヤ、カラーマトリクス変換及びノイズ削減のうちの1つ以上を実行する処理回路を含み得る。
欠陥画素情報メモリ124は、例えばフラッシュメモリなどの不揮発性のメモリであってよく、イメージセンサ112が有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する。欠陥画素は、例えば、イメージセンサ112の製造工程において発生した欠陥(例えば、トランジスタの製造不良)に起因して、有効な画素値を出力不能な画素(例えば、白キズ又は黒キズ)であり得る。欠陥画素は、画像処理装置100の工場出荷時の検査工程において、検査用の欠陥検出装置により、全画素のスキャンを通じて個々に検出される。そして、検出された欠陥画素の画素位置を示す欠陥画素情報が生成され、画像処理装置100の欠陥画素情報メモリ124に欠陥画素情報が書込まれる。欠陥画素情報は、例えば、イメージセンサ112の画素の画素位置(2次元のアドレス)の各々に、当該位置の画素が欠陥画素であるか否かを示すフラグを関連付けた情報であり得る。
なお、図1には、画像処理部120が撮像部110とは物理的に別個のユニット(例えば、LSI)である例を示しているが、画像処理部120は、撮像部110と統合されてもよい。例えば、画像処理部120は、イメージセンサ112と同一のチップ上に存在してもよい。
<2−2.エンコーダの詳細な構成>
(1)各部の説明
図2は、図1に示した符号化部121の詳細な構成の一例を示すブロック図である。図2を参照すると、符号化部121は、量子化部201、遅延部202、減算部203、可変長符号化部204、切替部205、切替制御部206及び生成部207を含む。
(1)各部の説明
図2は、図1に示した符号化部121の詳細な構成の一例を示すブロック図である。図2を参照すると、符号化部121は、量子化部201、遅延部202、減算部203、可変長符号化部204、切替部205、切替制御部206及び生成部207を含む。
符号化部121へ入力される画像データは、イメージセンサ112の複数の画素から順次読出される信号値を含む。本実施形態において、符号化部121は、これら信号値を、一定の数の画素を含む画素ブロックの単位で符号化するものとする。とりわけ、この画素ブロックをN個(Nは整数)の画素が1次元に並ぶ1×Nのブロックとすることで、符号化処理の複雑さを低減し、画像処理部120の実装を単純化することができる。Nは、限定ではないものの、例えば8、16又は32であってよい。ベイヤパターンの場合、1×Nの画素ブロックの画像データは、R及びG又はG及びBという、2つの色成分の信号値が交互に並んだ1次元配列となる。
量子化部201は、量子パラメータQPにより示される量子化ステップで、N個の画素の各々の信号値を量子化して、量子化信号値を生成する。そして、量子化部201は、生成した量子化信号値を遅延部202、減算部203及び切替部205へ出力する。一例として、量子パラメータQPは、コントローラ(図示せず)により指定され、可変的な値をとる。典型的には、QPがより大きいほど量子化ステップはより大きく、よって信号値はより粗く量子化される。入力信号値をD、量子化信号値をDqとすると、量子化信号値Dqは、例えば、D及びQPの関数として次の式(1)ように導出され得る:
Dq=D/(1<<QP) (1)
この場合、QPが1増えると量子化ステップは2倍となり、信号値の有意ビットが量子化により1ビット減少する。QPの値ごとの信号値の変化は、例えば次の通りである:
・QP=0の場合、量子化ステップは1であり、量子化信号値Dqは入力信号値Dに等しい。有意ビットの数は変化しない。
・QP=1の場合、量子化ステップは2であり、量子化信号値Dqは入力信号値Dを2で除算した商である。有意ビットの数は1減少する。
・QP=2の場合、量子化ステップは4であり、量子化信号値Dqは入力信号値Dを4で除算した商である。有意ビットの数は2減少する。
・QP=3の場合、量子化ステップは8であり、量子化信号値Dqは入力信号値Dを8で除算した商である。有意ビットの数は3減少する。
なお、量子化処理の形式は、式(1)に限定されない。量子化部201は、非線形量子化を行ってもよい。また、量子パラメータ及び量子化ステップは、固定的な値であってもよい。
Dq=D/(1<<QP) (1)
この場合、QPが1増えると量子化ステップは2倍となり、信号値の有意ビットが量子化により1ビット減少する。QPの値ごとの信号値の変化は、例えば次の通りである:
・QP=0の場合、量子化ステップは1であり、量子化信号値Dqは入力信号値Dに等しい。有意ビットの数は変化しない。
・QP=1の場合、量子化ステップは2であり、量子化信号値Dqは入力信号値Dを2で除算した商である。有意ビットの数は1減少する。
・QP=2の場合、量子化ステップは4であり、量子化信号値Dqは入力信号値Dを4で除算した商である。有意ビットの数は2減少する。
・QP=3の場合、量子化ステップは8であり、量子化信号値Dqは入力信号値Dを8で除算した商である。有意ビットの数は3減少する。
なお、量子化処理の形式は、式(1)に限定されない。量子化部201は、非線形量子化を行ってもよい。また、量子パラメータ及び量子化ステップは、固定的な値であってもよい。
量子化部201は、後述する切替制御部206による制御に従って、画素ブロックの同色の画素のうちの先頭の画素(ベイヤ配列においては、各色の先頭の画素)が欠陥画素である場合に、当該画素の信号値を所定の値に設定した上で量子化してもよい。所定の値とは、例えば、信号値のレンジの中央の値であってもよく、又は前回符号化した画素ブロックの最後の入力信号値であってもよい。このような信号値の設定によって、後続する画素の差分符号化のためにある程度妥当であると期待される予測値が提供される。
遅延部202は、量子化部201から入力される各画素の量子化信号値を、後続する画素の信号値の差分符号化のための予測値となるように遅延させ、遅延されたタイミングで予測値を減算部203へ出力する。例えば、遅延部202は、ベイヤパターンを前提として、各量子化信号値を2画素分の入力間隔だけ遅延させる。すると、量子化部201から減算部203へある色成分の注目画素の量子化信号値が出力されるタイミングで、遅延部202から減算部203へ同じ色成分の直前の先行画素の量子化信号値を出力することができる。
減算部203は、注目画素の量子化信号値から当該注目画素に先行する先行画素の量子化信号値を減算して、注目画素の差分量子化信号値を生成する。そして、減算部203は、生成した差分量子化信号値を可変長符号化部204へ出力する。ここでの先行画素とは、注目画素と同色が割当てられた先行画素であってよい。即ち、減算部203による差分演算において注目画素の量子化信号値から減算される値(予測符号化における予測値)は、注目画素と同色の先行画素の量子化信号値である。ベイヤパターンの配列を前提とすると、注目画素の偶数個前の画素が注目画素と同色であり、注目画素の2つ前の画素が、注目画素と同色の直前の先行画素である。差分量子化信号値は、正、ゼロ又は負の整数となる。画像内で画素値の変動の少ない平坦領域の差分量子化信号値の多くはゼロ又はその近傍の値を示し、非平坦領域(例えば、被写体のエッジ部分)の差分量子化信号値はより大きい絶対値を示し得る。差分量子化信号値は、一般に、ゼロを中心としたラプラス分布の特性を有する。
可変長符号化部204は、減算部203から入力される注目画素の差分量子化信号値を所定の可変長符号化方式で符号化して、差分符号化信号値を生成する。ここでの所定の可変長符号化方式とは、例えばハフマン符号又はゴロム符号といった、いかなる種類の方式であってもよい。典型的には、入力値ゼロに対して最も短い符号語が割当てられ、絶対値のより大きい入力値に対してより長い符号語が割当てられる。
切替部205には、上述した画素ブロック内の各画素について、量子化部201により生成された量子化信号値、及び可変長符号化部204により生成された差分符号化信号値が入力される。これ以降の説明では、差分符号化されていない前者の信号値をPCM値、差分符号化された後者の信号値をDPCM値ともいう。PCM値は、量子化後の信号値をそのまま符号値として示すビットシーケンスであり得るのに対し、DPCM値は、差分符号化信号値に対し可変長符号化部204により割当てられた符号語を示すビットシーケンスであり得る。切替部205は、切替制御部206による制御に従って、各画素についてPCM値及びDPCM値のうちの一方の符号値を選択し、選択した値を生成部207へ出力する。
切替制御部206は、欠陥画素情報メモリ124から読出される欠陥画素情報を用いて、画素ブロック内の各画素について、信号値の符号化をスキップすべきか、並びにPCM値及びDPCM値のいずれを符号値として使用すべきかを制御する。本実施形態において、切替制御部206は、注目画素が欠陥画素情報により特定される欠陥画素である場合に、注目画素の符号値を切替部205から生成部207へ出力させない(即ち、信号値の符号化をスキップする)。また、切替制御部206は、注目画素が正常画素である場合に、注目画素に先行する先行画素が欠陥画素であるか否かに依存して、注目画素の信号値の符号化のためのモードをDPCMモードとPCMモードとの間で切替える。より具体的には、一例として、切替制御部206は、注目画素が同色の正常画素の直後に続く正常画素である場合に、注目画素についてDPCM値を切替部205に選択させる。一方、切替制御部206は、注目画素が同色の欠陥画素の直後に続く正常画素である場合に、注目画素についてPCM値を切替部205に選択させる。なお、切替制御部206は、注目画素が同色の画素のうちで画素ブロックの先頭に位置する場合には、注目画素についてPCM値を切替部205に選択させる。
図3は、欠陥画素情報に基づく符号値の切替えの制御の一例について説明するための説明図である。図3の例において、1つの画素ブロック内の画素数Nは16に等しく、画素番号0〜15をそれぞれ付与された16個の画素が、符号化順で左から右へ示されている。図中の丸で囲んだ文字“G”は緑色の画素であり、丸で囲んだ文字“R”は赤色の画素である。また、×印が重ねられた画素は、欠陥画素情報により特定される欠陥画素である(それ以外の画素は正常画素である)。図3(A)の例では、16個の画素の全てが正常画素である。図3(B)の例では、16個の画素のうち番号7の画素327のみが欠陥画素である。図3(C)の例では、16個の画素のうち3つの画素336、337及び338が欠陥画素である。
3つの例のいずれにおいても、切替制御部206は、同色の画素のうち画素ブロックの先頭に位置する画素については、PCM値を切替部205に選択させる。例えば、図3(A)の画素310は、緑色の画素のうちで画素ブロックの先頭に位置するため、画素310の符号値としてPCM値が選択される。同様に、画素311は、赤色の画素のうちで画素ブロックの先頭に位置するため、画素311の符号値としてPCM値が選択される。
図3(A)の8番目の画素318に注目すると、注目画素318は緑色であり、注目画素318及び注目画素318と同色の先行画素316は共に正常画素である。よって、切替制御部206は、注目画素318について、先行画素316の量子化信号値を予測値として用いて差分符号化されたDPCM値を切替部205に選択させる。同様に、図3(A)の9番目の画素319に注目すると、注目画素319は赤色であり、注目画素319及び注目画素319と同色の先行画素317は共に正常画素である。よって、切替制御部206は、注目画素319について、先行画素317の量子化信号値を予測値として用いて差分符号化されたDPCM値を切替部205に選択させる。
図3(B)の8番目の画素328に注目すると、注目画素328は緑色であり、注目画素328及び注目画素328と同色の先行画素326は共に正常画素である。よって、切替制御部206は、注目画素328について、先行画素326の量子化信号値を予測値として用いて差分符号化されたDPCM値を切替部205に選択させる。一方、図3(B)の9番目の画素329に注目すると、注目画素329は緑色であり、注目画素329は正常画素であるが、注目画素329と同色の先行画素327は欠陥画素である。よって、切替制御部206は、注目画素329について、PCM値を切替部205に選択させる。切替制御部206は、欠陥画素327については、DPCM値もPCM値も切替部205から生成部207へ出力させない(又は出力される値を生成部207に無視させてもよい)。
図3(C)の9番目の画素339に注目すると、注目画素339は赤色であり、注目画素339は正常画素であるが、注目画素339と同色の先行画素337は欠陥画素である。よって、切替制御部206は、注目画素339について、PCM値を切替部205に選択させる。同様に、図3(C)の10番目の画素340に注目すると、注目画素340は緑色であり、注目画素340は正常画素であるが、注目画素340と同色の先行画素338は欠陥画素である。よって、切替制御部206は、注目画素340について、PCM値を切替部205に選択させる。切替制御部206は、欠陥画素336、337及び338については、DPCM値もPCM値も切替部205から生成部207へ出力させない(又は出力される値を生成部207に無視させてもよい)。
なお、図3には、ベイヤ配列のうちの緑色画素及び赤色画素が並ぶラインの例を示したが、青色画素及び緑色画素が並ぶラインについても同様の切替制御が行われ得る。切替制御部206は、このような切替制御に従って各画素についてPCM値及びDPCM値のうちのいずれの符号値が選択されるか(及び符号化をスキップをするか)を示す信号を生成部207へ出力する。
生成部207は、画素ブロック内の各画素について、切替制御部206による制御に従って、切替部205から選択的に入力されるPCM値又はDPCM値を使用して、符号化画像データを生成する。具体的には、本実施形態において、生成部207は、注目画素が欠陥画素である場合に、注目画素の信号値の処理をスキップする。また、生成部207は、注目画素が正常画素である場合において、切替制御部206によりDPCMモードが選択されたときは、切替部205から入力されるDPCM値を符号化画像データに含める。また、生成部207は、注目画素が正常画素である場合において、切替制御部206によりPCMモードが選択されたときは、切替部205から入力されるPCM値を符号化画像データに含める。なお、生成部207は、注目画素が同色の画素のうちで画素ブロックの先頭に位置する場合には、注目画素が欠陥画素であっても、注目画素についてPCM値を符号化画像データに含める。
さらに、生成部207は、符号化画像データにいくつかの符号化パラメータを関連付けて、符号化データを生成する。ここでの関連付けは、例えば、符号化画像データに符号化パラメータを多重化すること、及び符号化画像データのアドレスとの間で参照関係を有する(同一の又は異なるメモリの)アドレスに符号化パラメータを書込むことを含み得る。関連付けられる符号化パラメータは、例えば、次のうちの1つ以上を含み得る:
・量子化パラメータ(QP):当該画素ブロックについて量子化部201により利用された量子化ステップを示す
・全画素正常フラグ(all_dpcm_flg):当該画素ブロックのN個の画素が全て正常画素であるか否かを示す。本フラグは、N個の画素が少なくとも1つの欠陥画素を含むか否かを示すフラグ、又は先頭画素以外の画素が全て差分符号化されているかを示すフラグであるとも解釈され得る
・符号化方式選択フラグ(pcm_dpcm_sel_flag):当該画素ブロックが少なくとも1つの欠陥画素を含むことを全画素正常フラグが示す場合に、各画素についてPCMモード及びDPCMモードのいずれが選択されたのかを示す。必ずPCMモードが選択される先頭の画素を除く画素の各々について、本フラグが生成され得る
・量子化パラメータ(QP):当該画素ブロックについて量子化部201により利用された量子化ステップを示す
・全画素正常フラグ(all_dpcm_flg):当該画素ブロックのN個の画素が全て正常画素であるか否かを示す。本フラグは、N個の画素が少なくとも1つの欠陥画素を含むか否かを示すフラグ、又は先頭画素以外の画素が全て差分符号化されているかを示すフラグであるとも解釈され得る
・符号化方式選択フラグ(pcm_dpcm_sel_flag):当該画素ブロックが少なくとも1つの欠陥画素を含むことを全画素正常フラグが示す場合に、各画素についてPCMモード及びDPCMモードのいずれが選択されたのかを示す。必ずPCMモードが選択される先頭の画素を除く画素の各々について、本フラグが生成され得る
生成部207により生成される符号化データのデータフォーマットについて、後にさらに説明する。生成部207は、画像データを構成する複数の画素ブロックについて、符号化データを反復的に生成し、生成した符号化データをフレームメモリ122に順次格納する。
(2)符号化データのデータフォーマット
図4は、生成部207により生成される符号化データのデータフォーマットの一例について説明するための説明図である。図4(A)に示したデータフォーマット410は、画素ブロック内に欠陥画素が存在しない場合に生成され得る符号化データのフォーマットである。一方、図4(B)に示したデータフォーマット420は、画素ブロック内に欠陥画素が存在する場合に生成され得る符号化データのフォーマットである。各フォーマットを構成する矩形の各々は1つのデータフィールドを表し、矩形に付記された数字は当該フィールドの長さを、“v”という文字は当該フィールドの長さが可変であることを表す。ここでは、1つの画素ブロックが16個の画素からなる(即ち、N=16)ものとする。
図4は、生成部207により生成される符号化データのデータフォーマットの一例について説明するための説明図である。図4(A)に示したデータフォーマット410は、画素ブロック内に欠陥画素が存在しない場合に生成され得る符号化データのフォーマットである。一方、図4(B)に示したデータフォーマット420は、画素ブロック内に欠陥画素が存在する場合に生成され得る符号化データのフォーマットである。各フォーマットを構成する矩形の各々は1つのデータフィールドを表し、矩形に付記された数字は当該フィールドの長さを、“v”という文字は当該フィールドの長さが可変であることを表す。ここでは、1つの画素ブロックが16個の画素からなる(即ち、N=16)ものとする。
データフォーマット410及び420の冒頭には、共に3ビットの量子化パラメータ(QP)が配置される。量子化パラメータを3ビットとした場合、量子化パラメータは0〜7までの値をとることができ、例えば信号値のビット深度が12であれば最大の圧縮率は7/12となる。なお、量子化パラメータのビット数及び値は、上述した例には限定されない。例えば、量子化パラメータのビット数は可変であってもよい。
データフォーマット410及び420の双方において、量子化パラメータ(QP)の次に全画素正常フラグ(all_dpcm_flg)が配置される。全画素正常フラグが真(“1”)を示す場合、当該画素ブロックは欠陥画素を含まない。一方、全画素正常フラグが偽(“0”)を示す場合、当該画素ブロックは少なくとも1つの欠陥画素を含む。
画素ブロックが欠陥画素を含まない場合、ブロック先頭の(各色の)画素以外の画素の信号値は、全てDPCMモードで符号化される。この場合の画素ブロックの符号化データの全体的な構成は、データフォーマット410の通りである。即ち、真を示す全画素正常フラグに続いて、N個の画素の可変長の圧縮画素データが符号化順に配置される。さらに、符号化データの全体の長さを一定とするために、圧縮画素データの後にスタッフィングデータが追加される。このようにスタッフィングデータを追加して符号化データの長さをブロック単位で一定にすることで、メモリからのブロック単位の符号化データのランダムな読出し(画像の途中の任意の位置のデータへの柔軟なアクセス)が可能となる。例えば、N=16、信号値のビット深度が10、圧縮率が8/10である場合、符号化データのブロック長は、10×16×8/10=128ビットであってよい。この場合に、符号化パラメータ及び圧縮画素データの合計ビットサイズが100ビットであれば、スタッフィングデータのビットサイズは128−100=28ビットであり得る。
画素ブロックが欠陥画素を含む場合、ブロック内の1つ以上の画素の信号値が、DPCMモードの代わりにPCMモードで符号化される。この場合の画素ブロックの符号化データの全体的な構成は、データフォーマット420の通りである。即ち、偽を示す全画素正常フラグに続いて、K個(KはN以下の整数。図中ではK=15)の符号化方式選択フラグ(pcm_dpcm_sel_flag)が配置される。ここでは、1画素目の信号値が必ずPCMモードで符号化されるとの想定の下で、1画素目の符号化方式選択フラグが省略されている。各符号化方式選択フラグは、当該画素ブロックの対応する画素位置の画素についてPCMモード及びDPCMモードのいずれが選択されたかを示す。ある符号化方式選択フラグが真(“1”)を示す場合、対応する画素についてPCM値が後続の圧縮画素データに含められる。ある符号化方式選択フラグが偽(“0”)を示す場合、対応する画素についてDPCM値が後続の圧縮画素データに含められる。これらK個の符号化方式選択フラグに続いて、N個の画素の可変長の符号値(PCM値又はDPCM値)が符号化順に圧縮画素データとして配置される。さらに、符号化データの全体の長さを一定とするために、圧縮画素データの後にスタッフィングデータが追加される。
(3)変形例
ここまで、画素ブロック内の各正常画素について、同色の直前の先行画素が正常画素である場合にDPCMモードを使用し、同色の直前の先行画素が欠陥画素である場合にPCMモードを使用する例を説明した。このように直前の正常な先行画素のみを差分符号化の基礎とするケースでは、差分符号化の十分な予測精度が確保され、予測精度の低下に起因する圧縮効率の低下が回避される。一方で、同色の直前の先行画素が欠陥画素である場合に、より離れた同色の先行画素を差分符号化の基礎とすることが可能とされてもよい。ある変形例において、切替制御部206は、例えば、注目画素に先行する同色の連続する欠陥画素の数を、色ごとに計数する。以下の説明では、計数されるこの数を、連続欠陥画素数Ncontという。図3(B)の画素328、329及び図3(C)の画素340に注目すると、連続欠陥画素数Ncontは、それぞれゼロ、1及び2に等しい。この連続欠陥画素数Ncontが所定の閾値Nth未満である場合、注目画素と最も近い同色の正常な先行画素との間の距離が小さく、当該先行画素の信号値に基づく差分符号化が圧縮効率の大きな低下を招かない可能性が高い。そこで、切替制御部206は、連続欠陥画素数Ncontが閾値Nthに達しない場合に、注目画素について、最も近い同色の正常な先行画素の量子化信号値に基づくDPCM値を切替部205に選択させてもよい。例えば、Nth=2のケースでは、図3(B)の例において、注目画素329の符号化の際に、最も近い同色の正常な先行画素325の信号値に基づく差分符号化が許容され得る。切替制御部206は、連続欠陥画素数Ncontが閾値Nthに達した場合、注目画素について、PCM値を切替部205に選択させる。生成部207は、このように選択されたDPCM値又はPCM値を選択的に使用して、符号化画像データを生成する。こうした変形例によれば、欠陥画素の直後でも複数画素をまたいだ差分符号化が部分的に行われ得ることから、画像信号の空間的相関を活用した圧縮効率の向上が期待され得る。なお、上で説明した同色の直前の先行画素に依存した符号化モードの切替えの例は、閾値Nthが1に等しい特殊ケースに該当し得る。閾値Nthは、予め固定的に設定されてもよく、又はコントローラにより可変的に指定されてもよい。閾値Nthを可変値とすれば、差分符号化のための予測を許容する画素間の距離を適応的に調整することが可能となる。
ここまで、画素ブロック内の各正常画素について、同色の直前の先行画素が正常画素である場合にDPCMモードを使用し、同色の直前の先行画素が欠陥画素である場合にPCMモードを使用する例を説明した。このように直前の正常な先行画素のみを差分符号化の基礎とするケースでは、差分符号化の十分な予測精度が確保され、予測精度の低下に起因する圧縮効率の低下が回避される。一方で、同色の直前の先行画素が欠陥画素である場合に、より離れた同色の先行画素を差分符号化の基礎とすることが可能とされてもよい。ある変形例において、切替制御部206は、例えば、注目画素に先行する同色の連続する欠陥画素の数を、色ごとに計数する。以下の説明では、計数されるこの数を、連続欠陥画素数Ncontという。図3(B)の画素328、329及び図3(C)の画素340に注目すると、連続欠陥画素数Ncontは、それぞれゼロ、1及び2に等しい。この連続欠陥画素数Ncontが所定の閾値Nth未満である場合、注目画素と最も近い同色の正常な先行画素との間の距離が小さく、当該先行画素の信号値に基づく差分符号化が圧縮効率の大きな低下を招かない可能性が高い。そこで、切替制御部206は、連続欠陥画素数Ncontが閾値Nthに達しない場合に、注目画素について、最も近い同色の正常な先行画素の量子化信号値に基づくDPCM値を切替部205に選択させてもよい。例えば、Nth=2のケースでは、図3(B)の例において、注目画素329の符号化の際に、最も近い同色の正常な先行画素325の信号値に基づく差分符号化が許容され得る。切替制御部206は、連続欠陥画素数Ncontが閾値Nthに達した場合、注目画素について、PCM値を切替部205に選択させる。生成部207は、このように選択されたDPCM値又はPCM値を選択的に使用して、符号化画像データを生成する。こうした変形例によれば、欠陥画素の直後でも複数画素をまたいだ差分符号化が部分的に行われ得ることから、画像信号の空間的相関を活用した圧縮効率の向上が期待され得る。なお、上で説明した同色の直前の先行画素に依存した符号化モードの切替えの例は、閾値Nthが1に等しい特殊ケースに該当し得る。閾値Nthは、予め固定的に設定されてもよく、又はコントローラにより可変的に指定されてもよい。閾値Nthを可変値とすれば、差分符号化のための予測を許容する画素間の距離を適応的に調整することが可能となる。
(4)処理の流れ
図5は、本実施形態に係る符号化処理の流れの一例を示すフローチャートである。図5に示した処理は、画像処理装置100において、ユーザからの撮像開始指示の検出をトリガとして撮像部110により撮像画像の画像データが生成され、生成された画像データ(RAWデータ)が画像処理部120へ転送される都度実行される。ユーザからの撮像開始指示は、例えばボタン又はタッチパネルといった画像処理装置100のユーザインタフェース(図示せず)を介して検出され得る。なお、以下の説明では、処理ステップをS(ステップ)と略記する。
図5は、本実施形態に係る符号化処理の流れの一例を示すフローチャートである。図5に示した処理は、画像処理装置100において、ユーザからの撮像開始指示の検出をトリガとして撮像部110により撮像画像の画像データが生成され、生成された画像データ(RAWデータ)が画像処理部120へ転送される都度実行される。ユーザからの撮像開始指示は、例えばボタン又はタッチパネルといった画像処理装置100のユーザインタフェース(図示せず)を介して検出され得る。なお、以下の説明では、処理ステップをS(ステップ)と略記する。
まず、S500で、画像処理部120の符号化部121は、イメージセンサ112から、例えば1次元に並ぶN個の画素に相当する1ブロック分の信号値を受信する。
次いで、S501で、符号化部121は、欠陥画素情報メモリ124から、対象のブロックに関連する欠陥画素情報を読出す。なお、符号化部121は、欠陥画素情報をブロック単位で読出す代わりに、画像全体の欠陥画素情報を一度に読出してもよい。
次いで、S502で、符号化部121は、コントローラ(図示せず)により指定される量子化パラメータを取得する。なお、複数のブロックにわたって共通的な量子化パラメータが指定される場合には、S502は、それら複数のブロックについて一度だけ行われてよい。
次いで、S503で、符号化部121は、ブロック単位の符号化処理を実行することにより、S500で受信した信号値を符号化して、符号化画像データを生成する。ここで実行されるブロック単位の符号化処理の具体的な流れについて、後にさらに説明する。
次いで、S504で、符号化部121の生成部207はは、符号化画像データに多重化すべき符号化パラメータを生成する。ここで生成される符号化パラメータは、例えば、上で説明した量子化パラメータ、全画素正常フラグ、及びK個の符号化方式選択フラグのうちの1つ以上を含み得る。
次いで、S505で、生成部207は、S505で生成した符号化パラメータをS503で生成した符号化画像データに多重化して、符号化データを生成する。符号化部121は、生成した符号化データをフレームメモリ122へ書込む。
次いで、S506で、符号化部121は、符号化すべき次の画素ブロックが存在するか否かを判定する。符号化すべき次の画素ブロックが存在する場合には、処理はS500へ戻り、次の画素ブロックを対象として、上述したS500〜S505が繰り返される。符号化すべき次の画素ブロックが存在しない場合には、図5に示した符号化処理は終了する。
図6は、図5のS503のブロック符号化処理の詳細な流れの一例を示すフローチャートである。図6に示した処理は、符号化部121の切替制御部206による制御に従って、主として量子化部201、遅延部202、減算部203、可変長符号化部204及び切替部205により実行される。
まず、S600で、切替制御部206は、連続欠陥画素数Ncontをゼロに初期化する。切替制御部206は、1つの画素ブロックに現れる色の各々について1つの連続欠陥画素数Ncontを設定し得る。次いで、切替制御部206は、S601で、画素ブロックの配列のうち未処理の最初の画素に注目し、注目画素が欠陥画素であるか否かを欠陥画素情報に基づいて判定する。注目画素が欠陥画素であると判定された場合、処理はS602へ進む。一方、注目画素が欠陥画素ではない(即ち、正常画素である)と判定された場合、処理はS606へ進む。
注目画素が欠陥画素であると判定された場合、S602で、切替制御部206は、注目画素の色に対応する連続欠陥画素数Ncontの値をインクリメントする。次いで、切替制御部206は、S603で、注目画素が同色の画素のうちで画素ブロックの先頭に位置するか否かを判定する。注目画素が同色の画素のうちで画素ブロックの先頭に位置する(例えば、注目画素の画素番号がゼロ又は1である)と判定された場合、処理はS604へ進む。一方、注目画素がそのような画素ではないと判定された場合、処理はS620へ進む。
注目画素が欠陥画素であり且つ同色の画素のうちで画素ブロックの先頭に位置すると判定された場合、S604で、量子化部201は、注目画素の信号値を所定の値に設定する。その後、処理はPCMモードでの符号化のためにS611へ進む。
S601で注目画素が正常画素であると判定された場合、S606で、切替制御部206は、連続欠陥画素数Ncontがゼロに等しいか(即ち、同色の直前の先行画素が正常画素であるか)を判定する。Ncontがゼロに等しい場合、処理はDPCMモードでの符号化のためにS614へ進む。一方、Ncontがゼロに等しくない場合、処理はS607へ進む。
Ncontがゼロに等しくない(即ち、同色の直前の先行画素が欠陥画素である)と判定された場合、S607で、切替制御部206は、連続欠陥画素数Ncontが閾値Nthに達したかを判定する。Ncontが閾値Nthに達したと判定された場合には、切替制御部206は、S608で、Ncontをゼロに初期化する。そして、処理はPCMモードでの符号化のためにS611へ進む。Ncontが閾値Nthに達していないと判定された場合にも、切替制御部206は、S609で、Ncontをゼロに初期化する。そして、処理はDPCMモードでの符号化のためにS614へ進む。
S611で、量子化部201は、量子パラメータにより示される量子化ステップで、注目画素の信号値を量子化して、量子化信号値を生成する。次いで、S612で、量子化信号値がPCM符号化される。具体的には、切替部205は、注目画素の量子化信号値(PCM値)を選択して生成部207へ出力する。そして、生成部207は、切替部205から入力されたPCM値を符号化画像データに含める。
S614で、量子化部201は、量子パラメータにより示される量子化ステップで、注目画素の信号値を量子化して、量子化信号値を生成する。次いで、S615で、減算部203は、注目画素の量子化信号値から当該注目画素に先行する先行画素の量子化信号値を減算して、注目画素の差分量子化信号値を生成する。次いで、S616で、可変長符号化部204は、注目画素の差分量子化信号値を可変長符号化して、差分符号化信号値(DPCM値)を生成する。このDPCM値が切替部205から生成部207へ出力され、生成部207により符号化画像データに含められる。
その後、S620で、切替制御部206は、処理すべき次の注目画素が存在するか否かを判定する。処理すべき次の注目画素が存在する場合には、処理はS601へ戻り、次の注目画素を対象として、上述したS601〜S616が繰り返される。処理すべき次の注目画素が存在しない場合には、図6に示したブロック単位の符号化処理は終了する。
<2−3.デコーダの詳細な構成>
(1)各部の説明
本実施形態において、復号部123は、符号化画像データに関連付けられた符号化パラメータに従って、DPCMモード又はPCMモードのいずれかで、符号化画像データから取得される各符号値を復号して、複数の画素の各々の信号値を復元する。図7は、図1に示した復号部123の詳細な構成の一例を示すブロック図である。図7を参照すると、復号部123は、分離部701、第1切替部702、切替制御部703、可変長復号部704、遅延部705、加算部706、逆量子化部707、補間部708及び第2切替部を含む。
(1)各部の説明
本実施形態において、復号部123は、符号化画像データに関連付けられた符号化パラメータに従って、DPCMモード又はPCMモードのいずれかで、符号化画像データから取得される各符号値を復号して、複数の画素の各々の信号値を復元する。図7は、図1に示した復号部123の詳細な構成の一例を示すブロック図である。図7を参照すると、復号部123は、分離部701、第1切替部702、切替制御部703、可変長復号部704、遅延部705、加算部706、逆量子化部707、補間部708及び第2切替部を含む。
分離部701は、上述した手法に従って符号化部121により生成された符号化データを、フレームメモリ122からブロック単位で読出し、読出した符号化データ内の符号化パラメータを符号化画像データから分離する。分離部701は、例えば、上述した量子化パラメータ及び全画素正常フラグを分離し、全画素正常フラグが偽を示す場合には、K個の符号化方式選択フラグをさらに分離する。そして、分離部701は、量子化パラメータを逆量子化部707へ、全画素正常フラグ及び符号化方式選択フラグを切替制御部703へ出力する。また、分離部701は、圧縮画素データから各画素の符号値(PCM値又はDPCM値)を分離して、分離した符号値を順に第1切替部702へ出力する。
第1切替部702は、復号対象の画素ブロック内の各画素について、切替制御部703による制御に従って、分離部701から入力される符号値の出力先を、可変長復号部704と逆量子化部707(及び遅延部705)との間で切替える。具体的には、第1切替部702は、注目画素の符号値がPCM値である場合には、PCM値を逆量子化部707及び遅延部705へ出力し、注目画素の符号値がDPCM値である場合には、DPCM値を可変長復号部704へ出力する。
切替制御部703は、分離部701から上述した符号化パラメータを取得し、及び欠陥画素情報メモリ124から欠陥画素情報を読出す。そして、切替制御部703は、符号化パラメータ及び欠陥画素情報に基づいて、画素ブロック内の各画素について、復号モードをPCMモードとDPCMモードとの間で切替え、且つ復号の代わりに補間により信号値を復元すべきかを制御する。例えば、切替制御部703は、画素ブロックの同色の画素のうちの先頭の画素(ベイヤ配列においては、各色の先頭の画素)について、第1切替部702に、PCM値である符号値を逆量子化部707及び遅延部705へ出力させる。また、切替制御部703は、全画素正常フラグが真を示す画素ブロックの先頭ではない全ての画素について、第1切替部702に、DPCM値である符号値を可変長復号部704へ出力させる。また、切替制御部703は、全画素正常フラグが偽を示す画素ブロックの先頭ではない各画素について、対応する符号化方式選択フラグが真を示す場合には、第1切替部702に、PCM値である符号値を逆量子化部707及び遅延部705へ出力させる。また、切替制御部703は、対応する符号化方式選択フラグが偽を示す場合には、第1切替部702に、DPCM値である符号値を可変長復号部704へ出力させる。また、切替制御部703は、注目画素が正常画素であることを欠陥画素情報が示す場合に、注目画素について逆量子化部707により復元される信号値を、第2切替部709に選択させる。また、切替制御部703は、注目画素が欠陥画素であることを欠陥画素情報が示す場合に、注目画素について補間部708に補間値を生成させ、生成された補間値を、出力すべき信号値として第2切替部709に選択させる。
可変長復号部704は、第1切替部702から入力されるDPCM値、即ち差分符号化信号値を、符号化部121において使用されたものと同じ可変長符号化方式で復号して、差分量子化信号値を復元する。そして、可変長復号部704は、復元した差分量子化信号値を加算部706へ出力する。
遅延部705は、第1切替部702又は加算部706から入力される量子化信号値を、後続する画素の信号値の差分復号のための予測値となるように遅延させ、遅延されたタイミングで予測値を加算部706へ出力する。例えば、遅延部705は、ベイヤパターンを前提として、各量子化信号値を2画素分の入力間隔だけ遅延させる。
加算部706は、可変長復号部704から入力される注目画素の差分量子化信号値を、遅延部705から入力される予測値(先行画素について復号済みの量子化信号値)に加算して、注目画素の量子化信号値を復元する。そして、加算部706は、復元した量子化信号値を逆量子化部707へ出力する。
逆量子化部707は、加算部706から入力される量子化信号値、又は第1切替部702から入力される量子化信号値を量子パラメータQPにより示される量子化ステップで逆量子化して、注目画素の信号値を復元する。そして、逆量子化部707は復元した信号値を第2切替部709へ出力する。
補間部708は、切替制御部703による制御に従って、注目画素が欠陥画素である場合に、注目画素の信号値として補間値を生成する。補間値は、例えば、注目画素の直前の同色の先行画素の信号値と同じ値、又は同色の複数の先行画素の信号値の平均値など、いかなる値であってもよい。補間部708は、生成した補間値を第2切替部709へ出力する。
第2切替部709は、切替制御部703による制御に従って、注目画素が正常画素であるか又は欠陥画素であるかに依存して、逆量子化部707から入力される信号値又は補間部708から入力される補間値を、注目画素の信号値として選択する。例えば、第2切替部709は、注目画素が正常画素である場合には、注目画素の信号値として逆量子化部707により復元された信号値を選択する。一方、第2切替部709は、注目画素が欠陥画素である場合には、注目画素の信号値として補間値を選択する。そして、第2切替部709は、選択した注目画素の信号値を、復元すべき画像データの信号値として出力する。このように復号部123により復元された画像データは、上述したように、再度フレームメモリ122へ書込まれ、又は他の画像処理用の回路(図示せず)へ出力され得る。
(2)処理の流れ
図8は、本実施形態に係る復号処理の流れの一例を示すフローチャートである。図8に示した処理は、図5を用いて説明した符号化処理が開始され、フレームメモリ122に所定の量の符号化データが書込まれたタイミングで実行される。ここでの所定の量は、1ブロック、数ライン又は1フレームといったいかなる量であってもよく、装置の性能要件又はフレームメモリ122のマッピング仕様といった要因を考慮して適宜設計され得る。
図8は、本実施形態に係る復号処理の流れの一例を示すフローチャートである。図8に示した処理は、図5を用いて説明した符号化処理が開始され、フレームメモリ122に所定の量の符号化データが書込まれたタイミングで実行される。ここでの所定の量は、1ブロック、数ライン又は1フレームといったいかなる量であってもよく、装置の性能要件又はフレームメモリ122のマッピング仕様といった要因を考慮して適宜設計され得る。
まず、S800で、復号部123の分離部701は、フレームメモリ122から、図4を用いて説明したデータフォーマットを有する1ブロック分の符号化データを読出す。次いで、分離部701は、S801で、読出した符号化データ内の符号化パラメータを符号化画像データから分離する。ここで、例えば量子化パラメータ(QP)及び全画素正常フラグ(all_dpcm_flg)が分離される。分離部701は、S802で、全画素正常フラグが真を示すか否かを判定する。全画素正常フラグが偽を示す場合、分離部701は、S803で、符号化パラメータに含まれるK個の符号化方式選択フラグ(pcm_dpcm_sel_flag)を取得して、取得したフラグを切替制御部703へ出力する。
切替制御部703は、S804で、欠陥画素情報メモリ124から対象のブロックに関連する欠陥画素情報を読出す。なお、切替制御部703は、欠陥画素情報をブロック単位で読出す代わりに、画像全体の欠陥画素情報を一度に読出してもよい。全画素正常フラグが真を示す場合、符号化方式選択フラグは取得されず、切替制御部703は、S805で、符号化方式選択フラグに対応する内部変数を初期化する。
次いで、S806で、復号部123は、ブロック単位の復号処理を実行することにより、S801で符号化データから分離した符号化画像データを復号して、元の画像データを復元する。ここで実行されるブロック単位の復号処理の具体的な流れについて、後にさらに説明する。
次いで、S807で、復号部123は、復号すべき次の画素ブロックが存在するか否かを判定する。復号すべき次の画素ブロックが存在する場合には、処理はS800へ戻り、次の画素ブロックを対象として、上述したS800〜S806が繰り返される。復号すべき次の画素ブロックが存在しない場合には、図8に示した復号処理は終了する。
図9は、図8のS806のブロック復号処理の詳細な流れの一例を示すフローチャートである。図9に示した処理は、復号部123の切替制御部703による制御に従って、主として第1切替部702、可変長復号部704、遅延部705、加算部706、逆量子化部707、補間部708及び第2切替部により実行される。
まず、S900で、切替制御部703は、注目画素が同色の画素のうちで画素ブロックの先頭に位置するか否かを判定する。注目画素が同色の画素のうちで画素ブロックの先頭に位置する(例えば、注目画素の画素番号がゼロ又は1である)と判定された場合、処理はPCMモードでの復号のためにS903へ進む。一方、注目画素がそのような画素ではないと判定された場合、処理はS901へ進む。
S901で、切替制御部703は、注目画素が欠陥画素であるか否かを欠陥画素情報に基づいて判定する。注目画素が欠陥画素であると判定された場合、処理はS910へ進む。一方、注目画素が欠陥画素ではない(即ち、正常画素である)と判定された場合、処理はS902へ進む。
S902で、切替制御部703は、分離部701から入力された符号化パラメータに基づいて、注目画素の符号値をPCMモードで復号すべきかを判定する。例えば、全画素正常フラグが真を示す場合、又は全画素正常フラグが偽を示し且つ対応する符号化方式選択フラグが偽を示す場合には、注目画素の符号値をDPCMモードで復号すべきであると判定される。一方、全画素正常フラグが偽を示し且つ対応する符号化方式選択フラグが真を示す場合には、注目画素の符号値をPCMモードで復号すべきであると判定される。DPCMモードが選択された場合、処理はDPCMモードでの復号のためにS905へ進む。一方、PCMモードが選択された場合、処理はPCMモードでの復号のためにS904へ進む。
S903で、第1切替部702は、分離部701から入力されたPCM値(量子化信号値)を逆量子化部707及び遅延部705へ出力する。次いで、S904で、逆量子化部707は、第1切替部702から入力されたPCM値を量子パラメータにより示される量子化ステップで逆量子化して、注目画素の信号値を復元する。復元された注目画素の信号値は、第2切替部709を介して出力される。
S905で、第1切替部702は、分離部701から入力されたDPCM値(差分符号化信号値)を可変長復号部704へ出力する。次いで、S906で、可変長復号部704は、第1切替部702から入力されたDPCM値を可変長復号して、差分量子化信号値を復元する。次いで、S907で、加算部706は、復元された差分量子化信号値を、遅延部705において保持されていた先行画素の量子化信号値(即ち、予測値)に加算して、注目画素の量子化信号値を復元する。次いで、S908で、逆量子化部707は、復元された量子化信号値を上記量子化ステップで逆量子化して、注目画素の信号値を復元する。復元された注目画素の信号値は、第2切替部709を介して出力される。
S910では、注目画素は欠陥画素であるため、補間部708は、注目画素の信号値として補間値を生成する。補間部708により生成された補間値は、欠陥画素である注目画素の信号値として、第2切替部709を介して出力される。
<2−4.第1の実施形態のまとめ>
ここまで、図1〜図9を用いて、第1の実施形態について詳細に説明した。上述した実施形態では、イメージセンサにより生成される画像データを符号化して扱う装置に、当該イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報が予め提供される。そして、注目画素が欠陥画素情報により特定される正常画素である場合に、当該注目画素に先行する先行画素が欠陥画素であるか否かに依存して、DPCMモード又はPCMモードのいずれかで、注目画素の信号値が符号化される。かかる構成によれば、欠陥画素に後続する正常画素において、欠陥画素が示す極端な信号値及び当該正常画素とは相関の低い遠く離れた画素の信号値に基づいて差分符号化を行うことを回避することができる。したがって、差分符号化における予測精度の乱れに起因して多くの符号量が発生することが回避されるため、画像データの圧縮効率が改善される。また、符号化時の符号化モードの切替えは、予め装置に提供される欠陥画素情報に基づいて行われるため、エンコーダの処理が複雑化せず、処理のリアルタイム性が十分に確保され、実装コストは抑制される。
ここまで、図1〜図9を用いて、第1の実施形態について詳細に説明した。上述した実施形態では、イメージセンサにより生成される画像データを符号化して扱う装置に、当該イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報が予め提供される。そして、注目画素が欠陥画素情報により特定される正常画素である場合に、当該注目画素に先行する先行画素が欠陥画素であるか否かに依存して、DPCMモード又はPCMモードのいずれかで、注目画素の信号値が符号化される。かかる構成によれば、欠陥画素に後続する正常画素において、欠陥画素が示す極端な信号値及び当該正常画素とは相関の低い遠く離れた画素の信号値に基づいて差分符号化を行うことを回避することができる。したがって、差分符号化における予測精度の乱れに起因して多くの符号量が発生することが回避されるため、画像データの圧縮効率が改善される。また、符号化時の符号化モードの切替えは、予め装置に提供される欠陥画素情報に基づいて行われるため、エンコーダの処理が複雑化せず、処理のリアルタイム性が十分に確保され、実装コストは抑制される。
また、上述した実施形態では、注目画素が欠陥画素である場合には、当該注目画素の信号値は符号化されない。かかる構成によれば、欠陥画素の極端な信号値に対応する符号値が符号化画像データから除外されるため、画像データの圧縮効率は一層改善される。
できる。
できる。
また、上述した実施形態では、上記イメージセンサは、複数色が予め定義された配列で配置されたカラーフィルタを有し、各画素が複数色の1つに対応する。そして、DPCMモードでの注目画素の差分符号化における予測値は、当該注目画素と同色が割当てられた先行画素の信号値に基づく。かかる構成によれば、同色の画素の範囲内で正常画素が続く限り(途中で他の色の欠陥画素が存在しても)DPCMモードが選択され得るため、近傍の同色画素間の相関を活用して圧縮効率を高めることができる。
また、上述した実施形態では、N個の画素の単位で画像データが符号化され、当該N個の画素の全てが正常画素であるか否かを示すフラグが符号化画像データに関連付けられる。かかる構成によれば、符号化画像データを復号するデコーダは、N個の画素の全てが正常画素であることを当該フラグが示す場合に、それら画素の(先頭画素を除く)全てについて画一的にDPCMモードを適用することができる。したがって、デコーダの処理の複雑さが低減され、処理のリアルタイム性が向上し得る。
また、上述した実施形態では、少なくとも1つの画素が欠陥画素であることを上記フラグが示す場合に、各画素についていずれの符号化モードが選択されたのかを示すパラメータが上記符号化画像データにさらに関連付けられる。かかる構成によれば、符号化画像データを復号するデコーダは、当該パラメータの値に従って復号モードをDPCMモードとPCMモードとの間で切替えればよいため、デコーダの処理の複雑さを一層低減することができる。
<<3.第2の実施形態>>
<3−1.基本的な構成>
第2の実施形態では、イメージセンサから取得される画素の各々が欠陥画素である場合に、エンコーダにおいて、欠陥画素の信号値(又は量子化信号値)を、当該欠陥画素の直前の先行画素の信号値(又は量子化信号値)に置換する。それにより、欠陥画素に後続する画素を含む、画素ブロック内の先頭画素以外の全ての画素について、画一的にDPCMモードを利用することが可能となる。
<3−1.基本的な構成>
第2の実施形態では、イメージセンサから取得される画素の各々が欠陥画素である場合に、エンコーダにおいて、欠陥画素の信号値(又は量子化信号値)を、当該欠陥画素の直前の先行画素の信号値(又は量子化信号値)に置換する。それにより、欠陥画素に後続する画素を含む、画素ブロック内の先頭画素以外の全ての画素について、画一的にDPCMモードを利用することが可能となる。
図10は、第2の実施形態に係る画像処理装置1000の基本的な構成の一例を示すブロック図である。ここでは、画像データの圧縮符号化に関係しない装置の構成要素は、説明を曖昧にしないために省略されている。図10を参照すると、画像処理装置1000は、撮像部110及び画像処理部1020を備える。
画像処理部1020は、第1の実施形態に係る画像処理部120と同様の、撮像部110から入力される画像データについて様々な画像処理を行うための回路である。画像処理部1020は、符号化部1021、フレームメモリ122、復号部1023及び欠陥画素情報メモリ124を含む。画像処理部1020のこれら構成要素は、ハードウェア、ソフトウェア、及びハードウェアとソフトウェアとの組合せのいずれによって実装されてもよい。
符号化部1021は、撮像部110から入力される画像データを、画像処理装置1000を制御するコントローラから指示される制御パラメータに従って圧縮符号化して、符号化画像データを生成する。撮像部110から入力される画像データは、イメージセンサ112が有する複数の画素にそれぞれ対応する信号値を含むデータである。符号化部1021は、第1の実施形態に係る符号化部121とは異なり、符号化画像データに量子化パラメータのみを関連付けて符号化データを生成し、画素ブロックの単位で符号化データをフレームメモリ122へ書き込む。但し、本実施形態においても、何らかの追加的な符号化パラメータが符号化画像データに関連付けられてもよい。
復号部1023は、フレームメモリ122から符号化データを読出し、読出した符号化データに含まれる符号化画像データを復号して、元の画像データを復元する。復号部1023は、復元した画像データを、再度フレームメモリ122へ書込んでもよく、又は他の画像処理用の回路(図示せず)へ出力してもよい。画像処理部1020は、第1の実施形態に係る画像処理部120と同様に、復元された画像データについて、光学的歪み補正、シェーディング補正、デベイヤ、カラーマトリクス変換及びノイズ削減のうちの1つ以上を実行する処理回路を含んでもよい。復号部1023により実行される復号処理は、画素ブロック内の(同色画素のうちの)先頭画素についてPCMモードで信号値を復元し、後続の画素についてDPCMモードで信号値を復元するという、欠陥画素情報を要しない画一的な処理である。そのため、ここでは復号部1023のより詳細な構成の説明を省略する。
<3−2.エンコーダの詳細な構成>
(1)各部の説明
図11は、図10に示した符号化部1021の詳細な構成の一例を示すブロック図である。図11を参照すると、符号化部1021は、量子化部1100、置換部1101、遅延部1102、減算部1103、可変長符号化部1104、切替部1105、切替制御部1106、生成部1107及び置換値設定部1110を含む。
(1)各部の説明
図11は、図10に示した符号化部1021の詳細な構成の一例を示すブロック図である。図11を参照すると、符号化部1021は、量子化部1100、置換部1101、遅延部1102、減算部1103、可変長符号化部1104、切替部1105、切替制御部1106、生成部1107及び置換値設定部1110を含む。
符号化部1021へ入力される画像データは、ベイヤパターンで配列されたイメージセンサ112の複数の画素から順次読出される信号値を含む。第1の実施形態に係る符号化部121と同様に、符号化部1021は、これら信号値を、1次元に並ぶN個の画素のブロック(即ち、1×Nの画素ブロック)の単位で符号化するものとする。ベイヤパターンの場合、1×Nの画素ブロックの画像データは、R及びG又はG及びBという、2つの色成分の信号値が交互に並んだ1次元配列となる。
量子化部1100は、量子パラメータQPにより示される量子化ステップで、N個の画素の各々の信号値を量子化して、量子化信号値を生成する。そして、量子化部1100は、生成した量子化信号値を置換部1101及び切替部1105へ出力する。
置換部1101には、画素ブロック内の各画素について、量子化部1100により生成された量子化信号値、又は後述する置換値設定部1110により設定された置換値が入力される。置換部1101は、切替制御部1106による制御に従って、注目画素が欠陥画素である場合に、注目画素の量子化信号値を、置換値設定部1110から入力される置換値に置換する。そして、置換部1101は、置換値を遅延部1102及び減算部1103へ出力する。注目画素が正常画素である場合には、置換部1101は、注目画素の量子化信号値を置換することなく遅延部1102及び減算部1103へ出力する。これ以降の説明において、注目画素の量子化信号値とは、注目画素が正常画素である場合には置換されていない量子化信号値を、注目画素が欠陥画素である場合には置換値を意味する。
なお、図11には、量子化部1100の後段に置換部1101が設けられる例が示されているが、量子化部1100の前段に置換手段が設けられてもよい。その場合、置換手段は、注目画素の量子化信号値ではなく量子化前の信号値を、注目画素と同色の直前の先行画素の信号値に置換し得る。
遅延部1102は、置換部1101から入力される各画素の量子化信号値を、後続する画素の信号値の差分符号化のための予測値となるように遅延させ、遅延されたタイミングで予測値を減算部1103へ出力する。例えば、遅延部1102は、ベイヤパターンを前提として、各値を2画素分の入力間隔だけ遅延させる。また、置換部1101は、遅延させた量子化信号値を、置換値設定部1110にも出力する。
減算部1103は、置換部1101から入力される注目画素の量子化信号値から当該注目画素に先行する先行画素の量子化信号値を減算して、注目画素の差分量子化信号値を生成する。そして、減算部1103は、生成した差分量子化信号値を可変長符号化部1104へ出力する。
可変長符号化部1104は、減算部1103から入力される注目画素の差分量子化信号値を所定の可変長符号化方式で符号化して、差分符号化信号値を生成する。ここでの所定の可変長符号化方式とは、例えばハフマン符号又はゴロム符号といった、いかなる種類の可変長符号化方式であってもよい。
切替部1105には、上述した画素ブロック内の各画素について、量子化部1100により生成された量子化信号値(即ち、PCM値)、又は可変長符号化部1104により生成された差分符号化信号値(即ち、DPCM値)が入力される。切替部1105は、切替制御部1106による制御に従って、各画素についてPCM値及びDPCM値のうちの一方の符号値を選択し、選択した値を生成部1107へ出力する。
切替制御部1106は、欠陥画素情報メモリ124から読出される欠陥画素情報を用いて、画素ブロック内の各画素について、量子化信号値を置換値に置換すべきか、並びにPCM値及びDPCM値のいずれを符号値として使用すべきかを制御する。本実施形態において、切替制御部1106は、注目画素が欠陥画素情報により特定される欠陥画素である場合に、置換値設定部1110に置換値を設定させ、置換部1101に注目画素の量子化信号値を設定された置換値に置換させる。また、切替制御部1106は、注目画素が同色の画素のうちで画素ブロックの先頭に位置する場合には、注目画素についてPCM値を切替部1105に選択させ、そうでない場合には注目画素についてDPCM値を切替部1105に選択させる。
生成部1107は、画素ブロック内の各画素について、切替制御部1106による制御に従って、切替部1105から選択的に入力されるPCM値又はDPCM値を使用して、符号化画像データを生成する。具体的には、本実施形態において、生成部1107は、注目画素が同色の画素のうちで画素ブロックの先頭に位置する場合には、注目画素についてPCM値を符号化画像データに含める。また、生成部1107は、注目画素が同色の画素のうちで画素ブロックの先頭に位置しない場合には、注目画素についてDPCM値を符号化画像データに含める。生成部1107は、符号化画像データに量子化パラメータを関連付けて、符号化画像データを生成する。生成部1107は、画素ブロックの単位で符号化データのデータ長を一定とするために、符号化データにスタッフィングデータを追加してもよい。生成部1107は、撮像画像を構成する複数の画素ブロックについて、符号化データを反復的に生成し、生成した符号化データをフレームメモリ122に順次格納する。
置換値設定部1110は、切替制御部1106による制御に従って、注目画素が欠陥画素である場合に、当該注目画素の量子化信号値を置換するための置換値を設定する。例えば、欠陥画素である注目画素が画素ブロックの同色の画素のうちで先頭の画素である場合、置換値設定部1110は、例えば量子化後の信号値のレンジの中央の値、又は前回符号化した画素ブロックの最後の量子化信号値を置換値として設定する。また、置換値設定部1110は、画素ブロック内に注目画素に先行する同色の画素が存在する場合、注目画素と同色の直前の先行画素の量子化信号値を置換値として設定する。このように直前の信号値を一時的に保持する処理を、前値ホールドともいう。置換値設定部1110は、設定した置換値を置換部1101へ出力する。
なお、ここでは注目画素と同色の直前の先行画素の量子化信号値(又は信号値)が置換値となる例を説明したが、置換値は、他の値であってもよい。例えば、同色の複数の先行画素の量子化信号値(又は信号値)の平均値又は中央値が置換値として設定されてもよい。また、注目画素の近傍の複数の画素の量子化信号値(又は信号値)のうちで、差分符号化の差分を最小化するような値が置換値として適応的に設定されてもよい。
図12は、欠陥画素の信号値の置換の一例について説明するための説明図である。図12の例において、1つの画素ブロック内の画素数Nは16に等しく、画素番号0〜15をそれぞれ付与された16個の画素が、符号化順で左から右へ示されている。図中の記号の意味は、図3に関連して説明したものと同様である。ここでは、16個の画素のうち番号7の赤色の画素1217が欠陥画素である。
図12(A)には、信号値の置換の前の状況が示されている。画素1217が欠陥画素であるために、画素1217の直後の同色の画素である画素1219において、先行画素1217の信号値をDPCMモードの予測値として使用すると、予測差分値が過剰に大きくなり多量の符号が発生する。
図12(B)には、信号値の置換後の状況が示されている。欠陥画素である画素1217の信号値は、画素1217の直前の同色の先行画素1215の信号値に置換される。結果的に、画素1219において、先行画素1217の信号値をDPCMモードの予測値として使用したとしても、予測差分値が過剰に大きくなることはなく、発生する符号量は抑制される。画素1217のDPCMモードでの符号化においては、画素1217の置換後の信号値が先行画素1215の信号値と等しくなるため、予測差分値はゼロとなる。それにより、後段の可変長符号化後の符号値の長さは極めて短くなる。
(2)処理の流れ
図13は、本実施形態に係る符号化処理の流れの一例を示すフローチャートである。図13に示した処理は、画像処理装置1000において、ユーザからの撮像開始指示の検出をトリガとして撮像部110により撮像画像の画像データが生成され、生成された画像データ(RAWデータ)が画像処理部1020へ転送される都度実行される。ユーザからの撮像開始指示は、例えばボタン又はタッチパネルといった画像処理装置1000のユーザインタフェース(図示せず)を介して検出され得る。
図13は、本実施形態に係る符号化処理の流れの一例を示すフローチャートである。図13に示した処理は、画像処理装置1000において、ユーザからの撮像開始指示の検出をトリガとして撮像部110により撮像画像の画像データが生成され、生成された画像データ(RAWデータ)が画像処理部1020へ転送される都度実行される。ユーザからの撮像開始指示は、例えばボタン又はタッチパネルといった画像処理装置1000のユーザインタフェース(図示せず)を介して検出され得る。
まず、S1300で、画像処理部1020の符号化部1021は、イメージセンサ112から、例えば1次元に並ぶN個の画素に相当する1ブロック分の信号値を受信する。
次いで、S1301で、符号化部1021は、欠陥画素情報メモリ124から、対象のブロックに関連する欠陥画素情報を読出す。なお、符号化部1021は、欠陥画素情報をブロック単位で読出す代わりに、画像全体の欠陥画素情報を一度に読出してもよい。
次いで、S1302で、符号化部1021は、コントローラ(図示せず)により指定される量子化パラメータを取得する。なお、複数のブロックにわたって共通的な量子化パラメータが指定される場合には、S1302は、それら複数のブロックについて一度だけ行われてよい。
次いで、S1303で、符号化部1021は、ブロック単位の符号化処理を実行することにより、S1300で受信した信号値を符号化して、符号化画像データを生成する。ここで実行されるブロック単位の符号化処理の具体的な流れについて、後にさらに説明する。
次いで、S1304で、符号化部1021は、符号化処理によって生成した符号化画像データ(及び、必要に応じてスタッフィングデータ)をフレームメモリ122へ出力する。
次いで、S1305で、符号化部1021は、符号化すべき次の画素ブロックが存在するか否かを判定する。符号化すべき次の画素ブロックが存在する場合には、処理はS1300へ戻り、次の画素ブロックを対象として、上述したS1300〜S1304が繰り返される。符号化すべき次の画素ブロックが存在しない場合には、図13に示した符号化処理は終了する。
図14は、図13のS1303のブロック符号化処理の詳細な流れの一例を示すフローチャートである。図14に示した処理は、符号化部1021の切替制御部1106による制御に従って、主として量子化部1100、置換部1101、遅延部1102、減算部1103、可変長符号化部1104、切替部1105及び置換値設定部1110により実行される。
まず、S1401で、切替制御部1106は、画素ブロックの配列のうち未処理の最初の画素に注目し、注目画素が欠陥画素であるか否かを欠陥画素情報に基づいて判定する。注目画素が欠陥画素であると判定された場合、処理はS1402へ進む。一方、注目画素が欠陥画素ではない(即ち、正常画素である)と判定された場合、処理はS1405へ進む。
注目画素が欠陥画素であると判定された場合、S1402で、切替制御部1106は、注目画素が同色の画素のうちで画素ブロックの先頭に位置するか否かを判定する。注目画素が同色の画素のうちで画素ブロックの先頭に位置する(例えば、注目画素の画素番号がゼロ又は1である)と判定された場合、処理はS1403へ進む。一方、注目画素がそのような画素ではないと判定された場合、処理はS1404へ進む。
注目画素が欠陥画素であり且つ同色の画素のうちで画素ブロックの先頭に位置すると判定された場合、S1403で、置換部1101は、注目画素の量子化信号値を、置換値設定部1110により設定される所定の値に置換する。その後、処理はPCMモードでの符号化のためにS1410へ進む。
一方、注目画素が欠陥画素であり且つ同色の画素のうちで画素ブロックの先頭に位置しないと判定された場合、S1404で、置換部1101は、注目画素の量子化信号値を、注目画素と同色の直前の先行画素の量子化信号値に置換する。その後、処理はDPCMモードでの符号化のためにS1415へ進む。
S1401で注目画素が正常画素であると判定された場合、S1405で、量子化部1100は、量子パラメータにより示される量子化ステップで、注目画素の信号値を量子化して、量子化信号値を生成する。次いで、切替制御部1106は、S1406で、注目画素が同色の画素のうちで画素ブロックの先頭に位置するか否かを判定する。注目画素が同色の画素のうちで画素ブロックの先頭に位置すると判定された場合、処理はPCMモードでの符号化のためにS1410へ進む。一方、注目画素がそのような画素ではないと判定された場合、処理はDPCMモードでの符号化のためにS1415へ進む。
S1410で、正常画素についての量子化後の量子化信号値、又は欠陥画素についての置換後の量子化信号値がPCMモードでそのまま符号化される。具体的には、切替部1105は、注目画素の量子化信号値(PCM値)を選択して生成部1107へ出力する。そして、生成部1107は、切替部1105から入力されたPCM値を符号化画像データに含める。
S1415で、減算部1103は、注目画素の量子化信号値から当該注目画素に先行する先行画素の量子化信号値を減算して、注目画素の差分量子化信号値を生成する。次いで、S1416で、可変長符号化部1104は、注目画素の差分量子化信号値を可変長符号化して、差分符号化信号値(DPCM値)を生成する。このDPCM値が切替部1105から生成部1107へ出力され、生成部1107により符号化画像データに含められる。
その後、S1420で、切替制御部1106は、処理すべき次の注目画素が存在するか否かを判定する。処理すべき次の注目画素が存在する場合には、処理はS1401へ戻り、次の注目画素を対象として、上述したS1401〜S1416が繰り返される。処理すべき次の注目画素が存在しない場合には、図14に示したブロック単位の符号化処理は終了する。
<3−3.第2の実施形態のまとめ>
ここまで、図10〜図14を用いて、第2の実施形態について詳細に説明した。上述した実施形態では、イメージセンサにより生成される画像データを符号化して扱う装置に、当該イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報が予め提供される。そして、注目画素が欠陥画素情報により特定される欠陥画素である場合に、当該注目画素の信号値又は量子化信号値が直前の先行画素の信号値又は量子化信号値に置換され、置換後の値に基づいてDPCMモードでの符号化が行われる。かかる構成によれば、直前の先行画素以外の先行画素の値を一時的に保持しておくことが不要となるため、エンコーダの処理が複雑化しない。また、注目画素と直前の先行画素との間で信号値の相関が通常高いと想定されることから、直前の先行画素の信号値を置換値として用いれば、差分符号化によって発生する符号量を効果的に抑制して、圧縮効率の低下を防止することができる。加えて、デコーダは、先頭の画素を除く全ての画素について画一的にDPCMモードを利用すればよいため、デコーダを簡易に実装することが可能となる。また、エンコーダとデコーダとの間でやり取りされる符号化データのデータフォーマットも単純化される。
ここまで、図10〜図14を用いて、第2の実施形態について詳細に説明した。上述した実施形態では、イメージセンサにより生成される画像データを符号化して扱う装置に、当該イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報が予め提供される。そして、注目画素が欠陥画素情報により特定される欠陥画素である場合に、当該注目画素の信号値又は量子化信号値が直前の先行画素の信号値又は量子化信号値に置換され、置換後の値に基づいてDPCMモードでの符号化が行われる。かかる構成によれば、直前の先行画素以外の先行画素の値を一時的に保持しておくことが不要となるため、エンコーダの処理が複雑化しない。また、注目画素と直前の先行画素との間で信号値の相関が通常高いと想定されることから、直前の先行画素の信号値を置換値として用いれば、差分符号化によって発生する符号量を効果的に抑制して、圧縮効率の低下を防止することができる。加えて、デコーダは、先頭の画素を除く全ての画素について画一的にDPCMモードを利用すればよいため、デコーダを簡易に実装することが可能となる。また、エンコーダとデコーダとの間でやり取りされる符号化データのデータフォーマットも単純化される。
また、上述した実施形態では、上記イメージセンサは、複数色が予め定義された配列で配置されたカラーフィルタを有し、各画素が複数色の1つに対応し、上記先行画素は、上記注目画素と同色の画素である。かかる構成によれば、同色の画素の信号値が置換値として使用されるため、近傍の同色画素間の相関を活用して圧縮効率を高めることができる。
<<4.変形例>>
本発明は上記実施形態に限定されず、様々な変形が可能である。例えば、注目画素及び先行画素が共に正常画素である場合に、注目画素について、PCM値及びDPCM値のうち符号長のより短い符号値が符号化画像データに含められてもよい。それにより、圧縮効率のさらなる向上が可能である。
本発明は上記実施形態に限定されず、様々な変形が可能である。例えば、注目画素及び先行画素が共に正常画素である場合に、注目画素について、PCM値及びDPCM値のうち符号長のより短い符号値が符号化画像データに含められてもよい。それにより、圧縮効率のさらなる向上が可能である。
<<5.その他の実施形態>>
上記実施形態は、1つ以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出して実行する処理の形式でも実現可能である。また、1つ以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上記実施形態は、1つ以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出して実行する処理の形式でも実現可能である。また、1つ以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
100,1000:画像処理装置、112:イメージセンサ、121,1021:符号化部、123,1023:復号部、124:欠陥画素情報メモリ
Claims (15)
- イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する記憶手段と、
前記イメージセンサにより生成される前記複数の画素の信号値を含む画像データを符号化して、符号化画像データを生成する符号化手段と、
を備え、
前記符号化手段は、注目画素が前記欠陥画素情報により特定される欠陥画素ではない正常画素である場合に、前記注目画素に先行する先行画素が欠陥画素であるか否かに依存して、前記注目画素の信号値を差分符号化する第1の符号化モード、又は前記注目画素の信号値を差分符号化を行うことなく符号化する第2の符号化モードのいずれかで符号化する、
画像処理装置。 - 請求項1に記載の画像処理装置であって、前記符号化手段は、前記注目画素が欠陥画素である場合に、前記注目画素の前記信号値を符号化しない、画像処理装置。
- 請求項1又は2に記載の画像処理装置であって、
前記イメージセンサは、複数色が予め定義された配列で配置されたカラーフィルタを有し、前記複数の画素の各々が前記複数色の1つに対応し、
前記先行画素は、前記複数色のうち前記注目画素と同色が割当てられた画素であり、
前記第1の符号化モードにおいて、前記注目画素の前記差分符号化における予測値は、前記先行画素の前記信号値に基づく、
画像処理装置。 - 請求項1乃至3のいずれか1項に記載の画像処理装置であって、前記符号化手段は、前記注目画素の直前の前記先行画素が正常画素である場合に、前記注目画素の前記信号値を前記第1の符号化モードで符号化し、前記注目画素の直前の前記先行画素が欠陥画素である場合に、前記注目画素の前記信号値を前記第2の符号化モードで符号化する、画像処理装置。
- 請求項1乃至3のいずれか1項に記載の画像処理装置であって、前記符号化手段は、前記注目画素に先行する連続する欠陥画素の数が閾値に達しない場合に、前記注目画素の前記信号値を前記第1の符号化モードで符号化し、前記注目画素に先行する連続する欠陥画素の数が前記閾値に達した場合に、前記注目画素の前記信号値を前記第2の符号化モードで符号化する、画像処理装置。
- 請求項1乃至5のいずれか1項に記載の画像処理装置であって、前記符号化手段は、前記第1の符号化モードにおいて、
前記注目画素の前記信号値を量子化して、前記注目画素の量子化信号値を生成し、
前記注目画素の前記量子化信号値から前記先行画素の量子化信号値を減算して、前記注目画素の差分量子化信号値を生成し、
前記注目画素の前記差分量子化信号値を可変長符号化して、前記注目画素の差分符号化信号値を生成し、
前記注目画素の前記差分符号化信号値を前記符号化画像データに含める、
画像処理装置。 - 請求項6に記載の画像処理装置であって、前記符号化手段は、前記第2の符号化モードにおいて、
前記注目画素の前記信号値を量子化して、前記注目画素の量子化信号値を生成し、
前記注目画素の前記量子化信号値を前記符号化画像データに含める、
画像処理装置。 - 請求項1乃至7のいずれか1項に記載の画像処理装置であって、前記符号化手段は、N個(Nは整数)の画素の単位で前記画像データを符号化し、前記N個の画素の全てが正常画素であるか否かを示す第1のパラメータを前記符号化画像データに関連付ける、画像処理装置。
- 請求項8に記載の画像処理装置であって、前記符号化手段は、前記N個の画素のうちの少なくとも1つが欠陥画素である場合に、各画素についていずれの符号化モードが選択されたのかを示す第2のパラメータを前記符号化画像データにさらに関連付ける、画像処理装置。
- 請求項8又は9に記載の画像処理装置であって、
前記符号化手段により生成された前記符号化画像データを復号して、前記複数の画素の前記信号値を含む前記画像データを復元する復号手段、をさらに備え、
前記復号手段は、前記符号化手段により前記符号化画像データに関連付けられたパラメータに従って、符号値を差分復号する第1の復号モード、又は符号値を差分復号することなく復号する第2の復号モードのいずれかで、前記符号化画像データから取得される各符号値を復号して、前記複数の画素の各々の前記信号値を復元する、
画像処理装置。 - イメージセンサにより生成される画像データを符号化するための、画像処理装置において実行される画像処理方法であって、
前記画像処理装置は、前記イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する記憶手段を備え、
前記画像処理方法は、
注目画素が前記欠陥画素情報により特定される欠陥画素ではない正常画素である場合に、前記注目画素に先行する先行画素が欠陥画素であるか否かに依存して、前記注目画素の信号値を差分符号化する第1の符号化モード、又は前記注目画素の信号値を差分符号化を行うことなく符号化する第2の符号化モードのいずれかで符号化すること、
を含む、画像処理方法。 - イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する記憶手段と、
前記イメージセンサにより生成される前記複数の画素の信号値を含む画像データを符号化して、符号化画像データを生成する符号化手段と、
を備え、
前記符号化手段は、
注目画素の前記信号値を量子化して、前記注目画素の量子化信号値を生成する量子化手段と、
前記注目画素の前記量子化信号値から前記注目画素の直前の先行画素の量子化信号値を減算して、前記注目画素の差分量子化信号値を生成する減算手段と、
前記注目画素の前記差分量子化信号値を可変長符号化して、前記注目画素の差分符号化信号値を生成する可変長符号化手段と、
前記注目画素が前記欠陥画素情報により特定される欠陥画素である場合に、前記注目画素の前記信号値又は前記量子化信号値を、前記注目画素の直前の前記先行画素の前記信号値又は前記量子化信号値に置換する置換手段と、
を含む、画像処理装置。 - 請求項12に記載の画像処理装置であって、
前記イメージセンサは、複数色が予め定義された配列で配置されたカラーフィルタを有し、前記複数の画素の各々が前記複数色の1つに対応し、
前記先行画素は、前記複数色のうち前記注目画素と同色が割当てられた画素である、
画像処理装置。 - イメージセンサにより生成される画像データを符号化するための、画像処理装置において実行される画像処理方法であって、
前記画像処理装置は、前記イメージセンサが有する複数の画素のうちの欠陥画素を特定する欠陥画素情報を記憶する記憶手段を備え、
前記画像処理方法は、
注目画素の信号値を量子化して、前記注目画素の量子化信号値を生成することと、
前記注目画素の前記量子化信号値から前記注目画素の直前の先行画素の量子化信号値を減算して、前記注目画素の差分量子化信号値を生成することと、
前記注目画素の前記差分量子化信号値を可変長符号化して、前記注目画素の差分符号化信号値を生成することと、
を含み、
前記画像処理方法は、前記注目画素が前記欠陥画素情報により特定される欠陥画素である場合に、前記注目画素の前記信号値又は前記量子化信号値を、前記注目画素の直前の前記先行画素の前記信号値又は前記量子化信号値に置換すること、をさらに含む、
画像処理方法。 - 前記イメージセンサと、
請求項1乃至10、12及び13のいずれか1項に記載の画像処理装置と、
を含む撮像装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019203507A JP2021078008A (ja) | 2019-11-08 | 2019-11-08 | 画像処理装置、画像処理方法及び撮像装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019203507A JP2021078008A (ja) | 2019-11-08 | 2019-11-08 | 画像処理装置、画像処理方法及び撮像装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021078008A true JP2021078008A (ja) | 2021-05-20 |
Family
ID=75898388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019203507A Pending JP2021078008A (ja) | 2019-11-08 | 2019-11-08 | 画像処理装置、画像処理方法及び撮像装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021078008A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114726926A (zh) * | 2022-03-30 | 2022-07-08 | 电子科技大学 | 一种用于拉普拉斯信源的自适应变长编码方法 |
-
2019
- 2019-11-08 JP JP2019203507A patent/JP2021078008A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114726926A (zh) * | 2022-03-30 | 2022-07-08 | 电子科技大学 | 一种用于拉普拉斯信源的自适应变长编码方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102431537B1 (ko) | 루마 및 크로마 성분에 대한 ibc 전용 버퍼 및 디폴트 값 리프레싱을 사용하는 인코더, 디코더 및 대응하는 방법들 | |
US11870986B2 (en) | Encoder, a decoder and corresponding methods using an adaptive loop filter | |
JP5231529B2 (ja) | ビデオカメラ | |
JP7303894B2 (ja) | エンコーダ、デコーダ、及び対応するインター予測方法 | |
CN112868232B (zh) | 使用插值滤波器进行帧内预测的方法和装置 | |
JP2007036566A (ja) | デジタル信号符号化および復号化装置ならびにその方法 | |
JPH10271530A (ja) | 画像データ圧縮符号化装置およびその方法ならびにディジタルカメラ | |
KR20210126771A (ko) | 인트라 예측 모드에 관련된 인코더, 디코더 및 대응하는 방법들 | |
KR20210151248A (ko) | 적응 루프 필터를 사용하는 인코더, 디코더 및 대응하는 방법들 | |
KR20220070012A (ko) | 색공간 변환을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 | |
KR20210064332A (ko) | 컴팩트한 mv 스토리지를 사용하는 인코더, 디코더 및 대응하는 방법 | |
JP2023511206A (ja) | 適応ループフィルタリングのためのエンコーダ、デコーダ、および対応する方法 | |
JP2024055893A (ja) | 非線形適応ループフィルタのためのクリッピングレベル | |
JP7247349B2 (ja) | イントラ予測のための成分間線形モデリングの方法、装置、デコーダ、エンコーダ、およびプログラム | |
JP2021078008A (ja) | 画像処理装置、画像処理方法及び撮像装置 | |
CN114830665A (zh) | 仿射运动模型限制 | |
CN115349257A (zh) | 基于dct的内插滤波器的使用 | |
CN113615178A (zh) | 视频译码中的色度帧内预测 | |
WO2011010431A1 (ja) | 画像処理装置、画像処理方法および撮像装置 | |
JP6946671B2 (ja) | 画像処理装置及び画像処理方法 | |
US11503296B2 (en) | Image processing apparatus, image processing method, and non-transitory computer-readable storage medium | |
CN114930834A (zh) | 编码器、解码器及灵活档次配置的对应方法 | |
CN114556923A (zh) | 编码器、解码器和使用插值滤波的对应方法 | |
WO2012026122A1 (ja) | 撮像装置 | |
CN114424554B (zh) | 色度qp偏移表指示和推导的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |