JP5495879B2 - 画像処理システム - Google Patents
画像処理システム Download PDFInfo
- Publication number
- JP5495879B2 JP5495879B2 JP2010068620A JP2010068620A JP5495879B2 JP 5495879 B2 JP5495879 B2 JP 5495879B2 JP 2010068620 A JP2010068620 A JP 2010068620A JP 2010068620 A JP2010068620 A JP 2010068620A JP 5495879 B2 JP5495879 B2 JP 5495879B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- image data
- cpu
- image processing
- reduced
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00236—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
- H04N1/00238—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer using an image reproducing device as a local output from a computer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00244—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00249—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a photographic apparatus, e.g. a photographic printer or a projector
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00249—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a photographic apparatus, e.g. a photographic printer or a projector
- H04N1/00265—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a photographic apparatus, e.g. a photographic printer or a projector with a photographic printing apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/0035—User-machine interface; Control console
- H04N1/00405—Output means
- H04N1/00408—Display of information to the user, e.g. menus
- H04N1/0044—Display of information to the user, e.g. menus for image preview or review, e.g. to help the user position a sheet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2350/00—Solving problems of bandwidth in display systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2101/00—Still video cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0008—Connection or combination of a still picture apparatus with another apparatus
- H04N2201/001—Sharing resources, e.g. processing power or memory, with a connected apparatus or enhancing the capability of the still picture apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0008—Connection or combination of a still picture apparatus with another apparatus
- H04N2201/0034—Details of the connection, e.g. connector, interface
- H04N2201/0037—Topological details of the connection
- H04N2201/0039—Connection via a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
- H04N2201/3201—Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
- H04N2201/3225—Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
- H04N2201/325—Modified version of the image, e.g. part of the image, image reduced in size or resolution, thumbnail or screennail
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Editing Of Facsimile Originals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Digital Computer Display Output (AREA)
- Television Signal Processing For Recording (AREA)
- Facsimiles In General (AREA)
Description
本発明は、RAW画像を現像するための画像処理システムに関する。
近年、画像データを記録する際に、一般的なJPEGフォーマットとともに、CCDやCMOSなどの撮像素子から得られたデータを、そのままに近い形で記録するRAWフォーマットの画像データが使われるようになってきた。RAWフォーマットは、デジタルカメラメーカー毎に独自のフォーマットである。
このため、ユーザは、RAWフォーマットの画像データを現像するためには、各メーカーが提供する専用のソフトウェアプログラム(現像ソフトウェア)を情報機器にインストールする必要がある。即ち、情報機器が現像ソフトウェアをインストールしなければ、RAWフォーマットの画像データ(RAW画像データ)を現像できず、ディスプレイに表示できないという問題があった。
この問題の解決策として、クライアント装置がネットワークを介してRAW画像データをサーバ装置へ送信すると、サーバ装置がRAW画像データを現像し、クライアントへ汎用フォーマットの画像データを返送することが行われている(特許文献1参照)。これにより、クライアントはサーバ装置から返送された画像データを使って表示や印刷を行うことができる。
しかしながら、RAW画像データはデータサイズが大きいため、ネットワークを介してクライアント装置からサーバ装置へ送信するのに多くの時間がかかってしまう。現在、一般的なRAW画像データでは、CCDやCMOSの撮像素子のサイズが横:4000、縦:3000ピクセル程度である。このデータの各ピクセルを14ビットでデジタル化して保存した場合、被写体の複雑度にも依存するが、一枚あたり20Mバイト程度となってしまうのが一般的である。
また、現在一般的なネットワークの通信速度は、例えば上り方向で1Mbps程度である。1Mbpsの通信速度で20MバイトのRAW画像データを送信した場合、20MByte=160Mbitなので、160Mbit/1Mbps=160秒(2分40秒)もの時間がかかってしまう。
さらに、ユーザが大量のRAW画像データを現像したい場合には、大変多くの時間を費やしてしまい、ユーザビリティが低下する。
本発明は上記従来の問題点に鑑み、クライアント装置からサーバ装置へRAW画像を送信し、該サーバ装置がRAW画像データを現像してクライアント装置へ送信する場合に、クライアント装置でRAW現像結果を表示するまでに要する時間を短縮する。そして、ユーザが現像結果を早く確認できるようにすることを目的とする。
上記目的を達成するために、本発明の画像処理システムは、 サーバ装置とクライアント装置がネットワークを介して接続された画像処理システムであって、前記クライアント装置は、元画像を縮小することによって縮小画像を生成する縮小手段と、前記縮小画像を前記サーバ装置へ送信する第1の送信手段と、 前記サーバ装置が縮小画像を画像処理した結果を、前記サーバ装置から受信する第1の受信手段と、前記縮小画像の画像処理の結果を画面に表示する表示手段と、前記表示手段が前記縮小画像の画像処理の結果を画面に表示した後、前記元画像に対する画像処理の実行指示を前記サーバ装置へ発行する発行手段と、前記送信手段が前記縮小画像を前記サーバ装置へ送信するとき、前記元画像の前記サーバ装置への送信を開始する開始手段とを有し、前記サーバ装置は、前記クライアント装置から送信された縮小画像に対して画像処理を実行する画像処理手段と、前記画像処理手段が前記縮小画像に対して画像処理を実行した結果を、前記クライアント装置へ送信する第2の送信手段と、前記元画像を前記クライアント装置から受信する第2の受信手段とを有し、前記画像処理手段は、前記縮小画像に対して画像処理を実行した後、前記縮小画像に対する画像処理に用いた調整値を用いて、前記元画像に対する画像処理を実行することを特徴とする。
本発明によれば、クライアント装置からサーバ装置に画像を送信し、該サーバ装置において画像処理された結果をクライアント装置で受信して表示エリアに表示する際に、該結果を表示するまでに要する時間を短縮することができる。
[第1の実施の形態]
<画像処理システムの構成>
図1は、本発明の実施の形態に係る画像処理システムの概略構成を示す模式図である。
<画像処理システムの構成>
図1は、本発明の実施の形態に係る画像処理システムの概略構成を示す模式図である。
この画像処理システムは、図1に示すように、クライアント装置101、デジタルカメラ102、及びサーバ装置105を備えている。そして、デジタルカメラ102は、USBケーブル103でクライアント装置101と接続され、クライアント装置101とサーバ装置105はインターネット回線104を介して接続されている。
クライアント装置101は現在一般的に使用されているPC(パーソナルコンピュータ)と同様のもので構わず、ネットワークカードアダプタを装備し、インターネット回線104に接続されているものとする。
デジタルカメラ102は、撮影した画像をRAWフォーマットで記録し、USBケーブル103を介して、RAWフォーマットの画像ファイル(RAW画像ファイル)をクライアント装置101へ送信する。
サーバ装置105は、オンライン現像サービスを行うためのサーバ用ソフトウェアがインストールされ、実行されている。通常、サーバ装置105は、高速に大量のデータ処理とネットワーク通信を行うため、高速なCPUや大量の記憶媒体を備えているが、ハードウェア構成としてはクライアント装置101と同様のもので構わない。
<クライアント装置101とサーバ装置105の内部構成>
まず、図2は、クライアント装置101の内部構成を示すブロック図である。
まず、図2は、クライアント装置101の内部構成を示すブロック図である。
クライアント装置101は、液晶ディスプレイ等から成る表示部201、マウスとキーボードから成る入力部202、不揮発性記憶媒体であるハードディスク203、揮発性記憶媒体であるDRAM204、及び中央演算処理装置であるCPU205を備えている。そして、これらが内部バス221に接続されている。
内部バス221は、表示部201、入力部202、ハードディスク203、CPU205、DRAM204、及びインターネット回線104と、図示されてない他のユニット同士とを直接または間接的に結線し、互いにデータ送受信を可能とするバスである。
ハードディスク203は、オペレーティングシステム(OS)やプログラム、RAW画像ファイルを記憶する。プログラムは、クライアント装置101を画像処理システムのクライアント装置として動作させるためのものであり、CPU205はハードディスク203のプログラムをDRAM204に読み込んで、逐次実行することにより、後述する機能及び処理を実現する。
なお、RAW画像ファイルは、デジタルカメラ102により撮影され、デジタルカメラ102から受信されたものである。そして、CPU205はオペレーティングシステムにより、撮影毎に生成されたRAW画像データをファイル単位で管理する。
DRAM204は、上述のプログラムやRAW画像ファイル、RAW画像ファイルの画像データの実体である元画像データ(元RAW画像データ)、縮小RAW画像データ、元RAW現像結果、縮小RAW現像結果、現像条件、及び元RAW送信済フラグを記憶する。
なお、DRAM204は、ハードディスク203のプログラムの中から、必要とされるプログラムを読み込み、記憶する。また、DRAM204はハードディスク203のRAW画像ファイルの中から、入力部202を介してユーザによって選択されたRAW画像ファイルを読み込んで記憶する。
また、DRAM204は現像条件の初期値として、コントラスト=0、明るさ=0を格納し、ユーザが入力部202を介して現像条件の変更を行った場合には、その値に更新して格納する。ここで現像条件とは、RAW画像データを現像する際に用いる画質調整パラメータのセットであり、本実施形態では、コントラストと明るさに関して−5から+5までの11段階の調整値を指定できるものとする。
また、DRAM204は、元RAW送信済フラグの初期値として、未完了を示す“0”を格納し、選択対象のRAW画像ファイル全てについてサーバ装置105へ送信を完了した際に、完了を示す“1”に更新して格納する。
CPU205はファイルIO、メモリIOや表示部201への表示処理、画像処理、入力部202からのユーザ入力受付処理、インターネット回線104を介したサーバ装置105とのコマンドやデータの送受信処理などのPCとしての基本的な処理の制御を行う。また、CPU205は各処理順序の制御、その他、現在一般的なPCで必要とされる処理を実行する。
次に、サーバ装置105の内部構成について図3を参照して説明する。図3は、サーバ装置105の内部構成を詳細に示すブロック図である。
サーバ装置105は、不揮発性記憶媒体であるハードディスク222、揮発性記憶媒体であるDRAM239、及び中央演算処理装置であるCPU224を備え、これらが内部バス243に接続されている。
内部バス243は、ハードディスク222、CPU224、DRAM239、インターネット回線104と、図示されてない他のユニット同士を直接または間接的に結線し、互いにデータ送受信を可能とするバスである。
ハードディスク222は、オペレーティングシステム(OS)や、サーバ装置105を画像処理システムのサーバ装置105として動作させるためのプログラムが記憶されている。なお、CPU224はハードディスク222のプログラムをDRAM239に読み込まんで、逐次実行することにより、後述する機能及び処理を実現する。
DRAM239は、上述のプログラムや後述する元RAW画像データ、縮小RAW画像データ、元RAW現像結果、縮小RAW現像結果、元RAWデータ受信済フラグを記憶する。
なお、DRAM239は、ハードディスク222のプログラムの中から、必要とされるプログラムを読み込み、記憶する。また、DRAM239は、インターネット回線104を介して、クライアント装置101より受信した元RAW画像データや縮小RAW画像データを記憶する。
また、DRAM239は元RAW受信済フラグの初期値として未完了を示す“0”を格納し、元RAW画像データの受信が完了した時点で、受信完了を示す“1”に更新して格納する。
CPU224は、ファイルIO、メモリIO、画像処理、インターネット回線104を介したサーバ装置105とのコマンドやデータの送受信処理やPCとしての基本的な処理の制御を行う。また、CPU224は各処理順序の制御、その他、現在一般的なPCで必要とされる処理を実行する。
<クライアント装置101の処理手順>
次に、本実施の形態に係るクライアント装置101の処理手順について、図5及び図6のフローチャートを参照して説明する。
次に、本実施の形態に係るクライアント装置101の処理手順について、図5及び図6のフローチャートを参照して説明する。
まず、ステップS501では、ユーザがクライアント装置101を操作し、サーバ装置105のURLを指定すると、CPU205はインターネット回線104を介してサーバ装置105へアクセスし、現像サービスを要求する。このとき、CPU205はユーザアカウントやパスワードなど、現像サービスのために必要な情報もサーバ装置105へ送信する。
次に、ステップS502において、ユーザの操作に応答して、CPU205はハードディスク203に存在する複数のRAW画像ファイルの中から、現像処理対象のRAW画像ファイルを選択する。
なお、クライアント装置101には、RAW画像ファイルを現像して表示可能なフォーマットへと変換するソフトウェアがインストールされていないため、ユーザはファイル名や撮影日時などの属性情報から画像内容を想像して、RAW画像ファイルを選択する。したがって、ユーザがRAW画像ファイルの選択を誤る可能性が高いため、選択操作のトライアンドエラーを軽減するために早く内容の分かる表示をする必要がある。
ステップS503では、CPU205は、サーバ装置105と通信し、ネゴシエーション処理を行い、それが完了すると、元RAW画像データを送信するための元RAW送信スレッドを起動する。ここで、スレッドとは、現在一般的なオペレーティングシステムと同様のものであり、プログラムの実行におけるプロセスよりも細かい並行処理の実行単位である。以後、CPU205はメインスレッド処理のバックグランドで元RAW送信スレッド処理を実行する。そして、CPU205はメインスレッドでは、ステップS504へ処理を進める。一方、元RAW送信スレッドでは、後述の図6のフローチャートに示す処理に進む。
なお、ステップS503におけるネゴシエーション処理では、CPU205は元RAW画像データの縮小処理に必要な情報も送受信する。CPU205は、サーバ装置105とのネゴシエーション時に、現像処理対象とするRAW画像ファイルのヘッダ部のデータをサーバ装置105へ送信する。サーバ装置105はヘッダ部のデータを解析し、詳細フォーマット及びデジタルカメラ102の機種を特定するための情報を取得する。そして、該当するフォーマット及び機種に対応したデコーダプログラム及び縮小処理プログラムをクライアント装置101へ送信する。なお、本実施の形態ではサーバ装置105はフォーマット及び機種に対応したデコーダ及び縮小処理プログラムのみをクライアント装置101へ送信するが、この限りではない。例えば、サーバ装置105は、あらかじめサポートする全フォーマット及び機種に対応したデコーダプログラム及び縮小処理プログラムをクライアント装置101へと送信しておく。そして、CPU205はRAW画像ファイルのフォーマット及び機種に応じてプログラムを選択的に用いるようにしても構わない。
ステップS504では、CPU205は、ステップS503のネゴシエーション処理で取得したデコーダプログラムや縮小処理プログラムにしたがって、元RAW画像データの縮小処理を行う。本実施の形態においては、表示部201における図9に示すような画像表示ウィンドウ750の画像表示エリア751のサイズが、横方向640ピクセル、縦方向480ピクセル(以下単に、640×480と表現する)とする。また、元RAW画像データは図4(a)のようにR(赤)、G(緑)、G(緑)、B(青)フィルタの各コンポーネントから構成されるベイヤー配列で、横5120ピクセル、縦3840ピクセルとする。CPU205は、この画像表示エリアの表示サイズを検知し、表示サイズに合わせて、元RAW画像データを縮小処理して縮小RAW画像データを生成する。即ち、図4(a)に示すような元RAW画像データを縦横それぞれ1/8に間引いて、図4(b)に示すような横方向640ピクセル、縦方向480ピクセルの縮小RAW画像データを生成する。縦横それぞれ1/8のサイズとなるので、縮小RAW画像データのサイズは、元RAW画像データのサイズの1/64となる。そして、CPU205は、生成された縮小RAW画像データをハードディスク203に格納する。
なお、本実施の形態における縮小処理では、図4(a)、(b)中の矢印P1、P2、P3のように、ベイヤー配列の隣接パターンが乱れないよう、隣接するR、G、G、Bピクセルを一つのブロックとして扱い、ブロック単位で間引き処理を行うものとする。
次に、ステップS505において、CPU205はハードディスク203に格納されている640×480サイズの縮小RAW画像データをインターネット回線104を介して、サーバ装置105へ送信する(第1の送信処理)。その後、ステップS506においてCPU205は、ステップS505でサーバ装置105へ送信した縮小RAW画像データの現像結果をサーバ装置105から受信し(第1の受信処理)、ハードディスク203に格納する。
本実施の形態において、縮小RAW画像データの現像結果は、サーバ装置105においてJPEGフォーマットで圧縮されている。このため、ステップS507においてCPU205は縮小RAW画像データの現像結果に対してJPEGデコード処理を行う。そして、ステップS508で、CPU205は表示部201の画像表示エリア751に、デコード処理を施された縮小RAW画像データの現像結果を表示する。
この時点で、ユーザはステップS502で選択したRAW画像ファイルの画像内容を表示部201上で確認することができる。よって、ユーザはRAW画像ファイルを間違って選択していても、気が付くことができる。
ステップS509では、CPU205はユーザが入力部202を介して、ファイル再選択コマンドを入力したか否かを判定する。ステップS508で表示されたRAW画像ファイルがユーザの意図する画像でなかった場合には、ユーザは入力部202を操作して、ファイル再選択コマンドを入力することができる。ステップS509の判定がYESの場合には、CPU205はステップS510において元RAW送信スレッドのリセット処理を行った後、ステップS502へと処理を戻す。
ステップS510での元RAW送信スレッドのリセット処理では、CPU205はDRAM204の元RAW送信済フラグを“0”に初期化し、サーバ装置105へ選択RAW変更通知を送った後、元RAW送信スレッドを終了する。
一方、ステップS509の判定がNOの場合には、ステップS511で、CPU205は現在、表示中の縮小RAW現像結果の現像処理時に用いた現像条件と新たに入力された現像条件をDRAM204から読み出し、変更有無を判断する。本実施の形態においては、ユーザが入力部202よりスライダコントロールを操作して、コントラストと明るさの2つの調整項目を現像条件として入力できる。ステップS511の判断がYESの場合には、ステップS523においてCPU205はサーバ装置105へ現像条件を送信した後、ステップS506へと処理を戻す。
例えば、現在、表示部201に表示している縮小RAW現像結果の現像処理時に用いた現像条件が<コントラスト=0、明るさ=0>であり、新たに入力された現像条件が<コントラスト=2、明るさ=1>であった場合には、現像条件の変更があると判断する。
一方、新たに入力された現像条件も<コントラスト=0、明るさ=0>である場合には、現像条件の変更がなされていないと判断する。
ステップS512では、ユーザの操作に応答して、CPU205は元RAW画像の現像に対する実行指示の入力があるか否かを判断する。ユーザが縮小RAW現像結果に満足すると、ユーザは入力部202を介して元RAW画像データの現像処理の実行指示を入力し、それに応答してCPU205は実行指示をサーバ装置105へ発行する。ステップS512の判断がNOの場合には、CPU205はステップS511へと処理を戻す。
一方、ステップS512の判断がYESの場合、ステップS513でCPU205は、DRAM204の元RAW送信済フラグを参照し、元RAW画像データのサーバ装置105への送信が完了したか否かを判定する。CPU205はステップS513で、元RAW送信済フラグの値が“1”の場合には、全ての元RAW画像データの送信が完了したと判定する。その後、ステップS514においてCPU205は、元RAW画像データの現像結果をサーバ装置105から受信し、ハードディスク203に記憶する。そして、全ての元RAW画像データの現像結果の受信が完了すると、ステップS515においてCPU205はサーバ装置105との間でのサービス終了処理を行った後、本処理手順を終了する。その後、CPU205はハードディスク203から元RAW画像データの現像結果を読み出し、JPEGデーコード処理を実行し、表示部201に表示する。
次に、ステップS503でCPU205が起動した元RAW画像送信スレッドの処理手順について、図6のフローチャートを参照して説明する。
CPU205は上述したメインスレッドと並列に、図6のステップS517以降の元RAW送信スレッドの処理を行う。なお、現在一般的なシングルCPUのPCにおける並列処理では、実際に並列に処理されるわけではない。CPU205はオペレーティングシステムにしたがって各スレッドの処理を細切れに順番に処理を行うことにより、擬似的に並列処理が行われる。本実施の形態における並列処理もこれと同様で構わない。
ステップS517では、CPU205はサーバ装置105とネゴシエーションを行い、元RAW画像データの送信を開始することをサーバ装置105へ通知する。ステップS518では、CPU205は、メインスレッドがサーバ装置105とデータ送受信中か否かの判定を行う。メインスレッドがサーバ装置105とデータ送受信中である場合には、所定の待ち時間の後、再度ステップS518の判定を行う。
一方、メインスレッドがサーバ装置105とデータ送受信中でない場合には、ステップS519において、CPU205は元RAW画像データを小さな単位に分割してサーバ装置105へ送信する。
このように本実施の形態においては、メインスレッドによる縮小RAW画像データ及び縮小RAW現像結果の送受信に優先的にネットワークリソース(帯域)を割り当てる。その結果、元RAW画像データをバックグランドで送信していても、縮小RAW画像データの表示及び表示更新のレスポンスがよくなる。また、ステップS519での元RAW画像データを小さな単位に分割して部分毎に送信することで、送受信のデータ量が少なくなり、送受信の処理や表示のための画像処理にかかる負荷が軽減される。
次に、ステップS520では、CPU205は元RAW画像データの全てをサーバ装置105へ送信し終わったか否かの判定を行う。未送信データがある場合には、ステップS520の判定はNOとなり、CPU205はステップS518へと処理を戻す。元RAW画像データ全てをサーバ装置105へ送信し終わると、ステップS520の判定はYESとなり、ステップS521においてCPU205はDRAM204の元RAW送信済フラグを“1”に更新した後、元RAW送信スレッドの処理を終了する。
<サーバ装置105の処理手順>
次に、本実施の形態に係るサーバ装置105の処理手順について、図7及び図8のフローチャートを参照して説明する。
次に、本実施の形態に係るサーバ装置105の処理手順について、図7及び図8のフローチャートを参照して説明する。
ステップS601でCPU224は、現像サービスの要求や現像サービスに必要な情報をクライアント装置101から受信し、現像サービスの開始処理を行う。現像サービスの開始処理では、サーバ装置105はクライアント装置101のユーザの認証などを行うとともに、元RAW受信済フラグの初期化処理なども行う。
次にステップS602において、CPU224は、クライアント装置101とネゴシエーション処理を行い、それが完了すると、ステップS603において元RAW受信スレッドを起動する。そして、CPU224はメインスレッド処理のバックグランドで元RAW受信スレッド処理を実行する(第2の受信処理)。そして、CPU224はメインスレッドでは、ステップS604へ処理を進める。一方、元RAW受信スレッドでは、後述の図8のフローチャートに示す処理に進む。
ステップS604において、CPU224は、縮小RAW画像データをクライアント装置101から受信し、ハードディスク222に格納する。ステップS605において、CPU224は、ハードディスク222の縮小RAW画像データに対して、DRAM239から現像条件を読み出し、それにしたがって現像処理を行い、現像結果をハードディスク222に格納する。なお、DRAM239の現像条件の初期値は<コントラスト=0、明るさ=0>とする。
ステップS606においてCPU224はステップS605で現像された結果をJPEGフォーマットで圧縮し、ステップS607でクライアント装置101へ送信する(第2の送信処理)。ステップS608では、CPU224はクライアント装置101から現像条件の更新を受信したか否かを判定する。本判定がYESの場合は、CPU224はステップS605へと処理を戻し、受信した現像条件の調整値でDRAM239を更新し、更新された現像条件を用いて再度、RAW縮小画像データに対して現像処理を行う。
例えば、CPU224はクライアント装置101から初期値とは異なる、<コントラスト=2、明るさ=1>の現像条件を受信すると、DRAM239の現像条件の調整値を更新し、新たな調整値を用いてRAW縮小画像データの現像を行う。
ステップS608での判定がNOの場合には、ステップS609でCPU224は、クライアント装置101から選択RAW変更通知を受信したか否かを判定する。本判定がYESの場合には、ステップS610においてCPU224は、元RAW受信済フラグなどの初期化を行った後、ステップS602へと処理を戻す。
次のステップS611では、CPU224はクライアント装置101より元RAW現像の実行指示を受け付けたか否かを判定する。ステップS611の判定がNOの場合、CPU224は、ステップS608へと処理を戻す。ステップS611の判定がYESの場合には、ステップS612においてCPU224は、元RAW受信済フラグを参照し、全ての元RAW画像データの受信が完了したか否かの判定を行う。本判定の判断がNOの場合には、所定の待ち時間の後、CPU224は再度ステップS612の判定を行う。ステップS612の判定がYESの場合には、ステップS613においてCPU224はステップS605で用いた現像処理条件をDRAM239から読み出し、それを用いて元RAW画像データの現像を行い、結果をハードディスク222に格納する。
次のステップS614で、CPU224はハードディスク222の元RAW画像データの現像結果に対して、JPEGエンコード処理を施す。ステップS615においてCPU224はJPEGエンコード処理した、元RAW画像データの現像結果をクライアント装置101へ送信する。送信が完了するとステップS616でCPU224はサービス終了処理を行った後、本フローにおけるメインスレッドの処理を終了する。
次に、ステップS603でCPU224が起動した元RAW受信スレッドの処理手順について、図8のフローチャートを参照して説明する。
まず、ステップS617において、CPU224はメインスレッドがデータ送受信中か否かを判定する。本判定がYESの場合は、CPU224は、所定の待ち時間の後、再度ステップS617の判定を行う。本判定がNOの場合には、ステップS618でCPU224は、元RAW画像データの一部データを受信する。続くステップS619でCPU224は、クライアント装置101からの選択RAW変更通知の有無を判定する。ステップS619での判定がYESの場合には、CPU224は現在受信中の元RAW画像データは使用されないデータであるため、元RAW受信スレッドを終了する。
ステップS619での判定がNOの場合には、ステップS620でCPU224は元RAW画像データを全て受信したか否かを判定する。全ての元RAW画像データの受信が完了した場合には、ステップS621においてCPU224は元RAW受信済フラグを“1”に更新した後、元RAW受信スレッドを終了する。ステップS620の判定がNOの場合には、CPU224はステップS617へと処理を戻す。
以下、各処理にかかる時間の一例を説明する。次の式(1)、式(2)は、各ピクセルのビット深度が16ビット(2バイト)の場合の元RAW画像データ及び縮小RAW画像データそれぞれのデータサイズを示す。
元RAW画像データのデータサイズ:
5120×3840×2バイト=39、321、600バイト(約40Mバイト)
・・・式(1)
縮小RAW画像データのデータサイズ:
640×480×2バイト=614400バイト(約614Kバイト)
・・・式(2)
ステップS504のRAW画像データの縮小処理は、前述のとおり単純な間引き処理であり、処理内容は614Kバイトのメモリ上のデータのメモリ上におけるコピーであり、現在一般的なPCにおいては、コンマ1秒以下の短時間の処理である。
5120×3840×2バイト=39、321、600バイト(約40Mバイト)
・・・式(1)
縮小RAW画像データのデータサイズ:
640×480×2バイト=614400バイト(約614Kバイト)
・・・式(2)
ステップS504のRAW画像データの縮小処理は、前述のとおり単純な間引き処理であり、処理内容は614Kバイトのメモリ上のデータのメモリ上におけるコピーであり、現在一般的なPCにおいては、コンマ1秒以下の短時間の処理である。
また、ステップS505の縮小RAW画像データの送信処理にかかる時間は、インターネット回線104の上り方向の通信速度が、現在一般的な2Mbps程度とすると、式(3)のとおり、2.5秒程度となる。
縮小RAW画像データ送信時間:
614Kバイト=614、000×8bits=4、912、000bits
4、912、000bits÷2、000、000bps=2.456s
(約2.5秒) ・・・ 式(3)
一方、ステップS503で元RAW画像データの送信処理にかかる時間は、式(4)のとおり、約160秒となる。
614Kバイト=614、000×8bits=4、912、000bits
4、912、000bits÷2、000、000bps=2.456s
(約2.5秒) ・・・ 式(3)
一方、ステップS503で元RAW画像データの送信処理にかかる時間は、式(4)のとおり、約160秒となる。
元RAW画像データ送信時間:
40Mバイト=40、000、000×8bits=320、000、000bits
320、000、000bits÷2、000、000bps=160s(約160秒) ・・・式(4)
また、ステップS605で縮小RAW画像データの現像にかかる時間は、現在一般的なPC上の現在一般的な現像ソフトウェアでは、約1秒程度である。
40Mバイト=40、000、000×8bits=320、000、000bits
320、000、000bits÷2、000、000bps=160s(約160秒) ・・・式(4)
また、ステップS605で縮小RAW画像データの現像にかかる時間は、現在一般的なPC上の現在一般的な現像ソフトウェアでは、約1秒程度である。
また、ステップS507とステップS614のJPEGのエンコード・デコード処理にかかる時間は、現在一般的なPCにおいては、コンマ1秒以下のオーダーであり、無視できる。
また、縮小RAW現像結果のデータサイズは、式(5)のとおり、約92Kバイト程度となる。これは、RGB3コンポーネントの8ビットデータとし、JPEG圧縮率を一般的な1/10程度とした場合の値である。
元データ:640×480×3×1=921、600バイト
JPEG圧縮後:921、600バイト÷10=92、160バイト(約92Kバイト) ・・・式(5)
また、ステップS607で縮小RAW現像結果を送信する際にかかる時間は、式(6)のとおり、約0.14秒程度となる。これは、インターネット回線104の下り方向の通信速度が現在一般的な5Mbps程度とした場合の値である。
JPEG圧縮後:921、600バイト÷10=92、160バイト(約92Kバイト) ・・・式(5)
また、ステップS607で縮小RAW現像結果を送信する際にかかる時間は、式(6)のとおり、約0.14秒程度となる。これは、インターネット回線104の下り方向の通信速度が現在一般的な5Mbps程度とした場合の値である。
縮小RAW現像結果送信時間:
92、160バイト×8bit=737、280bit
737、280bit÷5、000、000bps=0.14s(約0.14秒) ・・・式(6)
以上から、RAW画像ファイルを選択した後、その画像内容がクライアント装置101の表示部201の画像表示エリア751に表示されるまでにかかる時間T1は、式(7)のとおり、3.64秒程度である。
92、160バイト×8bit=737、280bit
737、280bit÷5、000、000bps=0.14s(約0.14秒) ・・・式(6)
以上から、RAW画像ファイルを選択した後、その画像内容がクライアント装置101の表示部201の画像表示エリア751に表示されるまでにかかる時間T1は、式(7)のとおり、3.64秒程度である。
ステップS505での縮小RAW送信時間=約2.5秒
ステップS605での縮小RAW現像時間=約1.0秒
ステップS607での縮小RAW現像結果送信時間=約0.14秒
T1=2.5秒+1.0秒+0.14秒=3.64秒
・・・式(7)
なお、ステップS523の更新された現像条件の送信にかかる時間は、送信すべきデータがコントラストと明るさに関する2つの整数値であり、データ量が数十バイト程度のオーダーであり、無視できる。
ステップS605での縮小RAW現像時間=約1.0秒
ステップS607での縮小RAW現像結果送信時間=約0.14秒
T1=2.5秒+1.0秒+0.14秒=3.64秒
・・・式(7)
なお、ステップS523の更新された現像条件の送信にかかる時間は、送信すべきデータがコントラストと明るさに関する2つの整数値であり、データ量が数十バイト程度のオーダーであり、無視できる。
以上より、現像条件の変更を反映した現像結果が画像表示エリア751へと表示されるまでにかかる時間T2は、後述する式(8)のとおり、1.14秒程度となる。
縮小RAW現像時間=約1.0秒(S605と同様)
縮小RAW現像結果送信時間=約0.14秒(S607と同様)
T2=1.0秒+0.14秒=1.14秒 ・・・式(8)
なお、ステップS612で元RAW画像データの受信を完了するまでの待ち時間は、ユーザがRAW画像データの調整作業にかける時間によって異なるが、例えば2分間程度かかった場合、式(9)のとおり、40秒程度となる。
縮小RAW現像結果送信時間=約0.14秒(S607と同様)
T2=1.0秒+0.14秒=1.14秒 ・・・式(8)
なお、ステップS612で元RAW画像データの受信を完了するまでの待ち時間は、ユーザがRAW画像データの調整作業にかける時間によって異なるが、例えば2分間程度かかった場合、式(9)のとおり、40秒程度となる。
元RAW画像データの受信時間=元RAW画像データ送信時間−調整作業時間
=160秒−120秒=40秒
・・・式(9)
なお、元RAW画像データの現像処理にかかる時間は、現在一般的なPC上で、およそ10秒程度である。
=160秒−120秒=40秒
・・・式(9)
なお、元RAW画像データの現像処理にかかる時間は、現在一般的なPC上で、およそ10秒程度である。
以上、本実施の形態によれば、サーバ装置105は、元RAW画像データより前に縮小RAW画像データをクライアント装置101から受信して現像処理を行うので、ユーザが現像結果の概要を確認するまでに送受信するデータ量が少なく済む。
サーバ装置105は元RAW画像データを現像処理する前に、縮小RAW画像データを現像処理し、その結果をクライアント装置101に提供するので、クライアント装置101のユーザは画像の現像結果の概要を早く確認することができる。
また、サーバ装置105は縮小RAW画像データを受信し、現像処理を行うのと並行して元RAW画像データをクライアント装置101から受信するので、ユーザが現像結果の概要を確認するとすぐに、元RAW画像データの現像処理を行うこともできる。
なお、本実施の形態において、クライアント装置101のCPU205は、各プログラムをハードディスク203からロードすることとした。しかし、この限りではなく、Webブラウザのプラグインとして、CPU205はサーバ装置105からダウンロードしてもよい。
[第2の実施の形態]
第2の実施の形態における画像処理システムでは、画像表示エリア751に表示しているRAW画像データの拡大機能を提供する。この拡大機能を利用することによって、ユーザが画像中の特定部位の詳細を確認できる。クライアント装置101は、ユーザが画像表示エリア751内をマウスカーソルでクリックすることにより、RAW画像データを1/8縮小表示から等倍表示へ切り替える。以下、第1の実施の形態と同様の部分については説明を省略し、本実施形態に特有の構成を詳細に説明する。
第2の実施の形態における画像処理システムでは、画像表示エリア751に表示しているRAW画像データの拡大機能を提供する。この拡大機能を利用することによって、ユーザが画像中の特定部位の詳細を確認できる。クライアント装置101は、ユーザが画像表示エリア751内をマウスカーソルでクリックすることにより、RAW画像データを1/8縮小表示から等倍表示へ切り替える。以下、第1の実施の形態と同様の部分については説明を省略し、本実施形態に特有の構成を詳細に説明する。
<画像表示>
以下、図10(a)、(b)及び図11(a)、(b)を参照して、本実施の形態による画像表示の様子について説明する。図10(a)、(b)及び図11(a)、(b)は、第2の実施の形態における画像表示状態を示す画面図である。
以下、図10(a)、(b)及び図11(a)、(b)を参照して、本実施の形態による画像表示の様子について説明する。図10(a)、(b)及び図11(a)、(b)は、第2の実施の形態における画像表示状態を示す画面図である。
本実施の形態における画像表示ウィンドウ750では、図10(a)に示すような拡大ボタン1001及び縮小ボタン1002を有する。ユーザが拡大ボタン1001をマウスカーソルでクリックすると、マウスカーソルが拡大ボタンマークに変化する。この状態で、画像表示エリア751上の任意の位置で、マウスの左ボタンをクリックすると、クリック位置を中心とした等倍表示へと切り替わる。
図10(b)は、ユーザが花の部分をクリックした後、花部分が等倍で表示されている様子を示すものである。この状態では、茎の部分や葉の部分など表示されていないエリアが存在するが、図中の1101、1102は非表示部分を表示するためのスクロールボタンである。図11(a)に示すようにユーザがスクロールボタン1101を下方向へドラッグすることにより、画像表示エリア751の表示状態が変更される。図11(b)はユーザがスクロールボタン1101を下方向にスクロールした際に、花の下にある葉のエリアが表示されたことを示すものである。
<クライアント装置101側の処理手順>
次に、本実施の形態におけるクライアント装置101側の処理手順について、図12、図13及び図14を参照して説明する。図12は本実施の形態におけるクライアント装置101側の処理手順を示すフローチャートである。図13及び図14は、元RAW画像データから切り出した縮小RAW画像データを説明するための概念図である。
次に、本実施の形態におけるクライアント装置101側の処理手順について、図12、図13及び図14を参照して説明する。図12は本実施の形態におけるクライアント装置101側の処理手順を示すフローチャートである。図13及び図14は、元RAW画像データから切り出した縮小RAW画像データを説明するための概念図である。
図12に示すように、本実施の形態におけるクライアント装置101の処理手順は、第1の実施の形態の処理手順とほぼ同様であり、ステップS801及びステップS802の手順のみ異なる。
ステップS801でCPU205は、画像表示エリア751の状態により、元RAW画像データに対して、縮小処理または部分切り出し処理を行う。現在表示すべき倍率が等倍表示の場合には、まず、CPU205は表示対象エリアの算出を行う。例えば、ユーザが拡大ボタン1001をクリックした座標が、画像左上隅を原点として、X、Y=(200、200)の場合には、以下のように算出する。
始めに、クリック座標をオリジナル座標系に変換する。即ち、1/8座標系での(200、200)は、オリジナル座標系では8倍して(1600、1600)となる。そして、表示エリア各頂点の座標は、次のとおり算出される。つまり、(1600、1600)座標を中心とした640×480サイズの各頂点の座標は、式(11)〜式(14)により算出される。
左上隅のX座標=1600−(640/2)=1280 ・・・式(11)
左上隅のY座標=1600−(480/2)=1360 ・・・式(12)
右下隅のX座標=1280+640−1=1919 ・・・式(13)
右下隅のY座標=1360+480−1=1839 ・・・式(14)
以上の算出した座標を用いて、ステップS801でCPU205は、図13に示すように、元RAW画像データから切り出した縮小RAW画像データを生成する。なお、現在表示すべき倍率が640×480サイズの縮小表示の場合は、第1の実施の形態と同様の縮小処理を行う。
左上隅のY座標=1600−(480/2)=1360 ・・・式(12)
右下隅のX座標=1280+640−1=1919 ・・・式(13)
右下隅のY座標=1360+480−1=1839 ・・・式(14)
以上の算出した座標を用いて、ステップS801でCPU205は、図13に示すように、元RAW画像データから切り出した縮小RAW画像データを生成する。なお、現在表示すべき倍率が640×480サイズの縮小表示の場合は、第1の実施の形態と同様の縮小処理を行う。
続いて、画像表示エリア751を、式(11)〜式(14)=(1280、1360、1919、1839)の状態からユーザがスクロール操作を行った場合について説明する。
本実施の形態においては、ユーザがスクロールボタン1101を1ドット動かした際に、エリアを20ドットスクロールして表示する。この場合、ユーザがスクロールボタンを下方向に50ドットのドラッグ操作をすると、元RAW画像データの座標系でのエリアを100ピクセル下にずらすことになるので、CPU205はエリアの座標を次のとおり計算する。
左上隅のX座標 = 式(11) ・・・式(15)
左上隅のY座標 = 式(12)+100 =1460 ・・・式(16)
右下隅のX座標 = 式(13) ・・・式(17)
右下隅のY座標 = 式(14)+100 =1939 ・・・式(18)
以上の算出した座標を用いて、ステップS801でCPU205は、図14に示すように元RAW画像データから切り出した縮小RAW画像データを生成する。
左上隅のY座標 = 式(12)+100 =1460 ・・・式(16)
右下隅のX座標 = 式(13) ・・・式(17)
右下隅のY座標 = 式(14)+100 =1939 ・・・式(18)
以上の算出した座標を用いて、ステップS801でCPU205は、図14に示すように元RAW画像データから切り出した縮小RAW画像データを生成する。
ステップS802でCPU205は、入力部202より拡大・縮小・スクロール操作などの表示状態を変更する操作をユーザが行ったか否かを判定する。ユーザが表示状態変更操作を行った場合には、CPU205はステップS801へと処理を戻し、縮小RAW画像データの作成処理を再度行う。
<第2の実施の形態におけるサーバ装置105側の処理手順>
次に、本実施の形態におけるサーバ装置105側の処理手順について、図15のフローチャートを参照して説明する。
次に、本実施の形態におけるサーバ装置105側の処理手順について、図15のフローチャートを参照して説明する。
図15に示すように、本実施の形態におけるクライアント装置101の処理手順は、第1の実施の形態の処理手順とほぼ同様であり、ステップS901の手順のみ異なる。
ステップS901においてCPU224は、クライアント装置101からの縮小RAW画像データの再送信要求があるか否かを判定する。判定がYESの場合には、CPU224はステップS604へと処理を戻し、縮小RAW画像データを再度、クライアント装置101から受信する。判定がNOの場合には、CPU224はステップS608へ処理を進める。
<画像処理システムのシーケンス>
次に、図12及び図15のフローチャートにより説明したクライアント装置101及びサーバ装置105の各処理手順のシーケンスについて更に詳しく説明する。
次に、図12及び図15のフローチャートにより説明したクライアント装置101及びサーバ装置105の各処理手順のシーケンスについて更に詳しく説明する。
(A)ユーザが等倍を指示した際のシーケンス
まず、ユーザが等倍を指示した際のシーケンスについて、図16及び図17を参照して説明する。図16(a)、(b)は、ユーザが等倍を指示した際の画像表示状態を示す画面図であり、図17は、その際のシーケンス図である。
まず、ユーザが等倍を指示した際のシーケンスについて、図16及び図17を参照して説明する。図16(a)、(b)は、ユーザが等倍を指示した際の画像表示状態を示す画面図であり、図17は、その際のシーケンス図である。
ユーザが図16(a)に示すような縮小表示状態から、拡大ボタン1001で画像表示エリア751上をクリックした場合について説明する。ユーザがクリックすると、クライアント装置101はステップS1601において、上記の式(11)〜式(14)のとおり元RAW画像データの切り出しエリアを算出する。そして、算出結果に基づき花部分の元RAW画像データの切り出し処理を行って縮小RAW画像データを生成した後、サーバ装置105へ縮小RAW画像データを送信する。
サーバ装置105は縮小RAW画像データをクライアント装置101から受信すると、ステップS1602において縮小RAW画像データに対して現像処理を行う。そして、ステップS1603においてサーバ装置105はその結果をJPEGエンコードした後、クライアント装置101へ送信する。
クライアント装置101は現像結果をサーバ装置105から受信すると、ステップS1604において、画像表示エリア751の表示更新を行うことにより、図16(b)に示すような花部分が等倍で表示された状態とする。
(B)ユーザがスクロール操作を行った場合のシーケンス
次に、ユーザがスクロール操作を行った場合のシーケンスについて、図18及び図19を参照して説明する。図18(a)、(b)は、ユーザがスクロール操作を行った際の画像表示状態を示す画面図であり、図19は、その際のシーケンス図である。
次に、ユーザがスクロール操作を行った場合のシーケンスについて、図18及び図19を参照して説明する。図18(a)、(b)は、ユーザがスクロール操作を行った際の画像表示状態を示す画面図であり、図19は、その際のシーケンス図である。
図18(a)に示すような表示状態から、ユーザがスクロールボタン1101を下方向にドラッグすると、クライアント装置101はステップS1701において、式(15)〜式(18)のとおり元RAW画像データの切り出しエリアを算出する。次に、算出結果に基づき草部分の元RAW画像データの切り出し処理を行って縮小RAW画像データを生成した後、サーバ装置105へと縮小RAW画像データを送信する。
サーバ装置105は縮小RAW画像データをクライアント装置101から受信すると、ステップS1702において縮小RAW画像データに対して現像を行い、その結果をステップS1703においてJPEGエンコードした後、クライアント装置101へ送信する。クライアント装置101は現像結果をサーバ装置105から受信すると、ステップS1704において、画像表示エリア751の表示更新を行うことにより、図18(b)に示すような草部分が等倍で表示された状態とする。
以上説明したとおり、本実施の形態では、ユーザによる拡大・縮小・スクロール操作といった画像表示状態の変更にともなって、クライアント装置101は元RAW画像データを切り出して縮小RAW画像データを生成し、サーバ装置105へ再送信する。そして、サーバ装置105は再送信された縮小RAW画像データに対して現像処理を行い、その結果をクライアント装置101へ送信する。このことにより、ユーザが等倍でのRAW現像結果を部分的に確認できる。
また、クライアント装置101は等倍表示時には、表示エリアを考慮して元RAW画像データに対して切り出し処理を行い、必要最小限の元RAW画像データをサーバ装置105へと送信する。したがって、高解像度画像での確認を画像表示更新のレスポンスを維持して行うことができる。これは、ユーザが合焦点位置の詳細を確認する必要がある場合において、画像全体で確認する必要はないときに、ユーザ所望する箇所をより高速で高画質に表示することができ、ユーザビリティが向上する。
[他の実施の形態]
なお、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
なお、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。
101 クライアント装置
102 デジタルカメラ
104 インターネット回線
105 サーバ装置
102 デジタルカメラ
104 インターネット回線
105 サーバ装置
Claims (4)
- サーバ装置とクライアント装置がネットワークを介して接続された画像処理システムであって、
前記クライアント装置は、
元画像を縮小することによって縮小画像を生成する縮小手段と、
前記縮小画像を前記サーバ装置へ送信する第1の送信手段と、
前記サーバ装置が縮小画像を画像処理した結果を、前記サーバ装置から受信する第1の受信手段と、
前記縮小画像の画像処理の結果を画面に表示する表示手段と、
前記表示手段が前記縮小画像の画像処理の結果を画面に表示した後、前記元画像に対する画像処理の実行指示を前記サーバ装置へ発行する発行手段と、
前記送信手段が前記縮小画像を前記サーバ装置へ送信するとき、前記元画像の前記サーバ装置への送信を開始する開始手段とを有し、
前記サーバ装置は、
前記クライアント装置から送信された縮小画像に対して画像処理を実行する画像処理手段と、
前記画像処理手段が前記縮小画像に対して画像処理を実行した結果を、前記クライアント装置へ送信する第2の送信手段と、
前記元画像を前記クライアント装置から受信する第2の受信手段とを有し、
前記画像処理手段は、前記縮小画像に対して画像処理を実行した後、前記縮小画像に対する画像処理に用いた調整値を用いて、前記元画像に対する画像処理を実行することを特徴とする画像処理システム。 - 前記縮小手段は、前記画面の表示サイズに合わせて前記元画像を縮小することを特徴とする請求項1に記載の画像処理システム。
- 前記縮小手段は、前記画面に表示される画像のエリアの変更の指示があると、前記元画像の前記エリアと対応する部分を切り出して前記縮小画像を生成することを特徴とする請求項1または2に記載の画像処理システム。
- 前記元画像はRAW画像データであり、前記画像処理は前記RAW画像データの現像処理であることを特徴とする請求項1乃至3のいずれか1項に記載の画像処理システム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010068620A JP5495879B2 (ja) | 2009-04-30 | 2010-03-24 | 画像処理システム |
US12/757,593 US8823752B2 (en) | 2009-04-30 | 2010-04-09 | Image processing system |
US14/341,082 US9553952B2 (en) | 2009-04-30 | 2014-07-25 | Image processing system |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009110718 | 2009-04-30 | ||
JP2009110718 | 2009-04-30 | ||
JP2010068620A JP5495879B2 (ja) | 2009-04-30 | 2010-03-24 | 画像処理システム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014042081A Division JP5693766B2 (ja) | 2009-04-30 | 2014-03-04 | クライアント装置、サーバ装置及びこれらの制御方法並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010279020A JP2010279020A (ja) | 2010-12-09 |
JP5495879B2 true JP5495879B2 (ja) | 2014-05-21 |
Family
ID=43030062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010068620A Expired - Fee Related JP5495879B2 (ja) | 2009-04-30 | 2010-03-24 | 画像処理システム |
Country Status (2)
Country | Link |
---|---|
US (2) | US8823752B2 (ja) |
JP (1) | JP5495879B2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5852370B2 (ja) * | 2011-08-31 | 2016-02-03 | キヤノン株式会社 | 画像処理装置、画像処理装置の制御方法およびプログラム |
USD741873S1 (en) * | 2012-12-05 | 2015-10-27 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
USD743416S1 (en) * | 2012-12-05 | 2015-11-17 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
USD743417S1 (en) * | 2012-12-05 | 2015-11-17 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
JP2015015699A (ja) * | 2013-06-07 | 2015-01-22 | キヤノン株式会社 | 画像処理装置、情報処理方法及びプログラム |
KR102173107B1 (ko) | 2013-12-11 | 2020-11-02 | 삼성전자주식회사 | 클라우드 서버 기반 영상 처리 방법, 단말 및 시스템 |
WO2015098841A1 (ja) * | 2013-12-25 | 2015-07-02 | 株式会社リコー | 情報処理装置、プログラム、及び伝送システム |
WO2016038808A1 (en) * | 2014-09-12 | 2016-03-17 | Canon Kabushiki Kaisha | Image processing apparatus and image processing method |
JP6406949B2 (ja) * | 2014-09-12 | 2018-10-17 | キヤノン株式会社 | 画像処理装置及び画像処理方法 |
JP7166164B2 (ja) | 2018-12-26 | 2022-11-07 | シャープ株式会社 | 画像処理装置 |
JP7229842B2 (ja) * | 2019-04-17 | 2023-02-28 | キヤノン株式会社 | 情報処理装置 |
JP7418110B2 (ja) * | 2019-10-31 | 2024-01-19 | キヤノン株式会社 | 通信装置、その制御方法、およびそのプログラム |
JP7458806B2 (ja) * | 2020-02-06 | 2024-04-01 | キヤノン株式会社 | 画像処理装置および画像処理方法 |
CN112099873B (zh) * | 2020-09-15 | 2023-06-02 | 广州华多网络科技有限公司 | 应用程序首页加载方法、装置、设备及存储介质 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0636182B2 (ja) * | 1988-02-06 | 1994-05-11 | 大日本スクリーン製造株式会社 | 画像ファイリング・検索方法および装置 |
US6011538A (en) * | 1997-06-18 | 2000-01-04 | Paradise Electronics, Inc. | Method and apparatus for displaying images when an analog-to-digital converter in a digital display unit is unable to sample an analog display signal at a desired high sampling frequency |
JP3824817B2 (ja) * | 1999-09-17 | 2006-09-20 | 大日本スクリーン製造株式会社 | 画像処理システム、サーバー、クライアント側端末、画像処理方法、及び記録媒体 |
US20050210413A1 (en) * | 1999-11-24 | 2005-09-22 | Quek Su M | Utilization of digital images |
US6583799B1 (en) * | 1999-11-24 | 2003-06-24 | Shutterfly, Inc. | Image uploading |
JP3576502B2 (ja) * | 2001-05-09 | 2004-10-13 | 松下電器産業株式会社 | 画像生成装置 |
CN100515035C (zh) * | 2001-09-10 | 2009-07-15 | 株式会社尼康 | 数字照相机系统、图像存储装置和数字照相机 |
US7970240B1 (en) * | 2001-12-17 | 2011-06-28 | Google Inc. | Method and apparatus for archiving and visualizing digital images |
JP4399778B2 (ja) * | 2004-02-13 | 2010-01-20 | ノーリツ鋼機株式会社 | 写真プリントシステム |
JP2006033507A (ja) * | 2004-07-16 | 2006-02-02 | Sony Corp | 遠隔編集システム、主編集装置、遠隔編集装置、編集方法、編集プログラム、及び記憶媒体 |
US20080232658A1 (en) * | 2005-01-11 | 2008-09-25 | Kiminobu Sugaya | Interactive Multiple Gene Expression Map System |
JP4799009B2 (ja) * | 2005-02-17 | 2011-10-19 | キヤノン株式会社 | 画像処理装置及び方法 |
JP2006345319A (ja) * | 2005-06-09 | 2006-12-21 | Canon Inc | 撮像装置及びその制御方法 |
JP2007188238A (ja) * | 2006-01-12 | 2007-07-26 | Fujifilm Corp | プリント注文システム及び注文受付サーバ並びに画像処理方法 |
JP2007208430A (ja) * | 2006-01-31 | 2007-08-16 | Konica Minolta Medical & Graphic Inc | 画像処理システム |
-
2010
- 2010-03-24 JP JP2010068620A patent/JP5495879B2/ja not_active Expired - Fee Related
- 2010-04-09 US US12/757,593 patent/US8823752B2/en not_active Expired - Fee Related
-
2014
- 2014-07-25 US US14/341,082 patent/US9553952B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US9553952B2 (en) | 2017-01-24 |
US20140337416A1 (en) | 2014-11-13 |
US20100277508A1 (en) | 2010-11-04 |
US8823752B2 (en) | 2014-09-02 |
JP2010279020A (ja) | 2010-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5495879B2 (ja) | 画像処理システム | |
CN107534704B (zh) | 一种经由通信网络连接的信息处理方法、设备和介质 | |
US20040021909A1 (en) | Image information distributing method, image information distributing system, central apparatus, terminal apparatus, scanner apparatus, and computer memory product | |
JP2005327258A (ja) | ウエブサービスアプリケーションベースの光学文字認識システム及び方法 | |
JP2011118627A (ja) | 印刷装置、印刷方法、及び印刷プログラム | |
US8717589B2 (en) | Image processing system, job execution method, and non-transitory computer-readable recording medium encoded with job execution program | |
JP2009124316A (ja) | 情報処理装置、情報処理方法、プログラム及び記録媒体 | |
JP6089454B2 (ja) | 画像配信装置、表示装置及び画像配信システム | |
JP2010176579A (ja) | 印刷方法、画像形成装置及びウェブサーバ | |
JP2008197809A (ja) | 情報処理装置、代行処理実行方法および代行処理実行プログラム | |
JP4982404B2 (ja) | 画像処理システム | |
US8395669B2 (en) | Image data transmission apparatus and method, remote display control apparatus and control method thereof, program, and storage medium | |
JP6107246B2 (ja) | 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム | |
JP5693766B2 (ja) | クライアント装置、サーバ装置及びこれらの制御方法並びにプログラム | |
JP2007141152A (ja) | デジタルカメラ、印刷装置、画像供給装置 | |
JP2006056119A (ja) | 画像形成制御システム、画像形成装置、外部機器、画像形成制御プログラムおよびそれを記録したコンピュータ読取り可能な記録媒体 | |
CN103227807B (zh) | 信息处理系统及方法、信息处理装置及方法、信息输出装置及方法 | |
JP2016066164A (ja) | 情報処理装置、情報処理システム、表示装置及びプログラム | |
JP2007156357A (ja) | 画面操作装置及びサーバ装置、並びにその方法、プログラム及び記憶媒体 | |
JP6175880B2 (ja) | 文書出力装置、文書出力装置の制御方法、および文書出力装置の制御プログラム | |
JP4322090B2 (ja) | 印刷管理サーバ、印刷管理プログラム及び画像形成方法 | |
JP6977384B2 (ja) | 情報処理装置、プログラムおよび画像出力システム | |
JP6508016B2 (ja) | 画像形成システム、画像形成装置、及びプログラム | |
JP2006270224A (ja) | 画像読取装置,画像読取システム,画像読取方法及びプログラム | |
JP2008022489A (ja) | データ送受信システム、データ送受信方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130304 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140131 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140304 |
|
LAPS | Cancellation because of no payment of annual fees |