JP2013167797A - 画像形成装置およびその制御方法 - Google Patents
画像形成装置およびその制御方法 Download PDFInfo
- Publication number
- JP2013167797A JP2013167797A JP2012031670A JP2012031670A JP2013167797A JP 2013167797 A JP2013167797 A JP 2013167797A JP 2012031670 A JP2012031670 A JP 2012031670A JP 2012031670 A JP2012031670 A JP 2012031670A JP 2013167797 A JP2013167797 A JP 2013167797A
- Authority
- JP
- Japan
- Prior art keywords
- image data
- display
- priority
- block
- unit
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
【課題】表示応答性の向上とバッファメモリの使用効率の向上を図るための技術を提供する。
【解決手段】画像形成装置が、元の画像データを格納する画像データ格納部と、画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、を有する。表示回数カウント部が、元の画像データの全体を複数のブロックに分けて、ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントする。優先度設定部が、表示回数に基づいてブロックごとに優先度を設定する。バッファリング制御部が、優先度が高いブロックの画像データが優先的に画像データバッファ部に格納されるように、画像データバッファ部によるバッファリングを制御する。
【選択図】図5
【解決手段】画像形成装置が、元の画像データを格納する画像データ格納部と、画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、を有する。表示回数カウント部が、元の画像データの全体を複数のブロックに分けて、ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントする。優先度設定部が、表示回数に基づいてブロックごとに優先度を設定する。バッファリング制御部が、優先度が高いブロックの画像データが優先的に画像データバッファ部に格納されるように、画像データバッファ部によるバッファリングを制御する。
【選択図】図5
Description
本発明は、画像ビューアにおける表示領域の変更を高速化する技術に関するものである。
病理分野において、病理診断のツールである光学顕微鏡の代替として、プレパラートに載置された被検試料を撮像し、デジタル化してディスプレイ上での病理診断を可能とするバーチャルスライドシステムがある。バーチャルスライドシステムによる病理診断のデジタル化により、従来の被検試料の光学顕微鏡像をデジタルデータとして取り扱える。それによって、デジタル画像を使った患者への説明、希少症例の共有化、遠隔診断の迅速化、教育・実習の効率化などの点で、利便性の向上が期待できる。
バーチャルスライドシステムによってデジタル化された画像データを可視化する画像ビューアは、システムとその使用者である病理医を直接繋ぐインターフェースとなるため、その使用感はシステムそのものの操作性に大きな影響を及ぼす。
バーチャルスライドシステムによってデジタル化された画像データを可視化する画像ビューアは、システムとその使用者である病理医を直接繋ぐインターフェースとなるため、その使用感はシステムそのものの操作性に大きな影響を及ぼす。
しかし、従来の画像ビューアでは、その操作性が顕微鏡に劣る場合があった。例えば、病理画像データのサイズは、一般的に巨大であり、画面に表示される領域の大きさの数倍から時には数百倍にもなる。そのような巨大な画像データを画像ビューアで表示し、スクロールなどの指示を入力して表示データを更新した場合、入力に対する画面表示の応答が遅れる場合があった。このような応答の遅れは、画像ビューアの使用者のストレスの元となる場合が多く、時にはそれがバーチャルスライドシステムの普及を妨げる一因になる場合もあった。よって、画像ビューアの表示応答性を向上させることは、病理医がバーチャルスライドシステムを使用するための障壁の一つを取り払うことに繋がるため、非常に重要である。
ところで、画像ビューアの表示応答性の向上という課題は、バーチャルスライドシステムに限ったものではなく、広く一般的に認識されている課題である。そして、この課題を解決するために、通常は画面表示領域以上の画像データを、あらかじめアクセス速度が比較的高速なバッファメモリ上に格納しておき、スクロール等による画面更新が生じた際には、そのバッファメモリから次の表示データを読み込むという処理が行われている。以下、画面表示の応答性向上のため、アクセス速度の速いバッファ領域にあらかじめ画像データまたはその一部を読み込んでおく処理のことを、「バッファリング」と称する。なお、このような処理を「キャッシング」と呼び、キャッシングのために使われるメモリのことを「キャッシュメモリ」または「キャッシュ」と呼ぶこともある。本明細書では、バッファとキャッシュを同じ意味で使うものとする。
バッファリングは従来から広く知られた処理方法であるが、一般的なバッファリングでは画面表示領域よりも大きな領域を、上下左右各方向に対して均等な大きさだけ読み込むことが多い。つまりこの場合、バッファメモリに読み込まれた画像データ領域の中で、実際に画面に表示する領域はちょうど中央に位置する形になる。このような方法は、画面がどの方向にスクロールするか予測できない場合には有効である。しかし、仮に画面がある1つの方向にのみスクロールした場合、結果的に画面表示のために使われなかったデータが多く発生するため、バッファメモリの使用効率という観点では改善の余地がある。また、一度のスクロール量が大きい場合には、次に画面に表示する領域がバッファリングしている領域外まで移動してしまい、その結果バッファメモリよりも低速な記憶装置から画像データを読み込まなければならなくなり、画像ビューアの応答性低下の原因となる。このような現象を回避するには、より多くのバッファ容量を確保すれば良いが、バッファメモ
リの使用効率が上がるわけではなく、バッファリングされたデータの大半が結果的に無駄になることに変わりはない。つまり一般的には、画像ビューアの表示応答性向上とバッファメモリ使用量とは、相反する関係にある。
リの使用効率が上がるわけではなく、バッファリングされたデータの大半が結果的に無駄になることに変わりはない。つまり一般的には、画像ビューアの表示応答性向上とバッファメモリ使用量とは、相反する関係にある。
これらの問題が生じるそもそもの原因は、次のスクロール方向を予測できないことにある。言い換えれば、仮に次のスクロール方向を高い確率で予測できれば、バッファリングされたデータの使用効率をより向上させることができるようになる。
そのような例として、例えば特許文献1では、画像データにテキストデータが含まれる場合、テキストが特定の方向に読まれるという特徴を利用して、画像の内容を解析した上でバッファリングを行うデータを選択する処理を行っている。これにより、特許文献1で示される手法は、スクロール表示の高速化と効率の良いメモリ使用を両立させている。
そのような例として、例えば特許文献1では、画像データにテキストデータが含まれる場合、テキストが特定の方向に読まれるという特徴を利用して、画像の内容を解析した上でバッファリングを行うデータを選択する処理を行っている。これにより、特許文献1で示される手法は、スクロール表示の高速化と効率の良いメモリ使用を両立させている。
テキストは読まれる方向が決まっているため、この特徴を利用したバッファリングは有効である。しかしながら、テキストのような意味付けされたデータを含んでいない画像(例えば病理画像)においてはその方向性が画像の特徴からは一意に定まらないため、高速化と効率の良いメモリ使用とを両立させるバッファリングの制御方法がないという課題があった。
本発明は上記課題に鑑みてなされたものであり、表示応答性の向上とバッファメモリの使用効率の向上を図るための技術を提供することを目的とする。
本発明の第一態様は、元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、元の画像データから表示用の画像データを生成する画像形成装置であって、元の画像データを格納する画像データ格納部と、前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、前記元の画像データの全体を複数のブロックに分けて、前記ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントする表示回数カウント部と、カウントされた表示回数に基づいて前記ブロックごとに優先度を設定する優先度設定部と、優先度が高いブロックの画像データが優先的に前記画像データバッファ部に格納されるように制御するバッファリング制御部と、を備えることを特徴とする画像形成装置である。
本発明の第二態様は、元の画像データを格納する画像データ格納部と、前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像
データ出力部と、を備える画像形成装置の制御方法であって、前記元の画像データの全体を複数のブロックに分けて、前記ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントするステップと、カウントされた表示回数に基づいて前記ブロックごとに優先度を設定するステップと、優先度が高いブロックの画像データが優先的に前記画像データバッファ部に格納されるように制御するステップと、を含むことを特徴とする画像形成装置の制御方法である。
データ出力部と、を備える画像形成装置の制御方法であって、前記元の画像データの全体を複数のブロックに分けて、前記ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントするステップと、カウントされた表示回数に基づいて前記ブロックごとに優先度を設定するステップと、優先度が高いブロックの画像データが優先的に前記画像データバッファ部に格納されるように制御するステップと、を含むことを特徴とする画像形成装置の制御方法である。
本発明の第三態様は、元の画像データを格納する画像データ格納部と、前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、を備える画像形成装置に対し、前記元の画像データの全体を複数のブロックに分けて、前記ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントするステップと、カウントされた表示回数に基づいて前記ブロックごとに優先度を設定するステップと、優先度が高いブロックの画像データが優先的に前記画像データバッファ部に格納されるように制御するステップと、を実行させることを特徴とするプログラムである。
本発明によれば、表示応答性の向上とバッファメモリの使用効率の向上を図ることができる。
本発明は、元の画像データの一部に対応する画像を表示し、その表示部分をユーザーの操作に従って変更(スクロール等)する機能を有する画像ビューアにおいて、表示領域移動時の表示応答性を向上させるための技術に関する。具体的には、本発明は、元の画像データから表示用の画像データ(表示画像データ)を生成する装置において、バッファリングするデータを適切に制御することで、バッファメモリの使用効率を向上し、結果として表示応答性を総合的に向上するものである。
より詳しくは、本発明では、元の画像データをブロック画像データ群として取り扱い、ブロック画像データごとに、表示画像データを形成するために参照または利用された回数(「表示回数」とよぶ)をカウントする。そして、表示回数に基づきブロック画像データ
ごとに優先度を設定し、優先度が高いブロック画像データを優先的にバッファする。このとき、表示回数が多いほど優先度を高くする方法と、表示回数が少ないほど優先度を高くする方法とがあるが、本発明ではいずれの方法を採用してもよいし、2つの方法を自動で又はユーザーが切り替えられるようにしてもよい。前者の方法は、画像中の特定の領域が重点的・集中的に観察されるケースに適しており、後者の方法は、画像全体が順番に網羅的に観察されるケースに適している。それゆえ、本発明は、特定の領域が重点的・集中的に観察される傾向にある画像データや、画像全体が順番に網羅的に観察される傾向にある画像データを取り扱うシステムに好ましく適用することができる。以下の実施形態で述べるバーチャルスライドシステムのように、画面に表示した画像によって目視検査を行わせるシステムは、好ましい適用対象の典型例である。ただし、本発明の適用範囲はこれに限られず、高解像度の画像データや大サイズの画像データの表示を行うシステムに対し本発明を適用することができる。
ごとに優先度を設定し、優先度が高いブロック画像データを優先的にバッファする。このとき、表示回数が多いほど優先度を高くする方法と、表示回数が少ないほど優先度を高くする方法とがあるが、本発明ではいずれの方法を採用してもよいし、2つの方法を自動で又はユーザーが切り替えられるようにしてもよい。前者の方法は、画像中の特定の領域が重点的・集中的に観察されるケースに適しており、後者の方法は、画像全体が順番に網羅的に観察されるケースに適している。それゆえ、本発明は、特定の領域が重点的・集中的に観察される傾向にある画像データや、画像全体が順番に網羅的に観察される傾向にある画像データを取り扱うシステムに好ましく適用することができる。以下の実施形態で述べるバーチャルスライドシステムのように、画面に表示した画像によって目視検査を行わせるシステムは、好ましい適用対象の典型例である。ただし、本発明の適用範囲はこれに限られず、高解像度の画像データや大サイズの画像データの表示を行うシステムに対し本発明を適用することができる。
<第1実施形態>
本発明の第1実施形態に係る画像処理システムを、図に従って説明する。本実施形態で示す手法は、図1のようなシステム構成の元で実現される。101は撮像装置であり、主にバーチャルスライドシステムにおける撮像部分に当たる。102は本実施形態で示す手法を実現するための主要部分であり、撮像装置101で生成された画像データを受け取り、表示画像データの生成処理を行う画像形成装置である。103は画像表示装置であり、画像形成装置102から受け取った表示画像データに基づく画像を画面に表示する。また、画像形成装置102は画像表示装置103から画面表示領域などの情報も受け取り、処理を行う。
本発明の第1実施形態に係る画像処理システムを、図に従って説明する。本実施形態で示す手法は、図1のようなシステム構成の元で実現される。101は撮像装置であり、主にバーチャルスライドシステムにおける撮像部分に当たる。102は本実施形態で示す手法を実現するための主要部分であり、撮像装置101で生成された画像データを受け取り、表示画像データの生成処理を行う画像形成装置である。103は画像表示装置であり、画像形成装置102から受け取った表示画像データに基づく画像を画面に表示する。また、画像形成装置102は画像表示装置103から画面表示領域などの情報も受け取り、処理を行う。
本実施形態において、画像形成装置102は、例えば図2に示されるハードウェア構成から成るコンピュータと、後述する各種機能を提供するプログラムとで、実現可能である。201は入力部であり、キーボードやマウス等が該当する。202は記憶部であり、本実施形態で示す手法を実現するためのプログラムや、処理対象データなどを格納する部分であり、RAM等が該当する。203は演算部であり、記憶部202に格納されたデータに対し、記憶部202に格納されたプログラムに従って各種演算処理を行う部分であり、CPU等が該当する。204はI/F部であり、撮像装置101および画像表示装置103とのデータ入出力を制御するインターフェース部分である。205は補助記憶装置(または外部記憶装置)であり、ハードディスクやフラッシュメモリ等が該当する。206は上記201〜205を接続するデータバスである。
本実施形態における画像形成装置102の機能ブロック図を、図3に示す。301は画像データ入力部であり、撮像装置101から画像データを入力する部分である。302は画像データ格納部であり、画像データ入力部301から入力した画像データを格納する記憶装置である。303は画像データバッファ部であり、バッファリング制御命令を受けて画像データ格納部302から画像データの一部のデータを受け取り、一時的に格納可能である。また画像データバッファ部303は、表示画像データの形成に必要な画像データを画像データ出力部304へ送信する。画像データ格納部302は、画像データ全体を格納する必要があるため、容量の大きい記憶装置(例えば図2の補助記憶装置205)を用いて構成される。一方、画像データバッファ部303は、画像データ用のバッファメモリとして機能する記憶装置であり、画像データ格納部302に比べて高速にデータを書き込み/読み出し可能なデバイスで構成される。本実施形態では記憶部202の中に画像データバッファ部303を設定するが、記憶部202とは別に専用のバッファメモリを設けてもよい。なお、画像データバッファ部303の容量は、画像データ格納部302に比べて小さく、画像データの全体を格納することはできない。以下の説明においては、画像データバッファ部303を、「バッファメモリ」または単に「バッファ」と呼ぶこともある。
304は画像データ出力部であり、画像データ格納部302または画像データバッファ部303から受け取った画像データから、画像表示装置103へ出力するための表示画像データを形成する。305は画面更新情報入力部であり、例えばマウス等の入力デバイスからユーザー入力を受け付け、それに基づいて画面更新命令をバッファリング制御部306へ送信する。バッファリング制御部306は、画像データバッファ部303に格納するデータを制御する機能である。バッファリング制御部306は、画像データ格納部302へデータ転送命令を送信し、また、表示領域情報入力部309から表示領域情報を受信し、それに基づいて画像データバッファ部303へバッファリング制御命令を送信する。さらに、バッファリング制御部306は、各ブロック画像データの表示回数をカウントする命令を表示回数カウント部307へ送信し、バッファリング優先度設定部308からはバッファリング優先度を受信する。
表示回数カウント部307はバッファリング制御部306から受信したカウント命令により各ブロック画像データの表示回数をカウントし、その結果をバッファリング優先度設定部308へ送信する。また、表示回数カウント部307は優先度算出命令もバッファリング優先度設定部308へ送信する。バッファリング優先度設定部308は、これらの情報をもとにバッファリング優先度を算出し、その結果をバッファリング制御部306へ送信する。表示領域情報入力部309は、画像表示装置103から現在の画像の表示領域情報を取得し、その結果をバッファリング制御部306へ送信する。なお、画像データの入力については、画像データ入力部301がバッファリング制御部306からのデータ転送命令を受信し、画像データ格納部302を経由せずに撮像装置101からの画像データを直接画像データバッファ部303へ転送する構成でも良い。
本実施形態では、画像を図4に示す単位で取り扱う。401は、取り扱う画像データ全体を示す。画像データ全体401は複数のブロック画像データ402に分割されている。本実施形態では、データ転送などの処理はこのブロック画像データ402を単位として実行する。ブロック画像データ402はそれぞれが独立した画像ファイルであっても良いし、もしくは画像データ全体401が独立した画像ファイルであって、それを内部的に取り扱う単位としてブロック画像データ402を定義しても良い。403は画像表示装置によって実際に画面表示が行われる領域である。以下、403を「画面表示領域」と記述する。404は、画面表示を行うために画像表示装置103へ転送を行う画像領域であり、以下404を「表示データ領域」と記述する。本実施形態では表示データ領域404を、画面表示領域403を完全に含み、かつ最も少ないブロック画像データ402で構成される領域として定義する。ただし、場合によっては表示データ領域404をこの定義よりも大きい領域と定義しても良い。また、画面表示領域403と表示データ領域404は一致していても良い。405は、バッファリングの対象となる領域であり、ユーザーもしくはプログラムがあらかじめ指定できる。以下、405を「バッファリング対象領域」と記述する。なお、本実施形態では、表示データ領域404はバッファリング対象領域405から除かれるが、必要に応じて表示データ領域404がバッファリング対象領域405に含まれる構成を用いても良い。
(画像形成処理)
図5は、本実施形態における画像形成処理の流れの概要を示すフローチャートである。以下、図5に従って処理の流れを説明する。
図5は、本実施形態における画像形成処理の流れの概要を示すフローチャートである。以下、図5に従って処理の流れを説明する。
まず、バッファリング制御部306が、初期設定を行う(ステップS501)。S501の中では、さらに図6で示される処理を行う。初期設定の詳細な処理の流れについては後述する。
S501の次は、バッファリング制御部306が、画面更新の要求が何らかの形で画像形成装置102に入力されたかどうかを判定する(条件判定S502)。画面更新の要求
とは、例えばマウス等の入力デバイスから与えられる画面のスクロール指示などである。画面更新要求が入力されていない場合は、入力がされるまで待ち状態となる。
S501の次は、バッファリング制御部306が、画面更新の要求が何らかの形で画像形成装置102に入力されたかどうかを判定する(条件判定S502)。画面更新の要求
とは、例えばマウス等の入力デバイスから与えられる画面のスクロール指示などである。画面更新要求が入力されていない場合は、入力がされるまで待ち状態となる。
S502で画面更新要求が入力されたと判定されたら、その入力をもとに、バッファリング制御部306が、画面表示領域情報の更新を行う(ステップS503)。ここで、「画面表示領域情報」とは、画像データ全体401に対する画面表示領域403の位置と表示面積の情報のことである。
次に、バッファリング制御部306が、更新された画面表示領域情報から、表示データ領域情報の更新を行う(ステップS504)。ここで、「表示データ領域情報」とは、画像データ全体401に対する表示データ領域404の位置と面積の情報のことである。
次に、バッファリング制御部306が、更新された画面表示領域情報から、表示データ領域情報の更新を行う(ステップS504)。ここで、「表示データ領域情報」とは、画像データ全体401に対する表示データ領域404の位置と面積の情報のことである。
次に、バッファリング制御部306が、バッファリング対象領域情報の更新を行う(ステップS505)。ここで、「バッファリング対象領域情報」とは、画像データ全体401に対するバッファリング対象領域405の位置と形状とバッファリング領域範囲の情報のことである。なお、表示データ領域404とバッファリング対象領域405の相対位置関係、およびバッファリング対象領域405の形状については、このS505で必要に応じて変化させることができる。ただし、本実施形態では簡単のため、表示データ領域404とバッファリング対象領域405の関係、およびバッファリング対象領域405の形状は変化しないものとする。
次に、バッファリング制御部306が、画面表示に必要なブロック画像データが画像データバッファ部303内に存在するかどうかを判定する(条件判定S506)。条件判定S506の判定結果が真であれば、ステップS507に進み、画像データ出力部304は画像データバッファ部303内のブロック画像データを読み出し、表示画像データを生成して画像表示装置103へ転送する。一方、条件判定S506の判定結果が偽であればステップS508に進み、画像データ出力部304は、画像データ格納部302からブロック画像データを読み出し、表示画像データを生成して画像表示装置103へ転送する。なお、ブロック画像データをそのまま表示画像データとして転送してもよいし、ブロック画像データに対して必要な画像処理(例えば解像度変換、階調補正、色補正、強調処理、合成処理、形式変換など)を施して表示画像データを生成してもよい。
ステップS509では、バッファリング制御部306のカウント命令に基づき、表示回数カウント部307が、転送されたブロック画像データの表示回数をインクリメント(値を1増やす)し、既に作成してある表示回数テーブルの内容をその値で更新する。なお、表示回数テーブルは、初期設定S501の中のS607にて作成されるテーブルであり、これは例えば、画像データ全体401中の全てのブロック画像データに一意に割り当てられたID番号と、その累積表示回数からなるテーブルである。S607については後述する。また、本実施形態では、「表示回数」を「画像表示装置103へデータを転送した回数」と定義することにするが、例えば「圧縮データの展開」など画像表示に必要となる他の処理の回数をもって、それを表示回数と定義しても良い。
次に、S509にて設定された表示回数をもとに、バッファリング優先度設定部308が、バッファリング対象領域405中に存在する各ブロック画像データのバッファリング優先度を決定する。そして、バッファリング優先度設定部308は、既に作成してあるバッファリング優先度テーブルの内容を、求めた優先度の値で更新する(ステップS510)。なお、バッファリング優先度テーブルは、初期設定S501の中のS606にて作成されるテーブルであり、これは例えば、バッファリング対象領域405中の各ブロック画像データのID番号と、そのバッファリング優先度からなるテーブルである。S606については後述する。また、このバッファリング優先度は、表示回数の情報を元に決定すれば、どのような規則を用いても良い。例えば、表示回数をそのままバッファリング優先度
として用いても良いし、または表示回数に−1を掛けた値をバッファリング優先度として用いても良い。前者の場合は、過去の表示回数が多いブロック画像データほどバッファリングの優先度が高くなり、過去に表示した画像を再び参照することが多い観察の場合に有効である。これは、例えば20倍や40倍表示などの高倍率表示における詳細診断が該当する。また、後者の場合は、表示回数が少ないブロック画像データほどバッファリングの優先度が高くなり、過去に表示していない画像を参照する観察の場合に有効である。これは、例えば2倍や4倍、もしくは10倍表示などの低倍率表示において、未表示画像を順番に表示していくスクリーニングなどが該当する。このようにバッファリング優先度の算出方法には複数の方法が考えられ、その方法ごとに好ましい適用範囲が異なる。したがって、優先度の算出方法が異なる複数のモードを用意し、ユーザーにモード切替(モード選択)を行わせるようにしてもよい。あるいは、表示倍率、診断モード、表示モード、画像の種類やサイズなどの条件と、好ましい優先度の算出方法とを予め対応付けておき、バッファリング制御部306またはバッファリング優先度設定部308が条件に応じて自動的に算出方法を切り替えてもよい。
として用いても良いし、または表示回数に−1を掛けた値をバッファリング優先度として用いても良い。前者の場合は、過去の表示回数が多いブロック画像データほどバッファリングの優先度が高くなり、過去に表示した画像を再び参照することが多い観察の場合に有効である。これは、例えば20倍や40倍表示などの高倍率表示における詳細診断が該当する。また、後者の場合は、表示回数が少ないブロック画像データほどバッファリングの優先度が高くなり、過去に表示していない画像を参照する観察の場合に有効である。これは、例えば2倍や4倍、もしくは10倍表示などの低倍率表示において、未表示画像を順番に表示していくスクリーニングなどが該当する。このようにバッファリング優先度の算出方法には複数の方法が考えられ、その方法ごとに好ましい適用範囲が異なる。したがって、優先度の算出方法が異なる複数のモードを用意し、ユーザーにモード切替(モード選択)を行わせるようにしてもよい。あるいは、表示倍率、診断モード、表示モード、画像の種類やサイズなどの条件と、好ましい優先度の算出方法とを予め対応付けておき、バッファリング制御部306またはバッファリング優先度設定部308が条件に応じて自動的に算出方法を切り替えてもよい。
次に、S510で更新したバッファリング優先度テーブルの内容に基づき、バッファリング制御部306が、画像データバッファ部303に格納しているデータ(これを「バッファ内容」とよぶ)を更新する(ステップS511)。なお、図5では画面更新要求が入力されれば必ずバッファ内容を更新するアルゴリズムとなっているが、スクロール量が小さいなど、必ずしもバッファ内容の更新をする必要がない場合は、処理の効率を重視して適切な範囲でS511の処理を省いても良い。また、S511の具体的な処理としてはいくつかの方法が考えられるが、図7にその一例を示す。図7の詳細な内容については後述する。
S511の後は、バッファリング制御部306は、プログラムを終了させる命令が入力されたかどうかをチェックする(条件判定S512)。条件判定S512の結果が真であればプログラムを終了させ、偽であれば条件判定S502に戻り、処理を続行する。
以上で、本実施形態における画像形成処理の流れの概要説明を終了する。
以上で、本実施形態における画像形成処理の流れの概要説明を終了する。
(初期設定S501)
以下では、初期設定S501の詳細な処理の流れを、図6に従って説明する。
以下では、初期設定S501の詳細な処理の流れを、図6に従って説明する。
まず、バッファリング制御部306は、画面表示領域情報を、画像表示装置103から取得する(ステップS601)。この情報は、表示画面解像度の情報のことである。
次に、バッファリング制御部306は、画像データ全体401の中から、画面表示領域の位置を設定する(ステップS602)。S601で得られた表示画面解像度の情報と、このS602で設定する位置の情報により、画像データ全体401の中で画面表示領域が占める位置と面積が確定する。
次に、バッファリング制御部306は、S602によって確定した画面表示領域から、表示データ領域を設定する(ステップS603)。このS603で、表示データ領域の位置と面積が確定する。
次に、バッファリング制御部306は、画像データ全体401の中から、画面表示領域の位置を設定する(ステップS602)。S601で得られた表示画面解像度の情報と、このS602で設定する位置の情報により、画像データ全体401の中で画面表示領域が占める位置と面積が確定する。
次に、バッファリング制御部306は、S602によって確定した画面表示領域から、表示データ領域を設定する(ステップS603)。このS603で、表示データ領域の位置と面積が確定する。
次に、バッファリング制御部306は、バッファメモリ容量を設定する(ステップS604)。バッファメモリ容量は、画像形成装置が搭載する記憶部202の容量などに応じて、ユーザーまたはプログラムが設定する。
次に、バッファリング対象領域405の位置や面積および形状を設定する(ステップS605)。バッファリング対象領域405の形状は、表示データ領域404を完全に含み、かつこれよりも大きくなければならない。これを満たせば、その詳細な形状はどのように設定しても良いが、本実施形態では図4に示すように、長方形として設定を行う。
次に、バッファリング対象領域405の位置や面積および形状を設定する(ステップS605)。バッファリング対象領域405の形状は、表示データ領域404を完全に含み、かつこれよりも大きくなければならない。これを満たせば、その詳細な形状はどのように設定しても良いが、本実施形態では図4に示すように、長方形として設定を行う。
次に、バッファリング制御部306は、バッファリング対象領域405中に存在する各ブロック画像データのバッファリング優先度を格納するための、バッファリング優先度テーブルを作成する(ステップS606)。バッファリング優先度テーブルは、S510の説明で既に述べた通り、ブロック画像データのID番号と、そのバッファリング優先度からなるテーブルである。この時点では、バッファリング対象領域405中に存在するブロック画像データの個数と同じ数の要素をテーブルに用意し、各ブロック画像データのID番号を格納しておく。また、バッファリング優先度の値はまだ計算されていないため、例えばゼロなどの適当な値を設定しておく。
次に、バッファリング制御部306は、画像データ全体401中の全ブロック画像データの表示回数を格納する表示回数テーブルを作成する(ステップS607)。表示回数テーブルは、S509の説明で既に述べた通り、ブロック画像データのID番号と、その累積表示回数からなるテーブルである。この時点では、画像データ全体401中の全ブロック画像データの個数と同じ数の要素をテーブルに用意し、各ブロック画像データのID番号を格納しておく。また、画像データの表示はまだ行っていないため、テーブル全要素の表示回数にはゼロを設定しておく。
なお、上記S604〜S607の処理に依存関係はないため、これらの実行順番には任意性がある。
なお、上記S604〜S607の処理に依存関係はないため、これらの実行順番には任意性がある。
次に、バッファリング制御部306の制御の下、画像データ出力部304が表示データ領域404に相当する領域のブロック画像データを、画像データ格納部302から読み出し、画像表示装置103へ転送する(ステップS608)。
次に、バッファリング制御部306の制御の下、表示回数カウント部307が、S608で転送したブロック画像データそれぞれに対応して、その表示回数をカウントし、S607で作成した表示回数テーブルの内容を更新する(ステップS609)。この状態では、画面表示処理を初めて実行するため、転送されたブロック画像データに対応する表示回数として、1が設定される。
次に、バッファリング制御部306の制御の下、表示回数カウント部307が、S608で転送したブロック画像データそれぞれに対応して、その表示回数をカウントし、S607で作成した表示回数テーブルの内容を更新する(ステップS609)。この状態では、画面表示処理を初めて実行するため、転送されたブロック画像データに対応する表示回数として、1が設定される。
次に、S609にて設定された表示回数をもとに、バッファリング優先度設定部308が、バッファリング対象領域405中に存在する各ブロック画像データのバッファリング優先度を決定する。その求めた優先度の値で、S606で作成したバッファリング優先度テーブルの内容が更新される(ステップS610)。なお、このS610は、S510と同じ処理である。
次に、バッファリング制御部306は、S610にて設定されたバッファリング優先度をもとに、バッファの内容を更新する(ステップS611)。なお、このS611は、S511と同じ処理である。
以上で、初期設定処理S501が終了する。
次に、バッファリング制御部306は、S610にて設定されたバッファリング優先度をもとに、バッファの内容を更新する(ステップS611)。なお、このS611は、S511と同じ処理である。
以上で、初期設定処理S501が終了する。
(バッファ内容更新S511)
以下では、S511のバッファ内容更新処理の流れの一例を、図7に従って説明する。
以下では、S511のバッファ内容更新処理の流れの一例を、図7に従って説明する。
まず、バッファリング制御部306は、バッファリング優先度テーブル(以下、単に「優先度テーブル」と呼ぶ)の全要素を優先度の高い順にソートする(ステップS701)。
次に、バッファリング制御部306は、整数型変数iを用意し、変数iにゼロを設定する(ステップS702)。
次に、バッファリング制御部306は、整数型変数iを用意し、変数iにゼロを設定する(ステップS702)。
次に、バッファリング制御部306は、優先度テーブル中のi番目の要素に該当するブロック画像データが、すでにバッファ内に存在しているかどうかをチェックする(条件判定S703)。具体的には、例えばあらかじめバッファ内に存在しているブロック画像デ
ータに対応するID番号のリストを作成しておき、前記i番目のブロック画像データに対応するID番号をバッファ内画像のリストと照合すれば良い。条件判定S703の結果が真ならば、バッファリング制御部306は、優先度テーブル中のi番目の要素にマークを付け(ステップS704)、バッファ中で見つかったブロック画像データにもマークを付ける(ステップS705)。このマークには、何らかのフラグを対応させれば良い。条件判定S703の結果が偽であれば、ステップS706に進む。
ータに対応するID番号のリストを作成しておき、前記i番目のブロック画像データに対応するID番号をバッファ内画像のリストと照合すれば良い。条件判定S703の結果が真ならば、バッファリング制御部306は、優先度テーブル中のi番目の要素にマークを付け(ステップS704)、バッファ中で見つかったブロック画像データにもマークを付ける(ステップS705)。このマークには、何らかのフラグを対応させれば良い。条件判定S703の結果が偽であれば、ステップS706に進む。
S705の次は、バッファリング制御部306は、変数iの値を1増やす(ステップS706)。
S706の次は、バッファリング制御部306は、変数iの値が優先度テーブルの要素数以上かどうかをチェックする(条件判定S707)。条件判定S707の結果が偽であれば、条件判定S703の処理に戻る。条件判定S707の結果が真であれば、バッファリング制御部306は、優先度テーブル中のマークされた要素を削除する(ステップS708)。この結果、優先度テーブルには、優先度が高いブロック画像データのうち、バッファ内に存在しないもの(つまり、追加でバッファすべきブロック画像データ)を示す要素のみが残る。
S708の次は、バッファリング制御部306は、バッファ中のマーク画像以外のブロック画像データを削除する(ステップS709)。この結果、優先度が高くないブロック画像データが削除され、バッファに空きが作られる。
S706の次は、バッファリング制御部306は、変数iの値が優先度テーブルの要素数以上かどうかをチェックする(条件判定S707)。条件判定S707の結果が偽であれば、条件判定S703の処理に戻る。条件判定S707の結果が真であれば、バッファリング制御部306は、優先度テーブル中のマークされた要素を削除する(ステップS708)。この結果、優先度テーブルには、優先度が高いブロック画像データのうち、バッファ内に存在しないもの(つまり、追加でバッファすべきブロック画像データ)を示す要素のみが残る。
S708の次は、バッファリング制御部306は、バッファ中のマーク画像以外のブロック画像データを削除する(ステップS709)。この結果、優先度が高くないブロック画像データが削除され、バッファに空きが作られる。
S709の次は、バッファリング制御部306は、変数iにゼロを代入する(ステップS710)。
S710の次は、バッファリング制御部306は、優先度テーブルのi番目要素に対応するブロック画像データを、画像データ格納部302から、画像データバッファ部303へ転送する(ステップS711)。
S711の次は、バッファリング制御部306は、変数iの値を1増やす(ステップS712)。
S710の次は、バッファリング制御部306は、優先度テーブルのi番目要素に対応するブロック画像データを、画像データ格納部302から、画像データバッファ部303へ転送する(ステップS711)。
S711の次は、バッファリング制御部306は、変数iの値を1増やす(ステップS712)。
S712の次は、バッファリング制御部306は、バッファに空きがあるかどうかを確認する(条件判定S713)。条件判定S713の結果が真であれば、変数iの値が優先度テーブルの要素数以上かどうかをチェックする(条件判定S714)。条件判定S714の結果が真であれば、バッファ内容更新の処理を継続するため、ステップS711に戻る。条件判定S714の結果が偽であれば、バッファリングの対象となるブロック画像データが残っていないことになるため、バッファ内容更新の処理を終了する。なお、条件判定S713の判定結果が偽である場合は、これ以上バッファに画像データを格納できない状態であるため、バッファ内容更新の処理を終了する。
以上で、図7の詳細説明を終了する。なお、バッファ内容更新処理S511については、図7に示した処理の他、例えば単純にバッファ中の内容を全消去してバッファリング優先度の高いブロック画像データ群を順次バッファへ読み込むなど、他の異なる処理を用いても良い。
(バッファリングの一例)
次に、図5〜図7の処理を行ったときに、画像データバッファ部303へのブロック画像データの格納がどのように行われるかについて、例を用いて説明する。
次に、図5〜図7の処理を行ったときに、画像データバッファ部303へのブロック画像データの格納がどのように行われるかについて、例を用いて説明する。
例えば、バッファリング対象領域405中に、図8(A)に示されるバッファリング優先度が設定されたブロック画像データ群があったとする。801は、優先度の値として「3」が設定されているブロック画像データ群であり、802は、優先度の値として「1」が設定されているブロック画像データ群である。よって、バッファリングが行われる優先
度は、ブロック画像データ群802よりもブロック画像データ群801の方が高い。このような優先度設定の場合に、ブロック画像データ群がバッファに格納される様子の例を、図8(B)と図8(C)に示す。図8(B)は、バッファ容量が比較的大きい場合の例であり、図8(C)は、バッファ容量が比較的小さい場合の例である。901はバッファ領域の模式図である。図8(B)のような状況では、バッファ領域901の大きさが、バッファリング対象領域405に存在しているブロック画像データ群の総和よりも大きいため、全てのブロック画像データをバッファに格納しても空き領域902が生じる。また、バッファへの格納順序は、バッファリング優先度の高いブロック画像データ群801が先となり、その後でブロック画像データ群802が格納される。これに対し図8(C)のような状況では、バッファ領域901の大きさが、バッファリング対象領域405に存在しているブロック画像データ群の総和よりも小さいため、バッファに格納できないブロック画像データ群1001が発生する。ただし、この場合でもバッファリング優先度の高いブロック画像データ群801が先にバッファに格納されるため、次に画面に表示される可能性が高いブロック画像データを選択してバッファリングすることになり、少ないバッファ容量でも効率的なバッファリングが可能になる。
度は、ブロック画像データ群802よりもブロック画像データ群801の方が高い。このような優先度設定の場合に、ブロック画像データ群がバッファに格納される様子の例を、図8(B)と図8(C)に示す。図8(B)は、バッファ容量が比較的大きい場合の例であり、図8(C)は、バッファ容量が比較的小さい場合の例である。901はバッファ領域の模式図である。図8(B)のような状況では、バッファ領域901の大きさが、バッファリング対象領域405に存在しているブロック画像データ群の総和よりも大きいため、全てのブロック画像データをバッファに格納しても空き領域902が生じる。また、バッファへの格納順序は、バッファリング優先度の高いブロック画像データ群801が先となり、その後でブロック画像データ群802が格納される。これに対し図8(C)のような状況では、バッファ領域901の大きさが、バッファリング対象領域405に存在しているブロック画像データ群の総和よりも小さいため、バッファに格納できないブロック画像データ群1001が発生する。ただし、この場合でもバッファリング優先度の高いブロック画像データ群801が先にバッファに格納されるため、次に画面に表示される可能性が高いブロック画像データを選択してバッファリングすることになり、少ないバッファ容量でも効率的なバッファリングが可能になる。
なお、バッファに格納されるブロック画像データは、圧縮データでも非圧縮データでも、どちらでも良い。表示処理の高速化に重点を置く場合には、プログラムの待ち時間等で圧縮データを展開しておき、非圧縮データの形にして格納しておくのが好ましい。一方、バッファメモリ容量の削減に重点を置く場合には、圧縮されたままのデータを格納しておくのが好ましい。
この本実施形態によって、従来技術と比較し、診断方法の特徴に応じたメモリ使用効率の良い画像データのバッファリングが可能となり、結果的に画像ビューアにおける表示応答性の向上に繋がる。具体的には、過去に表示した画像を再び参照するような詳細観察の場合は、表示回数の多い画像データのバッファリング優先度を高くすることで、従来よりもメモリ使用効率の良いバッファリング処理が可能となる。また、スクリーニングのように画像全体を順番に網羅的に表示していくような観察の場合は、表示回数の少ない画像データのバッファリング優先度を高くすることで、従来よりもメモリ使用効率の良いバッファリング処理が可能となる。
<第2実施形態>
本発明の第2実施形態を、図に従って説明する。
システム構成、ハードウェア構成、機能ブロック、および処理のアルゴリズムは第1実施形態のものと同様であるが、画像の表示回数からバッファリング優先度を算出する方法が異なる。
本発明の第2実施形態を、図に従って説明する。
システム構成、ハードウェア構成、機能ブロック、および処理のアルゴリズムは第1実施形態のものと同様であるが、画像の表示回数からバッファリング優先度を算出する方法が異なる。
本実施形態では、図9(A)に示す状況を例にとる。図9(A)は、表示データ領域404を矢印の通りに移動させてきた状況を示している。すなわち、画像データ全体401を網羅的に観察するために、画像の角(ここでは左上角)からスタートして、一方向(ここでは垂直方向)に表示領域を移動させ、一列分(または一行分)の表示を終えたら次の列(または行)に移り、同様の操作を行う。1101は、画像データ全体401のうち、すでに画像表示装置103に表示された領域である。また、1102は、画像データ全体401のうち、まだ画像表示装置103に表示されていない領域である。このような画面表示方法(表示領域の移動方法)は、病理医が2倍、4倍、10倍などの低倍画像において、病変部が疑われる部位を探す場合(「スクリーニング」と呼ばれる)に行われることが多い。
本実施形態では、既に表示を行ったブロック画像データのバッファリング優先度を最も低い優先度である「0」に設定する。これは、既に画面表示が行われたブロック画像デー
タがバッファリングの対象から除外されることを示している。それに対し、まだ画面表示を行っていない画像データに対しては、バッファリング優先度として何らかの正の整数を設定する。その様子を示したのが図9(B)である。図9(B)の1201は、まだ表示を行っていないブロック画像データを示しており、バッファリング優先度として「2」が設定されている。また、1202は既に表示を行ったブロック画像データを示しており、バッファリング優先度として「0」が設定されている。
タがバッファリングの対象から除外されることを示している。それに対し、まだ画面表示を行っていない画像データに対しては、バッファリング優先度として何らかの正の整数を設定する。その様子を示したのが図9(B)である。図9(B)の1201は、まだ表示を行っていないブロック画像データを示しており、バッファリング優先度として「2」が設定されている。また、1202は既に表示を行ったブロック画像データを示しており、バッファリング優先度として「0」が設定されている。
この優先度をもとにバッファリング処理を行った後のバッファ領域の模式図が、図9(C)である。既に述べたとおり、バッファリング優先度「0」のブロック画像データ1202はバッファリングされないため、バッファ領域901の中には優先度「2」のブロック画像データ群1201だけがバッファリングされる。よって、第1実施形態の場合とは異なり、バッファ領域901の容量がバッファリング対象領域に含まれる画像データ群の容量の総和よりも小さくても、バッファ内には空き領域1301が生じる。つまり、本実施形態に示すような処理を行えば、バッファ領域の大きさを第1実施形態よりもさらに小さくできる。
本実施形態のバッファリング制御によって、既に表示を行ったブロック画像データをバッファリング対象から除くことにより、従来技術や第1実施形態の方法と比較してさらにメモリ使用効率の良いバッファリング処理が可能となる。また、バッファ容量が少なくて済むため、キャッシュシステムのヒット率が向上したり、仮想記憶システムによるスワップインやスワップアウトの回数が減ることにより、第1実施形態と比較してさらに高速な表示動作が可能となる。本実施形態の方法は、病理診断におけるスクリーニングのように画像全体を順番にかつもれなく表示していくような場合に特に有効である。
<第3実施形態>
本発明の第3実施形態を、図に従って説明する。
システム構成、ハードウェア構成、機能ブロック、および処理のアルゴリズムは第1実施形態のものと同様であるが、画像の表示回数からバッファリング優先度を算出する方法が異なる。
本発明の第3実施形態を、図に従って説明する。
システム構成、ハードウェア構成、機能ブロック、および処理のアルゴリズムは第1実施形態のものと同様であるが、画像の表示回数からバッファリング優先度を算出する方法が異なる。
図10(A)、図10(B)、図11(A)、図11(B)に、本実施形態におけるバッファリング優先度の計算方法と、それによるバッファリング結果を示す。
第1実施形態や第2実施形態では、各ブロック画像データの表示回数だけを用いてバッファリング優先度を計算していたが、本実施形態では、表示回数に加えて、画像表示装置に表示されている領域からの画像上の距離も用いて、バッファリング優先度を計算する。
第1実施形態や第2実施形態では、各ブロック画像データの表示回数だけを用いてバッファリング優先度を計算していたが、本実施形態では、表示回数に加えて、画像表示装置に表示されている領域からの画像上の距離も用いて、バッファリング優先度を計算する。
例えば、図10(A)のような優先度付けを考える。図10(A)では、表示データ領域404に接する優先度「2」のブロック画像データ群1501があり、その外側に優先度「1」のブロック画像データ群1502がある。ブロック画像データ群1501は、ブロック画像データ群1502に比べて表示データ領域404からの距離が近いため、高い優先度が与えられる。このように、本実施形態の優先度計算方法では、ブロック画像データごとに表示データ領域404との距離を計算し、その距離が近いブロックほど高い優先度が与えられる。通常、画像をスクロールする場合には、現在の画面表示領域に近接する領域の画像を表示する可能性が高いので、このように距離に応じた優先度を考えることにより、第1実施形態よりもさらに効率的なバッファリングが行えると期待できる。
図10(B)は、表示回数と、表示データ領域からの距離との両方を考慮したバッファリング優先度の例である。なお、図10(B)に示す優先度の値は、図10(A)に示した距離に基づく優先度と図8(A)に示した表示回数に基づく優先度とを足し合わせたものである。1601が優先度「5」のブロック画像データ、1602が優先度「4」のブ
ロック画像データ、1603が優先度「3」のブロック画像データ、1604が優先度「2」のブロック画像データを示している。
ロック画像データ、1603が優先度「3」のブロック画像データ、1604が優先度「2」のブロック画像データを示している。
図10(B)の優先度の値に応じてバッファリングを行った結果の一例を図11(A)と図11(B)に示す。図11(A)は、バッファ容量が比較的大きい場合の例であり、図11(B)は、バッファ容量が比較的小さい場合の例である。図11(A)の場合には、優先度が「3」以上のブロック画像データ1601〜1603は全てバッファに格納される。また優先度「2」のブロック画像データ1604の一部のデータ1701もバッファに格納される。1702はバッファに格納されなかったブロック画像データである。また、図11(B)の場合には、優先度が「4」以上のブロック画像データ1601と1602は全てバッファに格納される。また優先度「3」のブロック画像データ1603の一部のデータ1801もバッファに格納される。それ以外のデータ1802と1803はバッファに格納されない。どちらの場合でも、バッファリング優先度の高い順番に画像データをバッファリングしているため、バッファ容量に応じたより効率的なバッファリングを実現できる。
この本実施形態によって、従来技術や第1実施形態と比較し、診断方法の特徴に応じたメモリ使用効率の良い画像データのバッファリングが可能となり、結果的に画像ビューアにおける表示応答性の向上に繋がる。特に、表示回数による優先度の他に、優先度の計算方法として表示データ領域からの距離も合わせて考慮することで、第1実施形態よりもさらにメモリ使用効率の良いバッファリング処理が可能となる。
なお本実施形態では、表示回数に基づく優先度と距離に基づく優先度を単純加算する方法を用いたが、表示回数と距離の両方に基づく優先度の計算方法はこれに限らない。例えば、2つの優先度を重み付け加算してもよいし、所定の関数やテーブルを用いて優先度を求めてもよい。すなわち、表示回数が多いほど(または少ないほど)優先度が高くなる特性と、表示データ領域からの距離が近いほど優先度が高くなる特性の、両方の特性を示す指標であればどのように優先度を計算してもよい。また、表示回数と距離だけに限らず、他のパラメータをさらに考慮して優先度を計算してもよい。さらに、第1実施形態で述べたのと同様に、優先度の算出方法を、表示倍率、診断モード、表示モード、画像の種類やサイズなどに応じて自動的に切り替えたり、ユーザー自身が好ましい算出方法に切り替えたりできるようにしてもよい。
<他のシステム構成>
上記第1から第3実施形態では、図1に例示したように撮像装置と画像形成装置と画像表示装置で画像処理システムを構成したが、システム構成はこれに限らない。例えば図12に示すように、複数の装置をネットワークで接続したシステム構成でもよい。1401は撮像装置であり、主にバーチャルスライドシステムにおける撮像部分に当たる。1402はサーバであり、1401によって撮像・生成された画像データなどを格納している大容量のストレージ(画像サーバ)である。1403は本実施形態で示す手法を実現するための主要部分である画像形成装置であり、1402に格納されている画像データを読み込み、処理を行う。1404は画像表示装置であり、1403で処理された画像データを受け取り、画面に表示する。1405,1408はネットワークに接続された一般的なPC(パーソナル・コンピュータ)であり、1406,1407はPCに接続された画像表示装置である。1409はネットワーク回線であり、様々なデータのやり取りを行う。このようなシステム構成においても、第1から第3実施形態で述べたバッファリング制御を実行することで、各画像表示装置における表示応答性を向上することができる。
上記第1から第3実施形態では、図1に例示したように撮像装置と画像形成装置と画像表示装置で画像処理システムを構成したが、システム構成はこれに限らない。例えば図12に示すように、複数の装置をネットワークで接続したシステム構成でもよい。1401は撮像装置であり、主にバーチャルスライドシステムにおける撮像部分に当たる。1402はサーバであり、1401によって撮像・生成された画像データなどを格納している大容量のストレージ(画像サーバ)である。1403は本実施形態で示す手法を実現するための主要部分である画像形成装置であり、1402に格納されている画像データを読み込み、処理を行う。1404は画像表示装置であり、1403で処理された画像データを受け取り、画面に表示する。1405,1408はネットワークに接続された一般的なPC(パーソナル・コンピュータ)であり、1406,1407はPCに接続された画像表示装置である。1409はネットワーク回線であり、様々なデータのやり取りを行う。このようなシステム構成においても、第1から第3実施形態で述べたバッファリング制御を実行することで、各画像表示装置における表示応答性を向上することができる。
102:画像形成装置、103:画像表示装置、202:記憶部、205:補助記憶装
置、301:画像データ入力部、302:画像データ格納部、303:画像データバッファ部、304:画像データ出力部、306:バッファリング制御部、307:表示回数カウント部、308:バッファリング優先度設定部
置、301:画像データ入力部、302:画像データ格納部、303:画像データバッファ部、304:画像データ出力部、306:バッファリング制御部、307:表示回数カウント部、308:バッファリング優先度設定部
Claims (9)
- 元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、元の画像データから表示用の画像データを生成する画像形成装置であって、
元の画像データを格納する画像データ格納部と、
前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、
前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、
前記元の画像データの全体を複数のブロックに分けて、前記ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントする表示回数カウント部と、
カウントされた表示回数に基づいて前記ブロックごとに優先度を設定する優先度設定部と、
優先度が高いブロックの画像データが優先的に前記画像データバッファ部に格納されるように制御するバッファリング制御部と、
を備えることを特徴とする画像形成装置。 - 前記優先度設定部は、表示回数が少ないブロックほど優先度を高くする
ことを特徴とする請求項1に記載の画像形成装置。 - 前記優先度設定部は、表示回数が多いブロックほど優先度を高くする
ことを特徴とする請求項1に記載の画像形成装置。 - 前記優先度設定部は、既に画面表示が行われたブロックに対して、最も低い優先度を設定する
ことを特徴とする請求項1または2に記載の画像形成装置。 - 前記優先度設定部は、
表示回数と、ビューアにより表示されている表示領域からの画像上の距離とに基づいて、ブロックごとに優先度を設定するものであり、
表示回数が少なく、前記表示領域からの距離が近いブロックほど優先度を高くする
ことを特徴とする請求項1に記載の画像形成装置。 - 前記優先度設定部は、
表示回数と、ビューアにより表示されている表示領域からの画像上の距離とに基づいて、ブロックごとに優先度を設定するものであり、
表示回数が多く、前記表示領域からの距離が近いブロックほど優先度を高くする
ことを特徴とする請求項1に記載の画像形成装置。 - 表示回数が少ないブロックほど優先度を高くする方法と、表示回数が多いブロックほど優先度を高くする方法とを少なくとも含む、複数の算出方法の中から、前記優先度設定部において実行する算出方法をユーザーに選択させる
ことを特徴とする請求項1に記載の画像形成装置。 - 元の画像データを格納する画像データ格納部と、
前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格
納部よりも高速にデータを読み出し可能である画像データバッファ部と、
前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、
を備える画像形成装置の制御方法であって、
前記元の画像データの全体を複数のブロックに分けて、前記ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントするステップと、
カウントされた表示回数に基づいて前記ブロックごとに優先度を設定するステップと、
優先度が高いブロックの画像データが優先的に前記画像データバッファ部に格納されるように制御するステップと、
を含むことを特徴とする画像形成装置の制御方法。 - 元の画像データを格納する画像データ格納部と、
前記元の画像データの一部のデータを一時的に格納可能であって且つ前記画像データ格納部よりも高速にデータを読み出し可能である画像データバッファ部と、
前記元の画像データの一部に対応する画像を表示し、その表示する部分をユーザーの操作に従って変更する機能を有するビューアのために、前記元の画像データから表示用の画像データを形成する画像データ出力部であって、表示用の画像データの形成に必要なデータが前記画像データバッファ部に格納されている場合には前記画像データバッファ部に格納されているデータを用いる、画像データ出力部と、
を備える画像形成装置に対し、
前記元の画像データの全体を複数のブロックに分けて、前記ブロックごとに、表示用の画像データを形成するために参照または利用された回数を表示回数としてカウントするステップと、
カウントされた表示回数に基づいて前記ブロックごとに優先度を設定するステップと、
優先度が高いブロックの画像データが優先的に前記画像データバッファ部に格納されるように制御するステップと、
を実行させることを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012031670A JP2013167797A (ja) | 2012-02-16 | 2012-02-16 | 画像形成装置およびその制御方法 |
US13/759,512 US20130215131A1 (en) | 2012-02-16 | 2013-02-05 | Image generating apparatus and control method therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012031670A JP2013167797A (ja) | 2012-02-16 | 2012-02-16 | 画像形成装置およびその制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013167797A true JP2013167797A (ja) | 2013-08-29 |
JP2013167797A5 JP2013167797A5 (ja) | 2015-04-02 |
Family
ID=48981921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012031670A Withdrawn JP2013167797A (ja) | 2012-02-16 | 2012-02-16 | 画像形成装置およびその制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20130215131A1 (ja) |
JP (1) | JP2013167797A (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014064824A1 (ja) * | 2012-10-26 | 2014-05-01 | Necディスプレイソリューションズ株式会社 | 識別子制御装置、識別子制御システム、多画面表示システム、識別子制御方法及びプログラム |
JP6210742B2 (ja) * | 2013-06-10 | 2017-10-11 | オリンパス株式会社 | データ処理装置およびデータ転送制御装置 |
JP6210743B2 (ja) * | 2013-06-10 | 2017-10-11 | オリンパス株式会社 | データ処理装置およびデータ転送制御装置 |
US20160364525A1 (en) * | 2015-06-09 | 2016-12-15 | Toshiba Medical Systems Corporation | Medical image processing apparatus and medical image transfer system |
US20200176096A1 (en) * | 2018-11-30 | 2020-06-04 | Konica Minolta Healthcare Americas, Inc. | Medical information device, medical information system, and method for medical information processing |
CN111402288A (zh) * | 2020-03-26 | 2020-07-10 | 杭州博雅鸿图视频技术有限公司 | 目标检测跟踪方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4033182B2 (ja) * | 2004-09-03 | 2008-01-16 | コニカミノルタビジネステクノロジーズ株式会社 | 資料配付システム、資料配付方法、およびコンピュータプログラム |
JP2006113801A (ja) * | 2004-10-14 | 2006-04-27 | Canon Inc | 画像処理結果表示装置、画像処理結果表示方法およびプログラム |
WO2009031283A1 (ja) * | 2007-09-03 | 2009-03-12 | Nikon Corporation | 培養装置、培養情報管理方法およびプログラム |
JP5273998B2 (ja) * | 2007-12-07 | 2013-08-28 | キヤノン株式会社 | 撮像装置、その制御方法及びプログラム |
JP4725625B2 (ja) * | 2008-09-30 | 2011-07-13 | ソニー株式会社 | 情報処理装置、情報処理方法及びプログラム |
-
2012
- 2012-02-16 JP JP2012031670A patent/JP2013167797A/ja not_active Withdrawn
-
2013
- 2013-02-05 US US13/759,512 patent/US20130215131A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20130215131A1 (en) | 2013-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5734037B2 (ja) | 情報処理装置およびその制御方法およびプログラム | |
JP2013167797A (ja) | 画像形成装置およびその制御方法 | |
US10620816B2 (en) | System for displaying elements of a scrollable list | |
US6396507B1 (en) | Data storage/access network system for zooming image and method of the storage/access | |
US7667719B2 (en) | Image-based document display | |
US20050243097A1 (en) | System and method for caching and rendering images | |
US9582612B2 (en) | Space constrained ordered list previews | |
EP2790177A1 (en) | Image processing apparatus and image processing method | |
JP4770634B2 (ja) | 表象画像再配置装置 | |
SE533185C2 (sv) | Metod för behandling av en digital bild samt bildrepresentationsformat | |
JP2011118479A (ja) | 情報処理装置、情報処理方法及びそのプログラム | |
US20140327687A1 (en) | Image generating apparatus and method for controlling the same | |
JP2015036930A (ja) | 表示装置、表示方法、及び、プログラム | |
JP4854797B2 (ja) | プログラムおよび電子機器 | |
JP2006078872A (ja) | 地図データ処理システム | |
US20150123981A1 (en) | Image data forming apparatus and control method therefor | |
US20080055286A1 (en) | Method And Apparatus For Displaying Bitmap Images | |
JPH07110754A (ja) | アイコン表示装置 | |
EP3327585A1 (en) | Dynamic micro chart | |
JP2005196298A (ja) | 情報処理装置および画像データ表示制御方法およびプログラムおよび記録媒体 | |
EP3321793A1 (en) | Method and system for real-time slide displaying of scanned image | |
JP2013046219A (ja) | 情報処理装置、ビューワ装置及び情報処理方法 | |
JP5309560B2 (ja) | 描画データ管理装置 | |
JP4345985B2 (ja) | 画像表示処理装置 | |
JP2015090429A (ja) | 画像形成装置およびその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150212 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150212 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20150914 |