JP2007274478A - 画像処理装置、画像処理方法及び画像処理プログラム - Google Patents

画像処理装置、画像処理方法及び画像処理プログラム Download PDF

Info

Publication number
JP2007274478A
JP2007274478A JP2006099128A JP2006099128A JP2007274478A JP 2007274478 A JP2007274478 A JP 2007274478A JP 2006099128 A JP2006099128 A JP 2006099128A JP 2006099128 A JP2006099128 A JP 2006099128A JP 2007274478 A JP2007274478 A JP 2007274478A
Authority
JP
Japan
Prior art keywords
vector
format
pixel
image data
scalar
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.)
Withdrawn
Application number
JP2006099128A
Other languages
English (en)
Inventor
Yasuyuki Kokojima
快行 爰島
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2006099128A priority Critical patent/JP2007274478A/ja
Priority to EP20070251117 priority patent/EP1863293A3/en
Priority to US11/686,673 priority patent/US20070230817A1/en
Priority to CNA2007101282541A priority patent/CN101087425A/zh
Publication of JP2007274478A publication Critical patent/JP2007274478A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Abstract

【課題】GPUなどの汎用の並列ベクトルプロセッサがもつ能力を最大限に引き出してデブロッキングフィルタを高速に行う技術を提供すること。
【解決手段】水平方向及び垂直方向の少なくとも一方に並ぶ複数のスカラー形式の画素を重ね合わせてベクトル形式の画像データに変換するスカラー画素重ね合わせ手段(4、7)と、前記ベクトル形式の画像データに対してデブロッキングフィルタを施すベクトル画像処理手段(6、9)と、を備えた。
【選択図】 図1

Description

