(57)【要約】【課題】  角度補正した画像を自動補正して印刷する場合に、角度補正量による補正結果のばらつきを抑制する。【解決手段】  角度補正によって生じる空白領域に、角度補正によって領域外にはみ出した領域に含まれる画素、若しくは無彩色画素を合成した合成画像を生成する。この合成画像のデータを印刷用画像データとして、自動補正機能を有する印刷装置に供給する。【選択図】  図９
2008236221.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置に印刷用画像データを供給する画像供給装置であって、
原画像のデータから印刷用画像データを生成する生成手段と、
接続された印刷装置に前記印刷用画像データを供給するための通信手段とを有し、
前記生成手段が、前記印刷用画像データを生成する際に、前記原画像を回転させる必要がある場合、前記原画像を回転させて回転画像を得ると共に、回転によって前記原画像に対応する領域からはみ出す領域の画素又は無彩色画素を、前記回転画像の前記原画像に対応する領域中に生じる空白領域に含めた印刷用画像データを生成することを特徴とする画像供給装置。
【請求項２】
前記生成手段が、前記はみ出す領域を幾何学変換して部分画像を生成し、生成した部分画像を、前記空白領域のうち対応する形状の領域に合成することにより前記印刷用画像データを生成することを特徴とする請求項１記載の画像供給装置。
【請求項３】
前記無彩色画素は、前記はみ出し領域全体の画素の明るさの平均値に等しい濃度を有することを特徴とする請求項１に記載の画像供給装置。
【請求項４】
印刷装置に印刷用画像データを供給する画像供給装置であって、
原画像のデータから印刷用画像データを生成する生成手段と、
接続された印刷装置に前記印刷用画像データを供給するための通信手段とを有し、
前記生成手段が、前記印刷用画像データを生成する際に、前記原画像を回転させる必要がある場合、前記原画像を回転させて回転画像を得ると共に、前記原画像のデータからヒストグラムを生成し、前記回転画像と前記ヒストグラムの情報とを用いて前記印刷用画像データを生成することを特徴とする画像供給装置。
【請求項５】
印刷装置に印刷用画像データを供給する画像供給装置であって、
原画像のデータから印刷用画像データを生成する生成手段と、
接続された印刷装置に前記印刷用画像データを供給するための通信手段とを有し、
前記生成手段が、前記印刷用画像データを生成する際に、前記原画像を回転させる必要がある場合、前記原画像を回転させて回転画像を得ると共に、前記回転画像と前記回転画像が前記原画像をどのように回転させて得られたかを示す情報とを用いて前記印刷用画像データを生成することを特徴とする画像供給装置。
【請求項６】
前記印刷装置で前記印刷用画像データを印刷する際の印刷設定において、前記印刷装置における自動画像補正の指定がなされていない場合には、前記生成手段が前記回転画像を前記印刷用画像データとして生成することを特徴とする請求項１乃至請求項５のいずれか１項に記載の画像供給装置。
【請求項７】
印刷装置に印刷用画像データを供給する画像供給装置であって、
原画像のデータから印刷用画像データを生成する生成手段と、
画像データの自動補正を行う補正手段と、
接続された印刷装置に前記印刷用画像データを供給するための通信手段とを有し、
前記生成手段が、前記印刷用画像データを生成する際に、前記原画像を回転させる必要がある場合、前記原画像を回転させて回転画像を得ると共に、前記印刷装置で前記印刷用画像データを印刷する際の印刷設定において前記印刷装置における自動画像補正の指定がなされている場合には、前記印刷設定における自動画像補正の指定を解除し、前記補正手段を用いて自動補正を適用した回転画像を前記印刷用画像データとして生成することを特徴とする画像供給装置。
【請求項８】
原画像を回転して得られた回転画像のデータと、前記原画像のヒストグラムとを画像供給装置から受信する受信手段と、
前記ヒストグラムに基づいて、前記回転画像のデータの補正を行なう補正手段と、
前記補正手段が補正した前記回転画像のデータを用いて印刷出力を行う出力手段とを有することを特徴とする印刷装置。
【請求項９】
原画像を回転して得られた回転画像のデータと、前記回転画像を得るために前記原画像に適用した回転処理の内容を示す情報とを画像供給装置から受信する受信手段と、
前記回転処理の内容を示す情報と、前記回転画像のサイズとから、前記回転画像に含まれる空白領域を特定する特定手段と、
前記回転画像のうち、前記空白領域の画素の情報を用いずに前記回転画像のデータの補正を行なう補正手段と、
前記補正手段が補正した前記回転画像のデータを用いて印刷出力を行う出力手段とを有することを特徴とする印刷装置。
【請求項１０】
請求項４記載の画像供給装置と請求項８記載の印刷装置とが接続されてなることを特徴とする印刷システム。
【請求項１１】
請求項５記載の画像供給装置と請求項９記載の印刷装置とが接続されてなることを特徴とする印刷システム。
【請求項１２】
請求項１、請求項２又は請求項７のいずれか１項に記載の画像供給装置と、前記印刷用画像データの自動補正手段を有する印刷装置とが接続されてなることを特徴とする印刷システム。
【請求項１３】
印刷装置に印刷用画像データを供給する画像供給装置の制御方法であって、
原画像のデータから印刷用画像データを生成する生成ステップと、
接続された印刷装置に、通信手段を通じて前記印刷用画像データを供給する通信ステップとを有し、
前記生成ステップが、前記印刷用画像データを生成する際に、前記原画像を回転させる必要がある場合、前記原画像を回転させて回転画像を得ると共に、回転によって前記原画像に対応する領域からはみ出す領域の画素又は無彩色画素を、前記回転画像の前記原画像に対応する領域中に生じる空白領域に含めた印刷用画像データを生成することを特徴とする画像供給装置の制御方法。
【請求項１４】
印刷装置に印刷用画像データを供給する画像供給装置の制御方法であって、
原画像のデータから印刷用画像データを生成する生成ステップと、
接続された印刷装置に、通信手段を通じて前記印刷用画像データを供給する通信ステップとを有し、
前記生成ステップが、前記印刷用画像データを生成する際に、前記原画像を回転させる必要がある場合、前記原画像を回転させて回転画像を得ると共に、前記原画像のデータからヒストグラムを生成し、前記回転画像と前記ヒストグラムの情報とを用いて前記印刷用画像データを生成することを特徴とする画像供給装置の制御方法。
【請求項１５】
印刷装置に印刷用画像データを供給する画像供給装置の制御方法であって、
原画像のデータから印刷用画像データを生成する生成ステップと、
接続された印刷装置に、通信手段を通じて前記印刷用画像データを供給する通信ステップとを有し、
前記生成ステップが、前記印刷用画像データを生成する際に、前記原画像を回転させる必要がある場合、前記原画像を回転させて回転画像を得ると共に、前記回転画像と前記回転画像が前記原画像をどのように回転させて得られたかを示す情報とを用いて前記印刷用画像データを生成することを特徴とする画像供給装置の制御方法。
【請求項１６】
原画像を回転して得られた回転画像のデータと、前記原画像のヒストグラムとを、受信手段を通じて画像供給装置から受信する受信ステップと、
前記ヒストグラムに基づいて、前記回転画像のデータの補正を行なう補正ステップと、
前記補正ステップで補正した前記回転画像のデータを用い、出力手段によって印刷出力を行う出力ステップとを有することを特徴とする印刷装置の制御方法。
【請求項１７】
原画像を回転して得られた回転画像のデータと、前記回転画像を得るために前記原画像に適用した回転処理の内容を示す情報とを、受信手段を通じて画像供給装置から受信する受信ステップと、
前記回転処理の内容を示す情報と、前記回転画像のサイズとから、前記回転画像に含まれる空白領域を特定する特定ステップと、
前記回転画像のうち、前記空白領域の画素の情報を用いずに前記回転画像のデータの補正を行なう補正ステップと、
前記補正ステップで補正した前記回転画像のデータを用い、出力手段によって印刷出力を行う出力ステップとを有することを特徴とする印刷装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像供給装置、印刷装置及びそれらの制御方法、並びにそれらが接続されてなる印刷システムに関する。
【背景技術】
【０００２】
画像供給装置の一例としてのデジタルスチルカメラ（以下ＤＳＣ）が保持する画像データを印刷装置の一例としてのプリンタで印刷する際、従来はパーソナルコンピュータ（ＰＣ）が必要であった。しかし、近年においては、ＤＳＣとプリンタとを、ＵＳＢ等の通信インタフェースを介して接続し、ＤＳＣから画像データを直接プリンタに送信して印刷する、所謂カメラダイレクトプリントシステムも一般的となってきている。
【０００３】
このようなカメラダイレクトプリントシステムを実現するための、ＤＳＣとプリンタとの間の通信規格においては、ＪＰＥＧ形式やＴＩＦＦ形式などの画像ファイルをＤＳＣからプリンタへ転送するように定められている。
【０００４】
近年、画像の明るさ・コントラスト・ホワイトバランスなどを自動補正する機能を有するプリンタが実現されており、ＤＳＣから画像データをこのようなプリンタに出力するだけで、自動補正された画像出力を得ることも可能になっている。
プリンタが備える画像処理機能は、赤目補正、逆光補正、ノイズリダクション等、年々増加する傾向にある。その一方、ＤＳＣにも同様の画像補正機能を備えたものが登場し、ＤＳＣ側で補正処理した画像データをプリンタに出力することも行われる様になってきている。
【特許文献１】特開2005-110000号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
水平線や地平線、建造物の縁など、水平であるべきものの高さが、画像の右端と左端で異なった（傾いた）撮影画像が得られてしまうことがある。
このような失敗画像の修正方法として、例えば水平線が水平となるように画像を回転させるとともに、回転により発生する空白領域が印刷されないようにトリミング指定して印刷する方法が知られている。
【０００６】
カメラダイレクトプリントシステムにおいては、元の画像、トリミング位置情報、フチあり／フチなしのレイアウト情報をＤＳＣからプリンタへ送信し、プリンタ側でこれら情報に基づいた画像処理を行うことで、トリミング印刷機能が実現される。
【０００７】
プリンタが備える自動画像補正処理の多くは、画像ファイルに含まれるEXIF情報や、画像データから生成したヒストグラムを、明るさ・コントラスト・ホワイトバランス等の調整データとして使用しているのが一般的である。そのため、自動画像補正機能を備えるプリンタに、ＤＳＣで画像補正済の画像を出力した場合、ＤＳＣで画像補正しないでプリンタに出力した場合と印刷結果が異なってしまうという課題がある。
【０００８】
例えば、トリミング印刷において、ＤＳＣがトリミング範囲を切り出してプリンタに送信した場合、同じ画像から切り出した領域でも、切り出す場所によって画素のヒストグラムが変わってしまうために、明るさ、コントラストが安定しないという課題がある。
【０００９】
また、ＤＳＣで回転処理（角度補正）を行なった画像を印刷する場合は、ＤＳＣからプリンタへ回転後の画像およびトリミング情報を送信する。しかし、プリンタ側で画像処理を行なう場合、回転処理によって欠けてしまい、補間できない領域（空白領域）が含まれるため、やはり画像のヒストグラムを正しく求めることができない。さらに、空白領域の大きさは回転量に依存して変化するため、同じ画像を印刷する場合でも回転量の大きさによりヒストグラムが変化する。この結果、プリンタが自動補正した画像の明るさ、コントラストや、色味が安定しないという問題が生じる。
【００１０】
本発明はこのような従来技術の問題点に鑑みてなされたもので、角度補正した画像を自動補正して印刷する場合に、角度補正量による補正結果のばらつきを抑制可能な画像供給装置、印刷装置及びそれらの制御方法並びに印刷システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述の目的は、印刷装置に印刷用画像データを供給する画像供給装置であって、原画像のデータから印刷用画像データを生成する生成手段と、接続された印刷装置に印刷用画像データを供給するための通信手段とを有し、生成手段が、印刷用画像データを生成する際に、原画像を回転させる必要がある場合、原画像を回転させて回転画像を得ると共に、回転によって原画像に対応する領域からはみ出す領域の画素又は無彩色画素を、回転画像の原画像に対応する領域中に生じる空白領域に含めた印刷用画像データを生成することを特徴とする画像供給装置によって達成される。
【００１２】
また、上述の目的は、印刷装置に印刷用画像データを供給する画像供給装置であって、原画像のデータから印刷用画像データを生成する生成手段と、接続された印刷装置に印刷用画像データを供給するための通信手段とを有し、生成手段が、印刷用画像データを生成する際に、原画像を回転させる必要がある場合、原画像を回転させて回転画像を得ると共に、原画像のデータからヒストグラムを生成し、回転画像とヒストグラムの情報とを用いて印刷用画像データを生成することを特徴とする画像供給装置によっても達成される。
【００１３】
また、上述の目的は、印刷装置に印刷用画像データを供給する画像供給装置であって、原画像のデータから印刷用画像データを生成する生成手段と、接続された印刷装置に印刷用画像データを供給するための通信手段とを有し、生成手段が、印刷用画像データを生成する際に、原画像を回転させる必要がある場合、原画像を回転させて回転画像を得ると共に、回転画像と、回転画像が原画像をどのように回転させて得られたかを示す情報とを用いて印刷用画像データを生成することを特徴とする画像供給装置によっても達成される。
【００１４】
また、上述の目的は、印刷装置に印刷用画像データを供給する画像供給装置であって、原画像のデータから印刷用画像データを生成する生成手段と、画像データの自動補正を行う補正手段と、接続された印刷装置に印刷用画像データを供給するための通信手段とを有し、生成手段が、印刷用画像データを生成する際に、原画像を回転させる必要がある場合、原画像を回転させて回転画像を得ると共に、印刷装置で印刷用画像データを印刷する際の印刷設定において印刷装置における自動画像補正の指定がなされている場合には、印刷設定における自動画像補正の指定を解除し、補正手段を用いて自動補正を適用した回転画像を印刷用画像データとして生成することを特徴とする画像供給装置によっても達成される。
【００１５】
また、上述の目的は、原画像を回転して得られた回転画像のデータと、原画像のヒストグラムを画像供給装置から受信する受信手段と、ヒストグラムに基づいて、回転画像のデータの補正を行なう補正手段と、補正手段が補正した回転画像のデータを用いて印刷出力を行う出力手段とを有することを特徴とする印刷装置によっても達成される。
【００１６】
また、上述の目的は、原画像を回転して得られた回転画像のデータと、回転画像を得るために原画像に適用した回転処理の内容を示す情報とを画像供給装置から受信する受信手段と、回転処理の内容を示す情報と、回転画像のサイズとから、回転画像に含まれる空白領域を特定する特定手段と、回転画像のうち、空白領域の画素の情報を用いずに回転画像のデータの補正を行なう補正手段と、補正手段が補正した回転画像のデータを用いて印刷出力を行う出力手段とを有することを特徴とする印刷装置によっても達成される。
【００１７】
また、上述の目的は、本発明の画像供給装置と、印刷用画像データの自動補正機能を有する印刷装置とが接続されてなることを特徴とする印刷システムによっても達成される。
【００１８】
また、上述の目的は、印刷装置に印刷用画像データを供給する画像供給装置の制御方法であって、原画像のデータから印刷用画像データを生成する生成ステップと、接続された印刷装置に、通信手段を通じて印刷用画像データを供給する通信ステップとを有し、生成ステップが、印刷用画像データを生成する際に、原画像を回転させる必要がある場合、原画像を回転させて回転画像を得ると共に、回転によって原画像に対応する領域からはみ出す領域の画素又は無彩色画素を、回転画像の原画像に対応する領域中に生じる空白領域に含めた印刷用画像データを生成することを特徴とする画像供給装置の制御方法によっても達成される。
【００１９】
また、上述の目的は、印刷装置に印刷用画像データを供給する画像供給装置の制御方法であって、原画像のデータから印刷用画像データを生成する生成ステップと、接続された印刷装置に、通信手段を通じて印刷用画像データを供給する通信ステップとを有し、生成ステップが、印刷用画像データを生成する際に、原画像を回転させる必要がある場合、原画像を回転させて回転画像を得ると共に、原画像のデータからヒストグラムを生成し、回転画像とヒストグラムの情報とを用いて印刷用画像データを生成することを特徴とする画像供給装置の制御方法によっても達成される。
【００２０】
また、上述の目的は、印刷装置に印刷用画像データを供給する画像供給装置の制御方法であって、原画像のデータから印刷用画像データを生成する生成ステップと、接続された印刷装置に、通信手段を通じて印刷用画像データを供給する通信ステップとを有し、生成ステップが、印刷用画像データを生成する際に、原画像を回転させる必要がある場合、原画像を回転させて回転画像を得ると共に、回転画像と回転画像が原画像をどのように回転させて得られたかを示す情報とを用いて印刷用画像データを生成することを特徴とする画像供給装置の制御方法によっても達成される。
【００２１】
また、上述の目的は、原画像を回転して得られた回転画像のデータと、原画像のヒストグラムとを、受信手段を通じて画像供給装置から受信する受信ステップと、ヒストグラムに基づいて、回転画像のデータの補正を行なう補正ステップと、補正ステップで補正した回転画像のデータを用い、出力手段によって印刷出力を行う出力ステップとを有することを特徴とする印刷装置の制御方法によっても達成される。
【００２２】
また、上述の目的は、原画像を回転して得られた回転画像のデータと、回転画像を得るために原画像に適用した回転処理の内容を示す情報とを、受信手段を通じて画像供給装置から受信する受信ステップと、回転処理の内容を示す情報と、回転画像のサイズとから、回転画像に含まれる空白領域を特定する特定ステップと、回転画像のうち、空白領域の画素の情報を用いずに回転画像のデータの補正を行なう補正ステップと、補正ステップで補正した回転画像のデータを用い、出力手段によって印刷出力を行う出力ステップとを有することを特徴とする印刷装置の制御方法によっても達成される。
【発明の効果】
【００２３】
このような構成により、本発明によれば、角度補正した画像を自動補正して印刷する場合に、角度補正量による補正結果のばらつきを抑制することが可能となる。
【発明を実施するための最良の形態】
【００２４】
（第１の実施形態）
以下、添付図面を参照して本発明の好適な実施形態を詳しく説明する。
尚、本実施形態は、画像供給装置の一例としてのデジタルカメラ（ＤＳＣ）と、印刷装置の一例としてのプリンタとからなる印刷システムにおいて、PictBridge規格に準拠した手順でダイレクトプリントを実現した場合について説明する。しかし、本発明を適用可能な印刷システムは、このような特定の構成や手順には限定されない。
【００２５】
図１は、本発明の実施形態に係る、ダイレクトプリントに対応したプリンタ１０００の概観斜視図である。このプリンタ１０００は、ホストコンピュータ（ＰＣ）からデータを受信して印刷する通常のＰＣプリンタとしての機能を備える。さらに、プリンタ１０００は、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷したり、或いはデジタルカメラやＰＤＡなどからの画像データを受信して印刷する機能も備えている。
【００２６】
図１において、本実施形態に係るプリンタ１０００の外殻をなす本体は、下ケース１００１、上ケース１００２、アクセスカバー１００３及び排出トレイ１００４の外装部材を有している。また、下ケース１００１は、プリンタ１０００の略下半部を、上ケース１００２は本体の略上半部をそれぞれ形成している。下ケース１００１と上ケース１００２の組合せにより形成される空間に、後述の各機構が収納される。さらに、排出トレイ１００４は、その一端部が下ケース１００１に回転自在に保持され、その回転によって下ケース１００１の前面部に形成される開口部を開閉させ得るようになっている。
【００２７】
このため、印刷実行時には、排出トレイ１００４を前面側へと回転させて開口部を開いた状態にすることで、印刷済の記録媒体（普通紙、専用紙、樹脂シート等を含む）が排出可能となる。また、排出トレイ１００４には、排出された記録媒体が積載可能である。また排出トレイ１００４には、２枚の補助トレイ１００４ａ，１００４ｂが収納されており、必要に応じて補助トレイ１００４ｂ，１００４ａを引き出すことにより、排紙トレイの大きさを３段階に調節できる。
【００２８】
アクセスカバー１００３は、その一端が上ケース１００２に回転自在に保持され、上面に形成される開口部を開閉し得るように構成されている。アクセスカバー１００３を開くことによって内部に収納されている記録ヘッドカートリッジ（不図示）或いはインクタンク（不図示）等の交換が可能となる。尚、ここでは特に図示しないが、アクセスカバー１００３の裏面にはアクセスカバー１００３の開閉に応じて本体に設けられたカバー開閉レバーを回転させる突起が形成されている。従って、カバー開閉レバーの回転位置をマイクロスイッチなどで検出することにより、アクセスカバー１００３の開閉状態が検出可能である。
【００２９】
また、上ケース１００２の上面には、電源キー１００５が設けられている。また、上ケース１００２の右側には、表示部１００６や各種キースイッチ等を備える操作パネル１０１０が設けられている。この操作パネル１０１０の構成については、図２を参照して詳しく後述する。
【００３０】
１００７は自動給送部で、シート状の記録媒体を装置本体内へと自動的に給送する。１００８は紙間選択レバーで、プリントヘッドと記録媒体との間隔を調整するためのレバーである。１００９はカードスロットで、ここに装着されたメモリカードから、メモリカードに記憶されている画像データを読み出すことができる。プリンタ１０００の本体に着脱可能なビューワ（表示部）１０１１は、メモリカードに記憶されている画像の中からプリントしたい画像を指定する場合などに、１コマ毎の画像やインデックス画像などを表示するのに使用される。１０１２は後述するデジタルカメラを接続するためのＵＳＢ端子である。また、このプリンタ１０００の後面には、パーソナルコンピュータ（ＰＣ）を接続するためのＵＳＢコネクタが設けられている。
【００３１】
図２は本実施形態に係るプリンタ１０００の操作パネル１０１０の概観図である。
図２において、表示部１００６には、その左右に印刷されている項目に関するデータを各種設定するためのメニュー項目が表示される。ここに表示される項目としては、例えば、以下のようなものを例示できる。複数ある写真画像ファイルの内、印刷したい写真画像の先頭番号、指定コマ番号（開始コマ指定／印刷コマ指定）、印刷を終了したい最後の写真番号（終了）。印刷部数（部数）、印刷に使用する記録媒体の種類（用紙種類）、１枚の記録媒体に印刷する写真の枚数設定（レイアウト）、印刷の品位の指定（品位）、撮影した日付を印刷するかどうかの指定（日付印刷）。画像を補正して印刷するかどうかの指定（画像補正）、印刷に必要な記録媒体の枚数表示（用紙枚数）等がある。
【００３２】
これら各項目は、カーソルキー２００１を用いて選択、或いは指定することができる。２００２はモードキーで、このキーを押下する毎に、印刷の種類（インデックス印刷、全コマ印刷、１コマ印刷、指定コマ印刷等）を切り替えることができ、これに応じてＬＥＤ２００３のうち、対応する１つが点灯する。２００４はメンテナンスキーで、プリントヘッドのクリーニング等、プリンタのメンテナンスを指示するためのキーである。２００５は印刷開始キーで、印刷の開始を指示する時、或いはメンテナンスの設定の決定を指示するためのキーである。２００６は印刷中止キーで、印刷やメンテナンスの中止を指示するためのキーである。
【００３３】
図３は、本実施形態に係るプリンタの制御に係る主要部の構成を示すブロック図である。図３において、前述の図面と共通する部分は同じ参照数字を付与して、それらの説明を省略する。
【００３４】
図３において、３０００は制御部（制御基板）を示している。３００１はＡＳＩＣ（専用カスタムＬＳＩ）を示している。３００２はＤＳＰ（デジタル信号処理プロセッサ）で、内部にＣＰＵを有し、後述する各種制御処理及び、輝度信号（ＲＧＢ）から濃度信号（ＣＭＹＫ）への変換、スケーリング、ガンマ変換、誤差拡散等の画像処理等を担当している。ＤＳＰ３００２は、画像の自動補正を行う機能（自動画像補正機能）を提供する。３００３はメモリで、ＤＳＰ（ＣＰＵ）３００２の制御プログラムを記憶するプログラムメモリ３００３ａ、及び実行時のプログラムを記憶するＲＡＭエリア、画像データなどを記憶するワークメモリとして機能するメモリエリアを有している。３００４はプリンタエンジンで、ここでは、複数色のカラーインクを用いてカラー画像を印刷するインクジェットプリンタのプリンタエンジンが搭載されている。
【００３５】
３００５はデジタルカメラ３０１２を接続するためのポートとしてのＵＳＢコネクタである。３００６はビューワ１０１１を接続するためのコネクタである。３００８はＵＳＢハブ(USB HUB)で、このプリンタ１０００がＰＣ３０１０からのデータに基づいて印刷を行う際には、ＰＣ３０１０からのデータをそのままスルーし、ＵＳＢ３０２１を介してプリンタエンジン３００４に出力する。これにより、接続されているＰＣ３０１０は、プリンタエンジン３００４と直接、データや信号のやり取りを行って印刷を実行することができる。この場合、プリンタ１０００は一般的なＰＣ用のプリンタとして機能する。３００９は電源コネクタで、電源３０１９により、商用電源から変換された直流電圧をプリンタへ供給している。ＰＣ３０１０は一般的なパーソナルコンピュータ、３０１１は前述したメモリカードである。
【００３６】
尚、この制御部３０００とプリンタエンジン３００４との間の信号のやり取りは、前述したＵＳＢ３０２１又はＩＥＥＥ１２８４バス３０２２を介して行われる。
【００３７】
＜デジタルカメラの概要説明＞
図４は、本実施形態に係るＤＳＣ（デジタルカメラ）３０１２の構成例を示すブロック図である。
ＣＰＵ３１００は、ＲＯＭ３１０１に記憶される制御プログラムを実行することにより、ＤＳＣ３０１２全体の制御を司る。ＲＡＭ３１０２はＣＰＵ３１００のワークエリアとして使用される。操作部３１０３はユーザがＤＳＣ３０１２に各種指示を与えるためのスイッチやボタンから構成され、操作部３１０３には、シャッターボタン、モード切替スイッチ、選択スイッチやカーソルキー等が含まれている。
【００３８】
表示部２７００は、現時点で撮影している映像や、撮像されてメモリカードに記憶されている画像を表示したり、各種設定を行う際のメニューを表示するために使用される。光学ユニット３１０５は、主としてレンズ及びその駆動系で構成される。ＣＣＤ素子３１０６は光学ユニット３１０５が結像した光学像を画素単位の電気信号に変換する。ドライバ３１０７はＣＰＵ３１００の制御下において光学ユニット３１０５を駆動制御する。コネクタ３１０８はメモリカード等の記憶媒体３１０９をＤＳＣ３０１２と電気的に接続する。ＵＳＢインタフェース３１１０はＰＣ３０１０やプリンタ１０００などの外部装置との通信インタフェースである。ＤＳＣ３０１２には通常スレーブ側のＵＳＢインタフェースが設けられる。
【００３９】
＜ダイレクトプリント概要説明＞
図５は、本実施形態の印刷システムにおいて、ＤＳＣ３０１２からプリンタ１０００に対してプリント要求を発行して印刷を行う場合の処理手順を説明する図である。上述のように本実施形態において、ＤＳＣ３０１２とプリンタ１０００との間の通信は、PictBridge規格に準拠した手順で行われる。
【００４０】
この処理手順は、プリンタ１０００とＤＳＣ３０１２とがＵＳＢケーブルを介して接続された後、或は無線により通信を行うことにより互いにPictBridgeに準拠した機能をサポートすることを確認した後に実行される。まずＤＳＣ３０１２は「ConfigurePrintService」アクションをプリンタ１０００に送信して、プリンタ１０００の状態をチェックする（Ｓ６００）。これに対してプリンタ１０００から、その時点でのプリンタ１０００の状態（ここでは「アイドル」状態）が通知される（Ｓ６０１）。ここでは「アイドル」状態であるため、ＤＳＣ３０１２はプリンタ１０００の能力情報を「Get_Capability」アクションにより問合せる（Ｓ６０２）。そして、ＤＳＣ３０１２は、プリンタの能力に応じたプリント開始要求（StartJobアクション）を発行する（Ｓ６０３）。尚、このプリント開始要求は、Ｓ６０１で受信するプリンタ１０００からのステータス情報の中の「newJobOK」が「True（真）」になっていることを条件に、ＤＳＣ３０１２からプリンタ１０００に発行される。
【００４１】
このプリント開始要求に対してプリンタ１０００は、印刷が指示された画像データのファイルＩＤに基づいてファイル情報を「GetFileInfo」アクションによりＤＳＣ３０１２に要求する（Ｓ６０４）。これに応答してＤＳＣ３０１２から、そのファイル情報（FileInfo）が送信される。このファイル情報にはファイル容量等の情報が含まれる。そしてプリンタ１０００がそのファイル情報を受信して処理可能であると判断すると、そのファイル情報を「GetFile」アクションによりＤＳＣ３０１２に要求する（Ｓ６０５）。これにより、要求されたファイルの画像データ（ImageFile）がＤＳＣ３０１２からプリンタ１０００に送られる。
【００４２】
プリンタ１０００が画像データを受信してプリント処理を開始すると、「印刷中（Printing）」を示すステータス情報が、プリンタ１０００からＤＳＣ３０１２に「NotifyDeviceStatus」アクションによって送られる（Ｓ６０６）。そして１頁のプリント処理が終了すると、次のページの処理開始時にプリンタ１０００から「NotifyJobStatus」アクションが発行され、ＤＳＣ３０１２へ通知される（Ｓ６０７）。そして１頁だけの印刷であれば、そのプリント要求した１頁の印刷が終了すると、プリンタ１０００から「NotifyDviceStatus」アクションが発行され、プリンタ１０００が「アイドル」状態になったことがＤＳＣ３０１２へ通知される（Ｓ６０８）。
【００４３】
尚、例えば、１頁に複数（Ｎ枚とする）の画像をレイアウトして印刷するＮ−ｕｐ印刷を行う場合には、Ｎ枚の画像を印刷する度に、「NotifyJobStatus」アクション（Ｓ６０７）がプリンタ１０００からＤＳＣ３０１２に送られる。本実施形態での「NotifyJobStatus」及び「NotifyDeviceStatus」の各アクションの発行タイミングと画像データの取得の順番は一例であり、他の様々なケースが起こりうる。
【００４４】
図６は、本発明の実施形態に係る印刷システムの機能構成を示す機能ブロック図である。この印刷システムは、プリンタ１０００とＤＳＣ３０１２とを有し、これらはＵＳＢ等のインタフェース６６０を介して相互に接続されている。尚、このインタフェース６６０は有線によるものだけでなく、ブルートゥース（商標）などの無線インタフェースであっても良い。
【００４５】
プリンタ１０００において、通信制御部６１０は、インタフェース６６０を介した通信制御を行う。印刷情報管理メモリ６１１は、プリントバッファや受信バッファなどを含むメモリである。画像リサイズ処理部６１２は、画像の変倍処理を行う。画像回転処理部６１３は、画像の回転や角度補正を行う。画像色処理部６１４は、画像の色変換を実行する。画像伸張圧縮処理部６１５は、画像データの圧縮及び伸張を行う。印刷制御部６１６は、プリンタエンジン３００４等を含む。尚、本実施形態では、画像リサイズ処理部６１２、画像回転処理部６１３、画像色処理部６１４及び画像伸張圧縮処理部６１５は、ＤＳＰ３００２がプログラムメモリ３００３ａに記憶されているプログラムを実行することによりソフトウェア的に実現する。
【００４６】
また、ＤＳＣ３０１２において、通信制御部６２１は、インタフェース６６０を介した通信制御を行う。印刷情報管理メモリ６２２は、処理済みの画像データなど記憶するＲＡＭ３１０２を含むメモリである。画像リサイズ処理部６２３は画像の変倍処理を行う。画像回転処理部６２４は、画像の回転を行う。画像伸張圧縮処理部６２５は画像データの圧縮及び伸張を行う。画像色処理部６２６は色変換処理を行う。尚、本実施形態では、画像リサイズ処理部６２３、画像回転処理部６２４、画像伸張圧縮処理部６２５及び画像色処理部６２６は、ＣＰＵ３１００がＲＯＭ３１０１に記憶されているプログラムを実施することにより所謂ソフトウェア的に実現されるものとする。
なお、プリンタ１０００においても、ＤＳＣ３０１２においても、ソフトウェア的に実現した機能ブロックの１つ以上をハードウェアによって実現することが可能である。
【００４７】
＜印刷処理＞
図７は、デジタルカメラ（ＤＳＣ）３０１２とプリンタ１０００とが接続されてなる本実施形態の印刷システムにおいて、ＤＳＣ３０１２からプリンタ１０００に画像データを供給して印刷を行う場合の処理を説明するフローチャートである。図において、Ｓ１〜Ｓ１２はＤＳＣ３０１２における処理を示し、Ｓ２１〜Ｓ３１はプリンタ１０００における処理を示している。なお、各ステップの処理は、特に明示しない限り、Ｓ１〜Ｓ１２はＤＳＰ３００２が、Ｓ２１〜Ｓ３１はＣＰＵ３１００が動作主体である。
【００４８】
Ｓ１及びＳ２１は、ＤＳＣ３０１２とプリンタ１０００とが、通信制御部６１０及び６２１を通じて、互いにＤＰＳ仕様（PictBridge)に準拠した機能をサポートしていることを確認するDiscovery処理である。この処理の中で、ＤＳＣ３０１２はプリンタ１０００に対し、プリンタの状態やデバイス情報を問合せる。これに対してプリンタ１０００から、その時点でのプリンタ１０００の状態やデバイス情報が通知される。このデバイス情報には、例えば接続プロトコルのバージョンや、プリンタのベンダー名や機種名等が通知される。次にＤＳＣ３０１２は、通信制御部６２１を用い、図５のＳ６０２で示すように、プリンタ１０００に対して、その能力情報（Capability）を要求する「Get_Capability」アクションを発行する。
【００４９】
プリンタ１０００は、通信制御部６１０を通じて「Get_Capability」アクションを受信すると、Ｓ２２で、プリンタ１０００の印刷機能に関する能力情報（Capability）を作成してＤＳＣ３０１２に送信する。
ＤＳＣ３０１２はこのCapabilityを受信する（Ｓ２）。ＤＳＣ３０１２は、Capabilityからプリンタ１０００で印刷可能な用紙サイズや解像度等を取得する。このときプリンタ１０００は更に、印刷しようとしている画像の縦横の画素数を算出する。こうして算出された縦横の画素数を、プリンタ１０００とＤＳＣ３０１２間で予め任意に定めた通信プロトコルにより、プリンタ１０００の通信制御部６１０から、ＤＳＣ３０１２の通信制御部６２１を通じて通知する。こうして通知された、印刷する画像の縦横の画素数に関する情報は、ＤＳＣ３０１２のＲＡＭ３１０２に記憶される。
【００５０】
尚、ここでプリンタ１０００が、印刷する画像の縦横の画素数をＤＳＣ３０１２に通知できない機種の場合がある。この場合、ＤＳＣ３０１２は、ベンダー名、機種名やバージョン番号といったプリンタから得られる機種情報に基づいてテーブルなどを参照し、印刷用紙サイズ毎の縦横画素数、印刷方向の情報等を求めて、印刷する画像の画素数を算出することができる。
【００５１】
そしてＤＳＣ３０１２はＳ３で、このCapabilityを基にユーザインタフェース（ＵＩ）を構築して表示部２７００に表示する。ここでは、例えば、プリンタ１０００が用紙サイズがＡ４判とＢ５判の普通紙と写真用用紙を装着しているものとする。また、１−ｕｐ，２−ｕｐ，４−ｕｐのレイアウト印刷を、「縁なし」或は「縁あり」で行うことが可能であるとする。更にトリミングや日付印刷が可能な場合は、これらの項目を任意に選択可能とする。また、能力情報に含まれない（プリンタ１０００備えない）機能の項目は選択できないようにする。ＣＰＵ３１００はこれらの情報に基づいて、印刷内容を設定するためのＵＩを構築し、表示部２７００に表示させる。
【００５２】
次にＳ４で、ＤＳＣ３０１２は、ＵＩを通じたユーザ指示を待つ。ユーザは、操作部３１０３を用いてＵＩを操作し、印刷したい画像の選択や、それら画像の印刷形式の設定（印刷設定）を行う。印刷形式の設定には、印刷枚数、用紙サイズ、日付印刷の有無、トリミング指定、角度補正指定、フチなし／フチあり印刷指定、レイアウト種別、プリンタで自動画像補正を行うか否か等、Ｓ２で受信したプリンタ１０００の能力情報に基づいた情報が含まれる。
【００５３】
ここでのＵＩ操作において、例えば角度補正指定が与えられると、ＤＳＣ３０１２は原画像を指定量だけ回転させたプレビュー画像をＵＩ中の領域に表示する。これにより、ユーザは、所望の結果が得られるか確認しながらインタラクティブに回転量及び回転方向を指定することができる。
【００５４】
ＤＳＣ３０１２はまた、角度補正が指定された場合、その回転量に応じてトリミング範囲を決定し、プレビュー画像上にトリミング範囲を例えば矩形枠として重畳表示させる。この矩形枠をユーザが少なくとも縮小可能なＵＩとして表示させることで、ユーザは画像が切れない範囲で所望のトリミング範囲を指定することができる。
さらに、後述するように、角度補正の指定有無に応じ、プリンタ１０００における自動画像補正の設定を解除する等の制御を行うことができる。
【００５５】
ＤＳＣ３０１２は、ＵＩを通じてユーザから印刷開始指示が与えられるとＳ５に進み、ＵＩから指定された各種の印刷設定をプリンタ１０００に指示し、印刷要求を行うための印刷ジョブファイルを作成する。ここで、印刷設定には、用紙サイズ、印刷部数、フチ有り／無し、日付印刷の有無、印刷対象の画像ファイルを特定する情報（例えばPTPにおけるObjectHandle）、角度補正有無やトリミング範囲、自動画像補正の有無などが含まれる。そして、Ｓ６で、ＤＳＣ３０１２は、作成した印刷ジョブファイルを通信制御部６２１を通じてプリンタ１０００に送信する。
【００５６】
この印刷ジョブファイルはＳ２３でプリンタ１０００により受信される。次にＳ２４で、プリンタ１０００は、受信した印刷ジョブファイルを解析してプリントの準備を行う。そして、その印刷ジョブファイルに記載されている印刷対象の画像ファイルについて、「画像ファイル情報の取得要求」をＤＳＣ３０１２に対して発行する。
【００５７】
尚、この「画像ファイル情報の取得要求」は、例えばPictBridgeの場合、ＰＴＰ（Picture Transfer Protocol）で規定されている「GetObjectInfo」オペレーションに相当する。しかしながら、この実施形態における「画像ファイル情報の取得要求」発行の目的は、画像ファイルの作成タイミングをプリンタ１０００からＤＳＣ３０１２に伝えることにある。
【００５８】
そしてＳ７で、ＤＳＣ３０１２は「画像ファイル情報の取得要求」を受信すると、Ｓ８に進み、プリンタ１０００に対して送信する印刷用画像ファイルを作成する処理を実行する。なお、ここで作成する画像ファイルはＳ５ジョブファイル作成時からＳ７受信の間にあらかじめ行なっておいても良い。
本実施形態のＤＳＣ３０１２は、後述するように、角度補正を伴う場合の印刷用画像ファイル生成に特徴を有する。このＳ８の処理は詳しく後述する。次にＤＳＣ３０１２は、Ｓ８で作成した印刷用画像ファイルの情報（画像ファイル名、データサイズなど）を、「画像ファイル情報の取得要求」への応答としてＳ９でプリンタ１０００に送信する。
【００５９】
Ｓ２５で、プリンタ１０００は、画像ファイルの情報を受信すると、そこに含まれる画像ファイル名を指定し、印刷用画像ファイルそのものの取得要求をＤＳＣ３０１２に送信する（Ｓ２６）。ＤＳＣ３０１２は、この画像ファイルの取得要求を受信すると（Ｓ１０）、Ｓ１１で、要求された印刷用画像ファイルをプリンタ１０００に送信する。
【００６０】
プリンタ１０００は、Ｓ２７で印刷用画像ファイルを受信すると、画像データを復号して画像処理を行い、プリンタ１０００で印刷できる形式に変換する（Ｓ２８）。そしてＳ２９で、プリンタ１０００は、変換した画像データに基づいて印刷を行う。Ｓ３０で、プリンタ１０００は、変換した画像データが最後まで印刷されたか否かを判定する。ここで印刷が完成していない場合は、例えばプリンタ１０００で、受信した印刷用画像データを格納するためのバッファ領域が十分に確保できず、Ｓ２７で、画像ファイルを分割受信して処理している場合等が考えられる。その場合はＳ２４に戻り、再び「画像ファイル情報の取得要求」をＤＳＣ３０１２に送信し、前述と同様の手順で、Ｓ２７で、画像ファイルの画像データの部分データを受信して印刷する。
【００６１】
Ｓ３０で、印刷用画像ファイル中の画像データの印刷が完了すると、Ｓ３１に進み、プリンタは画像ファイルの印刷が完了した旨をＤＳＣ３０１２に通知する。ＤＳＣ３０１２は、Ｓ１２でこの印刷終了通知を受信すると、この処理を終了する。
【００６２】
図８は、図７のＳ８の処理に相当する、ＤＳＣ３０１２における印刷用の画像ファイルの生成処理を説明するフローチャートである。
上述の通り、この処理はプリンタ１０００からの「画像ファイル情報の取得要求」（Ｓ２４）をＳ７でＤＳＣ３０１２が受信することにより開始される。
【００６３】
まずＳ２０１で、ＤＳＣ３０１２は、プリンタ１０００から受信した取得要求の基になった、Ｓ５で生成した印刷ジョブファイルに含まれている画像の情報を取得する。次に、ＤＳＣ３０１２は、印刷設定と、印刷対象の画像ファイル中の画像データとに基づいて、その画像データのリサイズ、回転、切り出しなどの画像変換が必要かどうかを判定する（Ｓ２０２）。画像変換処理が不要と判断される場合、ＤＳＣ３０１２は印刷対象の画像ファイルの情報を記憶媒体３１０９から読み出す（Ｓ２１５）。そして、印刷用画像ファイル生成処理を終了し、Ｓ９でプリンタ１０００に画像ファイル情報を送信する。
【００６４】
一方、Ｓ２０２で、画像データの角度補正などの画像変換などの処理が必要であると判定されると、ＤＳＣ３０１２は、その印刷対象の画像ファイルを記憶媒体３１０９から読み取る（Ｓ２０３）。そして、画像ファイル中の画像データが符号化されている場合など、復号が必要な場合は、画像伸張圧縮処理部６２５により復号して元の画像データに変換する（Ｓ２０４）。復号が必要ない場合にはＳ２０４をスキップする。
【００６５】
次にＳ２０５で、ＤＳＣ３０１２は、印刷対象の画像データ（原画像データ）と印刷設定とに基づき、画像データに角度補正が必要であるか判断する。必要と判断される場合、画像回転処理部６２４により、原画像データを、指定された方向に、指定された量回転させた角度補正画像を生成する（Ｓ２０６）。
【００６６】
次にＤＳＣ３０１２は、印刷設定において、プリンタでの自動画像補正が指定されているかチェックする（Ｓ２０７）そして、指定されていなければＳ２０９へ進む。一方、プリンタでの自動画像補正が指定されている場合には、Ｓ２０８において、合成画像生成処理を行なう。
【００６７】
図９は、本実施形態に係るＤＳＣ３０１２が図８のＳ２０８で行う合成画像の生成処理を説明するための図である。
図９（ａ）は、印刷対象となる原画像（例えば４９９２画素（幅）×３３２８画素（高さ））を示す。この原画像に対し、例えば反時計方向に１０度の角度補正を行った場合、図９（ｂ）の回転画像が得られる。この場合、回転前の原画像に対応する領域（枠８０１で示す）からはみ出す、はみ出し領域ａ〜ｄが生じる。
【００６８】
一方で、原画像に対応する領域中には、図９（ｃ）に示すように空白領域ｅ〜ｈが発生する。これら空白領域ｅ〜ｈがプリンタ１０００で印刷されないよう、ＤＳＣ３０１２は枠８０２で示すような、原画像に対応する矩形範囲と縦横比が等しく、空白領域を含まない最大の矩形領域をトリミング範囲として自動的に指定する。上述の通り、この自動設定されるトリミング範囲はユーザが変更可能であり、最終的に決定されたトリミング範囲は印刷設定の一部として印刷ジョブファイルによってプリンタ１０００へ通知される。
【００６９】
図９（ｇ）は、図９（ａ）の原画像に含まれる画素の輝度値の分布を示すヒストグラムである。一方、図９（ｈ）は、図９（ｃ）の画像全体から同様に生成したヒストグラムを示す。図９（ｃ）では、はみ出し領域ａ〜ｄに相当する領域が、空白領域ｅ〜ｈに変わっているため、図９（ｈ）のヒストグラムは図９（ｇ）のヒストグラムと異なったものになる。
【００７０】
その結果、プリンタ１０００がヒストグラムに基づく自動画像補正処理を行った場合、図９（ｇ）のヒストグラムに基づく補正結果と、図９（ｈ）のヒストグラムに基づく補正結果とは同じにならない。例えば、図９（ｃ）に示したように、枠８０２によるトリミング指定を行った場合、補正結果（出力結果）は、図９（ｅ）及び図９（ｆ）に示すように、異なったものになる。また、空白領域ｅ〜ｈの影響により、ヒストグラムを使用しない画像補正処理、例えば自動ホワイトバランス処理にも影響が生じうる。
【００７１】
このような問題を解決するため、本実施形態のＤＳＣ３０１２は、角度補正とプリンタ側の自動画像補正の両方が指定されている場合、以下のような合成画像を印刷用画像データとして生成する。
【００７２】
具体的には、角度補正により従来は印刷用画像データに含まれなかったはみ出し領域ａ〜ｄの画素を、空白領域ｅ〜ｈに含めた合成画像のデータを印刷用画像データとして生成する。
はみ出し領域ａ〜ｄの画素が空白領域ｅ〜ｈに含まれさえすれば、基本的にはどのような方法によって合成をおこなってもよい。最も単純な方法は、はみ出し領域中の画素が、いずれかの空白領域に含まれるように合成する方法であろう。
【００７３】
本実施形態では、はみ出し領域の形状と空白領域の形状との関係に着目し、はみ出し領域を幾何学変換した部分画像を生成し、この部分画像を対応する形状の空白領域に嵌め込むように合成する。具体的には、例えば、はみ出し領域ａを空白領域ｅに合成するため、はみ出し領域ａ（図９（ｊ））を左右反転した部分画像ａ’（図９（ｋ））を生成し、空白領域ｅに合成する。同様な処理をはみ出し領域ｂ〜ｄから部分画像ｂ’〜ｄ’を生成し、空白領域ｆ〜ｈに合成する。
【００７４】
このような合成を行なうことにより、図９（ｄ）に示す合成画像が得られる。図９（ｉ）は、図９（ｄ）の画像のヒストグラムである。合成画像にはみ出し領域ａ〜ｄの画素が全て合成されていれば、原画像のヒストグラム（図９（ｇ））と、合成画像のヒストグラム（図９（ｉ））とは合致する。その結果、プリンタ１０００の自動画像補正機能が画像のヒストグラムに依存するものであったとしても、ＤＳＣ３０１２における角度補正の有無及び回転量に依存せず、同じ補正結果を得ることができる。
【００７５】
さらに、はみ出し領域を反転して生成した部分画像を対応する形状を有する空白領域に嵌め込むことにより、はみ出し領域中の画素を無作為に空白領域内に無作為に合成する場合に比べ、画素の位置関係も原画像と近いものとなる。そのため、プリンタにおいて、ヒストグラム以外の画像情報、例えば、色に応じた被写体判別などに基づく画像補正を行うような場合であっても、補正結果に与える影響を抑制することができる。
【００７６】
なお、角度補正以外に必要な画像変換処理がある場合、例えば合成画像に対して変換処理を適用することができる。もちろん、回転画像生成前に行っても良い。
【００７７】
Ｓ２０９で、ＤＳＣ３０１２は、画像変換処理済みの画像データを、画像伸張圧縮処理部６２５にて符号化する。ここでは符号化方法については詳細に説明しないが、一般的にはPackBits等に代表される可逆的な圧縮と、ＪＰＥＧ等に代表される非可逆な圧縮方法など、プリンタ１０００が扱える符号化方法を用いる。
【００７８】
Ｓ２１０でＤＳＣ３０１２は、符号化された画像データがＥＸＩＦのタグ付画像データか否かを判定し、ＥＸＩＦタグ付の場合はＳ２１１で、ＥＸＩＦ情報を、Ｓ２０４〜Ｓ２０９における画像データの変換処理の内容に合わせて更新する。
【００７９】
一方、Ｓ２１０で、ＥＸＩＦタグなしと判定された場合、ＤＳＣ３０１２は、Ｓ２１２で、符号化画像データに角度補正情報（例えば、回転方向と回転量を特定可能な情報）を付加する。
【００８０】
ＤＳＣ３０１２は、このようにして生成した符号化画像データを用い、印刷用の画像ファイルを作成する。そして、生成した印刷用画像ファイルに基づいて、プリンタ１０００からの「画像ファイル情報の取得要求」に対する応答データを作成し、応答する（図７のＳ９）。なお、生成した印刷用画像ファイルは、転送用のデータエリア（例えばＲＡＭ３１０２の所定エリア）に一時記憶する。
プリンタ１０００からの「画像ファイルの取得要求」をＳ１０で受信すると、ＤＳＣ３０１２は、転送用データエリアに記憶した印刷用画像ファイルを、通信制御部６２１及び通信制御部６１０を介してプリンタ１０００に伝送する（図７、Ｓ１１）。
【００８１】
（変形例１）
なお、図８のＳ２０８における合成画像生成処理において、空白領域に含める画素は、はみ出し領域中の画素でなくてもよい。例えば、無彩色画素、より具体的には一定濃度のグレー画素又は、濃度の異なるグレー画素を用いることができる。
【００８２】
一定濃度のグレー画素としては、中間濃度のグレー画素（例えば２５６階調のグレースケールであれば、１２８番目の階調のグレー画素）を用いることができる。これにより、プリンタでの自動画像補正処理において、回転処理を伴わない場合の補正と回転処理を伴う場合との差異を少なくする可能性が大きい。
【００８３】
または、一定濃度のグレー画素を、はみ出し領域全体の画素の明るさの平均値に等しい濃度（明るさ）を有するグレー画素としても良い。この場合、ヒストグラム全体の濃度は原画像により近くすることが可能である。そして、予め一定濃度に決めておく場合よりも、回転処理を伴わない場合の補正と回転処理を伴う場合との差異を、より少なくすることができる。
【００８４】
また、一定濃度のグレー画素ではなく、濃度の異なるグレー画素を用いることも可能である。具体的には、最低濃度から最高濃度まで均一に分布した複数のグレー画素を用いてもよい。このとき、この場合、ヒストグラム全体の濃度を原画像とほぼ同じにすることが可能であると共に、一部濃度の画素だけが突出して発現しないので、回転処理を伴わない原画像の補正に、より近い補正が可能となる。
【００８５】
グレー画素を用いることで、はみ出し領域に含まれる画素を用いる場合よりもプリンタでの自動画像補正処理の精度は低下する。しかし、はみ出し領域から部分画像を生成する処理が不要となるので、ＤＳＣ３０１２のメモリ容量の節約や、ＣＰＵ３１００の処理負荷を軽減することが可能となり、リソースの少ないＤＳＣに対しては十分有効な方法として利用することができる。
【００８６】
以上説明したように本実施形態によれば、画像供給装置から印刷装置へ、原画像を回転させて得られる画像を供給する場合、回転によって生じる空白領域に、回転によって生じるはみ出し領域の画素又はグレー画素を合成した画像を供給する。これにより、印刷装置において画像のヒストグラムや色に基づいて自動画像補正を行う場合であっても、空白領域の影響を十分抑制することができる。従って、同じ原画像を異なる量角度補正した画像を印刷装置で自動画像補正する場合でも、出力のばらつきを大幅に抑制することが可能となる。
【００８７】
特に、空白領域に合成する画素として、もともと原画像中の画素であったはみ出し領域中の画素を用いることにより、原画像と角度補正後の画像との間で画像全体のヒストグラムを維持することが可能である。そのため、画像全体のヒストグラムに基づく自動画像補正については、角度補正による影響を除去することができる。
【００８８】
また、はみ出し領域を反転して生成した部分領域画像を対応する形状の空白領域に嵌め込むように合成することにより、角度補正がヒストグラム以外の画像情報を用いた自動画像補正に与える影響の抑制にも効果がある。
【００８９】
また、角度補正を行った場合も、画像全体のデータを印刷装置に供給するので、トリミング位置やサイズを変更しても、ヒストグラムにはほとんど影響がない。そのため、自動画像補正による明るさ、コントラスト調整をするような印刷装置と接続した場合も、安定した出力品質を維持することが可能となる。更に、トリミング範囲だけでなく画像全体のデータを供給することで、トリミング枠より外側の画像データも印刷時に利用可能である。そのため、フチが出ないように、実際の用紙サイズより広い範囲を印刷する印刷装置であっても、トリミング枠で指定された範囲画像を拡大する必要がなく、トリミング範囲が欠けることなく出力される。
【００９０】
さらに、本実施形態のように、角度補正とプリンタでの自動画像補正の両方が指定されている場合にのみ合成画像を生成するようにすることで、プリンタでの自動画像補正が指定されていない場合の処理軽減と高速化が可能である。
【００９１】
（第２の実施形態）
第１の実施形態においては、角度補正を行った画像をプリンタへ供給する際、角度補正によって生じた空白領域に、角度補正によって生じたはみ出し領域の画素やグレー画素を合成した合成画像を供給するものであった。
【００９２】
本実施形態は、原画像のヒストグラムと角度補正後の画像（合成画像ではない）を合成画像の代わりにプリンタへ供給することにより、プリンタにおける画像全体のヒストグラムに基づく自動画像補正における、角度補正の影響を抑制するものである。
【００９３】
本実施形態におけるＤＳＣ３０１２の構成は第１の実施形態と共通でよく、印刷用画像ファイル生成処理（図８）におけるＳ２０８の処理のみが異なる。すなわち、合成画像を生成する代わりに、原画像のヒストグラム（ＲＧＢチャンネル毎であっても、全チャンネルに対するものであってもよい）を生成する。もちろん、Ｓ２０６において回転画像を生成する前にヒストグラムを生成しても良く、この場合はＳ２０８の処理は、ヒストグラムをプリンタに送信する必要があることを示す情報の設定でよい。
そして、画像ファイルを生成する際、例えばそのファイルヘッダにヒストグラムの情報を任意の形式で含める。
【００９４】
一方、プリンタ１０００の構成も第１の実施形態と共通で良い。プリンタ１０００のＤＳＰ３００２は、ＤＳＣ３０１２はから印刷用画像ファイルを取得すると、ＥＸＩＦ情報又は角度補正情報により、印刷用画像ファイルに含まれる画像データが角度補正されていることを認識する。そして、例えば画像色処理部６１４により画像データのヒストグラムに基づく自動画像補正処理を行なう場合には、印刷用画像ファイルに含まれる画像データからヒストグラムを生成せずに、印刷用画像ファイルに記録されているヒストグラムを読み出して利用する。
【００９５】
このように、本実施形態によれば、角度補正後の画像と角度補正前の画像のヒストグラムを印刷装置に供給するので、ヒストグラムに基づく自動画像補正を印刷装置側で行う場合に、角度補正量に依存しない補正結果を得ることができる。また、画像供給装置側では、画像合成処理を行なう代わりに原画像のヒストグラムを生成すればよいので、処理を軽減できるほか、画像合成を行う場合よりもメモリ容量を節約することができる。
【００９６】
（第３の実施形態）
第２の実施形態は、原画像のヒストグラムと角度補正後の画像を印刷装置に供給するものであった。これに対し、本実施形態では、角度補正後の画像と角度補正に関する情報を印刷装置に供給するものである。
【００９７】
角度補正に関する情報とは、例えば画像の回転量と回転方向とが特定可能な情報であればよい。本実施形態のＤＳＣ３０１２も構成は第１の実施形態と共通で良く、印刷用画像ファイル生成処理におけるＳ２０７、Ｓ２０８の処理が不要となる。角度補正に関する情報は、Ｓ２１１又はＳ２１２で画像ファイルに記録すればよい。
【００９８】
画像の縦横画素数はＥＸＩＦ情報等に基づいてプリンタ側で把握可能なので、画像の回転量と回転方向が分かれば、角度補正後の画像中に含まれる空白領域の位置と大きさを求めることができる。
【００９９】
そして、プリンタ１０００では、自動画像補正を行う場合、空白領域と判断される領域の画素の情報を使用しないようにする。これにより、角度補正量によって空白領域の大きさが異なることによる補正結果への影響を除去することができ、角度補正量による補正結果のばらつきを抑制することが可能になる。
【０１００】
このように、本実施形態によれば、画像供給装置からは角度補正後の画像と角度補正に関する情報とを印刷装置に供給する。また、印刷装置は角度補正に関する情報から角度補正後の画像に含まれる空白領域を特定して自動画像補正処理に空白領域の情報を用いないようにする。このような手順により、空白領域が印刷装置における自動画像補正処理結果に与える影響を抑制することができる。
【０１０１】
本実施形態においては、画像供給装置側の処理負荷が非常に小さく、せいぜい画像の回転ができれば十分である。そのため、第２の実施形態以上に、能力の高くない画像供給装置に適した方法ということができる。
【０１０２】
（第４の実施形態）
図１０は、本発明の第４の実施形態に係る印刷システムにおいて、ＤＳＣ３０１２が行う印刷ジョブファイルの作成処理を説明するフローチャートである。図７のＳ５の処理に相当し、ＵＩを通じて印刷開始が指示されることにより実施される。
【０１０３】
本実施形態のＤＳＣ３０１２は、ＤＳＣ３０１２が画像色処理部６２６により、プリンタと同様の自動画像補正を行うことが可能であるものとする。そして、プリンタでの自動画像補正と角度補正の両方が指定されている場合には、プリンタで自動画像補正を行う代わりに、ＤＳＣ３０１２で自動画像補正を行い、補正後の画像をプリンタに供給する。また、ＵＩを介してユーザが設定したプリンタでの自動画像補正の指定を解除したジョブファイルを生成する。
【０１０４】
まず、Ｓ１０７で、ＤＳＣ３０１２は、ユーザから角度補正が指定されているかチェックし、指定されていなければ、Ｓ１１５に進む。一方、指定されていればＳ１０９へ進んで、プリンタでの自動画像補正が指定されているかチェックする。
【０１０５】
プリンタでの自動画像補正が指定されていた場合、ＤＳＣ３０１２はＳ１１１で、印刷設定における自動画像補正の指定を解除する。そして、Ｓ１１３で、ＤＳＣ３０１２における自動画像補正（カメラ内自動画像補正）を指定するためのパラメータを例えばＲＡＭ３１０２の所定アドレスに登録する。
【０１０６】
Ｓ１１５で、ＤＳＣ３０１２は、第１の実施形態において説明したように、印刷に必要なパラメータを用いて印刷ジョブファイルを生成する。この際、Ｓ１１１においてプリンタでの自動画像補正指定が解除された場合には、ジョブファイルにも解除が反映されることは言うまでもない。
【０１０７】
その後図８に示した印刷用画像データ生成処理のＳ２０７において、ＤＳＣ３０１２はプリンタでの自動画像補正の代わりに、カメラ内自動画像補正の指定があるか調べる。そして、指定があれば、Ｓ２０８において、補正手段としての画像色処理部６２６等により、原画像に基づいた自動画像補正を回転画像に対して適用し、印刷用画像データを生成する。
【０１０８】
なお、Ｓ１１１においてプリンタでの自動画像補正を解除する前に、ユーザに、プリンタでの自動画像補正を解除し、カメラ側で自動画像補正を行うことを報知するメッセージを表示若しくは音声等により出力するようにしても良い。
【０１０９】
また、Ｓ１１１においてプリンタでの自動画像補正を解除するだけに止め、Ｓ１１３におけるカメラ内での自動画像補正を指定しないように構成することも可能である。つまり、角度補正の指定がなされている場合には、プリンタでの自動画像補正を禁止するように制御することができる。この場合、ユーザが期待するような補正結果は得られないが、プリンタで空白領域を正しい画素として扱うことにより、ホワイトバランスが却って崩れてしまったり、画像の明るさが誤って補正される事態は回避することができる。
【０１１０】
このように本実施形態によれば、角度補正とプリンタでの自動画像補正の両方が設定されている場合、プリンタでの自動画像補正指定を解除し、カメラ側で自動画像補正することで、角度補正量に依存しない、原画像に基づいた画像補正を行うことができる。そのため、角度補正により生じる空白領域が補正結果、ひいては印刷出力に与える影響を抑制することができる。
［他の実施形態］
【０１１１】
上述の実施形態は、システム或は装置のコンピュータ（或いはＣＰＵ、ＭＰＵ等）によりソフトウェア的に実現することも可能である。
従って、上述の実施形態をコンピュータで実現するために、該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。
【０１１２】
なお、上述の実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。
【０１１３】
上述の実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線／無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、ＭＯ、ＣＤ、ＤＶＤ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどがある。
【０１１４】
有線／無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル（プログラムファイル）をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。
【０１１５】
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。
つまり、上述の実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。
【０１１６】
また、上述の実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体を配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを許可してもよい。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。
【０１１７】
また、上述の実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するＯＳの機能を利用するものであってもよい。
さらに、上述の実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるＣＰＵで実行するようにしてもよい。
【図面の簡単な説明】
【０１１８】
【図１】本発明の実施形態に係る、ダイレクトプリントに対応したプリンタの概観例を示す斜視図である。
【図２】本発明の実施形態に係るプリンタの操作パネルの概観例を示す図である。
【図３】本発明の実施形態に係るプリンタの制御に係る主要部の構成例を示すブロック図である。
【図４】本発明の実施形態に係るデジタルカメラの構成例を示すブロック図である。
【図５】本発明の実施形態に係る印刷システムにおいて、ＤＳＣからプリンタに対してプリント要求を発行して印刷を行う場合の処理手順を説明する図である。
【図６】本発明の実施形態に係る印刷システムの機能構成を示す機能ブロック図である。
【図７】本発明の実施形態に係る印刷システムにおいて、ＤＳＣからプリンタに画像データを供給して印刷を行う場合の処理を説明するフローチャートである。
【図８】図７のＳ８の処理に相当するＤＳＣにおける印刷用の画像ファイルの作成処理を説明するフローチャートである。
【図９】本発明の第１の実施形態に係るＤＳＣが行う合成画像の生成処理を説明するための図である。
【図１０】本発明の第４の実施形態に係る印刷システムにおいて、ＤＳＣ３０１２が行う印刷ジョブファイルの作成処理を説明するフローチャートである。
【図１】
2008236221.tif 000003
【図２】
2008236221.tif 000004
【図３】
2008236221.tif 000005
【図４】
2008236221.tif 000006
【図５】
2008236221.tif 000007
【図６】
2008236221.tif 000008
【図７】
2008236221.tif 000009
【図８】
2008236221.tif 000010
【図９】
2008236221.tif 000011
【図１０】
2008236221.tif 000012