(57)【要約】【構成】動画像を形成する各フレームのＪＰＥＧデータは、アイソクロナス転送のような１回の転送量に上限値が設けられた転送方式に従って所望の装置に転送される。前回転送されたＪＰＥＧデータは、ＳＤＲＡＭ２４によって一時的に保持される。ＣＰＵ２２は、今回転送すべきＪＰＥＧデータのサイズが上限値を上回るか否かを判別する。判別結果が肯定的であれば、ＣＰＵ２２は、今回転送すべきＪＰＥＧデータに代えてＳＤＲＡＭ２４に保持されたＪＰＥＧデータつまり前回転送されたＪＰＥＧデータを転送する。【効果】所望の装置に転送される静止画像信号のサイズは必ず上限値以下となるため、所望の装置は、送信された静止画像信号を適切に再現することができる。【選択図】  図１
2004349947.tif 000002
【特許請求の範囲】
【請求項１】
動画像を形成する複数の静止画像信号の各々を１回の転送量に上限値が設けられた転送方式に従って所望の装置に転送する画像転送装置において、
前回転送された静止画像信号を一時的に保持する保持手段、
今回転送すべき静止画像信号のサイズが前記上限値を上回るか否かを判別する判別手段、および
前記判別手段の判別結果が肯定的であるとき前記今回転送すべき静止画像信号に代えて前記保持手段によって保持された静止画像信号を転送する転送手段を備えることを特徴とする、画像転送装置。
【請求項２】
前記所望の装置への転送に先立って前記複数の静止画像信号の各々を圧縮する圧縮手段、および
前回の圧縮処理に用いられた圧縮率と前回の圧縮処理で生成された圧縮静止画像信号のサイズと目標サイズとに基づいて今回の圧縮処理に用いる圧縮率を算出する算出手段をさらに備える、請求項１記載の画像転送装置。
【請求項３】
前記転送方式はＵＳＢフォーマットのアイソクロナス転送方式である、請求項１または２記載の画像転送装置。
【請求項４】
被写界を撮影して前記複数の静止画像信号を生成する撮影手段をさらに備える、請求項１ないし３のいずれかに記載の画像転送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、画像転送装置に関し、特にたとえば動画像を形成する複数の静止画像信号を所望の装置に転送する、画像転送装置に関する。
【０００２】
【従来技術】
従来のこの種の画像転送装置の一例が、特許文献１に開示されている。この従来技術は、監視カメラによって撮影されかつ圧縮された画像信号を通信回線を通して画像受信装置に転送しようとするものである。
【０００３】
【特許文献１】
特開平９−３７２３２号公報
【０００４】
【発明が解決しようとする課題】
しかし、通信回線としてＵＳＢケーブルを採用し、かつ転送方式としてアイソクロナス転送を採用すると、単位時間当たりの転送量に上限が設けられる。すると、被写界の変化によって１画面の画像信号のサイズが大きくなったときに、上限値を超える部分画像信号が画像受信装置に転送されず、画像受信装置側で画像を適切に再現することができない。
【０００５】
それゆえに、この発明の主たる目的は、転送された画像信号を受信側で適切に再現することができる、画像転送装置を提供することである。
【０００６】
【課題を解決するための手段】
この発明に従う画像転送装置は、動画像を形成する複数の静止画像信号の各々を１回の転送量に上限値が設けられた転送方式に従って所望の装置に転送する画像転送装置において、前回転送された静止画像信号を一時的に保持する保持手段、  今回転送すべき静止画像信号のサイズが上限値を上回るか否かを判別する判別手段、および判別手段の判別結果が肯定的であるとき今回転送すべき静止画像信号に代えて保持手段によって保持された静止画像信号を転送する転送手段を備えることを特徴とする。
【０００７】
【作用】
動画像を形成する複数の静止画像信号の各々は、１回の転送量に上限値が設けられた転送方式に従って所望の装置に転送される。ここで、前回転送された静止画像信号は、保持手段によって一時的に保持される。判別手段は今回転送すべき静止画像信号のサイズが上限値を上回るか否かを判別し、転送手段は、判別結果が肯定的であるときに今回転送すべき静止画像信号に代えて保持手段によって保持された静止画像信号を転送する。
【０００８】
これによって、所望の装置に転送される静止画像信号のサイズは、必ず上限値以下となる。したがって、所望の装置は、送信された静止画像信号を適切に再現することができる。
【０００９】
好ましくは、所望の装置への転送に先立って、圧縮手段が複数の静止画像信号の各々を圧縮する。算出手段は、前回の圧縮処理に用いられた圧縮率と前回の圧縮処理で生成された圧縮静止画像信号のサイズと目標サイズとに基づいて、今回の圧縮処理に用いる圧縮率を算出する。これによって、今回圧縮すべき静止画像信号は、前回圧縮された静止画像信号に最適な圧縮率で圧縮される。すると、たとえば静止画像信号の明るさが画面間でパルス状に変化し、これに起因して圧縮静止画像信号のサイズが目標サイズから大きく変化したとしても、このサイズの変化は速やかに収束する。したがって、同じ圧縮静止画像信号が３回以上連続して転送されることはない。
【００１０】
好ましくは、転送方式はＵＳＢフォーマットのアイソクロナス転送方式である。
【００１１】
好ましくは、撮影手段が、被写界を撮影して複数の静止画像信号を生成する。
【００１２】
【発明の効果】
この発明によれば、所望の装置に転送される静止画像信号のサイズは必ず上限値以下となるため、所望の装置は、送信された静止画像信号を適切に再現することができる。
【００１３】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【００１４】
【実施例】
図１を参照して、この実施例の監視用ディジタルカメラ１０は、１／３０秒に１回の割合で垂直同期信号を発生するＴＧ／ＳＧ２０を含む。送信開始操作が行われると、ＣＰＵ２２は、ＴＧ／ＳＧ２０から出力される垂直同期信号に応答して、ドライバ１８に撮影処理を命令し、ＪＰＥＧコーデック２８に圧縮処理を命令する。
【００１５】
撮影命令を受けたドライバ１８は、ＴＧ／ＳＧ２０から与えられるタイミング信号に基づいて、イメージセンサ１２にプリ露光を施しかつプリ露光によって得られた生画像信号をイメージセンサ１２から読み出す。イメージセンサ１２では、被写界の光学像に対応する電荷が光電変換によって生成される。上述の生画像信号はかかる電荷を含む画像信号であり、撮影命令が発行される毎に１フレームの生画像信号がイメージセンサ１２から出力される。
【００１６】
ＣＤＳ／ＡＧＣ／ＡＤ回路１４は、ＴＧ／ＳＧ２０から出力されたタイミング信号に応答して、イメージセンサ１２からの生画像信号にノイズ除去，ゲイン調整およびＡ／Ｄ変換を施す。ＣＤＳ／ＡＧＣ／ＡＤ回路１４からは、ディジタル信号である生画像データが出力される。出力された生画像データは、信号処理回路１６によって白バランス調整，色分離，ＹＵＶ変換などの処理を施され、これによってＹＵＶ形式の画像データが生成される。メモリコントローラ２６は、信号処理回路１６によって生成された画像データをＳＤＲＡＭ２４に形成された非圧縮画像エリア（図２参照）に書き込む。
【００１７】
ＪＰＥＧコーデック２８に与えられる圧縮命令には、読み出しアドレス情報，読み出しサイズ情報，圧縮率情報，および書き込みアドレス情報が含まれる。信号処理回路１６によって生成された画像データは図２に示す非圧縮画像エリアに格納されるため、この非圧縮画像エリアの先頭アドレスが読み出しアドレス情報として記述され、非圧縮画像エリアに格納された画像データのサイズがサイズ情報として記述される。書き込みアドレス情報としては、ＪＰＥＧバンク０または１の先頭アドレスが記述される。圧縮率情報としては、最初は初期値が記述され、２回目以降は前回の圧縮処理の際に算出された数値が記述される。
【００１８】
ＪＰＥＧコーデック２８は、メモリコントローラ２６を通してＳＤＲＡＭ２４にアクセスし、読み出しアドレス情報および読み出しサイズ情報に従って非圧縮画像エリアから画像データを読み出す。ＪＰＥＧコーデック２８はまた、読み出された画像データに圧縮率情報に従う圧縮率でＪＰＥＧ圧縮を施す。ＪＰＥＧコーデック２８はさらに、メモリコントローラ２６を通してＳＤＲＡＭ２４にアクセスし、ＪＰＥＧ圧縮によって得られたＪＰＥＧデータを書き込みアドレス情報に従うＪＰＥＧバンクに書き込む。書き込みアドレス情報がＪＰＥＧバンク０の先頭アドレスを示すときは、ＪＰＥＧデータはＪＰＥＧバンク０に書き込まれる。一方、書き込みアドレス情報がＪＰＥＧバンク１の先頭アドレスを示すときは、ＪＰＥＧデータはＪＰＥＧバンク１に書き込まれる。
【００１９】
なお、ＪＰＥＧデータの書き込み先として今回指定されたＪＰＥＧバンクを“書き込み先バンク”と定義し、書き込み先バンクとは別のＪＰＥＧバンクを“非書き込み先バンク”と定義する。
【００２０】
ＪＰＥＧコーデック２８による１フレームの圧縮が完了すると、ＣＰＵ２２は、今回生成されたＪＰＥＧデータのサイズをＪＰＥＧコーデック２８から取得し、数１に従って最適圧縮率を求め、そして求められた最適圧縮率を次回の圧縮率として有効化する。
【００２１】
【数１】
Ｓｕｉｔ＝（Ｚｃｒｒｔ／Ｚｔｒｇｔ）＊ＣＭＰ
Ｓｕｉｔ：最適圧縮率
Ｚｃｒｒｔ：取得されたサイズ
Ｚｔｒｇｔ：目標サイズ
ＣＭＰ：今回の圧縮率
ＣＰＵ２２はまた、ＪＰＥＧコーデック２８から取得したサイズを閾値と比較する。そして、取得したサイズが閾値以下であれば、ＣＰＵ２２は、書き込み先バンクに格納されたＪＰＥＧデータを送信要求データとして決定し、書き込み先バンクの指定を変更する。これに対して、取得したサイズが閾値を上回れば、ＣＰＵ２２は、非書き込み先バンクに格納されたＪＰＥＧデータを送信要求データとして決定し、書き込み先バンクの指定の変更を中止する。
【００２２】
したがって、サイズ≦閾値である限り、最新のＪＰＥＧデータが送信要求データとされ、かつ書き込み先バンクがＪＰＥＧバンク０および１の間で交互に変更される。一方、サイズ＞閾値となると、前回送信要求データとされたＪＰＥＧデータが引き続き送信要求データとされ、かつ前回書き込み先バンクとされたＪＰＥＧバンクが引き続き書き込み先バンクとされる。
【００２３】
送信要求データが決定されると、ＣＰＵ２２は、この送信要求データについて送信処理を行う。つまり、ＣＰＵ２２は、送信要求データであるＪＰＥＧデータをメモリコントローラ２６を通してＳＤＲＡＭ２４から読み出し、読み出されたＪＰＥＧデータを含むＪＰＥＧファイルを作成し、作成したＪＰＥＧファイルを送信命令とともにＵＳＢデバイスコントローラ３０に与える。ＵＳＢデバイスコントローラ３０は、与えられたＪＰＥＧファイルをＵＳＢケーブル３２を経て所望の装置に送信する。
【００２４】
ＵＳＢデバイスコントローラ３０は、ＪＰＥＧファイルの転送方式としてアイソクロナス転送を採用する。アイソクロナス転送では、図３に示すように周期Ｔａに１回の割合で１つのＪＰＥＧファイルが転送される。ただし、アイソクロナス転送のために割り当てられた期間Ｔｂには上限があるため、ＪＰＥＧファイルのサイズが大きすぎるとデータの一部が欠落する。このように部分的な欠落が生じたＪＰＥＧファイルを受信したときの対応は送信先の装置に委ねられるため、装置によっては受信を継続できない可能性がある。
【００２５】
そこで、この実施例では、上述のように最新のＪＰＥＧデータのサイズを閾値と比較し、サイズ＞閾値のときに、この最新のＪＰＥＧデータに代えて前回送信されたＪＰＥＧデータを送信するようにしている。これによって、送信先の装置でエラーが生じる事態を回避することができる。なお、閾値は、図３に示す期間Ｔｂの上限値に対応する。
【００２６】
ＣＰＵ２２は、μＩＴＲＯＮのようなマルチタスクＯＳを搭載したマルチタスクＣＰＵであり、図４〜図６に示す撮影タスクおよび図７に示す送信タスクを並列的に実行する。なお、これらのフロー図に従う制御プログラムは、フラッシュメモリ３４に記憶される。また、撮影タスクは、送信開始操作に応答して開始される。
【００２７】
まず図４を参照して、ステップＳ１では送信タスクを起動し、ステップＳ３では各種の変数を初期化する。初期化によって、変数ＦＩＭＧが“１”に設定され、変数ＷＢＡＮＫが“０”に設定される。また、変数ＣＭＰが初期値に設定され、変数ＦＲＥＱが“０”に設定される。
【００２８】
ここで、変数ＦＩＭＧは、最初の送信要求データが決定済みであるか否かを識別するためのフラグである。ＦＩＭＧ＝１が決定済みを意味し、ＦＩＭＧ＝０が未決定を意味する。変数ＷＢＮＫは、書き込み先バンクおよび非書き込み先バンクを識別するための１ビットの変数である。ＷＢＮＫ＝０であれば、ＪＰＥＧバンク０が書き込み先バンクとなり、ＪＰＥＧバンク１が非書き込み先バンクとなる。また、ＷＢＮＫ＝１であれば、ＪＰＥＧバンク１が書き込み先バンクとなり、ＪＰＥＧバンク０が非書き込み先バンクとなる。なお、変数ＷＢＮＫは１桁の２進数であり、取り得る値は“０”と“１”である。
【００２９】
変数ＣＭＰは、ＪＰＥＧ圧縮率を示す変数である。圧縮命令に含まれる圧縮率情報には、この変数ＣＭＰが記述される。変数ＦＲＥＱは、送信タスクの継続／終了を要求するためのフラグである。ＦＲＥＱ＝０が送信タスクの継続要求を意味し、ＦＲＥＱ＝１が送信タスクの終了要求を意味する。
【００３０】
ステップＳ５では垂直同期信号の発生の有無を判別し、ＹＥＳであればステップＳ７およびＳ９で撮影処理および圧縮処理を行う。ステップＳ７の処理によってドライバ１８に撮影命令が与えられ、１フレームの画像データが図２に示す非圧縮画像エリアに確保される。また、ステップＳ９の処理によってＪＰＥＧコーデック２８に圧縮命令が与えられる。これによって、１フレームのＪＰＥＧデータが図２に示すＪＰＥＧバンク０または１に確保されるとともに、変数ＣＭＰが更新される。
【００３１】
ステップＳ１１では、今回の圧縮処理によって生成されたＪＰＥＧデータのサイズをＪＰＥＧコーデック２８から取得し、かつ取得したサイズを閾値と比較する。そして、サイズ≦閾値であれば、ステップＳ１１でＹＥＳと判断し、ステップＳ１３〜Ｓ１７の処理を実行する。まずステップＳ１３で、変数ＷＢＮＫによって特定されるＪＰＥＧバンクつまり書き込み先バンクに格納されたＪＰＥＧデータを送信要求データとして決定する。ステップＳ１５では書き込み先バンクの指定を変更するべく変数ＷＢＮＫに“１”を加算し、ステップＳ１７では最初に送信すべきＪＰＥＧデータが決定されたことを明らかにするべく変数ＦＩＭＧを“０”に設定する。なお、変数ＷＢＮＫが“１”のときに“１”を加算した場合、変数ＷＢＮＫは１桁の２進数であるため、値は“０”となる。
【００３２】
ステップＳ１１でサイズ＞閾値と判断されると、ステップＳ１９で変数ＦＩＭＧの値を判別する。ここでＦＩＭＧ＝１と判断されたときは、サイズ≦閾値の条件を満たすＪＰＥＧデータが存在せず送信要求データが未だ決定されていないとみなし、ステップＳ５に戻る。一方、ＦＩＭＧ＝０と判断されたときは、サイズ≦閾値の条件を満たすＪＰＥＧデータが存在するとみなし、ステップＳ２１で変数ＢＮＫ＋１によって特定されるＪＰＥＧバンクつまり非書き込み先バンクに格納されたＪＰＥＧデータを送信要求データとして決定する。
【００３３】
ステップＳ２３では、変数ＲＥＡＤＹが示す数値を判別する。変数ＲＥＡＤＹは送信タスクが送信可能状態にあるかどうかを識別するためのフラグである。ＲＥＡＤＹ＝１が送信可能状態を示し、ＲＥＡＤＹ＝０が送信不能状態を示す。このため、ＲＥＡＤＹ＝１のときステップＳ２３からステップＳ２５に進み、変数ＴＲＥＱを“１”に設定する。変数ＴＲＥＱは、送信要求のオン／オフを識別するためのフラグである。ＴＲＥＱ＝１がオン状態を示し、ＴＲＥＱ＝０がオフ状態を示す。ステップＳ２５の処理によって、送信要求がオンされる。
【００３４】
ステップＳ２７では送信終了操作が行われたかどうかを判別する。ここでＮＯと判断されると、ステップＳ５以降の処理を繰り返すが、ＹＥＳと判断されるとステップＳ２９で変数ＦＲＥＱを“１”に設定してから撮影タスクを終了する。
【００３５】
ステップＳ９の圧縮処理は、図６に示すサブルーチンに従う。まずステップＳ３１でＪＰＥＧコーデック２８に向けて圧縮命令を発行する。この圧縮命令に含まれる圧縮率情報には、ステップＳ３または後述するステップＳ３９で決定された変数ＣＭＰが記述され、この圧縮命令に含まれる書き込みアドレス情報には、ステップＳ３またはＳ１５で決定された変数ＷＢＡＮＫに従うＪＰＥＧバンクの先頭アドレスが記述される。これによって、変数ＣＭＰに従う圧縮率で圧縮されたＪＰＥＧデータは、変数ＷＢＡＮＫに従うＪＰＥＧバンクに書き込まれる。
【００３６】
１フレームの圧縮処理が完了すると、ステップＳ３３からステップＳ３５に進み、今回生成されたＪＰＥＧデータのサイズＺｃｒｒｔをＪＰＥＧコーデック２８から取得する。ステップＳ３７では上述の数１に従って最適圧縮率Ｓｕｉｔを算出し、ステップＳ３９では算出された最適圧縮率Ｓｕｉｔを変数ＣＭＰに設定する。ステップＳ３９の処理が完了すると、上階層のルーチンに復帰する。
【００３７】
図７を参照して、送信タスクでは、まずステップＳ４１で変数ＴＲＥＱを“０”に設定し、ステップＳ４３で変数ＲＥＡＤＹを“１”に設定する。ステップＳ４１の処理によって送信要求がオフされ、ステップＳ４３の処理によって現時点の状態が送信可能状態に設定される。ステップＳ４５では変数ＴＲＥＱが“１”であるかどうか判断する。ここでＹＥＳであれば、ステップＳ４７で変数ＲＥＡＤＹおよびＴＲＥＱを“０”に設定し、ステップＳ４９で送信要求データとして決定されたＪＰＥＧデータをＪＰＥＧファイル形式で送信する。ＪＰＥＧファイルは、ＵＳＢデバイスコントローラ３０およびＵＳＢケーブル３２を経て所望の装置に転送される。転送が完了すると、ステップＳ４３に戻る。
【００３８】
なお、ステップＳ４９の処理が実行されている間は別のＪＰＥＧファイルの送信は不可能であるため、変数ＲＥＡＤＹは“０”に設定される。また、ステップＳ４９の処理によって送信要求に応えることとなるため、変数ＴＲＥＱも“０”に設定される。
【００３９】
ステップＳ４５でＮＯと判断されると、ステップＳ５１で変数ＦＲＥＱの状態を判別する。ここでＦＲＥＱ＝０であれば、送信タスクの継続が要求されているとみなしてステップＳ４３に戻るが、ＦＲＥＱ＝１であれば、送信タスクの終了が要求されているとみなして送信タスクを終了する。
【００４０】
以上の説明から分かるように、動画像を形成する各フレームのＪＰＥＧデータは、アイソクロナス転送のような１回の転送量に上限値が設けられた転送方式に従って所望の装置に転送される。ここで、前回転送されたＪＰＥＧデータは、ＳＤＲＡＭ２４によって一時的に保持される。ＣＰＵ２２は、今回転送すべきＪＰＥＧデータのサイズが上限値を上回るか否かを判別する。判別結果が肯定的であれば、ＣＰＵ２２は、今回転送すべきＪＰＥＧデータに代えてＳＤＲＡＭ２４に保持されたＪＰＥＧデータつまり前回転送されたＪＰＥＧデータを転送する。
【００４１】
これによって、所望の装置に転送される静止画像信号のサイズは、必ず上限値以下となる。したがって、所望の装置は、送信された静止画像信号を適切に再現することができる。
【００４２】
また、現フレームの圧縮処理に適用する圧縮率は、前回の圧縮処理に適用された圧縮率と前フレームのＪＰＥＧデータのサイズと目標サイズとに基づいて算出される。これによって、現フレームの画像データは、前フレームの画像データに最適な圧縮率で圧縮される。すると、室内で電灯をオンしたときのように被写界の明るさがパルス状に変化し、これに起因してＪＰＥＧデータのサイズが目標サイズから大きく変化したとしても、このサイズの変化は速やかに収束する。したがって、同じフレームのＪＰＥＧデータが３回以上連続して転送されることはなく、送信先の装置で再生される動画像がフリーズする期間を最小限に抑えることができる。
【００４３】
なお、この実施例では、ＵＳＢケーブルを用いてＪＰＥＧデータを送信するようにしているが、これに代えて無線によってＪＰＥＧデータを送信するようにしてもよい。また、この実施例では、圧縮フォーマットとしてＪＰＥＧフォーマットを採用いているが、これに代えてＪＰＥＧ２０００フォーマットを採用してもよい。
【００４４】
さらに、この実施例では、監視用ディジタルカメラを用いて説明しているが、この発明は民生用ディジタルカメラにも適用できる。この場合、送信開始操作に先立って撮影された被写界のスルー画像は映像モニタに表示される。また、シャッタボタンが操作されたときは、その時点の静止画像が記録媒体に記録される。
【図面の簡単な説明】
【図１】この発明の一実施例を示すブロック図である。
【図２】図１実施例に適用されるＳＤＲＡＭのマッピング状態の一例を示す図解図である。
【図３】アイソクロナス転送の動作の一例を示すタイミング図である。
【図４】図１実施例の動作の一部を示すフロー図である。
【図５】図１実施例の動作の他の一部を示すフロー図である。
【図６】図１実施例の動作のその他の一部を示すフロー図である。
【図７】図１実施例の動作のさらにその他の一部を示すフロー図である。
【符号の説明】
１０…ディジタルカメラ
１２…イメージセンサ
１６…信号処理回路
２２…ＣＰＵ
２４…ＳＤＲＡＭ
２８…ＪＰＥＧコーデック
３０…ＵＳＢデバイスコントローラ
３２…ＵＳＢケーブル
【図１】
2004349947.tif 000003
【図２】
2004349947.tif 000004
【図３】
2004349947.tif 000005
【図４】
2004349947.tif 000006
【図５】
2004349947.tif 000007
【図６】
2004349947.tif 000008
【図７】
2004349947.tif 000009