JP2010016781A - 画像処理装置及びその制御方法 - Google Patents

画像処理装置及びその制御方法 Download PDF

Info

Publication number
JP2010016781A
JP2010016781A JP2008177407A JP2008177407A JP2010016781A JP 2010016781 A JP2010016781 A JP 2010016781A JP 2008177407 A JP2008177407 A JP 2008177407A JP 2008177407 A JP2008177407 A JP 2008177407A JP 2010016781 A JP2010016781 A JP 2010016781A
Authority
JP
Japan
Prior art keywords
decoding
image
region
image data
interest
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
JP2008177407A
Other languages
English (en)
Inventor
Satoshi Naito
聡 内藤
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2008177407A priority Critical patent/JP2010016781A/ja
Publication of JP2010016781A publication Critical patent/JP2010016781A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】 可変長符号化された画像データであっても、関心領域をダイレクトに復号することが可能になる。
【解決手段】 領域指定部101は、撮像部11で撮像した画像中の人物の顔領域を検出し、その検出した顔領域を示す座標情報を関心領域として復号テーブル作成部102に出力する。符号化部103は、複数の画素で構成されるブロックを単位に符号化処理を行うと共に、ブロック単位の符号化データのデータ量の累積結果を復号テーブル作成部102に出力する。復号テーブル作成部102は、関心領域内のブロックの符号化が行われたとき、そのブロックの符号化データのビット位置情報を復号テーブルに登録する。メモリ104には、復号テーブルをヘッダとする画像符号化データファイルが格納される。関心領域を表示部12に表示する場合には、復号部105は、復号用テーブルを参照し、関心領域のブロックの符号化データの位置を判定し、その位置から復号処理を行う。
【選択図】 図1

Description

