(57)【要約】【課題】  画像を回転して出力する際の画像補正処理をより適切に施す。【解決手段】  画像ファイルを先頭から順に復元して起点復元用情報やＲＧＢ値のヒストグラムを取得すると共に肌色領域などを抽出してデータバッファに記憶し（Ｓ１００〜Ｓ１９０）、取得した肌色領域の大きさや位置，両目や口に相当する画素領域の存在などに基づいて画像内容が人物画像か風景画像かを判定するオブジェクト認識処理を実行して自動補正処理用のパラメータを計算し（Ｓ１９５，Ｓ２００）、起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成すると共に計算したパラメータに従って自動補正処理を施して出力する（Ｓ２１０〜Ｓ３００）。この結果、画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。【選択図】        図２
2006099280.tif 000002
【特許請求の範囲】
【請求項１】
画像に所定の画像補正処理を施して出力する画像処理装置であって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定手段と、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転手段と、
を備える画像処理装置。
【請求項２】
前記画像内容判定手段は、所定の肌色の画素により構成される領域を前記オブジェクト領域として抽出し該抽出したオブジェクト領域の前記画像全体に対する配置に基づいて該画像の画像内容を人物画像と判定する手段である請求項１記載の画像処理装置。
【請求項３】
前記画像内容判定手段は、前記抽出したオブジェクト領域の該画像の上辺および左右辺に接する量が所定量以下であることを条件の一つとして該画像の画像内容を人物画像と判定する手段である請求項１または２記載の画像処理装置。
【請求項４】
前記画像内容判定手段は、前記抽出したオブジェクト領域内に、人物の両目に相当する横方向に並ぶ領域と該領域より下方向に位置する人物の口に相当する領域とが存在することを条件の一つとして、前記画像の画像内容を人物画像と判定する手段である請求項１ないし３いずれか記載の画像処理装置。
【請求項５】
前記画像内容判定手段は、前記画像の画像内容が人物画像と判定されないときには、該画像の画像内容を風景画像と判定する手段である請求項１ないし４いずれか記載の画像処理装置。
【請求項６】
前記画像補正回転手段は、前記画像の画像内容が風景画像のときには、所定の空色の画素が該画像の下辺に接していないことを条件の一つとして、該所定の空色を補正する空色補正処理を該画像に施す手段である請求項１ないし５いずれか記載の画像処理装置。
【請求項７】
請求項１ないし６いずれか記載の画像処理装置であって、
前記画像は、所定方式で圧縮されてなり、
データを記憶するデータ記憶手段と、
前記指定された画像を先頭から順に少なくとも前記画素情報を取得可能な段階まで復元し該取得した画素情報を前記データ記憶手段に記憶すると共に、該画像の復元過程において、該画像の所定位置を起点として該画像を復元するための起点復元用情報を取得して前記データ記憶手段に記憶する情報演算取得手段と、を備え、
前記画像内容判定手段は、前記データ記憶手段に記憶された画素情報に基づいて前記画像に含まれるオブジェクト領域を抽出する手段であり、
前記画像補正回転手段は、前記データ記憶手段に記憶された起点復元用情報に基づいて前記所定位置を起点として前記画像を復元することにより回転後の画像を上端から順に生成すると共に該生成された回転後の画像に前記所定の画像補正処理を施して出力する手段である、
画像処理装置。
【請求項８】
通信可能な記憶媒体から前記画像を取得するデータ取得手段と、
請求項１ないし７いずれか記載の画像処理装置と、
該画像処理装置から出力される画像を印刷する印刷実行手段と、
を備えるプリンタ。
【請求項９】
画像に所定の画像補正処理を施して出力する画像処理方法であって、
（ａ）指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定し、
（ｂ）該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する、
画像処理方法。
【請求項１０】
画像に所定の画像補正処理を施して出力する画像処理用プログラムであって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定モジュールと、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転モジュールと、
を備える画像処理用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムに関し、詳しくは、画像に所定の画像補正処理を施して出力する画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムに関する。
【背景技術】
【０００２】
従来、この種の画像処理装置としては、入力された画像の中に人物の顔などのオブジェクトが含まれるかどうかを検出し、この検出結果に基づいて画像内容（人物画像や風景画像など)を判定すると共に補正パラメータを設定して画像を補正するものが提案されている（例えば、特許文献１参照）。この装置では、人物の顔を検出する際には、肌色の領域を検出したり目や口に相当する画素を検出したりしている。
【特許文献１】特開２００４−２３６１１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述の装置では、人物の顔などのオブジェクトを検出する際には、目や口に相当する画素の位置関係や画像全体に対するオブジェクトの配置などを考慮して行なうから、画像の向きによってはオブジェクトの検出や画像内容の判定を正しく行なえない場合がある。例えば、こうした画像処理装置をプリンタなどに適用する場合を考えると、印刷レイアウトの設定や印刷用紙の向きに応じて画像を回転して印刷することがあり、この画像の回転に伴ってオブジェクトの検出や画像内容の判定に不都合が生じてしまう虞がある。
【０００４】
本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、オブジェクトの検出や画像内容の判定をより適切に行なうことを目的の一つとする。また、本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、画像を回転して出力する際の画像補正処理をより適切に施すことを目的の一つとする。
【課題を解決するための手段】
【０００５】
本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、上述の目的の少なくとも一部を達成するために以下の手段を採った。
【０００６】
本発明の画像処理装置は、
画像に所定の画像補正処理を施して出力する画像処理装置であって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定手段と、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転手段と、
を備えることを要旨とする。
【０００７】
この本発明の画像処理装置では、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【０００８】
こうした本発明の画像処理装置において、前記画像内容判定手段は、所定の肌色の画素により構成される領域を前記オブジェクト領域として抽出し該抽出したオブジェクト領域の前記画像全体に対する配置に基づいて該画像の画像内容を人物画像と判定する手段であるものとすることもできる。こうすれば、所定の肌色の画素により構成されるオブジェクト領域の画像全体に対する配置に基づく人物画像の判定をより適切に行なうことができる。
【０００９】
また、本発明の画像処理装置において、前記画像内容判定手段は、前記抽出したオブジェクト領域の該画像の上辺および左右辺に接する量が所定量以下であることを条件の一つとして該画像の画像内容を人物画像と判定する手段であるものとすることもできる。ここで「所定量」には値０が含まれる。即ち、抽出したオブジェクト領域が画像の上辺および左右辺に接しないことを条件の一つとして画像の画像内容を人物画像と判定するものも含まれる。
【００１０】
さらに、本発明の画像処理装置において、前記画像内容判定手段は、前記抽出したオブジェクト領域内に、人物の両目に相当する横方向に並ぶ領域と該領域より下方向に位置する人物の口に相当する領域とが存在することを条件の一つとして、前記画像の画像内容を人物画像と判定する手段であるものとすることもできる。こうすれば、両目や口に相当する領域の存在に基づく人物画像の判定をより適切に行なうことができる。
【００１１】
こうした本発明の画像処理装置において、前記画像内容判定手段は、前記画像の画像内容が人物画像と判定されないときには、該画像の画像内容を風景画像と判定する手段であるものとすることもできる。
【００１２】
また、本発明の画像処理装置において、前記画像補正回転手段は、前記画像の画像内容が風景画像のときには、所定の空色の画素が該画像の下辺に接していないことを条件の一つとして、該所定の空色を補正する空色補正処理を該画像に施す手段であるものとすることもできる。こうすれば、所定の空色の画素の配置に基づく空色補正処理をより適切に行なうことができる。
【００１３】
さらに、本発明の画像処理装置において、前記画像は所定方式で圧縮されてなり、データを記憶するデータ記憶手段と前記指定された画像を先頭から順に少なくとも前記画素情報を取得可能な段階まで復元し該取得した画素情報を前記データ記憶手段に記憶すると共に該画像の復元過程において該画像の所定位置を起点として該画像を復元するための起点復元用情報を取得して前記データ記憶手段に記憶する情報演算取得手段とを備え、前記画像内容判定手段は前記データ記憶手段に記憶された画素情報に基づいて前記画像に含まれるオブジェクト領域を抽出する手段であり、前記画像補正回転手段は前記データ記憶手段に記憶された起点復元用情報に基づいて前記所定位置を起点として前記画像を復元することにより回転後の画像を上端から順に生成すると共に該生成された回転後の画像に前記所定の画像補正処理を施して出力する手段であるものとすることもできる。こうすれば、圧縮された画像の回転後の画像を起点復元用情報を用いて上端から順に生成して出力する際に、より適切に画像内容を判定して画像補正処理を施すことができる。
【００１４】
こうした本発明の画像処理装置において、前記画像補正回転手段は、前記画像の画像内容が人物画像のときには前記所定の画像補正処理として肌色を補正する肌色補正処理，ソフトフォーカス処理，明度補正処理のうち少なくとも一つを施す手段であるものとしたり、前記画像の画像内容が風景画像のときには前記所定の画像補正処理として新緑色を補正する新緑色補正処理，彩度補正処理の少なくとも一つを施す手段であるものとすることもできる。
【００１５】
本発明のプリンタは、通信可能な記憶媒体から前記画像を取得するデータ取得手段と、上述したいずれかの態様の本発明の画像処理装置と、該画像処理装置から出力される画像を印刷する印刷実行手段と、を備えることを要旨とする。
【００１６】
この本発明のプリンタでは、上述したいずれかの態様の本発明の画像処理装置を備えるから、本発明の画像処理装置が奏する効果、例えば、より適切に画像内容を判定することができる効果や画像を回転して出力する際の画像補正処理をより適切に施すことができる効果などを奏することができる。
【００１７】
本発明の画像処理方法は、
画像に所定の画像補正処理を施して出力する画像処理方法であって、
（ａ）指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定し、
（ｂ）該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する、
ことを要旨とする。
【００１８】
この本発明の画像処理方法では、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【００１９】
本発明の画像処理用プログラムは、
画像に所定の画像補正処理を施して出力する画像処理用プログラムであって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定モジュールと、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転モジュールと、
を備えることを要旨とする。
【００２０】
この本発明の画像処理用プログラムでは、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【発明を実施するための最良の形態】
【００２１】
次に、本発明を実施するための最良の形態を実施例を用いて説明する。
【実施例】
【００２２】
図１は、本発明の一実施例としての画像処理装置を搭載したプリンタ２０の構成の概略を示す構成図である。実施例のプリンタ２０は、図示するように、装置全体を制御する制御部２１と、メモリカードなどの記憶媒体３０やデジタルスチルカメラ３１，パーソナルコンピュータ３２などとの接続を司るインタフェース部２２と、記憶媒体３０などから読み込んだ画像ファイルに対して各種の画像処理を施す画像処理部２３と、データを一時的に記憶するデータバッファ２４と、読み込んだ画像ファイルに色変換処理や二値化処理などを施して印刷データを生成する印刷データ生成部２５と、生成された印刷データを蓄積するイメージバッファ２６と、イメージバッファ２６に蓄積された印刷データに基づいて印刷を実行するプリンタエンジン２７とを備え、各色のインクを用紙に噴射して印刷を行なうインクジェットプリンタとして構成されている。画像処理部２３では、記憶媒体３０などに記憶されＪＰＥＧ方式などで圧縮された画像ファイルを復元する処理なども行なわれる。ＪＰＥＧ方式の画像ファイルは、ブロック分割や離散コサイン変換（以下、ＤＣＴと略す）演算，量子化処理，ハフマン符号化などの工程を経て圧縮されている。こうしたＪＰＥＧ方式の画像ファイルは一般的な画像ファイルであり、本発明の中核をなさないから、これ以上の詳細な説明は省略する。
【００２３】
次に、こうして構成されたプリンタ２０の動作、特に、記憶媒体３０などから読み込んだ画像ファイルに対して画像補正処理を施すと共に回転して印刷する際の動作について説明する。図２は、画像ファイルの回転を伴う印刷指示がなされたときに制御部２１や画像処理部２３，印刷データ生成部２５などにより実行される画像回転印刷処理の一例を示すフローチャートである。画像ファイルの回転を伴う印刷指示がなされるケースとしては、例えば、プリンタ２０の図示しない操作パネルなどを介して画像ファイルの回転を要する印刷レイアウトが設定されて印刷が指示されたときなどを挙げることができる。また、実施例では、画像ファイルを右方向に９０°回転する場合を具体例として説明する。
【００２４】
画像回転印刷処理では、まず、図示するように、印刷指示に係る画像ファイルの１アクセス単位のデータを記憶媒体３０などから読み込み（ステップＳ１００）、読み込んだデータをハフマン解凍する処理を実行する（ステップＳ１１０）。ここで、アクセス単位とは、記憶媒体３０などの仕様に応じて予め定められているデータの読込単位であり、例えば、フラッシュメモリにおけるセクタなどが該当する。また、図３に例示するように、ＪＰＥＧ方式で圧縮された画像ファイルの各ブロックのデータサイズはアクセス単位とは必ずしも一致せず、各ブロック間のデータサイズも異なるから、１ブロックのデータが複数のアクセス単位に跨ることがある。
【００２５】
そして、１ブロック分のデータがハフマン解凍されるまでアクセス単位のデータを読み込んでハフマン解凍する処理を繰り返し実行し、１ブロック分のデータが解凍されると（ステップＳ１２０）、解凍されたデータ（ブロックの量子化ＤＣＴ係数）に対して逆量子化処理を実行する（ステップＳ１３０）。逆量子化処理を実行することにより、ブロックのＤＣＴ係数が取得される。ここで、ＪＰＥＧ方式の画像ファイルでは、量子化ＤＣＴ係数の量子化ＤＣ成分についてはブロック間の差分値がハフマン符号化されているから、ハフマン解凍により得られる量子化ＤＣ成分の差分値を累計することにより量子化ＤＣ成分が取得され、この量子化ＤＣ成分に逆量子化処理を施すことによりＤＣ成分が取得される。
【００２６】
次に、現在のブロックが起点ブロックであるか否かを判定する（ステップＳ１４０）。ここで、起点ブロックとは、画像ファイルを途中から復元する起点となるブロックであり、実施例では、画像を右方向に９０°回転したときに上端となる左端のブロックを起点ブロックとした（図４参照）。
【００２７】
そして、現在のブロックが起点ブロックである場合には、このブロックを起点として画像ファイルを復元するための起点復元用情報をデータバッファ２４の所定領域に記憶する（ステップＳ１５０）。起点復元用情報は、具体的には、起点ブロックのデータが開始されるアクセス単位の物理的な位置を示すファイルポインタと、このアクセス単位から起点ブロックのデータをハフマン解凍するための解凍中間情報と、起点ブロックのＤＣ成分とにより構成される。図５は、解凍中間情報を概念的に説明するための説明図である。前述したように、各ブロックのデータサイズとアクセス単位とは必ずしも一致せず、各ブロック間のデータサイズも異なるから、起点ブロックのデータが開始されるアクセス単位には前のブロックのデータも含まれることになる。したがって、起点ブロックのデータをハフマン解凍するためには前のブロックのデータのハフマン解凍に関する情報（例えば、前のブロックのデータとしてハフマン解凍されたビット数など）が必要であり、こうした情報が解凍中間情報に該当する。
【００２８】
続いて、ステップＳ１３０の逆量子化処理により取得したＤＣＴ係数に対して逆ＤＣＴ演算処理を施してブロックの画素情報を取得すると共に（ステップＳ１６０）、取得した画素情報の色空間を変換する色変換処理を実行する（ステップＳ１７０）。ここで、色変換処理は、ＪＰＥＧ方式の画像ファイルで用いられるＹＣＣ色空間をＲＧＢ色空間に変換する処理である。
【００２９】
こうしてＲＧＢ色空間に変換された画素情報が得られると、画像ファイル全体のＲＧＢ値の分布を示すヒストグラムを累計してデータバッファ２４の所定領域に記憶する（ステップＳ１８０）。なお、ヒストグラムを累計する対象とする画素は、適当なルールでサンプリングした画素としてもよい。
【００３０】
次に、現在のブロックの画素のうち肌色の画素からなる肌色領域や空色の画素からなる空色領域を抽出してデータバッファ２４の所定領域に記憶する（ステップＳ１８５）。ここで、肌色領域や空色領域の抽出は、肌色や空色に相当するＲＧＢ値の範囲を予め定めておき、このＲＧＢ値の範囲内の画素を抽出することにより行なわれる。
【００３１】
そして、現在のブロックが画像ファイルの最後のブロックでないときにはステップＳ１００に戻り（ステップＳ１９０）、次のブロックについてステップＳ１００〜Ｓ１８５の処理を繰り返し実行する。図６は、ステップＳ１００〜Ｓ１８５の処理を繰り返し実行した際の起点復元用情報の一例を示す説明図である。図示するように、実施例では起点ブロックとして画像の左端のブロックが設定されているから、左端のブロックについての起点復元用情報（ファイルポインタと解凍中間情報とＤＣ成分）が上のブロックから順に記憶されている。このように、画像ファイルを先頭から順に復元することにより、起点復元用情報やＲＧＢ値のヒストグラムを取得すると共に肌色領域や空色領域を抽出してデータバッファ２４に記憶するのである。
【００３２】
こうして画像ファイルの最後のブロックまでステップＳ１００〜Ｓ１８５の処理を繰り返し実行すると、次に、ステップＳ１８５で抽出した肌色領域に基づいて画像内容が人物画像であるか風景画像であるかを判定するオブジェクト認識処理を実行する（ステップＳ１９５）。ここで、画像回転印刷処理の説明を中断し、図７に例示するオブジェクト認識処理について説明する。
【００３３】
オブジェクト認識処理では、まず、図７に示すように、画像回転印刷処理のステップＳ１８５で抽出した肌色領域に関する情報をデータバッファ２４から読み込む処理を実行する（ステップＳ５００）。肌色領域の一例を図８に示す。そして、肌色領域の大きさが所定の大きさ以上であるか否か、肌色領域が画像の上辺または左右辺に接しているか否か、肌色領域内に人物の両目や口に相当する画素領域が存在するか否かについてそれぞれ判定する（ステップＳＳ５１０〜Ｓ５３０）。ここで、所定の大きさは、画像全体に対する面積比などを用いて設定することができ、実施例では、画像全体の２０％の大きさを所定の大きさとして設定した。また、両目や口に相当する画素領域が存在するか否かの判定は、肌色領域内の画素のうち周辺の画素より明度が低い画素領域を抽出し、この明度が低い画素領域が、図９に示すように、略逆三角形の頂点の位置（即ち、横方向に並ぶ二つの位置とこの二つの位置より下方向の一つの位置）に存在するときには、これらを両目や口に相当する画素領域と判定するものとした。
【００３４】
そして、肌色領域の大きさが所定の大きさ以上であり、上辺と左右辺のいずれにも接しておらず、両目や口に相当する画素領域が存在するときには、画像内容を人物画像と判定し（ステップＳ５４０）、これ以外のときには画像内容を風景画像と判定して（ステップＳ５５０）、このオブジェクト認識処理を終了する。図８に例示した肌色領域では、画像全体の２０％以上の大きさであると共に画像の上辺や左右辺に接しておらず、両目や口に相当する画素領域も存在するから、この画像の画像内容は人物画像であると判定されることになる。
【００３５】
こうしてオブジェクト認識処理により画像内容を判定すると、画像回転印刷処理では、次に、判定した画像内容や累計したＲＧＢ値のヒストグラムなどに基づいて画像ファイルに対して自動補正処理を施すための自動補正処理用パラメータを計算してデータバッファ２４の所定領域に記憶する（ステップＳ２００）。自動補正処理用パラメータの計算は、各種のルールを適用して行なうことができる。実施例では、画像内容が人物画像であるときには、肌色がより良好な肌色となるように補正する肌色補正処理やソフトフォーカス処理、明度をやや明るめに補正する明度補正処理などを施すようにパラメータを計算し、画像内容が風景画像であるときには、新緑色がより良好な新緑色となるように補正する新緑色補正処理や彩度が鮮やかとなるように補正する彩度補正処理などを施すようにパラメータを計算するものとした。また、画像内容が風景画像である場合には、さらに、ステップＳ１８５で抽出した空色領域が画像の下辺に接していないときには、この空色領域が空であると判断し、空色がより良好な空色となるように補正する空色補正処理を施すようにパラメータを計算するものとした（図１０参照）。なお、画像内容が人物画像であるか風景画像であるかに拘らず、ＲＧＢ値のヒストグラムに応じて各種の画像補正処理（コントラスト補正処理やγ補正処理など）を施すようなパラメータの計算も行なわれる。
【００３６】
続いて、データバッファ２４に記憶されている起点復元用情報のうち最初の起点ブロックのファイルポインタを読み込み（ステップＳ２１０）、読み込んだファイルポインタにより特定されるアクセス単位のデータを記憶媒体３０などから読み込んでハフマン解凍する（ステップＳ２２０）。この際、起点復元用情報の解凍中間情報を用いることにより、アクセス単位のデータのうち起点ブロックのデータを解凍することができる。
【００３７】
そして、１ブロック分のデータを解凍すると（ステップＳ２３０）、逆量子化処理や逆ＤＣＴ演算処理，色変換処理を実行する（ステップＳ２４０〜Ｓ２６０）。ここで、ＤＣＴ係数のＤＣ成分を取得する際には、起点復元用情報のＤＣ成分が読み込まれる。
【００３８】
続いて、ステップＳ２００で計算した自動補正処理用パラメータに従ってこのブロックに対して自動補正処理を施すと共に（ステップＳ２７０）、右方向に９０°回転させてデータバッファ２４の所定領域に出力する（ステップＳ２８０）。データバッファ２４の所定領域に出力する際には、ブロック自体を回転させると共にブロックの位置が回転後の位置となるように（例えば、左上隅のブロックは右上隅となるように）出力される。
【００３９】
こうしてブロックを回転して出力すると、このブロックの起点復元用情報を次のブロック（右隣のブロック）の起点復元用情報に更新する（ステップＳ２９０）。即ち、次のブロックのデータが開始されるアクセス単位のファイルポインタと、解凍中間情報と、ＤＣ成分とに更新する（図１１参照）。ここでのＤＣ成分は、現在のブロックの量子化ＤＣ成分が格納される。従って、次のブロックを復元する際には、この量子化ＤＣ成分と次のブロックのデータをハフマン解凍して得られる差分値とを累計することにより次のブロックの量子化ＤＣ成分を取得することになる。
【００４０】
そして、データバッファ２４の所定領域に出力される回転後のブロックが蓄積されてプリンタエンジン２７により印刷を実行する単位であるバンド単位となるまで、ステップＳ２１０〜Ｓ２９０の処理を繰り返し実行する（ステップＳ３００）。図１２は、ステップＳ２１０〜Ｓ２９０の処理が繰り返し実行される様子を示す説明図である。図示するように、起点ブロックとしての左端のブロックを上から順に対象としてステップＳ２１０〜Ｓ２９０の処理を実行することにより回転後の画像の上端のブロックが出力され、左端のブロックを対象とした処理が終了すると、左端のブロックの右隣の列のブロックを上から順に対象としてステップＳ２１０〜Ｓ２９０の処理を繰り返し実行する。そして、図１３に示すように、蓄積された回転後のブロックがバンド単位となると、このバンド単位のデータに基づいて印刷データ生成部２５により印刷データを生成してイメージバッファ２６に出力し、この印刷データに基づいてプリンタエンジン２７により印刷を実行する（ステップＳ３１０）。そして、画像ファイルの最後のブロックまで到達したときに（ステップＳ３２０）、この画像回転印刷処理を終了するのである。
【００４１】
以上説明した実施例のプリンタ２０によれば、画像ファイルに対して画像補正処理を施すと共に回転して印刷する際に、画像ファイルを先頭から順に復元して起点復元用情報やＲＧＢ値のヒストグラムを取得すると共に肌色領域などを抽出してデータバッファ２４に記憶し、この肌色領域の大きさや位置，両目や口に相当する画素領域の存在に基づいて画像内容が人物画像か風景画像かを判定して自動補正処理用のパラメータを計算し、起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成すると共に計算したパラメータに従って自動補正処理を施して出力することができる。したがって、画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【００４２】
ここで、実施例のプリンタ２０では、データバッファ２４がデータ記憶手段に相当し、ステップＳ１００〜Ｓ１９０の処理を実行する制御部２１や画像処理部２３が情報演算取得手段に相当し、ステップＳ１９５のオブジェクト認識処理を実行する制御部２１や画像処理部２３が画像内容判定手段に相当し、ステップＳ２００〜Ｓ３００の処理を実行する制御部２１や画像処理部２３が画像補正回転手段に相当する。また、インタフェース部２２がデータ取得手段に相当し、ステップＳ３１０の処理を実行する制御部２１や印刷データ生成部２５，プリンタエンジン２７が印刷実行手段に相当する。また、肌色領域がオブジェクト領域に相当する。
【００４３】
実施例のプリンタ２０では、肌色の画素からなる肌色領域を抽出して画像内容の判定に用いるものとしたが、人物の顔などに相当するオブジェクト領域を抽出することができればよいから、その他の基準で抽出するものとしてもよい。例えば、隣接する画素との輝度差に基づくエッジ度が所定の閾値より大きなエッジ画素をオブジェクト領域として抽出するものとしてもよい。
【００４４】
実施例のプリンタ２０では、肌色領域が画像の上辺と左右辺のいずれにも接していないことを条件の一つとして画像内容を人物画像と判定するものとしたが、上辺や左右辺に若干接していても構わない。
【００４５】
実施例のプリンタ２０では、肌色領域の大きさが所定の大きさ以上であるか否か、肌色領域が画像の上辺または左右辺に接しているか否か、肌色領域内に人物の両目や口に相当する画素領域が存在するか否かに基づいて画像内容を人物画像と判定するものとしたが、これに限られないのは勿論であり、これらのうち１つまたは２つの条件を満たしたときに人物画像と判定するものとしてもよいし、その他の条件を用いるものとしても構わない。
【００４６】
実施例のプリンタ２０では、人物画像と判定されないときには風景画像と判定するものとしたが、これに限られないのは勿論である。例えば、空色領域の配置などに基づいて風景画像と判定するものとしても構わない。さらに、人物画像と風景画像以外の画像内容を判定するものとしても差し支えない。
【００４７】
実施例のプリンタ２０では、ＪＰＥＧ方式で圧縮された画像ファイルを例に説明したが、その他の方式で圧縮された画像ファイルに適用することができるのは勿論である。この場合、その圧縮方式に応じて、画像ファイルを所定位置（例えば、左端の画素）から復元するために必要な情報を起点復元用情報として記憶するものとすればよい。
【００４８】
実施例のプリンタ２０では、右方向に９０°回転する場合を具体例として説明したが、これに限られないのは勿論である。例えば、１８０°回転する場合には、起点ブロックとしての左端のブロックを下から順に復元することにより回転後の画像の上端のブロックから順に出力することができる。さらに、左方向に９０°回転する場合には、図１４に例示するように、起点ブロックとして、左端のブロックに加え、画像ファイルの略中央に位置する列を起点ブロックとし、回転後の画像の上半分については略中央に位置する列の起点ブロックを起点として復元し、回転後の画像の下半分については左端の起点ブロックを起点として復元するものとすればよい。
【００４９】
実施例のプリンタ２０では、画像ファイルを先頭から順に復元して取得した起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成するものとしたが、必ずしもこのように画像の回転を行なわなくても構わないのは勿論であり、例えば、画像全体を復元してから回転する処理を行なうものとしても差し支えない。
【００５０】
実施例では、画像内容の判定を回転前の画像を用いて行なって画像補正処理を施す本発明をプリンタ２０の形態として説明したが、こうした画像補正処理を施す画像処理装置の形態としてもよい。また、こうした画像処理方法の形態としたり画像処理用プログラムの形態とすることもできる。
【００５１】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。
【図面の簡単な説明】
【００５２】
【図１】本発明の画像処理装置を搭載したプリンタ２０の構成の概略を示す構成図。
【図２】画像回転印刷処理の一例を示すフローチャート。
【図３】画像ファイルのブロックとアクセス単位との関係を示す説明図。
【図４】起点ブロックの一例を示す説明図。
【図５】解凍中間情報を概念的に説明するための説明図。
【図６】起点復元用情報の一例を示す説明図。
【図７】オブジェクト認識処理の一例を示すフローチャート。
【図８】肌色領域の一例を示す説明図。
【図９】両目や口に相当する画素領域の一例を示す説明図。
【図１０】風景画像の空色領域の一例を示す説明図。
【図１１】起点復元用情報を更新する様子の一例を示す説明図。
【図１２】ステップＳ２１０〜Ｓ２９０の処理が実行される様子を示す説明図。
【図１３】蓄積された回転後のブロックがバンド単位となる様子を示す説明図。
【図１４】変形例の起点ブロックの一例を示す説明図。
【符号の説明】
【００５３】
２０  プリンタ、２１  制御部、２２  インタフェース部、２３  画像処理部、２４  データバッファ、２５  印刷データ生成部、２６  イメージバッファ、２７  プリンタエンジン、３０  記憶媒体、３１  デジタルスチルカメラ、３２  パーソナルコンピュータ。
【図１】
2006099280.tif 000003
【図２】
2006099280.tif 000004
【図３】
2006099280.tif 000005
【図４】
2006099280.tif 000006
【図５】
2006099280.tif 000007
【図６】
2006099280.tif 000008
【図７】
2006099280.tif 000009
【図８】
2006099280.tif 000010
【図９】
2006099280.tif 000011
【図１０】
2006099280.tif 000012
【図１１】
2006099280.tif 000013
【図１２】
2006099280.tif 000014
【図１３】
2006099280.tif 000015
【図１４】
2006099280.tif 000016