JP4161676B2 - 信号処理装置、その方法およびそのプログラム - Google Patents
信号処理装置、その方法およびそのプログラム Download PDFInfo
- Publication number
- JP4161676B2 JP4161676B2 JP2002304570A JP2002304570A JP4161676B2 JP 4161676 B2 JP4161676 B2 JP 4161676B2 JP 2002304570 A JP2002304570 A JP 2002304570A JP 2002304570 A JP2002304570 A JP 2002304570A JP 4161676 B2 JP4161676 B2 JP 4161676B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- pixel
- circuit
- rounding
- bit length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
【発明の属する技術分野】
本発明は、入力ビット長が規定された演算手段を用いた信号処理装置、その方法およびそのプログラムに関する。
【0002】
【従来の技術】
近年、画像信号をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMEPG(Moving Picture Experts Group)などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。
【0003】
特に、MPEG2(ISO/IEC13818−2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマー用途の広範なアプリケーションに現在広く用いられている。
MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4〜8Mbps、1920×1088画素を持つ高解像度の飛び越し走査画像であれば18〜22Mbpsの符号量(ビットレート)を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
【0004】
MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC14496−2としてその規格が国際標準に承認された。
【0005】
さらに、近年、当初テレビ会議用の画像符号化を目的として、H. 26L (ITU−T Q6/16 VCEG)という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26L規格ではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced−Compression Video Codingとして行われている。
【0006】
このようなH.26L規格の符号化および復号では、符号化効率を上げるために、1/4および1/8画素精度など高い画素精度で動き予測・補償処理が行われる。
この場合に、動き予測・補償処理において、フレームメモリから整数精度の複数の画素信号(原画素信号)を読み出し、当該整数精度の画素信号をFIRフィルタ処理して1/4および1/8画素精度の補間画素信号を生成し、上記整数精度の画素信号および上記補間画素信号によって構成される1/4および1/8画素精度の画像信号を用いて動きベクトルの生成を行う。
上述したFIRフィルタ処理は、例えば、入力ビット長が16ビットのプロセッサを用いて行われる。
ところで、上記プロセッサは、上述した1/8画素精度の補間画素信号を生成する場合に、整数精度の8ビットの画素信号を入力し、当該8ビットの画素信号に8タップFIRフィルタ処理を行って水平方向に補間された18ビットの補間画素信号を生成し、これをメモリに格納する。
そして、上記プロセッサが、上記メモリから読み出した上記水平方向に補間された18ビットの補間画素信号を入力し、当該補間画素信号に8タップFIRフィルタ処理を行ってさらに垂直方向に補間された上記1/8画素精度の補間画素信号を生成する。そのため、プロセッサの開発に多大な労力が必要になるという問題がある。
【0007】
【発明が解決しようとする課題】
しかしながら、上述した1/8画素精度の補間画素信号の生成では、垂直方向の補間を行うために、水平方向に補間された18ビットの補間画素信号を上記プロセッサに入力する必要があり、上記プロセッサとして16ビットの入力ビット長を有する汎用のプロセッサを用いることができない。
【0008】
本発明はかかる事情に鑑みてなされたものであり、その目的は、所定の演算の過程で得られる中間信号(第3の信号)を演算手段で生成および出力し、続いて当該中間信号を演算手段に入力して演算を行って上記所定の演算を行う場合に、当該中間信号を入力して処理する演算手段の入力ビット長に上記中間信号を適合させることができる信号処理装置、その方法およびそのプログラムを提供することにある。
【0009】
【課題を解決するための手段】
上述した目的を達成するために、第1の発明の信号処理装置は、入力ビット長が規定された単数または複数の演算手段を有し、前記単数または複数の演算手段の内の第1の演算手段が、前記入力ビット長以下の第1のビット長の第1の信号を入力し、当該第1の信号に所定の処理を施して第2の信号を生成し、前記第2の信号に丸め処理を行って前記入力ビット長以下の第3の信号を生成し、前記第3の信号を出力し、前記第1の演算手段または第2の演算手段が、前記第1の演算手段が出力した前記第3の信号を入力して次の処理を実行する。
【0010】
前記単数または複数の演算手段の内の第1の発明の信号処理装置の作用は以下のようになる。
第1の演算手段が、当該第1の演算手段の入力ビット長以下の第1のビット長の第1の信号を入力し、当該第1の信号に所定の処理を施して第2の信号を生成する。
そして、前記第1の演算手段が、前記第2の信号に丸め処理を行って前記入力ビット長以下の第3の信号を生成し、前記第3の信号を出力する。
そして、前記第1の演算手段または第2の演算手段が、前記第1の演算手段が出力した前記第3の信号を入力して次の処理を実行する。
【0011】
また、第1の信号処理装置は、好ましくは、丸め誤差調整信号を生成する丸め制御手段をさらに有し、前記第1の演算手段は、前記丸め制御手段が生成した前記丸め誤差調整信号を基に、前記第2の信号に丸め処理を行って前記第3の信号を生成する。
【0012】
また、第1の信号処理装置は、記憶回路から読み出された第1の画像信号の画素信号を補間して得られた第2の画像信号を用いて所定の画像信号の動きベクトルを生成するために、前記第2の画像信号を構成する補間された画素信号を生成する場合に、前記第1の演算手段は、前記第1の画像信号の前記入力ビット長の第1の画素信号を前記第1の信号として入力し、当該第1の画素信号を用いて水平方向の補間演算を行って、水平方向に補間された前記第2の信号としての第2の画素信号を生成し、前記第2の画素信号に丸め処理を行って、前記入力ビット長以下の前記第3の信号としての第3の画素信号を生成し、前記第3の画素信号を出力して前記第1の画素信号として当該第1の演算手段または第2の前記演算手段に入力させ、前記第1の演算手段または前記第2の演算手段は、前記第1の演算手段が出力した前記第3の画素信号を入力し、当該第3の画素信号を用いて垂直方向の補間演算を行って、垂直方向に補間された第4の画素信号を生成する。
【0013】
第2の発明の信号処理方法は、入力ビット長が規定された単数または複数の演算手段を用いた信号処理方法であって、前記単数または複数の演算手段の内の第1の演算手段が、前記入力ビット長以下の第1のビット長の第1の信号を入力し、当該第1の信号に所定の処理を施して第2の信号を生成する第1の工程と、前記第1の演算手段が、前記第1の工程で生成した前記第2の信号に丸め処理を行って前記入力ビット長以下の第3の信号を生成し、前記第3の信号を出力する第2の工程と、前記第1の演算手段または第2の演算手段が、前記第2の工程で前記第1の演算手段が出力した前記第3の信号を入力して次の処理を実行する第3の工程とを有する。
【0014】
第3の発明のプログラムは、入力ビット長が規定された単数または複数の演算手段を用いた信号処理装置が実行するプログラムであって、前記単数または複数の演算手段の内の第1の演算手段が、前記入力ビット長以下の第1のビット長の第1の信号を入力し、当該第1の信号に所定の処理を施して第2の信号を生成する第1の手順と、前記第1の演算手段が、前記第1の手順で生成した前記第2の信号に丸め処理を行って前記入力ビット長以下の第3の信号を生成し、前記第3の信号を出力する第2の手順と、前記第1の演算手段または第2の演算手段が、前記第2の手順で前記第1の演算手段が出力した前記第3の信号を入力して次の処理を実行する第3の手順とを有する。
【0015】
【発明の実施の形態】
以下、本発明の実施形態を説明する。
【0016】
〔本発明の関連技術〕
図1は、本発明の関連技術に係わる符号化装置500の機能ブロック図である。
図1に示す符号化装置500において、入力となる画像信号は、まず、A/D変換回路501においてデジタル信号に変換される。次に、出力となる画像圧縮情報のGOP(Group of Pictures)構造に応じ、画面並べ替え回路502においてフレームの並べ替えが行われる。
そして、イントラ符号化が行われる画像に関しては、フレーム全体の画像情報が直交変換回路504に入力され、直交変換回路504において離散コサイン変換やカルーネン・レーベ変換等の直交変換が施される。
直交変換回路504の出力となる変換係数は、量子化回路505において量子化処理される。
量子化回路505の出力となる、量子化された変換係数は、可逆変換回路506に入力され、ここで可変長符号化、算術符号化等の可逆符号化が施された後、バッファ507に蓄積され、圧縮された画像信号として出力される。
量子化回路505における量子化レートは、レート制御回路512によって制御される。同時に、量子化回路505の出力となる、量子化された変換係数は、逆量子化回路508に入力され、さらに逆直交変換回路509において逆直交変換処理が施されて、復号された画像信号となり、その画像信号はフレームメモリ510に蓄積される。
【0017】
一方、インター符号化が行われる画像に関しては、先ず、その画像信号は動き予測・補償回路511に入力される。同時に参照となる画像信号がフレームメモリ510より読み出され、動き予測・補償回路511によって動き予測・補償処理が施され、予測画像信号が生成される。予測画像信号は演算回路503に出力され、演算回路503において、画面並べ替え回路502からの画像信号と、動き予測・補償回路511からの予測画像信号との差分信号である画像信号が生成され、当該画像信号が直交変換回路504に出力される。
また、動き補償・予測回路511は、動きベクトルMVを可逆符号化回路506に出力し、可逆符号化回路506において、動きベクトルMVが可変長符号化あるいは算術符号化といった可逆符号化処理され、画像信号のヘッダ部に挿入される。その他の処理はイントラ符号化を施される画像信号と同様である。
【0018】
H.26Lにおいて、1/4,1/8画素精度の動き予測補償が規定されている。
先ず、動き予測・補償回路511による1/4画素精度の動き予測補償について説明する。
1/4画素精度の動き補償予測では、整数画素の画素信号から、1/4画素精度の補間画素信号を生成する。
図2は、当該1/4画素精度の補間画素信号の生成方法を説明するための図である。
この場合には、図2に示す画素位置(位相)Aの画素信号から、1/2画素位置(補間画素位置)bの補間画素信号が、6タップのFIRフィルタによって生成される。
この場合に、フィルタ係数{1,−5,20,20,−5,1}が用いられる。
そして、補間画素位置bの補間画素信号Sbが、(Sb+16)/32に相当する正規化処理を行い、〔0,255〕の範囲でクリッピング処理される。
また、上記正規化処理される前の補間画素位置bの補間用画素信号に、6タップフィルタ処理を行い補間画素位置cの補間画素信号Scを生成し、(Sc+512)/1024に相当する正規化処理を行い、その結果を〔0,255〕の範囲でクリッピングして図2に示す補間画素位置cの補間画素信号Scを生成する。
【0019】
また、下記式(1),(2),(3),(4),(5)に基づいて、補間画素位置d,g,e,f,iの補間用画素信号Sd,Sg,Se,Sf,Siを、各補間画素位置の近傍の位置の画素位置Aの整数精度の画素信号SA、並びに補間画素位置bの補間画素信号Sbを用いて生成する。
【0020】
【数1】
Sd=(SA+Sb)/2 …(1)
【0021】
【数2】
Sg=(Sb+Sc)/2 …(2)
【0022】
【数3】
Se=(SA+Sb)/2 …(3)
【0023】
【数4】
Sf=(Sb+Sc)/2 …(4)
【0024】
【数5】
Si=(SA1+SA2+SA3+SA4+2)/4…(5)
【0025】
動き予測・補償回路511は、動きベクトルの検出対象の画像の画像信号S502と、参照画像の画像信号S510について生成された1/4画素精度の画像信号とを用いて、動きベクトルMVを生成する。
また、動き予測・補償回路511は、動きベクトルMVと参照画像に対応する画像信号とを用いて1/4画素精度で予測画像信号を生成し、これを演算回路503に出力する。
【0026】
次に、動き予測・補償回路511による1/8画素精度の動き予測補償について説明する。
1/8画素精度の動き補償予測では、整数画素の画素信号から、1/8画素精度の補間画素信号を生成する。
図3は、当該1/8画素精度の補間画素信号の生成方法を説明するための図である。
動き予測・補償回路511は、以下に示すように、図3に示す整数画素精度の画素位置A(A1,A2,...)の画素信号SA(SA1,SA2,...)を用いて、小数画素精度の補間画素位置b(b1,b2,...),c(c11,c12,c13,...),d,e,f,gの補間画素信号Sb,Sc,Sd,Se,Sf,Sgを生成する。
〔補間画素信号Scの生成〕
動き予測・補償回路511は、図4に示すように、先ず、フレームメモリ510から読み出した原画素である整数画素精度の画素位置A1〜A8の各々8ビットの画素信号SA1〜SA8(画素信号S510)を用いて8タップのFIR(Finite Impulse Response) フィルタ演算を行うことで、水平方向の画素補間演算を行い、図3に示す補間画素位置b(b1,b2,b3,...)の18ビットの補間画素信号Sb(Sb1,Sb2,Sb3,...)を生成する。
すなわち、補間演算回路45は、下記(6)に示されるように、水平方向に連続して位置する8画素分の整数精度の画素位置A1〜A8の画素信号SA1〜SA8を用いて、画素信号SA1〜SA8のそれぞれに下記(7)で規定される係数a1〜a8を乗じて、1/4,2/4,3/4画素位置b(b1,b2,b3)の18ビットの補間画素信号Sb(Sb1,Sb2,Sb3)を生成する。
【0027】
【数6】
Sb=(a1・SA1+a2・SA2+a3・SA3+a4・SA4+a5・SA5+a6・SA6+a7・SA7+a8・SA8)…(6)
【0028】
【数7】
【0029】
次に、動き予測・補償回路511は、図4に示すように、上述した水平方向の画素補間演算で得られた18ビットの補間画素信号Sbを用いて8タップのFIRフィルタ演算を行うことで、垂直方向の画素補間演算を行い、図3に示す補間画素位置c(c11,c21,c31...)の26ビットの補間画素信号Scを生成する。
すなわち、補間演算回路45は、図3に示す垂直方向に連続した8画素分の各々18ビットの補間画素信号Sbのそれぞれに上記(7)で規定される係数a1〜a8を乗算し、これらを加算して補間画素位置c(c11,c21,c31,...)の26ビットの補間画素信号Sc(Sc11,Sc21,Sc31,...)を生成する。
【0030】
動き予測・補償回路511は、上述したように生成した補間画素位置b,cの補間画素信号Sb,Scを、それぞれ(Sb+128)/256および(Sc+32768)/65536に相当する正規化処理を行い、〔0,255〕の範囲でクリッピングして生成した補間用画素信号Sb',Sc'を生成する。
また、動き予測・補償回路511は、上記補間用画素信号Sb',Sc'、並びにフレームメモリ510から入力した整数画素精度の画像信号S510内の画素信号を用いて、図3に示す補間画素位置d,e,f,gの補間画素信号Sd,Se,Sf,Sgを生成する。
【0031】
具体的には、動き予測・補償回路511は、1/8画素の補間位置の補間用画素信号を図5に示すアルゴリズムに基づいて生成する。
動き予測・補償回路511は、図3に示す補間画素位置dの補間画素信号Sdを、水平方向若しくは垂直方向でもっとも近くの位相に存在する画素位置Aの画素信号SA、補間画素位置bあるいはcの2つの補間画素信号Sb,Scの平均を計算して生成する。
【0032】
また、動き予測・補償回路511は、図3に示す1/8画素精度の位相に対応する補間画素位置eの補間画素信号Seを、補間画素位置b1に対応する補間画素信号を用いて、平均処理及び丸め処理を行って生成する。
また、動き予測・補償回路511は、図3に示す補間画素位置gに対応する補間画素信号Sgを、「(SA+3・Sc22)+2)/4」の演算を行って生成する。また、補間演算回路45は、図3に示す補間画素位置fに対応する補間画素信号Sfを、その対角線に沿って、「(3・Sb1+Sb1+2)/4」の演算を行って生成する。
【0033】
動き予測・補償回路511は、上述したようにして生成した補間画素信号Sb,Sc,Sd,Se,Sf,Sgと、整数画素制度の当該補間画素信号と、画像信号S510内の画素信号とを用いて構成される1/8画素精度の画像信号を基に、動きベクトル生成、並びに予測画像生成を行う。
【0034】
ところで、動き予測・補償回路511では、上述した補間画素信号Scの生成を、所定の入力ビット長を持つプロセッサを用いて行う。
すなわち、上記プロセッサで上記水平補間演算を行って水平方向に補間された18ビットの補間画素信号を生成し、これをメモリに格納する。そして、上記プロセッサが、上記水平方向に補間された18ビットの補間画素信号を上記メモリから読み出し、これを用いて上記垂直補間演算を行って、垂直方向に補間された26ビットの補間画素信号を生成および出力する。
動き予測・補償回路511は、例えば、SIMD方式のプロセッサを用いて、上述した8タップフィルタ演算を構成する積和演算を並列に実行する。
ここで、汎用のSIMD方式のプロセッサを構成する各々のPE(Processor Element)は、16ビットの入力ビット長を有している。
【0035】
図6は、SIMD方式のプロセッサを用いて、上述した水平方向に補間された補間画素信号の説明を行う手順を説明するための図である。
SIMD方式のプロセッサのPE1〜PE4に、8ビットの画素信号SA1〜SA4、並びにフィルタ係数a1〜a4がそれぞれ並列に入力され、積和演算処理が並列に行われ、信号「SA1*a1+SA2*a2」および「SA3*a3+SA4*a4」が生成され、これがプロセッサ内のレジスタに格納される。
PE1〜PE4に、画素信号SA5〜SA8、並びにフィルタ係数a5〜a8がそれぞれ並列に入力され、積和演算処理が並列に行われ、信号「SA5*a5+SA6*a6」および「SA7*a7+SA8*a8」が生成され、これが上記レジスタに格納される。
次に、例えばPE1が、上記レジスタから読み出した信号「SA1*a1+SA2*a2」と「SA3*a3+SA4*a4」とを加算して、信号「SA1*a1+SA2*a2+SA3*a3+SA4*a4」を生成し、これを上記プロセッサの外部に出力してメモリに格納する。
しかしながら、上述したプロセッサでは、水平方向の画素補間演算において、上述したよう18ビットの補間画素信号を生成し、これをプロセッサ外部のメモリに格納するため、垂直方向の画素補間演算を行うプロセッサとして、18ビット以上の入力ビット長を有するプロセッサを用いる必要があり、汎用のSIMD方式のプロセッサを用いることができないという問題がある。
【0036】
図7は、図1に示す符号化装置500に対応する復号回路602の機能ブロック図である。
図7に示す復号回路602では、入力となる画像信号がバッファ613に格納された後、可逆復号回路614に出力される。そして、可逆復号回路614において、定められた画像圧縮情報のフォーマットに基づき、可変長復号化、算術復号化等の処理が行われる。同時に、当該フレームがインター符号化されたものである場合には、可逆復号回路614において、画像信号のヘッダ部に格納された動きベクトルMVも復号され、その動きベクトルMVが動き予測・補償装置620に出力される。
【0037】
可逆復号回路614の出力となる、量子化された変換係数は、逆量子化回路615に入力され、ここで変換係数が生成される。当該変換係数には、逆直交変換回路616において、定められた画像圧縮情報のフォーマットに基づき、逆離散コサイン変換や逆カルーネン・レーベ変換等の逆直交変換が施される。当該フレームがイントラ符号化されたものである場合には、逆直交変換処理が施された画像情報は画面並べ替え回路618に格納され、D/A変換回路619によるD/A変換処理を経て出力される。
【0038】
一方、当該フレームがインター符号化されたものである場合には、動き予測・補償回路620において生成された動きベクトルMV、及びフレームメモリ621に格納された参照用の画像信号を基に予測画像信号が生成され、この予測画像信号と、逆直交変換回路616から出力された画像信号とが加算器617において加算される。その他の処理はイントラ符号化されたフレームと同様である。
【0039】
上述した動き予測・補償回路620では、予測画像信号を生成するために、フレームメモリ621から読み出した整数画素精度の画素信号を用いて、前述した図1に示す動き予測・補償回路511と同じ手法で、1/4および1/8画素精度の補間画素信号を生成する。
そのため、動き予測・補償回路511と同様の上述した問題がある。
【0040】
以下、上述した関連技術の問題を解決する本発明の実施の形態について説明する。
第1実施形態
以下、本発明の実施形態について説明する。
図8は、本実施形態の通信システム1の概念図である。
図8に示すように、通信システム1は、送信側に設けられた符号化装置2と、受信側に設けられた復号装置3とを有する。
通信システム1では、送信側の符号化装置2において、離散コサイン変換やカルーネン・レーベ変換などの直交変換と動き補償によって圧縮した画像信号(ビットストリーム)を生成し、当該画像信号を変調した後に、衛星放送波、ケーブルTV網、電話回線網、携帯電話回線網などの伝送媒体を介して送信する。
受信側では、受信した画像信号を復調した後に、上記変調時の直交変換の逆変換と動き補償によって伸張した画像信号を生成して利用する。
なお、上記伝送媒体は、光ディスク、磁気ディスクおよび半導体メモリなどの記録媒体であってもよい。
なお、本実施形態では、符号化装置2および復号装置3において1/8画素精度で動き予測・補償を行う場合を説明する。
【0041】
図9は、図8に示す符号化装置2の全体構成図である。
図9に示すように、符号化装置2は、例えば、A/D変換回路22、画面並べ替え回路23、演算回路24、直交変換回路25、量子化回路26、可逆符号化回路27、バッファ28、逆量子化回路29、逆直交変換回路30、フレームメモリ31、レート制御回路32、丸め制御回路33および動き予測・補償回路35を有する。
ここで、例えば、符号化装置2が本発明の信号処理装置に対応し、動き予測・補償回路35が本発明の演算手段に対応し、丸め制御回路33が本発明の丸め制御手段に対応し、フレームメモリ31が本発明の記憶回路に対応している。
【0042】
符号化装置2は、動き予測・補償回路35が、前述した関連技術で説明した1/8画素精度の補間画素信号を生成する場合に、水平方向の画素補間演算で、水平方向の補間画素信号が16ビットになるように丸め処理を行うことを特徴としている。これにより、16ビットの入力ビット長を有する汎用のプロセッサを用いて、垂直方向の画素補間演算を行うことができる。
動き予測・補償回路35は、丸め制御回路33からの丸め誤差調整信号runを基に上記丸め処理を行う。
【0043】
以下、符号化装置2の構成要素について説明する。
A/D変換回路22は、入力されたアナログの輝度信号Y、色差信号Pb,Prから構成される画像信号をデジタルの画像信号に変換し、これを画面並べ替え回路23に出力する。
画面並べ替え回路23は、A/D変換回路22から入力した画像信号内のフレーム画像信号を、そのピクチャタイプI,P,BからなるGOP(Group Of Pictures) 構造に応じて、符号化する順番に並べ替えた画像信号S23を演算回路24および動き予測・補償回路35に出力する。
【0044】
演算回路24は、画像信号S23内のフレーム画像信号がインター(Inter) 符号化される場合には、当該フレーム画像信号と、動き予測・補償回路35から入力した予測画像信号S35aとの差分を示す信号S24を生成し、これを直交変換回路25に出力する。
また、演算回路24は、画像信号S23内のフレーム画像信号がイントラ(Intra) 符号化される場合には、当該フレーム画像信号を信号S24として直交変換回路25に出力する。
直交変換回路25は、信号S24に離散コサイン変換やカルーネン・レーベ変換などの直交変換を施して画像信号(例えばDCT係数信号)S25を生成し、これを量子化回路26に出力する。
量子化回路26は、レート制御回路32から入力した量子化スケールで、画像信号S25を量子化して信号S26を生成し、これを可逆符号化回路27および逆量子化回路29に出力する。
【0045】
可逆符号化回路27は、信号S26を可変長符号化あるいは算術符号化した信号をバッファ28に格納する。
このとき、可逆符号化回路27は、動き予測・補償回路35から入力した動きベクトルMVあるいはその差分を符号化してスライスヘッダなどのヘッダデータに格納する。
また、可逆符号化回路27は、後述する動き予測・補償回路35の処理によって得られたフィルタ選択情報をヘッダデータなどに格納してもよい。
バッファ28に格納された信号は、変調等された後に送信される。
逆量子化回路29は、信号S26を逆量子化した信号を生成し、これを逆直交変換回路30に出力する。
逆直交変換回路30は、逆量子化回路29から入力した信号に、上記直交変換の逆変換を施して生成したフレーム画像信号(参照用の画像信号、本発明の第1の信号および第1の画像信号)をフレームメモリ31に格納する。
レート制御回路32は、バッファ28から読み出した信号を基に量子化スケールを生成し、これを量子化回路26に出力する。
【0046】
丸め制御回路33は、丸め誤差調整信号runを生成し、これを動き予測・補償回路35に出力する。
丸め誤差調整信号runは、後述する動き予測・補償回路35における補間画素信号の生成処理において、補間画素信号に丸め処理による誤差が偏らないように調整するために用いられる。
丸め制御回路33は、例えば、0または1をランダムに切り換えて示すように丸め誤差調整信号runを生成する。具体的には、丸め制御回路33は、M系列により0および1の乱数値を発生し、当該乱数値を示す丸め誤差調整信号runを生成する。
また、丸め制御回路33は、0および1のいずれか一方を常に示す丸め誤差調整信号runを生成してもよい。
丸め制御回路33は、例えば、動き予測・補償回路35における補間画素信号の生成に用いられる画素信号が属するピクチャ、スライスあるいはマクロブロックを単位として、0および1を切り換えて示す丸め誤差調整信号runを生成する。
図10に示すように、動画像を構成するGOPは、I,P,Bの3種類の複数のピクチャから構成されている。
各ピクチャは、各画面を表示する画像情報であり、複数のスライスに分割されている。
スライスは、各画面内で横長の帯状の領域に対応した画像情報であり、複数のマクロブロックに分割されている。
マクロブロックは、16画素×16ラインの画素信号で構成されている。
【0047】
動き予測・補償回路35は、画像信号S23と、参照用の画像信号S31とを入力し、画像信号S31を1/8画素補間して生成した補間画像信号(本発明の第2の信号および第2の画像信号)を用いて、例えば、16画素×16ラインのマクロブロックを単位として、画像信号S23に対応したフレーム画像の動きベクトルMVを1/8画素精度で生成する。
そして、動き予測・補償回路35は、上記動きベクトルMVと、参照用の画像信号S31から、動き予測された1/8画素精度の予測画像信号S35aを生成し、これを演算回路24に出力する。
【0048】
図11は、図9に示す動き予測・補償回路35の機能ブロック図である。
図11に示すように、動き予測・補償回路35は、例えば、メモリアクセス回路40、補間演算回路45、動きベクトル生成回路46および予測画像生成回路47を有する。
【0049】
メモリアクセス回路40は、所定のタイミングで、フレームメモリ31から、画像信号S23の参照画像信号(本発明の第1の信号および第1の画像信号)を構成する画素信号S31(本発明の第1の画素信号)をフレームメモリ31から読み出して画素信号S40として補間演算回路45に出力する。
ここで、画素信号S40は、図3に示す整数画素精度の画素位置A(A1,A2,...)の画素信号SA(SA1,SA2,...)である。
【0050】
補間演算回路45は、以下に示すように、上述した画素信号SA(SA1,SA2,...)を用いて、小数画素精度の補間画素位置b(b1,b2,...),c(c11,c12,c13,...),d,e,f,gの補間画素信号Sb,Sc,Sd,Se,Sf,Sgを生成する。
【0051】
〔補間画素信号Sbの生成〕
補間演算回路45は、メモリアクセス回路40からの画素信号S40を用いて8タップのFIR(Finite Impulse Response) フィルタ演算を行うことで、水平方向の画素補間演算を行い、図3に示す補間画素位置b(b1,b2,b3,...)の補間画素信号Sb(Sb1,Sb2,Sb3,...)を生成する。
すなわち、補間演算回路45は、下記式(8)に示されるように、水平方向に連続して位置する8画素分の整数精度の画素位置A1〜A8の画素信号SA1〜SA8(画素信号S40)を用いて、画素信号SA1〜SA8のそれぞれに下記(9)で規定される係数a1〜a8を乗じて、1/4,2/4,3/4画素位置b(b1,b2,b3)の補間画素信号Sb(Sb1,Sb2,Sb3)を生成する。
図3に示す例では、補間画素位置b1が1/4画素位置、補間画素位置b2が2/4画素位置、補間画素位置b3が3/4画素位置になる。
【0052】
【数8】
Sb=(a1・SA1+a2・SA2+a3・SA3+a4・SA4+a5・SA5+a6・SA6+a7・SA7+a8・SA8)…(8)
【0053】
【数9】
【0054】
〔補間画素信号Scの生成〕
図12は、補間演算回路45による補間画素信号Scの生成工程を説明するための図である。
補間演算回路45は、図12に示すステップST1で、メモリアクセス回路40からの入力した、水平方向に連続して位置する8画素分の整数精度の画素位置A1〜A8の画素信号SA1〜SA8(画素信号S40)を用いて8タップのFIRフィルタ演算および16ビットの丸め処理を行うことで、水平方向の画素補間演算を行い、図3に示す補間画素位置b(b1,b2,b3,...)の補間画素信号Sb(Sb1,Sb2,Sb3,...)を生成する。
すなわち、補間演算回路45は、下記式(10)に示されるように、図3に示す水平方向に連続した8画素分の整数精度の画素位置A1〜A8の画素信号SA1〜SA8のそれぞれに上記(9)で規定される係数a1〜a8を乗算し、当該乗算の結果に丸め誤差調整信号runに2を乗じた信号を加算し、これを4で除算して(丸め処理を行って)、1/4,2/4,3/4画素位置、すなわち補間画素位置b(b1,b2,b3,...)の16ビットの補間画素信号Sb(Sb1,Sb2,Sb3,...)を生成する。
上記4で除算する処理は、例えば、信号を2ビット右シフトすることで実現できる。
【0055】
【数10】
Sb=(a1・SA1+a2・SA2+a3・SA3+a4・SA4+a5・SA5+a6・SA6+a7・SA7+a8・SA8+2・run)/4…(10)
【0056】
次に、補間演算回路45は、図12に示すステップST2で、上述した水平方向の画素補間演算で得られた16ビットの補間画素信号Sbを用いて8タップのFIRフィルタ演算を行うことで、垂直方向の画素補間演算を行い、図3に示す補間画素位置c(c11,c21,c31,...)の補間画素信号Scを生成する。
すなわち、補間演算回路45は、下記式(11)に示されるように、図3に示す垂直方向に連続した8画素分の16ビットの補間画素信号Sbのそれぞれに上記(9)で規定される係数a1〜a8を乗算し、1/4,2/4,3/4画素位置c(c11,c21,c31,...)の24ビットの補間画素信号Sc(Sc11,Sc21,Sc31,...)を生成する。
図3に示す例では、補間画素位置c11が1/4画素位置、補間画素位置c21が2/4画素位置、補間画素位置c31が3/4画素位置になる。
【0057】
【数11】
【0058】
補間演算回路45は、例えば、図12に示すステップST3で、上述したように生成した補間画素位置b,cの補間画素信号Sb,Scを、正規化処理を行った後に、〔0,255〕の範囲でクリッピングして生成した補間用画素信号Sb',Sc'を生成する。
また、補間演算回路45は、上記補間用画素信号Sb',Sc'、並びにメモリアクセス回路40から入力した画像信号S40内の画素信号を用いて、図3に示す補間画素位置d,e,f,gの補間画素信号Sd,Se,Sf,Sgを生成し、当該補間画素信号と、画像信号S40内の画素信号とを用いて構成される1/8画素精度の画素信号からなる画像信号S45を得て、これを動きベクトル生成回路46および予測画像生成回路47に出力する。
【0059】
具体的には、補間演算回路45は、式(8)により生成された補間画素位置bの補間画素信号Sbを、「(Sb+128)/256」により正規化して,〔0,255〕の範囲でクリッピングして補間用画素信号Sb’を生成する。
また、補間演算回路45は、図3に示す補間画素位置cの位相に対応する補間画素信号Scに対して、「(Sc+8192)/16384」により正規化して、 [ 0,255] の範囲でクリッピング処理を行って補間画素信号Sc’生成する。
そして、補間演算回路45は、1/8画素の補間位置の補間用画素信号を図5に示すアルゴリズムに基づいて生成する。
具体的には、補間演算回路45は、図3に示す補間画素位置dの補間画素信号Sdを、水平方向若しくは垂直方向でもっとも近くの位相に存在する画素位置Aの画素信号SA、補間画素位置bあるいはcの2つの補間画素信号Sb',Sc'の平均を計算して生成する。
【0060】
また、補間演算回路45は、図3に示す1/8画素精度の位相に対応する補間画素位置eの補間画素信号Seを、補間画素位置b1に対応する補間画素信号を用いて、平均処理及び丸め処理を行って生成する。
また、補間演算回路45は、図3に示す補間画素位置gに対応する補間画素信号Sgを、「(SA+3・Sc22')+2)/4」の演算を行って生成する。また、補間演算回路45は、図3に示す補間画素位置fに対応する補間画素信号Sfを、その対角線に沿って、「(3・Sb1'+Sb1'+2)/4」の演算を行って生成する。
【0061】
以下、補間演算回路45による上述した補間画素信号Scの生成処理を、図13に示す演算回路150を用いて行う手順について説明する。
図13は、補間演算回路45の一部を構成する演算回路150を説明するための図である。
また、図14は、図13に示す演算回路150において各PEに入力される画素信号のビット長を説明するための図である。
演算回路150が本発明の信号処理装置に対応している。
【0062】
図13に示すように、演算回路150は、例えば、プロセッサ100、メモリ101およびプロセッサ102を有する。
なお、プロセッサ100および102の機能を一つのプロセッサで実現してもよい。この場合には、プロセッサ100の演算結果をメモリ101に格納し、これを読み出して再びプロセッサ100に入力する。
プロセッサ100,102は、図示しないメモリから読み出されたプログラムPRG(本発明のプログラム)を基に動作する。
ここで、プロセッサ100が本発明の第1の演算手段に対応し、プロセッサ102が本発明の第2の演算手段に対応している。
プロセッサ100は、SIMD(Single Instruction Multi-Data stream)方式の汎用プロセッサであり、プロセッサエレメントPE1,PE2,PE3,PE4を有する。
プロセッサエレメントPE1,PE2,PE3,PE4は、それぞれ2入力1出力のインタフェースを有し、1入力の入力ビット長が16ビットである。
プロセッサ100は、水平方向に連続して位置する8画素分の整数精度の画素位置A1〜A8のそれぞれ8ビットの画素信号SA1〜SA8を用いて前述した水平方向の画素補間演算、並びに丸め処理を行い、図14に示すように16ビットの補間画素信号Sb(Sb1〜Sb8)を生成し、これをメモリ101に格納する。
【0063】
プロセッサ102は、SIMD方式の汎用プロセッサであり、プロセッサエレメントPE11,PE12,PE13,PE14を有する。
プロセッサエレメントPE11,PE12,PE13,PE14は、それぞれ2入力1出力のインタフェースを有し、1入力の入力ビット長が16ビットである。
プロセッサ102は、メモリ101から読み出した図3に示す垂直方向に連続した8画素分の16ビットの補間画素信号Sbを用いて前述した垂直補間演算を行い、図14に示すように24ビットの補間画素信号Sc(Sc11,Sc21,Sc31,...)を生成する。
そして、補間演算回路45は、24ビットの補間画素信号Scを正規化して8ビットの補間画素信号Sc’を生成する。
【0064】
以下、図12に示す演算回路150の演算過程を説明する。
図15は、当該演算過程を説明するための図である。
図13に示すプロセッサ100のPE1〜PE4に、それぞれ8ビットの画素信号SA1〜SA4(本発明の第1の信号)、並びにフィルタ係数a1〜a4がそれぞれ並列に入力され、積和演算処理が並列に行われ、信号「SA1*a1+SA2*a2」および「SA3*a3+SA4*a4」が生成され、当該信号がプロセッサ100内のレジスタに格納される。
次に、プロセッサ100の例えばPE1が、上記レジスタから読み出した信号「SA1*a1+SA2*a2」と「SA3*a3+SA4*a4」とを加算して、信号「SA1*a1+SA2*a2+SA3*a3+SA4*a4」(本発明の第2の信号の一部)を生成し、これを上記レジスタに格納する。
次に、プロセッサ100のPE1〜PE4に、それぞれ8ビットの画素信号SA5〜SA8、並びにフィルタ係数a5〜a8がそれぞれ並列に入力され、積和演算処理が並列に行われ、信号「SA5*a5+SA6*a6」および「SA7*a7+SA8*a8」が生成され、これが上記レジスタに格納される。
次に、プロセッサ100の例えばPE1が、上記レジスタから読み出した「SA5*a5+SA6*a6」と「SA7*a7+SA8*a8」とを加算して信号「SA5*a5+SA6*a6+SA7*a7+SA8*a8」(本発明の第2の信号の一部)を生成し、これを上記レジスタに格納する。
次に、PE1が、上記レジスタから読み出した信号「SA1*a1+SA2*a2+SA3*a3+SA4*a4」と、図9に示す丸め制御回路33から入力した丸め誤差調整信号runとを加算して信号SIG1を生成し、これを上記レジスタに格納する。
また、それと並行して、PE2が、上記レジスタから読み出した信号「SA5*a5+SA6*a6+SA7*a7+SA8*a8」と、丸め誤差調整信号runとを加算して信号SIG2を生成し、これを上記レジスタに格納する。
次に、PE1が、上記レジスタから読み出した信号SIG1とSIG2とを加算して信号SIG3を生成し、これを上記レジスタに格納する。
次に、PE1が、信号SIG3を2ビット右シフトして信号SIG4(本発明の第3の信号)を生成し、これを図13に示すメモリ101に書き込む。
【0065】
動きベクトル生成回路46は、動きベクトルの検出対象の画像の画像信号S23と、上述した補間演算回路45が生成した1/8画素精度の画素信号S45から構成される画像信号S45とを用いて、所定のブロックを単位として動きベクトルMVを生成し、動きベクトルMVを予測画像生成回路47および可逆符号化回路27に出力する。
【0066】
予測画像生成回路47は、動きベクトルMVと参照画像に対応する画像信号S45とを用いて1/8画素精度で予測画像信号S35aを生成し、これを演算回路24に出力する。
【0067】
以下、図11に示す動き予測・補償回路35の動作例を説明する。
メモリアクセス回路40が、所定のタイミングで、フレームメモリ31から、画像信号S23の参照画像信号を構成する画素信号S31を読み出して画素信号S40として補間演算回路45に出力する。
ここで、画素信号S40は、図3に示す整数画素精度の画素位置A(A1,A2,...)の画素信号SA(SA1,SA2,...)である。
【0068】
そして、補間演算回路45が、図12〜図15を用いて前述したように、上述した整数画素精度の画素信号SA(SA1,SA2,...)を用いて、小数画素精度の補間画素位置b(b1,b2,...),c(c11,c12,c13,...),d,e,f,gの補間画素信号Sb,Sc,Sd,Se,Sf,Sgを生成する。
そして、補間演算回路45が、上記補間画素信号と、画像信号S40内の画素信号とを用いて構成される1/8画素精度の画素信号からなる画像信号S45を得て、これを動きベクトル生成回路46および予測画像生成回路47に出力する。
【0069】
そして、動きベクトル生成回路46において、動きベクトルの検出対象の画像の画像信号S23と、参照画像の画像信号S31について生成された1/8画素精度の画像信号S45とを用いて、所定のブロックを単位として動きベクトルMVが生成され、動きベクトルMVが予測画像生成回路47および可逆符号化回路27に出力される。
【0070】
そして、予測画像生成回路47において、動きベクトルMVと参照画像に対応する画像信号S45とを用いて1/8画素精度で予測画像信号S35aが生成され、これが演算回路24に出力される。
【0071】
次に、図9に示す符号化装置2の全体動作を説明する。
入力となる画像信号は、まず、A/D変換回路22においてデジタル信号に変換される。次に、出力となる画像圧縮情報のGOP構造に応じ、画面並べ替え回路23においてフレームの並べ替えが行われる。
そして、イントラ符号化が行われる画像に関しては、フレーム全体の画像情報が直交変換回路25に入力され、直交変換回路25において離散コサイン変換やカルーネン・レーベ変換等の直交変換が施される。
直交変換回路25の出力となる変換係数は、量子化回路26において量子化処理される。
量子化回路26の出力となる、量子化された変換係数は、可逆変換回路27に入力され、ここで可変長符号化、算術符号化等の可逆符号化が施された後、バッファ28に蓄積され、圧縮された画像信号として出力される。
量子化回路26における量子化レートは、レート制御回路32によって制御される。同時に、量子化回路26の出力となる、量子化された変換係数は、逆量子化回路29に入力され、さらに直交変換回路30において逆直交変換処理が施されて、復号された画像信号となり、その画像信号はフレームメモリ31に蓄積される。
【0072】
一方、インター符号化が行われる画像に関しては、前述したように、丸め制御回路33が丸め誤差調整信号runを生成し、これを動き予測・補償回路35に出力する。
そして、動き予測・補償回路35において、フレームメモリ31からの画像信号S31と、画像信号S23と、丸め制御回路33が丸め誤差調整信号runとを用いて前述した動き予測・補償処理が施され、予測画像信号S35aが生成される。予測画像信号S35aは演算回路24に出力され、演算回路24において、画面並べ替え回路23からの画像信号S23と、動き予測・補償回路35からの予測画像信号S35aとの差分信号である画像信号S24が生成され、当該画像信号S24が直交変換回路25に出力される。
また、動き補償・予測回路35は、動きベクトルMVを生成し、これを可逆符号化回路27に出力し、可逆符号化回路27において、動きベクトルMVが可変長符号化あるいは算術符号化といった可逆符号化処理され、画像信号のヘッダ部に挿入される。その他の処理はイントラ符号化を施される画像信号と同様である。
【0073】
以上説明したように、符号化装置2では、動き予測・補償回路35における動き予測・補償処理において、水平方向の画素補間演算を行う1/8画素精度の補間画素信号Scを生成する場合に、図12に示すステップST1で説明したように、画素信号SA1〜SA8(画素信号S40)を用いて8タップのFIRフィルタ演算および16ビットの丸め処理を行って、16ビットの補間画素信号Sbを生成し、これをメモリ101に格納する。
そのため、図13に示すプロセッサ102として、それぞれ入力ビット長が16ビットの複数のPE11〜PE14で構成される汎用のプロセッサを用いることができ、演算回路24の開発負担を軽減できる。
符号化装置2では、動き予測・補償回路35が、図9に示す丸め制御装置33が生成した丸め誤差調整信号runを基に、上記式(10)に示す演算を行うことで、丸め処理による誤差が偏ることを回避できる。
【0074】
以下、図8に示す復号装置3について説明する。
復号装置3が本発明の第3の画像処理装置に対応している。
図16は、復号装置3の機能ブロック図である。
図16に示すように、復号装置3は、例えば、蓄積バッファ71、可逆復号化回路72、逆量子化回路73、逆直交変換回路74、演算回路75、画面並べ替え回路76、D/A変換回路77、フレームメモリ78、丸め制御回路79および動き予測・補償回路81を有する。
蓄積バッファ71は、図9に示す送信側の符号化装置2で符号化され、続いて変調されて送信された画像信号が受信され、当該画像信号が復調されると、当該復調によって得られた画像信号を記憶する。
【0075】
可逆復号化回路72は、蓄積バッファ71から入力した画像信号に対して、図9に示す可逆符号化回路27の符号化処理に対応する復号処理を行い、それによって得られた画像信号を逆量子化回路73に出力し、当該復号処理の過程で得られた動きベクトルMVを動き予測・補償回路81に出力する。
逆量子化回路73は、可逆復号化回路72から入力した画像信号を逆量子化して画像信号を生成し、これを逆直交変換回路74に出力する。
逆直交変換回路74は、逆量子化回路73から入力した画像信号に、図9に示す直交変換回路25の直交変換処理に対応する逆直交変換処理を施し、それによって得られた画像信号S74を演算回路75に出力する。
【0076】
演算回路75は、逆直交変換回路74からの画像信号S74と、動き予測・補償回路81からの予測画像信号S81とを加算して画像信号S75を生成し、これを画面並べ替え回路76およびフレームメモリ78に出力する。
画面並べ替え回路76は、画像信号S75のフレーム画像信号を表示順に並べ替えた画像信号を生成し、これをD/A変換回路77に出力する。
D/A変換回路77は、画面並べ替え回路76から入力したデジタルの画像信号をアナログの画像信号に変換して出力する。
【0077】
フレームメモリ78は、画像信号S75を記憶する。
丸め制御回路79は、丸め誤差調整信号runを生成し、これを動き予測・補償回路81に出力する。
丸め制御回路79による丸め誤差調整信号runの生成方法の種類は、基本的に、前述した丸め制御回路33と同じである。
【0078】
動き予測・補償回路81は、フレームメモリ78から読み出された画像信号S78を入力し、画像信号S78を1/8画素精度に補間し、当該補間された画像信号と、可逆復号化回路72から入力した動きベクトルMVとを用いて、1/8画素精度の予測画像信号S81aを生成し、これを演算回路75に出力する。
動き予測・補償回路81における1/8画素精度の補間演算は、図11〜図15を用いて前述した動き予測・補償回路35の場合と同様である。
【0079】
図17は、図16に示す動き予測・補償回路81の機能ブロック図である。
図17に示すように、動き予測・補償回路81は、例えば、補間演算回路84および予測画像生成回路85を有する。
補間演算回路84は、丸め制御回路79から入力した丸め誤差調整信号runおよび画像信号S78を基に、図11に示す補間演算回路45と同様の処理を行って1/8画素精度の画像信号S84を生成し、これを予測画像生成回路85に出力する。
予測画像生成回路85は、可逆復号化回路72から入力した動きベクトルMVと、補間演算回路84から入力された画像信号S84とを用いて1/8画素精度の予測画像信号S81aを生成し、これを図16に示す演算回路75に出力する。
【0080】
以下、復号装置3の全体動作例を説明する。
復号装置3では、入力となる画像信号がバッファ71に格納された後、可逆復号化回路72に出力される。そして、可逆復号化回路72において、定められた画像圧縮情報のフォーマットに基づき、可変長復号化、算術復号化等の処理が行われる。同時に、当該フレームがインター符号化されたものである場合には、可逆復号化回路72において、画像信号のヘッダ部に格納された動きベクトルMVも復号され、その動きベクトルMVが動き予測・補償装置81に出力される。
【0081】
可逆復号化回路72の出力となる、量子化された変換係数は、逆量子化回路73に入力され、ここで変換係数が生成される。当該変換係数には、逆直交変換回路74において、定められた画像圧縮情報のフォーマットに基づき、逆離散コサイン変換や逆カルーネン・レーベ変換等の逆直交変換が施される。当該フレームがイントラ符号化されたものである場合には、逆直交変換処理が施された画像情報は画面並べ替え回路76に格納され、D/A変換回路77によるD/A変換処理を経て出力される。
一方、当該フレームがインター符号化されたものである場合には、動き予測・補償回路81において、動きベクトルMV、及びフレームメモリ78に格納された参照用の画像信号S78を基に予測画像信号S81aが生成され、この予測画像信号S81aと、逆直交変換回路74から出力された画像信号S74とが、加算器75において加算される。
【0082】
以上説明したように、復号装置3によれば、符号化装置2によって符号化された画像信号を、符号化装置2と同様に、図17に示す補間演算回路84として汎用のプロセッサを用いることができる。
【0083】
本発明は上述した実施形態には限定されない。
例えば、上述した実施形態では、動き予測・補償における画素信号の補間演算を行う場合に本発明を適用したが、本発明は、入力ビット長が規定された演算手段を用いて中間信号(本発明の第3信号)を生成および出力し、当該中間信号を再び上記入力ビット長が規定された演算手段に入力して処理するその他の場合に適用できる。
また、上述した実施形態では、本発明のnが9、mが8の場合を例示したが、nは3以上、mは2以上でnより小さければ、m,nとしてその他の値を用いてもよい。
【0084】
【発明の効果】
以上、説明したように、本発明によれば、所定の演算の過程で得られる中間信号(第3の信号)を演算手段で生成および出力し、続いて当該中間信号を演算手段に入力して演算を行って上記所定の演算を行う場合に、上記中間信号を入力して処理する演算手段の入力ビット長に上記中間信号を適合させることができる信号処理装置、その方法およびそのプログラムを提供することができる。
【図面の簡単な説明】
【図1】図1は、本発明の関連技術に係わる符号化装置の機能ブロック図である。
【図2】図2は、1/4画素精度の画像信号を説明するための図である。
【図3】図3は、1/8画素精度の画像信号を説明するための図である。
【図4】 図4は、図1に示す動き予測・補償装置における画素補間演算を説明するための図である。
【図5】 図5は、図1に示す動き予測・補償装置における画素補間演算を説明するための図である。
【図6】 図6は、図1に示す動き予測・補償装置における画素補間演算を説明するための図である。
【図7】図7は、本発明の関連技術に係わる復号装置の機能ブロック図である。
【図8】図8は、本発明の実施形態に係わる通信システムの構成図である。
【図9】図9は、図8に示す符号化装置の機能ブロック図である。
【図10】図10は、GOPの構成を説明するための図である。
【図11】図11は、図9に示す動き予測・補償回路の機能ブロック図である。
【図12】図12は、図11に示す補間演算回路における補間演算を説明するための図である。
【図13】図13は、図11に示す補間演算回路の構成図である。
【図14】図14は、図11に示す補間演算回路の処理を説明するための図である。
【図15】図15は、図11に示す補間演算回路の処理を説明するための図である。
【図16】図16は、図8に示す復号装置の機能ブロック図である。
【図17】図17は、図16に示す動き予測・補償回路の機能ブロック図である。
【符号の説明】
2…符号化装置、3…復号装置、22…A/D変換回路、23…画像並べ替え回路、24…演算回路、25…直交変換回路、26…量子化回路、27…可逆符号化回路、28…バッファ、29…逆量子化回路、30…逆直交変換回路、31…フレームメモリ、32…レート制御回路、33…丸め制御回路、35…動き予測・補償回路、40…選択回路、41…メモリ、45…補間演算回路、46…動きベクトル生成回路、47…予測画像生成回路、71…バッファ、72…可逆復号化回路、73…逆量子化回路、74…逆直交変換回路、75…演算回路、76…画像並べ替え回路、77…D/A変換回路、78…フレームメモリ、79…丸め制御回路、81…動き予測・補償回路
Claims (10)
- 入力ビット長が規定された単数または複数の演算手段
を有し、
前記単数または複数の演算手段の内の第1の演算手段が、前記入力ビット長以下の第1のビット長の第1の信号を入力し、当該第1の信号に所定の処理を施して第2の信号を生成し、前記第2の信号に丸め処理を行って前記入力ビット長以下の第3の信号を生成し、前記第3の信号を出力し、
前記第1の演算手段または第2の演算手段が、前記第1の演算手段が出力した前記第3の信号を入力して次の処理を実行する
信号処理装置。 - 丸め誤差調整信号を生成する丸め制御手段をさらに有し、
前記第1の演算手段は、前記丸め制御手段が生成した前記丸め誤差調整信号を基に、前記第2の信号に丸め処理を行って前記第3の信号を生成する
請求項1に記載の信号処理装置。 - 前記第1の演算手段は、2×n(nは3以上の整数)の第2のビット長の前記第2の信号を生成し、前記入力ビット長が2×m(mはnより小さい2以上の整数)の場合に、前記第2の信号に前記丸め誤差調整信号を加算して得た第4の信号を、2m−2nで除算するのに相当する演算を行って前記第3の信号を生成する
請求項2に記載の信号処理装置。 - 前記第1の演算手段は、前記2m−2nが4である場合に、前記丸め誤差調整信号に2を乗じた信号を前記第2の信号に加算して前記第4の信号を生成し、
前記丸め制御手段は、0または1を示す前記誤差調整信号を生成する
請求項3に記載の信号処理装置。 - 前記丸め制御手段は、0または1をランダムに示す前記丸め誤差調整信号を生成する
請求項4に記載の信号処理装置。 - 記憶回路から読み出された第1の画像信号の画素信号を補間して得られた第2の画像信号を用いて所定の画像信号の動きベクトルを生成するために、前記第2の画像信号を構成する補間された画素信号を生成する場合に、前記第1の演算手段は、前記第1の画像信号の前記入力ビット長の第1の画素信号を前記第1の信号として入力し、当該第1の画素信号を用いて水平方向の補間演算を行って、水平方向に補間された前記第2の信号としての第2の画素信号を生成し、前記第2の画素信号に丸め処理を行って、前記入力ビット長以下の前記第3の信号としての第3の画素信号を生成し、前記第3の画素信号を出力して前記第1の画素信号として当該第1の演算手段または第2の前記演算手段に入力させ、
前記第1の演算手段または前記第2の演算手段は、前記第1の演算手段が出力した前記第3の画素信号を入力し、当該第3の画素信号を用いて垂直方向の補間演算を行って、垂直方向に補間された第4の画素信号を生成する
請求項1に記載の信号処理装置。 - 前記第1の画像信号の画素信号が属する所定のブロックを単位として、丸め誤差調整信号が示す値を切り換える丸め制御手段をさらに有し、
前記第1の演算手段は、前記丸め制御手段が生成した前記丸め誤差調整信号を基に、前記第2の画素信号に丸め処理を行って前記第3の画素信号を生成する
請求項6に記載の信号処理装置。 - 入力ビット長が規定された単数または複数の演算手段を用いた信号処理方法であって、
前記単数または複数の演算手段の内の第1の演算手段が、前記入力ビット長以下の第1のビット長の第1の信号を入力し、当該第1の信号に所定の処理を施して第2の信号を生成する第1の工程と、
前記第1の演算手段が、前記第1の工程で生成した前記第2の信号に丸め処理を行って前記入力ビット長以下の第3の信号を生成し、前記第3の信号を出力する第2の工程と、
前記第1の演算手段または第2の演算手段が、前記第2の工程で前記第1の演算手段が出力した前記第3の信号を入力して次の処理を実行する第3の工程と
を有する信号処理方法。 - 丸め誤差調整信号を生成する第4の工程をさらに有し、
前記第2の工程において、前記第4の工程で生成した前記丸め誤差調整信号を基に、前記第2の信号に丸め処理を行って前記第3の信号を生成する
請求項8に記載の信号処理方法。 - 入力ビット長が規定された単数または複数の演算手段を用いた信号処理装置が実行するプログラムであって、
前記単数または複数の演算手段の内の第1の演算手段が、前記入力ビット長以下の第1のビット長の第1の信号を入力し、当該第1の信号に所定の処理を施して第2の信号を生成する第1の手順と、
前記第1の演算手段が、前記第1の手順で生成した前記第2の信号に丸め処理を行って前記入力ビット長以下の第3の信号を生成し、前記第3の信号を出力する第2の手順と、
前記第1の演算手段または第2の演算手段が、前記第2の手順で前記第1の演算手段が出力した前記第3の信号を入力して次の処理を実行する第3の手順と
を有するプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002304570A JP4161676B2 (ja) | 2002-10-18 | 2002-10-18 | 信号処理装置、その方法およびそのプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002304570A JP4161676B2 (ja) | 2002-10-18 | 2002-10-18 | 信号処理装置、その方法およびそのプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004140676A JP2004140676A (ja) | 2004-05-13 |
JP4161676B2 true JP4161676B2 (ja) | 2008-10-08 |
Family
ID=32451952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002304570A Expired - Fee Related JP4161676B2 (ja) | 2002-10-18 | 2002-10-18 | 信号処理装置、その方法およびそのプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4161676B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102434014B (zh) * | 2011-09-23 | 2013-09-11 | 张鹤 | 大型摩天轮式立体车库 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006090811A2 (en) * | 2005-02-25 | 2006-08-31 | Matsushita Electric Industrial Co., Ltd. | Pixel interpolating method and device |
RU2559839C1 (ru) * | 2011-06-24 | 2015-08-10 | Нтт Докомо, Инк. | Способ и устройство для компенсации движения с предсказанием |
-
2002
- 2002-10-18 JP JP2002304570A patent/JP4161676B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102434014B (zh) * | 2011-09-23 | 2013-09-11 | 张鹤 | 大型摩天轮式立体车库 |
Also Published As
Publication number | Publication date |
---|---|
JP2004140676A (ja) | 2004-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4120301B2 (ja) | 画像処理装置およびその方法 | |
US11107251B2 (en) | Image processing device and method | |
EP1466477B1 (en) | Coding dynamic filters | |
US20110176614A1 (en) | Image processing device and method, and program | |
US20070133687A1 (en) | Motion compensation method | |
JP2001204026A (ja) | 画像情報変換装置及び方法 | |
JP2005510150A (ja) | より大きな画素グリッド動き補償を利用した複雑さが減少されたビデオ復号化 | |
JP4985645B2 (ja) | 画像データ圧縮装置、圧縮方法及びプログラム並びに画像データ復元装置、復元方法及びプログラム | |
JP2009089332A (ja) | 動き予測方法及び動き予測装置 | |
JP4360093B2 (ja) | 画像処理装置および符号化装置とそれらの方法 | |
JP2003169349A (ja) | 画像情報符号化方法及び装置、画像情報復号方法及び装置、並びにプログラム | |
JP4622077B2 (ja) | 画像処理装置及び画像処理方法 | |
JP4161676B2 (ja) | 信号処理装置、その方法およびそのプログラム | |
JP4318019B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP2003348595A (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
KR101615503B1 (ko) | 인트라 예측 정보를 이용한 해상도 변환 방법 및 그 장치 | |
JP2001086508A (ja) | 動画像復号方法及び動画像復号装置 | |
JP2002010267A (ja) | 動きベクトル変換装置及び方法 | |
JP2005136941A (ja) | データ処理装置およびその方法と符号化装置 | |
JP4039221B2 (ja) | 画像処理装置、符号化装置、復号装置およびそれらの方法 | |
JP4556286B2 (ja) | 動きベクトル変換装置及び方法 | |
JP2011223316A (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP2001309389A (ja) | 動きベクトル変換装置及び方法 | |
JP2001204027A (ja) | 画像情報変換装置及び方法 | |
JP2002252854A (ja) | 動きベクトル変換方法及び変換装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051017 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080129 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080326 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080701 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080714 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110801 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110801 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |