JP2004072555A - Image processor, image processing method, recording medium and program - Google Patents

Image processor, image processing method, recording medium and program Download PDF

Info

Publication number
JP2004072555A
JP2004072555A JP2002230855A JP2002230855A JP2004072555A JP 2004072555 A JP2004072555 A JP 2004072555A JP 2002230855 A JP2002230855 A JP 2002230855A JP 2002230855 A JP2002230855 A JP 2002230855A JP 2004072555 A JP2004072555 A JP 2004072555A
Authority
JP
Japan
Prior art keywords
image
tiles
predetermined frame
grid
information
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.)
Granted
Application number
JP2002230855A
Other languages
Japanese (ja)
Other versions
JP3997406B2 (en
Inventor
Hiroshi Kusogami
久曽神 宏
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
Priority to JP2002230855A priority Critical patent/JP3997406B2/en
Publication of JP2004072555A publication Critical patent/JP2004072555A/en
Application granted granted Critical
Publication of JP3997406B2 publication Critical patent/JP3997406B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To suppress an image information amount after compressing an image, small and to improve image quality in a particular range of the image. <P>SOLUTION: A position designating part 72 respectively calculates minimum values of an X axis and a Y axis among coordinates of an object desired to be segmented to determine them as (▵x, ▵y) and supplies them as grid moving information 92 to an encoder 71 and a storage part 73. The encoder 71 acquires image information, also acquires the grid moving information 92 from the position designating part 72, encodes the image information on the basis of the image information and the grid moving information 92 and stores encoded image information 91 generated by encoding in the storage part 73. The encoded image information 91 and the grid moving information 92 are stored in the storage part 73, and one piece of the grid moving information 92 is associated with one piece of the encoded image information 91. The present invention is applicable to a personal computer. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、画像処理装置および方法、記録媒体、並びにプログラムに関し、特に、画像を圧縮した後の画像情報量を小さく抑え、かつ、画像の特定範囲の画質を高めることができるようにした、画像処理装置および方法、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
近年、画像を圧縮する方式の1つとして、JPEG(Joint Photographic Expert Group)2000が提示されている。JPEG2000は、図1に示されるような、縦のサイズがXであり、横のサイズがYである1枚の画像1を、複数のタイルに分割し、各タイル毎に圧縮をすることが可能な画像エンコード方式である。図1の例の場合、画像1には、オブジェクト10、オブジェクト11、オブジェクト12、およびオブジェクト13が含まれている。
【0003】
次に、図2を参照して、図1の画像1を分割する例を説明する。図2の例では、画像1は、縦に6分割され、横に6分割されて、36個のタイルに分割されている。タイルは、グリッドに沿って区切られる範囲を意味する。図2において、タイルの縦の列の番号を1乃至6とし、横の行の番号をA乃至Fとし、1番左上のタイルをタイルA1と称し、タイルA1の右を順番に、タイルA2、タイルA3、タイルA4、タイルA5、およびタイルA6と称する。また、タイルA1の下を順番に、タイルB1、タイルC1、タイルD1、タイルE1、およびタイルF1と称する。
【0004】
このように、画像を分割し、各タイル毎に圧縮をすることができる。
【0005】
【発明が解決しようとする課題】
しかしながら、画像1の中から、例えば楕円形のオブジェクトであるオブジェクト10の部分だけを切り出した画像を作る場合、このオブジェクト10の大きさは、2個のタイルに収まる大きさであるにも拘わらず、図2に示されるようなタイル分割では、「B3,B4,B5,C3,C4,およびC5」の6つのタイル画像が必要となり、画像情報量を効率的に少なくすることができないという課題があった。
【0006】
本発明はこのような状況に鑑みてなされたものであり、画像を圧縮した後の画像情報量を小さく抑え、かつ、画像の特定範囲の画質を高めることができるようにするものである。
【0007】
【課題を解決するための手段】
本発明の画像処理装置は、所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得手段と、取得手段により取得された位置情報に基づいて、グリッドを移動する移動情報を生成する生成手段と、生成手段により生成された移動情報に基づいて、所定のフレームの画像の領域を分割し、再合成する合成手段と、合成手段により再合成された所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮手段とを備えることを特徴とする。
【0008】
圧縮手段は、所定のフレームの画像を、その領域によって異なる大きさのタイルに分割し、圧縮するようにすることができる。
【0009】
圧縮手段は、特定の範囲の画像が含まれるタイルに対して、特定の範囲の画像が含まれないタイルとは異なるアルゴリズムで圧縮するようにすることができる。
【0010】
圧縮手段は、特定の範囲の画像が含まれるタイルに対して、特定の範囲が含まれないタイルとは異なる解像度で圧縮するようにすることができる。
【0011】
本発明の画像処理方法は、所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得ステップと、取得ステップの処理により取得された位置情報に基づいて、グリッドを移動する移動情報を生成する生成ステップと、生成ステップの処理により生成された移動情報に基づいて、所定のフレームの画像の領域を分割し、再合成する合成ステップと、合成ステップの処理により再合成された所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮ステップとを含むことを特徴とする。
【0012】
本発明の記録媒体に記録されているプログラムは、所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得ステップと、取得ステップの処理により取得された位置情報に基づいて、グリッドを移動する移動情報を生成する生成ステップと、生成ステップの処理により生成された移動情報に基づいて、所定のフレームの画像の領域を分割し、再合成する合成ステップと、合成ステップの処理により再合成された所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮ステップとを含むことを特徴とする。
【0013】
本発明のプログラムは、所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得ステップと、取得ステップの処理により取得された位置情報に基づいて、グリッドを移動する移動情報を生成する生成ステップと、生成ステップの処理により生成された移動情報に基づいて、所定のフレームの画像の領域を分割し、再合成する合成ステップと、合成ステップの処理により再合成された所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮ステップとを含む処理をコンピュータに実行させることを特徴とする。
【0014】
本発明の画像処理装置および方法、記録媒体、並びにプログラムにおいては、所定のフレームの画像の中の特定領域の画像を指定する位置情報が取得され、取得された位置情報に基づいて、グリッドを移動する移動情報が生成され、生成された移動情報に基づいて、所定のフレームの画像の領域が分割され、再合成され、再合成された所定のフレームの画像が複数のタイルに分割され、圧縮される。
【0015】
【発明の実施の形態】
図3は、本発明を適用した画像変換装置50の構成例を示すブロック図である。画像変換装置50は、エンコーダ71、位置指定部72、および記憶部73により構成されている。
【0016】
位置指定部72は、ユーザの指令に基づいて供給されてきた位置情報(例えば、ユーザにより、マウスなどから入力された位置に対応する情報)に対して、位置を指定するための、グリッド移動情報92を生成する。例えば、後述する図4のオブジェクト10がROI(Region of Interest)(切り出したい画像、すなわち、注目領域)として、ユーザにより指定されたとすると、位置指定部72は全体の画像に対するROIの移動情報を生成する。タイルは、複数のグリッドから構成される。
【0017】
具体的には、位置指定部72は、図4に示される所定のフレームの画像1(図2に示される画像1と同一の画像)に対して、左上頂点を原点0として、横方向にx軸を設定し、縦方向にy軸を設定し、画像1内の全ての画素の座標を(x,y)の形で表わす。このとき、0≦x≦Xかつ、0≦y≦Yとする。ここで、ユーザにより指令された、切り出したいROI(図4の例の場合、オブジェクト10)の座標のうち、x軸とy軸に関してそれぞれ最小値を基準座標として求め、その値を図4に示されるように(Δx,Δy)とする。この、(Δx,Δy)が、グリッド移動情報となる。位置指定部72は、グリッド移動情報92((Δx,Δy))を、エンコーダ71へ供給する。また、位置指定部72は、図5に示されるように、グリッド移動情報92((Δx,Δy))を記憶部73に供給し、記憶させる。
【0018】
図5の例では、画像1に対応するファイル名はtest0とされ、そのグリッド移動情報は、(Δx,Δy)=(20,10)とされている。Image0は、別のファイルの名称であり、そのグリッド移動情報は、(5,7)とされている。図5に示されるように、グリッド移動情報92は、エンコード済画像情報91と1対1に対応する。
【0019】
エンコーダ71は、供給されてきた画像情報(画像データ)を、グリッド移動情報92(位置指定部72から供給されたグリッド移動情報92)を用いて変換した画像をJPEG2000の方式でエンコードし、エンコード済画像情報91として記憶部72に供給し、記憶させる。変換の詳細は、図6と図7を参照して後述する。画像情報は、カメラなどから入力されたものであってもよいし、ハードディスク(図示せず)などに記憶された画像データを再生したものであってもよい。
【0020】
図3に戻って、記憶部73には、エンコーダ71から供給されたエンコード済画像情報92以外に、位置指定部72から供給されたグリッド移動情報92が記憶されている。1つのエンコード済画像情報91には、1つのグリッド移動情報92が対応している。
【0021】
なお、図4の例では、画像1内での注目領域(ROI)をオブジェクト10と指定したが、画像1内の所定の領域(特定範囲)を矩形で指定するようにしてもよい。また、例えば、ビデオカメラで撮影した映像のように、画像が連続している場合(または動画の場合)には、画像毎や、シーンチェンジの度に範囲を指定し直してもよい。勿論、全ての画像1に対して共通する、ある特定範囲を指定してもよい。
【0022】
さらに、例えば、スタジオでニュースを読むキャスターの映像が流れている場合などにおいては、そのキャスターの背景の画像はほとんど変化することなく、キャスターの顔周辺の画像のみが、時刻の経過とともに変化する。このような場合、前の画像との差分を取りながら、値が大きく変化している範囲を注目領域(特定範囲)として自動的に選び出すようにすることもできる。これは、動きが激しい部分には、重要な情報が含まれているという仮定に基づいているが、画像の種類によっては、効果的に画像を圧縮することが可能となる。
【0023】
次に、図6と図7のフローチャートを参照して、画像変換装置50における処理について説明する。なお、この処理は、ユーザにより図4の画像1の圧縮が指令されたとき開始される。
【0024】
ステップS1において、位置指定部72は、ユーザからの指示に基づいて、ROIを指定する位置情報を取得する。
【0025】
ステップS2において、位置指定部72は、位置情報からグリッド移動情報92を演算する。例えば、図4のオブジェクト10がROIとしてユーザにより指定された場合、位置指定部72は、ROIの基準座標を、ROIの最小値として求める。図4の例の場合、グリッド移動情報92は、例えば、(Δx,Δy)=(20,10)として求められる。このグリッド移動情報92は、エンコーダ71に供給される。
【0026】
ステップS3において、エンコーダ71は、y=0と初期設定する。
【0027】
ステップS4において、エンコーダ71は、x=0と初期設定する。
【0028】
ステップS5において、エンコーダ71は、Δx≦xかつΔy≦yであるか否かを判定する。いまの例の場合、ステップS3とステップS4の処理によりy=0,x=0とされ、(Δx,Δy)=(20,10)であるため、Δx≦xでもなく、Δy≦yでもない。そのため、NOと判定される。
【0029】
ステップS5において、Δx≦xかつΔy≦yでないと判定された場合、処理は、ステップS7に進み、エンコーダ71は、Δx≦xであるか否かを判定する。いまの例の場合、ステップS4の処理によりx=0とされ、(Δx,Δy)=(20,10)であるため、NOと判定される。
【0030】
ステップS7において、Δx≦xではないと判定された場合、処理はステップS9に進み、エンコーダ71は、Δy≦yであるか否かを判定する。いまの例の場合、ステップS3の処理によりy=0とされ、(Δx,Δy)=(20,10)であるため、NOと判定される。
【0031】
ステップS9において、Δy≦yでないと判定された場合、処理はステップS11に進み、エンコーダ71は、m=x+X−Δx,n=y+Y−Δyと設定する。例えば、X=50,Y=35とすると、いまの例の場合、(x,y)=(0,0)であり、(Δx,Δy)=(20,10)であるため、(m,n)=(50−20,35−10)、すなわち、(m,n)=(30,25)と設定される。
【0032】
ステップS11の後、ステップS12に進み、エンコーダ71は、座標(x,y)の画素を、座標(m,n)の画素として出力する。いまの例の場合、(x,y)=(0,0)の画素情報が、座標(m,n)=(30,25)の画素情報として出力される。
【0033】
すなわち、ステップS11の処理は、Δx≦xでもなく、Δy≦yでもない場合(ステップS5,ステップS7,ステップS9が全てNOである場合)、座標(x,y)の画素を座標(x+X−Δx,y+Y−Δy)に移動させることを意味する。
【0034】
ステップS13において、エンコーダ71は、x<Xであるか否かを判定する。例えば、X=50であるとすると、いまの例の場合、x=0であるため、YESと判定される。ステップS13において、x<Xであると判定された場合、処理はステップS14に進み、x=x+1と設定される。すなわち、(x,y)=(1,0)とされ、処理はステップS5に戻る。
【0035】
再び、ステップS5において、エンコーダ71は、Δx≦xかつΔy≦yであるか否かを判定する。いまの例の場合、ステップS14の処理により(x,y)=(1,0)とされ、(Δx,Δy)=(20,10)とされるため、NOと判定される。その後、同様の処理が繰り返され、ステップS14の処理により、xに1づつ加算され(x=x+1され)、x=21になるまで同様の処理が繰り返される。ステップS14の処理により、x=21と設定された場合、ステップS7において、Δx≦xであると判定される。
【0036】
その後、処理は、ステップS8に進み、エンコーダ71は、(m,n)=(x,y+Y−Δy)と設定する。いまの例の場合、x=21と設定されたため(ステップS14)、(x,y)=(21,0)であり、(m,n)=(21,0+50−10)、すなわち、(m,n)=(21,40)とされる。ステップS9の処理の後、ステップS12に進み、座標(x,y)=(21,0)の画素は、座標(m,n)=(21,40)の画素として出力される。
【0037】
すなわち、ステップS8の処理は、Δx≦xであり、Δy≦yでない場合(ステップS5においてNOとされ、ステップS7においてYESとされる場合)、座標(x,y)の画素を座標(x,y+Y−Δy)に移動させることを意味する。
【0038】
ステップS12の処理の後、ステップS13に進み、再び、エンコーダ71は、x<Xであるか否かを判定する。いまの例の場合、x=21であるため、YESと判定され、処理はステップS14に進み、x=50になるまで同様の処理が繰り返される。これにより、y=0においてx=0乃至x=50まで進み、y=0における横軸全ての画素が出力される。
【0039】
ステップS14において、x=50と設定された場合、上述した処理と同様の処理がステップS12まで繰り返され、ステップS13において、x<Xでないと判定される(x=50,X=50であるため)。ステップS13において、x<Xでないと判定された場合、処理はステップS15に進み、エンコーダ71は、y<Yであるか否かを判定する。いまの例の場合、Y=35であり、y=0であるため、YESと判定される。ステップS15において、y<Yであると判定された場合、処理はステップS16に進み、y=y+1と設定される(yに1が加算される)。すなわち、(x,y)=(50,1)とされ、処理はステップS4に戻る。
【0040】
その後、ステップS4において、エンコーダ71は、x=0とする。以下、同様の処理が繰り返され、再度、x=50となったとき(いまの例の場合、y=1である)、ステップS15において、y=y+1とされ、y=2となる。以下、ステップS16の処理によりy=11とされるまで、同様の処理が繰り返される。ステップS16の処理により、y=11と設定された場合、ステップS9において、Δy≦yであると判定される。
【0041】
ステップS9において、Δy≦yであると判定された場合、処理はステップS10に進み、エンコーダ71は、(m,n)=(x+X−Δx,y)と設定する。例えば、y=11,x=0であるとすると、(m,n)=(0+50−20,11)、すなわち、(m,n)=(30,11)とされる。その後、処理はステップS12に進み、同様の処理が繰り返され、x=21とされたとき(y=11)、処理はステップS5に進み、Δx≦xかつ、Δy≦yであると判定され、処理はステップS6に進む。
【0042】
すなわち、ステップS10の処理は、Δx≦xではなく、Δy≦yである場合(ステップS5とステップS7においてNOとされ、ステップS9においてYESとされる場合)、座標(x,y)の画素を座標(x+X−Δx,y)に移動させることとを意味する。
【0043】
ステップS6において、エンコーダ71は、(m,n)=(x−Δx,y−Δy)と設定する。いまの例の場合、(x,y)=(21,11)であるため、(m,n)=(21−20,11−10)となり、(m,n)=(1,1)となる。その後、処理はステップS12に進み、座標(x,y)=(21,11)の画素は、座標(1,1)の画素として出力される。
【0044】
すなわち、ステップS6の処理は、Δx≦xであり、かつ、Δy≦yである場合(ステップS5においてYESと判定される場合)、座標(x,y)の画素を座標(x−Δx,y−Δy)に移動させることを意味する。
【0045】
その後、ステップS16の処理によりy=35とされるまで、処理は繰り返される。ステップS45において、y=35とされた場合、処理はステップ3に戻り、x=0とされ、再度、ステップS14の処理により、x=50とされるまで同様の処理が繰り返される。そして、x=50,y=35とされたとき、ステップS13において、x<Xではないと判定され、さらに、ステップS15において、y<Yではないと判定される。
【0046】
ステップS15において、y<Yではないと判定された場合、処理はステップS17に進み、エンコーダ71は、ステップS12の処理により出力された画素よりなる画像情報をエンコードする。具体的には、ステップS5乃至ステップS16の処理が繰り返し行なわれることにより、図4に示される画像が、図8に示されるような画像として再合成される。ずなわち、グリッド移動情報92に基づいて、原画像に対するグリッドの位置が相対的に移動され、移動されたグリッドが画枠に対して基準の位置になるように(画枠に対する位置が、図1における場合と同一の位置となるように)、画像の各領域が分割され、再合成(再配置)される。図8に示されるように、画枠に対するグリッドの位置ではずれてはいないが、画像の分割された領域が再配置されているため、画像の各タイルに分割される範囲は、図1の場合と異なったものとなる。
【0047】
エンコーダ71は、図8に示される画像1を、タイル毎にエンコードする。これにより、オブジェクト10は、2個のタイルのみで構成されることになり、効率的に圧縮することができる。
【0048】
図8に示されるように、図4の画像1が、グリッド移動情報92((x,y)=(20,10))に基づいて移動された結果、図4における、0≦x≦Δx、かつ、0≦y≦Δyの範囲の領域R1、Δx<x≦X、かつ、0≦y≦Δyの範囲の領域R2、0≦x≦Δx、かつ、Δy≦y≦Yの範囲の領域R3、または、Δx<x≦X、かつ、Δy≦y≦Yの範囲の領域R4は、図8におけるx−Δx<x≦X、かつ、Y−Δy<y≦Yの範囲の領域、0≦x≦X−Δx、かつ、Y−Δy<y≦Yの範囲の領域、X−Δx<x≦X、かつ、0≦y≦Y−Δyの範囲の領域、または、0≦x≦X−Δx、かつ、0≦y≦Y−Δyの範囲の領域に、それぞれ移動されている。このためオブジェクト13は、オブジェクト13Kとオブジェクト13Jに分けられている。
【0049】
図7に戻って、ステップS18において、エンコーダ71は、エンコードした画像1を記憶部73に出力し、エンコード済画像情報91として記憶させる。
【0050】
このように、図6と図7の処理により、図4の画像1が、グリッド移動情報92((Δx,Δy))に基づいて、(Δx,Δy)だけ移動され、図8の画像1として、分割、再合成され、エンコードされる。これにより、「タイルaI」と「タイルaII」の2個のタイルのみで、ROIとしてのオブジェクト10を表示することが可能となる。このとき、(Δx,Δy)の分のグリッドが移動し、新たに、タイルが生成される。エンコーダ71は、ステップS18において、1枚の画像のデータを、この新たに生成されたタイル(タイル「aI」,「aII」・・・毎にエンコードする。
【0051】
図6と図7の処理によりエンコードされた画像は、デコード後、元の画像に戻すためにグリッド移動情報92が必要となる。そこで、図9に示されるように、エンコード済画像情報91を画像表示装置150に送信する場合、グリッド移動情報92を同時に送信するようにする。これにより、画像表示装置150は、受信したグリッド移動情報92を用いることで、画像情報のデコードを正しく行なうことができる。
【0052】
図9の例では、画像変換装置50と画像表示装置150がネットワーク130を介して、接続されている。画像変換装置50の記憶部73には、図6と図7の処理により、エンコード済画像情報91が記憶されており、さらに、位置指定部72から供給されたグリッド移動情報92が記憶されている。また、画像変換装置50には、ネットワーク130を介して通信する通信部101が備えられている。
【0053】
通信部101は、ユーザからの指令に基づいて、エンコード済画像情報91と、それに対応するグリッド移動情報92を、ネットワーク130を介して、画像表示装置150の通信部161に送信する。
【0054】
画像表示装置150は、通信部161、デコーダ162、および出力部163により構成されている。通信部161は、ネットワーク130を介して、通信し、画像変換装置50から送信されたエンコード済画像情報91と、それに対応するグリッド移動情報92を受信し、デコーダ162に供給する。デコーダ162は、通信部161から供給されたエンコード済画像情報91とそれに対応するグリッド移動情報92を取得してデコードし、画像情報として出力部163に供給する。これにより、画像情報を正しくデコードし、表示することができる。
【0055】
また、画像表示装置150が、このようなエンコード方式(図6と図7のエンコード処理)に対応していない場合、図10に示されるように、画像変換装置50にデコーダ181を設けることにより、デコーダ181でデコードした後(デコーダ181が、エンコード済画像情報91とグリッド移動情報92に基づいて、デコードした後)、画像情報として、通信部101を介して送信することもできる。
【0056】
このとき、図11に示されるように、デコーダ181にデコードさせた後、グリッド移動情報92を必要としない別のフォーマットで、エンコーダ221により再度エンコードさせ、通信部101に、エンコーダ221によりエンコードされた画像情報を、ネットワーク130を介して送信させることも可能である。図11の例においては、エンコーダ221と、デコーダ251は、通常の(上述した方式を用いない)エンコーダとデコーダである。これにより、画像表示装置150が、画像変換装置50による画像変換方法と対応していない場合においても、画像変換装置50側でフォーマットを変更することにより、対応させることができる。
【0057】
以上の処理により、画像の特定範囲(ROI)を切り出す場合に、特定範囲の形や大きさに対応して、グリッドの移動位置を調整し、最小限のタイルを切り出して、圧縮するようにしたので、画像情報量を効率的に少なくすることが可能となる。
【0058】
また、エンコーダ71の圧縮アルゴリズムなどを変更する必要もなく、容易に実行できる。
【0059】
さらに、画像を圧縮した後の画像情報量を小さく抑え、かつ、画像の特定範囲の画質を高めることが可能となる。
【0060】
なお、以上の例では、タイルの大きさを固定としたが、ROIの形や大きさに対応して、グリッドの移動位置を調整するのではなく、タイルの形や大きさを変更することも可能である。例えば、オブジェクト10をROI(注目領域)とした場合、図12に示されるように、タイルのサイズ(グリッド幅)をx方向に2倍し、y方向に1/2倍すると、タイルの面積は、変更前と同じであるが、2個のタイルに跨っていたオブジェクト10が1個のタイルに収まる。これにより、1個のタイルのみで、オブジェクト10が構成されるため、オブジェクト10を切り取る場合、1個のタイル分の画像情報量のみとなり、さらに、効率よく圧縮することができ、もって、画像情報量を減らすことができる。
【0061】
なお、記憶部73にエンコード済画像情報91とグリッド移動情報92を別々に保存したが、例えば、エンコード済画像情報91の最後に1ワード分のデータ領域を追加し、そこにグリッド移動情報92を保存するようにしてもよい。
【0062】
なお、以上の例では、位置指定部72は、オブジェクト10の楕円形内の座標のうち、x軸とy軸に関してそれぞれ最小値を基準座標として求めて、その座標(Δx,Δy)をグリッド移動情報92として設定したが、オブジェクト10の楕円形内の座標のうち、x軸とy軸に関してそれぞれ最大値を基準座標として求めるようにすることもできる。
【0063】
最小値を基準座標として求めて、その座標(Δx,Δy)をグリッド移動情報92と設定した場合、図8に示されるように、グリッドが楕円(オブジェクト10)の左上で接することになるが、最大値を基準座標として求めて、その座標を(Δx,Δy)をグリッド移動情報92と設定した場合、グリッドが楕円の右下で接することになる。
【0064】
また、例えば、x軸を最大値にし、y軸を最小値にして(Δx,Δy)を設定すると、グリッドが楕円(オブジェクト10)の右上で接し、x軸を最小値にし、y軸を最大値にして(Δx,Δy)を設定すると、グリッドが楕円(オブジェクト10)の左下で接することになる。さらに、楕円(オブジェクト10)の重心とタイルの重心を合わせることもでき、楕円がタイルに含まれる範囲であれば、任意の値で(Δx,Δy)を設定することができる。
【0065】
なお、以上の例では、エンコーダ71により出力されたエンコード済画像情報91と、位置指定部71により出力されたグリッド移動情報92を記憶部73に記憶させるようにしたが、必ずしも保存する必要はなく、直接ネットワークに配信するようにすることもできる。
【0066】
また、以上の例では、分割されたタイルに対して、同じアルゴリズム、および同じ解像度でエンコードするモデルを示したが、特定領域に対して異なるエンコードアルゴリズムを適用したり、高解像度での圧縮を行なうようにすることもできる。例えば、図7のステップS17において、エンコーダ71は、ROIとしてのオブジェクト10が含まれる「タイルaI」と「タイルaII」を高解像度で圧縮し、それ以外のタイルを低解像度で圧縮する。これにより、必要以上にファイルサイズが大きくなるのを防ぎ、もって、効率的に圧縮をすることができる。
【0067】
上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどの、記録媒体からインストールされる。この場合、例えば、画像変換装置50は、図13に示されるようなパーソナルコンピュータ300により構成される。
【0068】
図13において、CPU(Central Processing Unit)301は、ROM(Read Only Memory)302に記憶されているプログラム、または、記憶部308からRAM(Random Access Memory)303にロードされたプログラムに従って各種の処理を実行する。RAM303にはまた、CPU301が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【0069】
CPU301、ROM302、およびRAM303は、内部バス304を介して相互に接続されている。この内部バス304にはまた、入出力インターフェース305も接続されている。
【0070】
入出力インターフェース305には、キーボード、マウスなどよりなる入力部306、CRT(Cathode Ray Tube),LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部307、ハードディスクなどより構成される記憶部308、モデム、ターミナルアダプタなどより構成される通信部309が接続されている。通信部309は、衛星回線やCATVを含む各種のネットワークを介しての通信処理を行なう。
【0071】
入出力インターフェース305にはまた、必要に応じてドライブ310が接続され、磁気ディスク321、光ディスク322、光磁気ディスク323、あるいは半導体メモリ324などが適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部308にインストールされる。
【0072】
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用の専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【0073】
この記録媒体は、図13に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク321(フロッピディスクを含む)、光ディスク322(CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク323(MD(Mini Disc)を含む)、半導体メモリ324などによりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM302や記憶部308が含まれるハードディスクなどで構成される。
【0074】
なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0075】
【発明の効果】
以上の如く、本発明によれば、画像を圧縮した後の画像情報量を小さく抑え、かつ、画像の特定範囲の画質を高めることができる。
【図面の簡単な説明】
【図1】従来の画像の例を説明する図である。
【図2】図1の画像をタイルに分割したときの例を説明する図である。
【図3】本発明の画像変換装置の構成例を示すブロック図である。
【図4】画像のグリッド移動の例を説明する図である。
【図5】図3の画像変換装置の記憶部に記憶されるグリッド移動情報の例を説明する図である。
【図6】図3の画像変換装置のエンコーダにおける処理を説明するフローチャートである。
【図7】図3の画像変換装置のエンコーダにおける処理を説明するフローチャートである。
【図8】図6と図7の処理により再合成された画像を説明する図である。
【図9】図3の画像変換装置から画像表示装置に情報を送信する例を説明する図である。
【図10】図3の画像変換装置から画像表示装置に情報を送信する例を説明する図である。
【図11】図3の画像変換装置から画像表示装置に情報を送信する例を説明する図である。
【図12】図4の画像のタイルを変更した例を説明する図である。
【図13】パーソナルコンピュータを示すブロック図である。
【符号の説明】
1 画像, 10,11,12,13 オブジェクト, 50 画像変換装置, 71 エンコーダ, 72 位置指定部, 73 記憶部, 91 エンコード済画像情報, 92 グリッド移動情報
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing apparatus and method, a recording medium, and a program, and more particularly, to an image processing method capable of suppressing the amount of image information after compressing an image and improving the image quality of a specific range of the image. The present invention relates to a processing device and method, a recording medium, and a program.
[0002]
[Prior art]
In recent years, JPEG (Joint Photographic Expert Group) 2000 has been proposed as one of the methods for compressing images. JPEG2000 can divide one image 1 whose vertical size is X and horizontal size is Y as shown in FIG. 1 into a plurality of tiles and compress each tile. Image encoding method. In the case of the example of FIG. 1, the image 1 includes an object 10, an object 11, an object 12, and an object 13.
[0003]
Next, an example of dividing the image 1 of FIG. 1 will be described with reference to FIG. In the example of FIG. 2, the image 1 is vertically divided into six parts and horizontally into six parts, and divided into 36 tiles. A tile means an area divided along a grid. In FIG. 2, the numbers of the vertical columns of the tiles are 1 to 6, the numbers of the horizontal rows are A to F, the tile at the top left is called a tile A1, and the tiles A2, The tiles are referred to as tile A3, tile A4, tile A5, and tile A6. The area below the tile A1 is referred to as a tile B1, a tile C1, a tile D1, a tile E1, and a tile F1 in that order.
[0004]
In this manner, the image can be divided and compressed for each tile.
[0005]
[Problems to be solved by the invention]
However, when an image is created by cutting out only the portion of the object 10 which is an elliptical object from the image 1, the size of the object 10 is small enough to fit in two tiles. In the tile division as shown in FIG. 2, six tile images “B3, B4, B5, C3, C4, and C5” are required, and the amount of image information cannot be reduced efficiently. there were.
[0006]
The present invention has been made in view of such a situation, and it is an object of the present invention to reduce the amount of image information after compressing an image and improve the image quality of a specific range of the image.
[0007]
[Means for Solving the Problems]
An image processing apparatus according to an aspect of the present invention includes an acquiring unit that acquires position information that specifies an image of a specific region in an image of a predetermined frame, and movement information that moves a grid based on the position information acquired by the acquiring unit. Generating means for generating the image, a synthesizing means for dividing an area of the image of the predetermined frame based on the movement information generated by the generating means, and re-synthesizing the image of the predetermined frame. Compression means for dividing into a plurality of tiles and compressing the tiles.
[0008]
The compression means can divide the image of the predetermined frame into tiles of different sizes depending on the area, and compress the tile.
[0009]
The compression means can compress tiles including a specific range of images using a different algorithm from tiles not including a specific range of images.
[0010]
The compression means may compress tiles including a specific range of images at a different resolution than tiles not including the specific range.
[0011]
The image processing method according to the present invention includes: an acquiring step of acquiring position information specifying an image of a specific region in an image of a predetermined frame; and moving a grid based on the position information acquired by the processing of the acquiring step. A generation step of generating movement information; a synthesis step of dividing and re-synthesizing a region of an image of a predetermined frame based on the movement information generated by the processing of the generation step; Compression step of dividing an image of a predetermined frame into a plurality of tiles and compressing the divided tiles.
[0012]
The program recorded on the recording medium of the present invention is based on an acquisition step of acquiring position information specifying an image of a specific area in an image of a predetermined frame, and the position information acquired by the processing of the acquisition step. A generation step of generating movement information for moving a grid, a synthesis step of dividing an image area of a predetermined frame based on the movement information generated by the processing of the generation step, and re-synthesizing the area, and a processing of the synthesis step And a compression step of dividing the image of the predetermined frame recombined by the above into a plurality of tiles and compressing the tiles.
[0013]
The program according to the present invention includes an acquisition step of acquiring position information specifying an image of a specific area in an image of a predetermined frame, and movement information for moving a grid based on the position information acquired by the processing of the acquisition step. A dividing step of dividing a region of the image of the predetermined frame based on the movement information generated by the processing of the generating step, and re-synthesizing the image area; A computer is configured to execute a process including a compression step of dividing an image of the frame into a plurality of tiles and compressing the image.
[0014]
In the image processing apparatus and method, the recording medium, and the program according to the present invention, position information specifying an image of a specific area in an image of a predetermined frame is acquired, and a grid is moved based on the acquired position information. Based on the generated movement information, the region of the image of the predetermined frame is divided and recombined, and the recombined image of the predetermined frame is divided into a plurality of tiles and compressed. You.
[0015]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 3 is a block diagram illustrating a configuration example of an image conversion device 50 to which the present invention has been applied. The image conversion device 50 includes an encoder 71, a position designation unit 72, and a storage unit 73.
[0016]
The position designating section 72 is a grid movement information for designating a position with respect to position information (for example, information corresponding to a position input from a mouse or the like by a user) supplied based on a user command. 92 is generated. For example, if an object 10 shown in FIG. 4 described later is specified by a user as an ROI (Region of Interest) (an image to be cut out, that is, a region of interest), the position specifying unit 72 generates ROI movement information for the entire image. I do. A tile is composed of a plurality of grids.
[0017]
Specifically, the position specifying unit 72 sets the upper left vertex of the image 1 of the predetermined frame shown in FIG. 4 (the same image as the image 1 shown in FIG. An axis is set, a y-axis is set in the vertical direction, and the coordinates of all pixels in the image 1 are represented in the form of (x, y). At this time, 0 ≦ x ≦ X and 0 ≦ y ≦ Y. Here, among the coordinates of the ROI (the object 10 in the case of the example of FIG. 4) to be cut out specified by the user, the minimum values for the x-axis and the y-axis are obtained as reference coordinates, and the values are shown in FIG. (Δx, Δy). This (Δx, Δy) becomes grid movement information. The position designation unit 72 supplies the grid movement information 92 ((Δx, Δy)) to the encoder 71. In addition, as shown in FIG. 5, the position specifying unit 72 supplies the grid movement information 92 ((Δx, Δy)) to the storage unit 73 and stores it.
[0018]
In the example of FIG. 5, the file name corresponding to image 1 is test0, and the grid movement information is (Δx, Δy) = (20, 10). Image0 is the name of another file, and its grid movement information is (5, 7). As shown in FIG. 5, the grid movement information 92 corresponds to the encoded image information 91 on a one-to-one basis.
[0019]
The encoder 71 encodes an image obtained by converting the supplied image information (image data) using grid movement information 92 (grid movement information 92 supplied from the position designation unit 72) using the JPEG2000 method, and encodes the image. The image information 91 is supplied to the storage unit 72 and stored therein. The details of the conversion will be described later with reference to FIGS. The image information may be input from a camera or the like, or may be information obtained by reproducing image data stored in a hard disk (not shown) or the like.
[0020]
Returning to FIG. 3, the storage unit 73 stores grid movement information 92 supplied from the position designation unit 72 in addition to the encoded image information 92 supplied from the encoder 71. One piece of encoded image information 91 corresponds to one piece of grid movement information 92.
[0021]
In the example of FIG. 4, the region of interest (ROI) in the image 1 is designated as the object 10, but a predetermined region (specific range) in the image 1 may be designated by a rectangle. Further, for example, when images are continuous (or in the case of a moving image) like a video taken by a video camera, the range may be specified again for each image or each time a scene change occurs. Of course, a specific range common to all the images 1 may be specified.
[0022]
Further, for example, when a video of a caster reading news in a studio is flowing, the background image of the caster hardly changes, and only the image around the caster's face changes with the passage of time. In such a case, it is also possible to automatically select a range in which the value greatly changes as a region of interest (specific range) while obtaining a difference from the previous image. This is based on the assumption that important information is included in a portion where movement is severe, but it is possible to effectively compress an image depending on the type of the image.
[0023]
Next, the processing in the image conversion device 50 will be described with reference to the flowcharts in FIGS. This process is started when the user instructs compression of the image 1 in FIG.
[0024]
In step S1, the position specifying unit 72 obtains position information specifying a ROI based on an instruction from a user.
[0025]
In step S2, the position specifying unit 72 calculates the grid movement information 92 from the position information. For example, when the user specifies the object 10 in FIG. 4 as the ROI, the position specifying unit 72 obtains the reference coordinates of the ROI as the minimum value of the ROI. In the case of the example of FIG. 4, the grid movement information 92 is obtained, for example, as (Δx, Δy) = (20, 10). The grid movement information 92 is supplied to the encoder 71.
[0026]
In step S3, the encoder 71 initializes y = 0.
[0027]
In step S4, the encoder 71 initializes x = 0.
[0028]
In step S5, the encoder 71 determines whether Δx ≦ x and Δy ≦ y. In the case of this example, since y = 0 and x = 0 and (Δx, Δy) = (20, 10) by the processing of steps S3 and S4, neither Δx ≦ x nor Δy ≦ y . Therefore, the determination is NO.
[0029]
If it is determined in step S5 that Δx ≦ x and Δy ≦ y are not satisfied, the process proceeds to step S7, and the encoder 71 determines whether Δx ≦ x. In the case of the present example, x is set to 0 by the processing of step S4, and since (Δx, Δy) = (20, 10), it is determined to be NO.
[0030]
If it is determined in step S7 that Δx ≦ x is not satisfied, the process proceeds to step S9, and the encoder 71 determines whether Δy ≦ y. In the case of the present example, y is set to 0 by the processing in step S3, and since (Δx, Δy) = (20, 10), the determination is NO.
[0031]
If it is determined in step S9 that Δy ≦ y is not satisfied, the process proceeds to step S11, and the encoder 71 sets m = x + X−Δx and n = y + Y−Δy. For example, assuming that X = 50 and Y = 35, in the present example, (x, y) = (0, 0) and (Δx, Δy) = (20, 10). n) = (50-20, 35-10), that is, (m, n) = (30, 25).
[0032]
After step S11, the process proceeds to step S12, where the encoder 71 outputs the pixel at the coordinates (x, y) as the pixel at the coordinates (m, n). In the case of the present example, pixel information of (x, y) = (0, 0) is output as pixel information of coordinates (m, n) = (30, 25).
[0033]
That is, in the process of step S11, if neither Δx ≦ x nor Δy ≦ y (steps S5, S7, and S9 are all NO), the pixel at the coordinates (x, y) is set to the coordinates (x + X− Δx, y + Y−Δy).
[0034]
In step S13, the encoder 71 determines whether x <X. For example, if X = 50, in the present example, since x = 0, it is determined to be YES. If it is determined in step S13 that x <X, the process proceeds to step S14, where x = x + 1 is set. That is, (x, y) = (1, 0), and the process returns to step S5.
[0035]
Again, in step S5, the encoder 71 determines whether Δx ≦ x and Δy ≦ y. In the case of the present example, since (x, y) = (1, 0) and (Δx, Δy) = (20, 10) by the process of step S14, the determination is NO. After that, the same processing is repeated, and by the processing of step S14, x is added one by one (x = x + 1), and the same processing is repeated until x = 21. If x = 21 is set by the processing in step S14, it is determined in step S7 that Δx ≦ x.
[0036]
Thereafter, the process proceeds to step S8, and the encoder 71 sets (m, n) = (x, y + Y−Δy). In the case of the present example, since x = 21 is set (step S14), (x, y) = (21, 0), and (m, n) = (21, 0 + 50-10), that is, (m , N) = (21, 40). After the process of step S9, the process proceeds to step S12, and the pixel at the coordinates (x, y) = (21, 0) is output as the pixel at the coordinates (m, n) = (21, 40).
[0037]
That is, in the process of step S8, if Δx ≦ x and not Δy ≦ y (NO in step S5 and YES in step S7), the pixel at the coordinates (x, y) is set to the coordinates (x, y). y + Y−Δy).
[0038]
After the process in step S12, the process proceeds to step S13, and the encoder 71 again determines whether x <X. In the case of the present example, since x = 21, it is determined as YES, the process proceeds to step S14, and the same process is repeated until x = 50. As a result, the process proceeds from x = 0 to x = 50 at y = 0, and all pixels on the horizontal axis at y = 0 are output.
[0039]
If x = 50 is set in step S14, the same processing as the above-described processing is repeated until step S12, and in step S13, it is determined that x <X is not satisfied (since x = 50 and X = 50 ). If it is determined in step S13 that x <X, the process proceeds to step S15, and the encoder 71 determines whether y <Y. In the case of the present example, since Y = 35 and y = 0, it is determined to be YES. If it is determined in step S15 that y <Y, the process proceeds to step S16, where y = y + 1 is set (1 is added to y). That is, (x, y) = (50, 1), and the process returns to step S4.
[0040]
Thereafter, in step S4, the encoder 71 sets x = 0. Hereinafter, the same process is repeated, and when x = 50 again (y = 1 in this example), y = y + 1 is set in step S15, and y = 2. Hereinafter, the same process is repeated until y = 11 in the process of step S16. When y = 11 is set by the processing in step S16, it is determined in step S9 that Δy ≦ y.
[0041]
If it is determined in step S9 that Δy ≦ y, the process proceeds to step S10, and the encoder 71 sets (m, n) = (x + X−Δx, y). For example, if y = 11 and x = 0, (m, n) = (0 + 50−20, 11), that is, (m, n) = (30, 11). Thereafter, the process proceeds to step S12, and the same process is repeated. When x = 21 (y = 11), the process proceeds to step S5, where it is determined that Δx ≦ x and Δy ≦ y, The process proceeds to step S6.
[0042]
That is, in the process of step S10, when Δy ≦ y instead of Δx ≦ x (NO in steps S5 and S7 and YES in step S9), the pixel at the coordinates (x, y) is determined. It means to move to the coordinates (x + X-Δx, y).
[0043]
In step S6, the encoder 71 sets (m, n) = (x−Δx, y−Δy). In the case of the present example, since (x, y) = (21, 11), (m, n) = (21-20, 11-10), and (m, n) = (1, 1). Become. Thereafter, the process proceeds to step S12, and the pixel at the coordinates (x, y) = (21, 11) is output as the pixel at the coordinates (1, 1).
[0044]
That is, in the process of step S6, when Δx ≦ x and Δy ≦ y (determined as YES in step S5), the pixel of the coordinates (x, y) is set to the coordinates (x−Δx, y). −Δy).
[0045]
Thereafter, the processing is repeated until y = 35 in the processing of step S16. If y = 35 in step S45, the process returns to step 3 to set x = 0, and the same process is repeated again by the process in step S14 until x = 50. When x = 50 and y = 35, it is determined that x <X is not satisfied in step S13, and it is determined that y <Y is not satisfied in step S15.
[0046]
If it is determined in step S15 that y <Y is not satisfied, the process proceeds to step S17, and the encoder 71 encodes the image information including the pixels output in the process of step S12. Specifically, the image shown in FIG. 4 is re-synthesized as the image shown in FIG. 8 by repeatedly performing the processing of steps S5 to S16. That is, based on the grid movement information 92, the position of the grid with respect to the original image is relatively moved, and the moved grid becomes the reference position with respect to the image frame (the position with respect to the image frame is 1, each region of the image is divided and recombined (rearranged). As shown in FIG. 8, the position of the grid with respect to the image frame is not shifted, but since the divided areas of the image are rearranged, the range divided into each tile of the image is the case of FIG. Will be different.
[0047]
The encoder 71 encodes the image 1 shown in FIG. 8 for each tile. Thus, the object 10 is composed of only two tiles, and can be efficiently compressed.
[0048]
As shown in FIG. 8, as a result of moving image 1 of FIG. 4 based on grid movement information 92 ((x, y) = (20, 10)), 0 ≦ x ≦ Δx, A region R1 in a range of 0 ≦ y ≦ Δy, a region R2 in a range of Δx <x ≦ X and a range of 0 ≦ y ≦ Δy, and a region R3 in a range of 0 ≦ x ≦ Δx and Δy ≦ y ≦ Y Alternatively, the region R4 in the range of Δx <x ≦ X and Δy ≦ y ≦ Y is a region in the range of x−Δx <x ≦ X and Y−Δy <y ≦ Y in FIG. A region in the range of x ≦ X−Δx and Y−Δy <y ≦ Y, a region in the range of X−Δx <x ≦ X and 0 ≦ y ≦ Y−Δy, or 0 ≦ x ≦ X− It has been moved to an area in the range of Δx and 0 ≦ y ≦ Y−Δy. Therefore, the object 13 is divided into an object 13K and an object 13J.
[0049]
Returning to FIG. 7, in step S18, the encoder 71 outputs the encoded image 1 to the storage unit 73, and stores the encoded image 1 as encoded image information 91.
[0050]
As described above, the image 1 in FIG. 4 is moved by (Δx, Δy) based on the grid movement information 92 ((Δx, Δy)) by the processing in FIGS. , Split, recombined and encoded. This makes it possible to display the object 10 as an ROI using only two tiles, “tile aI” and “tile aII”. At this time, the grid of (Δx, Δy) moves, and a new tile is generated. In step S18, the encoder 71 encodes data of one image for each of the newly generated tiles (tiles “aI”, “aII”,...).
[0051]
The image encoded by the processing of FIGS. 6 and 7 requires the grid movement information 92 to return to the original image after decoding. Therefore, as shown in FIG. 9, when transmitting the encoded image information 91 to the image display device 150, the grid movement information 92 is transmitted at the same time. Thus, the image display device 150 can correctly decode the image information by using the received grid movement information 92.
[0052]
In the example of FIG. 9, the image conversion device 50 and the image display device 150 are connected via the network 130. The storage unit 73 of the image conversion device 50 stores the encoded image information 91 by the processing of FIGS. 6 and 7, and further stores the grid movement information 92 supplied from the position specification unit 72. . In addition, the image conversion device 50 includes a communication unit 101 that performs communication via the network 130.
[0053]
The communication unit 101 transmits the encoded image information 91 and the corresponding grid movement information 92 to the communication unit 161 of the image display device 150 via the network 130 based on a command from the user.
[0054]
The image display device 150 includes a communication unit 161, a decoder 162, and an output unit 163. The communication unit 161 communicates via the network 130, receives the encoded image information 91 transmitted from the image conversion device 50 and the corresponding grid movement information 92, and supplies the grid movement information 92 to the decoder 162. The decoder 162 acquires and decodes the encoded image information 91 supplied from the communication unit 161 and the corresponding grid movement information 92, and supplies the decoded image information 91 to the output unit 163 as image information. As a result, the image information can be correctly decoded and displayed.
[0055]
When the image display device 150 does not support such an encoding method (the encoding process in FIGS. 6 and 7), by providing the decoder 181 in the image conversion device 50 as shown in FIG. After decoding by the decoder 181 (after the decoder 181 decodes based on the encoded image information 91 and the grid movement information 92), it can be transmitted as image information via the communication unit 101.
[0056]
At this time, as shown in FIG. 11, after being decoded by the decoder 181, the data is again encoded by the encoder 221 in another format that does not require the grid movement information 92, and is encoded by the encoder 221 by the communication unit 101. The image information can be transmitted via the network 130. In the example of FIG. 11, the encoder 221 and the decoder 251 are ordinary encoders and decoders (not using the above-described method). Thus, even when the image display device 150 does not support the image conversion method performed by the image conversion device 50, the image conversion device 50 can change the format to change the format.
[0057]
With the above processing, when cutting out a specific range (ROI) of an image, the moving position of the grid is adjusted according to the shape and size of the specific range, and the minimum tile is cut out and compressed. Therefore, it is possible to efficiently reduce the amount of image information.
[0058]
In addition, there is no need to change the compression algorithm or the like of the encoder 71, so that it can be easily executed.
[0059]
Further, it is possible to suppress the amount of image information after compressing the image and to improve the image quality of a specific range of the image.
[0060]
In the above example, the size of the tile is fixed. However, instead of adjusting the moving position of the grid in accordance with the shape and size of the ROI, the shape and size of the tile may be changed. It is possible. For example, when the object 10 is an ROI (region of interest), as shown in FIG. 12, when the size (grid width) of the tile is doubled in the x direction and halved in the y direction, the area of the tile becomes Is the same as before, but the object 10 straddling two tiles fits into one tile. Thus, since the object 10 is composed of only one tile, when the object 10 is cut out, only the image information amount of one tile is obtained, and the image data can be efficiently compressed. The amount can be reduced.
[0061]
Although the encoded image information 91 and the grid movement information 92 are separately stored in the storage unit 73, for example, a data area for one word is added to the end of the encoded image information 91, and the grid movement information 92 is stored therein. You may save it.
[0062]
In the above example, among the coordinates in the ellipse of the object 10, the position specifying unit 72 obtains the minimum value for each of the x-axis and the y-axis as reference coordinates, and moves the coordinates (Δx, Δy) to the grid. Although set as the information 92, among the coordinates in the ellipse of the object 10, the maximum values with respect to the x-axis and the y-axis may be obtained as the reference coordinates.
[0063]
When the minimum value is obtained as the reference coordinate and the coordinate (Δx, Δy) is set as the grid movement information 92, the grid touches the upper left of the ellipse (object 10) as shown in FIG. When the maximum value is obtained as the reference coordinate and the coordinate is set to (Δx, Δy) as the grid movement information 92, the grid touches the lower right of the ellipse.
[0064]
Also, for example, when (x, Δy) is set with the x-axis at the maximum value and the y-axis at the minimum value, the grid touches the upper right of the ellipse (object 10), the x-axis becomes the minimum value, and the y-axis becomes the maximum. If (Δx, Δy) is set as a value, the grid will be in contact with the lower left of the ellipse (object 10). Furthermore, the center of gravity of the ellipse (object 10) and the center of gravity of the tile can be matched, and (Δx, Δy) can be set to any value within the range where the ellipse is included in the tile.
[0065]
In the above example, the encoded image information 91 output by the encoder 71 and the grid movement information 92 output by the position specifying unit 71 are stored in the storage unit 73, but need not necessarily be stored. , Or directly to the network.
[0066]
Also, in the above example, a model in which divided tiles are encoded with the same algorithm and the same resolution has been described. However, a different encoding algorithm is applied to a specific area or compression is performed at a high resolution. You can also do so. For example, in step S17 in FIG. 7, the encoder 71 compresses the “tile aI” and the “tile aII” including the object 10 as the ROI at a high resolution, and compresses the other tiles at a low resolution. As a result, it is possible to prevent the file size from becoming unnecessarily large, and thus to efficiently perform compression.
[0067]
The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processing is executed by software, a program constituting the software executes various functions by installing a computer built in dedicated hardware or installing various programs. For example, it is installed from a recording medium such as a general-purpose personal computer. In this case, for example, the image conversion device 50 is configured by a personal computer 300 as shown in FIG.
[0068]
13, a CPU (Central Processing Unit) 301 performs various processes in accordance with a program stored in a ROM (Read Only Memory) 302 or a program loaded from a storage unit 308 into a RAM (Random Access Memory) 303. Execute. The RAM 303 also appropriately stores data necessary for the CPU 301 to execute various processes.
[0069]
The CPU 301, the ROM 302, and the RAM 303 are interconnected via an internal bus 304. An input / output interface 305 is also connected to the internal bus 304.
[0070]
The input / output interface 305 includes an input unit 306 including a keyboard and a mouse, a display including a CRT (Cathode Ray Tube), an LCD (Liquid Crystal Display), an output unit 307 including a speaker, a hard disk, and the like. A communication unit 309 including a storage unit 308, a modem, a terminal adapter, and the like is connected. The communication unit 309 performs communication processing via various networks including a satellite line and a CATV.
[0071]
A drive 310 is connected to the input / output interface 305 as necessary, and a magnetic disk 321, an optical disk 322, a magneto-optical disk 323, a semiconductor memory 324, or the like is appropriately mounted, and a computer program read therefrom is required. Is installed in the storage unit 308 in accordance with.
[0072]
When a series of processing is executed by software, a program constituting the software is used to execute various functions by installing a computer incorporated in dedicated hardware or installing various programs. For example, it is installed in a general-purpose personal computer that can be executed from a network or a recording medium.
[0073]
As shown in FIG. 13, this recording medium is a magnetic disk 321 (including a floppy disk) on which the program is recorded and an optical disk 322 (CD) which are distributed separately from a computer to provide the user with the program. -Not only a package medium including a ROM (Compact Disc-Read Only Memory), a DVD (including a Digital Versatile Disc), a magneto-optical disk 323 (including an MD (Mini Disc)), a semiconductor memory 324, but also And a hard disk including a ROM 302 and a storage unit 308 in which a program is recorded, which is provided to a user in a state of being incorporated in the apparatus main body in advance.
[0074]
In this specification, a step of describing a computer program refers to not only a process performed in chronological order according to the described order, but also a process executed in parallel or individually even if not necessarily performed in chronological order. Is also included.
[0075]
【The invention's effect】
As described above, according to the present invention, it is possible to reduce the amount of image information after compressing an image, and to enhance the image quality of a specific range of the image.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an example of a conventional image.
FIG. 2 is a diagram illustrating an example when the image in FIG. 1 is divided into tiles.
FIG. 3 is a block diagram illustrating a configuration example of an image conversion device according to the present invention.
FIG. 4 is a diagram illustrating an example of grid movement of an image.
5 is a diagram illustrating an example of grid movement information stored in a storage unit of the image conversion device in FIG.
FIG. 6 is a flowchart illustrating processing in an encoder of the image conversion device in FIG. 3;
FIG. 7 is a flowchart illustrating a process in an encoder of the image conversion device in FIG. 3;
8 is a diagram illustrating an image recombined by the processes in FIGS. 6 and 7. FIG.
FIG. 9 is a diagram illustrating an example of transmitting information from the image conversion device of FIG. 3 to an image display device.
FIG. 10 is a diagram illustrating an example of transmitting information from the image conversion device of FIG. 3 to an image display device.
11 is a diagram illustrating an example of transmitting information from the image conversion device in FIG. 3 to an image display device.
12 is a diagram illustrating an example in which tiles of the image in FIG. 4 are changed.
FIG. 13 is a block diagram illustrating a personal computer.
[Explanation of symbols]
1 image, 10, 11, 12, 13 objects, 50 image conversion device, 71 encoder, 72 position designation unit, 73 storage unit, 91 encoded image information, 92 grid movement information

Claims (7)

所定のフレームの画像をグリッドに沿って複数のタイルに分割して圧縮する画像処理装置において、
前記所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得手段と、
前記取得手段により取得された位置情報に基づいて、前記グリッドを移動する移動情報を生成する生成手段と、
前記生成手段により生成された前記移動情報に基づいて、前記所定のフレームの画像の領域を分割し、再合成する合成手段と、
前記合成手段により再合成された前記所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮手段と
を備えることを特徴とする画像処理装置。
In an image processing apparatus that divides an image of a predetermined frame into a plurality of tiles along a grid and compresses the tile,
Acquisition means for acquiring position information specifying an image of a specific region in the image of the predetermined frame,
Generating means for generating movement information for moving the grid, based on the position information obtained by the obtaining means,
A synthesizing unit that divides an area of the image of the predetermined frame based on the movement information generated by the generating unit, and re-synthesizes;
An image processing apparatus comprising: a compression unit that divides an image of the predetermined frame recombined by the combination unit into a plurality of tiles and compresses the tiles.
前記圧縮手段は、前記所定のフレームの画像を、その領域によって異なる大きさのタイルに分割し、圧縮する
ことを特徴とする請求項1に記載の画像処理装置。
The image processing apparatus according to claim 1, wherein the compression unit divides the image of the predetermined frame into tiles having different sizes depending on the area, and compresses the tile.
前記圧縮手段は、前記特定の範囲の画像が含まれる前記タイルに対して、前記特定の範囲の画像が含まれない前記タイルとは異なるアルゴリズムで圧縮する
ことを特徴とする請求項1に記載の画像処理装置。
The method according to claim 1, wherein the compression unit compresses the tile including the image in the specific range using a different algorithm from the tile including no image in the specific range. Image processing device.
前記圧縮手段は、前記特定の範囲の画像が含まれる前記タイルに対して、前記特定の範囲が含まれない前記タイルとは異なる解像度で圧縮する
ことを特徴とする請求項1に記載の画像処理装置。
2. The image processing apparatus according to claim 1, wherein the compression unit compresses the tile including the image in the specific range at a resolution different from that of the tile not including the specific range. apparatus.
所定のフレームの画像をグリッドに沿って複数のタイルに分割して圧縮する画像処理装置の画像処理方法において、
前記所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得ステップと、
前記取得ステップの処理により取得された位置情報に基づいて、前記グリッドを移動する移動情報を生成する生成ステップと、
前記生成ステップの処理により生成された前記移動情報に基づいて、前記所定のフレームの画像の領域を分割し、再合成する合成ステップと、
前記合成ステップの処理により再合成された前記所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮ステップと
を含むことを特徴とする画像処理方法。
In an image processing method of an image processing apparatus, an image of a predetermined frame is divided into a plurality of tiles along a grid and compressed.
Acquisition step of acquiring position information specifying an image of a specific region in the image of the predetermined frame,
A generation step of generating movement information for moving the grid, based on the position information obtained by the processing of the obtaining step,
A combining step of dividing an area of the image of the predetermined frame based on the movement information generated by the processing of the generating step and re-synthesizing;
A compression step of dividing the image of the predetermined frame recombined in the combining step into a plurality of tiles and compressing the divided tiles.
所定のフレームの画像をグリッドに沿って複数のタイルに分割して圧縮する画像処理装置を制御するプログラムであって、
前記所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得ステップと、
前記取得ステップの処理により取得された位置情報に基づいて、前記グリッドを移動する移動情報を生成する生成ステップと、
前記生成ステップの処理により生成された前記移動情報に基づいて、前記所定のフレームの画像の領域を分割し、再合成する合成ステップと、
前記合成ステップの処理により再合成された前記所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
A program for controlling an image processing apparatus that divides an image of a predetermined frame into a plurality of tiles along a grid and compresses the tiles,
Acquisition step of acquiring position information specifying an image of a specific region in the image of the predetermined frame,
A generation step of generating movement information for moving the grid, based on the position information obtained by the processing of the obtaining step,
A combining step of dividing an area of the image of the predetermined frame based on the movement information generated by the processing of the generating step and re-synthesizing;
A compression step of dividing the image of the predetermined frame re-synthesized by the processing of the synthesizing step into a plurality of tiles and compressing the divided tiles, wherein the computer-readable program is recorded.
所定のフレームの画像をグリッドに沿って複数のタイルに分割して圧縮する画像処理装置を制御するコンピュータに、
前記所定のフレームの画像の中の特定領域の画像を指定する位置情報を取得する取得ステップと、
前記取得ステップの処理により取得された位置情報に基づいて、前記グリッドを移動する移動情報を生成する生成ステップと、
前記生成ステップの処理により生成された前記移動情報に基づいて、前記所定のフレームの画像の領域を分割し、再合成する合成ステップと、
前記合成ステップの処理により再合成された前記所定のフレームの画像を複数のタイルに分割し、圧縮する圧縮ステップと
を含む処理を実行させることを特徴とするプログラム。
A computer that controls an image processing apparatus that divides an image of a predetermined frame into a plurality of tiles along a grid and compresses the tiles,
Acquisition step of acquiring position information specifying an image of a specific region in the image of the predetermined frame,
A generation step of generating movement information for moving the grid, based on the position information obtained by the processing of the obtaining step,
A combining step of dividing an area of the image of the predetermined frame based on the movement information generated by the processing of the generating step and re-synthesizing;
A program that divides the image of the predetermined frame recombined in the combining step into a plurality of tiles and compresses the tiles.
JP2002230855A 2002-08-08 2002-08-08 Image processing apparatus and method, recording medium, and program Expired - Fee Related JP3997406B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002230855A JP3997406B2 (en) 2002-08-08 2002-08-08 Image processing apparatus and method, recording medium, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002230855A JP3997406B2 (en) 2002-08-08 2002-08-08 Image processing apparatus and method, recording medium, and program

Publications (2)

Publication Number Publication Date
JP2004072555A true JP2004072555A (en) 2004-03-04
JP3997406B2 JP3997406B2 (en) 2007-10-24

Family

ID=32016787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002230855A Expired - Fee Related JP3997406B2 (en) 2002-08-08 2002-08-08 Image processing apparatus and method, recording medium, and program

Country Status (1)

Country Link
JP (1) JP3997406B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009253764A (en) * 2008-04-08 2009-10-29 Fujifilm Corp Image processing system, image processing method, and program
JP2009273117A (en) * 2008-04-07 2009-11-19 Fujifilm Corp Image processing system, image processing method, and program
JP2010166548A (en) * 2008-12-19 2010-07-29 Canon Inc Image encoding apparatus and control method thereof
JP2011139163A (en) * 2009-12-25 2011-07-14 Canon Inc Image processing apparatus and method
US8447128B2 (en) 2008-04-07 2013-05-21 Fujifilm Corporation Image processing system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009273117A (en) * 2008-04-07 2009-11-19 Fujifilm Corp Image processing system, image processing method, and program
US8447128B2 (en) 2008-04-07 2013-05-21 Fujifilm Corporation Image processing system
JP2009253764A (en) * 2008-04-08 2009-10-29 Fujifilm Corp Image processing system, image processing method, and program
JP2010166548A (en) * 2008-12-19 2010-07-29 Canon Inc Image encoding apparatus and control method thereof
US8577096B2 (en) 2008-12-19 2013-11-05 Canon Kabushiki Kaisha Image encoding apparatus and control method thereof
JP2011139163A (en) * 2009-12-25 2011-07-14 Canon Inc Image processing apparatus and method

Also Published As

Publication number Publication date
JP3997406B2 (en) 2007-10-24

Similar Documents

Publication Publication Date Title
US11695973B2 (en) Transmission of reconstruction data in a tiered signal quality hierarchy
US8842926B2 (en) Method and apparatus for encoding and decoding coding unit of picture boundary
WO2019134442A1 (en) Method and apparatus for encoding and decoding video image
US8605796B2 (en) Chroma-key video blending with improved compression
JP5214246B2 (en) Block average determination method for film grain size simulation
KR20170118463A (en) Encoding apparatus, decoding apparatus and method thereof
JP2003087785A (en) Method of converting format of encoded video data and apparatus therefor
JP2014183353A (en) Video processing device, video reproducing device, video processing method, video reproduction method, and video processing system
US20240048738A1 (en) Methods, apparatuses, computer programs and computer-readable media for processing configuration data
JP3997406B2 (en) Image processing apparatus and method, recording medium, and program
JPH1051770A (en) Image coding system and method, and image division system
CN117280680A (en) Parallel mode of dynamic grid alignment
CN1236456A (en) Digital signal converting method and device, transformation matrix generating method and device, and supply medium
JPH0715602A (en) Image data processor
JP4546207B2 (en) Movie editing apparatus, program, and movie editing method
WO2020175176A1 (en) Information processing device and method, and reproduction device and method
JP4136403B2 (en) Image processing apparatus, image processing method, program, and storage medium
JP2009060536A (en) Image encoding apparatus, and image encoding method
US20220076485A1 (en) Information processing apparatus and information processing method
CN116648904A (en) Group of pictures based tile packaging for video based point cloud codec
CN118215940A (en) Point cloud optimization using instance segmentation
JP2004200786A (en) Image demagnification apparatus and method, program and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070405

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070604

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070724

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110817

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110817

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120817

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120817

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130817

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees