JPWO2017183448A1 - データ処理装置、データ処理方法、プログラム - Google Patents

データ処理装置、データ処理方法、プログラム Download PDF

Info

Publication number
JPWO2017183448A1
JPWO2017183448A1 JP2018513100A JP2018513100A JPWO2017183448A1 JP WO2017183448 A1 JPWO2017183448 A1 JP WO2017183448A1 JP 2018513100 A JP2018513100 A JP 2018513100A JP 2018513100 A JP2018513100 A JP 2018513100A JP WO2017183448 A1 JPWO2017183448 A1 JP WO2017183448A1
Authority
JP
Japan
Prior art keywords
unit
compression
value
coefficient
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018513100A
Other languages
English (en)
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Publication of JPWO2017183448A1 publication Critical patent/JPWO2017183448A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • H04N1/411Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
    • H04N1/413Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
    • 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/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3059Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
    • H03M7/3062Compressive sampling or sensing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3068Precoding preceding compression, e.g. Burrows-Wheeler transformation
    • H03M7/3071Prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • 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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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
    • H04N19/176Methods 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 the region being a block, e.g. a macroblock
    • 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/18Methods 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 set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/40Extracting pixel data from image sensors by controlling scanning circuits, e.g. by modifying the number of pixels sampled or to be sampled
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction

Abstract

本技術は、圧縮効率を向上させることができるようにするデータ処理装置、データ処理方法、プログラムに関する。圧縮センシングにより圧縮する第1の圧縮部と、第1の圧縮部からの観測係数を第1の圧縮部とは異なる圧縮方法で圧縮する第2の圧縮部とを備える。第1の圧縮部は、サンプリングマトリックスを用いたランダムサンプリングを行い、サンプリングマトリックスは、第2の圧縮部の圧縮に最適化されている。サンプリングマトリックスは、観測係数同士の差分値が小さくなるように設計されたマトリックスである。本技術は、画像データを撮像し、圧縮し、記録、再生する記録再生装置に適用できる。

Description

