(57)【要約】【課題】表示応答性の向上とバッファメモリの使用効率の向上を図るための技術を提供する。【解決手段】画像形成装置が、元の画像データを格納する画像データ格納部と、画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、を有する。画像データ出力部は、元の画像データから表示用の画像データを形成する際に、表示用の画像データの形成に必要なデータが画像データバッファ部に格納されている場合には画像データバッファ部に格納されているデータを用いる。元の画像データには、画像中のある位置に付加されたアノテーションのデータが付随している。バッファリング制御部は、アノテーションが付加されている部分のデータの方がアノテーションが付加されていない部分のデータよりも優先的に画像データバッファ部に格納されるように、バッファリングを制御する。【選択図】図６
2015090429.tif 000002
【特許請求の範囲】
【請求項１】
元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、元の画像データから表示用の画像データを生成する画像形成装置であって、
元の画像データを格納する画像データ格納部と、
前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、
前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、
前記元の画像データのうちのどの部分のデータを前記画像データバッファ部に格納するかを制御するバッファリング制御部と、を有し、
前記元の画像データには、画像中のある位置に付加されたアノテーションのデータが付随しており、
前記バッファリング制御部は、アノテーションが付加されている部分のデータの方がアノテーションが付加されていない部分のデータよりも優先的に前記画像データバッファ部に格納されるように、バッファリングを制御する
ことを特徴とする画像形成装置。
【請求項２】
前記元の画像データは、病理標本を撮影して得られた病理画像のデータであり、
前記アノテーションは、当該アノテーションを付加した画像中の位置に対し、病理診断に関する情報を関連付けるためのものである
ことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記元の画像データには、複数のアノテーションのデータが付随しており、
前記複数のアノテーションそれぞれに関連付けられた病理診断に関する情報を解析することにより、与えられた解析条件に合致するアノテーションを抽出するアノテーション情報解析部を有し、
前記アノテーション情報解析部の解析結果に基づいて、前記複数のアノテーションのあいだのバッファリングの優先度が決定される
ことを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記解析条件は、アノテーションの作成者、アノテーションが作成もしくは更新された日または日時、および、アノテーションに関連付けられた病理診断に関する情報に含まれるキーワードのうち、少なくともいずれかを含む
ことを特徴とする請求項３に記載の画像形成装置。
【請求項５】
前記バッファリング制御部は、前記解析条件が変更されたときに前記画像データバッファ部に格納されたデータの更新を行う
ことを特徴とする請求項３または４に記載の画像形成装置。
【請求項６】
前記バッファリング制御部は、アノテーションが付加されている部分のデータよりも、前記ビューアに表示されている表示領域の周辺領域に該当するデータの方がさらに優先的に前記画像データバッファ部に格納されるように、バッファリングを制御する
ことを特徴とする請求項１〜５のうちいずれか１項に記載の画像形成装置。
【請求項７】
前記元の画像データの全体が複数のブロックの画像データに分けられており、
前記ブロックの単位で前記画像データバッファ部へのバッファリングが制御される
ことを特徴とする請求項１〜６のうちいずれか１項に記載の画像形成装置。
【請求項８】
前記元の画像データは、深度が異なる画像データを含んでおり、
前記バッファリング制御部は、前記ビューアに表示されている表示画像と深度が同じ画像データにおけるアノテーションが付加されている部分のデータとともに、前記表示画像と深度が異なる画像データにおける対応する部分のデータも前記画像データバッファ部へ格納されるように、バッファリングを制御する
ことを特徴とする請求項１〜７のうちいずれか１項に記載の画像形成装置。
【請求項９】
前記元の画像データは、倍率が異なる画像データを含んでおり、
前記バッファリング制御部は、前記ビューアに表示されている表示画像と倍率が同じ画像データにおけるアノテーションが付加されている部分のデータとともに、前記表示画像と倍率が異なる画像データにおける対応する部分のデータも前記画像データバッファ部へ格納されるように、バッファリングを制御する
ことを特徴とする請求項１〜８のうちいずれか１項に記載の画像形成装置。
【請求項１０】
元の画像データを格納する画像データ格納部と、
前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、
前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、
を備える画像形成装置の制御方法であって、
前記元の画像データに付随する、画像中のある位置に付加されたアノテーションのデータを取得するステップと、
アノテーションが付加されている部分のデータの方がアノテーションが付加されていない部分のデータよりも優先的に前記画像データバッファ部に格納されるように、前記元の画像データのうちのどの部分のデータを前記画像データバッファ部に格納するかを制御するステップと、を有する
ことを特徴とする画像形成装置の制御方法。
【請求項１１】
元の画像データを格納する画像データ格納部と、
前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、
前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、
を備える画像形成装置に対し、
前記元の画像データに付随する、画像中のある位置に付加されたアノテーションのデータを取得するステップと、
アノテーションが付加されている部分のデータの方がアノテーションが付加されていない部分のデータよりも優先的に前記画像データバッファ部に格納されるように、前記元の画像データのうちのどの部分のデータを前記画像データバッファ部に格納するかを制御するステップと、を実行させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像ビューアにおける表示領域の変更を高速化する技術に関するものである。
【背景技術】
【０００２】
病理分野において、病理診断のツールである光学顕微鏡の代替として、プレパラートに載置された被検試料を撮像し、デジタル化してディスプレイ上での病理診断を可能とするバーチャルスライドシステムがある。バーチャルスライドシステムによる病理診断のデジタル化により、従来の被検試料の光学顕微鏡像をデジタルデータとして取り扱える。それによって、デジタル画像を使った患者への説明、希少症例の共有化、遠隔診断の迅速化、教育・実習の効率化などの点で、利便性の向上が期待できる。
【０００３】
バーチャルスライドシステムによってデジタル化された画像データを可視化する画像ビューアは、システムとその使用者である病理医を直接繋ぐインターフェースとなるため、その使用感はシステムそのものの操作性に大きな影響を及ぼす。
【０００４】
しかし、従来の画像ビューアでは、その操作性が顕微鏡に劣る場合があった。例えば、病理画像データのサイズは、一般的に巨大であり、画面に表示される領域の大きさの数倍から時には数百倍にもなる。そのような巨大な画像データを画像ビューアで表示し、スクロールなどの指示を入力して表示データを更新した場合、入力に対する画面表示の応答が遅れる場合があった。このような応答の遅れは、画像ビューアの使用者のストレスの元となる場合が多く、時にはそれがバーチャルスライドシステムの普及を妨げる一因になる場合もあった。よって、画像ビューアの表示応答性を向上させることは、病理医がバーチャルスライドシステムを使用するための障壁の一つを取り払うことに繋がるため、非常に重要である。
【０００５】
ところで、画像ビューアの表示応答性の向上という課題は、バーチャルスライドシステムに限ったものではなく、広く一般的に認識されている課題である。この課題を解決するために、通常は画面表示領域以上の画像データを予めアクセス速度が比較的高速なバッファメモリ上に格納しておき、スクロール等による画面更新が生じた際には、そのバッファメモリから次の表示データを読み込むという処理が行われる。以下、画面表示の応答性向上のため、アクセス速度の速いバッファ領域にあらかじめ画像データまたはその一部を読み込んでおく処理のことを、「バッファリング」と称する。なお、このような処理を「キャッシング」と呼び、キャッシングのために使われるメモリのことを「キャッシュメモリ」または「キャッシュ」と呼ぶこともある。本明細書では、バッファとキャッシュを同じ意味で使うものとする。
【０００６】
バッファリングは従来から広く知られた処理方法であるが、一般的なバッファリングでは、画面表示領域よりも大きな領域を、上下左右各方向に対して均等な大きさだけ読み込むことが多い。つまりこの場合、バッファメモリに読み込まれた画像データ領域の中で、実際に画面に表示する領域はちょうど中央に位置する形になる。このような方法は、画面に表示される画像を変更する手段として上下左右へのスクロールを用いる場合には有効である。しかし、一度のスクロール量が大きい場合には、画像ビューアの応答性が低下する場合がある。この原因は、次に画面に表示する領域がバッファリングしている領域外まで移動することで、バッファメモリよりも低速な記憶装置から画像データを読み込まなければならなくなるためである。このような現象を回避するには、より多くのバッファ容量を確保すれば良いが、バッファメモリの使用効率が上がるわけではなく、バッファリングさ
れたデータの大半が結果的に無駄になることに変わりはない。つまり一般的には、画像ビューアの表示応答性を向上させるためには、より多くのバッファメモリを使用する必要がある。
【０００７】
これらの問題が生じるそもそもの原因は、次の表示画像を精度良く予測できないことにある。言い換えれば、仮に次の表示画像を高い確率で予測できれば、バッファリングされたデータの使用効率をより向上させることができるようになる。
【０００８】
そのような例として、例えば特許文献１では、画像データにテキストデータが含まれる場合、テキストが特定の方向に読まれるという特徴を利用して、画像の内容を解析した上でバッファリングを行うデータを選択する処理を行っている。これにより、特許文献１で示される手法は、スクロール表示の高速化と効率の良いメモリ使用を両立させている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００６−１１３８０１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献１で示される状況では、テキストは読まれる方向が決まっているため、この特徴を利用したバッファリングは有効である。しかしながら、テキストのような意味付けされたデータを含んでいない画像（例えば病理画像）においてはその方向性が画像の特徴からは一意に定まらないため、高速化と効率の良いメモリ使用とを両立させるバッファリングの制御方法がないという課題があった。また、特許文献１では、現在の表示画像と隣接する領域をスクロールによって表示させる際には効果があるが、現在の表示画像から遠く離れた位置にある画像を表示させる時には、その応答性が低下するという課題があった。
【００１１】
本発明は上記課題に鑑みてなされたものであり、病理診断における表示応答性の向上とバッファメモリの使用効率の向上を図るための技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の第一態様は、元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、元の画像データから表示用の画像データを生成する画像形成装置であって、元の画像データを格納する画像データ格納部と、前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、前記元の画像データのうちのどの部分のデータを前記画像データバッファ部に格納するかを制御するバッファリング制御部と、を有し、前記元の画像データには、画像中のある位置に付加されたアノテーションのデータが付随しており、前記バッファリング制御部は、アノテーションが付加されている部分のデータの方がアノテーションが付加されていない部分のデータよりも優先的に前記画像データバッファ部に格納されるように、バッファリングを制御する画像形成装置を提供する。
【００１３】
本発明の第二態様は、元の画像データを格納する画像データ格納部と、前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビ
ューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、を備える画像形成装置の制御方法であって、前記元の画像データに付随する、画像中のある位置に付加されたアノテーションのデータを取得するステップと、アノテーションが付加されている部分のデータの方がアノテーションが付加されていない部分のデータよりも優先的に前記画像データバッファ部に格納されるように、前記元の画像データのうちのどの部分のデータを前記画像データバッファ部に格納するかを制御するステップと、を有する画像形成装置の制御方法を提供する。
【００１４】
本発明の第三態様は、元の画像データを格納する画像データ格納部と、前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、を備える画像形成装置に対し、前記元の画像データに付随する、画像中のある位置に付加されたアノテーションのデータを取得するステップと、アノテーションが付加されている部分のデータの方がアノテーションが付加されていない部分のデータよりも優先的に前記画像データバッファ部に格納されるように、前記元の画像データのうちのどの部分のデータを前記画像データバッファ部に格納するかを制御するステップと、を実行させるプログラムを提供する。
【発明の効果】
【００１５】
本発明によれば、病理診断における表示応答性の向上とバッファメモリの使用効率の向上を図ることができる。
【図面の簡単な説明】
【００１６】
【図１】第１実施形態における画像処理システムのシステム構成図。
【図２】第１実施形態における画像形成装置のハードウェア構成図。
【図３】第１実施形態における画像形成装置の機能ブロック図。
【図４】病理画像データの全体図。
【図５】病理画像データに含まれる画像データと各領域とアノテーションの関係図。
【図６】第１実施形態における画像形成処理の流れの概要を示すフローチャート。
【図７】第１実施形態における初期設定処理の流れを示すフローチャート。
【図８】第１実施形態におけるバッファ内容更新処理の流れを示すフローチャート。
【図９】第１実施形態における各領域のバッファリング優先度を示す模式図。
【図１０】第１実施形態におけるバッファリングの例を説明するための模式図。
【図１１】第２実施形態における各領域のバッファリング優先度を示す模式図。
【図１２】第２実施形態におけるバッファリングの例を説明するための模式図。
【図１３】第３実施形態における各領域のバッファリング優先度を示す模式図。
【図１４】第３実施形態におけるバッファリングの例を説明するための模式図。
【図１５】画像処理システムの別の構成例を示す図。
【発明を実施するための形態】
【００１７】
本発明は、元の画像データの一部に対応する画像を表示し、その表示部分をユーザーの操作に従って変更（スクロール、ジャンプ等）する機能を有する画像ビューアにおいて、表示領域移動時の表示応答性を向上させるための技術に関する。具体的には、本発明は、元の画像データから表示用の画像データ（表示画像データ）を生成する装置において、バ
ッファリングするデータを適切に制御することで、バッファメモリの使用効率を向上し、結果として表示応答性を総合的に向上するものである。
【００１８】
より詳しくは、本発明では、元の画像データをブロック画像データ群として取り扱い、ブロック画像データごとにバッファリングの優先度を決定し、優先度が高いブロック画像データを優先的にバッファする。このバッファリング優先度は、画像に付随するアノテーションの情報を解析した結果によって決定するとよい。ここでアノテーションとは、画像中の特定の位置（点またはエリア）に付加されたマーカーのことである。個々のアノテーションには、病理診断に関するいくつかの情報を関連付けることができる（アノテーションに関連付けられた情報を「アノテーション情報」と記す。）。アノテーション情報にはいかなる種類の情報を含めてよい。典型的な例としては、アノテーションが作成された日付情報や、作成者情報、アノテーションの種別情報、重要度情報（病変の状態や病気の進行度）、診断の所見情報やその他のコメント等が挙げられる。また、自動診断ソフトウェア等によりアノテーションが作成される場合は、そのソフトウェアが作成した診断情報や、ソフトウェアを特定する情報などがアノテーション情報に含まれてもよい。なお、本明細書では、コメント情報以外の各種情報のことを「属性情報」と記す。また、文脈に応じて、マーカーとアノテーション情報をまとめたものを「アノテーション」と記す場合もある。
【００１９】
以下の実施形態で述べるバーチャルスライドシステムにおいては、アノテーションのコメントとして、例えば病理診断による所見などの重要な情報が記載されている。（なお、本明細書では、この病理診断による所見情報や関連する属性情報のことを、まとめて「病理診断情報」と記す。）そのため、画像にアノテーションが含まれている場合、画像の他の部分と比較して、アノテーション周辺の画像は画像閲覧者から閲覧される可能性が高いと考えられる。以上より、アノテーション周辺の画像をあらかじめバッファリングしておけば、ユーザーによってその周辺領域の表示要求があった時でも、表示応答性を向上させることができる。その表示要求が、スクロール処理だけではすぐに表示を行えない、現在の表示領域から遠く離れた場所に対するものであれば、その効果が顕著に現れる。すなわち、アノテーションの位置情報をバッファすべきデータの予測に活用するのである。さらに、アノテーションの数が多かったり、バッファメモリの容量が限られている場合においても、ある条件を満たすアノテーションのみをバッファリング対象としておくことで、メモリ使用効率の良いバッファリングが可能となる。
【００２０】
＜第１実施形態＞
本発明の第１実施形態に係る画像処理システムを、図に従って説明する。本実施形態で示す手法は、図１のようなシステム構成の元で実現される。１０１は撮像装置であり、主にバーチャルスライドシステムにおける撮像部分に当たる。撮像装置１０１は、被写体としての病理標本のスライド（プレパラート）を高倍率かつ高解像度で撮影しデジタル画像データを取得する装置であり、デジタル顕微鏡とも呼ばれる。１０２は画像形成装置であり、本実施形態で示す手法を実現するための主要部分である。具体的には、画像形成装置１０２は、撮像装置１０１で生成された画像データを受け取り、表示画像データの生成処理を行う。１０３は画像表示装置であり、画像形成装置１０２から受け取った表示画像データに基づく画像を画面に表示する。
【００２１】
本実施形態において、画像形成装置１０２は、例えば図２に示されるハードウェア構成から成るコンピュータと、後述する各種機能を提供するプログラムとで、実現可能である。２０１は入力部であり、キーボードやマウス等が該当する。２０２は記憶部であり、本実施形態で示す手法を実現するためのプログラムや、処理対象データなどを格納する部分であり、ＲＡＭ等が該当する。２０３は演算部であり、記憶部２０２に格納されたデータに対し、記憶部２０２に格納されたプログラムに従って各種演算処理を行う部分であり、
ＣＰＵ等が該当する。２０４はＩ／Ｆ部であり、撮像装置１０１および画像表示装置１０３とのデータ入出力を制御するインターフェース部分である。２０５は補助記憶装置（または外部記憶装置）であり、ハードディスクやフラッシュメモリ等が該当する。２０６は上記２０１〜２０５を接続するデータバスである。
【００２２】
本実施形態における画像形成装置１０２の機能ブロック図を、図３に示す。３０１は画像データ入力部であり、撮像装置１０１から画像データを入力する部分である。３０２は画像データ格納部であり、画像データ入力部３０１から入力した画像データを格納する記憶装置である。３０３は画像データバッファ部であり、バッファリング制御命令を受けて画像データ格納部３０２から画像データの一部のデータを受け取り、一時的に格納可能である。また画像データバッファ部３０３は、表示画像データの形成に必要な画像データを画像データ出力部３０４へ送信する。画像データ格納部３０２は、画像データ全体を格納する必要があるため、容量の大きい記憶装置（例えば図２の外部記憶装置２０５）を用いて構成される。一方、画像データバッファ部３０３は、画像データ用のバッファメモリとして機能する記憶装置であり、画像データ格納部３０２に比べて高速にデータを書き込み／読み出し可能なデバイスで構成される。本実施形態では記憶部２０２の中に画像データバッファ部３０３を設定するが、記憶部２０２とは別に専用のバッファメモリを設けてもよい。なお、画像データバッファ部３０３の容量は、画像データ格納部３０２に比べて小さく、画像データの全体を格納することはできない。以下の説明においては、画像データバッファ部３０３を、「バッファメモリ」または単に「バッファ」と呼ぶこともある。なお、画像データの入力については、画像データ入力部３０１がバッファリング制御部３０６からのデータ転送命令を受信し、画像データ格納部３０２を経由せずに撮像装置１０１からの画像データを直接画像データバッファ部３０３へ転送する構成でも良い。
【００２３】
３０４は画像データ出力部であり、画像データ格納部３０２または画像データバッファ部３０３から受け取った画像データから、画像表示装置１０３へ出力するための表示画像データを形成する。３０５は画面更新情報入力部であり、例えばマウス等の入力デバイスからユーザー入力を受け付け、それに基づいて画面更新命令をバッファリング制御部３０６へ送信する。バッファリング制御部３０６は、画像データバッファ部３０３に格納するデータを制御する機能である。バッファリング制御部３０６は、画像データ格納部３０２へデータ転送命令を送信し、また、表示領域情報入力部３１０から表示領域情報を受信し、それに基づいて画像データバッファ部３０３へバッファリング制御命令を送信する。さらに、バッファリング制御部３０６は、画像データに付随するアノテーション情報を解析する命令をアノテーション情報解析部３０８へ送信し、バッファリング優先度設定部３０９からはバッファリング優先度を受信する。
【００２４】
３０７はアノテーション解析条件設定部であり、例えばユーザー入力からアノテーション情報解析に必要な解析条件を生成し、アノテーション情報解析部３０８へ送信する。なお、アノテーション解析条件設定部３０７は、ユーザー入力ではなく画像形成装置１０２内に保持される他の情報、例えば画像に付随する臓器情報や画像の閲覧者情報などを用いて、解析条件を生成しても良い。
【００２５】
アノテーション情報解析部３０８は、バッファリング制御部３０６から受信した解析命令によりアノテーション情報を解析し、その結果をバッファリング優先度設定部３０９へ送信する。また、アノテーション情報解析部３０８は、優先度算出命令もバッファリング優先度設定部３０９へ送信する。バッファリング優先度設定部３０９は、これらの情報をもとにバッファリング優先度を算出し、その結果をバッファリング制御部３０６へ送信する。表示領域情報入力部３１０は、ＯＳ等が保持している表示領域情報を取得し、その結果をバッファリング制御部３０６へ送信する。
【００２６】
図４は、病理画像データの構造を示した全体図である。本実施形態では、図４に示す構造を持つ画像データを取り扱う。病理画像データ４０１には、撮像装置１０１によって撮像された被写体（病理標本）の画像が格納されている。病理画像データ４０１は、被写体の表示倍率が異なる深度画像群４０２〜４０５から構成されている。本実施形態では、４０２〜４０５はそれぞれ２．５倍相当、５倍相当、１０倍相当、２０倍相当の表示倍率をもつ深度画像群とする。なお、この「○○倍相当」という表現は、対応する画像に記録されている被写体の大きさが、○○倍の対物レンズを用いた光学顕微鏡で観察される大きさと同程度である、という意味で使用する。各深度画像群４０２〜４０５は、異なる深度において撮像された複数の画像データから構成されている。深度とは、撮像装置１０１の光軸方向の焦点位置（深さ）である。例えば画像データ４０６〜４０９は、表示倍率は異なるが全て同じ深度で撮像されたものである。
【００２７】
病理画像データ４０１を構成する全ての画像データは、ブロック画像データ４１０を最小単位として構成される。本実施形態では、データ転送などの処理はこのブロック画像データ４１０を単位として実行する。ブロック画像データ４１０はそれぞれが独立した画像ファイルであっても良いし、もしくは画像データ４０６〜４０９等が独立した画像ファイルであって、それを内部的に取り扱う単位としてブロック画像データ４１０を定義しても良い。そして、全てのブロック画像データは、複数の整数から構成されるインデックス（ｉ，ｊ，ｋ，ｌ）によって一意に特定することが可能である。ここで、ｉはｘ軸方向のインデックス、ｊはｙ軸方向のインデックス、ｋはｚ軸（深度）方向のインデックス、ｌは倍率方向のインデックスとする。インデックスｉとｊが同じである２つのブロック画像データが存在する場合、インデックスｌが同じであれば、それらはｘｙ平面上の同じ位置にあるブロック画像データであることを示す。また、同じ深度画像群に属するブロック画像データのインデックスｌは、全て同じ値を持つ。
【００２８】
図４に示す病理画像データは、一つの被写体（病理標本）を撮影倍率や光軸方向の焦点位置を変えながら撮像装置１０１により複数回撮影することで、生成することができる。病理画像データには、当該被写体あるいは画像群に付随する各種のデータを付加することができる。前述したアノテーションもその一つである。アノテーションデータは、少なくとも、アノテーション（マーカー）の位置情報と、そのアノテーションに関連付けられたアノテーション情報とを含む。アノテーションの位置情報は、例えば、ブロック画像データを特定するインデックスと、当該ブロック画像データの中のｘｙ座標との組み合わせで定義できる。点ではなくある広がりをもつエリアに対してアノテーションを付す場合には、例えば、矩形エリアの対角２点の座標、円形エリアの中心座標と半径などを、アノテーションの位置情報として用いればよい。一つの病理画像データに対して複数のアノテーションが付加された場合には、アノテーションごとにアノテーションデータが作成される。アノテーションデータの例は後述する。
【００２９】
図５に、本実施形態における画像データの取り扱い方法を示す。図５では、病理画像データ４０１のうち、画像データ４０８が画面表示の対象になっている。５０１は画像表示装置によって実際に画面表示が行われる領域である。以下、５０１を「画面表示領域」と記述する。５０２は、画面表示を行うために画像表示装置１０３へ転送を行う画像領域であり、以下５０２を「表示データ領域」と記述する。本実施形態では表示データ領域５０２を、画面表示領域５０１を完全に含み、かつ最も少ないブロック画像データ４１０で構成される領域として定義する。ただし、場合によっては表示データ領域５０２をこの定義よりも大きい領域と定義しても良い。また、画面表示領域５０１と表示データ領域５０２は一致していても良い。
【００３０】
５０３〜５０８は、画像上に関連付けられたアノテーションである。これらのアノテーションは円形の図形で表され、その大きさはブロック画像データ４１０よりも大きいとす
る。ただし、場合によってはアノテーションを表す図形を円形以外のものにしても良いし、その大きさもブロック画像データ４１０より小さいものにしても良い。画像データ４０８を含む病理画像データ４０１には、アノテーション５０３〜５０８に対応するアノテーションデータが付随している。本実施形態におけるアノテーションデータは、例えばＩＤ番号や作成者、作成日、最終更新者、最終更新日、コメントなどから構成される。アノテーションデータの例を、表１に示す。
【表１】
2015090429.tif 000003
本実施形態においては、アノテーション５０３〜５０８と、アノテーションデータのＩＤ１〜６が、それぞれ対応する。
【００３１】
５０９〜５１５は、バッファリングの対象となる領域であり、領域の大きさ（どこまで余裕をもってバッファリングするか）はユーザーもしくはプログラムがあらかじめ指定または変更できる。以下、５０９〜５１５を「バッファリング対象領域」と記述する。バッファリング対象領域には、画面表示領域５０１と関連する第１のバッファリング対象領域５０９と、アノテーションが付加された位置と関連する第２のバッファリング対象領域５１０〜５１５との２種類がある。
【００３２】
本実施形態では、第１のバッファリング対象領域５０９を、表示データ領域５０２よりも上下左右方向それぞれブロック画像データ１つ分だけ広く、かつ表示データ領域５０２を除いた領域として定義する。つまり、第１のバッファリング対象領域５０９は、表示データ領域５０２の周囲の１列分のブロック画像データ群である。ただし、必要に応じて表示データ領域５０２がバッファリング対象領域５０９に含まれる構成を用いても良い。また、本実施形態では、第２のバッファリング対象領域５１０〜５１５を、アノテーション５０３〜５０８を完全に含むために必要となる最小の領域よりも、上下左右方向それぞれブロック画像データ１つ分だけ広い領域として定義する。
【００３３】
バッファリング対象領域の定義範囲は上記の例に限らず、適宜変更しても良い。例えば、図５では表示データ領域５０２やアノテーションの領域の周囲（上下左右）１列分をバッファのマージンとしているが、周囲２列分以上のブロックをバッファ対象領域に含めてもよい。また、上・下・左・右それぞれのマージンの幅（ブロックの列数）を異ならせてもよい。例えば、上下方向（ｙ方向）よりも左右方向（ｘ方向）のスクロールが多用されることが予め分かっている場合には、上下の１列と左右の２列のブロックをバッファリング対象領域に設定してもよい。
【００３４】
また、図５では、画像ビューアの表示画像と深度が同じ画像データ（画像データ４０８）の中からバッファすべきブロック画像データが選ばれているが、例えば、バッファリング対象領域を深度方向に広げてもよい。つまり、表示画像と深度が同じ画像データ４０８におけるアノテーション部分のデータとともに、表示画像と深度が異なる画像データにおける対応部分のデータもバッファの対象に選ぶのである。例えば、アノテーション部分のブロック画像データのインデックスが（ｉ，ｊ，ｋ，ｌ）であった場合に、インデックスが（ｉ，ｊ，ｋ＋ｐ，ｌ）であるブロック画像データをバッファリング対象領域に含めれ
ばよい。このようなバッファリングは、画像ビューアが表示画像の深度方向への変更（深度スクロール）の機能を有する場合に有効である。なお、ｐは０以外の整数である。さらに、バッファリング対象領域を倍率方向に広げてもよい。つまり、表示画像と倍率が同じ画像データ４０８におけるアノテーション部分のデータとともに、表示画像と倍率が異なる画像データにおける対応部分のデータもバッファの対象に選ぶのである。例えば、アノテーション部分のブロック画像データのインデックスが（ｉ，ｊ，ｋ，ｌ）であった場合に、インデックスが（ｉ’，ｊ’，ｋ，ｌ＋ｑ）であるブロック画像データをバッファリング対象領域に含めればよい。このようなバッファリングは、画像ビューアが表示倍率の切り替え機能を有する場合に有効である。なお、ｑは０以外の整数である。ｉとｉ’、ｊとｊ’は、たいていの場合異なる値を持つ。さらには、バッファリング対象領域を深度方向および倍率方向に同時に広げても良い。
【００３５】
（画像形成処理）
図６は、本実施形態における画像形成処理の流れの概要を示すフローチャートである。以下、図６に従って処理の流れを説明する。
【００３６】
まず、バッファリング制御部３０６が、初期設定を行う（ステップＳ６０１）。Ｓ６０１の中では、さらに図７で示される処理を行う。初期設定の詳細な処理の流れについては後述する。
【００３７】
Ｓ６０１の次は、アノテーション解析条件設定部３０７が、アノテーション解析条件の更新要求がユーザー入力等の形で画像形成装置１０２に入力されたかどうかを判定する（条件判定Ｓ６０２）。アノテーション解析条件の更新要求とは、アノテーション情報に含まれるどのような情報に注目するか（優先度を上げるか）を決める条件を変更する操作である。例えば、注目する情報（アノテーションの作成者、作成日や作成日時、更新日や更新日時、コメントに含まれるキーワードなど）と優先度を決める条件とをアノテーション解析条件として与えるとよい。具体的には、作成者「○○医師」が作成したアノテーションの優先度を上げる、作成日時が新しいアノテーションの優先度を上げる、コメントにある特定のキーワードが含まれているアノテーションの優先度を上げるなど、様々な指定方法をとり得る。ユーザー入力の方法としては、例えば、画像表示装置に解析条件の入力画面を表示し、マウス等の入力デバイスを用いて注目する情報と優先度を決める条件を選択ないし入力させればよい。なお、アノテーション解析条件設定部３０７が解析条件を自動で設定することもできる。例えば、病理画像データに付加された情報（例えば標本の染色方法、臓器の種類など）を抽出し、その情報に対応したキーワードなどを解析条件に設定する方法などが考えられる。
【００３８】
条件判定Ｓ６０２でアノテーション解析条件の更新要求が入力されたと判定されたら、その入力をもとに、アノテーション解析条件設定部３０７が、アノテーション解析条件の更新を行う（ステップＳ６０３）。具体的には、記憶部２０２に保存されているアノテーション解析条件のデータの書き換えが行われる。条件判定Ｓ６０２の判定が偽であれば、Ｓ６０７に進む。
【００３９】
次に、アノテーション情報解析部３０８が、アノテーション解析条件にしたがってアノテーション情報の解析を行う（ステップＳ６０４）。すなわち、アノテーション情報解析部３０８が、病理画像データに含まれている全てのアノテーションのアノテーション情報を探索し、解析条件に合致するアノテーションを抽出する。具体的な解析手順及びその解析結果は、与えられた解析条件の内容によって異なり得る。例えば、解析条件が「アノテーションの作成者」を指定する条件であった場合は、全てのアノテーションの中から指定作成者のアノテーションのみを選び出せばよい。解析条件が「最終更新日の新しいもの」であった場合は、全てのアノテーションを最終更新日の順に並べ替え（ソート）すればよ
い。解析条件がコメント中のキーワードであった場合は、キーワードを含むアノテーションのみを選び出してもよいし、キーワードとのマッチング度合が高い順にアノテーションをソートしてもよい。アノテーション情報解析部３０８の解析結果（例えば、抽出・ソートされたアノテーションのＩＤ番号のリスト）は、バッファリング優先度設定部３０９に渡される。
【００４０】
次に、バッファリング優先度設定部３０９が、Ｓ６０４の解析結果に基づいてバッファリング対象領域を決定する。つまり、Ｓ６０４で抽出されたアノテーションの位置情報を参照し、各々のアノテーションの部分を含むようにバッファリング対象領域５１０〜５１５を設定する。そして、バッファリング優先度設定部３０９は、バッファリング対象領域５１０〜５１５中に存在する各ブロック画像データのバッファリング優先度を決定し、既に作成してあるバッファリング優先度テーブルの内容を更新する（ステップＳ６０５）。なお、バッファリング優先度テーブルは、初期設定Ｓ６０１の中のＳ７０７にて作成されるテーブルである。Ｓ７０７については後述する。
【００４１】
バッファリング優先度テーブルは、バッファリング対象領域中の各ブロック画像データのＩＤ番号と、対応するバッファリング対象領域のＩＤ番号と、そのバッファリング優先度からなるテーブルである。なお、各ブロック画像データに対応するＩＤ番号は、同じく各ブロック画像データを一意に指定するインデックス番号と１対１で対応している。また、本実施形態では、バッファリング対象領域５０９のＩＤ番号を０とし、バッファリング対象領域５１０〜５１５のＩＤ番号は、これらが属するアノテーションのＩＤ番号と一致させる（つまり、順番に１〜６の整数を割り当てる）。また、本実施形態においては、バッファリング優先度の値は正の整数とし、値が大きいほど優先度が高いとするが、必要に応じてこの定義とは異なる優先度、例えば正負の実数、などの定義を用いても良い。表２に、バッファリング優先度テーブルの例を示す。
【表２】
2015090429.tif 000004
【００４２】
次に、Ｓ６０５で更新したバッファリング優先度テーブルの内容に基づき、バッファリング制御部３０６が、画像データバッファ部３０３に格納しているデータ（これを「バッファ内容」とよぶ）を更新する（ステップＳ６０６）。なお、更新された解析条件による結果が更新前の解析条件による結果と一致する場合など、必ずしもバッファ内容の更新をする必要がない場合は、処理の効率を重視して適切な範囲でＳ６０６の処理を省いても良い。また、Ｓ６０６の具体的な処理としてはいくつかの方法が考えられるが、図８にその一例を示す。図８の詳細な内容については後述する。
【００４３】
Ｓ６０６の次は、バッファリング制御部３０６が、画面更新の要求が何らかの形で画像形成装置１０２に入力されたかどうかを判定する（条件判定Ｓ６０７）。画面更新の要求とは、例えばマウス等の入力デバイスから与えられる画面のスクロール指示や、画面切り替え指示などである。画面更新要求が入力されていない場合は、Ｓ６０２に戻る。
【００４４】
Ｓ６０７で画面更新要求が入力されたと判定されたら、その入力をもとに、バッファリング制御部３０６が、画面表示領域情報の更新を行う（ステップＳ６０８）。ここで、「画面表示領域情報」とは、画像データ４０８に対する画面表示領域５０１の位置と表示面積の情報のことである。
【００４５】
次に、バッファリング制御部３０６が、更新された画面表示領域情報から、表示データ領域情報の更新を行う（ステップＳ６０９）。ここで、「表示データ領域情報」とは、画像データ４０８に対する表示データ領域５０２の位置と面積の情報のことである。
【００４６】
次に、バッファリング制御部３０６が、画面表示に必要なブロック画像データが画像データバッファ部３０３内に存在するかどうかを判定する（条件判定Ｓ６１０）。条件判定Ｓ６１０の判定結果が真であれば、ステップＳ６１２に進み、画像データ出力部３０４は画像データバッファ部３０３内のブロック画像データを読み出し、表示画像データを生成して画像表示装置１０３へ転送する。一方、条件判定Ｓ６１０の判定結果が偽であればステップＳ６１１に進み、画像データ出力部３０４は、画像データ格納部３０２からブロック画像データを読み出し、表示画像データを生成して画像表示装置１０３へ転送する。なお、ブロック画像データをそのまま表示画像データとして転送してもよいし、ブロック画像データに対して必要な画像処理（例えば解像度変換、階調補正、色補正、強調処理、合成処理、形式変換など）を施して表示画像データを生成してもよい。
【００４７】
次に、バッファリング制御部３０６が、バッファリング対象領域情報の更新を行う（ステップＳ６１３）。ここで、「バッファリング対象領域情報」とは、画像データ４０８に対するバッファリング対象領域５０９の位置と形状とバッファリング領域範囲の情報のことである。なお、本実施形態では簡単のため、表示データ領域５０２とバッファリング対象領域５０９の位置関係、およびバッファリング対象領域５０９の形状は変化しないものとする。ただし、バッファリング対象領域５０９の位置が変わることで、バッファリング対象領域５０９と、他のバッファリング対象領域５１０〜５１５が重なることはあり得る。
【００４８】
次に、バッファリング優先度設定部３０９は、既に作成してあるバッファリング優先度テーブルの内容を更新する（ステップＳ６１４）。バッファリング対象領域５０９がバッファリング対象領域５１０〜５１５と重なっていない場合は、バッファリング対象領域５０９に属するブロック画像データに対して、あらかじめ決められた優先度を設定する。例えば、バッファリング対象領域５０９に属するブロック画像データには、他のブロック画像データよりも常に高い優先度を与える、という方法が考えられる。これは、画面表示領域５０１の移動について、上下左右へのスクロール移動の可能性の方が、その他の離れた領域へのジャンプ移動の可能性よりも高いという仮定に基づいている。バッファリング対象領域５０９がバッファリング対象領域５１０〜５１５と重なる場合は、重なった領域に存在するブロック画像データはバッファリング対象領域５０９に属するものとして、優先度を設定する。
【００４９】
次に、Ｓ６１４で更新したバッファリング優先度テーブルの内容に基づき、バッファリング制御部３０６が、画像データバッファ部３０３に格納しているバッファ内容を更新する（ステップＳ６１５）。なお、図６では画面更新要求が入力されれば必ずバッファ内容を更新するアルゴリズムとなっているが、スクロール量が小さいなど、必ずしもバッファ内容の更新をする必要がない場合は、処理の効率を重視して適切な範囲でＳ６１５の処理を省いても良い。Ｓ６１５の具体的な処理は、Ｓ６０６と同様であり、図８を用いて後述する。
【００５０】
Ｓ６１５の後は、バッファリング制御部３０６は、プログラムを終了させる命令が入力されたかどうかをチェックする（条件判定Ｓ６１６）。条件判定Ｓ６１６の結果が真であればプログラムを終了させ、偽であれば条件判定Ｓ６０２に戻り、処理を続行する。
以上で、本実施形態における画像形成処理の流れの概要説明を終了する。
【００５１】
（初期設定Ｓ６０１）
図７は、本実施形態における初期設定Ｓ６０１の詳細な流れを示すフローチャートである。以下、図７に従って説明する。
【００５２】
まず、バッファリング制御部３０６は、画面表示領域情報を、表示領域情報入力部３１０から取得する（ステップＳ７０１）。この情報は、表示画面解像度の情報のことである。
次に、バッファリング制御部３０６は、表示対象となる深度及び倍率の画像データ４０８の中から、画面表示領域の位置を設定する（ステップＳ７０２）。Ｓ７０１で得られた表示画面解像度の情報と、このＳ７０２で設定する位置の情報により、画像データ４０８の中で画面表示領域が占める位置と面積が確定する。初期表示の深度、倍率、領域は、例えば、病理画像データ４０１の中で真ん中の深度・倍率の画像データ４０８の中央の領域に設定すればよい。
次に、バッファリング制御部３０６は、Ｓ７０２によって確定した画面表示領域から、表示データ領域を設定する（ステップＳ７０３）。このＳ７０３で、表示データ領域の位置と面積が確定する。
【００５３】
次に、バッファリング制御部３０６は、バッファメモリ容量を設定する（ステップＳ７０４）。バッファメモリ容量は、画像形成装置が搭載する記憶部２０２の容量などに応じて、ユーザーまたはプログラムが設定する。
【００５４】
次に、画像データ４０８と関連付けられているアノテーション５０３〜５０８の位置を取得する（ステップＳ７０５）。これは例えば、病理画像データ４０１に付随するアノテーションデータを取得し、画像データ４０８上におけるアノテーション５０３〜５０８の中心位置と半径を取得することに相当する。
次に、バッファリング対象領域５０９〜５１５の位置や面積および形状を設定する（ステップＳ７０６）。これらの設定の仕方は、先に述べたとおりである。
【００５５】
次に、バッファリング制御部３０６は、バッファリング対象領域５０９〜５１５中に存在する各ブロック画像データのバッファリング優先度を格納するための、バッファリング優先度テーブルを作成する（ステップＳ７０７）。バッファリング優先度テーブルは、Ｓ６０５の説明で既に述べた通り、バッファリング対象領域５０９〜５１５中の各ブロック画像データのＩＤ番号と、対応するバッファリング対象領域のＩＤ番号と、そのバッファリング優先度からなるテーブルである。なお、この時点ではバッファリング優先度の値はまだ計算されていないため、例えばゼロなどの適当な値を設定しておく。
【００５６】
次に、バッファリング制御部３０６の制御の下、画像データ出力部３０４が表示データ領域５０２に相当する領域のブロック画像データを、画像データ格納部３０２から読み出し、画像表示装置１０３へ転送する（ステップＳ７０８）。
【００５７】
次に、画像表示装置１０３へ転送された表示データ領域５０２の情報をもとに、バッファリング優先度設定部３０９が、バッファリング優先度テーブルの更新を行う（ステップＳ７０９）。Ｓ７０９では、バッファリング優先度テーブルの各要素のうち、バッファリング対象領域５０９に属するブロック画像データに対応する要素のみ（つまりＳ７０８で表示した領域の周囲のブロック画像データのみ）、あらかじめ決められた優先度を設定す
る。なお、このＳ７０９は、Ｓ６１４と同じ処理である。
【００５８】
次に、バッファリング制御部３０６は、Ｓ７０９にて設定されたバッファリング優先度をもとに、バッファの内容を更新する（ステップＳ７１０）。なお、このＳ７１０は、Ｓ６０６およびＳ６１５と同じ処理である。
以上で、初期設定処理Ｓ６０１が終了する。
【００５９】
（バッファ内容更新Ｓ６０６、Ｓ６１５およびＳ７１０）
図８は、本実施形態におけるバッファ内容更新処理Ｓ６０６、Ｓ６１５およびＳ７１０の詳細な流れの一例を示すフローチャートである。以下、図８に従って説明する。
【００６０】
まず、バッファリング制御部３０６は、バッファリング優先度テーブル（以下、単に「優先度テーブル」と呼ぶ）の全要素を優先度の高い順にソートする（ステップＳ８０１）。
次に、バッファリング制御部３０６は、整数型変数ｉを用意し、変数ｉにゼロを設定する（ステップＳ８０２）。
【００６１】
バッファリング制御部３０６は、優先度テーブル中のｉ番目の要素に該当するブロック画像データが、すでにバッファ内に存在しているかどうかをチェックする（条件判定Ｓ８０３）。具体的には、例えばあらかじめバッファ内に存在しているブロック画像データに対応するＩＤ番号のリストを作成しておき、前記ｉ番目のブロック画像データに対応するＩＤ番号をバッファ内画像のリストと照合すれば良い。条件判定Ｓ８０３の結果が真ならば、バッファリング制御部３０６は、優先度テーブル中のｉ番目の要素にマークを付け（ステップＳ８０４）、バッファ中で見つかったブロック画像データにもマークを付ける（ステップＳ８０５）。このマークには、何らかのフラグを対応させれば良い。条件判定Ｓ８０３の結果が偽であれば、ステップＳ８０６に進む。
【００６２】
Ｓ８０６では、バッファリング制御部３０６は、変数ｉの値を１増やす。
条件判定Ｓ８０７では、バッファリング制御部３０６は、変数ｉの値が優先度テーブルの要素数以上かどうかをチェックする。条件判定Ｓ８０７の結果が偽であれば、条件判定Ｓ８０３の処理に戻る。条件判定Ｓ８０７の結果が真であれば、バッファリング制御部３０６は、優先度テーブル中のマークされた要素を削除する（ステップＳ８０８）。この結果、優先度テーブルには、優先度が高いブロック画像データのうち、バッファ内に存在しないもの（つまり、バッファに追加すべきブロック画像データ）を示す要素のみが残る。
Ｓ８０８の次は、バッファリング制御部３０６は、バッファ中のマーク画像以外のブロック画像データを削除する（ステップＳ８０９）。この結果、バッファする必要のないブロック画像データが削除され、バッファに空きが作られる。
【００６３】
Ｓ８１０では、バッファリング制御部３０６は、変数ｉにゼロを代入する。
バッファリング制御部３０６は、バッファに空きがあるかどうかを確認する（条件判定Ｓ８１１）。条件判定Ｓ８１１の結果が真であれば、バッファリング制御部３０６は、優先度テーブルのｉ番目要素に対応するブロック画像データを、画像データ格納部３０２から、画像データバッファ部３０３へ転送する（ステップＳ８１２）。
次に、バッファリング制御部３０６は、変数ｉの値を１増やし（ステップＳ８１３）、変数ｉの値が優先度テーブルの要素数未満かどうかをチェックする（条件判定Ｓ８１４）。条件判定Ｓ８１４の結果が真であれば、バッファ内容更新の処理を継続するため、ステップＳ８１１に戻る。条件判定Ｓ８１４の結果が偽であれば、バッファリングの対象となるブロック画像データが残っていないことになるため、バッファ内容更新の処理を終了する。なお、条件判定Ｓ８１１の判定結果が偽である場合は、これ以上バッファに画像データを格納できない状態であるため、バッファ内容更新の処理を終了する。
【００６４】
以上で、図８の詳細説明を終了する。なお、バッファ内容更新処理Ｓ６０６、Ｓ６１５およびＳ７１０については、図８に示した処理の他、例えば単純にバッファ中の内容を全消去してバッファリング優先度の高いブロック画像データ群を順次バッファへ読み込むなど、他の異なる処理を用いても良い。
【００６５】
（バッファリングの一例）
次に、図６〜図８の処理を行ったときに、画像データバッファ部３０３へのブロック画像データの格納がどのように行われるかについて、例を用いて説明する。
【００６６】
例えば、バッファリング対象領域５０９〜５１５中に、図９で示されるバッファリング優先度が設定されたブロック画像データ群があったとする。図９は、表１のアノテーションデータに対して、作成者が「迫田」であるアノテーションを検索し、該当するアノテーションと関連するバッファリング対象領域５１３および５１４に属するブロック画像データの優先度に「１」を設定した状態を示す。また、バッファリング対象領域５０９に属するブロック画像データ、すなわち画像ビューアに表示されている部分の周辺領域に該当するブロック画像データには、他よりも高い優先度「９」を設定する。本実施形態では、以下の仮定に基づいて、この優先度を設定している。それは、画面表示領域５０１の移動について、上下左右へのスクロール移動の可能性の方が、その他の離れた領域、例えばバッファリング対象領域５１３などの近傍にジャンプする可能性よりも高いという仮定である。よって、バッファリングが行われる優先度は、バッファリング対象領域５１３および５１４に属するブロック画像データよりも、バッファリング対象領域５０９に属するブロック画像データの方が高い。なお、バッファリング対象領域５０９に属するブロック画像データの優先度は、バッファリング対象領域５１３および５１４に属するブロック画像データの優先度よりも高ければ、「９」以外の数を設定しても良い。
【００６７】
このような優先度設定の場合に、ブロック画像データ群がバッファに格納される様子の例を、図１０に示す。１００１はバッファ領域の模式図である。図１０で示す状況では、バッファ領域１００１の大きさが、バッファリングするブロック画像データの総和よりも大きいため、全てのブロック画像データをバッファに格納しても空き領域１００５が生じる。また、バッファへの格納順序は、バッファリング優先度の高いブロック画像データ群１００２が先となり、その後でブロック画像データ群１００３および１００４が格納される。
【００６８】
なお、バッファに格納されるブロック画像データは、圧縮データでも非圧縮データでも、どちらでも良い。表示処理の高速化に重点を置く場合には、プログラムの待ち時間のあいだ等で圧縮データを展開し、非圧縮データの形にしてバッファに格納しておくのが好ましい。一方、バッファメモリ容量の削減に重点を置く場合には、圧縮されたままのデータを格納しておくのが好ましい。
【００６９】
本実施形態では、作成者というある一つの属性情報のみを用いてバッファリング優先度を設定したが、複数の属性情報を組み合わせて解析を行っても良い。例えば、複数の作成者を指定してもよいし、作成者情報、日付情報、アノテーション種別情報などを指定してもよい。複数の属性情報を組み合わせる場合には、それらをＡＮＤ条件で組み合わせてもよいし、ＯＲ条件で組み合わせてもよい。
【００７０】
この本実施形態によって、従来技術と比較し、病理診断の特徴に応じたメモリ使用効率の良い画像データのバッファリングが可能となり、結果的に画像ビューアにおける表示応答性の向上に繋がる。具体的には、病理画像に付随するアノテーションデータを解析し、ユーザーにとって重要度が高いと推測されるアノテーション周辺の画像データのバッファ
リング優先度を高くすることで、従来よりもメモリ使用効率の良いバッファリング処理が可能となる。
【００７１】
＜第２実施形態＞
本発明の第２実施形態を、図に従って説明する。
システム構成、ハードウェア構成、機能ブロック、および処理のアルゴリズムは第１実施形態のものと同様であるが、アノテーション解析の条件と、画像データのバッファリング方法が異なる。
【００７２】
本実施形態では、表１のアノテーションデータを解析し、最終更新日が新しいアノテーションの周辺の画像データほど、より高いバッファリング優先度を設定する。このような方法によってバッファリング優先度が設定された状態の模式図を、図１１に示す。図１１では、バッファリング対象領域５１１および５１２に属するブロック画像データに優先度「４」が設定され、バッファリング対象領域５１０に属するブロック画像データに優先度「３」が設定されている。バッファリング対象領域５１５に属するブロック画像データに優先度「２」が設定され、バッファリング対象領域５１３および５１４に属するブロック画像データに優先度「１」が設定されている。なお、第１実施形態と同様に、本実施形態においても、画面表示領域５０１の移動について、上下左右へのスクロール移動の可能性の方が、その他の離れた領域へのジャンプ移動の可能性よりも高いという仮定を採用する。よって、バッファリング対象領域５０９に属するブロック画像データには優先度「９」を設定する。なお、バッファリング対象領域５０９に属するブロック画像データの優先度は、他のバッファリング対象領域５１０〜５１５に属するブロック画像データの優先度よりも高ければ、「９」以外の数を設定しても良い。
【００７３】
上記の優先度を設定した場合に、ブロック画像データ群がバッファに格納される様子の例を、図１２に示す。図１２で示す状況では、バッファ領域１００１の大きさが、バッファリングするブロック画像データの総和よりも小さいため、全てのブロック画像データをバッファに格納することができない。よってこの場合は、ブロック画像データ群１２０１、１２０２、１２０３、１２０４、１２０５の順にバッファリングが行われる。ブロック画像データ群１２０５と１２０６は、どちらもバッファリング対象領域５１５に属するデータであるが、バッファ領域１００１の大きさが限られているため、実際にバッファリングされるのはブロック画像データ群１２０５のみとなる。
【００７４】
本実施形態のバッファリング制御によって、従来技術や第１実施形態の方法と比較してさらにメモリ使用効率の良いバッファリング処理が可能となる。具体的には、バッファ領域の大きさに応じて、より優先度の高いアノテーション周辺の画像データをバッファリングすることができる。特に、病理画像に関連付けられたアノテーションの数が非常に多い場合には、より効果が高くなる。
【００７５】
＜第３実施形態＞
本発明の第３実施形態を、図に従って説明する。
システム構成、ハードウェア構成、機能ブロック、および処理のアルゴリズムは第１実施形態および第２実施形態と同様であるが、アノテーション解析方法と、画像データのバッファリング方法が異なる。
【００７６】
第１実施形態や第２実施形態では、アノテーションの作成者や最終更新日などの属性情報を用いて、アノテーションの解析を行っていたが、本実施形態では、コメント情報を用いてアノテーションの解析を行う。
【００７７】
表３に、本実施形態で用いるアノテーションデータを示す。表３のアノテーションデー
タは、表１のアノテーションデータと同一のものであるが、表３ではコメント内容をより詳細に示している。
【表３】
2015090429.tif 000005
【００７８】
本実施形態では、表３のコメントを解析し、コメント中に「肝細胞」もしくは「脂肪沈着」という単語を含んだアノテーション周辺の画像データほど、より高いバッファリング優先度を設定する。さらに、この両方の単語を同時に含むアノテーションには、片方の単語しか含まないアノテーションよりも高い優先度を設定する。このような方法によってバッファリング優先度が設定された状態の模式図を、図１３に示す。図１３では、バッファリング対象領域５１０および５１５に属するブロック画像データに優先度「２」が設定され、バッファリング対象領域５１３に属するブロック画像データに優先度「１」が設定されている。なお、第１実施形態および第２実施形態と同様に、本実施形態においても、バッファリング対象領域５０９に属するブロック画像データには優先度「９」を設定する。
【００７９】
上記の優先度を設定した場合に、ブロック画像データ群がバッファに格納される様子の例を、図１４に示す。実施形態２と同様に、図１４で示す状況では、バッファ領域１００１の大きさが、バッファリングするブロック画像データの総和よりも小さいため、全てのブロック画像データをバッファに格納することができない。よってこの場合は、ブロック画像データ群１４０１、１４０２，１４０３、１４０４順にバッファリングが行われる。ブロック画像データ群１４０４と１４０５は、どちらもバッファリング対象領域５１３に属するデータであるが、バッファ領域１００１の大きさが限られているため、実際にバッファリングされるのはブロック画像データ群１４０４のみとなる。
【００８０】
本実施形態では、アノテーション中のコメント情報のみを用いてバッファリング優先度を設定したが、コメント情報と属性情報を組み合わせて解析を行っても良い。また、属性情報は複数組み合わせても良い。
【００８１】
本実施形態のバッファリング制御によって、従来技術や第１実施形態および第２実施形態の方法と比較して、さらにメモリ使用効率の良いバッファリング処理が可能となる。具体的には、アノテーション中のコメントに記載された所見情報を用いてバッファリングを行うことで、より参照可能性の高いアノテーション周辺の画像データをバッファリングすることができる。特に、病理画像に関連付けられたアノテーションの数が非常に多い場合には、より効果が高くなる。
【００８２】
＜他のシステム構成＞
上記第１から第３実施形態では、図１に例示したように撮像装置と画像形成装置と画像表示装置で画像処理システムを構成したが、システム構成はこれに限らない。例えば図１５に示すように、複数の装置をネットワークで接続したシステム構成でもよい。１５０１は撮像装置であり、主にバーチャルスライドシステムにおける撮像部分に当たる。１５０２はサーバであり、１５０１によって撮像・生成された画像データなどを格納している大容量のストレージ（画像サーバ）である。１５０３は本実施形態で示す手法を実現するた
めの主要部分である画像形成装置であり、１５０２に格納されている画像データを読み込み、処理を行う。１５０４は画像表示装置であり、１５０３で処理された画像データを受け取り、画面に表示する。１５０５，１５０８はネットワークに接続された一般的なＰＣ（パーソナル・コンピュータ）であり、１５０６，１５０７はＰＣに接続された画像表示装置である。１５０９はネットワーク回線であり、様々なデータのやり取りを行う。このようなシステム構成においても、第１から第３実施形態で述べたバッファリング制御を実行することで、各画像表示装置における表示応答性を向上することができる。
【符号の説明】
【００８３】
５０３〜５０８：アノテーション
５０９〜５１５：バッファリング対象領域
【図１】
2015090429.tif 000006
【図２】
2015090429.tif 000007
【図３】
2015090429.tif 000008
【図４】
2015090429.tif 000009
【図５】
2015090429.tif 000010
【図６】
2015090429.tif 000011
【図７】
2015090429.tif 000012
【図８】
2015090429.tif 000013
【図９】
2015090429.tif 000014
【図１０】
2015090429.tif 000015
【図１１】
2015090429.tif 000016
【図１２】
2015090429.tif 000017
【図１３】
2015090429.tif 000018
【図１４】
2015090429.tif 000019
【図１５】
2015090429.tif 000020