(57)【要約】【課題】自己の性能をデジタルカメラに通知する機能を備えないプリンタを用いてダイレクトプリントを行う場合であっても、印刷の失敗を抑制することが可能な技術を提供する。【解決手段】デジタルカメラ１は、画像ファイルをプリンタ２に供給して画像の印刷を指示する。画像ファイルが原因で印刷に失敗した旨の通知をプリンタ２から受信した場合、デジタルカメラ１は、画像ファイルのデータサイズを減少させてから再度プリンタ２に供給し、画像の印刷を指示する。【選択図】図３
2008047979.tif 000002
【特許請求の範囲】
【請求項１】
通信可能に接続された画像形成装置に画像データを供給して画像の形成を指示する指示手段と、
前記画像形成装置が前記画像の形成に失敗した場合に出力する、前記失敗の理由を示す通知を前記画像形成装置から受信する受信手段と、
前記画像データのデータサイズを減少させる減少手段と、
前記通知により示される前記失敗の理由が、前記画像データに起因するものであることを示す場合に、前記減少手段により前記画像データのデータサイズを減少させてから前記画像形成装置に供給して画像の形成を指示する再指示手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記通知が、前記失敗の理由が前記画像データに起因するものであることを示す場合に、前記画像形成装置が前記画像データに含まれる画像の形成に成功するまで、前記再指示手段は、前記減少手段により更に前記画像データのデータサイズを減少させてから前記画像形成装置に供給して画像の形成を指示することを繰り返すことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記減少手段は、画素数を減少させることにより、前記画像データのデータサイズを減少させることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記減少手段は、前記画像データの圧縮率を高くすることにより、前記画像データのデータサイズを減少させることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記再指示手段は、前記減少手段を用いて前記画像データのデータサイズを減少させる際、前記減少手段を同一の画像データに適用する回数が多くなるほどデータサイズの減少率を高めるように前記減少手段を制御することを特徴とする請求項２に記載の画像処理装置。
【請求項６】
前記再指示手段は、前記減少手段を適用した画像データに関する画像の形成が成功した場合、前記減少手段により最後に適用したデータサイズ減少方法を記憶手段に記憶し、
前記指示手段は、その後画像の形成を指示する場合には、該指示に先立って、前記記憶手段に記憶されたデータサイズ減少方法を用いて前記減少手段により前記画像データのデータサイズを減少させる
ことを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記減少手段は、前記画像データのデータサイズを減少させてよいか否かに関する指示をユーザから受け付ける受付手段を備え、前記画像データのデータサイズを減少させてよいという指示を前記ユーザから受け付けた場合にのみ、前記画像データのデータサイズを減少させることを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
通信可能に接続された画像形成装置に画像データを供給して画像の形成を指示する指示工程と、
前記画像形成装置が前記画像の形成に失敗した場合に出力する、前記失敗の理由を示す通知を前記画像形成装置から受信する受信工程と、
前記画像データのデータサイズを減少させる減少工程と、
前記通知により示される前記失敗の理由が、前記画像データに起因するものであることを示す場合に、前記減少工程で前記画像データのデータサイズを減少させてから前記画像形成装置に供給して画像の形成を指示する再指示工程と、
を備えることを特徴とする画像処理方法。
【請求項９】
請求項８に記載の画像処理方法をコンピュータに実行させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムを記録したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、プログラム、及び、記憶媒体に関し、特に、画像処理装置と通信可能に接続された画像形成装置へ画像データを供給して画像の印刷を指示する技術に関する。
【背景技術】
【０００２】
現在、デジタルカメラとプリンタとを通信可能に接続し、デジタルカメラからプリンタへ画像データを供給してプリンタに画像を印刷させる、ダイレクトプリントと呼ばれる技術が普及している。
【０００３】
デジタルカメラの性能の向上に伴い、デジタルカメラが撮像した画像の画素数やデータサイズがますます大きくなってきている。そのため、プリンタのメモリ容量や画像処理能力などが十分ではなく、供給された画像データをプリンタが処理できず、画像の印刷に失敗する場合がある。
【０００４】
そこで、プリンタが自己の性能をデジタルカメラに通知し、デジタルカメラがプリンタの性能に合わせて画像データを変換して（例えば、画素数を減少させて）からプリンタに供給することにより印刷の失敗を抑制する技術が提案されている（特許文献１参照）。
【特許文献１】特開２００３−２２４７９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術によれば、プリンタは、自己の性能をデジタルカメラに通知する機能を備える必要がある。しかしながら、そのような機能を備えていないプリンタが既に普及しているため、既に普及しているプリンタを用いてダイレクトプリントを行うと、印刷の失敗を十分に抑制できない場合がある。そのため、特許文献１の技術では、既に普及しているプリンタを有効に活用できないという問題がある。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、自己の性能をデジタルカメラに通知する機能を備えないプリンタを用いてダイレクトプリントを行う場合であっても、印刷の失敗を抑制することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明によれば、通信可能に接続された画像形成装置に画像データを供給して画像の形成を指示する指示手段と、前記画像形成装置が前記画像の形成に失敗した場合に出力する、前記失敗の理由を示す通知を前記画像形成装置から受信する受信手段と、前記画像データのデータサイズを減少させる減少手段と、前記通知により示される前記失敗の理由が、前記画像データに起因するものであることを示す場合に、前記減少手段により前記画像データのデータサイズを減少させてから前記画像形成装置に供給して画像の形成を指示する再指示手段と、を備えることを特徴とする画像処理装置が提供される。
【０００８】
また、他の本発明によれば、通信可能に接続された画像形成装置に画像データを供給して画像の形成を指示する指示工程と、前記画像形成装置が前記画像の形成に失敗した場合に出力する、前記失敗の理由を示す通知を前記画像形成装置から受信する受信工程と、前記画像データのデータサイズを減少させる減少工程と、前記通知により示される前記失敗の理由が、前記画像データに起因するものであることを示す場合に、前記減少工程で前記画像データのデータサイズを減少させてから前記画像形成装置に供給して画像の形成を指示する再指示工程と、を備えることを特徴とする画像処理方法が提供される。
【０００９】
なお、その他の本発明の特徴は、添付図面及び以下の発明を実施するための最良の形態における記載によって更に明らかになるものである。
【発明の効果】
【００１０】
以上の構成により、本発明によれば、自己の性能をデジタルカメラに通知する機能を備えないプリンタを用いてダイレクトプリントを行う場合であっても、印刷の失敗を抑制することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面を参照して、本発明の実施形態を説明する。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。
【００１２】
なお、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。また、実施形態の中で説明されている特徴の組み合わせすべてが、本発明に必須とは限らない。
【００１３】
［第１の実施形態］
図１を参照して、本発明の画像処理装置をデジタルカメラに適用した実施形態を説明する。図１は、ダイレクトプリントを行うために用いられるデジタルカメラ１とプリンタ２の構成を示す機能ブロック図である。
【００１４】
デジタルカメラ１とプリンタ２は有線（例えば、ＵＳＢケーブルなど）又は無線（例えば、ＩＥＥＥ８０２．１１ｂに準拠した無線通信）により接続され、プリントシステム３０を構成する。デジタルカメラ１は、印刷対象の画像データをプリンタ２へ送信し、画像の印刷を指示する。
【００１５】
メモリカード３は、デジタルカメラ１が撮像した画像データ（主としてＪＰＥＧ形式の画像データ）を格納する。
【００１６】
デジタルカメラ１は、デジタルカメラ１を制御し、各種演算処理を行うＣＰＵ１１、ＣＰＵ１１が動作中に各種データを格納するＲＡＭ１２、ＣＰＵ１１で実行されるプログラムや各種データを予め格納しておくＲＯＭ１３を備える。また、ユーザがデジタルカメラ１に種々の指示を与えるために操作するボタンの状態を取得する、ユーザインタフェースモジュール１４を備える。また、メモリカード３を接続するためのメモリカードインタフェース１５、画像データに対してＪＰＥＧ圧縮処理及びＪＰＥＧ伸張処理を行うＪＰＥＧモジュール１６を備える。また、レンズやシャッター、撮像素子等を含み、撮像処理を行うカメラモジュール１７を備える。また、デジタルカメラの表示部（不図示）に画像等の表示を行うビデオモジュール１８、デジタルカメラ１をプリンタやパーソナルコンピュータ（ＰＣ）等と接続し、データ送受信を行うＩ／Ｏポート部１９を備える。
【００１７】
プリンタ２は、プリンタ２を制御し、各種演算処理を行うＣＰＵ２１、ＣＰＵ２１が動作中に各種データを格納するＲＡＭ２２、ＣＰＵ２１で実行されるプログラムや各種データを予め格納しておくＲＯＭ２３を備える。また、プリントヘッドや給排紙モータ等を含み、デジタルカメラから送信された画像データを印刷するプリントモジュール２４、デジタルカメラ１やＰＣ等と接続し、データ送受信を行うＩ／Ｏポート部２５を備える。
【００１８】
図２は、プリントシステム３０を用いてダイレクトプリントを行う際に、デジタルカメラ１とプリンタ２の間で送受信されるメッセージの流れを示す図である。図２では、特に、画像ファイル（画像データを含むファイルであり、例えば、ＪＰＥＧファイル）に起因するエラー（印刷の失敗）が発生する場合を示す。
【００１９】
ステップＳ２０１で、デジタルカメラ１は、メッセージ"StartJob"をプリンタ２に送信し、印刷の開始を指示する。
【００２０】
ステップＳ２０２で、プリンタ２は、メッセージ"GetFileInfo"をデジタルカメラ１に送信し、印刷対象の画像ファイルの情報（データサイズ、画素数、圧縮方式など）を要求する。
【００２１】
ステップＳ２０３で、デジタルカメラ１は、印刷対象の画像ファイルの情報をプリンタ２に送信する。
【００２２】
ステップＳ２０４で、プリンタ２は、メッセージ"GetFile"をデジタルカメラ１に送信し、印刷対象の画像ファイルを要求する。
【００２３】
ステップＳ２０５で、デジタルカメラ１は、印刷対象の画像ファイルをプリンタ２に送信する。
【００２４】
プリンタ２は、受信した画像ファイルを解析し、画像ファイルに含まれる画像データが印刷可能なデータである場合は印刷を実行する。画像ファイルに含まれる画像データが印刷不可能なデータである場合はエラーコードをデジタルカメラ１に送信する。
【００２５】
本実施形態では、画像ファイルが原因で（即ち、画像の画素数やデータサイズなどが原因で）印刷不可能である。そこで、ステップ１００６で、プリンタ２は、"NotifyDeviceStatus"のエラーコードで"File-related Error"をデジタルカメラ１に送信する。
【００２６】
本実施形態では、以下に説明する構成により、デジタルカメラ１は、"File-related Error"を受信しても、印刷処理を継続することができる。
【００２７】
図３は、ダイレクトプリントによりデジタルカメラ１がプリンタ２に画像を印刷させる処理の流れを示すフローチャートである。ユーザインタフェースモジュール１４などを介してデジタルカメラ１がユーザからダイレクトプリントの指示を受けると、本フローチャートの処理が開始する。
【００２８】
ステップＳ３０１で、デジタルカメラ１は、印刷対象の画像ファイルをプリンタ２に送信する。具体的には、図２のステップＳ２０１乃至Ｓ２０５に示す処理が行われる。
【００２９】
ステップＳ３０２で、デジタルカメラ１は、プリンタ２が印刷に失敗したか否か（即ち、プリンタ２からエラーコードを受信したか否か）を判定する。プリンタ２が印刷に失敗した場合はステップＳ３０３に進み、そうでなければ、処理を終了する。
【００３０】
ステップＳ３０３で、デジタルカメラは、プリンタ２で発生したエラーが画像ファイルに起因するものであるか否か（即ち、"File-related Error"であるか否か）を判定する。画像ファイルに起因するエラーであればステップＳ３０４に進み、そうでなければ、ステップＳ３０５に進む。
【００３１】
ステップＳ３０４で、デジタルカメラ１は、ＪＰＥＧモジュール１６などを用いて、印刷に失敗した画像ファイルのデータサイズを減少させる。具体的には、例えば、ＪＰＥＧの圧縮率を高くしたり、画像の画素数を減少させたりすることにより、データサイズを減少させる。そして、ステップＳ３０１に戻り、データサイズが減少された画像ファイルを印刷対象の画像ファイルとして、同様の処理を繰り返す。プリンタ２が、データサイズが減少された画像ファイルについても印刷に失敗した場合は、デジタルカメラ１は、印刷を中止してもよいし、ステップＳ３０４におけるデータサイズの減少処理を繰り返してもよい。データサイズの減少処理を繰り返すことにより、最終的にはプリンタ２が印刷に成功すれば、結果として、印刷の失敗をより十分に抑制することができる。
【００３２】
ステップＳ３０５で、デジタルカメラ１は、"File-related Error"以外のエラーに対するエラー処理を行い、本フローチャートの処理を終了する。
【００３３】
ここで、ステップＳ３０４におけるデータサイズの減少処理の具体例を説明する。例えば、デジタルカメラ１は、画像ファイルに含まれる画像の画素数を段階的に減少させる。もちろん、画像の圧縮率を段階的に高くしてもよいし、画素数の減少と圧縮率の向上を組み合わせてもよい。画素数が減少すれば、画像ファイルのデータサイズも減少される。即ち、デジタルカメラ１は、同一の画像ファイルに対してステップＳ３０４が実行された回数が多くなるほど、データサイズの減少率を高める。
【００３４】
例えば、印刷対象の画像ファイルに含まれる画像の画素数が１０００万画素であり、デジタルカメラ１はステップＳ３０４において画素数を１００万画素減少させるものとする。この場合、印刷に失敗するたびに画素数が９００万画素、８００万画素、７００万画素、・・・のように減少し、最終的に、プリンタ２は画像の印刷に成功する。
【００３５】
画素数が減少する段階は、過去に発売されたプリンタの性能やこれから発売されるであろうプリンタの性能を考慮して決定されてもよい。例えば、工場出荷時などに、デジタルカメラ１のＲＯＭ１３や不図示のＳＲＡＭなどに、画素数及び圧縮率のうち少なくとも一方を用いて表現される画像パラメータを少なくとも１つ格納しておく。画像パラメータは、例えば、「１０００、７００、４００、２００、１００、３５」といったものである。この例では、デジタルカメラ１は、１６００万画素の画像の印刷に失敗した場合、まず、画素数を１０００万画素に減少させ、それでも印刷に失敗した場合は、７００万画素、４００万画素、・・・と段階的に画素数を減少させる。
【００３６】
また、デジタルカメラ１は、印刷に成功したときの画像の画素数や圧縮率などに関する画像パラメータを、ＲＡＭ１２や不図示のＳＲＡＭなどに格納してもよい。そして、同じプリンタを用いて次にダイレクトプリントを行う場合、印刷に成功したときの画像パラメータに従って画像ファイルのデータサイズをまず減少させてから、ステップＳ３０１に移る。これにより、段階的に画像ファイルのデータサイズを減少させるという試行錯誤の回数を減らし、短時間でプリンタ２に印刷を成功させることが可能になる。ＲＡＭ１２などに格納された画像パラメータは、例えば、デジタルカメラ１とプリンタ２の接続が解除されるまで保持される。
【００３７】
上述の実施形態では、プリンタ２が画像の印刷に失敗した場合、デジタルカメラは、ユーザに断ることなく画像ファイルのデータサイズを減少させた。しかし、ユーザは、データサイズが減少して画質の劣化した画像ファイルを用いて印刷することを望まない場合もある。そこで、データサイズの減少を行うか否かをユーザに問い合わせるようにデジタルカメラ１を構成してもよい。
【００３８】
図４は、画像ファイルのデータサイズを減少させる前にユーザに確認する処理の流れを示すフローチャートである。図４において、図３と同一の処理を行うステップには同一の符号を付し、説明を省略する。
【００３９】
ステップＳ４０１で、デジタルカメラ１は、ユーザへの問い合わせが必要か否かを判定する。必要な場合はステップＳ４０２に進む。必要でない場合は、図３で示した場合と同じであり、ステップＳ３０４に進む。ユーザへの問い合わせが必要か否かに関する情報は、例えば、デジタルカメラ１の不図示のＳＲＡＭに格納されており、ユーザは、ユーザインタフェースモジュール１４を用いて変更することができる。
【００４０】
ステップＳ４０２で、デジタルカメラ１は、不図示の表示部等にメッセージを表示するなどして、画像ファイルのデータサイズを減少させてよいか否かを指示するようにユーザに促す。併せて、どの程度（例えば、画素数をどの大きさにして）データサイズを減少させるかという情報もユーザに入力させてもよい。ユーザがデータサイズの減少を望まない場合、デジタルカメラ１は、印刷を中止する。
【００４１】
ステップＳ４０３で、デジタルカメラ１は、ステップＳ３０４と同じ方法で、或いは、ステップＳ４０２でユーザに入力された程度に、画像ファイルのデータサイズを減少させる。そして、ステップＳ３０１に戻る。
【００４２】
以上説明したように、本実施形態によれば、デジタルカメラ１は、画像ファイルをプリンタ２に供給して画像の印刷を指示する。画像ファイルが原因で印刷に失敗した旨の通知をプリンタ２から受信した場合、デジタルカメラ１は、画像ファイルのデータサイズを減少させてから再度プリンタ２に供給し、画像の印刷を指示する。
【００４３】
これにより、自己の性能をデジタルカメラに通知する機能を備えないプリンタを用いてダイレクトプリントを行う場合であっても、印刷の失敗を抑制することが可能となる。
【００４４】
また、プリンタの製造者が今後新たなプリンタを開発する場合も、自己の性能をデジタルカメラに通知する機能といった特別な機能を搭載する必要がなく、印刷の失敗を抑制するために大容量のメモリを搭載する必要もない。そのため、安価にプリンタを供給することができるという利点もある。
【００４５】
［その他の実施形態］
上述した実施の形態の処理は、各機能を具現化したソフトウェアのプログラムコードを記録した記憶媒体をシステム或は装置に提供してもよい。そして、そのシステム或は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによって、前述した実施形態の機能を実現することができる。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスクなどを用いることができる。或いは、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることもできる。
【００４６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現されるだけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含まれている。
【００４７】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれてもよい。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含むものである。
【図面の簡単な説明】
【００４８】
【図１】ダイレクトプリントを行うために用いられるデジタルカメラ１とプリンタ２の構成を示す機能ブロック図である。
【図２】プリントシステム３０を用いてダイレクトプリントを行う際に、デジタルカメラ１とプリンタ２の間で送受信されるメッセージの流れを示す図である。
【図３】ダイレクトプリントによりデジタルカメラ１がプリンタ２に画像を印刷させる処理の流れを示すフローチャートである。
【図４】画像ファイルのデータサイズを減少させる前にユーザに確認する処理の流れを示すフローチャートである。
【符号の説明】
【００４９】
１  デジタルカメラ
２  プリンタ
３０  プリントシステム
【図１】
2008047979.tif 000003
【図２】
2008047979.tif 000004
【図３】
2008047979.tif 000005
【図４】
2008047979.tif 000006