JPH10111792A - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JPH10111792A
JPH10111792A JP26322596A JP26322596A JPH10111792A JP H10111792 A JPH10111792 A JP H10111792A JP 26322596 A JP26322596 A JP 26322596A JP 26322596 A JP26322596 A JP 26322596A JP H10111792 A JPH10111792 A JP H10111792A
Authority
JP
Japan
Prior art keywords
image
block
module
program
picture
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP26322596A
Other languages
English (en)
Inventor
Hiroyuki Ishikawa
裕之 石川
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP26322596A priority Critical patent/JPH10111792A/ja
Priority to EP19970116999 priority patent/EP0834834B1/en
Priority to US08/943,410 priority patent/US6021225A/en
Priority to DE1997618588 priority patent/DE69718588T2/de
Publication of JPH10111792A publication Critical patent/JPH10111792A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 多数のCPU・DSPに対応して現在のCP
U・DSPの処理能力に最適なプログラムを実行できる
画像圧縮・再生装置を提供する。 【解決手段】 画像圧縮装置は画像を読み込んで画像圧
縮手段44でフレーム内符号であるIピクチャと、前方
向のみのフレーム間符号であるPピクチャと、前後の双
方向のフレーム間符号であるBピクチャの3種類の圧縮
を行う。この時に装置制御手段41は現在のCPU42
を調べて、モジュールテーブル56を参照してCPUの
処理能力に最適なモジュールをプログラム55より選択
する。これらの最適なモジュールを組み合わせて、最適
なプログラムを作成する。また、画像再生装置は画像圧
縮装置と同様な処理を行って、最適なプログラムを作成
する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はCPUやDSP等に
より画像符号を圧縮符号化する装置、及び圧縮された画
像符号を再生する装置に関する。
【0002】
【従来の技術】画像をデジタル化してCD−ROMやハ
ードディスクなどの記録媒体に記録する場合、そのデー
タ量は巨大なものとなるため通常は圧縮符号化して記録
される。各種の圧縮符号化方式の中で画像の空間周波数
が低周波に集中する性質を利用して圧縮を行うDCTを
ベースとした符号化方式が比較的多く使用されている。
これはJPEG(Joint Photographi
c Expert Group)やMPEG(Movi
ng Pictures Expert Group)
などの国際標準である符号化方式で採用されている。
【0003】図1にMPEGに準拠した符号フォーマッ
トの階層図を示す。MPEGの符号は図1に示すように
いくつかの階層構造となっている。一番上の階層がビデ
オ・シーケンスであり、複数のGOP(Group o
f Picture)から構成される。
【0004】GOPは複数のピクチャから構成され、1
つのピクチャが1枚の画像を示している。ピクチャには
フレーム内符号であるIピクチャと、前方向のみのフレ
ーム間符号であるPピクチャと、前後の双方向のフレー
ム間符号であるBピクチャの3種類がある。ピクチャは
任意の領域に分割された複数のスライスから構成され
る。スライスは左から右へ、または上から下への順序で
並んだ複数のマクロブロックから構成される。
【0005】マクロブロックは16×16ドットのブロ
ックを更に8×8ドットのブロックに分割した輝度成分
(Y1,Y2,Y3,Y4)と輝度成分に一致する領域
の8×8ドットのブロックの色差成分(Cb,Cr)の
6個のブロックから構成される。8×8ドットのブロッ
クが符号化の最小単位となる。
【0006】従来のDCTをベースとした符号化方式に
よる画像符号の圧縮についてMPEGを例として図面を
参照して説明する。図2はMPEGに準拠した画像符号
の圧縮を行う画像圧縮装置のブロック図である。図2の
画像圧縮装置は画像を読み込んでYUV変換手段5でY
UVデータに変換して、動き検索手段6で前/後フレー
ムと現フレームの画像の動きを8×8ブロックの領域毎
に検索する。次にMPEGではフレーム内符号であるI
ピクチャと、前方向のみのフレーム間符号であるPピク
チャと、前後の双方向のフレーム間符号であるBピクチ
ャの3種類に分かれているので、3種類の圧縮が行われ
る。
【0007】Iピクチャの場合はDCT手段8により現
フレームの8×8ブロックの領域の画素の値を離散コサ
イン変換して、量子化手段9により量子化して、可変長
符号化手段10により可変長のハフマン符号に高能率圧
縮する。次に圧縮した画像を参照フレームとして復号す
るために、量子化されたデータを逆量子化手段14によ
り逆量子化して、IDCT手段13により逆離散コサイ
ン変換して画素値を算出して、参照フレーム部11に格
納する。
【0008】また、Pピクチャの場合は動き予測手段7
により現フレームの8×8ブロックの領域の画素の値と
動き検索手段6で検索された動きにより参照される参照
フレーム部11に格納された前フレームの8×8ブロッ
クの領域の画素の値で差分を算出して、DCT手段8に
より差分値を離散コサイン変換して、量子化手段9によ
り量子化して、可変長符号化手段10により可変長のハ
フマン符号に高能率圧縮する。次に圧縮した画像を参照
フレームとして復号するために、量子化されたデータを
逆量子化手段14により逆量子化して、IDCT手段1
3により逆離散コサイン変換して差分値を算出して、動
き補償手段12により動き予測手段7で参照された参照
フレーム部11に格納された前フレームの8×8ブロッ
クの領域の画素の値に差分値を加算して、参照フレーム
部11に格納する。
【0009】また、Bピクチャの場合は動き予測手段7
により現フレームの8×8ブロックの領域の画素の値と
動き検索手段6で検索された動きにより参照される参照
フレーム部11に格納された前/後フレームの8×8ブ
ロックの領域の画素の値で差分を算出して、DCT手段
8により差分値を離散コサイン変換して、量子化手段9
により量子化して、可変長符号化手段10により可変長
のハフマン符号に高能率圧縮する。Bピクチャの場合は
参照フレームとして使用されないので、画像の伸張は行
わない。
【0010】また、従来のDCTをベースとした符号化
方式による画像符号の再生についてMPEGを例として
図面を参照して説明する。図3はMPEGに準拠した画
像符号の再生を行う画像再生装置のブロック図である。
図3の画像再生装置は符号を読み込んでフレーム内符号
であるIピクチャと、前方向のみのフレーム間符号であ
るPピクチャと、前後の双方向のフレーム間符号である
Bピクチャの3種類の符号を伸張する。
【0011】Iピクチャの場合は可変長復号化手段25
で復号して、逆量子化手段26で逆量子化して、IDC
T27で逆離散コサイン変換によりブロックの画素の値
を算出して、RGB変換手段28により画像を出力す
る。
【0012】また、Pピクチャの場合は可変長復号化手
段25で復号して、逆量子化手段26で逆量子化して、
IDCT27で逆離散コサイン変換によりブロックの差
分を算出して、動き補償手段30により参照フレーム部
29に格納された前フレームの動き補償したブロックに
差分を加算して、RGB変換手段28により画像を出力
する。
【0013】また、Bピクチャの場合は可変長復号化手
段25で復号して、逆量子化手段26で逆量子化して、
IDCT手段27で逆離散コサイン変換によりブロック
の差分を算出して、動き補償手段30により参照フレー
ム部29に格納された前フレームの動き補償したブロッ
クと参照フレーム部29に格納された前/後フレームの
動き補償したブロックに差分を加算して、RGB変換手
段28により画像を出力する。
【0014】このように国際標準であるMPEGに基づ
いて圧縮・再生を行えば、高能率に画像を圧縮・再生す
ることができる。しかし、動き検索/動き補償やDCT
/IDCTなどの処理には多くの演算が必要なので、ソ
フトウェアによる画像の圧縮・再生にはCPUの特性を
考慮して最も高速に動作するように最適化されたプログ
ラムで処理する必要がある。そのために多数の種類のC
PUに対応するにはそれぞれ別のプログラムを用意して
切り替える必要がある。
【0015】最適なプログラムを使用する従来例として
特開平6−282444号公報ではCPUに最適になる
ようにコンパイルを行う方法が示されている。また、特
開平4−322329号公報では計算機にインストール
時に最適なプログラムを作成する方法が示されている。
また、プログラムに合わせて最適なCPUを選択する例
が特開平3−244067号公報に示されている。
【0016】
【発明が解決しようとする課題】しかし、上述した従来
の最適化プログラム作成方式では、使用する計算機ごと
に専用のプログラムを作成し、使用する計算機にインス
トールする必要があり、ネットワークなどで複数の計算
機とプログラムを共有することができない。また、使用
できるメモリ量を考慮してプログラムを作成していない
ため、プログラムサイズが大きくてメモリにロードでき
ない場合も生じる。さらに、プログラムに最適なCPU
を選択する方式では単一CPUで動作する計算機には適
用できないという欠点があった。
【0017】本発明の目的はプログラム実行時に現在の
CPUおよびメモリに最適なプログラムを動作させる画
像圧縮・再生装置を提供することにある。
【0018】
【課題を解決するための手段】本発明によれば、入力さ
れた画像を符号化する画像処理装置であって、各CPU
ごとにロードするモジュールを記載したモジュールテー
ブルと、前記モジュールテーブルによって指定される複
数のモジュールを管理するプログラムと、モジュールの
メモリへのロードを制御する装置制御手段と、ロードさ
れたモジュールから構成される画像圧縮手段とを有する
ことを特徴とする画像処理装置が得られる。
【0019】また、本発明によれば、入力された符号を
伸張する画像処理装置であって、各CPUごとにロード
するモジュールを記載したモジュールテーブルと、前記
モジュールテーブルによって指定される複数のモジュー
ルを管理するプログラムと、モジュールのメモリへのロ
ードを制御する装置制御手段と、ロードされたモジュー
ルから構成される画像再生手段とを有することを特徴と
する画像処理装置が得られる。
【0020】
【発明の実施の形態】本発明の発明の実施の形態につい
て、図面を参照して説明する。
【0021】図4は本発明の画像圧縮装置の構成図であ
る。図4では装置全体を制御する装置制御手段41とプ
ログラムを動作させるCPU42とユーザからの入力を
伝えるキーボード43と画像圧縮を行う画像圧縮手段4
4と各モジュールのCPU毎の最適モジュールを格納し
ているプログラム55と各CPUとそれに対応する最適
モジュールを示したモジュールテーブル56から構成さ
れている。また、画像圧縮手段44は画像をYUVデー
タに変換するYUV変換手段と画像の動きを検索する動
き検索手段46と画像の動きからブロックの差分を算出
する動き予測手段47とブロックの値を離散コサイン変
換するDCT手段48と離散コサイン変換後の値を量子
化する量子化手段49とハフマン符号に符号化する可変
長符号化手段50と量子化後の値を逆量子化する逆量子
化手段54と逆量子化後の値を逆離散コサイン変換する
IDCT手段53と動き補償された参照フレームのブロ
ックに差分値を加算する動き補償手段52と前後の参照
フレームを格納する参照フレーム部51で構成されてい
る。
【0022】図4の画像圧縮装置は画像を読み込んでY
UV変換手段45でYUVデータに変換して、動き検索
手段46で前/後フレームと現フレームの画像の動きを
8×8ブロックの領域毎に検索する。次にMPEGでは
フレーム内符号であるIピクチャと、前方向のみのフレ
ーム間符号であるPピクチャと、前後の双方向のフレー
ム間符号であるBピクチャの3種類に分かれているの
で、3種類の圧縮が行われる。
【0023】Iピクチャの場合はDCT手段48により
現フレームの8×8ブロックの領域の画素の値を離散コ
サイン変換して、量子化手段49により量子化して、可
変長符号化手段50により可変長のハフマン符号に高能
率圧縮する。次に圧縮した画像を参照フレームとして復
号するために、量子化されたデータを逆量子化手段54
により逆量子化して、IDCT手段53により逆離散コ
サイン変換して画素値を算出して、参照フレーム部51
に格納する。
【0024】また、Pピクチャの場合は動き予測手段4
7により現フレームの8×8ブロックの領域の画素の値
と動き検索手段46で検索された動きにより参照される
参照フレーム部51に格納された前フレームの8×8ブ
ロックの領域の画素の値で差分を算出して、DCT手段
48により差分値を離散コサイン変換して、量子化手段
49により量子化して、可変長符号化手段50により可
変長のハフマン符号に高能率圧縮する。次に圧縮した画
像を参照フレームとして復号するために、量子化された
データを逆量子化手段54により逆量子化して、IDC
T手段53により逆離散コサイン変換して差分値を算出
して、動き補償手段52により動き予測手段47で参照
された参照フレーム部51に格納された前フレームの8
×8ブロックの領域の画素の値に差分値を加算して、参
照フレーム部51に格納する。
【0025】また、Bピクチャの場合は動き予測手段4
7により現フレームの8×8ブロックの領域の画素の値
と動き検索手段46で検索された動きにより参照される
参照フレーム部51に格納された前/後フレームの8×
8ブロックの領域の画素の値で差分を算出して、DCT
手段48により差分値を離散コサイン変換して、量子化
手段49により量子化して、可変長符号化手段50によ
り可変長のハフマン符号に高能率圧縮する。Bピクチャ
の場合は参照フレームとして使用されないので、逆量子
化54以降の参照フレーム部51を作成する処理は行わ
ない。
【0026】また、装置制御手段41は現在のCPU4
2を調べて、CPU42に最適なプログラムを構成する
ために必要なモジュールをモジュールテーブル56から
求めて、最適なモジュールを組み合わせて、最適なプロ
グラムを作成する。
【0027】また、図5は本発明の画像再生装置の構成
図である。図5では装置全体を制御する装置制御手段6
1とプログラムを動作させるCPU62とユーザからの
入力を伝えるキーボード63と画像再生を行う画像再生
手段64と各モジュールのCPU毎の最適モジュールを
格納しているプログラム71と各CPUとそれに対応す
る最適モジュールを示したモジュールテーブル72から
構成されている。また、画像再生手段64は圧縮符号を
復号する可変長復号化手段65と復号後の値を逆量子化
する逆量子化手段66と逆量子化後の値を逆離散コサイ
ン変換するIDCT手段67とYUVデータをRGBデ
ータに変換するRGB変換手段68と前後の参照フレー
ムを格納する参照フレーム部69と画像の動きからブロ
ックの差分を算出する動き補償手段70で構成されてい
る。
【0028】図5の画像再生装置は符号を読み込んでフ
レーム内符号であるIピクチャと、前方向のみのフレー
ム間符号であるPピクチャと、前後の双方向のフレーム
間符号であるBピクチャの3種類の符号を伸張する。
【0029】Iピクチャの場合は可変長復号化手段65
で復号して、逆量子化手段66で逆量子化して、IDC
T67で逆離散コサイン変換によりブロックの画素の値
を算出して、RGB変換手段68により画像を出力す
る。
【0030】また、Pピクチャの場合は可変長復号化手
段65で復号して、逆量子化手段66で逆量子化して、
IDCT67で逆離散コサイン変換によりブロックの差
分を算出して、動き補償手段70により参照フレーム部
69に格納された前フレームの動き補償したブロックに
差分を加算して、RGB変換手段68により画像を出力
する。
【0031】また、Bピクチャの場合は可変長復号化手
段65で復号して、逆量子化手段66で逆量子化して、
IDCT手段67で逆離散コサイン変換によりブロック
の差分を算出して、動き補償手段70により参照フレー
ム部69に格納された前フレームの動き補償したブロッ
クと参照フレーム部69に格納された前/後フレームの
動き補償したブロックに差分を加算して、RGB変換手
段68により画像を出力する。
【0032】また、装置制御手段61は現在のCPU6
2を調べて、CPU62に最適なプログラムを構成する
ために必要なモジュールをモジュールテーブル72から
求めて、最適なモジュールを組み合わせて、最適なプロ
グラムを作成する。
【0033】次に最適なプログラムの作成について、画
像再生を例にして説明する。
【0034】図6は最適なプログラムの作成時のデータ
の流れを示す図である。図6ではCPUの処理能力がZ
の場合の画像再生のプログラム81を最適化している。
まず、モジュールテーブル83からCPUZに最適な可
変長復号化モジュールを求める。CPUZに最適な可変
長復号化モジュールは可変長復号化Cであるので、プロ
グラム82から可変長復号化Cを画像再生プログラム8
1にロードする。以降、同様にして逆量子化D、IDC
TG、動き補償K、RGB変換Iのモジュールをロード
して、CPUZに最適な画像再生プログラムを作成す
る。
【0035】プログラム82はプログラムの中でCPU
に大きな負荷を要するモジュールで構成されている。画
像再生では可変長復号化、逆量子化、IDCT、動き予
測、RGB変換のモジュールとなる。
【0036】画像圧縮の場合は同様にしてYUV変換、
動き検索、動き予測、DCT、量子化、可変長符号化、
逆量子化、IDCT、動き補償についてそれぞれのモジ
ュールを格納する。
【0037】次に本発明の発明の実施の形態の動作につ
いて、図面を参照して説明する。
【0038】図7は図4のブロック図の装置制御手段の
フローチャートである。図7では現在のCPU42のC
PUIDおよび使用可能なメモリ量をチェックして(ス
テップ91)、現在の処理能力で画像再生を行うのに最
適なモジュールを判定する。ここで、メモリ量が不足し
ていると判定された場合は(ステップ92)、メモリ不
足用の処理が動作する(ステップ96)。メモリが充分
なら、判定の結果得られた最適なモジュールをロード
し、圧縮プログラムを作成する(ステップ93)。次に
画像圧縮を実行して(ステップ94)、全フレームが終
了したかどうかを判断して(ステップ95)、そうでな
い場合はステップ94へ戻る。
【0039】また、図8、図9は画像圧縮のフローチャ
ートである。これらの図ではYUV変換手段45で画像
をYUVデータに変換して(ステップ101)、動き検
索手段46で画像のマクロブロック毎の動きを検索して
(ステップ102)、ピクチャの種別を判断して(ステ
ップ103)、各ピクチャ種別毎に処理する。
【0040】Iピクチャの場合はDCT手段48で離散
コサイン変換して(ステップ104)、量子化手段49
により量子化して(ステップ105)、可変長符号化手
段50により可変長のハフマン符号に高能率圧縮して
(ステップ106)、量子化されたデータを逆量子化手
段54により逆量子化して(ステップ107)、IDC
T手段53により逆離散コサイン変換して参照フレーム
部51に格納する(ステップ108)。
【0041】Pピクチャの場合は動き予測手段47によ
り現フレームのブロックと参照フレーム部11の前フレ
ームのブロックで差分を算出して(ステップ109)、
DCT手段48で離散コサイン変換して(ステップ11
0)、量子化手段49により量子化して(ステップ11
1)、可変長符号化手段50により可変長のハフマン符
号に高能率圧縮して(ステップ112)、量子化された
データを逆量子化手段54により逆量子化して(ステッ
プ113)、IDCT手段53により逆離散コサイン変
換して(ステップ114)、動き補償手段52により参
照フレーム部51の前フレームのブロックに差分値を加
算して参照フレーム部51に格納する(ステップ11
5)。
【0042】Bピクチャの場合は動き予測手段47によ
り現フレームのブロックと参照フレーム部11の前/後
フレームのブロックで差分を算出して(ステップ11
6)、DCT手段48で離散コサイン変換して(ステッ
プ117)、量子化手段49により量子化して(ステッ
プ118)、可変長符号化手段50により可変長のハフ
マン符号に高能率圧縮して(ステップ119)、量子化
されたデータを逆量子化手段54により逆量子化して
(ステップ120)、IDCT手段53により逆離散コ
サイン変換して(ステップ121)、動き補償手段52
により参照フレーム部51の前/後フレームのブロック
に差分値を加算して参照フレーム部51に格納する(ス
テップ122)。
【0043】図10は圧縮プログラム作成のフローチャ
ートである。図9では現在のCPUIDとYUV変換を
引数としてモジュールをロードして(ステップ13
1)、現在のCPUIDと動き検索を引数としてモジュ
ールをロードして(ステップ132)、現在のCPUI
Dと動き予測を引数としてモジュールをロードして(ス
テップ133)、現在のCPUIDとDCTを引数とし
てモジュールをロードして(ステップ134)、現在の
CPUIDと量子化を引数としてモジュールをロードし
て(ステップ135)、現在のCPUIDと可変長符号
化を引数としてモジュールをロードして(ステップ13
6)、現在のCPUIDと逆量子化を引数としてモジュ
ールをロードして(ステップ137)、現在のCPUI
DとIDCTを引数としてモジュールをロードして(ス
テップ138)、現在のCPUIDと動き補償を引数と
してモジュールをロードする(ステップ139)。
【0044】また、図11,12はメモリ不足時の処理
のフローチャートである。これらの図では現在のCPU
IDとYUV変換を引数としてモジュールをロードして
(ステップ141)、YUV変換を実行する(ステップ
142)。実行後はYUV変換で使用したデータやプロ
グラムのメモリを解放し(ステップ143)、現在のC
PUIDと動き検索を引数としてモジュールをロードし
て(ステップ144)、動き検索を実行する(ステップ
145)。実行後は動き検索で使用したデータやプログ
ラムのメモリを解放し(ステップ146)、現在のCP
UIDと動き予測を引数としてモジュールをロードして
(ステップ147)、動き予測を実行する(ステップ1
48)。実行後は動き予測で使用したデータやプログラ
ムのメモリを解放し(ステップ149)、現在のCPU
IDとDCTを引数としてモジュールをロードして(ス
テップ150)、DCTを実行する(ステップ15
1)。実行後はDCTで使用したデータやプログラムの
メモリを解放し(ステップ152)、現在のCPUID
と量子化を引数としてモジュールをロードして(ステッ
プ153)、量子化を実行する(ステップ154)。実
行後は量子化で使用したデータやプログラムのメモリを
解放し(ステップ155)、現在のCPUIDと可変長
符号化を引数としてモジュールをロードして(ステップ
156)、可変長符号化を実行する(ステップ15
7)。実行後は可変長符号化で使用したデータやプログ
ラムのメモリを解放し(ステップ158)、現在のCP
UIDと逆量子化を引数としてモジュールをロードして
(ステップ159)、逆量子化を実行する(ステップ1
60)。実行後は逆量子化で使用したデータやプログラ
ムのメモリを解放し(ステップ161)、現在のCPU
IDとIDCTを引数としてモジュールをロードして
(ステップ162)、IDCTを実行する(ステップ1
63)。実行後はIDCTで使用したデータやプログラ
ムのメモリを解放し(ステップ164)、現在のCPU
IDと動き補償を引数としてモジュールをロードして
(ステップ165)、動き補償を実行する(ステップ1
66)。実行後は動き補償で使用したデータやプログラ
ムのメモリを解放し(ステップ167)、全フレームが
終了したかどうかを判断して(ステップ168)、そう
でない場合はステップ141へ戻る。
【0045】図13は図5のブロック図の装置制御手段
のフローチャートである。図13では現在のCPU62
のCPUIDおよび使用可能メモリ量をチェックして
(ステップ171)、現在の処理能力で画像再生を行う
のに最適なモジュールを判定する。ここで、メモリ量が
不足していると判定された場合は(ステップ172)、
メモリ不足用の処理が動作する(ステップ176)。メ
モリが充分なら、判定の結果得られた最適なモジュール
をロードし、再生プログラムを作成する(ステップ17
3)。次に画像再生を実行して(ステップ174)、全
フレームが終了したかどうかを判断して(ステップ17
5)、そうでない場合はステップ174へ戻る。
【0046】また、図14は再生プログラム作成のフロ
ーチャートである。図14では現在のCPUIDと可変
長復号化を引数としてモジュールをロードして(ステッ
プ181)、現在のCPUIDと逆量子化を引数として
モジュールをロードして(ステップ182)、現在のC
PUIDとIDCTを引数としてモジュールをロードし
て(ステップ183)、現在のCPUIDとRGB変換
を引数としてモジュールをロードして(ステップ18
4)、現在のCPUIDと動き補償を引数としてモジュ
ールをロードする(ステップ185)。
【0047】また、図15はメモリ不足時の処理のフロ
ーチャートである。図15では現在のCPUIDと可変
長復号化を引数としてモジュールをロードして(ステッ
プ191)、可変長復号化を実行する(ステップ19
2)。実行後は可変長復号化で使用したデータやプログ
ラムのメモリを解放し(ステップ193)、現在のCP
UIDと逆量子化を引数としてモジュールをロードして
(ステップ194)、逆量子化を実行する(ステップ1
95)。実行後は逆量子化で使用したデータやプログラ
ムのメモリを解放し(ステップ196)、現在のCPU
IDとIDCTを引数としてモジュールをロードして
(ステップ197)、IDCTを実行する(ステップ1
98)。実行後はIDCTで使用したデータやプログラ
ムのメモリを解放し(ステップ199)、現在のCPU
IDとRGB変換を引数としてモジュールをロードして
(ステップ200)、RGB変換を実行する(ステップ
201)。実行後はRGB変換で使用したデータやプロ
グラムのメモリを解放し(ステップ202)、現在のC
PUIDと動き補償を引数としてモジュールをロードし
て(ステップ203)、動き補償を実行する(ステップ
204)。実行後は動き補償で使用したデータやプログ
ラムのメモリを解放し(ステップ205)、全フレーム
が終了したかどうかを判断して(ステップ206)、そ
うでない場合はステップ191へ戻る。
【0048】また、図16は画像再生のフローチャート
である。図16では可変長復号化手段65で圧縮符号を
復号して(ステップ211)、ピクチャの種別を判断し
て(ステップ212)、各ピクチャ種別毎に処理する。
【0049】Iピクチャの場合は逆量子化手段66で逆
量子化して(ステップ213)、IDCT手段67によ
り逆離散コサイン変換して参照フレーム部69に格納し
て(ステップ214)、RGB変換手段68によりYU
VからRGBに変換する(ステップ215)。
【0050】Pピクチャの場合は逆量子化手段66で逆
量子化して(ステップ216)、IDCT手段67によ
り逆離散コサイン変換して(ステップ217)、動き補
償手段70により参照フレーム部69の前フレームのブ
ロックに差分値を加算して参照フレーム部69に格納し
て(ステップ218)、RGB変換手段68によりYU
VからRGBに変換する(ステップ219)。
【0051】Bピクチャの場合は逆量子化手段66で逆
量子化して(ステップ220)、IDCT手段67によ
り逆離散コサイン変換して(ステップ221)、動き補
償手段70により参照フレーム部69の前/後フレーム
のブロックに差分値を加算して参照フレーム部69に格
納して(ステップ222)、RGB変換手段68により
YUVからRGBに変換する(ステップ223)。
【0052】TV会議の画像を圧縮するときのように、
圧縮プログラムに一定の処理速度が要求されるような場
合、処理速度が異なる複数のCPUでも要求される速度
の基準が満たされるように、使用するCPUに最適なモ
ジュールをロードして、最適な圧縮プログラムを作成す
る必要がある。図17はロードする最適モジュールのモ
ジュールテーブルの一例を示す図である。図17では、
圧縮プログラムを構成するモジュールの中からDCTモ
ジュール、量子化モジュール、可変長符号化モジュール
を例として示してある。特に、CPUの処理速度のみに
着目してロードするモジュールを分けた場合について示
した。
【0053】まず、CPUが16ビットCPUか32ビ
ットCPUかで大きく二つに分けてあり、それぞれにつ
いて処理速度が本圧縮プログラムで設定した基準値の範
囲内にあるか、基準値より低速であるか、高速であるか
によって「標準」「低速」「高速」の三種類に分けてあ
る。
【0054】CPUが16ビットの場合の量子化モジュ
ールについて説明すると、CPUの処理速度が低速の場
合は打ち切り処理を行う量子化モジュールがロードさ
れ、高速の場合は高画質の処理を行う量子化モジュール
がロードされる。処理速度が基準値の範囲内にある場合
は、特別な処理を行わない基準のモジュールがロードさ
れる。
【0055】同様にDCT、可変長符号化のモジュール
がCPUの処理速度により選択され、それぞれロードさ
れる。CPUが32ビットの場合も16ビットの時と同
様に、32ビット用に作成されたモジュールが選択さ
れ、ロードされる。例えば、CPUが32ビットで処理
速度が高速である場合は、DCTは「高画質」モジュー
ルがロードされ、量子化は「高画質」モジュールがロー
ドされ、可変長符号化は「標準」モジュールがロードさ
れる。
【0056】図18に16ビット用と32ビット用の量
子化モジュールの一部を示した。CPUが32ビットの
時、16ビット用のプログラムを動作させると一般的に
は32ビット用のプログラムに比べて動作速度が遅くな
る上に、図18(A)と図18(B)とを比較すれば分
かるように、同じ演算を行う時の命令数も16ビット用
のプログラムの方が多くなっている。また、16ビット
のCPUでは32ビット用のプログラムは動作しないた
め、16ビット用のプログラム以外は選択できない。こ
のようにCPUの種類別にロードするモジュールを切り
替えるために各CPUに個別な値であるCPUIDをチ
ェックして、現在使用しているCPUに最適なモジュー
ルをロードする。
【0057】また、CPUの処理速度が遅い場合の量子
化モジュールで行われる処理の打ち切りについて説明す
る。図19は8×8のブロックを示している。DCT処
理後のブロックは周波数成分に変換されており、図18
に示すような順序に低周波成分から高周波成分へと並べ
られている。標準の量子化処理では64個の成分全てに
対し乗除算を行う必要がある。しかし、高周波になれば
なるほど量子化後には値が0になる確率が高くなり、ま
た、高周波成分を省略しても人間の目には違いが確認し
にくいといった特徴があるため、低周波成分から高周波
成分へ量子化を行うときに、演算を64ポイント全て行
わずに途中のポイントで演算を中止することによって処
理時間を短縮することができる。演算を中止した場合、
中止ポイント以降の部分は全て0で埋めて対応する。打
ち切るポイントはCPUの処理速度に応じて任意に変化
させることも可能である。32ポイントで量子化を打ち
切れば64ポイント量子化を行う処理時間に比べて半分
の時間で処理が終了することになる。
【0058】次に、CPUの処理速度が速い場合の量子
化モジュールの高画質処理について説明する。画像の質
を向上させるには計算精度を向上させる必要がある。こ
の一例を図20に示した。例では(18÷5)+(8÷
3)の演算を行うプログラムが示されている。小数第一
位まで求めると6.3になる。図20(A)の例では、
0022行目の除算で18÷5=3となり、0026行
目の除算で8÷3=2となり、これらを加算すると結果
は5となる。一方、高精度演算の例として図20(B)
では、除算時に切り捨てられる影響を少なくするため、
0022行目と0027行目で割られる数を16倍し
て、全ての演算が終わった後の結果を16で除算してい
る。0023行目の除算で18×16÷5=57とな
り、0028行目の除算で8×16÷3=42となる。
0030行目で16で割るため(57+42)÷16=
6となる。結果を比較すると高精度演算を行った方が、
小数点以下を切り捨てる割合が少ないため誤差が少ない
ことが分かる。しかし除算を行う際に一度割られる数を
底上げして、演算後に戻す処理が入る分、演算量は増え
ている。このように、計算精度を上げて画質を向上させ
ると処理時間が増加するため、処理速度が速いCPU用
のモジュールとしてロードされる。
【0059】また、メモリの使用可能量が少ない状態で
プログラムを動作させるためには、一度にロードするプ
ログラムやデータを少なくする必要がある。図21に量
子化後に可変長符号化を行う例を示す。例えば、量子化
のためのデータテーブルが1ポイントあたり4バイト必
要で、全部で64ポイントのテーブルを2つ使用すると
すると、992バイト必要になる。このテーブルをメモ
リ上にロードしたまま可変長符号化を行おうとして、符
号化テーブルをロードしようとしたがメモリ不足でロー
ドできない場合が起こる可能性がある場合、図22に示
すように可変長符号化モジュールをメモリにロードする
前に量子化モジュールで使用した領域を解放して使用可
能メモリを増やす必要がある。これをモジュールロード
ごとに繰り返すことにより、少ないメモリでも圧縮プロ
グラムが動作するようになる。
【0060】同様に、YUV変換、動き補償、動き予
測、DCT、可変長符号化、逆量子化、IDCTを処理
することでCPUの処理能力、メモリ量に応じた最適な
モジュールを選択し、動作させることができる。
【0061】
【発明の効果】以上説明したように圧縮/再生プログラ
ムを構成するモジュールを複数作成しておくことで、使
用するCPUの処理能力に最適なプログラムが動作する
ことになる。
【0062】また、メモリ不足でプログラム全体をロー
ドできないようなプログラムであっても、モジュール単
位に順次メモリにロードし、使用後に廃棄を行うこと
で、動作させることができる。
【図面の簡単な説明】
【図1】MPEG方式に準拠した符号フォーマットの階
層図である。
【図2】従来の画像圧縮装置のブロック図である。
【図3】従来の画像再生装置のブロック図である。
【図4】本発明を適用した画像圧縮装置のブロック図で
ある。
【図5】本発明を適用した画像再生装置のブロック図で
ある。
【図6】最適プログラム作成時のデータの流れを示す図
である。
【図7】図4の装置制御手段の動作を説明するためのフ
ローチャートである。
【図8】画像圧縮処理を説明するためのフローチャート
である。
【図9】画像圧縮処理を説明するためのフローチャート
である。
【図10】圧縮プログラム作成処理を説明するためのフ
ローチャートである。
【図11】メモリ不足時の処理を説明するためのフロー
チャートである。
【図12】メモリ不足時の処理を説明するためのフロー
チャートである。
【図13】図5の装置制御手段の動作を説明するための
フローチャートである。
【図14】再生プログラム作成処理を説明するためのフ
ローチャートである。
【図15】メモリ不足時の処理を説明するためのフロー
チャートである。
【図16】画像再生処理を説明するためのフローチャー
トである。
【図17】モジュールテーブルの一例を示す図である。
【図18】量子化プログラムモジュールの例を示す図で
ある。
【図19】8×8ブロック内の画素の走査順序を示す図
である。
【図20】量子化プログラムモジュール内の打ち切り処
理の例を示す図である。
【図21】メモリ上にロードしたプログラムのマップの
例を示す図である。
【図22】メモリ上にロードしたプログラムのマップの
例を示す図である。
【符号の説明】
41 装置制御手段 42 CPU 43 キーボード 44 画像圧縮手段 45 YUV変換手段 46 動き検索手段 47 動き予測手段 48 DCT手段 49 量子化手段 50 可変長符号化手段 51 参照フレーム部 52 動き補償手段 53 IDCT手段 54 逆量子化手段 55 プログラム 56 モジュールテーブル 61 装置制御手段 62 CPU 63 キーボード 64 画像再生手段 65 可変長復号化手段 66 逆量子化手段 67 IDCT手段 68 RGB変換手段 69 参照フレーム部 70 動き補償手段 71 プログラム 72 モジュールテーブル 81 画像再生プログラム 82 プログラム 83 モジュールテーブル

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 画像を小ブロックに分割して、各ブロッ
    ク毎に直交変換を行い、その変換結果を量子化して、高
    能率符号化されたフレーム内符号と、画像を小ブロック
    に分割して、各ブロック毎に現フレームとその前後のフ
    レームで最も差分が小さくなるようなブロックを検索し
    て(動き検索)を行い、現フレームのブロックと動き検
    索されたフレームのブロックで差分を取り、その差分ブ
    ロックに直交変換を行い、その変換結果を量子化して、
    高能率符号化されたフレーム間符号で画像を圧縮符号化
    する画像処理装置において、多種類のCPU、またはD
    SP毎の最適な画像圧縮プログラムのモジュールから現
    在のCPU、またはDSPに最適な画像圧縮プログラム
    を作成する手段を備えたことを特徴とする画像処理装
    置。
  2. 【請求項2】 請求項1において、各処理単位ごとにメ
    モリにロードし、実行し、メモリから廃棄を行い、これ
    を繰り返すことで画像を圧縮することを特徴とする画像
    処理装置。
  3. 【請求項3】 画像を小ブロックに分割して、各ブロッ
    ク毎に直交変換を行い、その変換結果を量子化して、高
    能率符号化されたフレーム内符号と、画像を小ブロック
    に分割して、各ブロック毎に現フレームとその前後のフ
    レームで最も差分が小さくなるようなブロックを検索し
    て(動き検索)を行い、現フレームのブロックと動き検
    索されたフレームのブロックで差分を取り、その差分ブ
    ロックにDCTを行い、その変換結果を量子化して、高
    能率符号化されたフレーム間符号で画像を圧縮符号化さ
    れた画像を再生する画像処理装置において、多種類のC
    PU、またはDSP毎の最適な画像再生プログラムのモ
    ジュールから現在のCPU、またはDSPに最適な画像
    再生プログラムを作成する手段を備えたことを特徴とす
    る画像処理装置。
  4. 【請求項4】 請求項3において、各処理単位ごとにメ
    モリにロードし、実行し、メモリから廃棄を行い、これ
    を繰り返すことで画像を再生することを特徴とする画像
    処理装置。
