画像処理装置およびこれを備えるプリンタ、画像処理方法
【課題】 画像を回転して出力する際の画像補正処理をより適切に施す。
【解決手段】 画像ファイルを先頭から順に復元して起点復元用情報やRGB値のヒストグラムを取得すると共に肌色領域などを抽出してデータバッファに記憶し(S100〜S190)、取得した肌色領域の大きさや位置,両目や口に相当する画素領域の存在などに基づいて画像内容が人物画像か風景画像かを判定するオブジェクト認識処理を実行して自動補正処理用のパラメータを計算し(S195,S200)、起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成すると共に計算したパラメータに従って自動補正処理を施して出力する(S210〜S300)。この結果、画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。
【解決手段】 画像ファイルを先頭から順に復元して起点復元用情報やRGB値のヒストグラムを取得すると共に肌色領域などを抽出してデータバッファに記憶し(S100〜S190)、取得した肌色領域の大きさや位置,両目や口に相当する画素領域の存在などに基づいて画像内容が人物画像か風景画像かを判定するオブジェクト認識処理を実行して自動補正処理用のパラメータを計算し(S195,S200)、起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成すると共に計算したパラメータに従って自動補正処理を施して出力する(S210〜S300)。この結果、画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムに関し、詳しくは、画像に所定の画像補正処理を施して出力する画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムに関する。
【背景技術】
【0002】
従来、この種の画像処理装置としては、入力された画像の中に人物の顔などのオブジェクトが含まれるかどうかを検出し、この検出結果に基づいて画像内容(人物画像や風景画像など)を判定すると共に補正パラメータを設定して画像を補正するものが提案されている(例えば、特許文献1参照)。この装置では、人物の顔を検出する際には、肌色の領域を検出したり目や口に相当する画素を検出したりしている。
【特許文献1】特開2004−236110号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上述の装置では、人物の顔などのオブジェクトを検出する際には、目や口に相当する画素の位置関係や画像全体に対するオブジェクトの配置などを考慮して行なうから、画像の向きによってはオブジェクトの検出や画像内容の判定を正しく行なえない場合がある。例えば、こうした画像処理装置をプリンタなどに適用する場合を考えると、印刷レイアウトの設定や印刷用紙の向きに応じて画像を回転して印刷することがあり、この画像の回転に伴ってオブジェクトの検出や画像内容の判定に不都合が生じてしまう虞がある。
【0004】
本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、オブジェクトの検出や画像内容の判定をより適切に行なうことを目的の一つとする。また、本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、画像を回転して出力する際の画像補正処理をより適切に施すことを目的の一つとする。
【課題を解決するための手段】
【0005】
本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、上述の目的の少なくとも一部を達成するために以下の手段を採った。
【0006】
本発明の画像処理装置は、
画像に所定の画像補正処理を施して出力する画像処理装置であって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定手段と、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転手段と、
を備えることを要旨とする。
【0007】
この本発明の画像処理装置では、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【0008】
こうした本発明の画像処理装置において、前記画像内容判定手段は、所定の肌色の画素により構成される領域を前記オブジェクト領域として抽出し該抽出したオブジェクト領域の前記画像全体に対する配置に基づいて該画像の画像内容を人物画像と判定する手段であるものとすることもできる。こうすれば、所定の肌色の画素により構成されるオブジェクト領域の画像全体に対する配置に基づく人物画像の判定をより適切に行なうことができる。
【0009】
また、本発明の画像処理装置において、前記画像内容判定手段は、前記抽出したオブジェクト領域の該画像の上辺および左右辺に接する量が所定量以下であることを条件の一つとして該画像の画像内容を人物画像と判定する手段であるものとすることもできる。ここで「所定量」には値0が含まれる。即ち、抽出したオブジェクト領域が画像の上辺および左右辺に接しないことを条件の一つとして画像の画像内容を人物画像と判定するものも含まれる。
【0010】
さらに、本発明の画像処理装置において、前記画像内容判定手段は、前記抽出したオブジェクト領域内に、人物の両目に相当する横方向に並ぶ領域と該領域より下方向に位置する人物の口に相当する領域とが存在することを条件の一つとして、前記画像の画像内容を人物画像と判定する手段であるものとすることもできる。こうすれば、両目や口に相当する領域の存在に基づく人物画像の判定をより適切に行なうことができる。
【0011】
こうした本発明の画像処理装置において、前記画像内容判定手段は、前記画像の画像内容が人物画像と判定されないときには、該画像の画像内容を風景画像と判定する手段であるものとすることもできる。
【0012】
また、本発明の画像処理装置において、前記画像補正回転手段は、前記画像の画像内容が風景画像のときには、所定の空色の画素が該画像の下辺に接していないことを条件の一つとして、該所定の空色を補正する空色補正処理を該画像に施す手段であるものとすることもできる。こうすれば、所定の空色の画素の配置に基づく空色補正処理をより適切に行なうことができる。
【0013】
さらに、本発明の画像処理装置において、前記画像は所定方式で圧縮されてなり、データを記憶するデータ記憶手段と前記指定された画像を先頭から順に少なくとも前記画素情報を取得可能な段階まで復元し該取得した画素情報を前記データ記憶手段に記憶すると共に該画像の復元過程において該画像の所定位置を起点として該画像を復元するための起点復元用情報を取得して前記データ記憶手段に記憶する情報演算取得手段とを備え、前記画像内容判定手段は前記データ記憶手段に記憶された画素情報に基づいて前記画像に含まれるオブジェクト領域を抽出する手段であり、前記画像補正回転手段は前記データ記憶手段に記憶された起点復元用情報に基づいて前記所定位置を起点として前記画像を復元することにより回転後の画像を上端から順に生成すると共に該生成された回転後の画像に前記所定の画像補正処理を施して出力する手段であるものとすることもできる。こうすれば、圧縮された画像の回転後の画像を起点復元用情報を用いて上端から順に生成して出力する際に、より適切に画像内容を判定して画像補正処理を施すことができる。
【0014】
こうした本発明の画像処理装置において、前記画像補正回転手段は、前記画像の画像内容が人物画像のときには前記所定の画像補正処理として肌色を補正する肌色補正処理,ソフトフォーカス処理,明度補正処理のうち少なくとも一つを施す手段であるものとしたり、前記画像の画像内容が風景画像のときには前記所定の画像補正処理として新緑色を補正する新緑色補正処理,彩度補正処理の少なくとも一つを施す手段であるものとすることもできる。
【0015】
本発明のプリンタは、通信可能な記憶媒体から前記画像を取得するデータ取得手段と、上述したいずれかの態様の本発明の画像処理装置と、該画像処理装置から出力される画像を印刷する印刷実行手段と、を備えることを要旨とする。
【0016】
この本発明のプリンタでは、上述したいずれかの態様の本発明の画像処理装置を備えるから、本発明の画像処理装置が奏する効果、例えば、より適切に画像内容を判定することができる効果や画像を回転して出力する際の画像補正処理をより適切に施すことができる効果などを奏することができる。
【0017】
本発明の画像処理方法は、
画像に所定の画像補正処理を施して出力する画像処理方法であって、
(a)指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定し、
(b)該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する、
ことを要旨とする。
【0018】
この本発明の画像処理方法では、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【0019】
本発明の画像処理用プログラムは、
画像に所定の画像補正処理を施して出力する画像処理用プログラムであって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定モジュールと、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転モジュールと、
を備えることを要旨とする。
【0020】
この本発明の画像処理用プログラムでは、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【発明を実施するための最良の形態】
【0021】
次に、本発明を実施するための最良の形態を実施例を用いて説明する。
【実施例】
【0022】
図1は、本発明の一実施例としての画像処理装置を搭載したプリンタ20の構成の概略を示す構成図である。実施例のプリンタ20は、図示するように、装置全体を制御する制御部21と、メモリカードなどの記憶媒体30やデジタルスチルカメラ31,パーソナルコンピュータ32などとの接続を司るインタフェース部22と、記憶媒体30などから読み込んだ画像ファイルに対して各種の画像処理を施す画像処理部23と、データを一時的に記憶するデータバッファ24と、読み込んだ画像ファイルに色変換処理や二値化処理などを施して印刷データを生成する印刷データ生成部25と、生成された印刷データを蓄積するイメージバッファ26と、イメージバッファ26に蓄積された印刷データに基づいて印刷を実行するプリンタエンジン27とを備え、各色のインクを用紙に噴射して印刷を行なうインクジェットプリンタとして構成されている。画像処理部23では、記憶媒体30などに記憶されJPEG方式などで圧縮された画像ファイルを復元する処理なども行なわれる。JPEG方式の画像ファイルは、ブロック分割や離散コサイン変換(以下、DCTと略す)演算,量子化処理,ハフマン符号化などの工程を経て圧縮されている。こうしたJPEG方式の画像ファイルは一般的な画像ファイルであり、本発明の中核をなさないから、これ以上の詳細な説明は省略する。
【0023】
次に、こうして構成されたプリンタ20の動作、特に、記憶媒体30などから読み込んだ画像ファイルに対して画像補正処理を施すと共に回転して印刷する際の動作について説明する。図2は、画像ファイルの回転を伴う印刷指示がなされたときに制御部21や画像処理部23,印刷データ生成部25などにより実行される画像回転印刷処理の一例を示すフローチャートである。画像ファイルの回転を伴う印刷指示がなされるケースとしては、例えば、プリンタ20の図示しない操作パネルなどを介して画像ファイルの回転を要する印刷レイアウトが設定されて印刷が指示されたときなどを挙げることができる。また、実施例では、画像ファイルを右方向に90°回転する場合を具体例として説明する。
【0024】
画像回転印刷処理では、まず、図示するように、印刷指示に係る画像ファイルの1アクセス単位のデータを記憶媒体30などから読み込み(ステップS100)、読み込んだデータをハフマン解凍する処理を実行する(ステップS110)。ここで、アクセス単位とは、記憶媒体30などの仕様に応じて予め定められているデータの読込単位であり、例えば、フラッシュメモリにおけるセクタなどが該当する。また、図3に例示するように、JPEG方式で圧縮された画像ファイルの各ブロックのデータサイズはアクセス単位とは必ずしも一致せず、各ブロック間のデータサイズも異なるから、1ブロックのデータが複数のアクセス単位に跨ることがある。
【0025】
そして、1ブロック分のデータがハフマン解凍されるまでアクセス単位のデータを読み込んでハフマン解凍する処理を繰り返し実行し、1ブロック分のデータが解凍されると(ステップS120)、解凍されたデータ(ブロックの量子化DCT係数)に対して逆量子化処理を実行する(ステップS130)。逆量子化処理を実行することにより、ブロックのDCT係数が取得される。ここで、JPEG方式の画像ファイルでは、量子化DCT係数の量子化DC成分についてはブロック間の差分値がハフマン符号化されているから、ハフマン解凍により得られる量子化DC成分の差分値を累計することにより量子化DC成分が取得され、この量子化DC成分に逆量子化処理を施すことによりDC成分が取得される。
【0026】
次に、現在のブロックが起点ブロックであるか否かを判定する(ステップS140)。ここで、起点ブロックとは、画像ファイルを途中から復元する起点となるブロックであり、実施例では、画像を右方向に90°回転したときに上端となる左端のブロックを起点ブロックとした(図4参照)。
【0027】
そして、現在のブロックが起点ブロックである場合には、このブロックを起点として画像ファイルを復元するための起点復元用情報をデータバッファ24の所定領域に記憶する(ステップS150)。起点復元用情報は、具体的には、起点ブロックのデータが開始されるアクセス単位の物理的な位置を示すファイルポインタと、このアクセス単位から起点ブロックのデータをハフマン解凍するための解凍中間情報と、起点ブロックのDC成分とにより構成される。図5は、解凍中間情報を概念的に説明するための説明図である。前述したように、各ブロックのデータサイズとアクセス単位とは必ずしも一致せず、各ブロック間のデータサイズも異なるから、起点ブロックのデータが開始されるアクセス単位には前のブロックのデータも含まれることになる。したがって、起点ブロックのデータをハフマン解凍するためには前のブロックのデータのハフマン解凍に関する情報(例えば、前のブロックのデータとしてハフマン解凍されたビット数など)が必要であり、こうした情報が解凍中間情報に該当する。
【0028】
続いて、ステップS130の逆量子化処理により取得したDCT係数に対して逆DCT演算処理を施してブロックの画素情報を取得すると共に(ステップS160)、取得した画素情報の色空間を変換する色変換処理を実行する(ステップS170)。ここで、色変換処理は、JPEG方式の画像ファイルで用いられるYCC色空間をRGB色空間に変換する処理である。
【0029】
こうしてRGB色空間に変換された画素情報が得られると、画像ファイル全体のRGB値の分布を示すヒストグラムを累計してデータバッファ24の所定領域に記憶する(ステップS180)。なお、ヒストグラムを累計する対象とする画素は、適当なルールでサンプリングした画素としてもよい。
【0030】
次に、現在のブロックの画素のうち肌色の画素からなる肌色領域や空色の画素からなる空色領域を抽出してデータバッファ24の所定領域に記憶する(ステップS185)。ここで、肌色領域や空色領域の抽出は、肌色や空色に相当するRGB値の範囲を予め定めておき、このRGB値の範囲内の画素を抽出することにより行なわれる。
【0031】
そして、現在のブロックが画像ファイルの最後のブロックでないときにはステップS100に戻り(ステップS190)、次のブロックについてステップS100〜S185の処理を繰り返し実行する。図6は、ステップS100〜S185の処理を繰り返し実行した際の起点復元用情報の一例を示す説明図である。図示するように、実施例では起点ブロックとして画像の左端のブロックが設定されているから、左端のブロックについての起点復元用情報(ファイルポインタと解凍中間情報とDC成分)が上のブロックから順に記憶されている。このように、画像ファイルを先頭から順に復元することにより、起点復元用情報やRGB値のヒストグラムを取得すると共に肌色領域や空色領域を抽出してデータバッファ24に記憶するのである。
【0032】
こうして画像ファイルの最後のブロックまでステップS100〜S185の処理を繰り返し実行すると、次に、ステップS185で抽出した肌色領域に基づいて画像内容が人物画像であるか風景画像であるかを判定するオブジェクト認識処理を実行する(ステップS195)。ここで、画像回転印刷処理の説明を中断し、図7に例示するオブジェクト認識処理について説明する。
【0033】
オブジェクト認識処理では、まず、図7に示すように、画像回転印刷処理のステップS185で抽出した肌色領域に関する情報をデータバッファ24から読み込む処理を実行する(ステップS500)。肌色領域の一例を図8に示す。そして、肌色領域の大きさが所定の大きさ以上であるか否か、肌色領域が画像の上辺または左右辺に接しているか否か、肌色領域内に人物の両目や口に相当する画素領域が存在するか否かについてそれぞれ判定する(ステップSS510〜S530)。ここで、所定の大きさは、画像全体に対する面積比などを用いて設定することができ、実施例では、画像全体の20%の大きさを所定の大きさとして設定した。また、両目や口に相当する画素領域が存在するか否かの判定は、肌色領域内の画素のうち周辺の画素より明度が低い画素領域を抽出し、この明度が低い画素領域が、図9に示すように、略逆三角形の頂点の位置(即ち、横方向に並ぶ二つの位置とこの二つの位置より下方向の一つの位置)に存在するときには、これらを両目や口に相当する画素領域と判定するものとした。
【0034】
そして、肌色領域の大きさが所定の大きさ以上であり、上辺と左右辺のいずれにも接しておらず、両目や口に相当する画素領域が存在するときには、画像内容を人物画像と判定し(ステップS540)、これ以外のときには画像内容を風景画像と判定して(ステップS550)、このオブジェクト認識処理を終了する。図8に例示した肌色領域では、画像全体の20%以上の大きさであると共に画像の上辺や左右辺に接しておらず、両目や口に相当する画素領域も存在するから、この画像の画像内容は人物画像であると判定されることになる。
【0035】
こうしてオブジェクト認識処理により画像内容を判定すると、画像回転印刷処理では、次に、判定した画像内容や累計したRGB値のヒストグラムなどに基づいて画像ファイルに対して自動補正処理を施すための自動補正処理用パラメータを計算してデータバッファ24の所定領域に記憶する(ステップS200)。自動補正処理用パラメータの計算は、各種のルールを適用して行なうことができる。実施例では、画像内容が人物画像であるときには、肌色がより良好な肌色となるように補正する肌色補正処理やソフトフォーカス処理、明度をやや明るめに補正する明度補正処理などを施すようにパラメータを計算し、画像内容が風景画像であるときには、新緑色がより良好な新緑色となるように補正する新緑色補正処理や彩度が鮮やかとなるように補正する彩度補正処理などを施すようにパラメータを計算するものとした。また、画像内容が風景画像である場合には、さらに、ステップS185で抽出した空色領域が画像の下辺に接していないときには、この空色領域が空であると判断し、空色がより良好な空色となるように補正する空色補正処理を施すようにパラメータを計算するものとした(図10参照)。なお、画像内容が人物画像であるか風景画像であるかに拘らず、RGB値のヒストグラムに応じて各種の画像補正処理(コントラスト補正処理やγ補正処理など)を施すようなパラメータの計算も行なわれる。
【0036】
続いて、データバッファ24に記憶されている起点復元用情報のうち最初の起点ブロックのファイルポインタを読み込み(ステップS210)、読み込んだファイルポインタにより特定されるアクセス単位のデータを記憶媒体30などから読み込んでハフマン解凍する(ステップS220)。この際、起点復元用情報の解凍中間情報を用いることにより、アクセス単位のデータのうち起点ブロックのデータを解凍することができる。
【0037】
そして、1ブロック分のデータを解凍すると(ステップS230)、逆量子化処理や逆DCT演算処理,色変換処理を実行する(ステップS240〜S260)。ここで、DCT係数のDC成分を取得する際には、起点復元用情報のDC成分が読み込まれる。
【0038】
続いて、ステップS200で計算した自動補正処理用パラメータに従ってこのブロックに対して自動補正処理を施すと共に(ステップS270)、右方向に90°回転させてデータバッファ24の所定領域に出力する(ステップS280)。データバッファ24の所定領域に出力する際には、ブロック自体を回転させると共にブロックの位置が回転後の位置となるように(例えば、左上隅のブロックは右上隅となるように)出力される。
【0039】
こうしてブロックを回転して出力すると、このブロックの起点復元用情報を次のブロック(右隣のブロック)の起点復元用情報に更新する(ステップS290)。即ち、次のブロックのデータが開始されるアクセス単位のファイルポインタと、解凍中間情報と、DC成分とに更新する(図11参照)。ここでのDC成分は、現在のブロックの量子化DC成分が格納される。従って、次のブロックを復元する際には、この量子化DC成分と次のブロックのデータをハフマン解凍して得られる差分値とを累計することにより次のブロックの量子化DC成分を取得することになる。
【0040】
そして、データバッファ24の所定領域に出力される回転後のブロックが蓄積されてプリンタエンジン27により印刷を実行する単位であるバンド単位となるまで、ステップS210〜S290の処理を繰り返し実行する(ステップS300)。図12は、ステップS210〜S290の処理が繰り返し実行される様子を示す説明図である。図示するように、起点ブロックとしての左端のブロックを上から順に対象としてステップS210〜S290の処理を実行することにより回転後の画像の上端のブロックが出力され、左端のブロックを対象とした処理が終了すると、左端のブロックの右隣の列のブロックを上から順に対象としてステップS210〜S290の処理を繰り返し実行する。そして、図13に示すように、蓄積された回転後のブロックがバンド単位となると、このバンド単位のデータに基づいて印刷データ生成部25により印刷データを生成してイメージバッファ26に出力し、この印刷データに基づいてプリンタエンジン27により印刷を実行する(ステップS310)。そして、画像ファイルの最後のブロックまで到達したときに(ステップS320)、この画像回転印刷処理を終了するのである。
【0041】
以上説明した実施例のプリンタ20によれば、画像ファイルに対して画像補正処理を施すと共に回転して印刷する際に、画像ファイルを先頭から順に復元して起点復元用情報やRGB値のヒストグラムを取得すると共に肌色領域などを抽出してデータバッファ24に記憶し、この肌色領域の大きさや位置,両目や口に相当する画素領域の存在に基づいて画像内容が人物画像か風景画像かを判定して自動補正処理用のパラメータを計算し、起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成すると共に計算したパラメータに従って自動補正処理を施して出力することができる。したがって、画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【0042】
ここで、実施例のプリンタ20では、データバッファ24がデータ記憶手段に相当し、ステップS100〜S190の処理を実行する制御部21や画像処理部23が情報演算取得手段に相当し、ステップS195のオブジェクト認識処理を実行する制御部21や画像処理部23が画像内容判定手段に相当し、ステップS200〜S300の処理を実行する制御部21や画像処理部23が画像補正回転手段に相当する。また、インタフェース部22がデータ取得手段に相当し、ステップS310の処理を実行する制御部21や印刷データ生成部25,プリンタエンジン27が印刷実行手段に相当する。また、肌色領域がオブジェクト領域に相当する。
【0043】
実施例のプリンタ20では、肌色の画素からなる肌色領域を抽出して画像内容の判定に用いるものとしたが、人物の顔などに相当するオブジェクト領域を抽出することができればよいから、その他の基準で抽出するものとしてもよい。例えば、隣接する画素との輝度差に基づくエッジ度が所定の閾値より大きなエッジ画素をオブジェクト領域として抽出するものとしてもよい。
【0044】
実施例のプリンタ20では、肌色領域が画像の上辺と左右辺のいずれにも接していないことを条件の一つとして画像内容を人物画像と判定するものとしたが、上辺や左右辺に若干接していても構わない。
【0045】
実施例のプリンタ20では、肌色領域の大きさが所定の大きさ以上であるか否か、肌色領域が画像の上辺または左右辺に接しているか否か、肌色領域内に人物の両目や口に相当する画素領域が存在するか否かに基づいて画像内容を人物画像と判定するものとしたが、これに限られないのは勿論であり、これらのうち1つまたは2つの条件を満たしたときに人物画像と判定するものとしてもよいし、その他の条件を用いるものとしても構わない。
【0046】
実施例のプリンタ20では、人物画像と判定されないときには風景画像と判定するものとしたが、これに限られないのは勿論である。例えば、空色領域の配置などに基づいて風景画像と判定するものとしても構わない。さらに、人物画像と風景画像以外の画像内容を判定するものとしても差し支えない。
【0047】
実施例のプリンタ20では、JPEG方式で圧縮された画像ファイルを例に説明したが、その他の方式で圧縮された画像ファイルに適用することができるのは勿論である。この場合、その圧縮方式に応じて、画像ファイルを所定位置(例えば、左端の画素)から復元するために必要な情報を起点復元用情報として記憶するものとすればよい。
【0048】
実施例のプリンタ20では、右方向に90°回転する場合を具体例として説明したが、これに限られないのは勿論である。例えば、180°回転する場合には、起点ブロックとしての左端のブロックを下から順に復元することにより回転後の画像の上端のブロックから順に出力することができる。さらに、左方向に90°回転する場合には、図14に例示するように、起点ブロックとして、左端のブロックに加え、画像ファイルの略中央に位置する列を起点ブロックとし、回転後の画像の上半分については略中央に位置する列の起点ブロックを起点として復元し、回転後の画像の下半分については左端の起点ブロックを起点として復元するものとすればよい。
【0049】
実施例のプリンタ20では、画像ファイルを先頭から順に復元して取得した起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成するものとしたが、必ずしもこのように画像の回転を行なわなくても構わないのは勿論であり、例えば、画像全体を復元してから回転する処理を行なうものとしても差し支えない。
【0050】
実施例では、画像内容の判定を回転前の画像を用いて行なって画像補正処理を施す本発明をプリンタ20の形態として説明したが、こうした画像補正処理を施す画像処理装置の形態としてもよい。また、こうした画像処理方法の形態としたり画像処理用プログラムの形態とすることもできる。
【0051】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。
【図面の簡単な説明】
【0052】
【図1】本発明の画像処理装置を搭載したプリンタ20の構成の概略を示す構成図。
【図2】画像回転印刷処理の一例を示すフローチャート。
【図3】画像ファイルのブロックとアクセス単位との関係を示す説明図。
【図4】起点ブロックの一例を示す説明図。
【図5】解凍中間情報を概念的に説明するための説明図。
【図6】起点復元用情報の一例を示す説明図。
【図7】オブジェクト認識処理の一例を示すフローチャート。
【図8】肌色領域の一例を示す説明図。
【図9】両目や口に相当する画素領域の一例を示す説明図。
【図10】風景画像の空色領域の一例を示す説明図。
【図11】起点復元用情報を更新する様子の一例を示す説明図。
【図12】ステップS210〜S290の処理が実行される様子を示す説明図。
【図13】蓄積された回転後のブロックがバンド単位となる様子を示す説明図。
【図14】変形例の起点ブロックの一例を示す説明図。
【符号の説明】
【0053】
20 プリンタ、21 制御部、22 インタフェース部、23 画像処理部、24 データバッファ、25 印刷データ生成部、26 イメージバッファ、27 プリンタエンジン、30 記憶媒体、31 デジタルスチルカメラ、32 パーソナルコンピュータ。
【技術分野】
【0001】
本発明は、画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムに関し、詳しくは、画像に所定の画像補正処理を施して出力する画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムに関する。
【背景技術】
【0002】
従来、この種の画像処理装置としては、入力された画像の中に人物の顔などのオブジェクトが含まれるかどうかを検出し、この検出結果に基づいて画像内容(人物画像や風景画像など)を判定すると共に補正パラメータを設定して画像を補正するものが提案されている(例えば、特許文献1参照)。この装置では、人物の顔を検出する際には、肌色の領域を検出したり目や口に相当する画素を検出したりしている。
【特許文献1】特開2004−236110号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上述の装置では、人物の顔などのオブジェクトを検出する際には、目や口に相当する画素の位置関係や画像全体に対するオブジェクトの配置などを考慮して行なうから、画像の向きによってはオブジェクトの検出や画像内容の判定を正しく行なえない場合がある。例えば、こうした画像処理装置をプリンタなどに適用する場合を考えると、印刷レイアウトの設定や印刷用紙の向きに応じて画像を回転して印刷することがあり、この画像の回転に伴ってオブジェクトの検出や画像内容の判定に不都合が生じてしまう虞がある。
【0004】
本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、オブジェクトの検出や画像内容の判定をより適切に行なうことを目的の一つとする。また、本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、画像を回転して出力する際の画像補正処理をより適切に施すことを目的の一つとする。
【課題を解決するための手段】
【0005】
本発明の画像処理装置およびこれを備えるプリンタ、画像処理方法、画像処理用プログラムは、上述の目的の少なくとも一部を達成するために以下の手段を採った。
【0006】
本発明の画像処理装置は、
画像に所定の画像補正処理を施して出力する画像処理装置であって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定手段と、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転手段と、
を備えることを要旨とする。
【0007】
この本発明の画像処理装置では、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【0008】
こうした本発明の画像処理装置において、前記画像内容判定手段は、所定の肌色の画素により構成される領域を前記オブジェクト領域として抽出し該抽出したオブジェクト領域の前記画像全体に対する配置に基づいて該画像の画像内容を人物画像と判定する手段であるものとすることもできる。こうすれば、所定の肌色の画素により構成されるオブジェクト領域の画像全体に対する配置に基づく人物画像の判定をより適切に行なうことができる。
【0009】
また、本発明の画像処理装置において、前記画像内容判定手段は、前記抽出したオブジェクト領域の該画像の上辺および左右辺に接する量が所定量以下であることを条件の一つとして該画像の画像内容を人物画像と判定する手段であるものとすることもできる。ここで「所定量」には値0が含まれる。即ち、抽出したオブジェクト領域が画像の上辺および左右辺に接しないことを条件の一つとして画像の画像内容を人物画像と判定するものも含まれる。
【0010】
さらに、本発明の画像処理装置において、前記画像内容判定手段は、前記抽出したオブジェクト領域内に、人物の両目に相当する横方向に並ぶ領域と該領域より下方向に位置する人物の口に相当する領域とが存在することを条件の一つとして、前記画像の画像内容を人物画像と判定する手段であるものとすることもできる。こうすれば、両目や口に相当する領域の存在に基づく人物画像の判定をより適切に行なうことができる。
【0011】
こうした本発明の画像処理装置において、前記画像内容判定手段は、前記画像の画像内容が人物画像と判定されないときには、該画像の画像内容を風景画像と判定する手段であるものとすることもできる。
【0012】
また、本発明の画像処理装置において、前記画像補正回転手段は、前記画像の画像内容が風景画像のときには、所定の空色の画素が該画像の下辺に接していないことを条件の一つとして、該所定の空色を補正する空色補正処理を該画像に施す手段であるものとすることもできる。こうすれば、所定の空色の画素の配置に基づく空色補正処理をより適切に行なうことができる。
【0013】
さらに、本発明の画像処理装置において、前記画像は所定方式で圧縮されてなり、データを記憶するデータ記憶手段と前記指定された画像を先頭から順に少なくとも前記画素情報を取得可能な段階まで復元し該取得した画素情報を前記データ記憶手段に記憶すると共に該画像の復元過程において該画像の所定位置を起点として該画像を復元するための起点復元用情報を取得して前記データ記憶手段に記憶する情報演算取得手段とを備え、前記画像内容判定手段は前記データ記憶手段に記憶された画素情報に基づいて前記画像に含まれるオブジェクト領域を抽出する手段であり、前記画像補正回転手段は前記データ記憶手段に記憶された起点復元用情報に基づいて前記所定位置を起点として前記画像を復元することにより回転後の画像を上端から順に生成すると共に該生成された回転後の画像に前記所定の画像補正処理を施して出力する手段であるものとすることもできる。こうすれば、圧縮された画像の回転後の画像を起点復元用情報を用いて上端から順に生成して出力する際に、より適切に画像内容を判定して画像補正処理を施すことができる。
【0014】
こうした本発明の画像処理装置において、前記画像補正回転手段は、前記画像の画像内容が人物画像のときには前記所定の画像補正処理として肌色を補正する肌色補正処理,ソフトフォーカス処理,明度補正処理のうち少なくとも一つを施す手段であるものとしたり、前記画像の画像内容が風景画像のときには前記所定の画像補正処理として新緑色を補正する新緑色補正処理,彩度補正処理の少なくとも一つを施す手段であるものとすることもできる。
【0015】
本発明のプリンタは、通信可能な記憶媒体から前記画像を取得するデータ取得手段と、上述したいずれかの態様の本発明の画像処理装置と、該画像処理装置から出力される画像を印刷する印刷実行手段と、を備えることを要旨とする。
【0016】
この本発明のプリンタでは、上述したいずれかの態様の本発明の画像処理装置を備えるから、本発明の画像処理装置が奏する効果、例えば、より適切に画像内容を判定することができる効果や画像を回転して出力する際の画像補正処理をより適切に施すことができる効果などを奏することができる。
【0017】
本発明の画像処理方法は、
画像に所定の画像補正処理を施して出力する画像処理方法であって、
(a)指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定し、
(b)該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する、
ことを要旨とする。
【0018】
この本発明の画像処理方法では、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【0019】
本発明の画像処理用プログラムは、
画像に所定の画像補正処理を施して出力する画像処理用プログラムであって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定モジュールと、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転モジュールと、
を備えることを要旨とする。
【0020】
この本発明の画像処理用プログラムでは、指定された画像を回転して出力する際に、画像の画素情報に基づいてオブジェクト領域を抽出すると共に抽出したオブジェクト領域の画像全体に対する配置に応じて画像内容を判定し、この判定した画像内容に基づいて所定の画像処理を施すと共に回転して出力する。したがって、画像全体に対するオブジェクト領域の配置に基づく画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【発明を実施するための最良の形態】
【0021】
次に、本発明を実施するための最良の形態を実施例を用いて説明する。
【実施例】
【0022】
図1は、本発明の一実施例としての画像処理装置を搭載したプリンタ20の構成の概略を示す構成図である。実施例のプリンタ20は、図示するように、装置全体を制御する制御部21と、メモリカードなどの記憶媒体30やデジタルスチルカメラ31,パーソナルコンピュータ32などとの接続を司るインタフェース部22と、記憶媒体30などから読み込んだ画像ファイルに対して各種の画像処理を施す画像処理部23と、データを一時的に記憶するデータバッファ24と、読み込んだ画像ファイルに色変換処理や二値化処理などを施して印刷データを生成する印刷データ生成部25と、生成された印刷データを蓄積するイメージバッファ26と、イメージバッファ26に蓄積された印刷データに基づいて印刷を実行するプリンタエンジン27とを備え、各色のインクを用紙に噴射して印刷を行なうインクジェットプリンタとして構成されている。画像処理部23では、記憶媒体30などに記憶されJPEG方式などで圧縮された画像ファイルを復元する処理なども行なわれる。JPEG方式の画像ファイルは、ブロック分割や離散コサイン変換(以下、DCTと略す)演算,量子化処理,ハフマン符号化などの工程を経て圧縮されている。こうしたJPEG方式の画像ファイルは一般的な画像ファイルであり、本発明の中核をなさないから、これ以上の詳細な説明は省略する。
【0023】
次に、こうして構成されたプリンタ20の動作、特に、記憶媒体30などから読み込んだ画像ファイルに対して画像補正処理を施すと共に回転して印刷する際の動作について説明する。図2は、画像ファイルの回転を伴う印刷指示がなされたときに制御部21や画像処理部23,印刷データ生成部25などにより実行される画像回転印刷処理の一例を示すフローチャートである。画像ファイルの回転を伴う印刷指示がなされるケースとしては、例えば、プリンタ20の図示しない操作パネルなどを介して画像ファイルの回転を要する印刷レイアウトが設定されて印刷が指示されたときなどを挙げることができる。また、実施例では、画像ファイルを右方向に90°回転する場合を具体例として説明する。
【0024】
画像回転印刷処理では、まず、図示するように、印刷指示に係る画像ファイルの1アクセス単位のデータを記憶媒体30などから読み込み(ステップS100)、読み込んだデータをハフマン解凍する処理を実行する(ステップS110)。ここで、アクセス単位とは、記憶媒体30などの仕様に応じて予め定められているデータの読込単位であり、例えば、フラッシュメモリにおけるセクタなどが該当する。また、図3に例示するように、JPEG方式で圧縮された画像ファイルの各ブロックのデータサイズはアクセス単位とは必ずしも一致せず、各ブロック間のデータサイズも異なるから、1ブロックのデータが複数のアクセス単位に跨ることがある。
【0025】
そして、1ブロック分のデータがハフマン解凍されるまでアクセス単位のデータを読み込んでハフマン解凍する処理を繰り返し実行し、1ブロック分のデータが解凍されると(ステップS120)、解凍されたデータ(ブロックの量子化DCT係数)に対して逆量子化処理を実行する(ステップS130)。逆量子化処理を実行することにより、ブロックのDCT係数が取得される。ここで、JPEG方式の画像ファイルでは、量子化DCT係数の量子化DC成分についてはブロック間の差分値がハフマン符号化されているから、ハフマン解凍により得られる量子化DC成分の差分値を累計することにより量子化DC成分が取得され、この量子化DC成分に逆量子化処理を施すことによりDC成分が取得される。
【0026】
次に、現在のブロックが起点ブロックであるか否かを判定する(ステップS140)。ここで、起点ブロックとは、画像ファイルを途中から復元する起点となるブロックであり、実施例では、画像を右方向に90°回転したときに上端となる左端のブロックを起点ブロックとした(図4参照)。
【0027】
そして、現在のブロックが起点ブロックである場合には、このブロックを起点として画像ファイルを復元するための起点復元用情報をデータバッファ24の所定領域に記憶する(ステップS150)。起点復元用情報は、具体的には、起点ブロックのデータが開始されるアクセス単位の物理的な位置を示すファイルポインタと、このアクセス単位から起点ブロックのデータをハフマン解凍するための解凍中間情報と、起点ブロックのDC成分とにより構成される。図5は、解凍中間情報を概念的に説明するための説明図である。前述したように、各ブロックのデータサイズとアクセス単位とは必ずしも一致せず、各ブロック間のデータサイズも異なるから、起点ブロックのデータが開始されるアクセス単位には前のブロックのデータも含まれることになる。したがって、起点ブロックのデータをハフマン解凍するためには前のブロックのデータのハフマン解凍に関する情報(例えば、前のブロックのデータとしてハフマン解凍されたビット数など)が必要であり、こうした情報が解凍中間情報に該当する。
【0028】
続いて、ステップS130の逆量子化処理により取得したDCT係数に対して逆DCT演算処理を施してブロックの画素情報を取得すると共に(ステップS160)、取得した画素情報の色空間を変換する色変換処理を実行する(ステップS170)。ここで、色変換処理は、JPEG方式の画像ファイルで用いられるYCC色空間をRGB色空間に変換する処理である。
【0029】
こうしてRGB色空間に変換された画素情報が得られると、画像ファイル全体のRGB値の分布を示すヒストグラムを累計してデータバッファ24の所定領域に記憶する(ステップS180)。なお、ヒストグラムを累計する対象とする画素は、適当なルールでサンプリングした画素としてもよい。
【0030】
次に、現在のブロックの画素のうち肌色の画素からなる肌色領域や空色の画素からなる空色領域を抽出してデータバッファ24の所定領域に記憶する(ステップS185)。ここで、肌色領域や空色領域の抽出は、肌色や空色に相当するRGB値の範囲を予め定めておき、このRGB値の範囲内の画素を抽出することにより行なわれる。
【0031】
そして、現在のブロックが画像ファイルの最後のブロックでないときにはステップS100に戻り(ステップS190)、次のブロックについてステップS100〜S185の処理を繰り返し実行する。図6は、ステップS100〜S185の処理を繰り返し実行した際の起点復元用情報の一例を示す説明図である。図示するように、実施例では起点ブロックとして画像の左端のブロックが設定されているから、左端のブロックについての起点復元用情報(ファイルポインタと解凍中間情報とDC成分)が上のブロックから順に記憶されている。このように、画像ファイルを先頭から順に復元することにより、起点復元用情報やRGB値のヒストグラムを取得すると共に肌色領域や空色領域を抽出してデータバッファ24に記憶するのである。
【0032】
こうして画像ファイルの最後のブロックまでステップS100〜S185の処理を繰り返し実行すると、次に、ステップS185で抽出した肌色領域に基づいて画像内容が人物画像であるか風景画像であるかを判定するオブジェクト認識処理を実行する(ステップS195)。ここで、画像回転印刷処理の説明を中断し、図7に例示するオブジェクト認識処理について説明する。
【0033】
オブジェクト認識処理では、まず、図7に示すように、画像回転印刷処理のステップS185で抽出した肌色領域に関する情報をデータバッファ24から読み込む処理を実行する(ステップS500)。肌色領域の一例を図8に示す。そして、肌色領域の大きさが所定の大きさ以上であるか否か、肌色領域が画像の上辺または左右辺に接しているか否か、肌色領域内に人物の両目や口に相当する画素領域が存在するか否かについてそれぞれ判定する(ステップSS510〜S530)。ここで、所定の大きさは、画像全体に対する面積比などを用いて設定することができ、実施例では、画像全体の20%の大きさを所定の大きさとして設定した。また、両目や口に相当する画素領域が存在するか否かの判定は、肌色領域内の画素のうち周辺の画素より明度が低い画素領域を抽出し、この明度が低い画素領域が、図9に示すように、略逆三角形の頂点の位置(即ち、横方向に並ぶ二つの位置とこの二つの位置より下方向の一つの位置)に存在するときには、これらを両目や口に相当する画素領域と判定するものとした。
【0034】
そして、肌色領域の大きさが所定の大きさ以上であり、上辺と左右辺のいずれにも接しておらず、両目や口に相当する画素領域が存在するときには、画像内容を人物画像と判定し(ステップS540)、これ以外のときには画像内容を風景画像と判定して(ステップS550)、このオブジェクト認識処理を終了する。図8に例示した肌色領域では、画像全体の20%以上の大きさであると共に画像の上辺や左右辺に接しておらず、両目や口に相当する画素領域も存在するから、この画像の画像内容は人物画像であると判定されることになる。
【0035】
こうしてオブジェクト認識処理により画像内容を判定すると、画像回転印刷処理では、次に、判定した画像内容や累計したRGB値のヒストグラムなどに基づいて画像ファイルに対して自動補正処理を施すための自動補正処理用パラメータを計算してデータバッファ24の所定領域に記憶する(ステップS200)。自動補正処理用パラメータの計算は、各種のルールを適用して行なうことができる。実施例では、画像内容が人物画像であるときには、肌色がより良好な肌色となるように補正する肌色補正処理やソフトフォーカス処理、明度をやや明るめに補正する明度補正処理などを施すようにパラメータを計算し、画像内容が風景画像であるときには、新緑色がより良好な新緑色となるように補正する新緑色補正処理や彩度が鮮やかとなるように補正する彩度補正処理などを施すようにパラメータを計算するものとした。また、画像内容が風景画像である場合には、さらに、ステップS185で抽出した空色領域が画像の下辺に接していないときには、この空色領域が空であると判断し、空色がより良好な空色となるように補正する空色補正処理を施すようにパラメータを計算するものとした(図10参照)。なお、画像内容が人物画像であるか風景画像であるかに拘らず、RGB値のヒストグラムに応じて各種の画像補正処理(コントラスト補正処理やγ補正処理など)を施すようなパラメータの計算も行なわれる。
【0036】
続いて、データバッファ24に記憶されている起点復元用情報のうち最初の起点ブロックのファイルポインタを読み込み(ステップS210)、読み込んだファイルポインタにより特定されるアクセス単位のデータを記憶媒体30などから読み込んでハフマン解凍する(ステップS220)。この際、起点復元用情報の解凍中間情報を用いることにより、アクセス単位のデータのうち起点ブロックのデータを解凍することができる。
【0037】
そして、1ブロック分のデータを解凍すると(ステップS230)、逆量子化処理や逆DCT演算処理,色変換処理を実行する(ステップS240〜S260)。ここで、DCT係数のDC成分を取得する際には、起点復元用情報のDC成分が読み込まれる。
【0038】
続いて、ステップS200で計算した自動補正処理用パラメータに従ってこのブロックに対して自動補正処理を施すと共に(ステップS270)、右方向に90°回転させてデータバッファ24の所定領域に出力する(ステップS280)。データバッファ24の所定領域に出力する際には、ブロック自体を回転させると共にブロックの位置が回転後の位置となるように(例えば、左上隅のブロックは右上隅となるように)出力される。
【0039】
こうしてブロックを回転して出力すると、このブロックの起点復元用情報を次のブロック(右隣のブロック)の起点復元用情報に更新する(ステップS290)。即ち、次のブロックのデータが開始されるアクセス単位のファイルポインタと、解凍中間情報と、DC成分とに更新する(図11参照)。ここでのDC成分は、現在のブロックの量子化DC成分が格納される。従って、次のブロックを復元する際には、この量子化DC成分と次のブロックのデータをハフマン解凍して得られる差分値とを累計することにより次のブロックの量子化DC成分を取得することになる。
【0040】
そして、データバッファ24の所定領域に出力される回転後のブロックが蓄積されてプリンタエンジン27により印刷を実行する単位であるバンド単位となるまで、ステップS210〜S290の処理を繰り返し実行する(ステップS300)。図12は、ステップS210〜S290の処理が繰り返し実行される様子を示す説明図である。図示するように、起点ブロックとしての左端のブロックを上から順に対象としてステップS210〜S290の処理を実行することにより回転後の画像の上端のブロックが出力され、左端のブロックを対象とした処理が終了すると、左端のブロックの右隣の列のブロックを上から順に対象としてステップS210〜S290の処理を繰り返し実行する。そして、図13に示すように、蓄積された回転後のブロックがバンド単位となると、このバンド単位のデータに基づいて印刷データ生成部25により印刷データを生成してイメージバッファ26に出力し、この印刷データに基づいてプリンタエンジン27により印刷を実行する(ステップS310)。そして、画像ファイルの最後のブロックまで到達したときに(ステップS320)、この画像回転印刷処理を終了するのである。
【0041】
以上説明した実施例のプリンタ20によれば、画像ファイルに対して画像補正処理を施すと共に回転して印刷する際に、画像ファイルを先頭から順に復元して起点復元用情報やRGB値のヒストグラムを取得すると共に肌色領域などを抽出してデータバッファ24に記憶し、この肌色領域の大きさや位置,両目や口に相当する画素領域の存在に基づいて画像内容が人物画像か風景画像かを判定して自動補正処理用のパラメータを計算し、起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成すると共に計算したパラメータに従って自動補正処理を施して出力することができる。したがって、画像内容の判定を回転前の画像を用いて行なうから、より適切に画像内容を判定することができる。この結果、画像を回転して出力する際の画像補正処理をより適切に施すことができる。
【0042】
ここで、実施例のプリンタ20では、データバッファ24がデータ記憶手段に相当し、ステップS100〜S190の処理を実行する制御部21や画像処理部23が情報演算取得手段に相当し、ステップS195のオブジェクト認識処理を実行する制御部21や画像処理部23が画像内容判定手段に相当し、ステップS200〜S300の処理を実行する制御部21や画像処理部23が画像補正回転手段に相当する。また、インタフェース部22がデータ取得手段に相当し、ステップS310の処理を実行する制御部21や印刷データ生成部25,プリンタエンジン27が印刷実行手段に相当する。また、肌色領域がオブジェクト領域に相当する。
【0043】
実施例のプリンタ20では、肌色の画素からなる肌色領域を抽出して画像内容の判定に用いるものとしたが、人物の顔などに相当するオブジェクト領域を抽出することができればよいから、その他の基準で抽出するものとしてもよい。例えば、隣接する画素との輝度差に基づくエッジ度が所定の閾値より大きなエッジ画素をオブジェクト領域として抽出するものとしてもよい。
【0044】
実施例のプリンタ20では、肌色領域が画像の上辺と左右辺のいずれにも接していないことを条件の一つとして画像内容を人物画像と判定するものとしたが、上辺や左右辺に若干接していても構わない。
【0045】
実施例のプリンタ20では、肌色領域の大きさが所定の大きさ以上であるか否か、肌色領域が画像の上辺または左右辺に接しているか否か、肌色領域内に人物の両目や口に相当する画素領域が存在するか否かに基づいて画像内容を人物画像と判定するものとしたが、これに限られないのは勿論であり、これらのうち1つまたは2つの条件を満たしたときに人物画像と判定するものとしてもよいし、その他の条件を用いるものとしても構わない。
【0046】
実施例のプリンタ20では、人物画像と判定されないときには風景画像と判定するものとしたが、これに限られないのは勿論である。例えば、空色領域の配置などに基づいて風景画像と判定するものとしても構わない。さらに、人物画像と風景画像以外の画像内容を判定するものとしても差し支えない。
【0047】
実施例のプリンタ20では、JPEG方式で圧縮された画像ファイルを例に説明したが、その他の方式で圧縮された画像ファイルに適用することができるのは勿論である。この場合、その圧縮方式に応じて、画像ファイルを所定位置(例えば、左端の画素)から復元するために必要な情報を起点復元用情報として記憶するものとすればよい。
【0048】
実施例のプリンタ20では、右方向に90°回転する場合を具体例として説明したが、これに限られないのは勿論である。例えば、180°回転する場合には、起点ブロックとしての左端のブロックを下から順に復元することにより回転後の画像の上端のブロックから順に出力することができる。さらに、左方向に90°回転する場合には、図14に例示するように、起点ブロックとして、左端のブロックに加え、画像ファイルの略中央に位置する列を起点ブロックとし、回転後の画像の上半分については略中央に位置する列の起点ブロックを起点として復元し、回転後の画像の下半分については左端の起点ブロックを起点として復元するものとすればよい。
【0049】
実施例のプリンタ20では、画像ファイルを先頭から順に復元して取得した起点復元用情報を用いて画像ファイルを起点ブロックから復元することにより回転後の画像を上端から順に生成するものとしたが、必ずしもこのように画像の回転を行なわなくても構わないのは勿論であり、例えば、画像全体を復元してから回転する処理を行なうものとしても差し支えない。
【0050】
実施例では、画像内容の判定を回転前の画像を用いて行なって画像補正処理を施す本発明をプリンタ20の形態として説明したが、こうした画像補正処理を施す画像処理装置の形態としてもよい。また、こうした画像処理方法の形態としたり画像処理用プログラムの形態とすることもできる。
【0051】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。
【図面の簡単な説明】
【0052】
【図1】本発明の画像処理装置を搭載したプリンタ20の構成の概略を示す構成図。
【図2】画像回転印刷処理の一例を示すフローチャート。
【図3】画像ファイルのブロックとアクセス単位との関係を示す説明図。
【図4】起点ブロックの一例を示す説明図。
【図5】解凍中間情報を概念的に説明するための説明図。
【図6】起点復元用情報の一例を示す説明図。
【図7】オブジェクト認識処理の一例を示すフローチャート。
【図8】肌色領域の一例を示す説明図。
【図9】両目や口に相当する画素領域の一例を示す説明図。
【図10】風景画像の空色領域の一例を示す説明図。
【図11】起点復元用情報を更新する様子の一例を示す説明図。
【図12】ステップS210〜S290の処理が実行される様子を示す説明図。
【図13】蓄積された回転後のブロックがバンド単位となる様子を示す説明図。
【図14】変形例の起点ブロックの一例を示す説明図。
【符号の説明】
【0053】
20 プリンタ、21 制御部、22 インタフェース部、23 画像処理部、24 データバッファ、25 印刷データ生成部、26 イメージバッファ、27 プリンタエンジン、30 記憶媒体、31 デジタルスチルカメラ、32 パーソナルコンピュータ。
【特許請求の範囲】
【請求項1】
画像に所定の画像補正処理を施して出力する画像処理装置であって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定手段と、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転手段と、
を備える画像処理装置。
【請求項2】
前記画像内容判定手段は、所定の肌色の画素により構成される領域を前記オブジェクト領域として抽出し該抽出したオブジェクト領域の前記画像全体に対する配置に基づいて該画像の画像内容を人物画像と判定する手段である請求項1記載の画像処理装置。
【請求項3】
前記画像内容判定手段は、前記抽出したオブジェクト領域の該画像の上辺および左右辺に接する量が所定量以下であることを条件の一つとして該画像の画像内容を人物画像と判定する手段である請求項1または2記載の画像処理装置。
【請求項4】
前記画像内容判定手段は、前記抽出したオブジェクト領域内に、人物の両目に相当する横方向に並ぶ領域と該領域より下方向に位置する人物の口に相当する領域とが存在することを条件の一つとして、前記画像の画像内容を人物画像と判定する手段である請求項1ないし3いずれか記載の画像処理装置。
【請求項5】
前記画像内容判定手段は、前記画像の画像内容が人物画像と判定されないときには、該画像の画像内容を風景画像と判定する手段である請求項1ないし4いずれか記載の画像処理装置。
【請求項6】
前記画像補正回転手段は、前記画像の画像内容が風景画像のときには、所定の空色の画素が該画像の下辺に接していないことを条件の一つとして、該所定の空色を補正する空色補正処理を該画像に施す手段である請求項1ないし5いずれか記載の画像処理装置。
【請求項7】
請求項1ないし6いずれか記載の画像処理装置であって、
前記画像は、所定方式で圧縮されてなり、
データを記憶するデータ記憶手段と、
前記指定された画像を先頭から順に少なくとも前記画素情報を取得可能な段階まで復元し該取得した画素情報を前記データ記憶手段に記憶すると共に、該画像の復元過程において、該画像の所定位置を起点として該画像を復元するための起点復元用情報を取得して前記データ記憶手段に記憶する情報演算取得手段と、を備え、
前記画像内容判定手段は、前記データ記憶手段に記憶された画素情報に基づいて前記画像に含まれるオブジェクト領域を抽出する手段であり、
前記画像補正回転手段は、前記データ記憶手段に記憶された起点復元用情報に基づいて前記所定位置を起点として前記画像を復元することにより回転後の画像を上端から順に生成すると共に該生成された回転後の画像に前記所定の画像補正処理を施して出力する手段である、
画像処理装置。
【請求項8】
通信可能な記憶媒体から前記画像を取得するデータ取得手段と、
請求項1ないし7いずれか記載の画像処理装置と、
該画像処理装置から出力される画像を印刷する印刷実行手段と、
を備えるプリンタ。
【請求項9】
画像に所定の画像補正処理を施して出力する画像処理方法であって、
(a)指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定し、
(b)該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する、
画像処理方法。
【請求項10】
画像に所定の画像補正処理を施して出力する画像処理用プログラムであって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定モジュールと、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転モジュールと、
を備える画像処理用プログラム。
【請求項1】
画像に所定の画像補正処理を施して出力する画像処理装置であって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定手段と、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転手段と、
を備える画像処理装置。
【請求項2】
前記画像内容判定手段は、所定の肌色の画素により構成される領域を前記オブジェクト領域として抽出し該抽出したオブジェクト領域の前記画像全体に対する配置に基づいて該画像の画像内容を人物画像と判定する手段である請求項1記載の画像処理装置。
【請求項3】
前記画像内容判定手段は、前記抽出したオブジェクト領域の該画像の上辺および左右辺に接する量が所定量以下であることを条件の一つとして該画像の画像内容を人物画像と判定する手段である請求項1または2記載の画像処理装置。
【請求項4】
前記画像内容判定手段は、前記抽出したオブジェクト領域内に、人物の両目に相当する横方向に並ぶ領域と該領域より下方向に位置する人物の口に相当する領域とが存在することを条件の一つとして、前記画像の画像内容を人物画像と判定する手段である請求項1ないし3いずれか記載の画像処理装置。
【請求項5】
前記画像内容判定手段は、前記画像の画像内容が人物画像と判定されないときには、該画像の画像内容を風景画像と判定する手段である請求項1ないし4いずれか記載の画像処理装置。
【請求項6】
前記画像補正回転手段は、前記画像の画像内容が風景画像のときには、所定の空色の画素が該画像の下辺に接していないことを条件の一つとして、該所定の空色を補正する空色補正処理を該画像に施す手段である請求項1ないし5いずれか記載の画像処理装置。
【請求項7】
請求項1ないし6いずれか記載の画像処理装置であって、
前記画像は、所定方式で圧縮されてなり、
データを記憶するデータ記憶手段と、
前記指定された画像を先頭から順に少なくとも前記画素情報を取得可能な段階まで復元し該取得した画素情報を前記データ記憶手段に記憶すると共に、該画像の復元過程において、該画像の所定位置を起点として該画像を復元するための起点復元用情報を取得して前記データ記憶手段に記憶する情報演算取得手段と、を備え、
前記画像内容判定手段は、前記データ記憶手段に記憶された画素情報に基づいて前記画像に含まれるオブジェクト領域を抽出する手段であり、
前記画像補正回転手段は、前記データ記憶手段に記憶された起点復元用情報に基づいて前記所定位置を起点として前記画像を復元することにより回転後の画像を上端から順に生成すると共に該生成された回転後の画像に前記所定の画像補正処理を施して出力する手段である、
画像処理装置。
【請求項8】
通信可能な記憶媒体から前記画像を取得するデータ取得手段と、
請求項1ないし7いずれか記載の画像処理装置と、
該画像処理装置から出力される画像を印刷する印刷実行手段と、
を備えるプリンタ。
【請求項9】
画像に所定の画像補正処理を施して出力する画像処理方法であって、
(a)指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定し、
(b)該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する、
画像処理方法。
【請求項10】
画像に所定の画像補正処理を施して出力する画像処理用プログラムであって、
指定された画像の回転を伴う出力指示がなされたときに、該画像の画素情報に基づいて該画像に含まれるオブジェクト領域を抽出し該抽出したオブジェクト領域の該画像全体に対する配置に基づいて該画像の画像内容を判定する画像内容判定モジュールと、
該判定された画像内容に基づいて前記指定された画像に所定の画像補正処理を施すと共に該画像を回転して出力する画像補正回転モジュールと、
を備える画像処理用プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2006−99280(P2006−99280A)
【公開日】平成18年4月13日(2006.4.13)
【国際特許分類】
【出願番号】特願2004−282536(P2004−282536)
【出願日】平成16年9月28日(2004.9.28)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
【公開日】平成18年4月13日(2006.4.13)
【国際特許分類】
【出願日】平成16年9月28日(2004.9.28)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
[ Back to top ]