米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> ミノルタ株式会社

発明の名称 画像処理装置及び方法
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2003−36435(P2003−36435A)
公開日 平成15年2月7日(2003.2.7)
出願番号 特願2001−224665(P2001−224665)
出願日 平成13年7月25日(2001.7.25)
代理人 【識別番号】100062144
【弁理士】
【氏名又は名称】青山 葆 (外2名)
【テーマコード(参考)】
5B057
5B076
5C062
【Fターム(参考)】
5B057 CH18 
5B076 BB06
5C062 AA11 AA29 AB38 AB46 AC41 AC58 AE00 AF00 BA04
発明者 小巻 由夫
要約 課題
ネットワークを介して接続された外部サーバーに画像データの処理を依頼することが可能な画像処理装置において、画像処理を効率的に行えるようにする。

解決手段
画像処理装置は、外部サーバーから画像処理用プログラムをダウンロードする受信手段と、前記プログラムを当該画像処理装置において実行する画像処理手段と、外部サーバーに画像データの処理を依頼する送信手段と、所定条件により、画像処理手段と外部サーバーのいずれで画像データの処理を行うかを切り換える切換手段とを備える。
特許請求の範囲
【請求項1】 外部サーバーから画像処理用プログラムをダウンロードする受信手段と、前記プログラムを当該画像処理装置において実行する画像処理手段と、外部サーバーに画像データの処理を依頼する送信手段と、所定条件により、画像処理手段と外部サーバーのいずれで画像データの処理を行うかを切り換える切換手段とを備える画像処理装置。
【請求項2】 前記所定条件は画像データのサイズを含むことを特徴とする請求項1に記載された画像処理装置。
【請求項3】 前記所定条件は画像データのサイズと画像処理用プログラムのサイズを含むことを特徴とする請求項2に記載された画像処理装置。
【請求項4】 前記所定条件は、さらに、画像処理用プログラムで当該画像データの処理時間が外部機器と画像処理装置とでどちらが短いかであることを特徴とする請求項1に記載された画像処理装置。
【請求項5】 前記の切換手段は、前記の処理時間を、当該画像データのサイズ、画像処理用プログラムの処理内容、外部機器と画像処理装置の処理能力、外部機器と画像処理装置との間の通信時間を基に計算することを特徴とする請求項4に記載された画像処理装置。
【請求項6】 前記の画像処理手段または外部サーバーが当該画像に対して実行するプログラムが複数であることを特徴とする請求項1〜5のいずれかに記載された画像処理装置。
【請求項7】 画像データのサイズを含む所定条件により、当該画像処理装置と外部サーバーのいずれで画像データの処理を行うかを切り換え、外部サーバーで画像データを処理する場合は、外部サーバーに画像データを送信し、その画像データの処理を依頼し、当該画像処理装置で画像データを処理する場合は、外部サーバーから画像処理用プログラムをダウンロードし、前記プログラムを当該画像処理装置において実行する画像処理方法。
【請求項8】 画像データのサイズを含む所定条件により、当該画像処理装置と外部サーバーのいずれで画像データの処理を行うかを切り換えるステップと、外部サーバーで画像データを処理する場合は、外部サーバーに画像データを送信し、その画像データの処理を依頼するステップと、当該画像処理装置で画像データを処理する場合は、外部サーバーから画像処理用プログラムをダウンロードし、前記プログラムを当該画像処理装置において実行するステップとからなる、コンピュータにより実行可能なプログラム。
【請求項9】 請求項8に記載されたプログラムを記録したコンピュータ読み出し可能な記録媒体。
発明の詳細な説明
【0001】
【発明の属する技術分野】本発明は画像処理システムに関し、特にデジタルカメラ、PDA、携帯電話、パソコンなどのローカル機器上にある画像データを、インターネットなどを介して接続した外部サーバーに転送して画像処理することが可能なシステムに関する。
【0002】
【従来の技術】従来の画像処理を行う機器の多くは、機器内で画像処理を行っている。たとえば、デジタルカメラは、カメラ部で得られた画像データを処理する画像処理部を備える。しかし、機器内の画像処理部で高度な画像処理を行うことはコスト的、物理的に困難であり、処理能力に限界があった。同様に、多機能化にも限界があり、特殊な画像処理を利用できなかった。
【0003】一方、デジタルカメラ、PDA、携帯電話、パソコンなどのローカル機器(手もとにある機器)に外部サーバーからプログラムを転送して画像処理することが可能なシステムがある。例えば、JAVA(登録商標)言語などの汎用言語で書かれた画像処理用プログラムをダウンロードして、ローカル機器側でそのプログラムを用いて画像処理を行う。これにより、多機能化の限界を部分的に解決できる。しかし、高度な画像処理を行うことはコスト的、物理的に困難であり、処理能力に限界があり、処理能力は低いままである。
【0004】また、インターネットなどを介して外部サーバーに画像処理を依頼するシステムがある。外部サーバーでは、アップロードされた画像データについて画像処理を行う。この場合、画像データを転送するための通信遅延時間が発生する。このため、画像サイズ、処理内容、通信遅延時間、ローカル機器と外部サーバーとの処理能力の差などによっては、ローカル機器側で処理を行った方が処理時間が短い場合があった。
【0005】
【発明が解決しようとする課題】上に述べたように、外部からローカル機器にプログラムをダウンロードするシステムと外部サーバーに画像処理を依頼するシステムはいずれも問題がある。そこで、外部サーバー側からローカル機器側へのプログラムのダウンロードを可能とし、外部サーバー側でプログラムを実行するか、ローカル機器側でプログラムを実行するかを選択することが考えられる。このシステムでは、外部サーバーとローカル機器との両方で画像処理が可能となる。すなわち、ローカル機器は、ネットワークを介して接続された外部サーバー上へ画像データをアップロードして外部サーバー側に画像データの処理を依頼できるし、また、外部サーバーからローカルサーバーにプログラムをダウンロードした後にローカル機器側で画像処理を行うこともできる。ここで、画像データはサイズが大きくデータ転送に時間を要するという問題がある。外部サーバーとローカル機器とで処理時間に差がない場合、外部機器に画像データを転送する必要が無く、通信トラフィックの発生の少ないローカル機器側で処理を行った方が有益な場合が多いと考えられる。したがって、いずれでも画像処理が可能なシステムにおいて、いずれで画像処理を実行するかの選択は効率的な画像処理において重要である。選択は画像処理を効率的に行えるように行う必要がある。
【0006】なお、特開2001−5619号公報や特開2000−99287号公報に記載された印刷システムでは、ホストからプリンタに画像データを転送して印刷を行う。これらのシステムでは、ホスト側で画像処理(解像度変換、色変換など)を行うかプリンタ側で画像処理を行うかを、データ転送能力や画像処理能力から判断して選択できる。しかし、この印刷システムでは、ホスト、プリンタの画像処理機能は固定されており、画像処理プログラムの転送は行っていない。また、画像データのサイズは、ホスト側及びプリンター側の画像処理とデータ転送に対して同様に影響するため、選択の要因として最優先の事項ではない。
【0007】この発明の目的は、ネットワークを介して接続された外部サーバーに画像データの処理を依頼することが可能な画像処理装置において、画像処理を効率的に行えるようにすることである。
【0008】
【課題を解決するための手段】本発明に係る画像処理装置は、ネットワークを介して接続された外部サーバーに画像データの処理を依頼することが可能な画像処理装置である。この画像処理装置は、外部サーバーから画像処理用プログラムをダウンロードする受信手段と、前記プログラムを当該画像処理装置において実行する画像処理手段と、外部サーバーに画像データの処理を依頼する送信手段と、所定条件により、前記画像処理手段と外部サーバーのいずれで画像データの処理を行うかを切り換える切換手段とを備える。前記の画像処理装置において、たとえば、前記所定条件は画像データのサイズを含む。好ましくは、前記所定条件は画像データのサイズと画像処理用プログラムのサイズを含む。前記の画像処理装置において、たとえば、前記所定条件は、さらに、画像処理用プログラムで当該画像データの処理時間が外部機器と画像処理装置とでどちらが短いかである。たとえば、前記の切換手段は、前記の処理時間を、当該画像データのサイズ、画像処理用プログラムの処理内容、外部機器と画像処理装置の処理能力、外部機器と画像処理装置との間の通信時間を基に計算する。前記の画像処理装置において、たとえば、前記の画像処理手段または外部サーバーが当該画像に対して実行するプログラムが複数である。
【0009】本発明に係る画像処理方法では、画像データのサイズを含む所定条件により、当該画像処理装置と外部サーバーのいずれで画像データの処理を行うかを切り換え、外部サーバーで画像データを処理する場合は、外部サーバーに画像データを送信し、その画像データの処理を依頼し、当該画像処理装置で画像データを処理する場合は、外部サーバーから画像処理用プログラムをダウンロードし、前記プログラムを当該画像処理装置において実行する。
【0010】本発明に係るコンピュータにより実行可能なプログラムは、画像データのサイズを含む所定条件により、当該画像処理装置と外部サーバーのいずれで画像データの処理を行うかを切り換えるステップと、外部サーバーで画像データを処理する場合は、外部サーバーに画像データを送信し、その画像データの処理を依頼するステップと、当該画像処理装置で画像データを処理する場合は、外部サーバーから画像処理用プログラムをダウンロードし、前記プログラムを当該画像処理装置において実行するステップとからなるプログラムである。また、本発明に係るコンピュータ読み出し可能な記録媒体は、このプログラムを記録する。
【0011】
【発明の実施の形態】以下、添付の図面を参照して本発明の実施の形態を説明する。図1は、デジタルカメラ101と外部サーバー201からなるシステムの構成を示す。デジタルカメラ101は、インターネット303に接続可能であり、撮影した画像データをインターネットに送信し、処理済みの画像データを受信することができる。また、外部サーバー201からプログラム及びデータの受信が可能である。
【0012】外部サーバー201は、ローカルネットワーク304を介してインターネット303に常時接続されており、デジタルカメラ101から送信された画像データを受信し、処理済みの画像データをデジタルカメラ101ヘ返送する。また、プログラム及びデータをデジタルカメラ101ヘ送信可能である。
【0013】デジタルカメラ101は、カメラ部102、メモリ103、操作部104、CPU105、画像処理部106およびモデム107のユニットから構成される。操作部104では、ユーザーヘの各種情報の表示、操作ボタンを介してのユーザーからの指示の入力が可能である。撮影の開始、画像処理機能の選択、画像処理の開始、通信環境の設定などをCPU105に対して入力し、動作の結果、システムの状態、設定値などの情報を不図示のディスプレイなどを用いてユーザーに表示する。メモリ103は、CPU105からアクセス可能であり、プログラム及びデータが記憶されている。CPU105では、メモリ103に蓄積されたプログラム及びデータに従ってデジタルカメラ101の各部の制御を行う。
【0014】カメラ部102は、CPU105からの指令に従って撮像動作を行い、不図示の光学系からの入力画像に応じて画像データを生成し、画像処理部106へ出力する。画像処理部106では、CPU105からの指令に従ってカメラ部102から入力画像データを順次処理し、カメラ部102の特性を補正し、外部サーバ201で処理可能な標準的なデジタル画像データに変換する。変換後の画像データはメモリ103ヘ出力する。メモリ103は、画像処理部106からのデジタル画像データを入力し記憶する。
【0015】CPU105は、また、モデム107を制御することで、外部サーバー201との画像データ、プログラム、データなどの送受信が可能である。モデム107は、CPU105からの指令に従い、公衆回線301とのデータの送受信が可能である。公衆回線301は、ダイヤルアップルータ302に接続されており、ダイヤルアップルータ302を介してインターネット303ヘのデータ送信とデータ受信が可能である。メモリ103のデータは、CPU105を介してモデム107に出力可能であり、また、モデム107からの画像データ、プログラム、データはCPU105を介してメモリ103上に格納される。
【0016】外部サーバー201は、ネットワークカード202、CPU203、メモリ204およびハードディスクドライブ205のユニットから構成される。ネットワークカード202は、CPU203からの指令に従い、ローカルネットワーク304とのデータ送信、受信が可能であり、デジタルカメラ101から送信された画像データをメモリ204ヘ書きこむ。またメモリ204上の処理済み画像データ、プログラム、データを読み込み、ローカルネットワーク304を介してデジタルカメラ101ヘ送信する。ローカルネットワーク304は、不図示のルータを介して、インターネット303に接続されており、データ送信と受信が可能である。
【0017】CPU203は、メモリ204に記録されたプログラム及びデータに従って外部サーバー201の各部の制御を行う。また、メモリ204よりの画像データに対して各種の画像処理を行い、処理済みの画像データをメモリ204に生成する。また、ディスクドライブからプログラムやデータを読み出し、ネットワークカード202ヘ出力する。
【0018】ハードディスクドライブ205は、外部サーバー201上の全てのプログラム、データ、画像データを記憶し、不図示の専用コントローラ及びCPU203の指示に従ってメモリ204ヘのデータの書き込み、メモリ204からのデータの読み込みを行う。
【0019】図2は、デジタルカメラ101上のプログラムと外部サーバー201上のソフトウェアの構成を示す。デジタルカメラ101と外部サーバー201は、それぞれに構成の異なる通信系111,211、CPU112,212、OS113,213を有し、OS上に仮想マシン114,214が実装されている。デジタルカメラ101と外部サーバー201はネットワーク、インターネット、公衆網などのネットワークを介してデータの送信、受信が可能である。仮想マシン上では、デジタルカメラ101、外部サーバー201上で共に実行可能な共通プログラミング言語115、215により記述されたプログラムが実行可能である。この共通プログラミング言語としてJAVA(登録商標)言語が利用可能である。仮想マシン114,214は、デジタルカメラ101と外部サーバー201の動作環境の違いを吸収し、共通プログラム言語の実行環境を提供する。外部サーバー201のディスクドライブ304上に記録された共通プログラムは、外部サーバー201上で実行可能である。また、ネットワークを介してデジタルカメラ101側に転送することで、デジタルカメラ101上でも実行可能である。ただし、デジタルカメラ101と外部サーバー201の各々の仮想マシン114,214の処理能力は異なる。またメモリ構成の違いからデジタルカメラ101上ではリソース不足となり利用できない場合もある。
【0020】デジタルカメラ101、外部サーバー201上の仮想マシン114、214の処理能力は、表1に示すような仮想マシン仕様データとしてそれぞれメモリ103及びディスクドライブ205上に記憶されている。この例では、仮想マシンの性能を示す指標値として、1秒当たりに処理可能な平均ステップ数及び1プログラム当りの最大メモリサイズを用いている。ここでステップ数とは、仮想マシンに対するプログラムの処理量を示す単位であり、1プログラムの実行系列を構成する各命令のステップ数と各命令の頻度分布からその実行系列のステップ数が求められる。
【0021】
【表1】