本技術はデータ処理装置、データ処理方法、プログラムに関し、例えば、圧縮センシングを用いてデータを効率良く圧縮するようにしたデータ処理装置、データ処理方法、プログラムに関する。
近年、「圧縮センシング」と呼ばれる技術が開発されている。圧縮センシングを、例えば、撮像時に複数の画素の画素値(電荷信号)を加算することによって画像の情報量を圧縮し、画像のスパース性を利用した画像復元を行うときに用いることが提案されている(例えば、非特許文献1を参照)。
J. Ma, "Improved Iterative Curvelet Thresholding for Compressed Sensing and Measurement," IEEE Transactions on Instrumentation and Measurement, vol.60, no.1, pp.126-136, 2011.
圧縮センシングにおいて従来の手法では、ランダムサンプリングによりデータを合成し、その合成数を少なくすることで、圧縮を実現している。データの圧縮率を向上させる場合、データの合成数をより小さくすることとなる。しかしながら、合成数を小さくすることにより、適切なスパース行列を求めることが困難となり、適切に画像を再構成することが困難になる可能性があった。
また、画像を再構成できる場合でも、参照データ数の削減による画質劣化は大きくなってしまう可能性がある。
また、ランダムサンプリングデータにデータ圧縮を適用する手段もあるが、ランダムサンプリングされたデータは、近隣画素との相関が低いなど、一般的な画像とは、その性質が大きく異なるため、既存の圧縮アルゴリズムでは、効率的な圧縮が行えない可能性があった。
本技術は、このような状況に鑑みてなされたものであり、圧縮率を向上させることができるようにするものである。
本技術の一側面は、圧縮センシングにより圧縮する第1の圧縮部と、前記第1の圧縮部からの観測係数を前記第1の圧縮部とは異なる圧縮方式で圧縮する第2の圧縮部とを備えるデータ処理装置である。
本技術の一側面は、圧縮センシングにより圧縮し、前記圧縮の結果である観測係数を符号化するステップを含むデータ処理方法である。
本技術の一側面は、コンピュータに、圧縮センシングにより圧縮し、前記圧縮の結果である観測係数を符号化するステップを含む処理を実行させるためのプログラムである。
本技術の一側面のデータ処理装置、データ処理方法、並びにプログラムにおいては、圧縮センシングによる圧縮が行われ、圧縮の結果である観測係数が符号化される。
なお、データ処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
また、プログラムは、伝送媒体を介して伝送することにより、または、記録媒体に記録して、提供することができる。
本技術の一側面によれば、圧縮率を向上させることができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
本技術を適用したデータ処理装置の一実施の形態の構成を示す図である。 データ処理装置の他の構成を示す図である。 データ処理装置のさらに他の構成を示す図である。 サンプリングマトリックス演算部の動作について説明するためのフローチャートである。 圧縮部の構成について説明するための図である。 サンプリングマトリックスについて説明するための図である。 サンプリングマトリックスについて説明するための図である。 サンプリングマトリックスの並び換えについて説明するための図である。 サンプリングマトリックスの並び換えについて説明するための図である。 圧縮部の他の構成について説明するための図である。 予測部の構成について説明するための図である。 圧縮部から出力されるストリームの一例を示す図である。 ブロック分割されたブロックへの番号付与について説明するための図である。 復号部の構成について説明するための図である。 ストリームの構成について説明するための図である。 第2の実施の形態における圧縮部の構成について説明するための図である。 テーブルについて説明するための図である。 第3の実施の形態におけるデータ処理装置の構成を示す図である。 低域、高域の分割例を示す図である。 スパース係数行列を学習する装置の構成例を示す図である。 第3の実施の形態におけるデータ処理装置の他の構成を示す図である。 サンプリングマトリックスについて説明するための図である。 第3の実施の形態におけるデータ処理装置のさらに他の構成を示す図である。 第4の実施の形態におけるデータ処理装置の構成を示す図である。 ブロックの読み出しについて説明するための図である。 可変長圧縮におけるメモリマップのイメージを示す図である。 固定長圧縮におけるメモリマップのイメージを示す図である。 記録媒体について説明するための図である。
以下に、本技術を実施するための形態(以下、実施の形態という)について説明する。なお、説明は、以下の順序で行う。
1.第1の実施の形態
2.データ処理装置の構成
3.サンプリングマトリックス演算部の動作
4.圧縮部の構成、動作
5.サンプリングマトリックスの並び換えについて
6.圧縮部の他の構成
7.予測値の生成について
8.復号部の構成、動作
9.第2の実施の形態
10.第3の実施の形態
11.第4の実施の形態
12.記録媒体について
<第1の実施の形態>
<データ処理装置の構成>
本技術は、データを圧縮する装置に適用できる。ここでは、イメージセンサで撮像された画像を記録、再生する装置に適用した場合であり、記録する際にデータを圧縮する装置を例に挙げて説明するが、画像に限らず、音声などのデータを取得し、圧縮する装置に対しても、以下に説明する本技術を適用することはできる。
図1は、本技術を適用したデータ処理装置の一実施の形態の構成を示す図である。図1に示したデータ処理装置10は、イメージセンサ20、ブロック分割部21、ランダムサンプリング部22、圧縮部23、記録部24、サンプリングマトリックス保持部25、サンプリングマトリックス演算部26、復号部27、スパース係数変換部28、画像再構成部29、ブロック合成部30、およびスパース係数行列保持部31を含む構成とされている。
詳細は以下に説明するが、データ処理装置10は、イメージセンサ20で撮像された画像を記録部24に記録するとき、画像データを圧縮して記録する。その圧縮時に、圧縮センシング(Compressive Sensing)と称される方式を適用して圧縮する。この圧縮センシング方式によると、サンプリングマトリックスという行列を用いて圧縮(行列を用いた演算)を行うが、そのサンプリングマトリックスを圧縮部23が圧縮しやすいマトリックスにする処理を、サンプリングマトリックス演算部26は行う。
サンプリングマトリックスは、サンプリングマトリックス保持部25に保持される。すなわち、サンプリングマトリックス演算部26は、サンプリングマトリックス保持部25に保持されるサンプリングマトリックスを生成する(適正化する)。このサンプリングマトリックスを生成するときを、ここでは学習時と称する。
サンプリングマトリックス保持部25に保持されているサンプリングマトリックスは、基本的な動作としては、更新されることなく用いられる。よって、サンプリングマトリックス演算部26は、サンプリングマトリックスを生成するとき、すなわち学習時には必要であるが、学習後のデータ処理装置10では省略することが可能である。
すなわち、学習後のデータ処理装置10は、図2に示すような構成とすることができる。ここで、学習後のデータ処理装置10は、データ処理装置50と記述する。
データ処理装置50は、図1に示したデータ処理装置10からサンプリングマトリックス演算部26を削除した構成とされている点以外は、図1に示したデータ処理装置10と同様の構成とされている。
さらに、データ処理装置10(データ処理装置50)は、イメージセンサ20で撮像された画像を記録部24に記録し、その記録された画像データをさらに復号(再生)する機能を備える。すなわち、データ処理装置10(データ処理装置50)は、データの記録と再生を行う記録再生装置としての構成を有している。
しかしながら、本技術は、記録再生装置に適用が限定されるわけではなく、記録装置と再生装置が別々に構成とされている場合にも適用できる。図3に、データ処理装置50を記録装置と再生装置に分けた場合の構成を示す。
データ処理装置100は、記録装置101と再生装置102とから構成されており、基本的な構成としては、図2に示した学習後のデータ処理装置50と同様の構成を含む構成とされている。
データ処理装置100の記録装置101は、イメージセンサ20、ブロック分割部21、ランダムサンプリング部22、圧縮部23、サンプリングマトリックス保持部25、および送信部111を含む構成とされている。
再生装置102は、サンプリングマトリックス保持部25’、復号部27、スパース係数変換部28、画像再構成部29、ブロック合成部30、スパース係数行列保持部31、および受信部112を含む構成とされている。
記録装置101は、イメージセンサ20で撮像された画像の画像データを圧縮部23で圧縮した後、送信部111で、再生装置102側に送信する。再生装置102は、記録装置101側から送信されてきた画像データを復号(再生)する。画像データの送受信は、有線、無線のどちらで行われても良く、また有線と無線の組み合わせで行われても良い。
記録装置101が備えるサンプリングマトリックス保持部25と、再生装置102が備えるサンプリングマトリックス保持部25’は、同一のサンプリングマトリックスを保持している。また、保持されているサンプリングマトリックスは、サンプリングマトリックス演算部26により学習された結果、圧縮に最適化されたサンプリングマトリックスである。
本技術によれば、圧縮効率を向上させることができるため、例えば、図2に示したデータ処理装置50において、記録部24にデータを記録するとき、そのデータのデータ量を小さくすることができ、記録部24の容量を有効に利用することが可能となる。また、図3に示したデータ処理装置100において、データを送受信するとき、そのデータのデータ量を小さくすることができるため、データ通信の効率を向上させることが可能となる。
以下の説明においては、図1に示したデータ処理装置10の構成を例に挙げて説明を続ける。まず、データ処理装置10の動作について説明を加える。
データ処理装置10のイメージセンサ20は、CCD(Charge-Coupled Device)センサやCMOS(Complementary MOS)センサを含む構成とされ、被写体を撮像し、撮像した画像の画像データを生成する。
ブロック分割部21は、イメージセンサ20で撮像された画像を、処理ブロック単位に分割し、処理ブロック単位で、ランダムサンプリング部22に供給する。処理ブロック単位は、設計時に、設計者が任意に設定することができる。なお、全画面を1ブロックとして扱う場合、ブロック分割部21を省略した構成とすることも可能である。
ここでは、ブロック分割部21は、1ブロックがn×n個の画素からなるブロックに分割する場合を例に挙げて説明を続ける。また以下の説明においては、n×n個の画素を、n2次元のベクトルとして、xで表す。
ランダムサンプリング部22には、ブロック分割部21から処理ブロック単位の画像データと、サンプリングマトリックス保持部25からサンプリングマトリックスが供給される。ランダムサンプリング部22は、ブロック分割部21からのxに対して、事前に定められたサンプリングマトリックスを用いて、次式(1)によりランダムサンプリングされた係数yを生成する。
Figure 2017183448
式(1)において、Aは、サンプリングマトリックスを表す。サンプリングマトリックスは、n2×iの行列である。n2は、上記したn×n個の処理ブロック単位の画素数に相当する。例えば、処理ブロック単位が4×4個であり、iが8であった場合、式(1)に基づく演算が行われることで、n2次元=16次元が、i次元=8次元に圧縮されたことになる。
すなわち、式(1)に基づく演算が行われることで、n2次元がi次元に圧縮される。iは、設計者がデータ削減数や画質を考慮して任意に設定できる値であるが、通常、n2>iに設定される。またサンプリングマトリックスは、スパース係数行列保持部31に保持されているスパース係数行列も考慮されて決定される行列である。
サンプリングマトリックスは、RIP(Restricted Isometry Property)制約、サンプリングマトリックスの行列Aの行ベクトルと、スパース係数行列の行列φの列ベクトルが、インコヒーレントである必要がある。RIP制約は、次式(2)で表され、式(2)において、Zsは、xと同次元の任意のsに対する任意のs-sparseベクトルである。
Figure 2017183448
なお、サンプリングマトリックスを用いる圧縮センシング(Compressive sensing)に関しては、以下の文献に記載があり、本技術に適用することも可能である。
“R.Baraniuk, “Compressive sensing [lecture notes], “IEEE Signal Processing Magazine, vol.24,pp.118-121,july 2007.”
サンプリングマトリックスは、サンプリングマトリックス演算部26により生成される。生成時に、圧縮部23の圧縮に最適化されたサンプリングマトリックスとされる。最適化に係わる処理、最適化されたサンプリングマトリックスを用いた圧縮などの処理について後述するため、ここでは簡便に説明を続ける。
ここで、サンプリングマトリックスの生成時に考慮されるスパース係数行列について説明を加える。スパース係数行列は、j×n2行列である。一般的に、jは、j>>n2と設定される。スパース係数行列は、係数データより画像再構成を実施する際にも利用される。
図1に示したデータ処理装置10において、スパース係数行列は、スパース係数行列保持部31に保持されている。記録部24に記憶され、復号部27で復号された係数データ(上記した式(1)におけるyに該当する)から、スパース係数変換部28と画像再構成部29の処理により画像を再構成するときに、スパース係数行列保持部31に保持されているスパース係数行列は利用される。
スパース係数行列は、n×n画素の画像の主要構成成分を学習等で計算し、行列形式に変換したものである。主要構成成分は、j>>n2となるj個のデータで構成され、各主要成分は、スパース基底などと称されることもある。このようなスパース係数行列の生成は、K−SVD法などの手法を用いて生成することができる。
サンプリングマトリックス保持部25は、上記した手法により、また以下に説明する圧縮に最適化されたサンプリングマトリックスを保持し、ランダムサンプリング部22は、サンプリングマトリックス保持部25に保持されているサンプリングマトリックスを用いて、画像データをランダムサンプリングする。
サンプリング後のデータの次元は、上記したように、i次元となり、元の画素数(ここではn×n個、n2次元)よりも小さくなり、データは圧縮されたことになる。さらに本技術によれば、後段の圧縮部23によりさらに圧縮されるため、データはより圧縮される。
圧縮部23の構成や処理については、後述するとし、先に、データ処理装置10の動作について説明を続ける。圧縮部23により圧縮されたデータ(係数データy)は、記録部24に記録される。記録部24に記録されたデータは、復号部27により読み出され、復号される。復号部27は、圧縮部23における圧縮(符号化)方式に対応する復号方式で復号を行う。
スパース係数変換部28は、スパース係数行列保持部31に保持されているスパース係数行列とサンプリングマトリックス保持部25に保持されているサンプリングマトリックスを用いて、スパース係数zを生成する。具体的には、スパース係数行列をφ、サンプリングマトリックスをA、スパース係数変換部28に入力されたデータをyとすると、次式(3)に基づく演算が行われることで、スパース係数zが算出される。
Figure 2017183448
式(3)において、Aφz=yが満たされ、L0ノルムが最小となるスパース係数zが算出される。ただし、実際には、式(3)で厳密解を求めるのは困難であるため、次式(4)などの緩和問題として解かれるようにしても良い。
Figure 2017183448
また、Matching Pursuit,Basic Pursuit等のアルゴリズムを利用して、スパース係数zが求められるようにしても良い。どのような手法を用いても良いが、スパース係数変換部28の処理により、ランダムサンプリングされたデータyは、スパース係数zに変換され、画像再構成部29に供給される。
画像再構成部29は、次式(5)に基づき、画像データを再構成する。
Figure 2017183448
再構成画像xは、スパース係数行列φとスパース係数zの積で求められる。この再構成画像xは、ブロック分割部21から出力された画像と同等の画像となるため、ブロック合成部30にて、ブロック毎の画像が足し合わされることにより、1枚の画像に再構成される。
このようにして、画像データの圧縮、記録、再構成が行われる。なお、ここで示した圧縮センシングの方法は、一例であり、本技術の適用が、この方法に限定されることを示すものではない。
<サンプリングマトリックス演算部の動作>
次に、図4に示したフローチャートを参照し、サンプリングマトリックス演算部26の動作について説明する。
ステップS11において、RIP、インコヒーレント制約を満たすサンプリングマトリックスAが算出される。サンプリングマトリックスAは、上記したように、RIP制約を満たし、サンプリングマトリックスAの行ベクトルとスパース係数行列φの列ベクトルがインコヒーレントになるように算出される。
また、このような制約を満たすために、サンプリングマトリックスAは、ガウス分布が利用されることで生成されるようにすることもできる。また、各ブロックの画素数をn2とした場合、サンプリングマトリックスAの任意の行ベクトルAiを、平均値が0、分散1/n2とすることが多い。この場合、任意の2つの行ベクトルの内積<Ai,Aj>は、0もしくは十分小さい値となり、行ベクトル間の相関は非常に小さくなる。
任意の2つの行ベクトルは、相関が無いため、任意のベクトルxに対しては、圧縮センシングの観測係数yの相関は低い。しかしながら、上記したように、イメージセンサ20(図1)からの画像データを圧縮センシングで圧縮する場合、空間方向には高い相関が存在すると考えられる。画像データ(画像)は、空間方向に高い相関があることを利用し、圧縮しやすい圧縮センシングの観測係数yを発生可能なサンプリングマトリックスAが生成されるようにする。
すなわちサンプリングマトリックス演算部26は、ステップS11において、サンプリングマトリックスAを算出する。この算出は、従来の手法を用いて行うことができる。そして、生成されたサンプリングマトリックスAに対して、ステップS12において、サンプリングマトリックスAの行ベクトルAiのソート(並び換え)が行われる。
このサンプリングマトリックスAの行ベクトルAiの並び換えを行うことで、圧縮部23(図1)で圧縮しやすい圧縮センシングの観測係数yを発生可能なサンプリングマトリックスAが生成される。
このように、本技術を適用した実施の形態においては、圧縮センシングの結果である観測係数yを、圧縮部23でさらに圧縮する。このときの圧縮効率を高めるために、1度生成されたサンプリングマトリックスAを、圧縮部23での圧縮効率が高まるようなサンプリングマトリックスA(圧縮に最適化されたサンプリングマトリックスA)に変換する。そして、この変換する処理を、サンプリングマトリックス演算部26は行う。
また、サンプリングマトリックス演算部26により変換されたサンプリングマトリックスAが、サンプリングマトリックス保持部25に保持され、ランダムサンプリング部22で、圧縮センシングを行うときに用いられる。
サンプリングマトリックス保持部25に保持されたサンプリングマトリックスが用いられて、スパース係数変換部28におけるスパース係数zが生成される。
<圧縮部の構成、動作>
ここで、圧縮部23(図1)で圧縮しやすい圧縮センシングの観測係数yを発生可能なサンプリングマトリックスAについて説明するために、まず、圧縮部23の構成、動作について説明を加える。
図5は、圧縮部23の構成を示す図である。圧縮部23は、減算部201、符号化部202、加算部203、および予測部204を含む構成とされている。
減算部201は、ランダムサンプリング部22から供給される観測係数yから、予測部204から供給される予測値を減算し、その算出結果(以下、差分値と記述する)を、符号化部202に出力する。
符号化部202は、減算部201からの差分値を、所定の符号化方式、例えばハフマン符号化方式で、符号化する。符号化部202により符号化された差分値は、記録部24(図1)に供給され、記録される。また、符号化部202により符号化された差分値は、加算部203にも供給される。
加算部203には、予測部204から供給される予測値も供給される。予測部204の構成や動作については後述する。また予測値についても詳細は後述するが、予測値は、一例として、減算部201に入力された観測係数yの1つ前の観測係数yとすることができる。ここでは、予測値は、減算部201に入力された観測係数y(観測係数ytとする)の1つ前の観測係数y(観測係数yt-1とする)であるとして説明を続ける。
圧縮部23は、このように、減算部201により算出された観測係数yと予測値との差分値を符号化することで観測係数yを圧縮する。減算部201に、予測値として、減算部201に入力された観測係数y(観測係数yt)の1つ前の観測係数y(観測係数yt-1)が入力される場合、減算部201は、観測係数ytから観測係数yt-1を減算した差分値(以下、適宜、差分値(yt−yt-1)と記述する)を出力し、その差分値(yt−yt-1)が符号化部202により符号化されることで圧縮される。
このようにして圧縮されるため、差分値(yt−yt-1)が小さくなれば、圧縮率を高めることが可能となる。圧縮部23(の減算部201)には、観測係数yが順次入力されるため、その連続して入力される観測係数yの差分値が小さくなれば、差分値(yt−yt-1)も小さくなり、圧縮率を高めることができる。
このように、連続する観測係数yの差分値が小さくなるようなサンプリングマトリックスAが、圧縮部23で圧縮しやすい圧縮センシングの観測係数yを発生可能なサンプリングマトリックスAとなる。
サンプリングマトリックス演算部26は、このような連続する観測係数yの差分値が小さくなるようなサンプリングマトリックスAを生成する。ここで、再度、サンプリングマトリックス演算部26における処理について説明を加える。
<サンプリングマトリックスの並び換えについて>
図6は、ステップS11で生成されたサンプリングマトリックスAの一例を表し、図7は、その生成されたサンプリングマトリックスAに対して、ステップS12で並び換えを実行した後のサンプリングマトリックスAの一例を表す。また図6、図7に示したのは、サンプリングマトリックスAを構成する行ベクトルを模式的に2次元表記したものである。
図6、図7を参照して説明するサンプリングマトリックスAは、4×4個のブロック単位でランダムサンプリングを行う場合のサンプリングマトリックスAの一例を示す。A0乃至A5は、サンプリングマトリックスAを構成する行ベクトルであり、16(=4×4)次元の行ベクトルである。
また、例えば、1ブロック内の4×4の画素位置を、図6右図に示したように、左上から右下にかけて、x0、x1、x2、x3、x4、x5、x6、x7、x8、x9、x10、x11、x12、x13、x14、x15とする。
また、例えば、1ブロック内の各四角形は、ブロック内の画素位置を表している。各四角形は、該当する位置の画素値に乗算する値を表し、ここでは黒く塗りつぶされた四角形は0を表し、白く塗りつぶされた四角形は1を表すとして説明を続ける。0は、サンプリングしない画素を表し、1は、サンプリングする画素を表す。例えば、行列A0において、画素x7に該当する位置は、“1”とされ、他の画素の位置は、“0”とされている。
行ベクトルA0乃至A5は、それぞれ、以下のように行列で表すことができる。
A0=[0000000100000000]
A1=[0000000001000000]
A2=[0100000000000000]
A3=[0000000000000010]
A4=[0000000010000000]
A5=[0000000000000001]
図6に示したように、サンプリングマトリックスAは、A0乃至A5から構成される。式で表すと、次式(6)となる。
Figure 2017183448
上記したように、サンプリングマトリックスA(サンプリングマトリックスAを構成する行ベクトルA0乃至A5)は、ガウス分布の乱数で設計されるため、0近傍の値が大半を示す。なおここでは、行ベクトルの要素は、0または1である場合を例に挙げて説明するが、最小値が0、最大値が1であり、他の値を有する要素が含まれていても良い。
式(6)に示したンプリングマトリックスAが用いられて、ランダムサンプリング部22でランダムサンプリングが行われると、観測係数yとして、以下のような行列が得られる。ここで、観測係数yを、図6の右図に示した画素値xで表すと以下のような行列となる。
y=[x7 x9 x1 x14 x8 x15]
仮に、サンプリングマトリックス演算部26でステップS11(図4)の処理だけが行われ、図6に示したようなサンプリングマトリックスAが生成され、サンプリングマトリックス保持部25に保持され、ランダムサンプリング部22でのランダムサンプリングに用いられた場合、ランダムサンプリング部22から圧縮部23(図1)には、上記した観測係数yが順次入力される。
ここで、例えば、観測係数yt-1として観測係数yとして“x1”が入力された後、観測係数ytとして“x14”が入力されるときを考える。圧縮部23では、差分値(yt−yt-1)として、“x14−x1”が算出され、符号化される。ここで、図6の右図を参照するに、画素値x1と画素値x14は、画素位置が離れている。
上記したように、画像において、空間方向には、高い相関があると考えられる。このことは、画像において、空間方向で近ければ相関が高くなり、その差分を算出したとき、差分値は小さくなる傾向にあると言えるが、空間方向で遠ければ、相関が低くなり、その差分を算出したとき、差分値は大きくなる傾向にあるとも言える。
圧縮部23での圧縮率を高めたい場合、観測係数yの差分値が小さくなればよいことは上記した。このようなことから、画像内の空間方向で近い観測係数yの差分が算出されるようにすれば、圧縮部23での圧縮率を高められるため、サンプリングマトリックス演算部26は、画像内の空間方向で近い観測係数yが連続して出力されるようなサンプリングマトリックスを生成する。
具体的には、図6に示した生成されたサンプリングマトリックスAを、図7に示したサンプリングマトリックスAへと変換する。図7に示したサンプリングマトリックスA’(変換前のサンプリングマトリックスAと区別するためにダッシュを付して説明する)は、サンプリングマトリックスA’を構成する行ベクトルの並びが、A2,A0,A4,A1,A5,A3となっている。式で表すと次式(7)のようになる。
Figure 2017183448
式(7)に示したンプリングマトリックスA’が用いられて、ランダムサンプリング部22でランダムサンプリングが行われると、観測係数yとして、以下のような行列が得られる。ここでは、観測係数yは、図7の右図に示した画素値xを用いて表す。
y=[x1 x7 x8 x9 x15 x14]
上記したように、図6に示したサンプリングマトリックスAによると圧縮部23では、“x14−x1”が差分値として算出されるが、図7に示したサンプリングマトリックスA’によると、行ベクトルA3でサンプリングされる“x14”と、行ベクトルA5でサンプリングされる“x15”の差分値がとられ、“x15−x14”が差分値として算出される。
画素値x14と画素値x15は、隣接する画素の画素値であり、空間方向で近い画素同士である。よって、その差分値は小さい値となる可能性が高い。このように、サンプリングマトリックス演算部26は、一度生成されたサンプリングマトリックスA(の行ベクトル)を、空間方向で近い画素が隣接する行ベクトルとなるように、サンプリングマトリックスA(の行ベクトル)を入れ替える(ソートする)。
ここでは、図6に示したサンプリングマトリックスAから、図7に示したサンプリングマトリックスA’への変換は、図8のAに示した順序で、行ベクトル内の最大値が並ぶようにソートを行う変換である場合を例示した。
図8のAに示したソートによると、x0、x1、x2、x3、x7、x6、x5、x4、x8、x9、x10、x11、x15、x14、x13、x12の順で最大値(図6で示した例では1)がある行ベクトルが来るように並び換えが行われる。
ソートの仕方は、図8のAの順に限定されるわけでなく、他の仕方により行われても良い。図8のB、図8のC、および図8のDに、ソートの仕方の他の例を示す。
図8のBに示したソートによると、x0、x1、x4、x8、x5、x2、x3、x6、x9、x12、x13、x10、x7、x11、x14、x15の順で最大値がある行ベクトルが来るように並び換えが行われる。
図8のCに示したソートによると、x0、x1、x2、x3、x4、x5、x6、x7、x8、x9、x10、x11、x12、x13、x14、x15の順で最大値がある行ベクトルが来るように並び換えが行われる。
図8のDに示したソートによると、x0、x1、x2、x3、x7、x11、x15、x14、x13、x12、x8、x4、x5、x6、x10、x9の順で最大値がある行ベクトルが来るように並び換えが行われる。
ここに示したソート順以外のソート順で、サンプリングマトリックスAが変換されても良い。また、ここでは、サンプリングマトリックスA内の要素は、0または1である場合を例に挙げて説明したが、要素は、負の値、0、正の値など、取り得る値に制限はなく、任意に設定可能であり、要素の値が0、1の2値ではなく、複数の値を有する場合、以下のような手法で、サンプリングマトリックスAが変換されるようにしても良い。
図9は、サンプリングマトリックスA内の要素が複数の値をとる場合のサンプリングマトリックスAの変換(行ベクトルのソート)に係わる処理手順について説明するための図である。なお図9では、説明のために、左側に番号を付してある。
1行目に記載の処理により、サンプリングマトリックスAのコストの暫定値が計算される。ここでコストとは、隣接したサンプリングマトリックスA間の類似度の和であるとし、次式(9)で示される。また、類似度は、次式(8)で算出される。
Figure 2017183448
Figure 2017183448
式(8)で示した類似度は、ベクトルの内積を利用した式であり、サンプリングマトリックスAiとサンプリングマトリックスAjの内積で類似度を算出する。式(8)において、同一ベクトルを用いて計算した場合、その値(類似度)は、1となる。また異なるベクトルに適用した場合、1以上の値となり、完全に不一致するベクトルに適用した場合、無限大の値をとる。
3乃至7行目の記載した処理により、類似度と、その類似度を用いたコストが算出される。その算出は、サンプリングマトリックスA内の行ベクトルが入れ替えられながら、例えば、図6に示したサンプリングマトリックスA0乃至A5が入れ替えられながら、類似度とコストが算出される。
9乃至16行目に記載した処理により、比較用のコストが更新され、暫定的な最適なサンプリングマトリックスAが更新される。そのような更新が繰り返されることで、コストが最小となるサンプリングマトリックスAの適用順序が求められる。
例えば、3乃至7行目に記載した処理が、図6に示したサンプリングマトリックスA0乃至A5に対して行われた場合、A0とA1の類似度、A1とA2の類似度、A2とA3の類似度、A3とA4の類似度、およびA4とA5の類似度がそれぞれ算出され、その類似度の和がコストとして算出される。
このようなコストの算出が、サンプリングマトリックスA0乃至A5の組み合わせを変え(A0乃至A5の並びを変え)、考えられる組み合わせ(並び)毎に行われる。そして、コストが最小となる並びが選択される。コストが最小となる並びは、隣接するサンプリングマトリックスA0乃至A5の類似度が高い(式(8)の値としては1に近く、小さい値となる)ことを示す。よって、そのような並びのサンプリングマトリックスAが、サンプリングマトリックスA’として生成され、サンプリングマトリックス保持部25に保持される。
サンプリングマトリックスA内の要素が複数の値をとる場合、図9に示したようにしてサンプリングマトリックスA’が生成されてもよい。また、サンプリングマトリックスA内の要素が複数の値をとる場合であっても、その最大値に着目して、図6乃至8を参照して説明したようにしてサンプリングマトリックスA’が生成されても良い。
このように、本技術においては、ランダムに発生させたサンプリングマトリックスAを、圧縮部23が圧縮するのに最適なサンプリングマトリックスA’に変換し、その変換されたサンプリングマトリックスA’を用いてランダムサンプリング部22でランダムサンプリングが行われる。以下、変換後のサンプリングマトリックスA’も、サンプリングマトリックスAとの記述に戻す。
ここで「圧縮に最適」ということについて説明を加える。圧縮部23に入力されるデータが偏っている、換言すれば、一部の値に収束していることが、圧縮的には重要な事項となる。偏りのない(少ない)データは、情報量が多いため圧縮しずらい。一方、偏りの多いデータは、情報量が少なく圧縮しやすい。情報量は、エントロピーなどと称されることもある。
本技術においては、上記したように、サンプリングマトリックスAの行ベクトルの順番を入れ替えることで、サンプリングマトリックスAを用いたランダムサンプリング後の出力(観測係数y)が、前後の観測係数yで類似する値、すなわち差分値を算出したときに、その値が小さくなる値になるようにしている。
よって、差分値は、0を中心として偏りの大きい分布を作り出すことができ、圧縮に適したデータ列になる。すなわち、圧縮に最適なサンプリングマトリックスAを、上記したようにして生成することができる。
また、以下に説明するように、本技術では、差分値を算出するとき、予測値も用いる。過去の処理結果から、現在の観測係数yの予測値の予測方法を決めると、確率的に入力係数と差分の値の情報量を小さくする、例えば、0に集中させるサンプリングマトリックスAを設計できる。
ここでは、このように、入力画像、予測値、差分値の情報量が最小となるサンプリングマトリックスAを、圧縮に最適なサンプリングマトリックスAと記述する。
<圧縮部の他の構成>
ここで、再度、圧縮部23の構成と動作について説明を加える。圧縮部23は、図5に示したような構成を有し、上記したように、観測係数yと予測値との差分値を算出し、符号化することで、圧縮を行う。
図10に圧縮部23の他の構成を示す。図10に示した圧縮部23は、図5に示した圧縮部23に、量子化部211と逆量子化部212を追加した構成とされている。
図10に示した圧縮部23においては、ランダムサンプリング部22からの観測係数yが、減算部201と予測部204に入力される。減算部201は、観測係数yから、予測部204からの予測値(以下、予測値pとする)を減算し、その差分値を量子化部211に出力する。
量子化部211は、入力された差分値を量子化する。量子化部211は、入力された差分値を、例えば、1/2の値にし、符号化部202と逆量子化部212に出力する。量子化後の差分値は、符号化部202により符号化され、出力される。
また量子化後の差分値は、逆量子化部212により逆量子化される。よって、量子化後の差分値は、量子化部211による量子化前の差分値の値に戻され、加算部203に供給される。図23では、逆量子化部212の処理を経て、加算部203に量子化前の差分値が入力される構成としたが、逆量子化部212を省略し、減算部201からの差分値が、加算部203に入力される構成としても良い。
このように、量子化部211を設けることで、差分値が仮に大きな値となっても、量子化することで、小さな値に変換することができ、また、その小さな値に変換された差分値を符号化することで、圧縮部23における圧縮の効率をより向上させることができる。
加算部203は、逆量子化部212からの差分値と、予測部204からの予測値pを加算し、予想部204に出力する。以下、加算部203から主力される値を、局所復号結果と適宜記載する。予測部204は、ランダムサンプリング部22からの観測係数yと、加算部203からの局所復号結果を比較し、後述する予測モードを設定し、その設定した予測モードを符号化部202に供給するとともに、予測モードに対応する予測値pを減算部201に対して出力する。
図11に、予測部204の内部構成を示す。予測部204は、バッファ251、予測値生成部252、予測モード判定部253、およびスイッチ254から構成されている。
バッファ251には、加算部203からの局所復号結果を入力し、バッファリングする。バッファ251にバッファリングされた局所復号結果は、所定のタイミングで、予測値生成部252に供給される。予測値生成部252は、後述する方法で、予測値pを生成し、スイッチ254に出力する。スイッチ254は、予測モード判定部253からの予測モードにより、スイッチを切り替え、予測値生成部252からの予測値pまたは固定値(0)を減算部201(図10)に出力する。
予測モード判定部253には、ランダムサンプリング部22からの観測係数yと、予測値生成部252から予測値pが入力される。予測モード判定部253は、予測するモード、または予測しないモードのどちらにするかを、観測係数yと予測値pを用いて判定する。ここで、予測するモードは、圧縮するモードであり、差分値を出すモードである。また予測しないモードは、圧縮しないモードであり、差分値ではなく、観測係数yをそのまま出すモードである。
予測モード判定部253により、予測するモードにすると判定された場合、スイッチ254は、予測値生成部252からの予測値pを、減算部201(図10)に出力する側にスイッチを切り換える。また、予測モード判定部253は、予測するモードにすると判定した場合、そのことを表す情報、ここでは、“0”を、符号化部202に出力する。符号化部202は、符号化したデータに、予測するモードであることを示す“0”をストリームに含める処理を行う。
一方、予測モード判定部253により、予測しないモードにすると判定された場合、スイッチ254は、固定値(0)を、減算部201(図10)に出力する側にスイッチを切り換える。また、予測モード判定部253は、予測しないモードにすると判定した場合、そのことを表す情報、ここでは、“1”を、符号化部202に出力する。符号化部202は、符号化したデータに、予測しないモードであることを示す“1”をストリームに含める処理を行う。
このような予測部204を含む圧縮部23における圧縮処理について説明を加える。
圧縮部23は、ランダムサンプリング部22からの圧縮センシング後の観測係数yに対し、圧縮を適用する。観測係数yは、上記したように算出された値(圧縮された結果)である。再度、圧縮センシングの式(10)を記載する。
Figure 2017183448
圧縮部23には、観測係数y0、y1、y2、y3、y4、・・・、yiが、この順で入力される。この順は、上述したように、圧縮に最適化されたサンプリングマトリックスAを用いて圧縮センシングされた結果であり、連続して入力される観測係数yは、相関の高い係数となっている。
まず観測係数y0が圧縮部23の減算部201と予測部204に入力される。観測係数y0の符号化時には、予測部204から予測値pは出力されない(固定値(0)が出力される)ため、減算部201は、観測係数y0を、差分値(ここでは差分値y0とする)を、量子化部211に出力する。
またこのとき、予測部204の予測モード判定部253(図11)は、予測しないモードにすると判定するため、スイッチ254は、固定値(0)に切り換えられている。よって、上記したように、減算部201からは、観測係数y0がそのまま量子化部211に出力される。
量子化部211は、観測係数y0(差分値y0)を、予め設定されている量子化値で量子化し、符号化部202に出力する。なお、量子化部211は、動的に量子化値を変更する構成とすることも可能である。量子化部211を、動的に量子化値を変更する構成とした場合、量子化値の復号を行う側(図1では復号部27)に伝送し、復号側で量子化値を特定できる仕組みを設ければよい。
符号化部202は、所定の符号化方式、例えばハフマン符号化方式により、差分値y0を符号化し、ストリームとして出力する。ここでは、符号化部202は、ハフマン符号化方式により符号化を行うとして説明を続けるが、ハフマン符号化方式以外の符号化方式を、本技術に適用することも可能である。
なお差分値y0(観測係数y0)は、予測が適用されていないため、ハフマンコードを適用せずに、予め量子化値毎に設定された固定長で符号化されるようにしても良い。
量子化された差分値y0は、符号化部202により符号化され、ストリームとして出力される一方で、逆量子化部212にも供給され、逆量子化される。逆量子化部212により逆量子化された差分値y0は、加算部203に供給され、予測部204からの予測値pと加算される。この場合、予測値pは、“0”であるため、加算部203からの出力は、差分値y0(局所復号結果y0とする)となる。
加算部203からの出力は、復号側で得られる観測係数yとなる。すなわち、加算部203により、復号側で得られる観測係数yが再構成される。再構成された観測係数y(この場合、観測係数y0=局所復号結果y0)は、予測部204に供給され、観測係数y1以降の係数作成のために用いられる。
加算部203からの局所復号結果y0は、予測部204のバッファ251(図11)に入力され、バッファリングされる。一方で、次の観測係数y1が圧縮部23の減算部201と予測部204に入力される。予測部204では、予測を行うか否かの判定と、予測値の生成を行う。
予測部204の予測値生成部252は、バッファ251内の情報(この場合、局所復号結果y0)を元に、予測値を生成する。予測値の生成方法については、後述するが、ここでは、その1つの方法として、隣接値を予測値としてそのまま利用する方法を例に挙げて説明を続ける。
この場合、圧縮対象とされているのは観測係数y1であり、その観測係数y1の隣接値は、観測係数y0である。また観測係数y0は、バッファ251にバッファリングされている局所復号結果y0と同一である。よって、このとき、予測値生成部252は、予測値として、観測係数y0を生成し、スイッチ254と予測モード判定部253に出力する。
予測モード判定部253は、予測値生成部252から予測値(この場合、観測係数y0)と、ランダムサンプリング部22からの観測係数y(この場合、観測係数y1)とを用いて予測モードを判定する。この予測モードの判定方法は、特に制約は無く、ここではその一例を示す。
(1) 入力された観測係数yから予測値を減算し、その差分値を可変長符号化したときのコード長を算出する。
(2) (1)で算出されたコード長と、固定長符号化時の発生ビット量を比較する。
(3) 比較の結果、(1)で算出されたコード長の方が、固定長符号化時の発生ビット量よりも短くなる場合、予測するモードに設定し、“0”を出力し、(1)で算出されたコード長の方が、固定長符号化時の発生ビット量よりも長くなる場合、予測しないモードに設定し、“1”を出力する。
スイッチ254は、予測するモードに設定された場合、予測値生成部252からの予測値が減算部201(図10)に出力されるようにスイッチを切り換える。また、スイッチ254は、予測しないモードに設定された場合、固定値(0)が減算部201(図10)に出力されるようにスイッチを切り換える。
ここでは、圧縮対象とされている観測係数y1は、予測するモードに設定され、処理されるとして説明を続ける。
予測モード判定部253により予測するモードに設定され、スイッチ254が、予測値生成部252で生成された予測値(この場合、観測係数y0)が、減算部201に供給される側に接続されると、観測係数y0が、減算部201に出力される。
減算部201には、ランダムサンプリング部22から、観測係数y1が供給されているため、減算部201は、観測係数y1から観測係数y0を減算する処理を実行する。この結果、減算部201からは、差分値(y1−y0)が量子化部211に出力される。
量子化部211は、差分値(y1−y0)を、予め設定されている量子化値で量子化し、符号化部202に出力する。符号化部202は、量子化された差分値(y1−y0)を、符号化し、ストリームとして出力する。
量子化された差分値(y1−y0)は、逆量子化部212にも供給され、逆量子化される。逆量子化部212により逆量子化された差分値(y1−y0)は、加算部203に供給され、予測部204からの予測値pと加算される。このときの予測値pは、観測係数y0であるため、加算部203では、差分値(y1−y0)と観測係数y0が加算され、加算結果として、観測係数y1が予測部204に出力される。
このような処理が、圧縮部23で繰り返し行われることで、観測係数yが圧縮され、ストリームとして出力される。
図12に、出力されるストリームの一例を示す。量子化後の差分値y0(以下単に、差分値y0と記述し、他も同様に記述する)は、上記したように、予測しないモードで圧縮され、固定長で出力される。差分値y0(差分値の算出の基準となる係数)は、常に固定長で出力されるため、予測モードを表す情報を付加しなくても良いし、付加しても良い。図12に示した例では、付加してない例を示している。
固定長で差分値y0が出力された後、予測モードを表す情報が出力される。図12では、予測するモードが設定されたことを示す“0”との情報が付加されている。この情報の後、差分値(y1―y0)が出力される。この差分値(y1―y0)は、予測(圧縮)されるモードのときの差分値であるため、可変長のデータとして出力される。
可変長の差分値(y1―y0)が出力された後、予測モードを表す情報が出力される。図12では、予測するモードが設定されたことを示す“0”との情報が付加されている。この情報の後、差分値(y2―y1)が出力される。この差分値(y2―y1)は、予測(圧縮)されるモードのときの差分値であるため、可変長のデータとして出力される。
可変長の差分値(y2―y1)が出力された後、予測モードを表す情報が出力される。図12では、予測しないモードが設定されたことを示す“1”との情報が付加されている。この情報の後、差分値(y3)が出力される。この差分値(y3)は、予測(圧縮)されるモードのときの差分値ではないため、観測係数y3であり、固定長のデータとして出力される。
このようなストリームが圧縮部23から出力される。
<予測値の生成について>
次に、予測部204の予測値生成部252の予測値の生成について説明を加える。まず、ブロック分割部21(図1)により分割された画像の各ブロックを、図13に示すように定義する。図13において、例えば左上に位置するブロックをブロック(0,0)とし、その右隣(x軸方向で右隣)に位置するブロックをブロック(1,0)とする。また、ブロック(0,0)の下隣(y軸方向で下隣)に位置するブロックをブロック(0,1)とする。他も同様に定義する。
またブロック(h,v)をサンプリングマトリックスAでランダムサンプリングした係数を、次式(11)のように定義する。また、式(11)で示されるブロック(h,v)の係数を圧縮、復号した結果、換言すれば、局所復号結果を、次式(12)のように定義する。
Figure 2017183448
Figure 2017183448
予測値の生成として、ブロック内で予測して生成する場合について説明する。
{予測値の第1の生成}
予測値として隣接値をそのまま利用する。これは、上記した説明において用いた生成手法である。式で表すと、次式(13)のようになる。次式においてPは、予測値を表す。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(14)のようになる。
Figure 2017183448
式(13)で予測値が生成される場合、例えば、観測係数y1(yh,v,k=yh,v,1のとき)が圧縮対象とされているときの予測値は、観測係数y0(=yh,v,0)となる。
{予測値の第2の生成}
予測値として近接する隣接値の平均値を利用する。式で表すと、次式(15)のようになる。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(16)のようになる。
Figure 2017183448
式(15)で予測値が生成される場合、例えば、観測係数y2(yh,v,k=yh,v,2のとき)が圧縮対象とされているときの予測値は、観測係数y0(=yh,v,0)と観測係数y0(=yh,v,1)を加算し、2で乗算した値となる。
{予測値の第3の生成}
予測値として近接平均値の線形和を利用する。式で表すと、次式のようになる。次式(17)、次式(18)において、aは、重みを表し、全ての係数に同一の重みが乗算される。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(18)のようになる。
Figure 2017183448
式(17)で予測値が生成される場合、例えば、観測係数yn(yh,v,k=yh,v,nのとき)が圧縮対象とされているときの予測値は、観測係数y0(=yh,v,0)、観測係数y1(=yh,v,1)、・・・、観測係数yn−1(=yh,v,n-1)、のそれぞれに重みaが乗算され、重みaが乗算された値が加算された値となる。
{予測値の第4の生成}
上記した第3の生成と同じく、予測値として近接平均値の線形和を利用するが、各係数に乗算される重みが異なる。式で表すと、次式のようになる。次式(19)、次式(20)において、aは、それぞれの係数毎に異なる重みである。また重みaは、係数の位置に応じた値とされ、例えば、処理対象に近い係数の重みaは大きい値とされ、処理対象から遠い係数の重みaは小さい値とされる。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(20)のようになる。
Figure 2017183448
式(19)で予測値が生成される場合、例えば、観測係数yn(yh,v,k=yh,v,nのとき)が圧縮対象とされているときの予測値は、観測係数y0(=yh,v,0)、観測係数y1(=yh,v,1)、・・・、観測係数yn−1(=yh,v,n-1)、のそれぞれに、それぞれ異なる重みaが乗算され、重みaが乗算された値が加算された値となる。
予測値の生成として、ブロック間で予測して生成する場合について説明する。
{予測値の第5の生成}
予測値として隣接するブロックの同一位置の観測係数yを利用する。式で表すと、次式(21)のようになる。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(22)のようになる。
Figure 2017183448
式(21)で予測値が生成される場合、例えば、ブロック(1,1)の観測係数y1(yh,v,k=y1,1,1のとき)が圧縮対象とされているときの予測値は、隣接するブロック(1,0)内の観測係数y1(=y1,0,1)となる。
{予測値の第6の生成}
予測値として近接する複数のブロックの値を利用する。式で表すと、次式(23)のようになる。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(24)のようになる。
Figure 2017183448
式(23)で予測値が生成される場合、例えば、ブロック(1,1)の観測係数y1(yh,v,k=y1,1,1のとき)が圧縮対象とされているときの予測値は、隣接するブロック(1,0)内の観測係数y1(=y1,0,1)とブロック(0,1)内の観測係数y1(=y0,1,1)が加算され、その値から、ブロック(0,0)内の観測係数y1(=y0,0,1)が減算された値とされる。
{予測値の第7の生成}
第6の生成と同じく、予測値として近接する複数のブロックの値を利用するが、median predictionと称される方法により求める。式で表すと、次式(25)のようになる。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(26)のようになる。
Figure 2017183448
式(25)で予測値が生成される場合、例えば、ブロック(1,1)の観測係数y1(yh,v,k=y1,1,1のとき)が圧縮対象とされているときの予測値は、隣接するブロック(1,0)内の観測係数y1(=y1,0,1)とブロック(0,1)内の観測係数y1(=y0,1,1)が加算され、その値から、ブロック(0,0)内の観測係数y1(=y0,0,1)が減算された値(第1の値とする)が算出される。
また、ブロック(1,0)内の観測係数y1(=y1,0,1)とブロック(0,1)内の観測係数y1(=y0,1,1)のうちの小さい方の値(第2の値)が算出される。同様に、ブロック(1,0)内の観測係数y1(=y1,0,1)とブロック(0,1)内の観測係数y1(=y0,1,1)の大きい方の値(第3の値)が算出される。これら第1の値、第2の値、第3の値のうちの中央値が、予測値として用いられる。
予測値の生成として、ブロック内とブロック間で予測して生成する場合について説明する。
{予測値の第8の生成}
予測値として複数のブロックの値と同一ブロック内の隣接する値を利用する。式で表すと、次式(27)のようになる。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(28)のようになる。
Figure 2017183448
式(27)で予測値が生成される場合、例えば、ブロック(1,1)の観測係数y1(yh,v,k=y1,1,1のとき)が圧縮対象とされているときの予測値は、隣接するブロック(1,0)内の観測係数y1(=y1,0,1)と同一ブロック(1,1)内の隣接する観測係数y0(=y1,1,0)が加算され、その値から、隣接するブロック(1,0)内の観測係数y1に隣接する観測係数y0(=y1,0,0)が減算された値とされる。
{予測値の第9の生成}
第8の生成と同じく、予測値として複数のブロックの値と同一ブロック内の隣接する値を利用するが、median predictionと称される方法により求める。式で表すと、次式(29)のようになる。
Figure 2017183448
圧縮部23が図10に示したように、量子化部211を備える構成の場合、次式(30)のようになる。
Figure 2017183448
式(29)で予測値が生成される場合、例えば、ブロック(1,1)の観測係数y1(yh,v,k=y1,1,1のとき)が圧縮対象とされているときの予測値は、隣接するブロック(1,0)内の観測係数y1(=y1,0,1)と同一ブロック(1,1)内の隣接する観測係数y0(=y1,1,0)が加算され、その値から、隣接するブロック(1,0)内の観測係数y1に隣接する観測係数y0(=y1,0,0)が減算された値(第1の値とする)が算出される。
また、ブロック(1,0)内の観測係数y1(=y1,0,1)とブロック(1,1)内の隣接する観測係数y0(=y1,1,0)のうちの小さい方の値(第2の値)が算出される。同様に、ブロック(1,0)内の観測係数y1(=y1,0,1)とブロック(1,1)内の隣接する観測係数y0(=y1,1,0)の大きい方の値(第3の値)が算出される。これら第1の値、第2の値、第3の値のうちの中央値が、予測値として用いられる。
これら予測値の第1乃至第9の生成のいずれかの方法により予測値が生成される。また、ここでは例示していない方法により予測値が生成されても良い。
<復号部の構成、動作>
次に、上記したようにして圧縮された観測係数yを復号する復号部27の構成、動作について説明を加える。
図14は、復号部27の構成を示す図である。復号部27は、復号処理部301、逆量子化部302、加算部303、予測値生成部304を含む構成とされている。なお、図14に示した復号部27の構成は、図10に示した圧縮部23に対応した構成であり、図5に示した圧縮部23に対応した復号部27においては、逆量子化部302を省略した構成とされる。
復号部27の復号処理部301には、記録部24(図1)に記録されている、例えば、図12に示したようなストリームが供給される。復号処理部301は、図12に示したようなストリームが供給された場合、まず、固定長であり、量子化されている差分値y0(観測係数y0)を、符号化部202(図10)の符号化方式に対応する復号方式で復号する。
復号処理部301は、差分値y0を復号するとき、予測値生成部304に対しては、予測しないモードに設定されていることを示す情報、この場合“1”を供給する。
逆量子化部302は、復号処理部301からの量子化されている差分値y0を、逆量子化する。この処理は、例えば、圧縮部23の逆量子化部212(図10)と同様に行うことができる。逆量子化部302により逆量子化された差分値y0は、加算部303に供給される。加算部303には、予測値生成部304から予測値pも供給される。
予測値生成部304には、予測しないモードに設定されていることを示す情報が供給されているため(差分の基準となる観測係数yであり、固定長で圧縮されていることが規定されているため)、予測値としては“0”が加算部303に対して出力される。よって、加算部303は、差分値y0を“0”を加算した値を、復号結果、すなわち観測係数y0として、後段のスパース係数変換部28(図1)に出力する。
次の時点において、復号処理部301には、図12に示したストリームにおける差分値y0の次のデータである“0”が入力される。この“0”は、次のデータが、予測するモードに設定されているときのデータであることを示す情報である。復号処理部301は、この“0”という情報が、予測値生成部304に出力されることで、予測値生成部304は、予測するモードに設定される。
復号処理部301には、“0”という予測モードを表すデータが入力された後、可変長であり、量子化されている差分値(y1−y0)が入力される。復号処理部301は、入力された差分値(y1―y0)を、所定の復号方式で復号する。
逆量子化部302は、復号処理部301からの量子化されている差分値(y1―y0)を、逆量子化する。逆量子化部302により逆量子化された差分値(y1―y0)は、加算部303に供給される。加算部303には、予測値生成部304から予測値も供給される。
予測値生成部304には、予測するモードに設定されていることを示す情報が供給されているため、予測値生成部304は、予測値pを生成し、加算部303に対して出力する。予測値生成部304は、圧縮部23内の予測部204内の予測値生成部252と同様の処理により予測値pを生成する。
例えば、上記した予測値の第1の生成に基づき、隣接する観測係数yが予測値として出力される。この場合、差分値(y1−y0)が加算部303に供給されるときの予測値は、観測係数y0となるため、加算部303からは、差分値(y1−y0)に観測係数y0が加算された値が、復号結果、すなわち観測係数y1として、後段のスパース係数変換部28(図1)に出力される。
このような処理が、復号部27で繰り返し行われることで、観測係数yが復号される。
このように、本技術によれば、圧縮部23における圧縮に最適化したサンプリングマトリックスを設計することができる。また、圧縮部23における圧縮に最適化されたサンプリングマトリックスを用いて、圧縮部23による圧縮の前の段階で、圧縮センシングによる圧縮を行うことができる。さらに、その圧縮センシングの結果(観測係数y)を、圧縮部23で圧縮することができる。
圧縮部23における圧縮に最適化したサンプリングマトリックスは、画像の空間方向の相関を用いて設計することができる。また、画像の空間方向の相関を用いてサンプリングマトリックスを設計することで、空間的に相関が近い順序に観測係数が並ぶように設計することができる。
また圧縮部23で観測係数yを圧縮するとき、観測係数yの予測値pを生成することができる。また、その予測値pと実測値(圧縮部23に入力される観測係数y)の差分を計算し、その差分値を符号化することで圧縮することができる。よって、圧縮率をより高めることができる。この際、予測開始の先頭の係数は、予測値を用いない扱いとされる。
また圧縮部23で観測係数yを圧縮するとき、予測値pを用いるか否かのモードを設定し、予測値pを用いるときには可変長でデータを生成し、予測値pを用いないときには固定長でデータを生成するといったように、可変長と固定長を切り換える構成を有するようにすることもできる。また、モードを表すフラグを伝送する構成も有するようにすることもできる。
また、予測値pは、ブロック内の隣接係数を利用したり、複数の隣接係数を利用したり、複数の隣接係数と重みを利用したり、複数の隣接係数とその係数の位置に応じた重みを利用したりして生成される。また、予測値pは、ブロック間の隣接係数を利用したり、複数の隣接係数を利用したり、複数の隣接係数と重みを利用したり、複数の隣接係数とその係数の位置に応じた重みを利用したりして生成される。また、ブロック内、ブロック間の隣接係数を利用したり、複数の隣接係数を利用したりして生成される。
<第2の実施の形態>
次に、第2の実施の形態について説明する。上記した第1の実施の形態においては、観測係数y毎に圧縮するか否かを判定し、固定長または可変長で出力する例を挙げて説明した。第2の実施の形態においては、ブロック単位で圧縮するか否かを判定し、ブロック内の全ての観測係数yを固定長、または可変長(先頭の観測係数yは除く)で出力する。
なおここでのブロックとは、ブロック分割部21(図1)から出力されたブロックであり、例えば、4×4画素からなるブロックである。
第2の実施の形態においては、例えば、図15のAまたは図15のBに示したようなストリームが生成され、出力される。図15のAに示したストリームは、ブロック単位で固定長で出力すると判定されたときのストリームを示す。ストリームの先頭には、“量子化値”が配置される。量子化値は、そのブロック内の観測係数yを量子化したときの量子化値を表す。
第2の実施の形態においては、ブロック内の観測係数yを圧縮するときの量子化値は可変であり、ブロック内の画像の特徴により、適宜、適した量子化値が設定され、量子化される。そのため、ストリームの先頭には、ブロック内の観測係数yを量子化したときの量子化値の情報が付加されて、出力される。
“量子化値”の後には、予測するモードで圧縮されたか、予測しないモードで圧縮されたかを示す情報が出力される。第2の実施の形態においても、第1の実施の形態と同じく、予測するモードであった場合“0”が設定され、予測しないモードであった場合“1”で設定される。図15のAに示した例では、予測しないモードであったことを示す“1”が設定されている例を示した。
予測しないモードであるときに圧縮された観測係数yであるため、“1”との情報の後のデータは、固定長の観測係数yが連続して出力される。図15のAに示した例では、固定長の観測係数y0、観測係数y1、観測係数y2、観測係数y3、・・・・が連続して出力されているストリームを例示した。
図15のBに示したストリームは、ブロック単位で可変長で出力すると判定されたときのストリームを示す。ストリームの先頭には、“量子化値”が配置される。量子化値は、そのブロック内の観測係数yを量子化したときの量子化値を表す。
“量子化値”の後には、予測するモードで圧縮されたか、予測しないモードで圧縮されたかを示す情報が出力される。図15のBに示したストリームは、予測するモードであった場合であるため、“0”が設定されている。
予測するモードであるときに圧縮された観測係数yであるため、“0”との情報の後のデータは、可変長の観測係数yが連続して出力されるが、先頭の観測係数yだけは、固定長で出力される。すなわち、図15のAに示した例では、固定長の観測係数y0が出力された後、可変長の差分値(y1―y0)、差分値(y2―y1)、差分値(y3―y2)、・・・・が連続して出力されているストリームを例示した。
このように、ブロック単位で固定長または可変長とされたストリームが出力されるため、圧縮部23の構成は、図16に示すようになる。
図16は、第2の実施の形態における圧縮部23B(以下、第2の実施の形態における圧縮部であることを示すために圧縮部23Bと記述する)の構成を示す図である。圧縮部23Bは、分散値算出部401、量子化値決定部402、減算部403、量子化部404、符号化部405、逆量子化部406、加算部407、予測部408、予測モード判定部409から構成されている。
第2の実施の形態における圧縮部23Bのうち、減算部403、量子化部404、符号化部405、逆量子化部406、加算部407、予測部408に係わる構成は、第1の実施の形態における圧縮部23と基本的に同様の構成であり、その動作も基本的に同様であるため、適宜その説明は省略する。
圧縮部23Bにはランダムサンプリング部22でランダムサンプリングされた結果(観測係数y)が入力される。圧縮部23Bに入力された観測係数yは分散値算出部401、減算部403、および予測部408にそれぞれ供給される。
分散値算出部401は、入力された観測係数yから符号化の難易度を表す分散値を算出する。例えば、分散値算出部401は、1ブロック分の観測係数yから、観測係数yのバラつき、例えば、観測係数yの最小値と最大値の差分値を算出し、その値を分散値、すなわち、観測係数yがどの程度分散しているかを表す値とし、量子化値決定部402と予測モード判定部409にそれぞれ供給する。なおここでは、符号化の難易度を表す指標として、分散値を例に挙げて説明するが、分散値以外の指標を、符号化の難易度を表す指標として用いることも可能である。
量子化値決定部402は、分散値算出部401から供給された分散値により、量子化部404での量子化に用いる量子化値を決定する。量子化値決定部402は、例えば、図17に示すようなテーブル451を保持し、そのテーブル451を参照して量子化値を決定する。
図17に示したテーブル451は、分散値と量子化値が関連付けられているテーブルである。例えば、テーブル451には、分散値が閾値T1以下のときには、量子化値として、“1”が設定される(量子化なしと設定される)ことが記載されている。また、テーブル451には、分散値が閾値T1より大きく、閾値T2以下のときには、量子化値として、“2”が設定される(LSB 1bitを量子化すると設定される)ことが記載されている。
また、テーブル451には、分散値が閾値T2より大きく、閾値T3以下のときには、量子化値として、“4”が設定される(LSB 2bitを量子化すると設定される)ことが記載されている。また、テーブル451には、分散値が閾値T3より大きく、閾値T4以下のときには、量子化値として、“8”が設定される(LSB 3bitを量子化すると設定される)ことが記載されている。
さらに、テーブル451には、分散値が閾値T4より大きいときには、量子化値として、“16”が設定される(LSB 4bitを量子化すると設定される)ことが記載されている。このようなテーブル451が参照され、分散値に対応した量子化値が設定される。なお、テーブル451は、一例であり、限定を示すものではない。よって、他の方式により、量子化値が設定されても良い。
例えば、複雑な形状を有し、人間の視覚的に目立ちにくいブロックに関しては、分散値が大きくなり、量子化値が大きくなり、圧縮率が高まるように設定する(そのようなテーブル451を作成しておく)ことができる。また平坦な画像では、分散値が小さくなり、量子化値が小さくなるなど、主観的な画質を向上させるようにすることもできる。
量子化値決定部402により決定された量子化値は、量子化部404、符号化部405、および逆量子化部406に、それぞれ供給される。
量子化部404は、減算部403からの観測係数と予測値との差分値を、量子化値決定部402により決定された量子化値で、量子化し、符号化部405に出力する。符号化部405は、例えば、ハフマン符号化方式などの所定の符号化方式で、入力された差分値を符号化し、出力する。この符号化部405から出力されるストリームに関しては、図15のA、図15のBを参照して説明した通りである。
分散値算出部401からの出力は、予測モード判定部409にも供給される。予測モード判定部409は、分散値から予測をするモード、または予測しないモードのどちらに設定するかを判定する。この予測するモードとは、予測値を用いるモードであり、可変長で差分値を圧縮するモードである。
予測モード判定部409は、所定の閾値(閾値T11とする)と分散値を比較し、予測するモード(可変長モード)または予測しないモード(固定長モード)を設定する。例えば、分散値が、閾値T11以上であるとき、固定長モードに設定され、分散値が、閾値T11以下であるとき、可変長モードに設定される。分散値が閾値T11と同じ値である場合、固定値モードに設定されるようにしても良いし、可変長モードに設定されるようにしても良い。
分散値が閾値T11以上である場合、観測係数yが分散している可能性が高く、差分値が大きくなる傾向にある。差分値が大きくなると、その差分値を圧縮(符号化)したとき、圧縮率が低くなる可能性がある。よって、分散値が閾値T11以上である場合には、固定長モードとする。一方で、分散値が閾値T11以下である場合、観測係数yが分散している可能性が低く、差分値が小さくなる傾向にある。差分値が小さくなると、その差分値を圧縮(符号化)したとき、圧縮率が高くなる可能性が高い。よって、分散値が閾値T11以下である場合には、可変長モードとする。
予測モード判定部409による判定結果は、予測部408と符号化部405にそれぞれ供給される。予測モード判定部409により固定長モードに設定された場合、“1”が予測部408と符号化部405にそれぞれ供給され、可変長モードに設定された場合、“0”が予測部408と符号化部405にそれぞれ供給される。このモードに関する情報(0または1)は、図15を参照して説明したようにストリームに含まれて、復号側に供給される。
予測部408は、予測モードが予測するモード(可変長モード)に設定されている場合、予測値を生成し、減算部403に供給する。予測部408の動作は、例えば、図10に示した圧縮部23内の予測部204の動作と同じとすることができ、またその構成は、図11に示した構成とすることができる。ただし、予測モードは、予測モード判定部409から供給されるため、予測部408の構成としては不要となる。
なお、予測モード判定部409は、予測部408内に含まれるようにし、予測部408の内部構成は、基本的に図11に示した予測部204と同様の構成となるようにしても良い。
減算部403、量子化部404、符号化部405、逆量子化部406、加算部407、および予測部408における処理は、基本的に、図10の減算部201、量子化部211、符号化部202、逆量子化部212、加算部203、および予測部204における処理と基本的に同様に行われるため、ここではその説明は省略する。
ただし、量子化部404と逆量子化部406は、それぞれ量子化値決定部402により決定された量子化値で量子化、または逆量子化する点が異なる。
このように、第2の実施の形態においては、ブロック毎に適切な量子化値が設定され、量子化が行われる。例えば、主観的なエラーの目立ちやすさに応じた観測係数yの量子化値を調整することが可能となる。また、量子化値をブロック毎に可変とできるようにしたため、ストリーム中に、観測係数yを量子化した量子化値が含まれる。
また、ブロック毎に予測方法(固定長モードまたは可変長モード)を設定できる。また、ブロック毎に予測方法を設定できるようにしたため、ストリーム中に、観測係数yの圧縮時の予測方法を表すフラグが含まれる。
<第3の実施の形態>
次に第3の実施の形態について説明する。第3の実施の形態においては、高域成分と低域成分とにわけ、それぞれの成分で異なる圧縮を行う。
図18は、第3の実施の形態におけるデータ処理装置10C(第3の実施の形態におけるデータ処理装置であることを示すために、データ処理装置10Cと記述する)の構成を示す図である。なお、図1に示した第1の実施の形態におけるデータ処理装置10と同一の部分には、同一の符号を付し、適宜その説明は省略する。
データ処理装置10Cは、イメージセンサ20、ブロック分割部21、帯域分割部501、低域成分圧縮部502、記録部503、低域成分復号部504、帯域合成部505、ブロック合成部30、ランダムサンプリング部511、CSデータ圧縮部512、記録部513、CSデータ復号部514、スパース係数変換部515、画像再構成部516、サンプリングマトリックス保持部517、サンプリングマトリックス演算部518、およびスパース係数行列保持部519から構成される。
データ処理装置10Cの基本的な構成は、第1の実施の形態におけるデータ処理装置10に、帯域分割部501、低域成分圧縮部502、記録部503、低域成分復号部504、帯域合成部505を追加した構成とされている。この追加された部分は、低域成分の圧縮を行う部分である。
データ処理装置10Cのランダムサンプリング部511、CSデータ圧縮部512、記録部513、CSデータ復号部514、スパース係数変換部515、画像再構成部516、サンプリングマトリックス保持部517、サンプリングマトリックス演算部518、およびスパース係数行列保持部519は、第1の実施の形態におけるデータ処理装置10のランダムサンプリング部22、圧縮部23、記録部24、復号部27、スパース係数変換部28、画像再構成部29、サンプリングマトリックス保持部25、サンプリングマトリックス演算部26、およびスパース係数行列保持部31にそれぞれ対応している。これらの部分は、高域成分の圧縮を行う部分である。
第3の実施の形態におけるデータ処理装置10Cは、低域成分の圧縮を、一般的な圧縮方式で行い、高域成分の圧縮を、圧縮センシング(Compressive Sensing)で行う。このように、低域成分と高域成分とで異なる圧縮方式で圧縮を行うことで、それぞれの成分に適した圧縮を行うことができ、より圧縮率を高めることができる。
データ処理装置10Cのイメージセンサ20で撮像された画像の画像データは、ブロック分割部21に供給される。ブロック分割部21は、イメージセンサ20からの画像データ(画像)を、処理ブロック単位に分割し、処理ブロック単位で、帯域分割部501に供給する。帯域分割部501は、ブロック内の画素を、低域成分の画素と高域成分の画素とに分け、低域成分の画素(画素データ)を、低域成分圧縮部502に供給し、高域成分の画素(画素データ)を、ランダムサンプリング部511に供給する。
ここで、帯域分割部501の帯域分割について、図19を参照して説明する。図19では、8×8の16画素が1ブロックとされ、その1ブロックに対して帯域分割が実行される場合の低域成分と高域成分との分割について説明するための図である。図19において、斜線を付した画素が、低域成分の画素として扱われ、斜線を付していない画素が、高域成分の画素として扱われる。
図19のAに示した例では、左上に位置する画素(DC成分の画素)を含む水平方向に並ぶ1行の画素と、垂直方向に並ぶ1列の画素が低域成分とされ、その他の画素が高域成分とされる。図19のAに示した例は、水平方向と垂直方向で対象的に低域成分の画素を設定した例である。
図19のBに示した例では、左上に位置する画素(DC成分の画素)のみが低域成分とされ、その他の画素が高域成分とされる。
図19のCに示した例では、左上側に位置する3×3のDC成分の画素を含む9画素が低域成分とされ、その他の画素が高域成分とされる。
図19のDに示した例では、左上に位置する画素(DC成分の画素)を含む水平方向に並ぶ1行の画素と、垂直方向に並ぶDC成分の画素を含む5画素が低域成分とされ、その他の画素が高域成分とされる。図19のDに示した例は、水平方向と垂直方向で非対象的に低域成分の画素を設定した例である。
図19のEに示した例では、左上に位置する画素(DC成分の画素)を含む水平方向に並ぶ1行の画素を低域成分とするか、または左上に位置する画素(DC成分の画素)を含む垂直方向に並ぶ1列の画素を低域成分とするかが、所定の条件により切り替えられ、その切り替えられた結果、低域成分と設定された画素以外の画素が、高域成分とされる。
帯域分割部501は、図19に示したいずれかの方法、またはここでは例示していない他の方法により、ブロック分割部21により分割された処理ブロック単位の画素を、低域成分の画素と高域成分の画素とに分け、低域成分の画素を、低域成分圧縮部502に出力し、高域成分の画素を、ランダムサンプリング部511に出力する。
低域成分圧縮部502は、低域成分の画素を、所定の圧縮方式で圧縮し、記録部503に記録させる。低域成分圧縮部502が行う圧縮は、一般的な圧縮方式を適用することができる。例えば、隣接する画素同士の差分値を算出し、その差分値を符号化する方法や、隣接するブロック間で同一位置にある画素同士の差分値を算出し、その差分値を符号化する方法などを適用することができる。
記録部503は、低域成分の圧縮された画素を記録する。低域成分復号部504は、記録部503に記録されている低域成分の圧縮された画素を読み出し、低域成分圧縮部502の圧縮方式に対応した復号方式で、画素を復号し、帯域合成部505に出力する。
帯域合成部505は、帯域分割部501とは逆の処理を行い、低域成分の画素と高域成分の画素を合成し、1ブロック分の画像を生成し、ブロック合成部30に出力する。
一方、ランダムサンプリング部511には、帯域分割部501から、処理ブロック単位の高域成分とされた画像領域内の画素データと、サンプリングマトリックス保持部517からサンプリングマトリックスが供給される。サンプリングマトリックス保持部517に保持されているサンプリングマトリックスは、第1の実施の形態と同じく、CSデータ圧縮部512の圧縮に最適化されたサンプリングマトリックスとされている。
ランダムサンプリング部511は、高域成分の画素をサンプリングマトリックスを用いてランダムサンプリングし、観測係数yを生成し、CSデータ圧縮部512に出力する。CSデータ圧縮部512は、第1の実施の形態における圧縮部23(図1)と同様に圧縮を行う。CSデータ圧縮部512により圧縮されたデータは、記録部513に記録される。記録部513に記録されたデータは、CSデータ復号部514により読み出され、復号される。
CSデータ復号部514は、CSデータ圧縮部512による圧縮に対応する復号を行い、復号後のデータを、スパース係数変換部515に出力する。スパース係数変換部515は、スパース係数行列保持部519に保持されているスパース係数行列とサンプリングマトリックス保持部517に保持されているサンプリングマトリックスを用いて、ランダムサンプリング部511によりランダムサンプリングされる前のデータを生成する。スパース係数変換部515は、第1の実施の形態におけるスパース係数変換部28(図1)と同様に処理を行う。
ただし、スパース係数行列保持部519に保持されているスパース係数行列は、サンプリングマトリックス保持部517に保持されているサンプリングマトリックスと同じく、高域成分の画素に適したスパース係数行列とされている。スパース係数行列保持部519に保持されているスパース係数行列は、保持される前の時点で学習され、高域成分の画素に適したスパース係数行列とされている。例えば、図20に示したような学習装置により学習が行われる。
図20に示した学習装置601は、帯域分割部602、スパース係数学習部603、およびスパース係数行列保持部519を含む構成とされている。帯域分割部602は、図18に示した帯域分割部501と同じく、入力された画像(ブロックに分割された画像)を入力し、低域成分と高域成分とに分割する。
帯域分割部602により帯域分割された画像の内、高域成分に分割された画素が、スパース係数学習部603に供給される。スパース係数学習部603は、高域成分の画素を対象とした学習を行い、スパース係数行列φを生成し、スパース係数行列保持部519に保持させる。このように、高域成分の画素を対象とした学習が行われることで、高域成分の画素に特化したスパース係数行列φを生成することができる。
なお、図21を参照して後述するように、周波数変換された後の画像データに対して帯域分割し、その画像データを扱うような場合、スパース係数行列の学習時にも、周波数変換された後の画像データを扱う必要がある。よって、図示はしないが、帯域分割部602の前に、周波数変換する周波数変換部を設け、その周波数変換部により周波数変換された画像データが、帯域分割部602に入力される構成に、学習装置601はされる。
スパース係数変換部515(図18)からのスパース係数は、画像再構成部516に供給される。画像再構成部516は、供給されたスパース係数を高域成分の画像に変換し、帯域合成部505に出力する。帯域合成部505は、供給された低域成分の画像と高域成分の画像を合成することで、1ブロック分の画像データを復元し、ブロック合成部30に出力する。ブロック合成部30は、ブロック毎の画像を合成することで、元のサイズの画像を復元する。
このようにして、低域成分と高域成分に分けて圧縮を行うことで、低域成分に適した圧縮を行うことが可能となるとともに、高域成分に適した圧縮を行うことも可能となる。よって、圧縮効率をより向上させることが可能となる。
図21は、第3の実施の形態におけるデータ処理装置10Cの他の構成を示す図である。図21に示したデータ処理装置10C’(図18に示したデータ処理装置10Cと区別するためにダッシュを付して記載する)は、図18に示したデータ処理装置10Cに、周波数変換部531と逆周波数変換部532が追加された構成とされ、他の部分は同様の構成である。同様の構成の部分には、同様の符号を付し、その説明は省略する。
周波数変換部531は、ブロック分割部21によりブロック単位に分割された画像を入力し、例えば、DCTやwaveletといった周波数変換方式を適用し、入力された画像を周波数成分の画像に変換する。帯域分割部501は、周波数変換された画像に対して、低域成分の画像と高域成分の画像とに分割する処理を実行する。
逆周波数変換部532は、低域成分復号部504で復号された低域成分の画像データに対して、周波数変換部531での周波数変換処理に対応する逆周波数変換処理を実行することで、周波数成分の画像データを、周波数変換前の画像データ(低域成分の画像データ)に復元し、帯域合成部505に出力する。
このように、低域成分と高域成分に帯域分割する前の時点で、周波数変換する構成としても良い。
図21に示したデータ処理装置10C’においても、図18に示したデータ処理装置10Cと同じく、低域成分と高域成分に分けて圧縮を行うため、低域成分に適した圧縮を行うことが可能となるとともに、高域成分に適した圧縮を行うことも可能となる。よって、圧縮効率をより向上させることが可能となる。
図18に示したデータ処理装置10C、または図21に示したデータ処理装置10C’は、低域成分と高域成分に画像を分割して処理を行う。図19を参照して説明したように、低域成分と高域成分とを、画素位置により分割するような場合、換言すれば、高域成分の画素の位置や個数が同一であり、高域成分の画素の範囲の形が同一である場合、その形にあったサンプリングマトリックスを生成しておき、用いるようにすればよい。
サンプリングマトリックスは、例えば図6を参照して説明したように、2次元的に模式的に表すと、ランダムサンプリングの処理対象とされたブロック内の所定の位置の画素に0または1を適用するマトリックスである。図6では、1ブロックが4×4の16画素からなる四角形状のブロックである場合を例示したが、このような形状のサンプリングマトリックスは、高域成分に分割されたブロックが、4×4の16画素からなる四角形状のブロックである場合に適用される。
例えば、図19のBに示したように、8×8の64画素からなるブロックのうちの左上に位置する1画素だけが除外された63画素からなる形状のブロックに、8×8の64画素用のサンプリングマトリックスを適用すると、除外された左上の1画素が、ランダムサンプリン後の結果(観測係数y)に影響を与える可能性もある。
図22に示したデータ処理装置10C’は、周波数変換部531を備え、画像を周波数変換してから、低域成分と高域成分とに分割するため、高域成分に分割された画像の形状は、ブロック毎に変化する可能性がある。よって、その変化に合わせたサンプリングマトリックスが用いられるようにする必要がある。
そこで、図22を参照して説明するように、適宜サンプリングマトリックスが変更される仕組みを設けても良い。図22のAは、帯域分割部501で帯域分割された1ブロックを表す図である。図22のAにおいては、8×8の64画素を1ブロックとして扱う場合を例に挙げて説明する。
図22のAにおいて、斜線を付した画素は、低域成分に分類された画素である。図22のAに示した例では、低域成分に分類された画素は、左上のDC成分の画素を含む水平方向の1行に位置する画素と、垂直方向の1列のうち、一番下の画素を除く画素が、低域成分の画素に分類された場合を示している。
例えば、サンプリングマトリックスとしては、8×8の64画素からなる正方形のブロックを対象としたサンプリングマトリックスをサンプリングマトリックス保持部517に保持しておき、ランダムサンプリング部511でランダムサンプリングを行うときには、低域成分に分類された画素の位置は、0に設定したサンプリングマトリックスに変換してから用いるようにする。
図22のAに示したように、低域成分の画素と高域成分の画素が分類された場合、図22のBに示すように、低域成分の画素に適用するサンプリングマトリックス内の値は、0に設定されたサンプリングマトリックスが適用される。図22のBに示したサンプリングマトリックスにおいて、網掛けがされている画素の部分は、高域成分の画素に分類された画素を表し、その部分に関しては、第1の実施の形態と同じく、0から1(0または1)の値を有するマトリックスとされる。
このようにした場合、スパース係数行列は、以下のコスト式(31)で算出される。次式(31)において、Dは、周波数変換に用いられた変換係数、例えば、DCT係数である。
Figure 2017183448
図23は、第3の実施の形態におけるデータ処理装置10C”の構成を示す図である。図23に示したデータ処理装置10C”は、図21に示したデータ処理装置10C’に逆周波数変換部571を追加した構成とされている。
図23に示したデータ処理装置10C”においては、周波数ドメインの画像データから画像ドメインのデータに変換した後、ランダムサンプリングが行われる。すなわち、帯域分割部501から出力された周波数変換後の画像データであり、高域成分の画像データは、逆周波数変換部571に供給され、逆周波数変換の処理がなされることで、画素ドメインの画像データに変換される。
その後、ランダムサンプリング部511でランダムサンプリングが行われる。この場合、画素ドメインの画像データに対して、例えば、第1の実施の形態と同じランダムサンプリング処理が実行される。ただし、サンプリングの対象となる部分は、高域成分に分類された画素に対してである点は、上記した第3の実施の形態と同様である。
このように、第3の実施の形態においては、画像を構成成分(低域成分と高域成分)に分割し、異なる処理を適用して画像が圧縮される。よって、画像の構成成分にあった処理を行うことができ、より圧縮効率を高めることができる。また例えば、低域成分に対しては、一般的な画像圧縮方式を用いることができる。また例えば、高域成分に対しては、圧縮センシングを用いることができる。
また、画像を構成成分に分割するときの手法は、さまざまな手法を適用することができる。また、サンプリングマトリックスやスパース係数行列は、高域成分に特化したものとすることができるため、より高域成分に適した圧縮センシングを行うことが可能となる。
<第4の実施の形態>
次に、第4の実施の形態について説明を加える。図24は、第4の実施の形態におけるデータ処理装置10Dの構成を示す図である。図24に示したデータ処理装置10Dは、図18に示したデータ処理装置10Cと同様の構成であるが、低域成分圧縮部502から、CSデータ圧縮部512に対して、低域成分圧縮部502でのビット長に関する情報が供給される構成とされている点が異なる。
ここでは、図18に示したデータ処理装置10Cに対して、第4の実施の形態を適用した場合を例に挙げて説明を続けるが、図21に示したデータ処理装置10C’、または図23に示したデータ処理装置10C”に対して、第4の実施の形態を適用することもできる。
第4の実施の形態におけるデータ処理装置10Dによれば、画像内の特定の位置にあるブロックを即座に参照できる圧縮を行うことができる。このことについて図25を参照して説明する。
図25のAは、画像701が、ブロック単位に分割されている状態を示している。画像701は、図26に示すように、各ブロックの画像データは、可変長で圧縮されている。可変長で圧縮されているため、ブロック1、ブロック2、ブロック3、ブロック4、ブロック5、・・・は、それぞれ異なるデータ量となっている。
例えば、画像701内の42番目のブロック42にアクセスしたい場合を考える。ブロック42にアクセスするためには、ブロック1の先頭から順次アクセスし、ブロック42までたどり着く必要がある。または、各ブロックの先頭位置を表すテーブルを作成しておき、そのテーブルを参照してブロック42の先頭にアクセスするという手法も考えられる。
このようにブロックサイズの符号化長が可変である場合、ブロック42の先頭位置に直接的にアクセスするのは困難である。
図25のBは、画像702が、ブロック単位に分割されている状態を示している。画像702は、図27に示すように、各ブロックの画像データは、固定長で圧縮されている。固定長で圧縮されているため、ブロック1、ブロック2、ブロック3、ブロック4、ブロック5、・・・は、それぞれ同一のデータ量となっている。
例えば、画像702内の42番目のブロック42にアクセスしたい場合を考える。固定長圧縮の場合、圧縮後の1ブロックのデータサイズは、画像702によらず一定に保たれる。よって、ブロックデータの分割位置(ブロックの先頭位置)は、容易に確認することができ、この場合、ブロック42に直接的にアクセスすることも可能である。
例えば、1ブロックが10ビットの固定長とされている場合、ブロック42の先頭は、421ビット目であり、421ビットから430ビットがブロック42のデータであるとして読み出すことができる。よって、例えば、画像702からブロック42内の画像を切り出すといったようなときに、容易にブロック42のデータを読み出すことができる。
第4の実施の形態におけるデータ処理装置10Dは、1ブロックの画像データは、固定長となるように圧縮が行われる。すなわち、図27に示したようなストリームが生成される。
図27を再度参照する。各ブロックは、低域成分のデータと高域成分のデータとから構成されている。また、低域成分のデータと高域成分のデータで、1ブロックあたりのビット長として設定されている固定長のビット長にならなかった場合、スタッフィング(stuffing)データが入れられる。
例えば、ブロック1は、低域成分のデータ、高域成分のデータ、およびスタッフィングデータから構成されている。ブロック2は、低域成分のデータと高域成分のデータから構成され、低域成分のデータの方が、高域成分のデータよりもビット長が長い。ブロック3も、ブロック2と同じく、低域成分のデータと高域成分のデータから構成され、低域成分のデータの方が、高域成分のデータよりもビット長が長い。
ブロック4は、低域成分のデータと高域成分のデータから構成され、低域成分のデータの方が、高域成分のデータよりもビット長が短い。ブロック5は、低域成分のデータのみから構成されている。
このように、各ブロックのデータ長は、固定長で同一であるが、1ブロック内で低域成分のデータが占める割合と高域成分のデータが占める割合は、各ブロック毎に異なる。このような固定長のブロックであり、ブロック内では、低域成分のデータと高域成分のデータとの割合が異なるようなストリームは、データ処理装置10D(図24)のような構成により生成可能である。
図24に示したデータ処理装置10Dにおいて、低域成分圧縮部502は、画質を維持できる程度にまで、低域成分のデータを圧縮する。その結果、圧縮後の低域成分のビット長を、低域成分圧縮部502は、CSデータ圧縮部512に出力する。
CSデータ圧縮部512は、1ブロックあたりのビット長から、低域成分圧縮部502からのビット長を減算したビット長(以下、適宜、ターゲットビット長と記載する)以下のビット長になるように、高域成分のデータ(ランダムサンプリング後のデータ)を圧縮する。
例えば、CSデータ圧縮部512は、図10に示した圧縮部23と同じく、量子化部211を備える構成とされ、量子化部211での量子化値を、ターゲットビット長に対応する値に設定し、量子化を行う。
このように、低域成分圧縮部502とCSデータ圧縮部512で、それぞれ圧縮が行われ、1ブロックのデータが、1ブロックのデータ長として設定されているビット長に収まるように圧縮が行われる。
このような処理が、データ処理装置10Dで行われることで、図27に示したような1ブロックが固定長のストリームが生成される。よって、上記したように、画像内の所定のブロックに対してアクセスするとき、即座にアクセスできるストリームを生成することができる。
なお、第4の実施の形態においては、低域成分圧縮部502で圧縮に用いたビット長は、CSデータ圧縮部512に出力されるため、低域成分圧縮部502における圧縮は、隣接ブロックのデータは参照せず、ブロック内予測のみで行われる。
このように、第4の実施の形態においては、低域成分と高域成分をそれぞれ別に圧縮を行うが、1ブロックのビット長は固定長とした圧縮を行うことができる。このため、ランダムアクセスを可能とするストリームを生成することができる。
<記録媒体について>
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図28は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。コンピュータにおいて、CPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003は、バス1004により相互に接続されている。バス1004には、さらに、入出力インタフェース1005が接続されている。入出力インタフェース1005には、入力部1006、出力部1007、記憶部1008、通信部1009、およびドライブ1010が接続されている。
入力部1006は、キーボード、マウス、マイクロフォンなどよりなる。出力部1007は、ディスプレイ、スピーカなどよりなる。記憶部1008は、ハードディスクや不揮発性のメモリなどよりなる。通信部1009は、ネットワークインタフェースなどよりなる。ドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア1011を駆動する。
以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを、入出力インタフェース1005およびバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記憶部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記憶部1008にインストールすることができる。その他、プログラムは、ROM1002や記憶部1008に、予めインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また他の効果があってもよい。
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
なお、本技術は以下のような構成もとることができる。
(1)
圧縮センシングにより圧縮する第1の圧縮部と、
前記第1の圧縮部からの観測係数を前記第1の圧縮部とは異なる圧縮方式で圧縮する第2の圧縮部と
を備えるデータ処理装置。
(2)
前記第2の圧縮部は、前記第1の圧縮部からの観測係数と予測値との差分値を算出し、前記差分値を圧縮する
前記(1)に記載のデータ処理装置。
(3)
前記第1の圧縮部は、サンプリングマトリックスを用いたランダムサンプリングを行い、
前記サンプリングマトリックスは、前記第2の圧縮部の圧縮に最適化されている
前記(2)に記載のデータ処理装置。
(4)
前記サンプリングマトリックスは、前記差分値が小さくなるように設計されたマトリックスである
前記(3)に記載のデータ処理装置。
(5)
前記第1の圧縮部で圧縮されるデータは、画像データであり、
前記サンプリングマトリックスは、画像内の空間的な相関が高い順に、前記観測係数が並ぶように設計されたマトリックスである
前記(3)に記載のデータ処理装置。
(6)
前記サンプリングマトリックスは、RIP(Restricted Isometry Property)制約と、サンプリングマトリックスの行ベクトルと、スパース係数行列の列ベクトルが、インコヒーレントであるという制約を満たすサンプリングマトリックスとして生成され、
生成されたサンプリングマトリックスの行ベクトルを、画像内の空間的な相関が高い順に、前記観測係数が並ぶように入れ替えることで生成されたサンプリングマトリックスである
前記(3)に記載のデータ処理装置。
(7)
前記第2の圧縮部は、前記観測係数を符号化する符号化部を備える
前記(1)乃至(6)のいずれかに記載のデータ処理装置。
(8)
前記第2の圧縮部は、前記差分値を量子化する量子化部と、
前記量子化部により量子化された前記差分値を符号化する符号化部と
を備える
前記(2)乃至(6)のいずれかに記載のデータ処理装置。
(9)
前記予測値は、隣接する観測係数である
前記(2)乃至(8)のいずれかに記載のデータ処理装置。
(10)
前記観測係数と前記予測値との差分を算出し、その差分値を圧縮するモードと、前記観測係数を前記差分値として圧縮を行うモードを、前記観測係数毎に設定する
前記(2)乃至(9)のいずれかに記載のデータ処理装置。
(11)
前記第1の圧縮部で圧縮されるデータは、所定の大きさのブロックに分割された画像の画像データであり、
前記観測係数と前記予測値との差分を算出し、その差分値を圧縮するモードと、前記観測係数を前記差分値として圧縮を行うモードを、前記ブロック毎に設定する
前記(2)乃至(9)のいずれかに記載のデータ処理装置。
(12)
前記第2の圧縮部は、前記差分値を量子化する量子化部と、
前記量子化部により量子化された前記差分値を符号化する符号化部と
を備え、
前記量子化部の量子化値は、前記ブロック毎に設定される
前記(11)に記載のデータ処理装置。
(13)
前記ブロック毎に、前記観測係数の符号化難易度を算出し、
前記符号化難易度により、前記量子化値を設定する
前記(12)に記載のデータ処理装置。
(14)
前記観測係数と前記予測値との差分を算出し、その差分値を圧縮するモードと、前記観測係数を前記差分値として圧縮を行うモードを、前記ブロック毎に前記符号化難易度により設定する
前記(13)に記載のデータ処理装置。
(15)
前記第1の圧縮部で圧縮されるデータは、画像データであり、
前記画像データを低域成分と高域成分に分割する帯域分割部をさらに備え、
前記第2の圧縮部は、前記帯域分割部により分割された前記画像データのうち、前記高域成分を圧縮する
前記(1)乃至(9)のいずれかに記載のデータ処理装置。
(16)
前記低域成分は、前記圧縮センシング以外の方式で圧縮される
前記(15)に記載のデータ処理装置。
(17)
前記第1の圧縮部で圧縮されるデータは、所定の大きさのブロックに分割された画像の画像データであり、
前記ブロックは、固定長で圧縮され、
前記第2の圧縮部は、圧縮後の前記低域成分のビット長を、設定されている前記固定長のビット長から減算したビット長以内で、前記高域成分を圧縮する
前記(15)または(16)に記載のデータ処理装置。
(18)
圧縮センシングにより圧縮し、
前記圧縮の結果である観測係数を符号化する
ステップを含むデータ処理方法。
(19)
コンピュータに、
圧縮センシングにより圧縮し、
前記圧縮の結果である観測係数を符号化する
ステップを含む処理を実行させるためのプログラム。
10 データ処理装置, 20 イメージセンサ, 21 ブロック分割部, 22 ランダムサンプリング部, 23 圧縮部, 24 記録部, 25 サンプリングマトリックス保持部, 26 サンプリングマトリックス演算部, 27 復号部, 28 スパース係数変換部, 29 画像再構成部, 30 ブロック合成部, 31 スパース係数行列保持部