本発明は、画像符号化、並びに、符号化画像データを処理する画像処理技術に関するものである。
一般に、デジタルカメラには、撮影被写体の画像を表示する表示部が設けられている。この表示部には、液晶表示パネル等が用いられている。表示部は、表示領域が小さく、かつ、撮像素子の解像度よりも低い。このため、人物等を景色を含めて撮影する場合、その人物が小さく表示され、撮影者からするとその表情を判別しにくい。
このため、特許文献1には、撮影された画像データに人物の顔が検出された場合、画像データに顔の位置情報(座標、大きさなど)を付加するデジタルカメラが提案されている。このデジタルカメラでは、ユーザにより顔拡大表示ボタンが操作されたとき、顔の位置情報を基に、その顔が含まれる領域の画像が切り出されて拡大表示される。よって、表示部が小さいデジタルカメラにおいても、ユーザは目瞑りや顔の表情を確認することができる。また、顔の位置情報を基に、特定の人物が撮影された画像データを検索することが可能となる。
さて、デジタルカメラでは、撮像した画像を記憶媒体(一般には脱着可能なメモリカード)に格納する際、その撮像画像のデータ量を少なくするため圧縮符号化する。この圧縮符号化技術の代表的なものがJPEGである。
JPEG符号化方式においては、符号化対象の画像データを8×8画素のブロックに分割し、各ブロックを離散コサイン変換して、変換係数ブロックを生成する。その後、その変換係数ブロック内の各変換係数を量子化し、該量子化した変換係数を一定の順序で走査する。走査された変換係数が連続して0となる個数と、変換係数が0以外の値の組に対して、可変長符号を割り当てて符号化する。さらに、変換係数のうちDC成分に関しては、直前の変換係数ブロックのDC成分を予測値とし、その予測値と当該変換係数ブロックのDC成分との差分値が符号化される。
JPEG符号化は、可変長符号化であるので、1ブロックの符号化データ量は一定ではない。従って、1つの画像中の或るブロックの符号化データの存在位置は、画像全体の符号化データの先頭から順に復号しない限り求めることはできない。
よって、特許文献1で提案されているデジタルカメラでは、符号化画像データ全体を復号してバッファメモリに展開した後に、顔の位置情報を基に、顔が含まれる領域(以下、「顔領域」と記す)を抜き出す必要が生じる。ゆえに、顔領域を抜き出す処理に時間がかかり、さらに、大容量のバッファメモリが必要になるという問題がある。
このような問題を解決する従来技術として、特許文献2の可変長符号化バイナリ・ビットストリームの処理方法が提案されている。
この処理方法では、まず、符号化画像データをその先頭から走査し、図12(a)に示す画像データ中に予め定めた列のブロック(図12の701乃至704)を復号するために必要とされる部分復号情報を得る。部分復号情報とは、具体的には、符号化画像データにおけるブロックの位置情報(ファイルポインタ)と、該ブロックのDC成分を復号するのに必要な予測値である。そして、これらの情報を復号用のテーブルに記憶する。しかる後に、この復号用のテーブルを利用して、所定のブロックを起点として符号化画像データを部分的に復号することができる。
なお、復号用のテーブルには、画像データの最左端の列における全てのブロック(図12の701)と、所定の間隔を空けた列のブロック(図12の702乃至704)の部分復号情報が記憶される。
特許文献1のデジタルカメラと、特許文献2の可変長符号化バイナリ・ビットストリームの処理方法とを組み合わせることで、顔領域を復号して表示させることが可能となる。
具体的には、デジタルカメラで撮影され一旦メモリに記憶された符号化画像データに対して、事前に走査を行うことにより部分復号情報を取得し、復号用のテーブルに記憶する。顔の位置情報を基に、顔の座標に最も近い顔の左側のブロック(図12の701)を、上記復号用のテーブルに記憶されたブロックの中から選択する。このテーブルに記憶された該ブロックの部分復号情報を基に、該ブロックを起点として部分的に復号処理を行う。部分的に復号された画像データの中から、顔の位置情報を基に、顔領域を抜き出して表示させることができる。
特開2007−020029号公報 特開2000−278685号公報
しかしながら、特許文献2の方法では、符号化画像データに対して走査を行うことによって復号用のテーブルを作っていた為、表示のための一連の処理において該走査がオーバーヘッドになるという課題があった。
また、既に復号用のテーブルが作れられた画像に対しては常に短時間で顔領域を復号して表示できる。しかし、復号用のテーブルを作るのに時間を要するため、顔領域だけを表示する処理の初回は通常よりも時間がかかってしまう。
さらに、顔領域以外のブロックも復号しなければならず、顔を表示させるのに時間がかかってしまうという課題もある。例えば、図12の顔領域707の左端のブロックが復号用のテーブルに記憶されていないため、参照符号705に位置するブロックを起点として部分的に復号しなければならない。よって、参照符号705と706に示す領域に位置するブロックについては、顔領域には含まれないにも関らず復号しなければならない。顔領域以外のブロックに対する復号処理を減らすには、図12(b)に示すように復号用のテーブルに記憶させる列を増やす方法が考えられる。しかしながら、この場合は復号用のテーブルのデータ量が増大してしまうという課題が生じる。
本発明は、かかる点に鑑みなされたものであり、符号化画像データから、人物の顔等の関心領域を、高速に復号する技術を提供しようとするものである。
かかる課題を解決するため、例えば本発明の画像処理装置は以下の構成を備える。すなわち、
画像データを符号化する画像処理装置であって、
画像データを入力する入力手段と、
入力した画像データ中の関心領域を指定する指定手段と、
前記入力手段で入力した画像データを、複数の画素で構成されるブロックを単位に可変長符号化し、ブロックを単位とする符号化データを生成する符号化手段と、
該符号化手段で生成される各ブロックの符号化データのデータ量を累積加算し、着目するブロックが前記指定手段で指定された前記関心領域内の予め設定された位置にあるとき、前記着目するブロックの符号化データのビット位置を示す位置情報を復号用テーブルに登録する登録手段と、
該登録手段で登録された復号用テーブルと、前記符号化手段で生成された前記画像データの符号化データとを出力する出力手段とを備える。
本発明によれば、関心領域のみを復号する場合には、復号用テーブルを参照することで、符号化画像データ中の関心領域の最初のブロックのビット位置が判明するので、可変長符号化された画像データであっても、関心領域をダイレクトに復号することが可能になる。
また、他の発明によれば、一旦、符号化画像データの復号処理を行えば、関心領域のみの復号の準備ができるようになる。
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
[第1の実施形態]
図1は、本第1の実施形態の画像処理装置を搭載するデジタルカメラ(撮像装置)のブロック構成図である。
図1において、11は被写体を撮像してA/D変換を行い、画像データを出力する撮像部である。10は本実施形態の画像処理装置である。画像処理装置10は、撮像部11から入力した画像データを符号化し、後述する復号用のテーブルを符号化画像データに付加して符号化画像データファイルを作成し、メモリに記憶する。さらに、ユーザからの指示により、符号化画像データを復号する。12は、画像処理装置10が復号した画像データを液晶ディスプレイなどの表示装置に表示する表示部である。表示部12は、表示装置の解像度と画像データの画素数とに応じて、画像データに対する拡大または縮小処理を行う。
次に、画像処理装置10の詳細な構成と動作を説明する。図1において、101は撮像部11で撮像した画像中の、所定の領域(関心領域)を指定する領域指定部である。具体的には、入力された画像データのうち、人物の顔を検出し、顔領域の位置情報(顔領域を矩形とした場合、その矩形の四隅の位置座標)を出力する。画像データから人物の顔を検出する方法は公知であるのでここでは説明しない。
なお、本発明で指定される関心領域は、人物の顔領域に限定されるものではない。例えば車のナンバープレートであってもよいし、ホワイトボードであってもよいし、文字であってもよい。また、デジタルカメラであれば、オートフォーカス機構によって合焦された領域であってもよい。さらにタッチパネルなどユーザ自身が関心領域を指定可能な手段を備えていれば、ユーザによって指定された領域であってもよい。本実施形態の画像処理装置を、文書原稿を読み取るスキャナに適用する場合には、本発明で指定される関心領域は原稿が置かれた領域であってもよい。
103は、画像データをJPEG符号化方式で符号化し、符号化画像データを出力する画像符号化部である。JPEG符号化方式では、複数画素で構成される画素ブロック(一般には、8×8画素)から構成されるMCU(Minimum Coded Unit)と呼ばれるブロックを単位として符号化及び復号が行なわれる。なお、実施形態では説明を単純なものとするため、1MCU=1画素ブロック(8×8画素)として説明するが、1MCU=m×n個の画素ブロック(m,nは1以上の整数)としても構わない。なお、本発明はJPEG符号化方式に限定されるものではなく、例えばMPEG符号化方式などで符号化された画像データを処理してもよい。
画像符号化部103はさらに、各MCUの符号化データの累積加算結果である累積符号長と、MCUの変換係数のうちDC成分値とを出力する。ここで累積符号長とは、符号化画像データの先頭からの各MCUのビット単位のオフセット値(ビット位置情報)である。以降、これら2種類の値を「部分復号情報」と記す。
102は復号テーブル作成部である。この復号テーブル作成部102は、着目MCUが領域指定部101で指定された関心領域内の予め設定された位置にあるとき、その領域指定部101から出力された領域の位置情報と、画像符号化部102から出力された部分復号情報を用いて、復号用のテーブルを作成する。
106は、復号テーブル作成部102が作成すべき復号用のテーブルの種類を指示する指示部である。ユーザは、データ量と利便性とを鑑みて、作成すべき復号用のテーブルを選択することができる。
復号テーブル作成部102は、指示部106からの指示により、部分復号情報を復号用のテーブルに記憶する対象となるMCUの位置を、図8(a)乃至(c)の中から選択する。図8(a)では、画像の左端列を含む4列おきのMCUと、顔領域左端のMCUの部分復号情報とが復号用のテーブルに記憶される。さらに、顔領域の水平方向のMCU数(列数)が復号用のテーブルに記憶される。図8(a)の場合、顔領域の高速な表示と、公知技術に開示されている拡大・縮小・回転などの処理の高速化とが可能になる。一方で、復号用のテーブルのデータ量は最も大きくなる。図8(b)では、画像の左端列を含む4列おきのMCUの部分復号情報が復号用のテーブルに記憶される。図8(b)の場合、拡大・縮小・回転などの処理の高速化が可能になる。しかしながら、顔領域だけを表示させる場合は、顔以外の領域に対する復号処理も必要になる。図8(c)では、顔領域の左端のMCUが、関心領域内に存在するので、そのMCUの部分復号情報と顔領域の水平方向のMCU数(列数)だけが復号用のテーブルに記憶される。図8(c)の場合、顔領域の高速な表示が可能となるが、拡大・縮小・回転などの処理の高速化はできない。但し、図8(c)が選択された場合の復号用のテーブルのデータ量は、図8(a)、(b)よりも小さくできる。
なお、本発明はこれに限定されるものではなく、指示部106が無い形態であってもよい。指示部106が無い場合は、常に図8(a)に示す位置のMCUの部分復号情報が復号用のテーブルに記憶されてもよいし、常に図8(c)に示す位置のMCUの部分復号情報であってもよい。また、復号用のテーブルに部分復号情報が記憶されるMCUの位置も図8(a)乃至(c)に限定されるものでなく、例えば、図9に示すように、画像の左端列のMCU及び顔領域の左端のMCUであってもよい。
104は、符号化画像データを一時的に記憶するメモリである。復号テーブル作成部102は、復号用のテーブルを符号化画像データにヘッダとして付加する。上記ヘッダが付加された符号化画像データは、符号化画像データ・ファイルとしてメモリ104に記憶される。メモリ104に記憶された符号化画像データ・ファイルは、復号部105によって復号される。さらに、図示されないメモリカードなどの持ち運び可能な記憶媒体にも記憶される。
図10(a)に、ヘッダとして付加された復号用テーブルを例示する。図10(b)は、それに対応する画像データ内のMCUの位置を表す。復号用のテーブルは、JPEGの標準形式のヘッダにさらに付加される。図10(a)のテーブル番号は、復号用のテーブルを識別するための番号である。テーブル番号0は、画像の左端列を含む4列おきのMCUの部分復号情報が記憶された復号用のテーブルを表す。テーブル番号の次のフィールドには、部分復号情報が記憶されるMCU列の間隔が記憶される。図10の例では4列おきに部分復号情報が記憶されているので、“4”が該フィールドに記憶される。なお、JPEGの標準形式のヘッダに画像サイズ情報が付加されている為、MCUの行数は該サイズ情報から算出できるので復号用のテーブルには記憶されない。以下、MCU列毎に部分復号情報が復号用のテーブルに記憶される。
テーブル番号1と2は、各々領域1と2の復号用のテーブルに対応する。それらの領域に対応するテーブル番号の次のフィールドには、夫々の領域の大きさが記憶される。次に、各々の領域の左端に位置するMCUの部分復号情報が記憶される。
図1の105は、符号化画像データを復号し、画像データを出力する復号部である。復号部105から出力された画像データは、表示部12へ供給され表示される。
復号部105は、ユーザによって画像データ全体の表示が指示されたのか、それとも顔領域の拡大表示が指示されたのかを判定する。画像データ全体の表示が指示されたと判定した場合には、符号化画像データをその先頭から復号する。また、ユーザによって顔領域の拡大表示が指示されたと判定した場合は、復号部105は、ヘッダに付加された復号用のテーブルの中から、対応する領域の大きさと部分復号情報を得る。該領域の大きさからMCUの行数と列数を算出し、領域の最上段のMCU行から順番にMCU列数分の復号処理を開始する。図10を例に挙げると、領域1を拡大表示する場合は、復号部105は先ず領域1の大きさからMCUの行数と列数を算出する。そして、復号部105は、MCU(4,6)の部分復号情報を基に、MCU(4,6)を起点として、領域の列数である4個のMCUの復号処理を行う。以降、MCU(4,7)、MCU(4,8)、MCU(4,9)を各々起点として、それらが位置する行の4個のMCUに対する復号処理を夫々順番に行う。
以上に説明したように、本第1の実施形態の画像処理装置では、符号化103が部分復号情報を復号テーブル作成部102へ供給するので、画像データに対する符号化を終えた時点で、復号用のテーブルを作り終えている。よって、復号用のテーブルを作るための走査が不要なので、従来技術よりも短時間で顔領域の表示が可能となる。さらに、領域指定部101によって指定された領域の左端のMCUについての部分復号情報を復号用のテーブルに記憶するので、顔領域以外のMCUに対する復号処理が不要となる。よって、従来技術よりもさらに短時間で顔領域の表示が可能となる。また、新たに追加する部分復号情報は顔領域についてのものだけなので、必要最小限のデータの追加で済む。
なお、本発明の画像処理装置は図1に例示する構成に限定されず、その思想を逸脱しない範囲内で様々な実施形態が可能である。例えば、図5に示すように、復号部405がメモリ404に記憶された符号化画像データを復号し、各MCUについての部分情報を復号テーブル作成部402へ出力してもよい。この場合は、復号用テーブルを作る処理の際には、復号部405は復号した画像データを表示部42へは出力しないで、可変長符号の復号処理だけを行う。復号用のテーブルを作るための走査は必要になるが、第1の実施形態の画像処理装置と同様に、顔領域以外のMCUに対する復号処理が不要となり、必要最小限のデータの追加で済む。
また、本発明は図10(a)に例示した復号用のテーブルに限定されない。別の実施形態の画像処理装置では、図11(a)に例示する復号用のテーブルであってもよい。
図11(a)のテーブル番号は、復号用のテーブルを識別するための番号である。テーブル番号0は、画像の左端列を含む4列おきのMCUの部分復号情報が記憶された復号用のテーブルを表す。テーブル番号の次のフィールドには、部分復号情報が記憶されるべきMCU列の間隔が格納される。図11の例では4列おきに部分復号情報が記憶されているので、“4”が該フィールドに記憶される。以下、MCU列毎に部分復号情報が復号用のテーブルに記憶される。
テーブル番号1〜3は、各々領域1〜3の復号用のテーブルに対応する。それらの領域に対応するテーブル番号の次のフィールドには、部分復号情報省略フラグが記憶される。部分復号情報省略フラグとは、対応する領域の部分復号情報が省略されて領域の座標情報だけが復号用のテーブルに記憶されていることを表すフラグである。
復号テーブル作成部102は、テーブル番号0の復号用のテーブルに部分復号情報が記憶されているMCUのうち、領域左端のMCUと最も近いMCUとの間のMCU数が所定数(実施形態では“1”)以下であれば、部分復号情報をテーブルに記憶しない。例えば、領域1の左端のMCUは、テーブル番号0に記憶されている1列目のMCUと同じ列に位置するので、部分復号情報を復号用のテーブルに記憶しない。また、領域2の左端のMCUは、テーブル番号0の6列目のMCUから数えて1MCU目に位置するので、部分復号情報をテーブルに記憶しない。部分復号情報をテーブルに記憶しない場合は、部分復号情報省略フラグのフィールドには“1”が記憶される。その次のフィールドには、領域の四隅の座標が記憶される。なお、本発明は上記MCU数が1に限定されないことは言うまでもない。また、領域の四隅の座標ではなく、領域の左上隅の座標と領域の大きさ(縦と横のブロック数等)が記憶されてもよい。要するに、その領域のサイズと位置が特定できれば良いからである。
一方、領域3の左端のMCUは、テーブル番号0の11列目のMCUから数えて3つ目に位置するので、部分復号情報をテーブルに記憶する。この場合には、部分復号情報省略フラグのフィールドには“0”が記憶される。その次のフィールドには領域の大きさが記憶され、以降、領域左端のMCUの部分復号情報が記憶される。
以上説明したように、第1の実施形態と別の実施形態の画像処理装置では、所定間隔の列のMCUの部分復号情報と、指定された領域の部分復号情報とが復号用のテーブルに記憶される。もしも指定された領域が所定間隔の列のMCUと近い場合には、部分復号情報でなく該領域の座標が記憶される。よって、所定の領域に対する復号処理を短時間で行うことができ、その処理に必要な復号用のテーブルのデータ量が最小限で済む。
[第2の実施形態]
以下、第2の実施形態をプリンタに適用した例を図2に示し、説明する。
図2において、20は本第2の実施形態の画像処理装置である。21は、メモリカードから、復号対象となるJPEG符号化方式の符号化画像データ・ファイルを読み取るためのメモリカード読み取り部である。メモリカード読み取り部21は該ファイルを画像処理装置20へ出力する。なお、本発明の画像処理装置の符号化方式はJPEGに限定されないことは言うまでもない。22は、画像処理装置20によって復号された画像データを印刷する印刷部である。23は、画像処理装置20によって復号された画像データを液晶ディスプレイなどの表示装置に表示する表示部である。
次に、画像処理装置20の構成と動作を、図2を参照して詳細に説明する。
不図示の操作パネルから、ユーザによる「メモリカード読み取りボタン」の押下を検出すると、メモリカード読み取り部21は、メモリカードから符号化画像データ・ファイルを読み取り、画像処理装置20へ出力する。
画像処理装置20内の復号部205(JPEG復号部)は、該ファイルの符号化画像データの全MCUを復号し、メモリ204に出力する。復号部205は、このとき、各MCUについて、符号化画像データの先頭からの累積符号長と、変換係数のうちDC成分値とから成る部分復号情報を出力する。
204は、復号された画像データを記憶するメモリである。
201は、復号された画像データの中から所定の領域(関心領域)を選択し、それを復号テーブル作成部202に指定する領域指定部である。本実施形態の画像処理装置では、人物の顔、文書などの原稿、ホワイトボードなどの領域が、公知技術によって画像データの中から検出され、関心領域として指定される。
202は、復号部205から出力された部分復号情報と、領域指定部201によって指定された関心領域とに基づいて、復号用のテーブルを作成する復号テーブル作成部である。復号用のテーブルはメモリ204に記憶される。復号用のテーブルの例を図11(a)に示す。図11(b)は、それに対応する画像データ内のMCUの位置を表す。
復号テーブル作成部202は、符号化画像データを最初に入力した場合、水平方向に所定MCU数の間隔に位置する各MCUの部分復号情報を、内部の復号用テーブルに登録する。
上記のようにして、一旦、符号化画像データの全MCU(全ブロック)の復号処理を終えると、その復号結果はメモリ204に格納され、縮小処理して表示部23に表示する。ここで、メモリ204には、各MCUを復号して得られたDC成分のみを格納するものとする。一般に、表示部23の解像度は、符号化された画像データの解像度よりも十分に低いので、問題はない。
この後、領域指定部201は、第1の実施形態と同様に、メモリ204に格納された復号処理済みの画像データから顔領域(関心領域)の検出を行ない、その領域を特定する情報を復号テーブル作成部202に通知する。これを受けて、復号テーブル作成部202は、復号用テーブルに顔領域の追加登録と、必要に応じて顔領域を復号するための部分復号情報を復号用テーブルに登録(更新)する。なお、上記では、顔領域の検出を行ない、関心領域を設定するものとした。しかし、これによって本発明が限定されるものではない。例えば、ユーザが表示部23を見て、ユーザが印刷させたい部分画像(復号対象領域)を指定し、その指定した部分画像を関心領域として用いても構わない。
図11(a)のテーブル番号は、復号用のテーブルを識別するための番号である。テーブル番号0は、画像の左端列を含む4列おきのMCUの部分復号情報が記憶された復号用のテーブルを表す。テーブル番号の次のフィールドには、部分復号情報が記憶されるべきMCU列の間隔が格納される。図11の例では4列おきに部分復号情報が記憶されているので、4が該フィールドに記憶される。以下、MCU列毎に部分復号情報が復号用のテーブルに記憶される。
テーブル番号1〜3は、各々領域1〜3の復号用のテーブルに対応する。それらの領域に対応するテーブル番号の次のフィールドには、部分復号情報省略フラグが記憶される。部分復号情報省略フラグとは、対応する領域の部分復号情報が省略されて領域の座標情報だけが復号用のテーブルに記憶されていることを表すフラグである。
復号テーブル作成部202は、テーブル番号0の復号用のテーブルに部分復号情報が記憶されているMCUのうち、領域左端のMCUと最も近いMCUとの間のMCU数が所定数(実施形態では“1”)以下であれば、部分復号情報をテーブルに記憶しない。例えば、領域1の左端のMCUは、テーブル番号0に記憶されている1列目のMCUと同じ列に位置するので、部分復号情報を復号用のテーブルに記憶しない。また、領域2の左端のMCUは、テーブル番号0の6列目のMCUから数えて1MCU目に位置するので、部分復号情報をテーブルに記憶しない。部分復号情報をテーブルに記憶しない場合は、部分復号情報省略フラグのフィールドには1が記憶される。その次のフィールドには、領域の四隅の座標が記憶される。なお、本発明は上記MCU数が1に限定されないことは言うまでもない。また、領域の四隅の座標ではなく、領域の左上隅の座標と領域の大きさ(縦と横のブロック数等)が記憶されてもよい。要するに、その領域のサイズと位置が特定できれば良いからである。
一方、領域3の左端のMCUは、テーブル番号0の11列目のMCUから数えて3つ目に位置するので、部分復号情報をテーブルに記憶する。この場合には、部分復号情報省略フラグのフィールドには0が記憶される。その次のフィールドには領域の大きさが記憶され、以降、領域左端のMCUの部分復号情報が記憶される。なお、領域3の左端のMCUの部分復号情報を知る必要がある。この場合、図11に示すように、11列目の、該当する垂直軸に位置するMCUから順番に復号することで、領域3内の左端に位置する各MCUのビット位置とDC成分を部分復号情報として復号用テーブルに登録すれば良い。
なお、本発明はこれに限定されるものではなく、本発明の第1の実施形態で説明した図11(a)に例示する復号用のテーブルと同様に、部分復号情報省略フラグが無くてもよい。
本実施形態のプリンタは、復号用のテーブルの作成が終了すると、表示部23を介してユーザに印刷モードを提示する。印刷モードとは「全画面印刷」「文書原稿部分印刷」「顔印刷」「回転印刷」等であるが、本発明の実施形態の画像処理装置及びそれを適用したプリンタは無論これらのモードに限定されるものではない。また、印刷モードの場合、各MCUのDC、AC成分から、MCUの画像を復号する処理を行うことになる。
ユーザが「回転印刷」を選択した場合は、公知技術に開示された方法に従って、図11に示すテーブル番号0の復号用のテーブルを参照して復号処理と回転処理が行なわれる。復号された領域の画像データはメモリ204に書き込まれ、印刷部22によって印刷される。この場合、公知技術で開示されているように、画像全体をメモリ204に一時的に記憶する必要は無い。例えば、画面左端の5列のMCUを復号してメモリ204に出力し、それらを印刷する。そして、次の5列のMCUを復号してメモリ204に出力して前の5列を上書きし、さらに印刷する、という処理を繰り返せばよい。
一方、ユーザが「文書原稿部分印刷」「顔印刷」を指定した場合、復号部205は、対応する領域の復号用のテーブルを参照して、該領域を部分的に復号する。具体的には、まず部分復号情報省略フラグを読み出す。その値が1であれば部分復号情報が省略されているので、領域の座標を基に、テーブル番号0の復号用のテーブルから最も近い領域左側のMCUを選択する。図11に示す領域1では1列目のMCUが該当し、領域2では6列目のMCUが該当する。さらに、該領域の水平方向のMCU数と、選択されたMCUと該領域との間のMCU数の合計を、座標から算出する。選択されたMCUを起点として、上記合計MCU数だけ部分的に復号処理を行い、該領域の座標を基に領域の画像データを切り出し、表示部23に表示する。ユーザが表示された画像を印刷指示すると、復号した領域の画像を印刷部22に出力する。また、ユーザが次の領域の表示を行う指示を与えると、次の領域の画像を同様にして復号し、表示させる処理を行う。
ここで、復号しようとする領域の部分復号情報省略フラグの値が0であれば(図11の領域3)、部分復号情報が存在するので、それらを基に領域左端のMCUを起点として部分的に復号処理を行う。
なお、本発明の画像処理装置およびそれを適用したプリンタは図2に例示する構成に限定されない。例えば、近年普及している複合機と呼ばれるスキャナ機能付きのプリンタでは、図6に示すように原稿読み取り部54及び符号部503をさらに備える構成が考えられる。この場合、本発明の第1の実施形態と同様に、符号化部503がMCU毎の部分復号情報を出力し、指定された領域についての部分復号情報を復号用のテーブルに記憶してもよい。
以上に説明したように、本第2の実施形態の画像処理装置では、所定間隔の列のMCUの部分復号情報と、指定された領域の部分復号情報とが復号用のテーブルに記憶される。もしも指定された領域が所定間隔の列のMCUと近い場合には、部分復号情報でなく該領域の座標が記憶される。よって、所定の領域に対する復号処理を短時間で行うことができ、その処理に必要な復号用のテーブルのデータ量が最小限で済む。
[第3の実施形態]
上記第1、第2の実施形態に対応する処理を、コンピュータプログラムでもって実現する例を第3の実施形態として説明する。
図3は本第3の実施形態における装置のブロック構成図である。図3において、301は符号化された画像データ(符号化画像データ)を扱うプログラムを搭載した汎用の情報処理装置であるPersonal Computer(以下、PC)である。302はPC301が備えるHard Disk Drive (HDD)である。303は画像データを表示するためのモニタであり、PC301と接続されている。304は被写体を撮影してその画像データを符号化し、メモリカードなどの記憶媒体にファイルとして記憶するデジタルカメラである。デジタルカメラ304はUSBなどの通信手段を介して、PC301と接続される。PC301は、符号化画像データを上記通信手段あるいはメモリカード等の記憶媒体を介してHDD302にコピーすることが可能である。305は、画像データを印刷するプリンタであり、PC301と接続される。プリンタ305はHDD302に記憶された符号化画像データを印刷する。306はPC301と接続されるネットワークである。PC301はこれを介して符号化された画像データをダウンロードし、HDD302に記憶することができる。
次に、PC301内の、制御部として機能するCPUが実行するプログラムの処理について、図4のフローチャートを用いて説明する。なお、このプログラムはHDD302に格納され、実行する際には主記憶装置(RAM)にロードし実行することになる。
PC301内のCPUは、HDD302に記憶された符号化画像データ・ファイルを読み出す(ステップS301)。次に、復号処理を行う(ステップS302)。次に、前記ファイルのヘッダに顔領域の位置情報があるか否かを判定する(ステップS303)。上記位置情報がある場合は(ステップS303でYES)、それを基に顔領域の部分復号情報を作る(ステップS304)。そうでない場合は(ステップS303でNo)、先ず人物の顔領域を公知技術により検出し、該顔領域の部分復号情報を作る(ステップS305)。
次に、上記ファイルのヘッダに、図13に例示するような画像の所定列の部分復号情報が予め付加されているか否かを判定する(ステップS306)。上記部分復号情報が付加されている場合は(ステップS306でYes)、それを復号用のテーブルに記憶(ステップS307)、ステップS308へ処理を移行する。そうでなければ(ステップS306でNo)、そのままステップS308へ処理を移行する。
次に、ステップS304またはS305で作成した顔領域の部分復号情報を復号用のテーブルに記憶する(ステップS308)。そして、符号化画像データ・ファイルのヘッダに、復号用のテーブルを付加する(ステップS309)。なお、上記ファイルのヘッダに予め部分復号情報が付加されていた場合は(ステップS306でYes)、画像の所定列の部分復号情報と、顔領域の部分復号情報の両方が、復号用のテーブルに記憶されることになる。そうでなければ(ステップS306でNo)、顔領域の部分復号情報が復号用のテーブルに記憶されることになる。
以上に説明した処理をPC301が行うことにより、本発明の第1の実施形態と同様に復号用のテーブル(図10)が作られる。この復号用のテーブルを利用することにより、画像に対する所定の領域の切り出し処理を短時間で行うことができる。さらに、復号用のテーブルをファイルヘッダに付加することにより、デジタルカメラやプリンタなどの機器が復号用のテーブルを作る機能を持たなくても、それを利用して所定の領域を短時間で復号することができる。
なお、本発明の画像処理装置は図3に例示する構成に限定されない。例えば、図7に示すように、サーバ608がPC601、607、609から符号化画像データ・ファイルを受け取り、復号用のテーブルを作ってヘッダに付加するようにしてもよい。
以上の説明から明らかなように、本発明は、コンピュータに読取らせ実行させるコンピュータプログラムによっても実現可能である。また、通常、コンピュータプログラムは、CD−ROM等のコンピュータ可読記憶媒体を、コンピュータが備える読取り装置(CD−ROMドライブ)にセットし、システムにコピーもしくはインストールすることで実行可能になる。従って、かかるコンピュータ可読記憶媒体も本発明の範疇にあることは明らかである。
第1の実施形態の画像処理装置を搭載したデジタルカメラのブロック構成図である。 第2の実施形態の画像処理装置を搭載したプリンタのブロック構成図である。 第3の実施形態の画像処理装置のブロック構成図である。 第3の実施形態の画像処理装置の処理内容を示すフローチャートである。 第1の実施形態の他の画像処理装置の構成を示す図である。 第2の実施形態の他の画像処理装置の構成を示す図である。 第3の実施形態が適用するシステム構成を示す図である。 第1の実施形態にて作成される復号用テーブルの部分復号情報が示すMCUの位置を示す図である。 第1の実施形態にて作成される他の復号用テーブルの部分復号情報が示すMCUの位置を示す図である。 第1と第2の実施形態にて作成される復号用テーブルの具体的なデータ構造と部分復号情報が示すMCUの位置を示す図である。 第1と第2の実施形態の他の画像処理装置にて作成される復号用テーブルの具体的なデータ構造と部分復号情報が示すMCUの位置を示す図である。 従来技術の可変長符号化データの復号テーブルの設定例を示す図である。 実施形態3の画像処理装置に入力される符号化画像データに予め付加されている部分復号情報を例示する概念図である。

