説明

画像ファイリングシステム

【課題】 高画質,高速での表示が可能な画像ファイリングシステムを提供する。
【解決手段】 書籍をスキャナでディジタル化した画像データをサーバに格納し,コンピュータで閲覧するシステムを構成する。画像データは,各ページに対し低解像度から高解像度まで複数段階で用意する。また,各解像度の画像データは,破線の通りブロック化し,ブロックごとに画像ファイルとして格納しておく。画像の表示時には,指定された表示スケールに対応する解像度の画像データを用いることにより,高画質表示を実現することができる。また,拡大表示時には,ディスプレイ等に表示できる範囲はページ全体ではなくその一部に限られるから,表示に必要となるブロックのみを読み出して表示を行う。こうすることで,高解像度の表示時でも,表示に用いられるデータ量を抑制することができ,高速での表示を実現することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は,画像データを格納し,閲覧するための画像ファイリングシステムに関する。
【背景技術】
【0002】
ディジタルカメラで撮影して得られる画像データや,書籍等をスキャンして得られた画像データを格納し,閲覧するための画像ファイリングシステムがある。画像ファイリングシステムでは,格納された画像を検索し,閲覧するために,サムネイルが使われている。
例えば,特許文献1は,ネガフィルム等をスキャンして得られた画像データに基づいて写真を発注するための技術を開示しており,詳しくは,印刷用に生成された高解像度のスキャンデータに解像度変換を施すことで,モニタでの表示用の中解像度の画像データや,インデックス用の低解像度の画像データを生成する技術を開示している。このように,用途に応じた解像度の画像データを用意することで,それぞれの用途に応じた画質および処理速度を維持することができる。例えば,高解像度の画像データでインデックス用の小さい画像を表示しようとすれば,データの読み出し,および縮小処理に時間がかかってしまうが,予め低解像度の画像データを用意しておけば,速やかにインデックスを表示させることができるのである。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第3511625号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
画像ファイリングシステムでは,画像をユーザの指示に従って拡大・縮小表示させることも求められる。従来は,画像データの解像度変換によって表示させる画像を拡大・縮小していた。画像を拡大する場合には,原画像データを補間処理することで,高解像度の画像データを生成し,縮小する場合には,原画像データをサンプリングで間引くことにより低解像度の画像データを生成するのである。
しかし,このように解像度変換を行っていては,画像を表示するために非常に長時間を要することになる。また,このような解像度変換では,高画質な画像を表示することはできない。画質の低下は,特に拡大表示するときには,看過し得ないものとなる。
【0005】
拡大表示する際の画質を向上するためであれば,予め高解像度の画像データを用意しておく方法も考えられる。
しかし,この方法では,画像データのサイズが大きくなり,データの読み出し,表示処理に時間を要することになる。例えば,サーバからネットワークを介して画像データを提供する場合には,ネットワークのトラフィック増大も招き,ますます表示までの時間が長くなってしまう。
【0006】
本発明は,こうした課題に鑑み,画像ファイリングシステムにおいて,指定された解像度に応じて高画質な画像を高速で表示可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
画像データを格納し,閲覧するための画像ファイリングシステムとしての本発明の構成を説明する。
最初に画像データ等に関して本明細書で用いる用語について定義を述べる。
まず,本発明では,書籍等の図画,ディジタルカメラ等で撮影された写真を閲覧対象とする。この閲覧単位とされる書籍の各ページや,1枚の図画,1枚の写真のことを本明細書では「単位画像」と称する。書籍については,見開き状態で見ることができるよう2つのページを結合させることもある。この場合は,見開き状態のページが閲覧単位となるので,見開き状態を「単位画像」と称する。
この「単位画像」を表すディジタルデータを「画像データ」と称する。書籍等や図画の場合は,スキャンすることで画像データが得られる。ディジタルカメラの場合は,撮影された写真のデータ自体が,本明細書にいう画像データとなる。本発明では,スキャン等して得られた画像データを解像度変換することで,単位画像に対して複数の解像度で「画像データ」が生成される。この解像度変換を施す前の画像データを,特に「原画像データ」と称することもある。書籍の場合は,上述のように2つのページを結合させることもある。この場合,各ページをスキャンした状態の画像データも「原画像データ」と呼ぶが,各ページの原画像データを,解像度変換せずに結合した状態の画像データも,解像度変換を施すもとのデータという意味で,「原画像データ」と称する。
本発明では,各画像データは,縦横所定サイズの領域に分割される。この領域のことを,「ブロック」と称する。ただし,このブロックのサイズは,原画像ごと,解像度ごとに異なっていても良い。
また画像データは,ブロックごとに個別のデータとして格納される。この各ブロックを表すデータを,「画像ファイル」と称する。
以上を要約すれば,本発明では,それぞれの単位画像には,複数の解像度からなる画像データが生成されるが,各画像データは,複数のブロックに分割され,ブロックごとに画像ファイルとして格納されていることになる。
【0008】
画像ファイリングシステムは,画像データベース記憶部,指示入力部,表示制御部を備えている。
画像データベース記憶部は,単位画像を複数の解像度でディジタル化した画像データを,解像度ごとに所定形状のブロックに分割し,ブロックごとに画像ファイルとして格納する。先に説明した通りブロックのサイズは,解像度ごとに異なっていてもよいが,統一しておく方が,画一的に処理できる点で好ましい。
指示入力部は,画像を表示する際の解像度および表示範囲の指示を入力する。解像度は,単位あたりの画素数を意味するが,その指示は,基準となる画像サイズに対する拡大・縮小倍率で行っても良い。表示範囲の指定とは,画像を表示可能なディスプレイまたはウィンドウのサイズによって,画像の一部しか表示し得ない場合に,どの部分を表示するかの指定を意味する。表示範囲の指定は,例えば,画像全体の中での表示範囲を相対的に特定できる情報であれば足りる。表示範囲が矩形の場合,表示範囲の中心点と縦横のサイズを画像に対する相対座標で示す方法をとることができる。また,矩形領域の対角線上の2点の位置を単位画像に対する相対座標で示す方法をとってもよい。表示範囲のサイズが固定の場合には,中心点の相対座標と,予め設定された固定サイズによって表示範囲を特定するものとしてもよい。
表示制御部は,画像データベース記憶部から,指定された解像度および表示範囲に対応する画像ファイルを読み出し,画像ファイルを配列して,単位画像のうち表示範囲に相当する部分を表示する。
【0009】
本発明によれば,解像度ごとに画像データが用意されているため,指定された解像度に応じた画像データを用いることができ,表示される画像の画質を維持することができる。また,それぞれの画像データは,ブロックに分割された上で,ブロックごとに画像ファイルとして読み出し可能に格納されている。従って,ユーザから指示された表示範囲に対応する画像ファイルのみを読み出せば,求められた画像を表示することが可能である。このように本発明によれば,画像データ全体を読み込む必要がなくなるから,高解像度で画像を表示する場合でも,表示に要するデータサイズを抑制することができる。この結果,高速,高画質での画像表示を実現することができるのである。
【0010】
一般に,表示範囲は,ディスプレイおよびウィンドウのサイズによって規定されるものであるから,表示すべき画像の解像度が変わっても,表示範囲全体の画素数は変化せず,この表示範囲内に画像を表示するために要求されるデータ容量は,本来,変化しない。拡大した画像を表示する場合には,全体の画像データのサイズは大きくなるが,表示に用いられる部分のデータサイズは拡大前と変わらず,ほとんどが表示に使われない無駄なデータとなるだけなのである。本発明は,こうした着眼に基づきなされたものであり,画像データをブロックに区分した画像ファイルとして格納しておき,画像の任意の部分をブロック単位で読み出し可能とすることによって,無駄なデータの読み込みを抑制し,表示の高速化を図っている。
【0011】
画像ファイリングシステムは,単体の装置として構成してもよいし,端末としてのコンピュータとサーバとをネットワークで接続したシステムとして構成してもよい。後者の場合は,例えば,画像データベース記憶部をサーバに設け,指示入力部および表示制御部をコンピュータ側に設ける構成とすることができる。
【0012】
画像ファイリングシステムが扱う画像データは,先に説明した通り,ディジタルカメラ等で撮影された写真のデータ,書籍や図画をスキャンしたデータなどとすることができる。書籍をスキャン等した画像データを扱う場合,本発明の画像ファイリングシステムには,さらに,画像入力部,ページマージ部,画像ファイル生成部を備えるようにしてもよい。
画像入力部は,書籍の各ページを単位画像としてディジタル化して原画像データを生成する。各ページのディジタル化は,スキャナによってスキャンしてもよいし,ディジタルカメラ等で撮影してもよい。
ページマージ部は,原画像データを2ページ分ずつ書籍の見開き状態に配列して結合した状態の原画像データを生成する。書籍は,開く方向によって2ページ目以降のページ配列が異なる。縦書きの書籍のように右開きの書籍では,右側,左側の順にページが配列されるのに対し,横書きの書籍のように左開きの書籍では,左側,右側の順にページが配列される。ページマージ部は,書籍ごとのページ配列を考慮して,見開き状態を単位画像とする原画像データを構成するのである。ページ配列は,縦書き/横書き等に基づいて自動的に判別してもよいし,ユーザが指示するようにしてもよい。表紙は,見開き状態とは無関係であるから,結合させる必要はない。
このように見開き状態の原画像データを生成した場合,画像ファイル生成部は,結合された原画像データに基づいて,各解像度の画像ファイルを生成する。
【0013】
書籍は,見開き状態で閲覧するのが通常である。書籍によっては見開き状態で閲覧されることを前提として左右のページにまたがってページ構成されている場合もある。上記態様によれば,見開き状態を単位画像とした状態で画像データが生成されるため,書籍から得た画像データを違和感なく閲覧することが可能となる。
【0014】
書籍から得られた画像データを扱う場合に限らず,本発明においては,画像データベース記憶部は,さらに,単位画像に対応する複数の解像度の画像ファイルを一つのレコードに関連づけて管理する管理データを格納してもよい。
この場合,画像ファイリングシステムには,管理データを参照して,指定された検索条件に該当するレコードを検索する検索部を設け,表示制御部は,管理データの検索されたレコードに基づいて,画像ファイルの読み込みを行うようにしてもよい。
【0015】
本発明では,単位画像ごとに複数の解像度で画像データが生成されているが,単位画像の名称など,画像データを管理するための情報は,解像度に関わらず同一である。上記管理データは,複数の解像度の画像ファイルを一つのレコードに関連づけて管理するため,効率的なデータ管理が可能である。複数の解像度の画像ファイルをまとめて管理する方法として,例えば,各レコードに,各解像度の画像ファイルの格納先を特定する情報(以下,「格納先情報」という)を記録するようにしてもよいし,各解像度の画像ファイルをまとめて一つのフォルダまたはディレクトリに格納し,このフォルダ等への格納先情報を記録するようにしてもよい。
このような管理データを備えておけば,画像データを閲覧する際には,管理データのレコードに記録された格納先情報に基づいて容易に格納先を見いだすことができる。また,一つのレコードを検索すれば,複数の解像度の画像データの格納先を把握することができるため,解像度の切り替え,つまり画像の拡大・縮小を円滑に行うことができる。
【0016】
書籍から取り込んだ画像データを対象とする場合,管理データには,目次データを格納してもよい。
目次データは,書籍全体の目次内容およびそれぞれの目次内容に対応するレコードを表すリンク情報を含む内容とすることができる。目次内容は,書籍のどのページに,どの内容が記されているかを表すものであり,リンク情報は,そのページに対応するレコードを特定する情報である。
レコードが特定できれば,格納先情報に基づいて,そのページに対応する画像データを特定することができるため,目次データに,リンク情報を含む場合には,各レコードに対して目次内容を対応づける必要はない。このため,目次データは,1冊の書籍を構成する複数のレコードのうち,いずれか一つのレコードに格納してもよい。こうすることで各レコードに目次内容を記録する場合に比較して,管理データの整備負荷を軽減することができる。
また,表示制御部は,目次データに基づいて,リンク情報を付した状態で目次内容を一覧で示す目次欄を表示してもよい。このように目次内容に,リンク情報が付しておくことにより,目次欄の目次内容をクリック等することでリンク情報を介して該当する画像データを表示させることが可能となる。
【0017】
また,管理データには,各レコードに対し,レコードに対応する単位画像に記載された文字から改行を除去して生成された文字データを格納してもよい。
こうすることにより,検索部は,指定された文字列が文字データに含まれるレコードを検索することができる。文字データは,改行を除去した状態で生成されているため,書籍中では行をまたいで記載されていた文字列も検索の対象とすることができる。
例えば,「文字列」を検索する場合,書籍中では,2行にわたって,「文字+列」(+は改行されていることを示す)のように記載されている場合がある。仮に改行を除去しない状態で文字データを生成したとすれば,このような場合,「文字列」で検索を行っても,該当するレコードを見いだすことはできない。これに対し,上述のように改行を除去して文字データを構成しておけば,漏れなく検索することが可能となる。
【0018】
本発明は,先に述べた通り,単体の装置として構成することもできるし,端末としてのコンピュータとサーバとをネットワークで接続したシステムとして構成することもできる。
このようにコンピュータとサーバとをネットワークで接続して画像ファイリングシステムを構築する場合,本発明は,かかるシステムに用いられるサーバとしての構成をとることもできる。サーバは,上述の画像データベース記憶部を備える構成とし,画像閲覧装置として機能するコンピュータから,画像ファイルの送信要求を入力し,画像データベース記憶部から,指定された画像ファイルを読み出し,画像閲覧装置に供給すればよい。
【0019】
本発明は,この他に,コンピュータによって,画像データを格納し,閲覧する画像ファイリング方法として構成してもよい。また,画像ファイリングシステムの各機能をコンピュータに実現させるためのコンピュータプログラムとして構成することもできる。コンピュータとサーバとをネットワークで接続して画像ファイリングシステムを構築する場合を考えると,本発明は,コンピュータに画像ファイリングシステムの端末としての機能を実現させるためのコンピュータプログラムとして構成することもできる。
本発明は,さらに,かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体としては,フレキシブルディスクやCD−ROM,光磁気ディスク,ICカード,ROMカートリッジ,パンチカード,バーコードなどの符号が印刷された印刷物,コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置等,コンピュータが読取り可能な種々の媒体を利用できる。
【図面の簡単な説明】
【0020】
【図1】画像ファイリングシステムの構成を示す説明図である。
【図2】画像ファイルの構造を示す説明図である。
【図3】管理データの構造を示す説明図である。
【図4】画像登録処理のフローチャートである。
【図5】画像ファイル生成処理のフローチャートである。
【図6】テキストデータ生成処理のフローチャートである。
【図7】検索画面を示す説明図である。
【図8】検索結果の一覧表示を示す説明図である。
【図9】ページ選択画面例を示す説明図である。
【図10】拡大表示画面例を示す説明図である。
【図11】ページ選択画面表示処理のフローチャートである。
【図12】拡大・縮小表示処理のフローチャートである。
【図13】拡大・縮小時の処理内容を示す説明図である。
【発明を実施するための形態】
【0021】
本発明の実施例について以下の順序で説明する。
A.システム構成:
B.画像ファイルの構成:
C.管理データの構成:
D.画像ファイルおよび管理データの生成:
D1.全体処理:
D2.画像ファイル生成処理:
D3.テキストデータ生成処理:
E.インタフェース画面例::
F.画像表示:
F1.ページ選択画面表示処理:
F2.拡大・縮小表示処理:
【実施例1】
【0022】
A.システム構成:
図1は,画像ファイリングシステムの構成を示す説明図である。本実施例では,書籍をスキャンして得られた画像データを格納し,閲覧するためのシステムとして構成した例を示した。
画像ファイリングシステムは,画像データベースを格納するサーバ200と,画像データベース生成装置100と,画像閲覧装置300とをそれぞれネットワークNE1,NE2で接続して構成される。ネットワークNE1,NE2は,イントラネットのような限定的なネットワークであってもよいし,インターネットのように広域的なネットワークであってもよい。
本実施例では,上述の3種類の装置からなるシステム構成を例示するが,画像ファイリングシステムは,サーバ200と画像データベース生成装置100とを一つの装置で構成してもよいし,全体を単体の装置として構成してもよい。また,2台以上の画像閲覧装置300を設ける構成としてもよい。
【0023】
画像閲覧装置300は,サーバ200から提供される画像データに基づいてディスプレイ300D上に画像を表示する装置である。画像閲覧装置300には,図示する通り,主制御部301の制御下で稼働する各機能ブロックが設けられている。本実施例では,パーソナルコンピュータに,これらの機能を実現するソフトウェアをインストールすることによって構成したが,これらの機能ブロックはハードウェア的に構成してもよい。また,これらの機能ブロックは,必ずしも単一の専用ソフトウェアによって実現される必要はなく,パーソナルコンピュータにインストールされているOS(オペレーティングシステム)や,汎用のブラウザソフトウェアによって提供される機能を含んでも良い。各機能ブロックを実現するためのソフトウェアは,アプレットの形で提供してもよい。
【0024】
図中の各機能ブロックの機能を説明する。
主制御部301は,全体を制御する。
送受信部302は,ネットワークNE2を介してサーバ200と種々のコマンド,データの送受信を行う。本実施例では,閲覧対象となる画像データや,画像データの送信要求などが送受信される。
コマンド入力部303は,キーボードやマウスなどの操作を通じて,画像閲覧に関するユーザの指示を入力する。
画像ファイル記憶部304は,サーバ200から供給された画像ファイルを一時的に記憶する。本実施例における画像ファイルの構成は後述する。本実施例では,画像を閲覧する際,サーバ200からは,画像データ全体が送信されるのではなく,閲覧に必要な画像ファイルのみが送信される。画像ファイル記憶部304は,こうして送信された画像ファイルを記憶している。
表示制御部305は,閲覧対象となる単位画像を検索するための画面,検索結果の一覧表示画面,ページ選択画面などを表示する。これらの表示において画像を表示する際には,表示制御部305は,画像ファイル記憶部304の画像ファイルを用いる。
【0025】
サーバ200は,画像ファイル等を格納し,画像閲覧装置300に供給したり,画像閲覧に必要なソフトウェア(以下「ビューワ」と呼ぶこともある)を提供したりする。画像データ等を格納する画像データベース記憶部210およびビューワを格納するビューワ記憶部202は,ともにハードディスクで構成されているが,種々の不揮発性メモリを用いることが可能である。
ビューワ記憶部202は,画像閲覧装置300が画像の検索,表示をするためのビューワを格納している。本実施例では,ビューワは,アプレットの形で提供されるものとした。
画像データベース記憶部210は,管理データ211および画像ファイル群215を格納する。画像ファイル群215は,書籍のページ全体を単位画像とする画像データを分割して生成された画像ファイルの集合である。ここには,多数のページに該当する画像ファイルが格納されている。管理データ211は,これらの画像ファイルを管理するための管理情報をページ単位で記憶する一覧表データである。管理データ211は,画像の検索や,表示時の画像ファイルの格納先を特定するために使用されるものであり,データベースの機能を奏するものである。本実施例では,管理データ211と画像ファイル群215を併せて「画像データベース」と称することもある。
【0026】
送受信部201およびデータベース管理部203は,これらの機能を実現するソフトウェアをインストールすることによって構成しているが,ハードウェア的に構成してもよい。
送受信部201は,画像データベース生成装置100および画像閲覧装置300とネットワークNE1,NE2を介して,コマンドやデータの送受信を行う。
データベース管理部203は,画像データベース記憶部210の入出力を管理する。本実施例では,画像データベース生成装置100からの指示に従って,画像ファイル群215への画像ファイルの追加,削除などの更新処理や,管理データ211の更新処理を行う。
【0027】
画像データベース生成装置100は,書籍をスキャナ101でスキャンして画像データを生成し,画像ファイルとしてサーバ200に格納したり,管理データ211を整えたりするための装置である。画像データベース生成装置100には,図示する通り,主制御部111の制御下で稼働する各機能ブロックが設けられている。本実施例では,パーソナルコンピュータに,これらの機能を実現するソフトウェアをインストールすることによって構成したが,これらの機能ブロックはハードウェア的に構成してもよい。また,これらの機能ブロックは,必ずしも単一の専用ソフトウェアによって実現される必要はなく,パーソナルコンピュータにインストールされているOS(オペレーティングシステム)や,汎用のブラウザソフトウェアによって提供される機能を含んでも良い。各機能ブロックを実現するためのソフトウェアは,アプレットの形で提供してもよい。
【0028】
図中の各機能ブロックの機能を説明する。
主制御部111は,全体を制御する。
送受信部112は,ネットワークNE1を介してサーバ200とデータやコマンドの送受信を行う。本実施例では,画像データベース記憶部210に格納すべき管理データ211,画像ファイルや,この格納に際してのコマンドなどが送受信される。
コマンド入力部113は,キーボードやマウスなどの操作を介して,画像ファイルの生成や管理データの整備などに関するオペレータの指示を入力する。
画像入力部114は,スキャナ101を制御して,書籍の各ページをディジタル化した画像データとして読み込む。スキャナ101に変えて,ディジタルカメラを利用してもよい。また,既にディジタル化された画像データを読み込むものとしてもよい。
画像データ記憶部115は,画像入力部114により読み込まれた画像データを記憶する。画像データ記憶部115は,画像ファイルの生成過程で生じる種々のデータや,生成結果としての画像ファイルも記憶することができる。
【0029】
ページマージ部119は,書籍の各ページの画像データを結合し,見開き状態の画像データを生成する。本実施例では,オペレータの指示に基づいて,ページ番号の若い順に右側/左側(以下「右開き」という)に配列するか,左側/右側(以下「左開き」という)に配列するかを決定し,指示されたページ配列に従って画像データを生成するものとした。書籍が縦書きか横書きかに応じてページ配列を自動判別するものとしてもよい。例えば,縦書きの書籍は右開き,横書きの書籍は左開きのように判別することができる。
【0030】
画像ファイル生成部118は,画像データの解像度変換およびブロック化の二つの機能を奏する。本実施例では,画像データベース記憶部210には,後述する通り,拡大・縮小表示に使用するため,各画像データに対して,複数の解像度からなる画像ファイルを格納している。このため,画像ファイル生成部118は,画像入力部114およびページマージ部119によって生成された画像データを,予め設定された複数の解像度に変換する。また,生成された各解像度の画像データを,縦横所定サイズの画素数からなるブロックに分割し,それぞれを画像ファイルとする。ブロックは,解像度ごとに異なる大きさとしてもよいが,本実施例では,共通の大きさとした。
【0031】
OCR処理部117は,画像データに基づいて文字認識を行う。認識された文字列には,単位画像内の文字の配列に従って改行が含まれるが,OCR処理部117は,改行を除去して認識した文字列を一行の文字列とする(以下,この処理を「1行化」ということがある)。こうして生成された文字列は,管理データ211に登録され,ページの検索に活用される。
データベース管理部116は,管理データ211の登録および画像ファイル群215への画像ファイルの追加,削除などの更新処理を行う。
【0032】
B.画像ファイルの構成:
図2は,画像ファイルの構造を示す説明図である。
図2(a)は,低解像度の画像ファイルを示している。左側に示した矩形は単位画像全体を表している。本実施例では,この単位画像を,縦横所定サイズの画素(例えば,縦横それぞれ64ピクセルなど)からなるブロックに分割する。図中の破線は,分割されたブロックを表している。便宜上,分割されたブロックに,横方向には左から右に1,2,…Naの番号を付し,縦方向には上から下に1,2,…Maの番号を付した。
こうして生成されたブロックは,それぞれ個別の画像ファイルを構成する。例えば,図中のハッチングを付した部分からは,「file0101」という名称の画像ファイルが生成される。その他のブロックからも同様に,「file0102」…「fileMaNa」が生成される。これらの画像ファイルは,それぞれ個別に,該当するブロックの画像を表示可能なデータである。
画像ファイルの名称は,任意に設定可能であるが,本実施例では,ブロックの配置を,「縦方向の番号+横方向の番号」の形で含めるものとした。「file0101」は,縦方向に01番目,横方向に01番目のブロックであることを表している。「fileMaNa」は,縦方向にMa番目,横方向にNa番目,つまり画像の右下端のブロックであることを表している。
【0033】
図2(b)は,中解像度の画像データを示している。図2(a)よりも縦横の画素数が多くなるため,画像全体のサイズは大きい。中解像度の画像データに対しても,破線で示すように縦方向に1〜Mb,横方向に1〜Nbにブロック化され,それぞれのブロックから個別の画像ファイル「file0101」〜「fileMbNb」が生成される。
図2(c)は,高解像度の画像データを示している。図2(a),図2(b)よりも更に画像全体のサイズは大きい。高解像度の画像データに対しても,破線で示すように縦方向に1〜Mc,横方向に1〜Ncにブロック化され,それぞれのブロックから個別の画像ファイル「file0101」〜「fileMcNc」が生成される。
中解像度(図2(b))および高解像度(図2(c))の解像度の設定,およびブロックの大きさは,任意に設定可能である。ブロックは,全解像度で異なる設定としてもよいが,本実施例では同一のサイズとした。
このように,本実施例では,各単位画像に対して,複数の解像度で画像データを用意し,それぞれの解像度の画像データは,ブロック化された画像ファイルで構成されている。図2に示したのは例示であり,解像度は,更に多段階で設けても良いし,いわゆるサムネイル画像を表示するために,ブロックに分割されない低解像度の画像データを用意してもよい。
【0034】
C.管理データの構成:
図3は,管理データの構造を示す説明図である。管理データは,画像ファイルを管理するためのデータであり,単位画像ごとに一つのレコードが生成されている。
管理データ211は,名称,タイトル,号数,出版社,目次,テキスト,リンクの各情報を格納している。
「名称」は,単位画像に付された固有の名称である。書籍を対象としている場合,本実施例では,「書籍に固有のコード+単位画像のシリアル番号+補助番号」の組合せで名称を設定した。図中の破線で示した「book1」が書籍に固有のコードである。続く「001」「002」等の3桁の数字がシリアル番号である。本実施例では,ページを左右で結合した見開き状態を単位画像とするため,ページ番号ではなく,シリアル番号と称するものとした。「補助番号」は,シリアル番号につづく「00」「01」等の2桁の数字である。補助番号は,書籍をスキャンした後,ページの欠落が見いだされた場合など,連続するシリアル番号の間に,他の単位画像を挿入する必要が生じた場合に用いる。図中では,「book1_002_00」と「book1_003_00」との間に,後から他の単位画像を挿入する必要が生じたため,この単位画像に対して「book1_002_01」という名称が付されている。このように補助番号を用いることにより,他のレコードの名称を変更するまでなく,単位画像の挿入が可能となる。
名称は,任意に設定可能であるが,本実施例のようにシリアル番号を含めた構成とすることにより,この名称に基づいて書籍のページ配列を容易に再現することができる利点がある。名称とは別に,書籍のページ配列を特定するための項目を管理データ211に設ける構成をとってもよい。
【0035】
「タイトル」は書籍の名称であり,「号数」は定期的に刊行される雑誌等の場合に,その号数を示す情報である。図中の「2010_01」は,「2010年1月号」を意味している。発行年と月とを別項目としてもよい。このように「タイトル」と「号数」を別項目とすることにより,あるタイトルの書籍の全号数を対象とする検索を容易に行うことができる。
「出版社」は書籍の出版社名称である。この他,著者名,発行された国名などを含めても良い。
【0036】
「目次」は,書籍の目次内容を表すデータである。目次は,単位画像ごと,つまり書籍の各ページまたは見開きごとに登録可能であるが,本実施例では,表紙にあたるレコードに書籍全体の目次を登録する方法をとった。目次は,書籍によって形式や内容がまちまちであることが多く,文字認識などによって自動的に生成することは困難であるため,オペレータが書籍の内容を見ながら手作業で設定していかざるを得ない場合が多い。本実施例のように,単一のレコードに全体の書籍全体の目次を登録する方法をとれば,レコードごとに目次を設定する場合よりも,登録しやすく,作業効率が向上するという利点がある。
図の上側に目次データの内容を例示した。本実施例では,目次データは,書籍のページ番号,目次内容,リンク情報で構成されている。リンク情報とは,目次内容に該当するレコードを特定する情報である。例えば,最上段に示した「1,目次1,book1_001_00」は,書籍の1ページについて,「目次1」という内容の目次が付されていること,およびこのページの画像は,「book1_001_00」という名称が付されたレコードに対応することを表している。「目次1」は,実際には,1ページの内容を表す文字列である。同様に,2段目の「2 3,…」は2ページ,3ページ目に対応する目次内容を表している。書籍の見開きを単体画像としたため,2ページまとめて一つの目次で表している。見開きを単体画像とする場合であっても,2ページ,3ページに対して個別に目次を用意しても構わない。この場合,「2,…,book1_002_00」,「3,…,book1_002_00」のようにリンク情報が共通になるだけのことである。また,目次は,全ページに対して用意する必要もない。
【0037】
「テキスト」は,単体画像に含まれる文字列を文字認識して得られたテキストデータである。本実施例では,文字認識結果に含まれる改行を除去し,1行化したテキストデータを登録した。図中のtxt1等は,生成された文字列を表している。このように1行化しておくことにより,単体画像では2行にわたって,「…文字+列…」(+は改行されていることを示す)のように記載されている場合であっても,改行が除去された「…文字列…」という状態のテキストデータが格納されることになるから,「文字列」をキーワードとする検索を漏れなく実行することが可能となる。
管理データには,同じ「テキスト」を複数項目並列的に(例えば,テキストA,テキストB,テキストCなど)登録してもよい。各項目に登録する内容は同じで構わない。このように複数項目に文字列を登録しておくことにより,複数のキーワードを用いた検索を比較的容易に実現することができる。
【0038】
「格納先」は,単位画像に対応する画像ファイルの格納先を示す情報(以下,「格納先情報」という)である。格納先情報としては,例えばパス,アドレス,URL(Universal Resource Locator)を用いることができる。
図中の右側に画像ファイル群215とリンク情報との関係を模式的に示した。本実施例では,単位画像に対して複数の解像度の画像ファイルが用意されている。そこで,それぞれの解像度ごとにフォルダを用意し(図中のRES1〜RES3),ここに,それぞれの解像度における画像ファイルを格納する。さらに,解像度の異なる各フォルダRES1〜RES3をまとめて単位画像に対する一つのフォルダDIR1に格納する。こうすることでフォルダDIR1,DIR2,DIR3のように,単位画像ごとに,複数の解像度の画像ファイルをまとめて管理することができる。格納先情報は,単位画像に対応するフォルダDIR1,DIR2,DIR3を特定可能な情報を記憶している。
ここで,単位画像に対応するフォルダは,画像ファイル群215の中で,書籍のページ配列に従って,規則的に格納することも可能である。しかし,本実施例では,敢えてランダムに格納するようにした。図中に示すように,フォルダDIR1はシリアル番号001(名称欄参照)に対応するのに対し,フォルダDIR2はシリアル番号002ではなく003に対応している。シリアル番号002_00は,フォルダDIR3に格納されている。このように格納先をランダムに設定したのは,セキュリティを向上させるためである。つまり,書籍のページ配列に従ってフォルダを規則的に配置した場合,いずれかのフォルダの所在が外部に漏れると,規則に従って,書籍の全ページのフォルダの所在が推測可能となってしまい,書籍全体のデータ漏洩につながるおそれがある。これに対し,本実施例のように,各フォルダをランダムに配置しておけば,一部のフォルダの所在の漏洩があったとしても,書生全体の漏洩を防止することが可能となるのである。このようにランダムに配置したとしても,管理データ211の格納先情報を参照することで,単位画像に対応するデータの所在は容易に特定可能であるから,画像の表示には支障は生じない。
【0039】
D.画像ファイルおよび管理データの生成:
D1.全体処理:
図4は,画像登録処理のフローチャートである。画像データベース生成装置100が,オペレータの指示に従って実行する処理であり,ハードウェア的には,同装置100を構成するパーソナルコンピュータのCPUが実行する処理である。
まず,画像データベース生成装置100は,スキャナ101によって,書籍の各ページの画像を取り込む(ステップS10)。書籍を1枚ずつ分離した状態に解体して,スキャナ101に自動的に読み込ませるようにしてもよいし,書籍の各ページを逐一スキャナ101に面した状態においた上で読み込ませてもよい。本実施例では,スキャナ101を用いているが,ディジタルカメラで各ページを撮影する方法をとってもよい。
【0040】
次に,画像データベース生成装置100は,ページ配列の指定を入力し(ステップS12),ページマージ処理を行う(ステップS14)。
図中の左側に示すように,横書きの書籍などは,左側に2ページ,右側に3ページというように,左側→右側の順にページが進んでいく。以下,このような配列を,矢印OP1に示すように左方向に開くことから左開きと呼ぶ。 図中の右側に示すように,縦書きの書籍などは,右側に2ページ,左側に3ページというように,右側→左側の順にページが進んでいく。以下,このような配列を,矢印OP2に示すように右方向に開くことから右開きと呼ぶ。
ステップS12では,取り込んだ書籍が左開き/右開きのいずれかの指定を受け付けるのである。
ページマージ処理とは,書籍の見開き状態のページについては,2ページの画像データを結合して見開き状態の画像データを生成する処理を言う。図中に処理の例を示した。上段には,表紙から始まる各ページごとの画像データを示している。下段にはページマージ処理した結果を示している。ここでは,左開きの例を示した。表紙は見開き状態にならないから,ページマージ処理を行っても変わらない。2ページ目以降は,図示するように,2ページを左側,3ページを右側に配置して両者を結合し,見開き状態の画像データに変換される。4ページ目以降も同様である。右開きの場合には,2ページ目が右側,3ページ目が左側に配置された状態で結合されることになる。
書籍によっては,表紙の次のページからただちに見開き状態に結合するのが妥当でないものもある。このような場合に対応可能とするため,ステップS12でページ配列と併せて,ページマージ処理を開始するページを指定可能とし,ステップS14は指定された位置からページマージ処理を開始するものとしてもよい。ページマージ処理の終了位置についても同様である。
【0041】
ページマージ処理が終了すると,画像データベース生成装置100は,管理データの登録を行う(ステップS16)。図3に示した管理データのフォームを表示し,各項目についてオペレータによる入力を受け付けるのである。ただし,管理データの入力負荷を軽減するため,次に示すような支援を行っても良い。
名称のうち,書籍に固有のコード(図3の「book1」の部分)については,書籍のタイトルに基づいて共通のコードを自動的に付すようにしてもよい。シリアル番号も同様に,ページマージ処理後の単位画像の配列に従って,自動的に付してもよい。このように自動的に付されたシリアル番号に対してページの欠落をオペレータが発見した場合には,補助番号を用いて,欠けていた単位画像を,挿入すればよい。
また,格納先情報はサーバ200の画像データベース記憶部210内における格納先を示す必要があり,しかも,単位画像が書籍のページ配列順ではなくランダムに並ぶように指定する必要がある。この指定を自動的に行うため,ステップS16では,オペレータは,画像データベース生成装置100内で,各単位画像の画像データを格納したフォルダを指定するようにしてもよい。このように管理データの各レコードと,画像データに対応づけさえしておけば,最後に,画像データおよび管理データをサーバ200に登録する際に,単位画像に対するフォルダを画像データベース記憶部210内で自動的にランダムに配置するとともに,その配置に応じて,格納先情報を書き換えて登録することが可能となる。
【0042】
また,画像データベース生成装置100は,画像ファイル生成処理(ステップS20)およびテキストデータ生成処理(ステップS40)を行う。画像ファイル生成処理は,ページマージ処理された画像データを解像度変換するとともに,ブロック化して各解像度の画像ファイルを生成する処理である。テキストデータ生成処理は,単位画像内の文字認識をし,管理データに登録する「テキスト」を生成する処理である。これらの処理の内容は後述する。
画像データベース生成装置100は,以上の処理(ステップS16〜S40)を,全ページについて終了するまで繰り返す(ステップS60)。
【0043】
D2.画像ファイル生成処理:
図5は,画像ファイル生成処理のフローチャートである。画像登録処理(図4)のステップS20に相当する処理である。
画像データベース生成装置100は,まず原画像データを読み込む(ステップS22)。原画像データとは,ページマージ処理(ズ4のステップS14)を施された状態の画像データであり,本実施例では,各ページの画像を取り込んだ際の解像度で構成されたデータである。
【0044】
画像データベース生成装置100は,この原画像データに対して,解像度変換を施す(ステップS24)。図2で説明した通り,本実施例では,複数の解像度の画像データに対して画像ファイルを生成するから,その中で,画像ファイルの生成が完了していないいずれかの解像度に対する変換を行えばよい。もっとも,複数の解像度の一つとして原画像データの解像度を含めることもできるから,原画像データをそのまま用いて画像ファイルを生成してもよい。原画像データをそのまま用いて画像ファイルを生成する場合には,ステップS24の解像度変換処理は省略することができる。
図中に解像度変換の処理内容を模式的に示した。左側が原画像データORGであり,右側が解像度変換した画像データIMGである。図示する通り,本実施例では,原画像データの解像度を低減させる側,換言すれば,画像のサイズを小さく縮小する側に解像度変換を行うものとした。この解像度変換は,原画像データの解像度と,変換後の解像度の値に応じて,原画像データをサンプリングし画素を間引くことによって実現できる。
解像度が高い画像は,拡大表示に用いられることになり,高い画質が要求されるが,解像度を増大させる解像度変換は,補間処理によって新たな画素を生成する処理であるから,解像度変換によって高解像度の画像を生成しても,十分な画質を得ることはできない。一方,縮小表示時には,もともと存在していた画素をサンプリングして間引くだけであるから,解像度を増大させる変換処理よりも画質の劣化が小さいし,縮小表示であれば,画質の劣化はあまり目立たなくもなる。従って,本実施例のように,原画像データを十分高い解像度で用意しておき,この解像度を低減させる方向で解像度変換を施すことにより,低解像度から高解像度までの各解像度で,十分な画質を保った画像データを備えることが可能となるのである。
【0045】
本実施例では,ステップS24の図中に示すように,常に原画像データを用いて解像度変換を行うものとした。一例として,解像度A,B,C(A>B>C)の3段階の画像データを生成する場合を考える。1回目の処理では,ステップS24において,解像度変換を行う際には,原画像データから解像度Aの画像データを生成する。この際,解像度変換する前の原画像データを残した状態で,解像度Aの画像データを生成するのである。2回目の処理では,ステップS24において,同じく原画像データを用いて解像度Bの画像データを得る。3回目の処理でも同様に,原画像データを用いて解像度Cのデータを得る。このように常に原画像データに対して解像度変換を施す場合には,解像度変換の繰り返しによる画質の低下を抑制することができる利点がある。
これに対し,原画像データを解像度変換して解像度Aの画像データを得た後,2回目の処理では,解像度Aの画像データに更に解像度変換を施して解像度Bの画像データを得る方法をとることもできる。3回目の処理では,解像度Bの画像データから,解像度Cの画像データを生成するのである。この処理では,解像度B,解像度Cの画像データは,原画像データに対して2回または3回の解像度変換が重畳的に施された結果となるから,画質がやや劣化するおそれがあるが,2回目,3回目の処理では,原画像データよりも解像度の低い解像度A,解像度Bの画像データに対して処理を施せばよいから,処理負荷が軽減できるという利点もある。
【0046】
解像度変換が完了すると,画像データベース生成装置100は,画像ファイルの生成を行う(ステップS26)。図中に示す通り解像度変換後の画像データIMGを,破線で示すようにブロックに分割し,各ブロック(例えば,図中のハッチングを付した部分)を個別の画像ファイル(図中の「fileA」)とする。図中のハッチングを付した部分だけでなく,他のブロックについても同様である。この処理によって,一つの画像データIMGから,多数の画像ファイルが生成される。こうした生成された画像ファイルは,一つのフォルダ内にまとめて格納される。
【0047】
画像データベース生成装置100は,以上の処理を,処理対象とされる全解像度について終了するまで繰り返し実行する(ステップS28)。
全解像度について処理が完了すると,それぞれの解像度に応じた画像ファイルを格納したフォルダが形成されることになる。各解像度のフォルダは,図3に示したように,単位画像単位で用意されるフォルダ(図3中のDIR1,DIR2等)に格納される。図5の画像ファイル生成処理を実行している時点では,画像データベース生成装置100内に格納しておけばよい。また,この時点では,管理データの格納先情報には,画像データベース生成装置100内での格納先を記録しておけばよい。
【0048】
D3.テキストデータ生成処理:
図6は,テキストデータ生成処理のフローチャートである。画像登録処理(図4)のステップS40に相当する処理である。
画像データベース生成装置100は,まず原画像データを読み込み(ステップS42),OCR処理によって文字認識を行う(ステップS44)。この処理によって,原画像に含まれる文字がデータとして抽出される。オペレータが,OCR処理結果を確認して誤って認識された部分の修正を施しても良い。
【0049】
画像データベース生成装置100は,次に,1行化処理を施し(ステップS46),その結果を管理データの「テキスト」項目に登録する(ステップS48)。
図中に処理内容を示した。左側の文字列txtAに示すように,OCR処理では,単位画像内の改行も含んだ状態で文字認識がされる。文字列txtAでは,一行目の「○○…○○」,2行目の「△△…△」,3行目の「××…×」の間には,それぞれ改行が挿入されている。
1行化処理とは,文字列txtAから改行を除去する処理である。右側の文字列Bに示す通り,1行化処理を施すと,改行が除去されるため,「○○…○○△△…△△××…××」というように,1行に全ての文字列が配列された状態のテキストデータとなる。このようなテキストデータによれば,例えば,「○○△△」というようにtxtAでは2行にわたって記載されている文字列をキーワードとして検索した場合でも,図中の文字列CHの部分に当該文字列を見いだすことができ,検索の精度を向上させることができる。
【0050】
E.インタフェース画面例:
サーバ200から提供される画像を閲覧する際に,画像閲覧装置300に表示される画面例について説明する。
図7は,検索画面を示す説明図である。図7(a)は書籍の検索を行う画面を示し,図7(b)はページの検索を行う画面を示している。画面上部のtab1をクリックすると,書籍の検索を行う画面になり,tab2をクリックすると,ページ検索の画面に切り替えることができる。
書籍の検索は,タイトル,目次,掲載年,掲載月で検索可能とした。検索は,サーバ200のデータベース管理部203(図1参照)が実行する。「タイトル」欄に目的とする書籍の題名を入力して検索を実行すると,この情報がサーバ200に送信され,サーバ200は,管理データ211の「タイトル」欄を参照して,該当する書籍を検索する。
「目次」には,目次の文字列に含まれるキーワードを入力する。サーバ200は,管理データ211の「目次」欄を参照して,該当する文字列を含む書籍を検索する。
同様に,「掲載年」「掲載月」が入力された場合,サーバ200は,管理データ211の「号数」欄を参照して,該当する書籍を検索する。
【0051】
ページ検索画面では,指定されたキーワードの文字列を含むページを検索するようにした。図7(b)に示す通り,本実施例では,3つの文字列を指定可能とした。サーバ200は,管理データ211の「テキスト」欄を参照して,これらの文字列を含むページを検索する。図の例では,3つの文字列は論理積で検索条件を構成するため,指定された3つの文字列全てを含むページが検索されることになる。指定可能なキーワードの数は可変としてもよいし,論理積,論理和の条件を切り替え可能としてもよい。
またページ検索画面では,「○ページ」のように,直接,閲覧対象となるページを指定可能としてもよい。
【0052】
図8は,検索結果の一覧表示を示す説明図である。図7の検索画面によって検索された書籍またはページのサムネイル画像TNを一覧表示している。ページの検索をした場合には,図示するようにページ単位でサムネイル画像が表示される。本の検索を行った場合には,書籍単位でサムネイル画像が表示される。これらの一つをクリックすると,次に示す画像表示に移行する。
【0053】
図9は,ページ選択画面例を示す説明図である。この画面は,サムネイルビューTW,目次ビューIW,画像ビューVWの3つで構成される。サムネイル欄IWには,図8に示した検索結果のサムネイルが縦方向に配列して表示される。
この中の一つ(例えば,サムネイルTN)を選択すると,画像ビューVWには,その画像IMGが表示される。サムネイルビューTWで他のサムネイルを選択すれば,それに応じて,画像ビューVWの画像IMGも変化する。
目次ビューIWには,目次項目IDXに示す通り,「ゲームユーザーの意見箱」「18」のように,目次内容と書籍のページ数が表示される。「表紙」の場合は,ページ数は表示されない。これらの各目次項目IDXには,管理データのレコードを特定するリンク情報が,例えば,ハイパーリンクの形などで付されている。ユーザがいずれかの目次項目をクリックすると,リンク情報に基づいて管理データのレコードが特定され,それに対応する画像データの格納先が特定されるから,画像ビューVW内の画像IMGを切り替えることができる。つまり,サムネイルビューTWでサムネイルを選択した時と同じように,目次ビューIWで目次項目IDXを選択することによって,画像ビューVWに表示される画像IMGの切り替えが可能である。この目次ビューIWの表示は,管理データの「目次」データに基づいて行うことができるが,その表示処理については後述する。
ページ選択画面には,右上にズームアイコンSPが表示されている。ズームアイコンSPをクリックすると,画像ビューVWに示された画像IMGを,更に拡大表示するための画面に移行する。
【0054】
図10は,拡大表示画面例を示す説明図である。この画面は,サムネイルビューSTWと拡大画像ビューSVWで構成される。サムネイルビューSTWには,単位画像全体のサムネイルが表示され,拡大画像ビューSVWに表示されている部分を示す表示枠VAが表示される。サムネイルの下には,拡大倍率を指示するためのスライドバーSLが表示される。スライドバーSLを上に上げれば,更に画像を拡大することができ,下に下げれば,画像を縮小することができる。拡大画像ビューSVWの大きさが一定であれば,画像を拡大することにより単位画像のうち拡大画像ビューSVW内に表示できる範囲は相対的に狭くなるから,拡大にともなって表示枠VAは小さくなる。
本実施例では,拡大倍率を変化させた場合には,拡大画像ビューSVWの中心CGが移動しないように,表示枠VAの位置,つまり拡大画像ビューSVWに表示される表示範囲を決定している。
なお,図10の画面において,表示枠VAまたは拡大画像ビューSVWの画像をドラッグすれば,画像の表示範囲を単位画像内で移動させることができる。また,拡大画像ビューSVW自体のサイズも変更可能であり,この変更に応じて表示枠VAの形状も変化する。
拡大画像を表示するための処理については,後述する。
【0055】
F.画像表示:
F1.ページ選択画面表示処理:
図11は,ページ選択画面表示処理のフローチャートである。図9に示した画面を表示するために,画像閲覧装置300の表示制御部305が主として実行する処理である。
画像閲覧装置300は,サムネイルビューTWを表示するため,表示対象となるサムネイル画像データを読み込み,それぞれにハイパーリンクの形で管理データの対応するレコードへのリンク情報を付す(ステップS100)。表示に用いるサムネイル画像は,単位画像について,サムネイル用に用意された低解像度の画像データをサーバ200から取得する。ただし,取得したサムネイル画像は,画像閲覧装置内の画像ファイル記憶部304(図1参照)に一旦,保存した上で表示に使用するため,画像閲覧装置300は,サムネイルビューTWを表示するために必要な画像データのうち,画像ファイル記憶部304に保存されていないもののみをサーバ200から取得すれば足りる。こうすることで,全てのサムネイル画像をサーバ200から取得する必要がなくなり,表示の高速化,およびネットワークNE2のトラフィック低減を図ることができる。
【0056】
次に,画像閲覧装置300は,管理データに記録された目次データを解析し,目次ビューIWを表示する(ステップS102)。先に図3に示した通り,本実施例では,書籍全体の目次データが,管理データの表紙に対応するレコードに記録されている。目次データには,「書籍のページ番号,目次内容,管理データのレコードを特定するリンク情報」の組を繰り返す形式で構成されているから,ページ番号および目次内容を読み取って,目次ビューIWの1行分の表示内容を整え,「リンク情報」をハイパーリンクの形で付すことを全ての組に対して繰り返し実行すればよい。
【0057】
画像閲覧装置300は,また,選択中の単位画像に対する画像データを読み込み,画像ビューVWに表示する(ステップS104)。この画面では,単位画像全体が,画像ビューVWにおさまる大きさで表示される。かかる表示を実現するため,画像閲覧装置300は,まず画像ビューVWの縦横の画素数を検出し,そのサイズを,単位画像の指定とともにサーバ200に送信する。サーバ200は,指定された単位画像に対応する画像ファイル群215の中から,指定された画像ビューVWの大きさにおさまる解像度の画像データを選択し,画像閲覧装置300に送信する。図2で説明した通り,画像データは,ブロック化された画像ファイルの形式で格納されているが,単位画像全体を表示するため,この処理では,該当する解像度の全画像ファイルが順次,送信される。もっとも,これらの画像ファイルも,一旦,画像閲覧装置300の画像ファイル記憶部304に格納された上で表示に用いられるから,サーバ200からは,画像ファイル記憶部304に格納されていない画像ファイルだけを送信するようにすれば足りる。
上述の例では,サーバ200が解像度を決定する例を示したが,サーバ200から単位画像に対する各画像データの解像度の情報を受け取り,画像閲覧装置300が,どの解像度を使用するかを決定する方法をとってもよい。
【0058】
F2.拡大・縮小表示処理:
図12は,拡大・縮小表示処理のフローチャートである。図10に示す拡大表示画面を表示するための処理である。
画像閲覧装置300は,表示スケールを入力する(ステップS200)。最初に拡大表示画面を行う場合には,予め設定されたデフォルト値を用いても良いし,拡大画像ビューSVW内に画像全体が収まる表示スケールを用いても良い。
【0059】
次に,画像閲覧装置300は,画像の表示範囲を決めるため,現在表示されている画像の中心の座標を,単位画像内の相対座標で取得する(ステップS202)。図中に示すように,単位画像IMGのうち,表示枠VAの部分が現在表示されているものとする。表示枠VAの中心が点CGである。ステップS202の処理では,点CGの位置を,単位画像IMGのx,y方向の相対座標,つまり単位画像IMGの左端を0,右端を1とするx座標,および上端を0,下端を1とするy座標で特定する。座標は,単位画像内で点CGの位置を特定できる形式であればよいから,例えば,x,y座標を相対座標ではなく画素数で表しても良い。
なお,拡大画像ビューSVWに画像全体が表示されている場合には,点CGは単位画像IMGの中心点と一致させればよい。
【0060】
点CGの座標が決まると,画像閲覧装置300は,指定された表示スケールにおける表示範囲を決定する(ステップS204)。本実施例では,点CGの位置を固定したまま,表示枠VAのサイズを表示スケールに応じて変化させるという方法で表示範囲を決定した。図中に処理内容を示した。現在よりも拡大するよう表示スケールが指定された場合には,点CGを中心とする現在の表示枠VA0を相似に縮小することで指定された表示スケールに応じた表示枠VA1が得られる。拡大する指定がなされた場合に表示枠VA1が従前の表示枠VA0よりも小さくなるのは,拡大画像ビューSVWの画素数は一定なので,拡大時つまり高解像度での表示時に,拡大画像ビューSVWに表示できる範囲は狭くなるからである。
表示枠VA1は,次の方法で決めることができる。指定された表示スケールが,現在の表示スケールの倍となっている場合には,表示枠VA1は表示枠VA0を相似比1/2で縮小すればよい。つまり,表示枠VA1は,表示枠VA0を,「現在の表示スケール/指定された表示スケール」で決まる相似比で縮小すればよいことになる。こうして表示枠VA1の大きさが求まると,単位画像内での表示枠VA1の相対的な範囲を特定することができる。単位画像の縦横のサイズを基準とした場合の表示枠VA1の相対的な縦横の長さと,点CGの相対位置で特定してもよいし,表示枠VA1の左上,右下の頂点の座標を単位画像内の相対座標で表しても良い。
表示枠VA1の大きさは,拡大表示ビューSVWと指定された表示スケールの単位画像のサイズを用いて求めることも可能である。指定された表示スケールにおける単位画像の縦横の画素数を求め,拡大表示ビューSVWの縦横の画素数との比を求めれば,表示枠VA1の相対的な大きさを求めることができる。また,単位画像の画素数を求めた上で,表示枠VA1の大きさや位置を画素数で表しても良い。
【0061】
こうして表示範囲が決まると,画像閲覧装置300は,表示スケールおよび表示範囲に対応する画像ファイルを読み込んで,画像を表示する(ステップS206)。図中に処理内容を示した。単位画像IMGに対し,表示枠VA1の画像を表示する場合を考える。この画像を表示するためには,表示枠VA1をカバーできるだけの画像ファイルがあれば足りる。そこで,画像閲覧装置300は,図中のハッチングを施したブロックFA内の画像ファイルを読み込んで画像を表示するのである。読み込むべき画像データは,指定された表示スケールに対応した解像度のものを選択する。
指定された表示スケールに完全に対応する解像度の画像データが存在しない場合には,それよりも一段階高い解像度の画像データを読み込み,指定された表示スケールになるよう,サンプリングで解像度変換を施しても良い。この場合の解像度変換は,画像データ全体について行う必要はなく,表示に必要な範囲,つまり,図中のブロックFAの画像に対してのみ施せばよい。
サーバ200から提供された画像ファイルは,画像閲覧装置300の画像ファイル記憶部304に格納された上で表示に用いられるから,画像の表示に際しては,画像ファイル記憶部304に記憶されていない画像ファイルのみをサーバ200から取得すれば足りる。画像閲覧装置300は,画像ファイル記憶部304を検索した上で,不足している画像ファイルのみをサーバ200に送信するよう要求する方法をとってもよい。また,表示に必要なブロックFA内の画像ファイルの送信要求をサーバ200に送信する際に併せて画像ファイル記憶部304に記憶されている画像ファイルリストを送信し,サーバ200で不足している画像ファイルを特定して送信するようにしてもよい。
【0062】
上記態様によれば,画像を表示する際には,必要な画像ファイルのみを読み込めば足りるから,高解像での画像表示時でも,大量の画像データの読み込みが不要となる。このため,画像データの読み出し,送受信,画像表示処理に要する処理負荷を著しく軽減でき,高画質かつ高速での表示を実現することができる。指定された表示スケールに完全に対応する解像度の画像データが存在しない場合であっても,画像表示に必要となる画像ファイルに対してのみ解像度変換を施せば済むから,高速性を維持することが可能である。
【0063】
図13は,拡大・縮小時の処理内容を示す説明図である。図12で説明した処理に従って,画像を表示する際の具体例を示している。
図13(a)の外枠は当初の表示スケールにおける単位画像を表しており,表示枠VA10は,拡大画像ビューSVWに表示される表示範囲を表している。この画像を表示する際には,表示枠VA10をカバーできるだけのブロックFA10の画像ファイルを読み込めばよい。
次に,ユーザが表示スケールはそのままで,表示範囲を表示枠VA10から矢印MVのようにずらして,表示枠VA11に移動させたとする。この時は,表示枠VA11をカバーできるだけのブロックFA11の画像ファイルが読み込まれて,画像表示が行われる。
このようにブロック化された画像ファイル単位で画像データを読み込むようにすることにより,表示枠VA10を表示している時には,ブロックFA10以外の画像ファイルの読み込みを省略することができるから,処理の高速化を図ることができる。そして,表示枠VA11を表示する時のように,表示枠VA10の表示時には読み込んでいなかった部分の画像ファイルが必要となる場合には,あらたに必要となった部分だけを読み込むのである。図中には,表示範囲を移動させた場合を例示したが,表示枠VA10,VA11のサイズを拡大する場合も同様である。表示範囲が拡大された場合でも,拡大にともなって必要とされたブロックの画像ファイルのみを追加して読み込むことにより,速やかに画像を表示することができる。
【0064】
次に,表示枠VA10が表示されている状態で,表示スケールが拡大された場合を考える。拡大した状態を図13(b)に示した。外枠は拡大された単位画像の一部を示している。ここでは単位画像自体の大きさを拡大して示したため,表示枠VA12の大きさは,拡大前の表示枠VA10と同じ大きさである。表示枠VA12を表示する際には,拡大画像に対する高解像度の画像データから,これをカバーできるブロックFA12の画像ファイルを読み込めばよい。本実施例では,各解像度の画像データを単位画像ごとに一つのフォルダで管理しているため(図3参照),高解像度の画像データの所在を容易に特定することが可能である。
【0065】
ブロックFA12の画像ファイルを特定する方法について説明する。
図13(a)に示すように,従前の表示枠VA10の中心点CGの相対座標はXr,Yrであり,中心点CGが含まれるブロックは,横方向にNa番目,縦方向にMa番目であるとする(これを(Na,Ma)と表す)。
図13(b)に示すように,表示スケールの拡大後も,表示枠VA12の中心点CGの相対座標はXr,Yrで変わらない。本実施例では,中心点CGを固定したまま拡大表示するようにしているからである。これに対し,高解像度の画像データにおいてもブロックのサイズは一定としているから,ブロック数で表すと,点CGの属するブロックは拡大前とは異なり(Nb,Mb)となる。Nb,Mbは次式で求めることができる。
Nb=INT(Xr×単位画像の画素数x/ブロックの画素数x)+1;
Mb=INT(Yr×単位画像の画素数y/ブロックの画素数y)+1;
ここで,INTは,切り捨てによる整数化を意味し,画素数xはx方向の画素数,画素数yはy方向の画素数を意味する。
表示枠VA12の縦横の画素数は従前の表示枠VA10の画素数と同じであり,それぞれのブロックの画素数も解像度によらず統一してあるから,表示枠VA10,VA12に含まれるブロック数は同一である。従って,上述の演算で中心点が含まれるブロック(Nb,Mb)が特定できれば,このブロックを中心として縦横方向にそれぞれ表示枠VA10と同じ数のブロックを読み込めばよい。
別の方法として,上式を用いて,表示枠VA12の左上端および右下端の頂点が含まれるブロックを求め,この範囲に含まれるブロックを読み込むようにしてもよい。左上端のブロックが(Nb1,Mb1),右下のブロックが(Nb2,Mb2)と求まれば,ブロック(Nb1,Mb1),(Nb1,Mb1+1)…(Nb1,Mb2),(Nb1+1,Mb1)…(Nb2,Mb2)を読み込めばよい。
【0066】
以上で説明した本実施例によれば,画像データを複数の解像度に対して用意されているため,指定された表示スケールに対応した解像度の画像データを用いて高画質で画像を表示することができる。また,各解像度においては,画像データは,ブロック化した画像ファイルの形で格納されている。従って,画像表示時には,表示に必要な画像ファイルのみを読み出せば足りる。このため,高解像度で画像を表示する際でも,画像表示に用いられるデータは単位画像の一部分だけで足りることとなり,高速での画像表示を実現することができる。
【0067】
本発明は、必ずしも上述した実施例の全ての機能を備えている必要はなく,一部のみを実現するようにしてもよい。また,上述した内容に追加の機能を設けてもよい。
本発明は上述の実施例に限定されず,その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば,実施例においてハードウェア的に構成されている部分は,ソフトウェア的に構成することもでき,その逆も可能である。また,本実施例では,書籍から読み込んだ画像を対象としたが,ディジタルカメラで撮影された画像等を対象とすることもできる。
【産業上の利用可能性】
【0068】
本発明は,画像データの格納および閲覧に利用することができる。
【符号の説明】
【0069】
100…画像データベース生成装置
101…スキャナ
111…主制御部
112…送受信部
113…コマンド入力部
114…画像入力部
115…画像データ記憶部
116…データベース管理部
117…OCR処理部
118…画像ファイル生成部
119…ページマージ部
200…サーバ
201…送受信部
202…ビューワ記憶部
203…データベース管理部
210…画像データベース記憶部
211…管理データ
215…画像ファイル群
300…画像閲覧装置
300D…ディスプレイ
301…主制御部
302…送受信部
303…コマンド入力部
304…画像ファイル記憶部
305…表示制御部

