(57)【要約】【課題】電子カメラ等で撮像した画像データをパソコンへ転送して表示すること。【解決手段】カメラヘッド３で撮像した画像は、画像処理部４にて画像処理がされ、予め設定された画像フォーマット、および画像サイズに変換される。ＣＰＵ７は画像処理部４からＦＩＦＯメモリ５への画像データの転送、およびＦＩＦＯメモリ５からＵＳＢコントローラ６へ１フレーム単位の画像データの転送を指示する。ＵＳＢコントローラ６は、１フレームの画像データを最大５１２バイトのパケットに分割し、ＵＳＢ２．０インターフェース１１を介してＰＣ２へ転送する。ＰＣ２においては、フレームメモリ格納制御部１０ａによってフレームの区切りを判断し、１フレーム分のパケットをフレームメモリ８に格納する。正常転送判断部１０ｂは、１フレームが正常に転送されているかを判断して、正常に転送されているフレームのみをモニタ９に表示する。【選択図】      図１
2005244631.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像するカメラと、前記カメラで撮像した画像を処理する処理回路と、前記処理回路で処理した画像を外部へ送信するための通信手段と、前記処理回路で処理した画像を前記通信手段へ転送する転送手段とを有する画像撮像装置、および
前記通信手段から送られてくる画像をモニタに１フレーム単位に連続して表示する表示制御手段とを有する画像処理装置を備え、
前記転送手段は、前記カメラで撮像した画像データを転送する第１のデータ転送手段と、前記第１のデータ転送手段に転送された画像データをフレームの単位に区切った１フレーム単位の画像データとして前記通信手段へ転送する第２のデータ転送手段とを備え、
前記通信手段は、前記画像処理装置へ画像データを送信するに当たって、前記第２のデータ転送手段から送られてきた１フレーム分の画像データに対して、最初または最終パケットのデータ量が、前記最初または最終パケットを除くパケットの所定データ量と異なるように分割処理しながらパケットごとに送信することを特徴とする画像表示システム。
【請求項２】
請求項１に記載の画像表示システムにおいて、
前記画像処理装置は、
前記通信手段から前記所定データ量と異なるデータ量のパケットを受信したとき、当該所定データ量と異なるデータ量のパケットを画像データの１フレームの区切りとして判断して、当該所定データ量と異なるデータ量のパケットを含む１フレームの画像データをフレームメモリに格納するデータ格納制御手段と、
前記フレームメモリに格納された１フレームと認識されたパケットの合計データ量を算出するデータ量算出手段と、
前記データ量算出手段で算出された当該合計データ量と、１フレームの画像データの本来のデータ量とに基づいて、前記通信手段による転送が正常に完了したか否かを判断する正常転送判断手段とを有することを特徴とする画像表示システム。
【請求項３】
請求項２に記載の画像表示システムにおいて、
前記データ格納制御手段は、前記通信手段から前記所定データ量と異なるデータ量のパケットを受信した場合、前記所定データ量と異なるデータ量のパケットが１フレーム単位の画像データの最初のパケットであるとき、当該所定データ量と異なるデータ量のパケットを受信してから、次の所定データ量と異なるデータ量のパケットの直前のパケットを受信するまでの間に受信したパケットを１フレームの画像データとして認識し、前記所定データ量と異なるデータ量のパケットが１フレーム単位の画像データの最終パケットであるとき、当該所定データ量と異なるデータ量のパケットの次のパケットを受信してから、次の所定データ量と異なるデータ量のパケットを受信するまでの間に受信したパケットを１フレームの画像データとして認識することを特徴とする画像表示システム。
【請求項４】
請求項３に記載の画像表示システムにおいて、
前記正常転送判断手段は、前記１フレームの画像データの転送が正常に行われなかったと判断した場合、当該フレームの画像データを表示出力しないことを特徴とする画像表示システム。
【請求項５】
請求項１〜４のいずれか一項に記載の画像撮像装置。
【請求項６】
請求項１〜４のいずれか一項に記載の画像処理装置。
【請求項７】
請求項５に記載の画像撮像装置に搭載されるコンピュータによって実行するためのプログラムであって、
前記カメラで撮像した画像の処理と、
画像データを前記第１の転送手段から転送させる処理と、
前記第１の転送手段から転送されてくる画像データをフレーム単位に区切った１フレーム単位の画像データとして前記第２の転送手段から前記通信手段へ転送する処理と、
前記第２の転送手段から転送されてくる１フレーム単位の画像データを最初または最終パケットのデータ量が、前記最初または最終パケットを除くパケットの所定データ量と異なるように分割処理しながらパケットごとに前記通信手段から前記画像処理装置へ送信する処理とを有し、
前記第２の転送手段から転送されるフレームのサイズは、前記画像処理装置から指示される１フレームの大きさに基づいて決定されることを特徴とするプログラム。
【請求項８】
請求項６に記載の画像処理装置に搭載されるコンピュータによって実行するためのプログラムであって、
受信したパケットが前記所定データ量と異なるデータ量のパケットか否かを判断し、当該所定データ量と異なるデータ量のパケットを画像データの１フレームの区切りとして判断する処理と、
その処理に基づいて、１フレームの画像データをフレームメモリに格納する処理と、
フレームメモリに格納した１フレームのパケットの合計データ量を算出し、当該所定データ量と、１フレームの画像データの本来のデータ量とに基づいて、通信手段による転送が正常に完了したか否かを判断する処理とを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子カメラ等で撮像した画像データをパソコンへ転送して表示する画像表示システム、装置、画像撮像装置、およびプログラムに関する。
【背景技術】
【０００２】
画像データを転送する際に、画像データにフレームヘッダを挿入し、フレームの区切りを識別する方法が特許文献１によって知られている。
【０００３】
【特許文献１】特開平７−１７０５１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、画像データを伝送する際に、画像データにフレームヘッダを挿入する従来の方法においては、フレームヘッダを挿入する処理に大きな負荷がかかるという問題が生じていた。
【課題を解決するための手段】
【０００５】
請求項１に記載の画像表示システムは、被写体を撮像するカメラと、カメラで撮像した画像を処理する処理回路と、処理回路で処理した画像を外部へ送信するための通信手段と、処理回路で処理した画像を通信手段へ転送する転送手段とを有する画像撮像装置、および通信手段から送られてくる画像をモニタに１フレーム単位に連続して表示する表示制御手段とを有する画像処理装置を備え、転送手段は、カメラで撮像した画像データを転送する第１のデータ転送手段と、第１のデータ転送手段に転送された画像データをフレームの単位に区切った１フレーム単位の画像データとして通信手段へ転送する第２のデータ転送手段とを備え、通信手段は、画像処理装置へ画像データを送信するに当たって、第２のデータ転送手段から送られてきた１フレーム分の画像データに対して、最初または最終パケットのデータ量が、最初または最終パケットを除くパケットの所定データ量と異なるように分割処理しながらパケットごとに送信することを特徴とする。
請求項２に記載の画像表示システムは、請求項１に記載の画像表示システムにおいて、画像処理装置は、通信手段から所定データ量と異なるデータ量のパケットを受信したとき、当該所定データ量と異なるデータ量のパケットを画像データの１フレームの区切りとして判断して、当該所定データ量と異なるデータ量のパケットを含む１フレームの画像データをフレームメモリに格納するデータ格納制御手段と、フレームメモリに格納された１フレームと認識されたパケットの合計データ量を算出するデータ量算出手段と、データ量算出手段で算出された当該合計データ量と、１フレームの画像データの本来のデータ量とに基づいて、通信手段による転送が正常に完了したか否かを判断する正常転送判断手段とを有することを特徴とする。
請求項３に記載の画像表示システムは、請求項２に記載の画像表示システムにおいて、データ格納制御手段は、通信手段から所定データ量と異なるデータ量のパケットを受信した場合、所定データ量と異なるデータ量のパケットが１フレーム単位の画像データの最初のパケットであるとき、当該所定データ量と異なるデータ量のパケットを受信してから、次の所定データ量と異なるデータ量のパケットの直前のパケットを受信するまでの間に受信したパケットを１フレームの画像データとして認識し、所定データ量と異なるデータ量のパケットが１フレーム単位の画像データの最終パケットであるとき、当該所定データ量と異なるデータ量のパケットの次のパケットを受信してから、次の所定データ量と異なるデータ量のパケットを受信するまでの間に受信したパケットを１フレームの画像データとして認識することを特徴とする。
請求項４に記載の画像表示システムは、請求項３に記載の画像表示システムにおいて、前記正常転送判断手段は、１フレームの画像データの転送が正常に行われなかったと判断した場合、当該フレームの画像データを表示出力しないことを特徴とする。
請求項５に記載の画像撮像装置は、請求項１〜４のいずれか一項に記載の画像撮像装置である。
請求項６に記載の画像処理装置は、請求項１〜４のいずれか一項に記載の画像処理装置である。
請求項７に記載のプログラムは、請求項５に記載の画像撮像装置に搭載されるコンピュータによって実行するためのプログラムであって、カメラで撮像した画像の処理と、画像データを第１の転送手段から転送させる処理と、第１の転送手段から転送されてくる画像データをフレーム単位に区切った１フレーム単位の画像データとして第２の転送手段から通信手段へ転送する処理と、第２の転送手段から転送されてくる１フレーム単位の画像データを最初または最終パケットのデータ量が、最初または最終パケットを除くパケットの所定データ量と異なるように分割処理しながらパケットごとに通信手段から画像処理装置へ送信する処理とを有し、第２の転送手段から転送されるフレームのサイズは、画像処理装置から指示される１フレームの大きさに基づいて決定されることを特徴とする。
請求項８に記載のプログラムは、請求項５に記載の画像撮像装置に搭載されるコンピュータによって実行するためのプログラムであって、カメラで撮像した画像の処理と、画像データを第１の転送手段から転送させる処理と、第１の転送手段から転送されてくる画像データをフレーム単位に区切った１フレーム単位の画像データとして第２の転送手段から通信手段へ転送する処理と、第２の転送手段から転送されてくる１フレーム単位の画像データを最初または最終パケットのデータ量が、最初または最終パケットを除くパケットの所定データ量と異なるように分割処理しながらパケットごとに通信手段から画像処理装置へ送信する処理とを有し、第２の転送手段から転送されるフレームのサイズは、画像処理装置から指示される１フレームの大きさに基づいて決定されることを特徴とする。
【発明の効果】
【０００６】
本発明によれば、画像データにフレームヘッダを挿入することなく、フレームの区切りが識別でき、処理の負荷を軽減することができる。
【発明を実施するための最良の形態】
【０００７】
図１は、本発明による画像表示装置の一実施の形態の構成を示すブロック図である。画像表示装置においては、画像撮像装置１と画像処理装置２とがＵＳＢ２．０インターフェース１１を介して接続されている。画像処理装置２はパソコン（ＰＣ）を用いることができる。パソコン（ＰＣ）２は、ＵＳＢ２．０インターフェース１１を介して画像撮像装置１に対して画像データの転送指示信号を送信し、転送指示信号を受信した画像撮像装置１は、ＵＳＢ２．０インターフェース１１を介してＰＣ２に対して撮像した画像データを転送する。
【０００８】
このとき、ＰＣ２において、使用者は不図示の入力装置を使用して、あらかじめ転送する画像のフォーマットや画像サイズを設定しておき、画像撮像装置１への転送要求と同時にこれらの設定値をＵＳＢ２．０インターフェース１１を介して送信する。画像撮像装置１は、カメラヘッド３で撮像した画像を、あらかじめ設定された画像フォーマット、および画像サイズの画像データに変換して、ＰＣ２へ画像を送信する。
【０００９】
画像撮像装置１は、画像を撮像するカメラヘッド３と、撮像された画像データに対して各種画像処理を行う画像処理部４と、画像処理部４で画像処理が行われた画像を格納するＦＩＦＯメモリ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ  Ｍｅｍｏｒｙ）５と、ＵＳＢ２．０インターフェース１１を制御するＵＳＢコントローラ６と、画像撮像装置１全体を制御するＣＰＵ７とを有している。
【００１０】
カメラヘッド３にはＣＣＤ素子が組み込まれており、カメラヘッド３は所定時間ごとに次々と被写体を撮像し、撮像した被写体を１フレームずつデジタルデータに変換して出力する。画像処理部４は、カメラヘッド３から次々と出力されて来る画像データを、１フレームずつＣＰＵ７からの指示に基づいてＰＣ２であらかじめ設定されたフォーマットおよびサイズに変換する。また、必要に応じて補間、階調変換や輪郭強調などの画像処理が行われる。なお、本実施の形態においては、画像フォーマットをＲＧＢ形式のデータフォーマットとし、ＲＧＢ画像データを６４０画素×４８０画素（ＶＧＡ）の画像サイズに変換するものとする。
【００１１】
画像処理部４にて画像処理が行われた画像データは１フレームずつ次々とＦＩＦＯメモリ５へ転送される。画像処理部４からＦＩＦＯメモリ５への転送はＣＰＵ７によって制御される。なお、ＣＰＵ７によって制御される画像データの転送処理については後述する。
【００１２】
ＦＩＦＯメモリ５は、画像処理部４から転送された画像データを１フレームずつ複数枚格納するバッファとしての機能を有し、画像処理部４から転送されてきた画像データの順に、画像データを１フレーム単位でＵＳＢコントローラ６へ転送する。ＦＩＦＯメモリ５からＵＳＢコントローラ６への画像データの転送もＣＰＵ７によって制御される。なお、画像処理部４において、ＲＧＢ形式でＶＧＡサイズに変換された画像データは、ＦＩＦＯメモリ５に図２に示すように格納される。ＲＧＢ形式の画像データでは、各画素にはＲ（赤）、Ｇ（緑）、Ｂ（青）のすべての色成分の色情報が存在している。すなわち、１画素中にはＲ、Ｇ、Ｂの３バイト分の色情報を含んでいる。したがって、ＶＧＡサイズに変換された１フレーム当たりの画像データサイズは、６４０画素×４８０画素×３バイト＝９２１６００バイトとなる。
【００１３】
ＵＳＢコントローラ６は、ＣＰＵ７からの指示に基づいてＦＩＦＯメモリ５から転送された１フレーム単位の画像データを、５１２バイトの固定長符号化し、複数のパケットに分割してから、ＵＳＢ２．０インターフェース１１を介してＰＣ２に転送する。なお、１フレーム当たりの画像データのサイズは、ＣＰＵ７からＵＳＢコントローラ６へ通知されている。また、１フレーム単位の画像データの全パケットが転送完了したか否かを判断し、転送が完了した時点で転送を停止し、転送が完了した旨をＣＰＵ７に通知する。この機能は、ＵＳＢ２．０の標準仕様により提供されている。ＵＳＢコントローラ６は、ＵＳＢ２．０の標準仕様に則って画像データの転送を制御する。
【００１４】
ＣＰＵ７は、不図示のメモリに格納されたプログラムを実行することにより、画像撮像装置１全体を制御する。すなわち、以下の処理を行う。画像処理部４に対しては、ＰＣ２からの指示に基づいて指定された画像フォーマット、および画像サイズへの変換を行うよう指示を出す。
【００１５】
ＣＰＵ７はまた、画像処理部４からＦＩＦＯメモリ５への画像データの転送、およびＦＩＦＯメモリ５からＵＳＢコントローラ６への画像データの転送の起動、停止タイミングを制御する。画像処理部４からＦＩＦＯメモリ５への画像データの転送においては、ＰＣ２から画像転送要求がされた時点で画像データの転送を開始し、ＰＣ２から画像転送の停止要求がされたときに転送を停止すべく制御する。すなわち、ＰＣ２から画像転送要求がされてから、ＰＣ２から画像転送の停止要求がされるまでの間、連続的に画像データを１フレームごとに転送する。なお、本明細書では、この転送を次のように表現することもある。つまり、カメラヘッド３で撮像した画像データをフレームの区切りを有しない連続したデータとして転送する。
【００１６】
ＦＩＦＯメモリ５からＵＳＢコントローラ６への画像データの転送においては、ＦＩＦＯメモリ５に格納された画像データの１フレーム単位でＵＳＢコントローラ６への転送を行う。したがって、ＣＰＵ７は、１フレームの転送ごとに転送の起動と停止を繰り返すべくＦＩＦＯメモリ５の出力を制御する。このとき、ＣＰＵ７は、ＵＳＢコントローラ６からの１フレーム受信完了の信号を検知することにより１フレームの送信が完了したことを判断する。本明細書では、この転送を次のように表現することもある。つまり、ＦＩＦＯメモリ５に転送された連続した画像データを、フレーム単位に区切った１フレーム単位のデータとして転送する。
【００１７】
以上説明したように、画像撮像装置１によって撮像された画像データは、１フレームごとに５１２バイトのパケットに分割され、ＵＳＢ２．０インターフェース１１を介してＰＣ２へ転送される。
【００１８】
ＰＣ２は、画像撮像装置１から転送された画像データを、１フレーム単位に格納するフレームメモリ８と、フレームメモリ８に格納された画像データについて、次の画像データがフレームメモリ８に格納されるまでの間、その画像を視覚的に表示する（可視化する）モニタ９と、ＰＣ２を制御するＣＰＵ１０とを有している。ＣＰＵ１０は、フレームメモリ格納制御部１０ａと、正常転送判定部１０ｂとを有している。
【００１９】
フレームメモリ格納制御部１０ａは、画像撮像装置１からパケット転送された画像データの１フレームの区切りを検出し、１フレーム単位の画像データをフレームメモリ８に格納する。画像データの１フレームの区切りの検出は、ＵＳＢ２．０の標準仕様により提供されているデータの区切りとなるパケットを検出することによって行われる。
【００２０】
具体的には、ＵＳＢコントローラ６は、上述したとおり、１フレーム単位の画像データを、それぞれが５１２バイトに固定長に符号化された複数のパケットに分割する。その際、全データサイズが５１２バイトで割り切れない場合には、最終パケットが５１２バイト未満のパケットとなる。しかし、本実施の形態における画像データサイズは９２１６００バイトであるため最終パケットも５１２バイトとなり、５１２バイト未満のパケットが発生しない。したがって本実施の形態では、ＵＳＢコントローラ６は、パケット作成時にデータ量をカウントし、９２１６００バイトを計測したとき、最終パケットとして０バイトのパケットを作成して付加する。これにより、後述するようにＰＣ２は最終パケットの判断、すなわち１フレームの判断を可能としている。
【００２１】
図３に、ＵＳＢコントローラ６によって分割され、ＰＣ２に転送されるパケットの例を示す。１フレームの画像データに相当するフレーム３ａは、１つのパケットが５１２バイトである複数のパケット３ｂに分割され転送される。そして、最終パケット３ｃのみが５１２バイト未満のパケットとして転送される。
【００２２】
したがって、フレームメモリ格納制御部１０ａは、５１２バイト未満のパケットが転送されてきたときに、当該パケットが１フレームの最終パケット、すなわち１フレームの区切りであると判断する。そして、１フレームの区切りである５１２バイト未満のパケットの次のパケットから、次に５１２バイト未満のパケットが転送されてくるまでのパケットを、次の１フレームの画像データとしてフレームメモリ８に格納する。
【００２３】
正常転送判定部１０ｂは、画像撮像装置１から転送され、フレームメモリ８に格納された画像１フレーム分の全パケットの合計サイズと、画像データが正常に送られた場合の正しい画像データサイズ、すなわち９２１６００バイトとを比較する。そして、両者が一致するか否かを判定することにより、画像データの転送が正常に完了したか否かを判断する。一般に、ＵＳＢ２．０インターフェースのように高周波の電気信号によってデータ伝送を行う場合には、ノイズにより伝送にエラーが発生する可能性がある。この場合、画像データにおいては、エラーにより一部のパケットが正常に転送されない場合、表示画像の乱れの発生などの原因となる。
【００２４】
したがって、１フレームが正常に転送されていないフレームはフレームメモリから消去し、正常に転送されたフレームのみをモニタ９に表示する。これによって、次々に転送されてくる複数の画像のうち、転送エラーが発生した画像データは無視して、正常な画像データだけをモニタ９で表示することができる。
【００２５】
以下、上記画像表示装置における処理について、図４〜６に示すフローチャートにしたがって、詳細に説明する。図４は、画像撮像装置１におけるＣＰＵ７によって実行される処理の流れを示すフローチャート図である。図４に示す処理は、画像撮像装置１の電源がＯＮされ、カメラヘッド３によって被写体の撮像が開始されると起動するプログラムにより実行される。
【００２６】
ステップＳ１０において、ＰＣ２からデータ転送要求がされたか否かが判断される。ＰＣ２からのデータ転送要求があったと判断された場合には、ステップＳ２０へ進む。ステップＳ２０において、画像処理部４は、カメラヘッド３で撮像されデジタルデータに変換された画像データに対して、補間、階調変換などの画像処理を行う。また、ＰＣ２から指示された画像フォーマット、および画像サイズ、すなわちＲＧＢ形式のフォーマット、およびＶＧＡサイズへ変換する。
【００２７】
ステップＳ３０において、画像処理部４からＦＩＦＯメモリ５への画像データの転送を起動する。これによって、画像処理部４において画像処理された画像データがＦＩＦＯメモリ５に転送され、ステップＳ４０において、図２に示すようにＦＩＦＯメモリ５に格納される。ステップＳ５０において、ＦＩＦＯメモリ５からＵＳＢコントローラ６への１フレームの画像データの転送が起動する。すなわちＣＰＵ７は、ＦＩＦＯメモリ５に対してＵＳＢコントローラ６へ１フレーム分の画像データを転送するよう指示を出す。
【００２８】
ステップＳ６０において、ＵＳＢコントローラ６から１フレーム転送完了の通知を受信したか否かが判断される。ＵＳＢコントローラ６は、上述したとおり、ＣＰＵ７から通知された１フレームの画像データサイズに基づいて、１フレーム分の全パケットの転送が完了したことをＣＰＵ７に通知する。ＣＰＵ７は、このＵＳＢコントローラ６からの転送完了通知を検出することにより、ＵＳＢコントローラ６が１フレームの画像データの転送を完了したことを判断する。ＵＳＢコントローラ６から１フレーム転送完了の通知を受信したと判断された場合には、ステップＳ７０へ進む。
【００２９】
ステップＳ７０において、ＰＣ２から画像データの転送停止要求があったか否かが判断される。使用者は、画像撮像装置１からの画像転送を停止する場合には、ＰＣ２の不図示の入力装置を使用して転送停止指示を行う。ＰＣ２において、使用者によって転送停止指示が出されると、当該指示は、転送停止要求としてＵＳＢ２．０インターフェース１１を介して画像撮像装置１へ送信される。この転送停止要求をＣＰＵ７が検出した場合には、ステップＳ８０へ進む。ステップＳ８０において、ステップＳ３０で起動した画像処理部４からＦＩＦＯメモリ５への画像データの転送を停止して、処理を終了する。
【００３０】
一方、転送停止要求をＣＰＵ７が検出しない場合には、ステップＳ５０へ戻り、ＦＩＦＯメモリ５に格納された次の１フレームの画像データのＵＳＢコントローラ６への転送を起動する。その後、ステップＳ７０でＰＣ２から画像データの転送停止要求があったと判断されるまで、ステップＳ５０〜ステップＳ７０の処理が繰り返し実行される。
【００３１】
次に、画像撮像装置１のＵＳＢコントローラ６における処理について説明する。図５は、ＵＳＢコントローラ６によって実行される処理の流れを示すフローチャート図である。ステップＳ１１０において、ＵＳＢコントローラ６が転送された画像データを検出したか否かが判断される。これは、図４のステップＳ５０で、ＣＰＵ７によってＦＩＦＯメモリ５からＵＳＢコントローラ６への１フレームの画像データの転送が起動された結果、ＵＳＢコントローラ６に画像データが到着した（受信した）時点で検出される。ＵＳＢコントローラ６が転送された画像データを検出した場合には、ステップＳ１２０へ進む。
【００３２】
ステップＳ１２０において、受信した画像データをＵＳＢ２．０インターフェース１１を介してＰＣ２へ転送すべく、ＰＣ２への転送を起動する。ＰＣ２への転送を起動すると同時に、以下に説明するステップＳ１３０〜ステップＳ２１０の処理によって、受信した画像データを５１２バイトのパケットに分割し、ＰＣ２へパケット転送を行う。
【００３３】
ステップＳ１３０において、ＦＩＦＯメモリ５から受信済みの画像データサイズと、ＣＰＵ７からあらかじめ通知された１フレームの画像データサイズとから、受信中の１フレームの残りサイズが５１２バイトより大きいか否かが判断される。受信中の１フレームの残りサイズが５１２バイトより大きいと判断された場合には、現在のフレームをパケット分割するに当たって、未だ最終パケットには到達しないため、ステップＳ１４０において、５１２バイトの画像データを受信したら、その画像データから５１２バイトのパケットを作成する。その後、ステップＳ１５０において、作成した５１２バイトのパケットをＵＳＢ２．０インターフェース１１を介してＰＣ２へ転送する。
【００３４】
その後、ステップＳ１３０に戻り、受信中の１フレームの残りサイズが５１２バイト以下になるまで、ステップＳ１４０で５１２バイトのパケット作成を続け、作成したパケットをＰＣ２へ転送する。これによって、１フレームの画像データをＦＩＦＯメモリ５から受信しながら、５１２バイトのパケットに分割を行い、順次ＰＣ２へ転送することができる。
【００３５】
ステップＳ１３０において、受信中の１フレームの残りサイズが５１２バイト以下であると判断された場合には、現在受信中の画像データは、パケット分割後の１フレームの最終パケットに相当すると判断して、ステップＳ１６０へ進む。ステップＳ１６０において、受信中の１フレームの残りサイズが５１２バイトであるか否かが判断される。受信中の１フレームの残りサイズが５１２バイトである場合には、１フレームの画像データサイズが、ちょうど５１２バイトで割り切れる、すなわち、最終パケットとして０バイトのパケットを作成する必要があると判断して、ステップＳ１７０へ進む。
【００３６】
ステップＳ１７０において、受信した１フレームの最後の画像データに該当する５１２バイトを使用して、５１２バイトのパケットを作成し、ステップＳ１８０において、作成したパケットをＰＣ２へ転送する。その後、ステップＳ１９０へ進み、最終パケット、すなわち１フレーム単位の画像データの区切りとして判断するための、０バイトのパケットを作成し、ステップＳ２１０において、作成した０バイトのパケットをＰＣ２へ転送する。
【００３７】
これに対して、ステップＳ１６０において、受信中の１フレームの残りサイズが５１２バイトでないと判断された場合には、最終パケットとして５１２バイト未満のパケットを作成できると判断することができる。よって、ステップＳ２００へ進み、最終パケットとして、残りの画像データから５１２バイト未満のパケットを作成し、ステップＳ２１０において、作成した５１２バイト未満のパケットをＰＣ２へ転送する。
【００３８】
以上、ステップＳ１３０〜ステップＳ２１０の処理により、１フレームの画像データが順次５１２バイトのパケットに分割された後、ＰＣ２へ転送され、最終パケットとして分割された５１２バイト未満のパケット、もしくは作成された０バイトのパケットがＰＣ２へ転送されることになる。
【００３９】
１フレームの画像データ全てをパケット分割し、ＰＣ２へ転送した後は、ステップＳ２２０において、ＰＣ２への転送を停止する。その後、ステップＳ２３０において、ＣＰＵ７に対して、１フレーム転送完了を通知して処理を終了する。これによって、上述した図４のステップＳ６０で、ＣＰＵ７はＵＳＢコントローラ６からの転送完了通知を検出することになる。
【００４０】
次に、ＰＣ２における処理を、図６により説明する。図６は、ＰＣ２におけるＣＰＵ１０によって実行される処理の流れを示すフローチャート図である。ステップＳ３１０において、使用者がＰＣ２の不図示の入力装置から画像撮像装置１に対して画像データの転送指示を行ったか否かが判断される。使用者によって、画像転送指示がされたと判断された場合には、ステップＳ３２０へ進む。ステップＳ３２０において、ＣＰＵ１０はＵＳＢ２．０インターフェース１１を介して、画像転送要求を画像撮像装置１に送信する。これによって、上述した図４のＳ１０において、画像撮像装置１のＣＰＵ７は、ＰＣ２からデータ転送要求がされたと判断して処理を開始する。
【００４１】
ステップＳ３３０においては、ステップＳ３２０で送信した画像転送要求を受けて、画像撮像装置１が図４および図５の処理を実行し、ＵＳＢコントローラ６からパケット転送がされた結果、ＰＣ２にパケットが転送されてきたか否かを判断する。ＰＣ２にパケットが転送されてきた（受信した）と判断した場合には、ステップＳ３４０へ進む。
【００４２】
ステップＳ３４０においては、画像撮像装置１から受信したパケットをフレームメモリ８へ格納する。なお、後述するステップＳ３５０で５１２バイト未満のパケットを受信したら、すなわち１フレーム分のパケットを受信したら次のステップに進み、ステップＳ３６０〜ステップＳ３９０の処理が完了した後、ステップＳ４００において、フレームメモリ８内のデータをクリアしている。このため、フレームメモリ８には、常に前回５１２バイト未満のパケットを受信した次のパケットから、最後に受信した５１２バイトのパケットまでのデータ、すなわち最新に受信した１フレーム分の画像データが格納されていることになる。
【００４３】
ステップＳ３５０において、画像撮像装置１から受信したパケットが５１２バイト未満であるか否かが判断される。画像撮像装置１から受信したパケットが５１２バイト未満であると判断された場合には、フレームメモリ格納制御部１０ａは、現在受信したパケットが１フレームの最終パケット、すなわちフレームの区切りであると判断してステップＳ３６０へ進む。
【００４４】
ステップＳ３６０において、フレームメモリ８に格納された全パケットの合計サイズがカウントされる。上述したように、フレームメモリ内には常に最新に受信した１フレーム分のパケットが格納されている。このため、フレームメモリ８に格納された全パケットの合計サイズをカウントすることによって、画像撮像装置１から受信した１フレームの画像データのサイズを算出することができる。
【００４５】
ステップＳ３７０において、ステップＳ３６０でカウントしたフレームメモリ８に格納された全パケットの合計サイズと、画像データ１フレームの本来のサイズ、すなわち本実施の形態においては９２１６００バイトとが比較される。比較の結果、両者が一致すると判定された場合は、正常転送判断部１０ｂは、画像撮像装置１からＰＣ２へのパケット転送は正常に完了したと判断して、ステップＳ３８０に進む。ステップＳ３８０において、フレームメモリ８に格納されている画像データを、モニタ９への表示形式に変換し、ステップＳ３９０においてモニタ９に表示する。これによって、画像撮像装置１で撮像された画像がＰＣ２へ転送され、モニタ９を介して使用者に視覚的に表示される。カメラヘッド３は、所定の時間間隔で次々に被写体を撮像し、その画像データはＰＣ２に送信されるので、モニタ９にはそれらの画像が次々に表示される。
【００４６】
一方、ステップＳ３７０において、ステップＳ３６０でカウントしたフレームメモリ８に格納された全パケットの合計サイズと、画像データ１フレームの本来のサイズが一致しないと判断された場合には、正常転送判断部１０ｂは、パケット転送中にノイズ等の影響によってエラーが発生したと判断する。したがって、当該フレームはモニタ９には表示せず、そのまま破棄することとし、つまり表示出力しないで、ステップＳ４００に進む。
【００４７】
ステップＳ４００において、フレームメモリ８に格納された画像データをクリアする。これにより、次のフレームを格納する準備が完了する。ステップＳ４１０において、使用者によって、画像データの転送停止指示がされたか否かが判断される。使用者によって画像データの転送指示がされないと判断された場合には、ステップＳ３３０へ戻り、次の１フレームのパケットをフレームメモリ８に格納するために、パケットが転送されてくるのを待ち、上述した処理を繰り返す。
【００４８】
これに対して、使用者によって画像データの転送指示がされたと判断された場合には、ステップＳ４２０へ進み、画像撮像装置１に対して転送停止要求を送信する。これによって、画像撮像装置１においては、上述した図４のステップＳ７０において、ＣＰＵ７がＰＣ２からの転送停止要求を検出することになる。
【００４９】
以上、本実施の形態によれば、以下のような作用効果を得ることができる。
（１）画像撮像装置１において、画像データを転送するに当たって、画像処理部４からＦＩＦＯメモリ５へのデータ転送は１フレームずつ区切り無く連続的に行い、ＦＩＦＯメモリ５からＵＳＢコントローラ６へのデータ転送は１フレーム単位に行うこととした。これにより、ＵＳＢコントローラ６は、ＰＣ２へ転送するデータをパケットに分割するに当たって、１フレームごとに区切ってパケット分割を行うことができる。さらに、カメラヘッド３で撮像した画像データを高速でＦＩＦＯメモリ５へ転送することができる。
（２）ＵＳＢコントローラ６でパケット分割を行うにあたって、フレームの最終パケットのみ５１２バイト未満のパケットを作成して転送することとした。これによって、ＰＣ２では、５１２バイト未満のパケットを検出することにより、フレームヘッダ等、特別な情報を付加することなくフレームの区切りを判断することが可能となる。
【００５０】
（３）ＰＣ２では、画像撮像装置１から受信した１フレーム分のパケットをフレームメモリ８に格納し、フレームメモリ内のパケットサイズの合計と、本来の１フレームの画像データのサイズとを比較することにより、データ転送が正常に行われたか否かを判断することとした。これによって、データ転送が正常に行われたフレームのみをモニタ９に表示し、エラーが発生したフレームはそのまま消去して、次の正常なフレームを継続して表示することが可能となる。したがって、表示画像の乱れを軽減することができる。
（４）ＵＳＢコントローラ６によるＵＳＢ２．０インターフェースを介したデータ転送は、ＵＳＢ２．０の標準仕様に則って制御するものとした。これにより、既存の技術を使用して、簡易な構造で装置を構築することができる。
【００５１】
以上のように、カメラヘッド３で撮像した画像データを画像処理部４からＦＩＦＯメモリ５へ転送する場合、フレームの区切りを有しない連続したデータとして転送することにより、高速なデータ転送ができ、さらにこの段階でのフレーム抜けも防ぐことができる。しかし、本発明では、フレームに区切られたデータを転送してもよい。
【００５２】
なお、本実施の形態においては、ＰＣ２から指示される画像フォーマットはＲＧＢであるものとしたが、これに限定されず、以下のように変形することができる。例えば、画像フォーマットはＹＵＶでもよく、１フレームが固定長となるフォーマットであれば、その他の画像フォーマットでもよい。
【００５３】
本実施の形態では、フレームの最終パケットのみ、他のパケットと異なるバイト数としたが、フレームの最初のパケットを他のパケットと異なるバイト数としてもよい。また、最初または最終パケットのバイト数を所定バイト数（５１２バイト）未満としたが、所定バイト数を超えるバイト数としてもよい。
【００５４】
ＰＣ２から指示される画像サイズはＶＧＡであるものとしたが、その他、ＸＧＡ（１０２４画素×７６８画素）等の画像サイズでもよく、本発明は、様々な画像サイズのものに適用可能である。
【００５５】
本実施の形態においては、通信手段として画像撮像装置１とＰＣ２とをＵＳＢ２．０インターフェース１１で接続することとした。しかし、これに限定されず、ＵＳＢ１．１インターフェースによって接続してもよい。また、その他、パケット転送を行うことができるインターフェースによって接続してもよい。
【００５６】
なお、本実施の形態における画像撮像装置１は、例えば生体顕微鏡などと一体に用いられる。
【００５７】
特許請求の範囲の構成要素と実施の形態との対応関係について説明する。ＣＰＵ７は転送手段、第１のデータ転送手段、および第２のデータ転送手段に、フレームメモリ格納制御部１０ａはデータ格納制御手段に相当する。正常転送判定部１０ｂはデータ量算出手段、および正常転送判断手段に、ＵＳＢコントローラ６、およびＵＳＢ２．０インターフェース１１は通信手段に相当する。なお、本発明の特徴的な機能を損なわない限り、本発明は、上述した実施の形態における構成に何ら限定されない。
【図面の簡単な説明】
【００５８】
【図１】本発明による画像表示装置の一実施の形態の構成を示すブロック図である。
【図２】ＦＩＦＯメモリ５に格納される画像データを示す図である。
【図３】ＵＳＢコントローラ６によって分割され、ＰＣ２に転送されるパケットの例を示す図である。
【図４】画像撮像装置１のＣＰＵ７によって実行される処理の流れを示すフローチャート図である。
【図５】画像撮像装置１のＵＳＢコントローラ６によって実行される処理の流れを示すフローチャート図である。
【図６】ＰＣ２のＣＰＵ１０によって実行される処理の流れを示すフローチャート図である。
【符号の説明】
【００５９】
１  画像撮像装置
２  画像処理装置（ＰＣ）
３  カメラヘッド
４  画像処理部
５  ＦＩＦＯメモリ
６  ＵＳＢコントローラ
７、１０  ＣＰＵ
８  フレームメモリ
９  モニタ
１０ａ  フレームメモリ格納制御部
１０ｂ  正常転送判断部
１１  ＵＳＢ２．０インターフェース
【図１】
2005244631.tif 000003
【図２】
2005244631.tif 000004
【図３】
2005244631.tif 000005
【図４】
2005244631.tif 000006
【図５】
2005244631.tif 000007
【図６】
2005244631.tif 000008