JP26322596A 1996-10-03 1996-10-03 画像処理装置 Pending JPH10111792A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP26322596A JPH10111792A (ja) 1996-10-03 1996-10-03 画像処理装置
EP19970116999 EP0834834B1 (en) 1996-10-03 1997-09-30 Image coding method
US08/943,410 US6021225A (en) 1996-10-03 1997-09-30 Image processing apparatus
DE1997618588 DE69718588T2 (de) 1996-10-03 1997-09-30 Verfahren zur Bildkodierung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26322596A JPH10111792A (ja) 1996-10-03 1996-10-03 画像処理装置

Publications (1)

Publication Number Publication Date
JPH10111792A true JPH10111792A (ja) 1998-04-28

Family

ID=17386526

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26322596A Pending JPH10111792A (ja) 1996-10-03 1996-10-03 画像処理装置

Country Status (4)

Country Link
US (1) US6021225A (ja)
EP (1) EP0834834B1 (ja)
JP (1) JPH10111792A (ja)
DE (1) DE69718588T2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005086485A1 (ja) * 2004-03-09 2005-09-15 Matsushita Electric Industrial Co., Ltd. 符号化データ復号装置
JP2008287460A (ja) * 2007-05-17 2008-11-27 Sony Corp 情報処理装置および方法
JP2012079204A (ja) * 2010-10-05 2012-04-19 Yokogawa Electric Corp プログラムが実装されたフィールド機器
WO2012060098A1 (ja) * 2010-11-05 2012-05-10 日本電気株式会社 情報処理装置
JP2015018363A (ja) * 2013-07-10 2015-01-29 富士ゼロックス株式会社 画像処理装置及び制御プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6686955B1 (en) * 1999-01-29 2004-02-03 International Business Machines Corporation Lightweight image manipulation for maximizing the capacity of digital photo storage media
US7146055B2 (en) * 2000-05-05 2006-12-05 Hewlett-Packard Development Company, L.P. Image processing decompression apparatus and method of using same different scaling algorithms simultaneously

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03244067A (ja) * 1990-02-21 1991-10-30 Nec Corp 最適プロセッサ選択動的プログラムロード方式
JP3602857B2 (ja) * 1991-04-23 2004-12-15 株式会社日立製作所 多機種対応型情報処理システム、および、方法
WO1994009595A1 (en) * 1991-09-20 1994-04-28 Shaw Venson M Method and apparatus including system architecture for multimedia communications
DE69330691T2 (de) * 1992-06-03 2002-07-04 Sun Microsystems Inc Dynamisch konfigurierbares Kernsystem
GB2268293A (en) * 1992-06-17 1994-01-05 Texas Instruments Ltd Installing a resident part of a Terminate and Stay Resident program.
JPH06282444A (ja) * 1993-03-26 1994-10-07 Hitachi Software Eng Co Ltd コンパイル方法
JP2914320B2 (ja) * 1996-09-06 1999-06-28 日本電気株式会社 モジュール切り替え型画像圧縮・再生装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005086485A1 (ja) * 2004-03-09 2005-09-15 Matsushita Electric Industrial Co., Ltd. 符号化データ復号装置
JP2008287460A (ja) * 2007-05-17 2008-11-27 Sony Corp 情報処理装置および方法
JP4517306B2 (ja) * 2007-05-17 2010-08-04 ソニー株式会社 情報処理装置および方法
US8281314B2 (en) 2007-05-17 2012-10-02 Sony Corporation Information processing device and method
JP2012079204A (ja) * 2010-10-05 2012-04-19 Yokogawa Electric Corp プログラムが実装されたフィールド機器
WO2012060098A1 (ja) * 2010-11-05 2012-05-10 日本電気株式会社 情報処理装置
CN103201791A (zh) * 2010-11-05 2013-07-10 日本电气株式会社 信息处理设备
US9372719B2 (en) 2010-11-05 2016-06-21 Nec Corporation Information processing device for correcting procedure
JP2015018363A (ja) * 2013-07-10 2015-01-29 富士ゼロックス株式会社 画像処理装置及び制御プログラム