【特許請求の範囲】
【請求項1】
画像データを格納し,閲覧するための画像ファイリングシステムであって,
単位画像を複数の解像度でディジタル化した画像データを,解像度ごとに所定形状のブロックに分割し,ブロックごとに画像ファイルとして格納する画像データベース記憶部と,
画像を表示する際の解像度および表示範囲の指示を入力する指示入力部と,
前記画像データベース記憶部から,前記指定された解像度および表示範囲に対応する画像ファイルを読み出し,該画像ファイルを配列して,前記原画像のうち前記表示範囲に相当する部分を表示する表示制御部とを備える画像ファイリングシステム。
【請求項2】
請求項1記載の画像ファイリングシステムであって,
書籍の各ページをディジタル化して原画像データを生成する画像入力部と,
前記原画像データを2ページ分ずつ前記書籍の見開き状態に配列して結合した状態の原画像データを生成するページマージ部と,
前記結合された原画像データに基づいて,前記各解像度の画像ファイルを生成する画像ファイル生成部とを備える画像ファイリングシステム。
【請求項3】
請求項1または2記載の画像ファイリングシステムであって,
前記画像データベース記憶部は,さらに,前記単位画像に対応する前記複数の解像度の画像ファイルを一つのレコードに関連づけて管理する管理データを格納し,
前記管理データを参照して,指定された検索条件に該当するレコードを検索する検索部とを有し,
前記表示制御部は,前記管理データの前記検索されたレコードに基づいて,前記画像ファイルの読み込みを行う画像ファイリングシステム。
【請求項4】
請求項3記載の画像ファイリングシステムであって,
前記管理データは,1冊の書籍を構成する複数のレコードのうち,いずれか一つのレコードに該書籍全体の目次内容およびそれぞれの目次内容に対応するレコードを表すリンク情報を含む目次データを格納しており,
前記表示制御部は,前記目次データに基づいて,前記リンク情報を付した状態で前記目次内容を一覧で示す目次欄を表示する画像ファイリングシステム。
【請求項5】
請求項3または4記載の画像ファイリングシステムであって,
前記管理データは,各レコードに対し,該レコードに対応する前記単位画像に記載された文字から改行を除去して生成された文字データを格納し,
前記検索部は,指定された文字列が前記文字データに含まれるレコードを検索可能な画像ファイリングシステム。
【請求項6】
画像閲覧装置とネットワークで接続され,単位画像をディジタル化した画像データをブロック化した画像ファイルの形で格納し,該画像閲覧装置に該画像ファイルを供給することで画像を閲覧させる画像サーバであって,
前記画像閲覧装置は,表示すべき画像の解像度および表示範囲の指定に基づいて,画像の表示に必要となる画像ファイルの送信を前記画像サーバに要求し,該画像サーバから送信された画像ファイルを配列して前記単位画像のうち前記表示範囲に相当する部分を表示する装置であり,
前記画像サーバは,
前記単位画像を複数の解像度でディジタル化した画像データを,解像度ごとに所定形状のブロックに分割し,ブロックごとに画像ファイルとして格納する画像データベース記憶部と,
前記画像閲覧装置から,画像ファイルの送信要求を入力する指示入力部と,
前記画像データベース記憶部から,前記指定された画像ファイルを読み出し,前記画像閲覧装置に供給する画像ファイリングシステム。
【請求項7】
単位画像を複数の解像度でディジタル化した画像データを,解像度ごとに所定形状のブロックに分割し,ブロックごとに画像ファイルとして格納する画像データベース記憶部を有するコンピュータによって,画像データを格納し閲覧する画像ファイリング方法であって,
画像を表示する際の解像度および表示範囲の指示を入力する指示入力ステップと,
前記画像データベース記憶部から,前記指定された解像度および表示範囲に対応する画像ファイルを読み出してメモリに格納するステップと,
前記格納された該画像ファイルを配列して,前記単位画像のうち前記表示範囲に相当する部分を表示する表示制御ステップとを備える画像ファイリング方法。
【請求項8】
単位画像を複数の解像度でディジタル化した画像データを,解像度ごとに所定形状のブロックに分割し,ブロックごとに画像ファイルとして格納する画像データベース記憶部を有する画像サーバから,前記画像ファイルの供給を受けて画像を閲覧する機能をコンピュータに実現させるためのコンピュータプログラムであって,
表示すべき画像の解像度および表示範囲の指定を入力し,メモリに記憶する機能と,
前記指定に基づいて画像の表示に必要となる画像ファイルを特定し,前記画像サーバに対し,該画像ファイルの送信を要求する機能と,
前記画像サーバから前記画像ファイルを受信し,メモリに記憶させる機能と,
前記記憶された画像ファイルを配列して前記単位画像のうち前記表示範囲に相当する部分を表示する機能とをコンピュータに実現させるためのコンピュータプログラム。



【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2011−210013(P2011−210013A)
【公開日】平成23年10月20日(2011.10.20)
【国際特許分類】
【出願番号】特願2010−77108(P2010−77108)
【出願日】平成22年3月30日(2010.3.30)
【出願人】(510067038)株式会社インタニヤ (1)
【Fターム(参考)】