Claims (19)

  1. 圧縮センシングにより圧縮する第1の圧縮部と、
    前記第1の圧縮部からの観測係数を前記第1の圧縮部とは異なる圧縮方式で圧縮する第2の圧縮部と
    を備えるデータ処理装置。
  2. 前記第2の圧縮部は、前記第1の圧縮部からの観測係数と予測値との差分値を算出し、前記差分値を圧縮する
    請求項1に記載のデータ処理装置。
  3. 前記第1の圧縮部は、サンプリングマトリックスを用いたランダムサンプリングを行い、
    前記サンプリングマトリックスは、前記第2の圧縮部の圧縮に最適化されている
    請求項2に記載のデータ処理装置。
  4. 前記サンプリングマトリックスは、前記差分値が小さくなるように設計されたマトリックスである
    請求項3に記載のデータ処理装置。
  5. 前記第1の圧縮部で圧縮されるデータは、画像データであり、
    前記サンプリングマトリックスは、画像内の空間的な相関が高い順に、前記観測係数が並ぶように設計されたマトリックスである
    請求項3に記載のデータ処理装置。
  6. 前記サンプリングマトリックスは、RIP(Restricted Isometry Property)制約と、サンプリングマトリックスの行ベクトルと、スパース係数行列の列ベクトルが、インコヒーレントであるという制約を満たすサンプリングマトリックスとして生成され、
    生成されたサンプリングマトリックスの行ベクトルを、画像内の空間的な相関が高い順に、前記観測係数が並ぶように入れ替えることで生成されたサンプリングマトリックスである
    請求項3に記載のデータ処理装置。
  7. 前記第2の圧縮部は、前記観測係数を符号化する符号化部を備える
    請求項1に記載のデータ処理装置。
  8. 前記第2の圧縮部は、前記差分値を量子化する量子化部と、
    前記量子化部により量子化された前記差分値を符号化する符号化部と
    を備える
    請求項2に記載のデータ処理装置。
  9. 前記予測値は、隣接する観測係数である
    請求項2に記載のデータ処理装置。
  10. 前記観測係数と前記予測値との差分を算出し、その差分値を圧縮するモードと、前記観測係数を前記差分値として圧縮を行うモードを、前記観測係数毎に設定する
    請求項2に記載のデータ処理装置。
  11. 前記第1の圧縮部で圧縮されるデータは、所定の大きさのブロックに分割された画像の画像データであり、
    前記観測係数と前記予測値との差分を算出し、その差分値を圧縮するモードと、前記観測係数を前記差分値として圧縮を行うモードを、前記ブロック毎に設定する
    請求項2に記載のデータ処理装置。
  12. 前記第2の圧縮部は、前記差分値を量子化する量子化部と、
    前記量子化部により量子化された前記差分値を符号化する符号化部と
    を備え、
    前記量子化部の量子化値は、前記ブロック毎に設定される
    請求項11に記載のデータ処理装置。
  13. 前記ブロック毎に、前記観測係数の符号化難易度を算出し、
    前記符号化難易度により、前記量子化値を設定する
    請求項12に記載のデータ処理装置。
  14. 前記観測係数と前記予測値との差分を算出し、その差分値を圧縮するモードと、前記観測係数を前記差分値として圧縮を行うモードを、前記ブロック毎に前記符号化難易度により設定する
    請求項13に記載のデータ処理装置。
  15. 前記第1の圧縮部で圧縮されるデータは、画像データであり、
    前記画像データを低域成分と高域成分に分割する帯域分割部をさらに備え、
    前記第2の圧縮部は、前記帯域分割部により分割された前記画像データのうち、前記高域成分を圧縮する
    請求項1に記載のデータ処理装置。
  16. 前記低域成分は、前記圧縮センシング以外の方式で圧縮される
    請求項15に記載のデータ処理装置。
  17. 前記第1の圧縮部で圧縮されるデータは、所定の大きさのブロックに分割された画像の画像データであり、
    前記ブロックは、固定長で圧縮され、
    前記第2の圧縮部は、圧縮後の前記低域成分のビット長を、設定されている前記固定長のビット長から減算したビット長以内で、前記高域成分を圧縮する
    請求項15に記載のデータ処理装置。
  18. 圧縮センシングにより圧縮し、
    前記圧縮の結果である観測係数を符号化する
    ステップを含むデータ処理方法。
  19. コンピュータに、
    圧縮センシングにより圧縮し、
    前記圧縮の結果である観測係数を符号化する
    ステップを含む処理を実行させるためのプログラム。