Claims (13)

  1. 画像データを符号化する画像処理装置であって、
    画像データを入力する入力手段と、
    入力した画像データ中の関心領域を指定する指定手段と、
    前記入力手段で入力した画像データを、複数の画素で構成されるブロックを単位に可変長符号化し、ブロックを単位とする符号化データを生成する符号化手段と、
    該符号化手段で生成される各ブロックの符号化データのデータ量を累積加算し、着目するブロックが前記指定手段で指定された前記関心領域内の予め設定された位置にあるとき、前記着目するブロックの符号化データのビット位置を示す位置情報を復号用テーブルに登録する登録手段と、
    該登録手段で登録された復号用テーブルと、前記符号化手段で生成された前記画像データの符号化データとを出力する出力手段と
    を備えることを特徴とする画像処理装置。
  2. 前記符号化手段は、JPEG符号化手段であって、
    前記登録手段は、前記着目するブロックのDC成分の予測値を含む前記位置情報を前記復号用テーブルに登録する
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 前記出力手段は、前記符号化手段で生成された前記画像データの符号化データのヘッダに、前記復号用テーブルを示す情報を格納したファイルを出力することを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記登録手段は、更に、画像データの水平方向に対して、予め設定されたブロック数を間隔とする、各ブロックの位置情報を前記復号用テーブルに登録することを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
  5. 前記指定手段は、前記入力手段で入力した画像データ中の人物の顔の領域を検出し、検出した顔の領域を前記関心領域として指定することを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
  6. 更に、復号対象とする領域を指定する手段と、
    該手段で指定された領域が、画像全体であるか、前記関心領域であるかを判定する判定手段と、
    前記画像全体の復号が指定されたと判定した場合には前記符号化データを順に復号することで画像全体を復号し、前記関心領域の復号が指定されたと判定した場合には復号用テーブルに格納された位置情報に基づき、前記関心領域の部分画像を復号する復号手段と
    を備えることを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
  7. 複数画素で構成されるブロックを単位に符号化された画像データを処理する画像処理装置であって、
    符号化画像データを入力する入力手段と、
    符号化画像データを復号する復号手段と、
    画像を表示する表示手段と、
    画像データ中の関心領域を指定する指定手段と、
    該指定手段で指定された関心領域に従って、前記復号手段を制御する制御手段とを備え、
    前記制御手段は、
    前記入力手段で入力した符号化画像データを最初に入力した場合、前記復号手段を制御して全ブロックの符号化データを復号し、当該復号結果の画像を前記表示手段に表示させると共に、水平方向に予め設定されたブロック数を間隔とする、各ブロックの符号化データの位置情報を復号用テーブルに登録する登録手段と、
    前記表示手段によって表示された画像中の少なくとも1つの関心領域が前記指定手段で指定された場合、前記復号用テーブルに指定した関心領域を登録すると共に、登録した関心領域内の画像を復号するために必要なブロックの位置が、前記復号用テーブルに登録されたブロックの位置から予め設定されたブロック数だけ隔てている場合、前記復号用テーブルに格納された位置情報に従って、前記関心領域内の画像を復号するために必要なブロックまで復号し、前記符号化画像データ中の前記関心領域内の画像を復号するために必要なブロックの位置情報を前記復号用テーブルに追加登録し、前記復号用テーブルを更新する更新手段と、
    を備えることを特徴とする画像処理装置。
  8. 前記復号手段は、JPEG復号手段であって、
    前記登録手段及び前記更新手段は、ブロックのDC成分の予測値を含む前記位置情報を前記復号用テーブルに登録する
    ことを特徴とする請求項7に記載の画像処理装置。
  9. 前記指定手段は、前記符号化画像データを最初に復号して得られた画像中の人物の顔の領域を検出し、検出した顔の領域を前記関心領域として指定することを特徴とする請求項7又は8に記載の画像処理装置。
  10. 画像データを符号化する画像処理装置の制御方法であって、
    画像データを入力する入力工程と、
    入力した画像データ中の関心領域を指定する指定工程と、
    前記入力工程で入力した画像データを、複数の画素で構成されるブロックを単位に可変長符号化し、ブロックを単位とする符号化データを生成する符号化工程と、
    該符号化工程で生成される各ブロックの符号化データのデータ量を累積加算し、着目するブロックが前記指定工程で指定された前記関心領域内の予め設定された位置にあるとき、前記着目するブロックの符号化データのビット位置を示す位置情報を復号用テーブルに登録する登録工程と、
    該登録工程で登録された復号用テーブルと、前記符号化工程で生成された前記画像データの符号化データとを出力する出力工程と
    を備えることを特徴とする画像処理装置の制御方法。
  11. 複数画素で構成されるブロックを単位に符号化された画像データを処理する画像処理装置の制御方法であって、
    符号化画像データを入力する入力工程と、
    符号化画像データを復号する復号工程と、
    画像を表示する表示工程と、
    画像データ中の関心領域を指定する指定工程と、
    該指定工程で指定された関心領域に従って、前記復号工程を制御する制御工程とを備え、
    前記制御工程は、
    前記入力工程で入力した符号化画像データを最初に入力した場合、前記復号工程を制御して全ブロックの符号化データを復号し、当該復号結果の画像を前記表示工程に表示させると共に、水平方向に予め設定されたブロック数を間隔とする、各ブロックの符号化データの位置情報を復号用テーブルに登録する登録工程と、
    前記表示工程による表示された画像中の少なくとも1つの関心領域が前記指定工程で指定された場合、前記復号用テーブルに指定した関心領域を登録すると共に、登録した関心領域内の画像を復号するために必要なブロックの位置が、前記復号用テーブルに登録されたブロックの位置から予め設定されたブロック数だけ隔てている場合、前記復号用テーブルに格納された位置情報に従って、前記関心領域内の画像を復号するために必要なブロックまで復号し、前記符号化画像データ中の前記関心領域内の画像を復号するために必要なブロックの位置情報を前記復号用テーブルに追加登録し、前記復号用テーブルを更新する更新工程と、
    を備えることを特徴とする画像処理装置の制御方法。
  12. コンピュータに読み込ませ実行させることで、前記コンピュータを請求項1乃至9のいずれか1項に記載の画像処理装置として機能させることを特徴とするコンピュータプログラム。
  13. 請求項12に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