Also Published As

Publication number Publication date
EP0834834A3 (en) 2000-04-26
DE69718588T2 (de) 2003-08-14
EP0834834B1 (en) 2003-01-22
DE69718588D1 (de) 2003-02-27
EP0834834A2 (en) 1998-04-08
US6021225A (en) 2000-02-01

Similar Documents

Publication Publication Date Title
US10567785B2 (en) Image coding apparatus, method for coding image, program therefor, image decoding apparatus, method for decoding image, and program therefor
JP3103383B2 (ja) 画像復号化方法
JP4746550B2 (ja) 画像符号化装置
EP1407611A2 (en) Track for improved video compression
KR100510756B1 (ko) 화상복호화장치와 그 방법 및 화상재생장치
JP3014031B2 (ja) 動画圧縮装置
JPH10111792A (ja) 画像処理装置
US6591014B1 (en) Apparatus for coding moving picture
JP2000324494A (ja) 動画像符号化装置
US20060209962A1 (en) Video encoding method and video encoder for improving performance
JP2914320B2 (ja) モジュール切り替え型画像圧縮・再生装置
JP2000125295A (ja) 動画像符号化装置及び方法、動画像復号化装置及び方法並びに記憶媒体
JP3274563B2 (ja) 画像再生装置
CN100396101C (zh) 产生并使用辅助图像的图像压缩设备及其方法
JP2002232881A (ja) 動画像復号化方法及び装置
JPH08163561A (ja) 画像データ圧縮装置
JP3653799B2 (ja) 画像符号化装置
JPH11155147A (ja) 画像再生方法、画像符号化装置及び画像符号化方法
JPH08289290A (ja) 画像再生装置
JP2002516529A (ja) ピクチャシーケンスとして構成された情報ストリームの符号化
JP3674454B2 (ja) 動画再生システム及び表示制御装置
JPH10164594A (ja) 動画像の圧縮符号化方法およびその装置
JPH11146403A (ja) 映像信号符号化装置、映像信号符号化方法、および映像信号符号化プログラム記憶媒体
JPH05347758A (ja) フレーム間予測符号化方式
JPH07264592A (ja) 動画像データ圧縮処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20000509