JP2018513100A 2016-04-19 2017-04-05 データ処理装置、データ処理方法、プログラム Pending JPWO2017183448A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2016083836 2016-04-19
JP2016083836 2016-04-19
PCT/JP2017/014166 WO2017183448A1 (ja) 2016-04-19 2017-04-05 データ処理装置、データ処理方法、プログラム

Publications (1)

Publication Number Publication Date
JPWO2017183448A1 true JPWO2017183448A1 (ja) 2019-02-21

Family

ID=60116802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018513100A Pending JPWO2017183448A1 (ja) 2016-04-19 2017-04-05 データ処理装置、データ処理方法、プログラム

Country Status (3)

Country Link
US (1) US10812790B2 (ja)
JP (1) JPWO2017183448A1 (ja)
WO (1) WO2017183448A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110858191A (zh) * 2018-08-24 2020-03-03 北京三星通信技术研究有限公司 文件处理方法、装置、电子设备及可读存储介质
JP7272625B2 (ja) * 2019-01-08 2023-05-12 国立大学法人大阪大学 動画像処理方法及び動画像処理装置
US11468542B2 (en) * 2019-01-18 2022-10-11 Arizona Board Of Regents On Behalf Of Arizona State University LAPRAN: a scalable Laplacian pyramid reconstructive adversarial network for flexible compressive sensing reconstruction
CN110113614B (zh) * 2019-05-13 2022-04-12 格兰菲智能科技有限公司 图像处理方法及图像处理装置
WO2021010687A1 (ko) * 2019-07-12 2021-01-21 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
US11818479B2 (en) 2020-05-14 2023-11-14 Board Of Trustees Of Michigan State University Sigma Delta quantization for images
CN111918062B (zh) * 2020-07-24 2022-08-05 上海定九康科技股份有限公司 一种高压缩率高还原性的本帧数据压缩解压缩方法
CN116112383A (zh) * 2022-12-05 2023-05-12 中信银行股份有限公司 一种物联网多通道联合压缩感知和传输方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07321666A (ja) * 1994-05-27 1995-12-08 Fuji Photo Film Co Ltd 符号長変換装置
JPH10155152A (ja) * 1996-09-25 1998-06-09 Matsushita Electric Ind Co Ltd 画像圧縮符号化装置及び方法
JP2002517851A (ja) * 1998-06-08 2002-06-18 マイクロソフト コーポレイション 時間依存ジオメトリの圧縮
JP2013517681A (ja) * 2010-01-15 2013-05-16 トムソン ライセンシング 圧縮センシングを用いるビデオコーディング
JP2015109595A (ja) * 2013-12-05 2015-06-11 パナソニックIpマネジメント株式会社 撮像システム、撮像装置、および撮像方法
JP2015220687A (ja) * 2014-05-20 2015-12-07 日本電気株式会社 信号処理システム、復元装置、圧縮装置、信号処理方法、復元方法、および、コンピュータ・プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6094455A (en) 1996-09-25 2000-07-25 Matsushita Electric Industrial Co., Ltd. Image compression/encoding apparatus and system with quantization width control based on bit generation error
WO2014194482A1 (zh) * 2013-06-05 2014-12-11 中国科学院微电子研究所 基于压缩感知理论的气体识别方法
WO2014194485A1 (zh) * 2013-06-05 2014-12-11 中国科学院微电子研究所 一种以低于奈奎斯特频率的采样频率进行信号采集方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07321666A (ja) * 1994-05-27 1995-12-08 Fuji Photo Film Co Ltd 符号長変換装置
JPH10155152A (ja) * 1996-09-25 1998-06-09 Matsushita Electric Ind Co Ltd 画像圧縮符号化装置及び方法
JP2002517851A (ja) * 1998-06-08 2002-06-18 マイクロソフト コーポレイション 時間依存ジオメトリの圧縮
JP2013517681A (ja) * 2010-01-15 2013-05-16 トムソン ライセンシング 圧縮センシングを用いるビデオコーディング
JP2015109595A (ja) * 2013-12-05 2015-06-11 パナソニックIpマネジメント株式会社 撮像システム、撮像装置、および撮像方法
JP2015220687A (ja) * 2014-05-20 2015-12-07 日本電気株式会社 信号処理システム、復元装置、圧縮装置、信号処理方法、復元方法、および、コンピュータ・プログラム