JP2008177407A 2008-07-07 2008-07-07 画像処理装置及びその制御方法 Withdrawn JP2010016781A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008177407A JP2010016781A (ja) 2008-07-07 2008-07-07 画像処理装置及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008177407A JP2010016781A (ja) 2008-07-07 2008-07-07 画像処理装置及びその制御方法

Publications (1)

Publication Number Publication Date
JP2010016781A true JP2010016781A (ja) 2010-01-21

Family

ID=41702429

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008177407A Withdrawn JP2010016781A (ja) 2008-07-07 2008-07-07 画像処理装置及びその制御方法

Country Status (1)

Country Link
JP (1) JP2010016781A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012134776A (ja) * 2010-12-21 2012-07-12 Canon Inc 画像処理装置、画像処理方法、及びプログラム
WO2013077236A1 (en) * 2011-11-21 2013-05-30 Canon Kabushiki Kaisha Image coding apparatus, image coding method, image decoding apparatus, image decoding method, and storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012134776A (ja) * 2010-12-21 2012-07-12 Canon Inc 画像処理装置、画像処理方法、及びプログラム
WO2013077236A1 (en) * 2011-11-21 2013-05-30 Canon Kabushiki Kaisha Image coding apparatus, image coding method, image decoding apparatus, image decoding method, and storage medium
JP2013132048A (ja) * 2011-11-21 2013-07-04 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
US10349077B2 (en) 2011-11-21 2019-07-09 Canon Kabushiki Kaisha Image coding apparatus, image coding method, image decoding apparatus, image decoding method, and storage medium