【0022】仮想マシン114上で実行可能な共通プログラムは、ディスクドライブ205上に格納されており、外部サーバー202またはネットワークを介してデジタルカメラ101へ転送されて実行される。
【0023】表2にハードディスクドライブ205に記録されている各プログラムの仕様データを示す。表2では、共通プログラム言語115,215で記述されたローパスフィルタ、色変換A及びコントラスト強調の3つの画像処理用プログラムについてステップ数とメモリサイズが記述されている。
【0024】
【表2】

【0025】表2の「ステップ数」は、プログラムの処理量を示す。画素数Kの画像データを処理する場合の処理量は、次の式1により求められる。
【数1】画素数Kの画像データを処理する場合の処理量=前処理のステップ数+1画素当りのステップ数×画素数K+後処理のステップ数【0026】また、表2の「メモリサイズ」はプログラム領域と作業領域と画像用領域に分類され、それぞれのメモリサイズがバイト単位に示されている。画像用領域のメモリサイズは次の式2により求められる。
【数2】画像領域のメモリサイズ=1画素当りのメモリサイズ×画素数K【0027】次に、本発明の特徴的な部分であるデジタルカメラ101の仮想マシン上で実行するか外部サーバー201の仮想マシン上で実行するかを判断する処理について、図3のフローを参照して詳細に説明する。本実施形態では、主にデジタルカメラのメモリサイズの制約から決まる実行可能性と、デジタルカメラ101及び外部サーバー201でのそれぞれの処理時間を基準とし、実行可能であり且つ処理時間の短い方法で画像処理を行う。
【0028】デジタルカメラ101のメモリサイズの制約から決まる実行可能性は、画像のサイズとプログラムサイズに関連する。ここで、デジタルカメラ側で、そのプログラムにより当該画像データを処理できるか否かをメモリサイズと比較して判断する。また、処理時間は、以下に説明するように、画像サイズ、プログラムサイズ、上り及び下りの通信遅延時間(アップロード時間、ダウンロード時間)、ローカル機器及び外部サーバーの処理能力(仮想マシンの仕様データー)などから計算する。
【0029】デジタルカメラ101側で処理を行った場合の各種処理時間は以下の式3〜5で求められる。
【数3】デジタルカメラ101側で処理を行った場合の処理時間=プログラムを外部サーバー102からダウンロードする時間+デジタルカメラ側の仮想マシン上での処理時間【数4】プログラムを外部サーバー102からダウンロードする時間=プログラムサイズ×1バイト当りのダウンロード時間【数5】デジタルカメラ側の仮想マシン上での処理時間=画素数Kの画像データを処理する場合の処理量(式1)÷1秒間当りの処理可能な平均ステップ数【0030】外部サーバー201側で処理を行った場合の各種処理時間は以下の式6〜9で求められる。
【数6】外部サーバー102側で処理を行った場合の処理時間=画像データーを外部サーバー102ヘアップロードする時間+外部サーバー102側の仮想マシン上での処理時間+処理済みの画像データーでデジタルカメラ側にダウンロードする時間【数7】画像データを外部サーバー102ヘアップロードする時間=画像サイズ×1バイト当りのアップロード時間【数8】処理済みの画像データーでデジタルカメラ側にダウンロードする時間=画像サイズ×1バイト当りのダウンロード時間【数9】外部サーバー102側の仮想マシン上での処理時間=画素数Kの画像データを処理する場合の処理量(式1)÷1秒間当りの処理可能な平均ステップ数【0031】図3は、デジタルカメラ101で実行される判断処理を詳細に示す。まずステップS10では、画像サイズを取得する。ここで、画像データの画素数の情報を得る。ステップS12では、外部サーバー201から該当プログラムの仕様データをダウンロードする。ステップS14では、仕様データを参照してデジタルカメラ101側で実行可能か否かを判断する。ここで、作業領域と画像領域の合計が、デジタルカメラ側の仮想マシン114の1プログラム当りの最大メモリサイズを超えないか否かを判断する。超える場合は、デジタルカメラ側での実行は不可能であり外部サーバー201側で処理を行うと判断して、ステップS8へ進む。さらに、式3〜5によりデジタルカメラ側の仮想マシン114上での処理時間を求め、処理時間が所定の上限値を超える場合は、デジタルカメラ側での実行は不可能であると判断し、外部サーバー201側で処理を行うため、ステップS24へ進む。
【0032】デジタルカメラ101側で実行可能と判断した場合、ステップS16で、アップロード時間とダウンロード時間を測定値から求める。実際に画像データ、プログラム等のアップロードとダウンロードを実行し、1バイト当りのアップロード時間とダウンロード時間の予測値を決定する。例えば、実測値の最大値を予測値とする。ステップS18では、デジタルカメラ101側で処理を行った場合の処理時間を、式3〜5を用いて算出する。また、ステップS20では、外部サーバー201側で処理を行った場合の処理時間を、式6〜9を用いて算出する。ステップS22では、ステップS18の算出値とステップS20の算出値を比較して、処理方法を判断する。ステップS18の算出値T1がステップS20の算出値T2より小さい場合は、デジタルカメラ側で処理を行うと判断してステップS26へ進む。ステップS20の算出値がステップS18の算出値より小さい場合は、外部サーバー側で処理を行うと判断してステップS24へ進む。
【0033】ステップS24では、外部サーバー201で処理を行う。ここで、画像データーを外部サーバー201へアップロードして、外部サーバー201から処理済みの画像データがダウンロードされるまで待機する。また、ステップS26では、デジタルカメラ101側で処理を行う。プログラムを外部サーバー201からダウンロードし、デジタルカメラ側の仮想マシン上でプログラムを実行し、処理済みの画像データーを得る。
【0034】本実施形態では、画像サイズ、仮想マシンの仕様データー、アップロード時間、ダウンロード時間、プログラムの仕様データなどの情報に基づいて、デジタルカメラ側で画像処理を行うか,外部サーバー側で画像処理を行うかを画像サイズを含む情報を用いて選択する。具体的には、該当プログラムの仕様データを参照して、作業領域と画像領域の合計が、デジタルカメラ側の仮想マシン114の1プログラム当りの最大メモリサイズを超える場合は、デジタルカメラ側での実行は不可能であると判断する。さらに、デジタルカメラ側の仮想マシン114上での処理時間が所定の上限値を超える場合も、デジタルカメラ側での実行は不可能であると判断する。また、デジタルカメラ101側で処理を行った場合の処理時間と、外部サーバー201側で処理を行った場合の処理時間を、画像サイズ、プログラムサイズ、アップロード時間とダウンロード時間(上り及び下りの通信遅延時間)、ローカル(外部)機器及び外部サーバーの処理能力から計算する。デジタルカメラ側で処理した方が処理が速い場合は、デジタルカメラ101側で画像処理を行うので、外部サーバー201側で画像処理を行う場合に比べて、処理時間の短縮、不要な通信トラフィックの発生防止という効果がある。
【0035】第1の実施形態では、一度に1つのプログラムを外部サーバーからダウンロードする方法であった。しかし、デジタルカメラ101からの仕様に応じて、外部サーバー201側が仕様の実現に必要な複数のプログラムをダウンロードするようにしてもよい。この場合、外部サーバー201上ではデジタルカメラ101側へ送信するプログラムの仕様データとして、各プログラムの仕様データを加算して送信する。例えば、ローパスフィルタの処理とコントラスト強調の処理を組み合わせる場合、プログラムの仕様データのステップ数、メモリサイズの各項目は、ローパスフィルタとコントラスト強調の対応する項目を加算した値とする。このような、複数のプログラムを用いた画像処理を可能とすることで、より複雑且つ多様な処理をデジタルカメラ側で実行することが可能となる。
【0036】なお、ローカル機器は、上述の実施形態で用いたデジタルカメラに限定されず、画像データを扱いインターネットに接続可能なPDA、携帯電話、パソコンなどでもよい。
【0037】
【発明の効果】外部サーバー側からローカル機器側へのプログラムのダウンロードを可能とし、外部サーバー側でプログラムを処理するか、ローカル機器側でプログラムを処理するかを画像サイズを含む情報を用いて判断できる。ローカル機器側で処理を行うので、処理時間を短縮でき、不要な通信トラフィックの発生を防止できる。複数のプログラムを用いた画像処理を可能とすることでより複雑且つ多様な処理をデジタルカメラ側で実行できる。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013