本発明は、画像処理装置、画像処理方法及び画像処理プログラムに関する。
近年の動画像の圧縮符号化方式では、隣接フレーム間の時間方向の冗長度を削減する処理と、単一フレーム内の空間方向の冗長度を削減する処理の2つを組み合わせることによって高い圧縮率を実現している。
これらの2つの処理のうち、後者の空間方向の冗長度を削減する処理においては、画像を適当な大きさ(例えば幅4画素、高さ4画素)の画素ブロックに分割し、各ブロック単位にDCT(離散コサイン変換)を施すことによって、ブロック内の冗長な成分を取り除くことが多い。しかしこのようなブロック単位の符号化方式では、隣接ブロックの境界付近の画素にブロックノイズと呼ばれる歪みが生じてしまい、画質劣化の大きな原因となっていた。
そこで、最近の圧縮符号化方式には、ブロック境界付近の不連続な画素を滑らかに補正することによってブロックノイズを低減するデブロッキングフィルタと呼ばれる処理が加えられている。デブロッキングフィルタの処理は比較的単純であるが、それに要する処理量は膨大であり、場合によっては復号化の全処理量の50%を占めることもある。そのため特許文献1などにおいて、符号化歪の除去処理が必要かどうかを判断し、必要な場合のみでブロックフィルタを行うようにすることによって、デブロッキングフィルタの処理量を削減して高速化する技術が提案されている。
一方、近年のGPU(グラフィックスプロセッシングユニット)の進化は著しく、GPUが高いプログラマビリティと並列演算能力を兼ね備えるようになってきている。そのため、PCなどの計算機だけにとどまらず、家電機器や携帯機器、あるいは遊戯機器などにもGPUが搭載されるようになってきている。また、そのプログラマビリティの高さを生かしてグラフィックス以外の一般的な用途にGPUを利用しようという試みが活発であり、この試みは動画像の符号化および複合化の分野にも波及しつつある。
しかし、特許文献1などの従来の発明では、デブロッキングフィルタを実現するプラットフォームとして、GPUなどの汎用の並列ベクトルプロセッサを考慮していなかった。そのため、GPUなどの汎用の並列ベクトルプロセッサがもつ能力を最大限に引き出してデブロッキングフィルタを高速に処理することができなかった。
特開2004−180248号公報
本発明は、GPUなどの汎用の並列ベクトルプロセッサがもつ能力を最大限に引き出してデブロッキングフィルタを高速に行う技術を提供することを目的とする。
本発明のポイントは、以下の通りである。
(1)画素ブロックのサイズおよび画素フォーマットおよびデブロッキングフィルタの参照画素などの条件に基づいて、ブロック境界付近の複数のスカラー形式の画素を重ね合わせてベクトル形式に変換する。
(2)並列ベクトルプロセッサのメモリアクセス方式およびデブロッキングフィルタの処理依存性に基づいて、ベクトル形式の画素を並べ替える。
具体的には、本発明の局面に係る発明は、水平方向及び垂直方向の少なくとも一方に並ぶ複数のスカラー形式の画素を重ね合わせてベクトル形式の画像データに変換するスカラー画素重ね合わせ手段と、前記ベクトル形式の画像データに対してデブロッキングフィルタを施すベクトル画像処理手段と、を具備することを特徴とする。なお、本発明は装置の発明に限らず方法或いはプログラムの発明としても成立する。
本発明によれば、GPUなどの汎用の並列ベクトルプロセッサがもつ能力を最大限に引き出してデブロッキングフィルタを高速に処理することが可能になる。
図面を参照して本発明の実施の形態を説明する。
(第1の実施形態)
図1は、第1の実施形態に係る画像処理装置の概略構成を示すブロック図である。図1に示すように、第1の実施形態に係る画像処理装置は、中央処理部1と、主記憶部2と、入力スカラー画像記憶部3と、水平スカラー画素重ね合わせ部4と、水平ベクトル画像記憶部5と、水平ベクトル画像処理部6と、垂直スカラー画素重ね合わせ部7と、垂直ベクトル画像記憶部8と、垂直ベクトル画像処理部9と、垂直ベクトル画素展開部10と、出力スカラー画像記憶部11と、提示部12とを備えている。なお、図1は、各ブロックの接続関係に、データの流れも示している。以下、各ブロックの機能を説明する。
中央処理部1は、各ブロックの動作およびブロック間のデータ転送を制御する。
主記憶部2は、各ブロックの動作を制御するためのプログラムおよび動画像データなどを保持する。
入力スカラー画像記憶部3は、スカラー形式の入力画像データを記憶する。
水平スカラー画素重ね合わせ部4は、前記入力スカラー画像記憶部3にて保持されているスカラー形式の画像データを読み込んで、水平方向に並ぶ複数のスカラー形式の画素を重ね合わせてベクトル形式の画像データに変換する。
水平ベクトル画像記憶部5は、前記水平スカラー画素重ね合わせ部4から出力されたベクトル形式の画像データを記憶する。
水平ベクトル画像処理部6は、前記水平ベクトル画像記憶部5にて保持されているベクトル形式の画像データに対してデブロッキングフィルタを施す。
垂直スカラー画素重ね合わせ部7は、前記水平ベクトル画像記憶部5にて保持されているベクトル形式の画像データを読み込んで、垂直方向に並ぶ複数のベクトル形式の画素の各要素を重ね合わせて異なるベクトル形式の画像データに変換する。
垂直ベクトル画像記憶部8は、前記垂直スカラー画素重ね合わせ部7から出力されたベクトル形式の画像データを記憶する。
垂直ベクトル画像処理部9は、前記垂直ベクトル画像記憶部8にて保持されているベクトル形式の画像データに対してデブロッキングフィルタを施す。
垂直ベクトル画素展開部10は、前記垂直ベクトル画像記憶部8にて保持されているベクトル形式の画像データを読み込んで、各ベクトル形式の画素の各要素を垂直方向に展開してスカラー形式の画像データに変換する。
出力スカラー画像記憶部11は、前記垂直ベクトル画素展開部10から出力されたスカラー形式の画像データを記憶する。
提示部12は、液晶表示装置などの表示装置を備え、前記出力スカラー画像記憶部11に保持されている画像データを提示する。
上記の構成において、主記憶部2、入力スカラー画像記憶部3、水平ベクトル画像記憶部5、垂直ベクトル画像記憶部8及び出力スカラー画像記憶部11の各記憶部を異なる構成要素として表記しているが、これらは単一のメモリ上にまとめて構成してもよいし、異なる複数のメモリ上に分割して構成してもよい。
以下、図1に示す画像処理装置におけるデータの流れと、各ブロックにおける詳細な動作について説明する。
中央処理部1は、上述したように、各ブロックの動作およびブロック間のデータ転送を制御する。
主記憶部2は、各ブロックの動作を制御するためのプログラム、動画像データ、及び出力スカラー画像記憶部11から転送されてきたデブロッキングフィルタが施された画像データなどを記憶する。
動画像データは、図2に示すように、動画像の1フレームの各色成分における画像データを並べたものである。図2は、1枚のフレームの画像がY、Cb、Crの3つの色成分で構成されている場合の動画像の構成例を示す図である。なお、第1の実施形態では、このような動画像データがあらかじめ主記憶部2に記憶されているものとして、以下の説明を行う。
入力スカラー画像記憶部3は、主記憶部2に保持されている動画像データのうち、現在のフレームの特定の色成分の画像データのみを記憶する。
図3は、入力スカラー画像記憶部3に記憶された特定の色成分の画像データの例を示す図である。図3(a)は入力スカラー画像記憶部3内の画素配列を表し、図3(b)は各画素のメモリ上での並び順序の例を表している。本発明の各実施形態では、特定の色成分の画像データは、各画素に例えば8ビットのスカラー値を割り当ててラスタ順に並べたものとする(図3(b)参照)。なお、説明の便宜上、以降では図3の画像データが与えられた場合の各ブロックの動作について説明するが、本発明は図3の画像データに限定されるものではなく、異なるビット数の画素をもつ異なるサイズの画像データに対しても拡張可能である。
水平スカラー画素重ね合わせ部4は、図3(a)に示すような入力スカラー画像記憶部3に保持されている画像データを読み込んで、水平方向に連続配置された複数のスカラー形式の画素を重ね合わせて、各画素がベクトルの要素になるような1つの画素ベクトルに変換することにより、図4(a)に示すようなベクトル形式の画像データを得る。なお、このスカラー形式からベクトル形式への画素の変換においては、画素ブロックの幅、および変換前のスカラー形式の画素のフォーマット、および変換後のベクトル形式の画素のフォーマット、および水平方向の画素ブロック境界に対するデブロッキングフィルタの参照画素、などの条件に応じて適切な変換方法が選択される。
本発明の各実施形態では、図3(a)に示すように、画素ブロックの幅は4画素であり、図3(b)に示すように、変換前のスカラー形式の画素は8ビットの整数フォーマットで表されている。
水平スカラー画素重ね合わせ部4は、図3(a)の画素ブロック内で水平方向に並んでいる4個のスカラー形式の画素を重ね合わせて、図4に示すような4つの要素を持つベクトル形式の1つの画素へと変換する。具体的には、以下の通りである。
例えば、図3(a)において点線で囲まれている4個のスカラー形式の画素00、10、20、30は、図4(a)において点線で囲まれている1個のベクトル形式の画素(00、10、20、30)に変換される。
図4(a)によれば、変換後のベクトル形式の画像データにおいては、画素ブロックのサイズは幅1画素、高さ4画素、深さ(ベクトル画素の要素数)4画素となり、水平方向に並ぶ各画素の間に水平方向の画素ブロック境界が位置するようになる。なお、図4(b)はベクトル形式の各画素を要素ごとに平面的に表示した図である。
また、図4(c)に示すように、変換後のベクトル形式の画素は4つの要素を有し、各要素は8ビットの整数フォーマットで表されている。
スカラー形式からベクトル形式への変換が終わったら、水平スカラー画素重ね合わせ部4は、得られたベクトル形式の画像データを水平ベクトル画像記憶部5に出力する。
水平ベクトル画像記憶部5は、水平スカラー画素重ね合わせ部4から出力されたベクトル形式の画像データ(図4)を記憶する。
水平ベクトル画像処理部6は、水平ベクトル画像記憶部5に保持されているベクトル形式の画像データ(図4)の水平方向の画素ブロック境界に対してデブロッキングフィルタを施す。
一般にデブロッキングフィルタの演算は、画素ブロックの境界付近の複数の画素について、それらの画素の近傍の画素値の加重平均をとることによって行われる。加重平均に用いる画素およびその重みは様々な条件に応じて適応的に決定されることが多い。
本実施形態では、説明の便宜上、加重平均の演算を以下のように仮定する。なお、図5に示すように、画素ブロックの水平方向の境界の左右に並んでいる8個の画素(p3〜p0およびq0〜q3)が、その境界に対するデブロッキングフィルタの参照画素となっている。
p3'=filter(p3)
p2'=filter(p3,p2,p1,p0,q0)
p1'=filter(p2,p1,p0,q0)
p0'=filter(p2,p1,p0,q0,q1)
q0'=filter(p1,p0,q0,q1,q2)
q1'=filter(p0,q0,q1,q2)
q2'=filter(p0,q0,q1,q2,q3)
q3'=filter(q3)
ここで、p3〜p0およびq0〜q3およびp3'〜p0'およびq0'〜q3'は、図5のスカラー形式の画素値を表している。また、filter()は引数に与えられたスカラー形式の画素値の加重平均を計算する関数である。なお、加重平均の重みの設定は本発明の内容に直接関係しないので説明を省略する。
上記のような加重平均をGPUなどのベクトルプロセッサで計算するためには、図6(a)に示すように8個のスカラー形式の画素すべてについて独立に演算する必要がある。このため、図6(b)に示すように、プロセッサ内部の並列演算器は8個のスカラー形式の画素のうちのどの画素が入力されたかを判定し、その結果に応じて加重平均の計算を切り替えるために、複雑な条件分岐を処理しなければならない。なお、図6において、ハッチングを付した画素は、ハッチングを付した画素を用いてフィルタリングを行い、ハッチングを付した画素値を得ることを示している。例えば、図6(a)では、画素p3を用いてフィルタリングを行って画素p3′を得、図6(b)では、画素p3、p2、p1、p0、q0を用いてフィルタリングを行って画素p2′を得ることを示している。以下同様であるので、以下では、説明を省略する。
しかし、本実施形態に係る画像処理装置によれば、前段の水平スカラー画素重ね合わせ部4によってスカラー形式の画素がベクトル形式に変換されているため、図7(a)に示すように2個のベクトル形式の画素について演算するだけで良い。従って、図7(b)に示すように、プロセッサ内部の並列演算器は2個のベクトル形式の画素のうちのいずれかを判定するだけで良く、条件分岐の数を削減することができる。
この結果、水平方向の画素ブロック境界に対するデブロッキングフィルタの演算を効率よく行うことが可能になる。
なお、図7(b)では、ベクトル形式の画素(p3,p2,p1,p0)、(q0,q1,q2,q3)、(p3',p2',p1',p0')及び(q0',q1',q2',q3')を、それぞれp、q、p'、q'と表記している。また、filter()は引数に与えられたベクトル形式の画素値を参照して加重平均を計算する関数である。
ところで、デブロッキングフィルタの演算を行う際には、演算の処理依存性に注意する必要がある。例えば、図8(b)において列1の画素ブロックと列2の画素ブロックの境界のフィルタリング結果は列1の画素値に依存するが、その列1の画素値は、左隣の列0と列1の境界のフィルタリング結果に依存する。したがって、図8(b)の列1と列2の境界をフィルタリングする前に、図8(a)の列0と列1の境界のフィルタリングを終えておかないと、正しい結果を得ることができない。同様に、図8(c)の列2と列3の境界をフィルタリングする前に、図8(b)の列1と列2の境界のフィルタリングを終えておかないと、正しい結果を得ることができない。
したがって、デブロッキングフィルタの演算を正しく行うためには、まず図8(a)の色つきの画素ブロックを参照して列0と列1の境界のフィルタリングを行い、それがすべて終了してから、図8(b)の色つきの画素ブロックを参照して列1と列2の境界のフィルタリングを行う。そして、それがすべて終了してから、図8(c)の色つきの画素ブロックを参照して列2と列3の境界のフィルタリングを行う。
水平方向の画素ブロック境界付近のすべての画素について加重平均を計算し終えると、水平ベクトル画像処理部6は、デブロッキングフィルタを施したベクトル形式の画像データを水平ベクトル画像記憶部5に出力する。
垂直スカラー画素重ね合わせ部7は、水平ベクトル画像記憶部5に保持されているベクトル形式の画像データ(図4)を読み込んで、垂直方向に並ぶ複数のベクトル形式の画素の各要素を重ね合わせることにより、詳細は後述する異なるベクトル形式の画像データ(図9及び図10)に変換する。異なるベクトル形式への変換においては、画素ブロックの高さ、および変換前のベクトル形式の画素のフォーマット、および変換後のベクトル形式の画素のフォーマット、および垂直方向の画素ブロック境界に対するデブロッキングフィルタの参照画素、などの条件に応じて適切な変換方法が選択される。
ここで、本実施形態においては、図3(a)に示すように、画素ブロックの高さは4画素である。また、図4(c)に示すように、変換前のベクトル形式の画素は4つの要素から成り、各要素は8ビットの整数フォーマットで表される。
この場合において、垂直スカラー画素重ね合わせ部7は、図4(a)において画素ブロック内で垂直方向に並んでいる4個のベクトル形式の画素の対応するベクトル要素を重ね合わせることにより、図9及び図10に示すような異なるベクトル形式の画素へと変換する。具体的には以下の通りである。
例えば、図4(a)における4個のベクトル形式の画素(c0,d0,e0,f0)、(c1,d1,e1,f1)、(c2,d2,e2,f2)、(c3,d3,e3,f3)の4番目の要素f0、f1、f2、f3は、図9において点線で囲まれている1個のベクトル形式の画素(f0,f1,f2,f3)に変換される。他の要素も同様にして、例えば、1番目の要素については画素(c0,c1,c2,c3)に、2番目の要素については画素(d0,d1,d2,d3)に、3番目の要素については画素(e0,e1,e2,e3)に変換される。
図9によれば、変換後のベクトル形式の画像データにおいては、画素ブロックのサイズは幅4画素、高さ1画素、深さ(ベクトル画素の要素数)4画素となり、垂直方向に並ぶ各画素の間に垂直方向の画素ブロック境界が位置するようになる。なお、図10(a)はベクトル形式の各画素を要素ごとに平面的に表示したものである。
また、図10(b)に示すように、変換後のベクトル形式の画素も4つの要素から成り、各要素は8ビットの整数フォーマットで表される。
上記のような異なるベクトル形式への変換が終わったら、垂直スカラー画素重ね合わせ部7は、得られたベクトル形式の画像データを垂直ベクトル画像記憶部8に出力する。
垂直ベクトル画像記憶部8は、垂直スカラー画素重ね合わせ部7から出力されたベクトル形式の画像データ(図9及び図10)を保持する。
垂直ベクトル画像処理部9は、垂直ベクトル画像記憶部8に保持されているベクトル形式の画像データ(図9及び図10)の垂直方向の画素ブロック境界に対してデブロッキングフィルタを施す。ここにおいて、図11に示すように、画素ブロックの垂直方向の境界の上下に並んでいる8個の画素(p3〜p0およびq0〜q3)が、その境界に対するデブロッキングフィルタの参照画素である。以下、具体的な処理内容について説明する。
垂直方向の画素ブロック境界に対するデブロッキングフィルタの処理内容は、前述した水平ベクトル画像処理部6の処理内容におけるp3〜p0およびq0〜q3およびp3'〜p0'およびq0'〜q3'を、図11に示すような垂直方向に並ぶ画素の値として読み替えたものに相当する。
従って、本実施形態に係る画像処理装置によれば、画像データの各画素が垂直スカラー画素重ね合わせ部7によって図9及び図10に示すようなベクトル形式の画素に変換されているため、2個のベクトル形式の画素について演算するだけで加重平均を計算することができる。また、プロセッサ内部の並列演算器は2個のベクトル形式の画素のうちのいずれかを判定するだけで済むようになり、条件分岐の数を2回に抑えることができる。
この結果、垂直方向の画素ブロック境界に対するデブロッキングフィルタの演算を効率よく行うことが可能になる。
垂直方向の画素ブロック境界に対するデブロッキングフィルタの演算の処理依存性を図12に示す。演算を正しく行うためには、水平方向の画素ブロック境界に対するデブロッキングフィルタの演算の処理依存性と同様に、まず、図12(a)の行0と行1の画素を参照してそれらの境界のフィルタリングを行う。そして、それがすべて終了してから、図12(b)の行1と行2の画素を参照してそれらの境界のフィルタリングを行う。そして、それがすべて終了してから、図12(c)の行2と行3の画素を参照してそれらの境界のフィルタリングを行う。
そして、垂直方向の画素ブロック境界付近のすべての画素について加重平均を計算し終えると、垂直ベクトル画像処理部9は、デブロッキングフィルタを施したベクトル形式の画像データを垂直ベクトル画像記憶部8に出力する。
垂直ベクトル画素展開部10は、垂直ベクトル画像記憶部8に保持されているベクトル形式の画像データ(図9及び図10)を読み込んで、各ベクトル形式の画素の各要素を垂直方向に展開してスカラー形式の画像データ(図3)に変換する。ここで、ベクトル形式からスカラー形式への変換においては、画素ブロックの高さ、および変換前のベクトル形式の画素のフォーマット、および変換後のスカラー形式の画素のフォーマットなどの条件に応じて適切な変換方法が選択される。
本実施形態においては、図3(a)に示すように、画素ブロックの高さは4画素である。また、図10(b)に示すように、変換前のスカラー形式の画素は8ビットの整数フォーマットで表されている。また、図3(b)に示すように、変換後のスカラー形式の画素は8ビットの整数フォーマットで表される。
この場合において、垂直ベクトル画素展開部10は、図9に示す各ベクトル形式の画素の各要素を垂直方向に展開することにより、図3(a)に示すようなスカラー形式の画素に変換する。
例えば、図9において点線で囲まれている1個のベクトル形式の画素(f0、f1、f2、f3)は、図3(a)において点線で囲まれている4個のスカラー形式の画素f0、f1、f2、f3に変換される。
そして、ベクトル形式からスカラー形式への変換が終わったら、垂直ベクトル画素展開部10は、得られたスカラー形式の画像データを出力スカラー画像記憶部11に出力する。
出力スカラー画像記憶部11は、垂直ベクトル画素展開部10から出力されたスカラー形式の画像データを記憶する。
提示部12は、出力スカラー画像記憶部11に保持されている画像データをユーザに提示する。
以上のように、本実施形態に係る画像処理装置によれば、画素ブロックの境界付近の複数の画素を重ね合わせてベクトル形式に変換している。これにより、GPUなどの汎用の並列ベクトルプロセッサがもつ演算能力を最大限に引き出してデブロッキングフィルタを高速に処理することが可能になる。
(第2の実施形態)
図13は、第2の実施形態に係る画像処理装置の概略構成を示すブロック図である。図13に示すように、第2の実施形態と第1の実施形態が異なる点は、第1の実施形態に係る画像処理装置に対して水平ベクトル画素並べ替え部13と垂直ベクトル画素並べ替え部14を追加したことである。従って、図1と同じ部分には、同じ符号を付し、重複した説明は省略する。
図8に示したように、第1の実施形態における水平ベクトル画像処理部6は、まず列0の画素ブロックと列1の画素ブロックの画素をデブロッキングフィルタによる並列処理を行い(図8(a))、それがすべて終了してから、列1と列2の画素を並列処理する(図8(b))。そしてそれがすべて終了してから、列2と列3の画素を並列処理する(図8(c))。
このように、水平ベクトル画像処理部6は、1回の並列処理において画素ブロック2列分の領域を処理単位とする。従って、例えば入力スカラー画像(図3)の解像度が幅1920画素、高さ1080画素の場合、並列処理の単位は幅2画素、高さ1080画素の極めて細長い領域となる。
GPUなどの並列ベクトルプロセッサでは、このような極めて細長い画素領域を並列処理する場合には、並列演算器の稼働率およびキャッシュのヒット率などが低下してしまい、本来の演算能力を発揮できないことが多い。
そこで本実施形態に係る画像処理装置では、水平ベクトル画素並べ替え部13によって、水平スカラー画素重ね合わせ部4から出力されたベクトル形式の画像データ(図4参照)を読み込み、垂直方向に一列に並ぶベクトル形式の画素列を複数の列に並べ替える(図14参照)。
例えば、図4(b)において点線で囲まれている左端で垂直方向に一列に並ぶベクトル形式の画素列(00、10、20、30)〜(0f、1f、2f、3f)は、図15(a)において点線で囲まれている左端で垂直方向に二列に並ぶベクトル形式の画素列に並べ替えられる。なお、図15(b)は、並び替え後のベクトル形式の各画素を要素ごとに平面的に表した図である。
この結果、並列処理の単位が細長い形状から正方形に近い形状になり、並列演算器の稼働率およびキャッシュのヒット率などが向上するため、後段の水平ベクトル画像処理部6における水平方向の画素ブロック境界に対するデブロッキングフィルタの処理を、効率よく行うことが可能になる。
一方、図12に示したように、第1の実施形態における垂直ベクトル画像処理部9は、まず行0の画素ブロックと行1の画素ブロックの画素を並列処理し(図12(a))、それがすべて終了してから、行1と行2の画素を並列処理する(図12(b))。そしてそれがすべて終了してから、行2と行3の画素を並列処理する(図12(c))。
このように、垂直ベクトル画像処理部9は、1回の並列処理において画素ブロック2行分の領域を処理単位とする。したがって、例えば入力スカラー画像(図3)の解像度が幅1920画素、高さ1080画素の場合、並列処理の単位は幅1920画素、高さ2画素の極めて細長い領域となる。
そこで本実施形態に係る画像処理装置では、垂直ベクトル画素並べ替え部14によって、垂直スカラー画素重ね合わせ部7から出力されたベクトル形式の画像データ(図9及び図10参照)を読み込み、水平方向に一行に並ぶベクトル形式の画素列を複数の行に並べ替える処理を行う(図16参照)。
例えば、図10(a)において上端で水平方向に一行に並ぶベクトル形式の画素列(00、01、02、03)〜(f0、f1、f2、f3)は、図17(a)において上端で水平方向に並ぶ二行のベクトル形式の画素列に並べ替えられる。なお、図17(b)は、並び替え後のベクトル形式の各画素を要素ごとに平面的に表した図である。
この結果、並列処理の単位が細長い形状から正方形に近い形状になり、並列演算器の稼働率およびキャッシュのヒット率などが向上するため、後段の垂直ベクトル画像処理部9における垂直方向の画素ブロック境界に対するデブロッキングフィルタの処理を、効率よく行うことが可能になる。
以上のように、第2の実施形態に係る画像処理装置によれば、並列ベクトルプロセッサのメモリアクセス方式およびデブロッキングフィルタの処理依存性に基づいてベクトル形式の画素を並べ替えることにより、GPUなどの汎用の並列ベクトルプロセッサの稼働率およびキャッシュのヒット率を向上させ、デブロッキングフィルタを高速に処理することが可能になる。
(第3の実施形態)
第3の実施形態に係る画像処理装置の構成は、第1の実施形態又は第2の実施形態に係るそれと同じであるので、図示及び重複する説明は省略する。本実施形態では、図18に示すように、入力スカラー画像記憶部3に記憶されているスカラー形式の画像データの画素ブロックのサイズが、幅2画素、高さ2画素である場合について説明する。
この場合において、図19に示すように、画素ブロックの水平方向の境界の左右に並んでいる4個の画素(p1、p0、q0、q1)が、その境界に対するデブロッキングフィルタの参照画素である。同様に、図20に示すように、画素ブロックの垂直方向の境界の上下に並んでいる4個の画素が、その境界に対するデブロッキングフィルタの参照画素である。
なお、画素のフォーマットについては第1の実施形態及び第2の実施形態と同じであるとする。
水平スカラー画素重ね合わせ部4は、第1の実施形態及び第2の実施形態とは異なり、図18において画素ブロックの水平方向の境界の左右に並んでいる4個のスカラー形式の画素を重ね合わせることにより、図21及び図22に示すようなベクトル形式の画素に変換する。具体的には、以下の通りである。
例えば、図18(a)において点線で囲まれている4個のスカラー形式の画素00、10、20、30は、図21において点線で囲まれている1個のベクトル形式の画素(00,10,20,30)に変換される。また、図18(a)において点線で囲まれている4個のスカラー形式の画素20、30、40、50は、図21において点線で囲まれている1個のベクトル形式の画素(20,30,40,50)に変換される。この変換後のベクトル形式の各画素を要素ごとに平面的に表示した図を図22に示す。
この変換により、水平ベクトル画像処理部6における水平方向の画素ブロックに対するデブロッキングフィルタの演算は、図23(a)に示すように、1個のベクトル形式の画素について演算するだけで済む。また、図23(b)に示すように、プロセッサ内部の並列演算器は条件分岐を処理しなくて済む。
この結果、水平ベクトル画像処理部6における水平方向の画素ブロック境界に対するデブロッキングフィルタの演算を、効率よく行うことが可能になる。
なお、図23(b)では、ベクトル形式の画素(p1、p0、q0、q1)および(p1'、p0'、q0'、q1')を、それぞれpq、pq'と表記している。また、filter()は引数に与えられたベクトル形式の画素値を参照して加重平均を計算する関数である。
垂直スカラー画素重ね合わせ部7においても、上記と同様に、第1の実施形態及び第2の実施形態とは異なり、図22において画素ブロックの垂直方向の境界の上下に並んでいる4個のスカラー形式の画素を重ね合わせることにより、図24及び図25に示すような異なるベクトル形式の画素へと変換する。
例えば、図22において点線で囲まれている4個のスカラー形式の画素e0、e1、e2、e3は、図24において点線で囲まれている1個のベクトル形式の画素(e0、e1、e2、e3)に変換される。同様に、図22において点線で囲まれている4個のスカラー形式の画素f0、f1、f2、f3は、図24において点線で囲まれているベクトル形式の画素(f0、f1、f2、f3)に変換される。なお、ベクトル形式の各画素を要素ごとに平面的に表示した図を図25に示す。
この変換により、水平方向と同様な改善効果が得られ、垂直ベクトル画像処理部9における垂直方向の画素ブロック境界に対するデブロッキングフィルタの演算を、効率よく行うことが可能になる。
以上のように、本実施形態に係る画像処理装置によれば、画素ブロックのサイズに基づいて、画素ブロック境界付近の複数の画素を重ね合わせてベクトル形式に変換することにより、GPUなどの汎用の並列ベクトルプロセッサがもつ演算能力を最大限に引き出してデブロッキングフィルタを高速に処理することが可能になる。
(第4の実施形態)
第4の実施形態に係る画像処理装置の構成は、第1の実施形態又は第2の実施形態に係るそれと同じであるので、図示及び重複する説明は省略する。本実施形態では、水平ベクトル画像記憶部5および垂直ベクトル画像記憶部8に記憶されるベクトル形式の画素の4つの要素が16ビットの整数フォーマットで表された場合について説明する。
なお、画素ブロックのサイズ、およびデブロッキングフィルタの参照画素、およびスカラー形式の画素のフォーマットは第1の実施形態及び第2の実施形態と同じであるとする。
水平スカラー画素重ね合わせ部4は、第1の実施形態から第3の実施形態とは異なり、図3(a)において画素ブロックの水平方向の境界の左右に並んでいる8個のスカラー形式の画素を重ね合わせることにより、図26及び図27に示すようなベクトル形式の画素へと変換する。
例えば、図3(a)において点線で囲まれている8個のスカラー形式の画素80、90、a0、b0、c0、d0、e0、f0は、図26において点線で囲まれている1個のベクトル形式の画素(80/90、a0/b0、c0/d0、e0/f0)に変換される。ここで、80/90とは、画素80の値を上位8ビットに、画素90の値を下位8ビットに割り当てられた16ビットの数値を表す。なお、図28は、各画素のメモリ上での並び順序の例を表す図である。
この変換により、水平ベクトル画像処理部6における水平方向の画素ブロックに対するデブロッキングフィルタの演算は、図29(a)に示すように、1個のベクトル形式の画素について演算するだけで済む。また、図29(b)に示すように、プロセッサ内部の並列演算器は条件分岐を処理しなくて済む。
この結果、水平ベクトル画像処理部6における水平方向の画素ブロック境界に対するデブロッキングフィルタの演算を、効率よく行うことが可能になる。
なお、図29(b)では、ベクトル形式の画素(p3/p2、p1/p0、q0/q1、q2/q3)および(p3'/p2'、p1'/p0'、q0'/q1'、q2'/q3')を、それぞれpq、pq'と表記している。また、filter()は引数に与えられたベクトル形式の画素値を参照して加重平均を計算する関数である。
垂直スカラー画素重ね合わせ部7も、上記と同様に、第1の実施形態から第3の実施形態とは異なり、図27において画素ブロックの垂直方向の境界の上下に並んでいる8個のスカラー形式の画素の上位8ビットを重ね合わせることにより、図30及び図31に示すような異なるベクトル形式の画素へと変換する。
例えば、図27において点線で囲まれている8個のスカラー形式の画素の上位8ビットが、図30において点線で囲まれている1個のベクトル形式の画素(00/01、02/03、04/05、06/07)に変換される。
この変換により、水平方向と同様な改善効果が得られ、垂直ベクトル画像処理部9における垂直方向の画素ブロック境界に対するデブロッキングフィルタの演算を、効率よく行うことが可能になる。
以上のように、本実施形態に係る画像処理装置によれば、ベクトル形式の画素のフォーマットに基づいて、画素ブロック境界付近の複数の画素を重ね合わせてベクトル形式に変換することにより、GPUなどの汎用の並列ベクトルプロセッサがもつ演算能力を最大限に引き出してデブロッキングフィルタを高速に処理することが可能になる。
(第5の実施形態)
第5の実施形態に係る画像処理装置の構成は、第1の実施形態又は第2の実施形態に係るそれと同じであるので、図示及び重複する説明は省略する。本実施形態では、図32に示すように、画素ブロックの水平方向の境界の左右に並んでいる4個の画素(p1、p0、q0、q1)が、その境界に対するデブロッキングフィルタの参照画素であるものとして説明する。同様に、図33に示すように、画素ブロックの垂直方向の境界の上下に並んでいる4個の画素が、その境界に対するデブロッキングフィルタの参照画素であるとするものとして説明する。
なお、画素ブロックのサイズおよび画素のフォーマットは第1の実施形態及び第2の実施形態と同じであるものとする。
水平スカラー画素重ね合わせ部4は、第1の実施形態から第4の実施形態とは異なり、図3(a)において画素ブロックの水平方向の境界の左右に並んでいる4個のスカラー形式の画素を重ね合わせることにより、図34に示すようなベクトル形式の画素に変換する。
例えば、図3(a)において点線で囲まれている4個のスカラー形式の画素20、30、40、50は、図34(a)において点線で囲まれている1個のベクトル形式の画素(20、30、40、50)に変換される。
この変換により、水平ベクトル画像処理部6における水平方向の画素ブロックに対するデブロッキングフィルタの演算は、図29(a)に示したように、1個のベクトル形式の画素について演算するだけで済むようになる。また、図29(b)に示したように、プロセッサ内部の並列演算器は条件分岐を処理しなくて済むようになる。
この結果、水平ベクトル画像処理部6における水平方向の画素ブロック境界に対するデブロッキングフィルタの演算を、効率よく行うことが可能になる。
垂直スカラー画素重ね合わせ部7においても、上記と同様に、第1の実施形態から第4の実施形態とは異なり、図34(b)において画素ブロックの垂直方向の境界の上下に並んでいる4個のスカラー形式の画素を重ね合わせることにより、図35に示すような異なるベクトル形式の画素へと変換する。
例えば、図34(a)において点線で囲まれている4個のスカラー形式の画素22、23、24、25は、図35(a)において点線で囲まれている1個のベクトル形式の画素(22、23、24、25)に変換される。
この変換により、水平方向と同様な改善効果が得られ、垂直ベクトル画像処理部9における垂直方向の画素ブロック境界に対するデブロッキングフィルタの演算を、効率よく行うことが可能になる。
以上のように、本実施形態に係る画像処理装置によれば、デブロッキングフィルタの参照画素に基づいて、画素ブロック境界付近の複数の画素を重ね合わせてベクトル形式に変換することにより、GPUなどの汎用の並列ベクトルプロセッサがもつ演算能力を最大限に引き出してデブロッキングフィルタを高速に処理することが可能になる。
(第6の実施形態)
第6の実施形態に係る画像処理装置の構成は、第2の実施形態に係るそれと同じであるので、図示及び重複する説明は省略する。本実施形態は、水平ベクトル画素並べ替え部13および垂直ベクトル画素並べ替え部14による画素並べ替えの方法が第2の実施形態と異なっている。
第2の実施形態では、水平ベクトル画素並べ替え部13は、水平スカラー画素重ね合わせ部4から出力されたベクトル形式の画像データ(図4)を読み込み、垂直方向に一列に並ぶベクトル形式の画素列を複数の列に並べ替えている。
これに対して本実施形態における水平ベクトル画素並べ替え部13は、垂直方向に一列に並ぶベクトル形式の画素列を複数の列に並べ替えた後に、それら複数の列を再配置する処理を行っている。
例えば、図4(b)において点線で囲まれている左端で垂直方向に一列に並ぶベクトル形式の画素列(00,10,20,30)〜(0f,1f,2f,3f)は、4列(4行)に並ぶベクトル形式の画素列に並べ替えられた後、図36における8行8列の画素領域の左上に配置される。
また、図4(b)において左から2列目に並んでいるベクトル形式の画素列(40,50,60,70)〜(4f,5f,6f,7f)は、4列(4行)に並ぶベクトル形式の画素列に並べ替えられた後、図36における8行8列の画素領域の右上に配置される。
また、図4(b)において左から3列目に並んでいるベクトル形式の画素列(80,90,a0,b0)〜(8f,9f,af,bf)は、4列(4行)に並ぶベクトル形式の画素列に並べ替えられた後、図36における8行8列の画素領域の左下に配置される。
また、図4(b)において右端に並んでいるベクトル形式の画素列(c0,d0,e0,f0)〜(cf,df,ef,ff)は、4列(4行)に並ぶベクトル形式の画素列に並べ替えられた後、図36における8行8列の画素領域の右下に配置される。
図37に、本実施形態における再配置方法の一例を示す。図37によれば、本実施形態における水平ベクトル画素並べ替え部13は、垂直方向に一列に並ぶベクトル形式の画素列を複数の列に並べ替えた後、それら複数の列を最初に水平方向に順番に配置していく。そして、適当な回数配置したら折り返して次の行に移り、同じ回数だけ水平方向に順番に配置する。
なお、折り返す位置は並列ベクトルプロセッサのメモリアクセス方式およびキャッシュ構造などに応じて決定してもよい。
このような再配置処理を行うことにより、並列演算器の稼働率およびキャッシュのヒット率などが向上するため、後段の水平ベクトル画像処理部6における水平方向の画素ブロック境界に対するデブロッキングフィルタの処理を、効率よく行うことが可能になる。
本実施形態における垂直ベクトル画素並べ替え部14は、水平方向に一行に並ぶベクトル形式の画素列を複数の行に並べ替えた後、それら複数の行を再配置する処理を行う。この再配置処理が、本実施形態における垂直ベクトル画素並べ替え部14の特徴である。
例えば、図10(a)において点線で囲まれている上端で水平方向に一行に並ぶベクトル形式の画素列(00,01,02,03)〜(f0,f1,f2,f3)は、4行(4列)に並ぶベクトル形式の画素列に並べ替えられた後、図38における8行8列の画素領域の左上に配置される。
図10(a)において上から2行目に並んでいるベクトル形式の画素列(04,05,06,07)〜(f4,f5,f6,f7)は、4行(4列)に並ぶベクトル形式の画素列に並べ替えられた後、図38における8行8列の画素領域の右上に配置される。
図10(a)において上から3行目に並んでいるベクトル形式の画素列(08,09,0a,0b)〜(f8,f9,fa,fb)は、4行(4列)に並ぶベクトル形式の画素列に並べ替えられた後、図38における8行8列の画素領域の左下に配置される。
図10(a)において下端に並んでいるベクトル形式の画素列(0c,0d,0e,0f)〜(fc,fd,fe,ff)は、4行(4列)に並ぶベクトル形式の画素列に並べ替えられた後、図38における8行8列の画素領域の右下に配置される。
図39に、本実施形態における再配置方法の例を示す。図39によれば、本実施形態における垂直ベクトル画素並べ替え部14は、水平方向に一行に並ぶベクトル形式の画素列を複数の行に並べ替えた後、それら複数の行を最初に水平方向に順番に配置していく。そして、適当な回数配置したら折り返して次の行に移り、同じ回数だけ水平方向に順番に配置する。
なお、折り返す位置は並列ベクトルプロセッサのメモリアクセス方式およびキャッシュ構造などに応じて決定してもよい。
このような再配置処理を行うことにより、並列演算器の稼働率およびキャッシュのヒット率などが向上するため、後段の垂直ベクトル画像処理部9における垂直方向の画素ブロック境界に対するデブロッキングフィルタの処理を、効率よく行うことが可能になる。
以上のように、本実施形態に係る画像処理装置によれば、並列ベクトルプロセッサのメモリアクセス方式およびデブロッキングフィルタの処理依存性に基づいてベクトル形式の画素を並べ替えることにより、GPUなどの汎用の並列ベクトルプロセッサの稼働率およびキャッシュのヒット率を向上させ、デブロッキングフィルタを高速に処理することが可能になる。
(第7の実施形態)
第7の実施形態に係る画像処理装置の構成は、第2の実施形態係るそれと同じであるので、図示及び重複する説明は省略する。本実施形態は、水平ベクトル画素並べ替え部13および垂直ベクトル画素並べ替え部14による画素並べ替えの方法が第2の実施形態と異なる。
第6の実施形態においては、水平ベクトル画素並べ替え部13は、垂直方向に一列に並ぶベクトル形式の画素列を複数の列に並べ替えた後、それら複数の列を最初に水平方向に順番に配置している。
これに対して、本実施形態における水平ベクトル画素並べ替え部13は、図40に示すように、垂直方向に一列に並ぶベクトル形式の画素列を複数の列に並べ替えた後、それら複数の列を最初に垂直方向に順番に配置していく。そして、適当な回数配置したら折り返して次の列に移り、同じ回数だけ垂直方向に順番に配置する。
なお、折り返す位置は並列ベクトルプロセッサのメモリアクセス方式およびキャッシュ構造などに応じて決定してもよい。
このような再配置処理を行うことにより、並列演算器の稼働率およびキャッシュのヒット率などが向上するため、後段の水平ベクトル画像処理部6における水平方向の画素ブロック境界に対するデブロッキングフィルタの処理を、効率よく行うことが可能になる。
また、第6の実施形態における垂直ベクトル画素並べ替え部14は、水平方向に一行に並ぶベクトル形式の画素列を複数の行に並べ替えた後、それら複数の行を最初に水平方向に順番に配置している。
これに対して本実施形態における垂直ベクトル画素並べ替え部14は、図41に示すように、水平方向に一行に並ぶベクトル形式の画素列を複数の行に並べ替えた後、それら複数の行を最初に垂直方向に順番に配置していく。そして、適当な回数配置したら折り返して次の列に移り、同じ回数だけ垂直方向に順番に配置する。
なお、折り返す位置は並列ベクトルプロセッサのメモリアクセス方式およびキャッシュ構造などに応じて決定してもよい。
このような再配置処理を行うことにより、並列演算器の稼働率およびキャッシュのヒット率などが向上するため、後段の垂直ベクトル画像処理部9における垂直方向の画素ブロック境界に対するデブロッキングフィルタの処理を、効率よく行うことが可能になる。
以上のように、本実施形態に係る画像処理装置によれば、並列ベクトルプロセッサのメモリアクセス方式およびデブロッキングフィルタの処理依存性に基づいてベクトル形式の画素を並べ替えることにより、GPUなどの汎用の並列ベクトルプロセッサの稼働率およびキャッシュのヒット率を向上させ、デブロッキングフィルタを高速に処理することが可能になる。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。
上記の実施形態では、スカラー画素の重ね合わせを水平画素、垂直画素の順に行ったが、垂直画素の重ね合わせを先に行って、デブロッキングフィルタを施した後に、水平画素の重ね合わせを行っても良い。
上記の実施形態では、水平画素及び垂直画素の両者について、スカラー画素の重ね合わせを行ってベクトル化したが、いずれか一方のみを行うようにしても良い。その場合には、例えば、第1の実施形態において、水平ベクトル画像処理によるデブロッキングフィルタ処理の後に、水平ベクトル画素の展開を行えばよい。
また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
第1の実施形態に係る画像処理装置の概略構成を示すブロック図である。 1枚のフレームの画像がY、Cb、Crの3つの色成分で構成されている場合の動画像の構成例を示す図である。 本発明の第1の実施形態において入力スカラー画像記憶部3に記憶されるスカラー画像データの例を示す図である。 本発明の第1の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第1の実施形態における水平方向の画素ブロック境界に対するデブロッキングフィルタの参照画素を示す図である。 従来のスカラー演算によるデブロッキングフィルタ処理を示す図である。 本発明の第1の実施形態におけるベクトル演算によるデブロッキングフィルタ処理を示す図である。 本発明の第1の実施形態における水平方向の画素ブロック境界に対するデブロッキングフィルタの処理依存性を示す図である。 本発明の第1の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第1の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第1の実施形態における垂直方向の画素ブロック境界に対するデブロッキングフィルタの参照画素を示す図である。 本発明の第1の実施形態における垂直方向の画素ブロック境界に対するデブロッキングフィルタの処理依存性を示す図である。 第2の実施形態に係る画像処理装置の概略構成を示すブロック図である。 本発明の第2の実施形態において水平ベクトル画素並べ替え部13によって並べ替えられたベクトル画像データを示す図である。 本発明の第2の実施形態において水平ベクトル画素並べ替え部13によって並べ替えられたベクトル画像データを示す図である。 本発明の第2の実施形態において垂直ベクトル画素並べ替え部14によって並べ替えられたベクトル画像データを示す図である。 本発明の第2の実施形態において垂直ベクトル画素並べ替え部14によって並べ替えられたベクトル画像データを示す図である。 本発明の第3の実施形態において入力スカラー画像記憶部3に記憶されるスカラー画像データの例を示す図である。 本発明の第3の実施形態における水平方向の画素ブロック境界に対するデブロッキングフィルタの参照画素を示す図である。 本発明の第3の実施形態における垂直方向の画素ブロック境界に対するデブロッキングフィルタの参照画素を示す図である。 本発明の第3の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第3の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第3の実施形態におけるベクトル演算によるデブロッキングフィルタ処理を示す図である。 本発明の第3の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第3の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第4の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第4の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第4の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第4の実施形態におけるベクトル演算によるデブロッキングフィルタ処理を示す図である。 本発明の第4の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第4の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第5の実施形態における水平方向の画素ブロック境界に対するデブロッキングフィルタの参照画素を示す図である。 本発明の第5の実施形態における垂直方向の画素ブロック境界に対するデブロッキングフィルタの参照画素を示す図である。 本発明の第5の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第5の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第6の実施形態において水平ベクトル画像記憶部5に記憶されるベクトル画像データの例を示す図である。 本発明の第6の実施形態における水平ベクトル画素並べ替え部13の再配置処理の例を示す図である。 本発明の第6の実施形態において垂直ベクトル画像記憶部8に記憶されるベクトル画像データの例を示す図である。 本発明の第6の実施形態における垂直ベクトル画素並べ替え部14の再配置処理の例を示す図である。 本発明の第7の実施形態における水平ベクトル画素並べ替え部13の再配置処理の例を示す図である。 本発明の第7の実施形態における垂直ベクトル画素並べ替え部14の再配置処理の例を示す図である。
符号の説明
1・・・中央処理部
2・・・主記憶部
3・・・入力スカラー画像記憶部
4・・・水平スカラー画素重ね合わせ部
5・・・水平ベクトル画像記憶部
6・・・水平ベクトル画像処理部
7・・・垂直スカラー画素重ね合わせ部
8・・・垂直ベクトル画像記憶部
9・・・垂直ベクトル画像処理部
10・・・垂直ベクトル画素展開部
11・・・出力スカラー画像記憶部
12・・・提示部
13・・・水平ベクトル画素並べ替え部
14・・・垂直ベクトル画素並べ替え部