Also Published As

Publication number Publication date
US20190132586A1 (en) 2019-05-02
US10812790B2 (en) 2020-10-20
WO2017183448A1 (ja) 2017-10-26

Similar Documents

Publication Publication Date Title
WO2017183448A1 (ja) データ処理装置、データ処理方法、プログラム
JP5957561B2 (ja) 大きいサイズの変換単位を用いた映像符号化、復号化方法及び装置
JP5027936B2 (ja) 適応スキャン順序付けのための方法、記録媒体、プログラム、及び処理装置。
Mishra et al. Wavelet-based deep auto encoder-decoder (wdaed)-based image compression
JP2013179707A (ja) 大きいサイズの変換単位を利用した映像符号化、復号化方法及び装置
JP3959039B2 (ja) 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、及び画像復号プログラム
US9451291B1 (en) Fast DWT-based intermediate video codec optimized for massively parallel architecture
Song et al. Novel near-lossless compression algorithm for medical sequence images with adaptive block-based spatial prediction
CN113747163A (zh) 基于上下文重组建模的图像编码、解码方法及压缩方法
KR102113904B1 (ko) 보간을 이용한 연산 방법, 인코더, 및 디코더
T Hashim et al. Color image compression using DPCM with DCT, DWT and quadtree coding scheme
JP2009296277A (ja) 画像符号化器及び画像復号化器及び画像符号化方法及び画像復号化方法及びプログラム
JP2005124001A (ja) 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法、及び動画像復号プログラム
JP2015076765A (ja) 画像処理装置及びその制御方法、並びに、コンピュータプログラム
Hussain et al. A Pixel Based Method for Image Compression
Iwasokun Lossless JPEG-Huffman model for digital image compression
JP6388476B2 (ja) 符号化装置及びプログラム
Pradhan et al. A comparative analysis of compression techniques–the sparse coding and BWT
JP7265114B2 (ja) 予測画像取得装置、原信号取得装置、予測画像取得方法及びプログラム
JP6846134B2 (ja) 映像符号化装置及び映像復号装置
JP2018198402A (ja) 符号化装置、復号装置、及びプログラム
JP7453561B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、及びプログラム
EP3644515B1 (en) Encoding device, decoding device, encoding method, decoding method and program
Padmashree et al. Comparative analysis of JPEG compression and fractal image compression for medical images
Deng An interpolative subband coding algorithm for lossless image compression

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210413

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211019