Similar Documents

Publication Publication Date Title
JP4991604B2 (ja) 画像処理装置、画像処理方法
TWI303390B (en) Log data recording device and log data recording method
JP2005122682A (ja) 文書処理システム、文書処理方法、文書処理プログラム
JP2000278685A (ja) 可変長符号化バイナリ・ビットストリームの処理方法
JP2011146799A (ja) 画像処理装置及び画像処理プログラム
US8891109B2 (en) Printing device capable of displaying thumbnail image of image file
US9197784B2 (en) Printing device capable of displaying thumbnail image of motion image file
US8649064B2 (en) Printing device capable of printing image of image file
JP4761566B2 (ja) 画像処理装置及びその方法とプログラム及び媒体
JP2010016781A (ja) 画像処理装置及びその制御方法
JP4966260B2 (ja) 画像処理方法および画像処理装置、プログラム並びに、コンピュータ読み取り可能な記憶媒体
JP4464415B2 (ja) 画像処理装置、制御方法、プログラム、及び記憶媒体
JP2006303937A (ja) 画像表示装置、画像表示方法および方法を実行させるプログラム
JP4930615B2 (ja) 出力装置及びプログラム
JP2007201935A (ja) 画像処理装置の制御方法及び画像処理装置
JP2007080099A (ja) 画像処理装置、画像検索方法および画像検索プログラム
JP2011013971A (ja) 出力装置及びプログラム
JP2007200091A (ja) 画像処理装置
JP2021135734A (ja) 画像形成システム、画像形成装置、モバイル端末装置、およびプレビュー支援プログラム
JP5184959B2 (ja) 画像復号装置及びその制御方法
JP2011024052A (ja) 画像処理装置、画像処理の制御方法および画像処理システム
JP2003032482A (ja) 画像処理装置及びその制御方法及びコンピュータプログラム及び記憶媒体
JP2006115169A (ja) 情報管理装置、情報管理方法および情報管理プログラム
JP2008090399A (ja) 画像処理装置、印刷装置、画像処理方法、および、画像処理プログラム
JP2006197567A (ja) 画像処理方法、画像処理装置、および画像処理装置の制御プログラム

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20111004