Claims (13)

  1. 水平方向及び垂直方向の少なくとも一方に並ぶ複数のスカラー形式の画素を重ね合わせてベクトル形式の画像データに変換するスカラー画素重ね合わせ手段と、
    前記ベクトル形式の画像データに対してデブロッキングフィルタを施すベクトル画像処理手段と、を具備することを特徴とする画像処理装置。
  2. 請求項1に記載の画像処理装置において、前記デブロッキングフィルタが施されたベクトル形式の画像データの画素の各要素を水平方向及び垂直方向の少なくとも一方に展開してスカラー形式の画像データに変換するベクトル画素展開手段と、を更に具備することを特徴とする画像処理装置。
  3. 請求項1又は請求項2に記載の画像処理装置において、前記スカラー画素重ね合わせ手段から出力されたベクトル形式の画像データを読み込み、一列に並ぶベクトル形式の画素列を複数の列に並べ替えるベクトル画素並べ替え手段を更に具備することを特徴とする画像処理装置。
  4. スカラー形式の画像データを読み込んで、水平方向に並ぶ複数のスカラー形式の画素を重ね合わせて第1のベクトル形式の画像データに変換する水平スカラー画素重ね合わせ手段と、
    前記第1のベクトル形式に変換された画像データに対してデブロッキングフィルタを施す水平ベクトル画像処理手段と、
    前記水平ベクトル画像処理手段でデブロッキングフィルタを施された第1のベクトル形式の画像データを読み込んで、垂直方向に並ぶ複数のベクトル形式の画素の各要素を重ね合わせて第1のベクトル形式と異なる第2のベクトル形式の画像データに変換する垂直スカラー画素重ね合わせ手段と、
    前記第2のベクトル形式の画像データに対してデブロッキングフィルタを施す垂直ベクトル画像処理手段と、を具備することを特徴とする画像処理装置。
  5. 請求項4に記載の画像処理装置において、前記垂直ベクトル画像処理手段でデブロッキングフィルタを施された第2のベクトル形式の画像データを読み込んで、前記第2のベクトル形式の画素の各要素を垂直方向に展開してスカラー形式の画像データに変換する垂直ベクトル画素展開手段と、を更に具備することを特徴とする画像処理装置。
  6. 請求項1から請求項5のいずれか1項に記載の画像処理装置において、
    前記各手段の動作を制御するプログラムと動画像データを含むデータを保持する主記憶手段と、
    スカラー形式の入力画像データを記憶する入力スカラー画像記憶手段と、
    前記ベクトル形式の画像データを記憶するベクトル画像記憶手段と、
    デブロッキングフィルタを施された前記ベクトル形式の画像データを展開して得られたスカラー形式の画像データを記憶する出力スカラー画像記憶手段と、を更に具備することを特徴とする画像処理装置。
  7. 請求項1から請求項6のいずれか1項に記載の画像処理装置において、デブロッキングフィルタを施された前記ベクトル形式の画像データを展開して得られたスカラー形式の画像データを提示する提示手段を具備することを特徴とする画像処理装置。
  8. 請求項1から請求項7のいずれか1項に記載の画像処理装置において、前記スカラー画素重ね合わせ手段は、所定数の画素を含む画素ブロック内における水平方向又は垂直方向に連続して配置された画素を1つのベクトルの要素とする画像データに変換することを特徴とする画像処理装置。
  9. 請求項1から請求項8のいずれか1項に記載の画像処理装置において、前記ベクトル画像処理手段は、画像データの端部のベクトル形式の画素から順次デブロッキングフィルタを施すことを特徴とする画像処理装置。
  10. 請求項4から請求項9のいずれか1項に記載の画像処理装置において、
    前記水平スカラー画素重ね合わせ手段から出力されたベクトル形式の画像データを読み込み、垂直方向に一列に並ぶベクトル形式の画素列を複数の列に並べ替える水平ベクトル画素並べ替え手段と、
    前記垂直スカラー画素重ね合わせ手段から出力されたベクトル形式の画像データを読み込み、水平方向に一行に並ぶベクトル形式の画素列を複数の行に並べ替える垂直ベクトル画素並べ替え手段と、を更に具備することを特徴とする画像処理装置。
  11. 請求項1から請求項7、請求項9及び請求項10のいずれか1項に記載の画像処理装置において、前記スカラー画素重ね合わせ手段は、所定数の画素を含む画素ブロックと該画素ブロックに隣接する画素ブロックにおける水平方向又は垂直方向に連続して配置された画素を1つのベクトルの要素とする画像データに変換することを特徴とする画像処理装置。
  12. 水平方向及び垂直方向の少なくとも一方に並ぶ複数のスカラー形式の画素を重ね合わせてベクトル形式の画像データに変換し、
    前記ベクトル形式の画像データに対してデブロッキングフィルタを施すことを特徴とする画像処理方法。
  13. 画像データにデブロッキングフィルタを施すための画像処理プログラムにおいて、
    水平方向及び垂直方向の少なくとも一方に並ぶ複数のスカラー形式の画素を重ね合わせてベクトル形式の画像データに変換する手段と、
    前記ベクトル形式の画像データに対してデブロッキングフィルタを施す手段と、を具備することを特徴とする画像処理プログラム。
JP2006099128A 2006-03-31 2006-03-31 画像処理装置、画像処理方法及び画像処理プログラム Withdrawn JP2007274478A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006099128A JP2007274478A (ja) 2006-03-31 2006-03-31 画像処理装置、画像処理方法及び画像処理プログラム
EP20070251117 EP1863293A3 (en) 2006-03-31 2007-03-15 Image processing apparatus, image processing method and image processing program
US11/686,673 US20070230817A1 (en) 2006-03-31 2007-03-15 Image processing apparatus, image processing method and image processing program
CNA2007101282541A CN101087425A (zh) 2006-03-31 2007-03-23 图像处理装置、图像处理方法以及图像处理程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006099128A JP2007274478A (ja) 2006-03-31 2006-03-31 画像処理装置、画像処理方法及び画像処理プログラム

Publications (1)

Publication Number Publication Date
JP2007274478A true JP2007274478A (ja) 2007-10-18

Family

ID=38559006

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006099128A Withdrawn JP2007274478A (ja) 2006-03-31 2006-03-31 画像処理装置、画像処理方法及び画像処理プログラム

Country Status (4)

Country Link
US (1) US20070230817A1 (ja)
EP (1) EP1863293A3 (ja)
JP (1) JP2007274478A (ja)
CN (1) CN101087425A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007287031A (ja) * 2006-04-19 2007-11-01 Seiko Epson Corp 画像処理装置及び画像処理方法
JP2010166533A (ja) * 2009-01-19 2010-07-29 Canon Inc 符号化装置及びその制御方法、コンピュータプログラム

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4440286B2 (ja) * 2007-06-11 2010-03-24 三菱電機株式会社 ブロックノイズ除去装置
US9495386B2 (en) 2008-03-05 2016-11-15 Ebay Inc. Identification of items depicted in images
WO2009111047A2 (en) 2008-03-05 2009-09-11 Ebay Inc. Method and apparatus for image recognition services
US8818978B2 (en) 2008-08-15 2014-08-26 Ebay Inc. Sharing item images using a similarity score
US8825660B2 (en) * 2009-03-17 2014-09-02 Ebay Inc. Image-based indexing in a network-based marketplace
JP5640370B2 (ja) * 2009-12-18 2014-12-17 ソニー株式会社 画像処理装置,画像処理方法及び撮像装置
US9164577B2 (en) 2009-12-22 2015-10-20 Ebay Inc. Augmented reality system, method, and apparatus for displaying an item image in a contextual environment
JP5835942B2 (ja) * 2010-06-25 2015-12-24 キヤノン株式会社 画像処理装置、その制御方法及びプログラム
US10127606B2 (en) 2010-10-13 2018-11-13 Ebay Inc. Augmented reality system and method for visualizing an item
US9449342B2 (en) 2011-10-27 2016-09-20 Ebay Inc. System and method for visualization of items in an environment using augmented reality
US9934522B2 (en) 2012-03-22 2018-04-03 Ebay Inc. Systems and methods for batch- listing items stored offline on a mobile device
US10846766B2 (en) 2012-06-29 2020-11-24 Ebay Inc. Contextual menus based on image recognition
JP2014207536A (ja) 2013-04-12 2014-10-30 ソニー株式会社 画像処理装置および方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950473B2 (en) * 2002-06-21 2005-09-27 Seiko Epson Corporation Hybrid technique for reducing blocking and ringing artifacts in low-bit-rate coding
AU2002364104A1 (en) * 2002-08-15 2004-03-03 On2.Com Imprroved video compression system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007287031A (ja) * 2006-04-19 2007-11-01 Seiko Epson Corp 画像処理装置及び画像処理方法
JP2010166533A (ja) * 2009-01-19 2010-07-29 Canon Inc 符号化装置及びその制御方法、コンピュータプログラム

Also Published As

Publication number Publication date
EP1863293A2 (en) 2007-12-05
CN101087425A (zh) 2007-12-12
EP1863293A3 (en) 2007-12-12
US20070230817A1 (en) 2007-10-04

Similar Documents

Publication Publication Date Title
JP2007274478A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
US8369419B2 (en) Systems and methods of video compression deblocking
JP4971442B2 (ja) ピクセルデータ変換のための画像処理装置及び方法
EP2819415B1 (en) Image decoding apparatus
KR20110074884A (ko) 화상처리장치 및 화상처리방법
US20120307004A1 (en) Video decoding with 3d graphics shaders
JP4843377B2 (ja) 画像処理装置及び画像処理方法
CN102835104B (zh) 去块滤波方法
US20050047502A1 (en) Method and apparatus for the efficient representation of interpolated video frames for motion-compensated coding
JP5004717B2 (ja) 描画装置、描画方法、および描画プログラム
CN110324668A (zh) 图像块编码中的变换方法、解码中的反变换方法及装置
CN102300086A (zh) 对参考帧边界进行扩展和对运动补偿参考样本位置进行限定的方法
US8457445B2 (en) Image-scaling-down method and image processing apparatus
JP4109151B2 (ja) 画像処理装置
KR20090102646A (ko) 에이치 닷 264 표준에 근거한 디코더용 움직임 보상기의 보간 연산기 구조
JP4419608B2 (ja) 動画像符号化装置
KR102476207B1 (ko) 반도체 장치의 동작 방법 및 반도체 시스템
WO2019122834A1 (en) Managing data for transportation
CN102625091B (zh) 一种基于avs的帧间预测方法
KR102448147B1 (ko) 디컨볼루션 연산에 기반한 다차원 정보 생성 방법, 그리고 이를 구현하기 위한 장치
CN102625095B (zh) 一种基于avs的帧间预测方法
KR101742765B1 (ko) 인터폴레이터 및 인터폴레이터 픽셀 생성 방법
JP2007282085A (ja) 画像フィルタ処理装置および画像処理装置
CN102625094B (zh) 一种基于avs的帧间预测方法
JP4628464B2 (ja) 映像編集装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070926

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20081006