IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7475380撮像装置、デバイス、それらの制御方法及びプログラム
<>
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図1
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図2
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図3
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図4
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図5
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図6
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図7
  • 特許-撮像装置、デバイス、それらの制御方法及びプログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-18
(45)【発行日】2024-04-26
(54)【発明の名称】撮像装置、デバイス、それらの制御方法及びプログラム
(51)【国際特許分類】
   H04N 23/66 20230101AFI20240419BHJP
   H04N 23/60 20230101ALI20240419BHJP
   H04N 5/77 20060101ALI20240419BHJP
【FI】
H04N23/66
H04N23/60 300
H04N5/77
【請求項の数】 20
(21)【出願番号】P 2022013587
(22)【出願日】2022-01-31
(65)【公開番号】P2023111645
(43)【公開日】2023-08-10
【審査請求日】2022-12-15
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】福永 健太朗
【審査官】藏田 敦之
(56)【参考文献】
【文献】特開2000-253108(JP,A)
【文献】特開2008-287578(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/66
H04N 23/60
G06K 17/00
G06K 19/00 - 19/18
H04N 5/76 - 5/956
(57)【特許請求の範囲】
【請求項1】
デバイスを着脱可能な装着機構を有する撮像装置であって、
前記デバイスが解析処理を実行するためのクロック供給用の第1のコマンドを生成する生成手段と、
前記装着機構に、前記解析処理を実行する機能を有するデバイスが装着されている場合に、前記デバイスに対して画像を送信し、前記画像に対する前記解析処理の実行指示を送信し、前記実行指示に従って得られた処理結果を受信する通信手段を備え、
前記通信手段は、前記実行指示を送信した後、少なくとも前記デバイスにおいて前記画像の前記解析処理が終了するまでの間、前記第1のコマンドを送信する、撮像装置。
【請求項2】
前記生成手段は、前記解析処理を終了するために必要なクロック数が前記撮像装置から前記デバイスに対して提供されるように前記第1のコマンドを生成する、請求項1に記載の撮像装置。
【請求項3】
前記第1のコマンドは、前記デバイスからデータをリードするためのコマンド、又は、前記デバイスにステータスの返答を要求するコマンドである、請求項1又は2に記載の撮像装置。
【請求項4】
前記デバイスから、前記第1のコマンドに対する返答において、前記デバイスにおける前記解析処理の終了を示す情報を受信した場合に、前記通信手段は前記第1のコマンドの発行を停止し、前記解析処理の処理結果の要求を前記デバイスに送信する、請求項1から3のいずれか1項に記載の撮像装置。
【請求項5】
前記通信手段は、所定の時間間隔をおいて、前記デバイスが前記撮像装置から受信したクロック数をカウントしたカウント値を前記デバイスから受信し、
前記通信手段による前記第1のコマンドの送信は、受信した前記カウント値に所定の変化がない場合に行う、請求項1から4のいずれか1項に記載の撮像装置。
【請求項6】
前記受信した前記カウント値に所定の変化がある場合、前記通信手段は前記実行指示を送信した後、前記第1のコマンドの送信を行わず、前記処理結果の送信を要求する、請求項5に記載の撮像装置。
【請求項7】
前記通信手段は、前記デバイスが前記解析処理を実行していない期間において前記カウント値を前記所定の時間間隔をおいて前記デバイスから受信する、請求項5又は6に記載の撮像装置。
【請求項8】
前記所定の変化がある場合は、前記受信したカウント値の間で、前記カウント値を取得するためのコマンド通信に対応するクロック数よりも大きいクロック数の変化が発生している場合を含む、請求項5から7のいずれか1項に記載の撮像装置。
【請求項9】
前記デバイスから取得した前記処理結果を処理する制御手段を更に備え、
前記制御手段は、前記デバイスにおける画像の処理結果に基づき、前記第1のコマンドを送信するか否かを決定する、請求項1から4のいずれか1項に記載の撮像装置。
【請求項10】
前記制御手段は、前記実行指示を送信した後、所定時間の後の前記処理結果について、所定の処理結果が得られていない場合に、前記第1のコマンドを送信すると決定する、請求項9に記載の撮像装置。
【請求項11】
前記所定の処理結果は、前記解析処理が完了したことを示す処理結果、又は、前記解析処理が継続中であることを示す処理結果である、請求項10に記載の撮像装置。
【請求項12】
前記制御手段は、前記実行指示を送信した後、所定時間の後の前記処理結果が所定の値を含む場合に、前記第1のコマンドを送信すると決定する、請求項9に記載の撮像装置。
【請求項13】
前記処理結果が、前記解析処理の結果が予め判明している第1の画像の処理結果である場合に、
前記制御手段は、前記処理結果が前記予め判明している前記解析処理の結果と一致しない場合に、前記第1のコマンドを送信すると決定する、請求項9に記載の撮像装置。
【請求項14】
前記装着機構はSDカードスロットを含み、
前記デバイスはSDカードの態様のデバイスである、請求項1から13のいずれか1項に記載の撮像装置。
【請求項15】
請求項1から13のいずれか1項に記載の撮像装置に着脱可能に構成されたデバイスであって、
前記撮像装置の装着機構に装着されている場合に、
前記撮像装置と通信する通信手段と、
前記通信手段を介して前記撮像装置から受信した画像を解析処理する処理手段と
前記撮像装置から受信したクロック数をカウントするカウント手段と
を備え、
前記通信手段は、前記解析処理を実行している間に当該解析処理を実行するためのクロック供給用の第1のコマンドを受信している場合、前記解析処理の終了に応じて、前記第1のコマンドに対する返答において前記解析処理の終了を示す情報を送信し、
前記通信手段は、前記撮像装置からの要求に応じて、前記カウント手段がカウントしたクロック数のカウント値を前記撮像装置に送信する、デバイス。
【請求項16】
前記デバイスは、SDカードの態様のデバイスである、請求項15記載のデバイス。
【請求項17】
デバイスを着脱可能な装着機構を有する撮像装置の制御方法であって、
生成手段が、前記デバイスが解析処理を実行するためのクロック供給用の第1のコマンドを生成する生成工程と、
前記装着機構に、前記解析処理を実行する機能を有するデバイスが装着されている場合に、通信手段が、
前記デバイスに対して画像を送信する工程と、
前記画像に対する前記解析処理の実行指示を送信する工程と、
前記実行指示を送信した後、少なくとも前記デバイスにおいて前記画像の前記解析処理が終了するまでの間、前記第1のコマンドを送信する工程と、
前記実行指示に従って得られた処理結果を受信する工程と
を含む、撮像装置の制御方法。
【請求項18】
請求項1から13のいずれか1項に記載の撮像装置に着脱可能に構成されたデバイスの制御方法であって、
前記撮像装置の装着機構に装着されている場合に、
通信手段が、前記撮像装置と通信する工程と、
処理手段が、前記通信する工程において前記撮像装置から受信した画像を解析処理する工程と
カウント手段が、前記撮像装置から受信したクロック数をカウントする工程と
を含み、
前記通信手段が、
前記解析処理の実行している間に当該解析処理を実行するためのクロック供給用の第1のコマンドを受信する工程と、
前記解析処理の終了に応じて、前記第1のコマンドに対する返答において前記解析処理の終了を示す情報を送信する工程と
前記撮像装置からの要求に応じて、前記カウント手段がカウントしたクロック数のカウント値を前記撮像装置に送信する工程と
を更に含む、デバイスの制御方法。
【請求項19】
コンピュータを請求項1から14のいずれか1項に記載の撮像装置の各手段として機能させるためのプログラム。
【請求項20】
コンピュータを請求項15または16に記載のデバイスの各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像装置、デバイス、それらの制御方法及びプログラムに関する。
【背景技術】
【0002】
近年、様々なシーンにおいて、監視カメラにより撮像された画像を用いて、物体の検出や追尾、属性の推定等を行う画像解析、そのような画像解析の結果に基づく物体数の推定等の画像処理が行われている。従来、このような画像処理は、実際の画像処理を実行するPCやサーバ等の高性能な演算装置に監視カメラの映像が転送されることによって行われてきた。これに対し、近年のモバイル用演算装置の処理能力の向上に伴い、監視カメラ側で画像処理を行うことが可能となってきている。監視カメラ(撮像装置)側での処理は、例えば、監視カメラ本体に配置された演算装置によって実行されうる。また、演算装置が配置されたUSB等の着脱可能デバイスを監視カメラに装着することによって、その着脱可能デバイスが監視カメラ側で行う処理の少なくとも一部を実行することもできる。
【0003】
着脱可能デバイスによっては、着脱可能デバイスが装着された装置から供給される電源、クロックを用いて画像処理動作を行うものがある。しかしながら、着脱可能デバイスが装着されるPCやカメラなどの装置の中には、バッテリ電源で動作する装置もあり、係るバッテリ駆動の装置は一般的に省電力のため、着脱可能デバイスとの通信を行っていない間はデバイスの電源やクロックの供給が停止する機能が備わっている。しかし、クロック供給を停止されてしまうと、着脱可能デバイス上での画像処理を正常に実行することができない。これに対し特許文献1には、供給クロックが停止した際に自走用クロックでの動作に切り替える技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2006-287736号公報
【非特許文献】
【0005】
【文献】J.Redmon、A.Farhadi、「YOLO9000:Better Faster Stronger」、Computer Vision and Pattern Recognition(CVPR) 2016
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に開示の技術では、着脱デバイス側にクロックが止められたことを検知するための回路の追加や自走用クロックで動作に切るかえるための構成が必要となり、回路規模が大きくなってしまう。
【0007】
そこで本発明は、着脱可能デバイスの回路規模の増大を招くことなく、クロック供給が停止される場合でも着脱可能デバイス上での画像処理を継続可能な状態に復帰可能とする、着脱可能デバイスが装着可能な撮像装置等を提供する。
【課題を解決するための手段】
【0008】
上記課題を解決するための発明は、デバイスを着脱可能な装着機構を有する撮像装置であって、
前記デバイスが解析処理を実行するためのクロック供給用の第1のコマンドを生成する生成手段と、
前記装着機構に、前記解析処理を実行する機能を有するデバイスが装着されている場合に、前記デバイスに対して画像を送信し、前記画像に対する前記解析処理の実行指示を送信し、前記実行指示に従って得られた処理結果を受信する通信手段を備え、
前記通信手段は、前記実行指示を送信した後、少なくとも前記デバイスにおいて前記画像の前記解析処理が終了するまでの間、前記第1のコマンドを送信する。
【発明の効果】
【0009】
本発明によれば、着脱可能デバイスの回路規模の増大を招くことなく、クロック供給が停止される場合でも着脱可能デバイス上での画像処理を継続可能な状態に復帰可能とする、着脱可能デバイスが装着可能な撮像装置等を提供することができる。
【図面の簡単な説明】
【0010】
図1】実施形態に対応するシステム構成の一例を示す図。
図2】実施形態に対応する撮像装置のハードウェア構成の一例を示す図。
図3】実施形態に対応する撮像装置の機能構成の一例を示す図。
図4】実施形態に対応する着脱可能デバイスのハードウェア構成の一例を示す図。
図5】実施形態に対応する着脱可能デバイスの機能構成の一例を示す図。
図6】実施形態に対応する処理の一例を示すフローチャート。
図7】実施形態に対応するクロック供給の有無を判定する処理の一例を示すフローチャート。
図8】実施形態に対応するクロック供給の有無を判定する処理の他の一例を示すフローチャート。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
(実施形態1)
<システム構成>
図1に、本実施形態の画像処理システムの構成例を示す。画像処理システムは、例えば、複数の撮像装置110から入力されたそれぞれの撮像画像を解析して特定人物を追跡するシステムとして構築することができる。ただし、実施形態はこれに限られず、画像を解析して所定の情報出力を行う任意のシステムとして構築できる。本システムは、撮像装置110a~110dと、ネットワーク120と、入出力装置130とを含んで構成される。撮像装置110a~110dは、それぞれ、例えば撮像した画像を記録可能なデバイスを着脱可能なスロットを有する。各スロットには着脱可能デバイス100a~100dが挿入され、これにより着脱可能デバイス100a~100dと接続される。これ以降、着脱可能デバイス100a~100dを総称して「着脱可能デバイス100」と表記し、撮像装置110a~110dを総称して「撮像装置110」と表記することがある。以下、システムを構成する各装置について説明する。
【0013】
着脱可能デバイス100は、撮像装置110に対して着脱可能に構成された演算デバイスである。着脱可能デバイス100は、一例として、撮像装置110で撮像された画像を記憶可能に構成された不揮発性の半導体記憶装置(例えば、SDカード)に所定の処理回路を搭載したデバイスとして構成することができる。多くの既存のネットワークカメラなどの撮像装置110には、SDカードスロットが用意されているため、着脱可能デバイス100を接続することで、既存の撮像装置110に対して拡張機能を提供することができる。着脱可能デバイス100は、例えば、SDカードの態様によって、撮像装置110にその全体が挿入可能に構成され、これにより、撮像装置110から突出する部分がない状態で撮像装置110と接続可能に構成することができる。
【0014】
また、着脱可能デバイス100は、SDカードの態様以外に、少なくともその撮像装置110で撮像された画像を記憶可能な記憶装置が装着される際に使用される任意のインタフェースで、撮像装置110に装着されるように構成されてもよい。例えば、着脱可能デバイス100は、USB(ユニバーサリシリアルバス)インタフェースを有し、撮像装置110のUSBソケットに装着されるように構成されてもよい。更に、着脱可能デバイス100に搭載される所定の処理回路は、例えば、所定の処理を実行するようにプログラムされたFPGA(フィールドプログラマブルゲートアレイ)によって実装できるが、それ以外の形式で実装されてもよい。
【0015】
撮像装置110は、ネットワークカメラ等の撮像装置であり、ネットワーク120を介して入出力装置130に撮像した画像を提供することができる。本実施形態では、撮像装置110は、撮像画像を処理することのできる演算装置を内蔵するものとするが、これに限られない。例えば、撮像装置110に接続されたPC(パーソナルコンピュータ)等の外部コンピュータが存在してもよく、これらの組み合わせを、撮像装置110として扱ってもよい。また、本実施形態では、全ての撮像装置110に、着脱可能デバイス100が装着されているものとする。図1では、4つの撮像装置110と、それぞれに装着された着脱可能デバイスとが示されているが、これらの装置の組み合わせの数は3つ以下であってもよいし、5つ以上であってもよい。
【0016】
撮像装置110に画像解析等の画像解析処理機能を有する着脱可能デバイス100が装着されることにより、撮像装置110が画像解析等の画像解析処理機能を有しなくても、撮像装置110側で画像解析等を実行することが可能となる。解析処理の具体例は後述する。また、本実施形態のように撮像装置110に画像処理用の演算装置が配置された形態では、演算装置が配置された着脱可能デバイス100を撮像装置110に装着することにより、撮像装置110自体の演算装置と共に着脱可能デバイス100の演算装置を利用することが可能となり、撮像装置110側で実行可能な画像処理を多様化・高度化することができる。
【0017】
入出力装置130は、本システムのユーザからの入力の受け付けや、ユーザへの情報の出力(例えば情報の表示)を行う装置である。本実施形態では、例えば入出力装置130は、PC等のコンピュータとすることができ、そのコンピュータにインストールされたブラウザやネイティブアプリケーションが内蔵されたプロセッサによって実行されることで、情報の入出力が行われる。撮像装置110と入出力装置130は、ネットワーク120を介して通信可能に接続される。ネットワーク120は、例えばEthernet(登録商標)等の通信規格を満たす複数のルータ、スイッチ、ケーブル等を含んで構成される。本実施形態では、ネットワーク120は、撮像装置110と入出力装置130との間の通信を可能とする任意のネットワークであってよく、任意の規模や構成、準拠する通信規格によって構築されうる。例えば、ネットワーク120は、インターネットや有線LAN(Local Area Network)、無線LAN、WAN(Wide Area Network)等でありうる。また、ネットワーク120は、例えば、ONVIF(Open Network Video Interface Forum)規格に準拠した通信プロトコルでの通信が可能なように構成されうる。ただし、これに限られず、ネットワーク120は、例えば、独自の通信プロトコル等の他の通信プロトコルでの通信が可能なように構成されてもよい。
【0018】
<装置構成>
(撮像装置の構成)
続いて、図2を参照して撮像装置110の構成例について説明する。図2は、撮像装置110のハードウェア構成例を示す図である。撮像装置110は、そのハードウェア構成として、例えば、撮像部201、画像処理部202、演算処理部203、配信部204、SD I/F部205を含む。I/Fは、インタフェースの略語である。
【0019】
撮像部201は、例えば、光を結像するためのレンズ部と、結像された光に応じたアナログ信号変換する撮像素子とを含んで構成される。レンズ部は、画角を調整するズーム機能や、光量の調整を行う絞り機能などを有する。撮像素子は、光をアナログ信号に変換する際の感度調整を行うゲイン機能を有する。これらの機能は、画像処理部202から通知された設定値に基づいて調整される。撮像部201によって取得されたアナログ信号は、アナログ-デジタル変換回路によってデジタル信号に変換され、画像信号として画像処理部202へ転送される。
【0020】
画像処理部202は、画像処理エンジンと、その周辺デバイス等を含んで構成される。周辺デバイスは、例えば、RAM(Random Access Memory)や、各I/Fのドライバ等を含む。画像処理部202では、撮像部201から取得した画像信号に対して、例えば、現像処理、フィルタ処理、センサ補正、ノイズ除去等の、画像処理を施して画像データを生成する。また、画像処理部202は、レンズ部や撮像素子へ設定値を送信し、適切露出画像を取得できるように、露出調整を実行しうる。画像処理部202において生成された画像データは、演算処理部203へ転送される。
【0021】
演算処理部203は、CPUやMPU等の1つ以上のプロセッサ、RAMやROM等のメモリ、各I/Fのドライバなどから構成される。なお、CPUはCentral Processing Unitの、MPUはMicro Processing Unitの、ROMはリード Only Memoryの、頭字語である。演算処理部203では、撮像装置110の動作に必要な制御・演算等の各種処理を実行する。また、一例において、上述のシステムにおいて実行されるべき処理の各部分を撮像装置110と着脱可能デバイス100とのいずれが実行するかの分担を決定し、その決定した分担に対応する処理を実行しうる。この処理内容や処理の分担の詳細に関しては後述する。画像処理部202から受け取った画像は、配信部204、又は、SD I/F部205へ転送される。また、処理結果のデータも配信部204へ転送される。
【0022】
配信部204は、ネットワーク配信エンジンと、例えば、RAMやETH PHYモジュールなどの周辺デバイス等を含んで構成される。ETH PHYモジュールは、Ethernetの物理(PHY)レイヤの処理を実行するモジュールである。配信部204は、演算処理部203から取得した画像データや処理結果のデータを、ネットワーク120へ配信可能な形式に変換して、変換後のデータをネットワーク120へ出力する。
【0023】
SD I/F部205は、着脱可能デバイス100と接続するためのインタフェース部分で、例えば、電源と、着脱可能デバイス100を着脱するための、着脱ソケット等の装着機構を含んで構成される。ここでは、SD I/F部205が、SD Associationにより策定されたSD規格に従って構成されるものとする。演算処理部203から取得された画像の着脱可能デバイス100への転送や、着脱可能デバイス100からのデータの取得等の、着脱可能デバイス100と撮像装置110との間での通信は、SD I/F部205を通じて行われる。
【0024】
次に図3を参照して、撮像装置110の機能構成例を説明する。撮像装置110は、その機能として、例えば、撮像制御部301、信号処理部302、記憶部303、制御部304、解析部305、デバイス通信部306、及び、ネットワーク通信部307を含む。
【0025】
撮像制御部301は演算処理部203におけるCPUやMPU等の1つ以上のプロセッサに対応し、撮像部201を介して周囲の環境を撮像するようにする制御を実行する。信号処理部302は画像処理部202に対応し、撮像制御部301によって撮像された画像に対して所定の処理を施して、撮像画像のデータを生成する。以下では、この撮像画像のデータを単に「撮像画像」と呼ぶ。信号処理部302は、例えば、撮像制御部301によって撮像された画像を符号化する。信号処理部302は、静止画像に対して、例えば、JPEG(Joint Photographic Experts Group)等の符号化方式を用いて符号化を行う。また、信号処理部302は、動画像に対して、H.264/MPEG-4 AVC(以下では「H.264」と呼ぶ。)、HEVC(High Efficiency Video Coding)等の符号化方式を用いて符号化を行う。また、信号処理部302は、予め設定された複数の符号化方式の中から、例えば撮像装置110の不図示の操作部を介して、ユーザにより選択された符号化方式を用いて、画像を符号化してもよい。
【0026】
記憶部303は画像処理部202や演算処理部203等に含まれる各種記憶装置に対応し、解析部305において実行可能な解析処理のリストと、解析処理の結果に対する後処理のリストとを記憶する。なお、本実施形態では、実行される画像処理が解析処理であるが、任意の処理が実行されてもよく、記憶部303は、その実行される処理に関連する処理について、解析処理のリストと後処理のリストとを記憶する。
【0027】
制御部304は演算処理部203におけるCPUやMPU等の1つ以上のプロセッサに対応し、信号処理部302、記憶部303、解析部305、デバイス通信部306、ネットワーク通信部307を、それぞれが所定の処理を実行するように制御する。解析部305は演算処理部203におけるCPUやMPU等の1つ以上のプロセッサに対応し、撮像画像に対して実行する画像処理を、後述する解析前処理、解析処理、解析後処理の少なくともいずれかから選択して実行する。解析前処理は、後述の解析処理を実行する前に、撮像画像に対して実行する画像処理である。本実施形態の解析前処理では、一例として、撮像画像を分割して分割画像を作成する処理が実行されるものとする。解析処理は、入力された画像を解析して得られる情報を出力する画像処理である。
【0028】
本実施形態の解析処理では、一例として、解析前処理によって得られた分割画像を入力として、人体検出処理、顔検出処理、車両検出処理の少なくともいずれかを実行し、解析処理結果を出力する処理が実行されるものとする。解析処理は、例えば非特許文献1の技術によって、画像に含まれるオブジェクトを検出できるように学習が行われた機械学習モデルを用いて、分割画像中のオブジェクトの位置を出力するように構成された画像処理でありうる。解析後処理は、解析処理が実行された後に実行される画像処理である。すなわち、画像処理には、所定の物体を検出するための特徴抽出が可能な学習済みニューラルネットワークを用いた解析処理を含む。本実施形態の解析後処理では、一例として、各分割画像に対する解析処理結果に基づいて、各分割画像において検出されたオブジェクトの数を合計した値を処理結果として出力する画像処理が実行されるものとする。なお、解析処理は、パターンマッチングを行って画像中のオブジェクトを検出し、その位置を出力する処理であってもよい。
【0029】
デバイス通信部306はSD I/F部205と対応し、着脱可能デバイス100との通信を行うと共に、着脱可能デバイス100に対して、後述する演算処理用クロックを生成するためのクロック供給を行う。デバイス通信部306は、入力されたデータを着脱可能デバイス100が処理可能な形式に変換し、その変換によって得られたデータを着脱可能デバイス100に送信する。また、デバイス通信部306は、着脱可能デバイス100からデータを受信し、受信したデータを撮像装置110が処理可能な形式に変換する。本実施形態では、デバイス通信部306は、変換処理として、小数を浮動小数点形式と固定小数点形式との間で変換する処理を実行するものとするが、これに限られず、他の処理がデバイス通信部306によって実行されてもよい。また、本実施形態では、デバイス通信部306は、着脱可能デバイス100に対してSD規格の範囲内で事前に定められた要求(或いは、命令、コマンドシーケンス)を送信し、着脱可能デバイス100からの応答を受信することで、着脱可能デバイス100との通信を行うものとする。ネットワーク通信部307は配信部204に対応し、ネットワーク120を介して、入出力装置130との通信を行う。
【0030】
(着脱可能デバイスの構成)
次に図4を参照して、着脱可能デバイス100のハードウェア構成例を説明する。着脱可能デバイス100は、一例として、I/F部401、FPGA402、SDコントローラ403、及び、を含んで構成される。着脱可能デバイス100は、撮像装置110が有するSD I/F部205の着脱ソケットに挿抜できる形状で、すなわちSD規格に則った形状で成形されるものとする。
【0031】
I/F部401は、撮像装置110等の装置と着脱可能デバイス100とを接続するためのインタフェース部分である。I/F部401は、例えば、撮像装置110から電源の供給を受け、着脱可能デバイス100内で使用する電源を生成し分配する、電気的な接点端子等を含んで構成される。I/F部401は、撮像装置110のSD I/F部205と同様に、SD規格内で定義(準拠)されている項目に関しては、それに従うものとする。撮像装置110からの画像や設定データの受け取り、FPGA402から撮像装置110へのデータの送信は、I/F部401を介して実行される。
【0032】
FPGA402は、入出力制御部410、処理切替部411、演算処理部412を含んで構成される。FPGA402は、内部の論理回路構造を繰り返し再構成できる半導体デバイスの一種である。FPGA402が実現する処理により、着脱可能デバイス100が装着された装置に、処理機能を追加(提供)することができる。また、FPGA402の再構成機能により、後から論理回路構造を変更することができるため、例えば技術の進歩の早い分野の装置に着脱可能デバイス100を装着することにより、その装置において適時に適切な処理を実行することが可能となる。
【0033】
本実施形態では、FPGAが用いられる例について説明するが、後述する処理を実現可能な限りにおいて、例えば、汎用のASICや専用のLSIが用いられてもよい。FPGA402は、生成される論理回路構造の情報を含んだ設定データが専用のI/Fから書き込まれることにより、又は、その設定データがその専用のI/Fから読み出されることによって、起動される。本実施形態では、この設定データが記憶部404に保持されているものとする。FPGA402は、電源が投入されると、記憶部404から設定データを読み出し、論理回路を生成して起動する。ただし、これに限られず、例えば、着脱可能デバイス内に専用の回路を実装することにより、I/F部401を介して、撮像装置110がFPGA402に設定データを書き込んでもよい。
【0034】
入出力制御部410は、撮像装置110との間で画像を送受信するための回路、撮像装置110から受信したコマンドを解析する回路、解析した結果に基づいて制御を行う回路、等を含んで構成される。ここでのコマンドは、SD規格に定義されているものであり、入出力制御部410は、それらのうちのいくつかを検出することができる。機能の詳細に関しては後述する。入出力制御部410は、記憶処理の場合はSDコントローラ403へ画像を送信し、画像解析処理の場合は演算処理部412へ画像を送信するように制御を行う。また、入出力制御部410は、処理の切り替えの設定データを受け取った場合は、処理切替部411へ設定データを送信する。
【0035】
処理切替部411は、撮像装置110から受け取った設定データに基づいて、記憶部404から画像処理機能の情報を取得し、演算処理部412に書き込むための回路を含んで構成される。画像処理機能の情報は、例えば、演算処理部412内で処理される演算の順序や種類、演算の係数などを示す設定パラメータである。演算処理部412は、画像解析等の画像処理機能を実行するために必要な複数の演算回路を含んで構成される。演算処理部412は、処理切替部411から受け取った画像処理機能の情報に基づいて、各演算処理を実行して、その処理結果を撮像装置110へ送信し、及び/又は、その処理結果を記憶部404に記録する。
【0036】
FPGA402は、事前に保持された複数の処理機能に対応する設定データに含まれる、実行対象の処理機能の設定データを抽出して、その抽出した設定データに基づいて演算処理部412によって実行される処理内容を書き換える。これにより、着脱可能デバイス100が、その複数の処理機能のうちの少なくともいずれかを選択的に実行することができる。また、新規に追加する処理の設定データを随時追加することにより、撮像装置110側で最新の処理を実行させることができる。なお、以下では、複数の処理機能のそれぞれに対応する複数の設定データを有していることを、複数の処理機能を有すると表現する。すなわち、着脱可能デバイス100のFPGA402が1つの処理機能を実行するように構成されている状態であっても、他の処理機能のための設定データにより演算処理部412の処理内容を変更することができる場合、複数の処理機能を有する、と表現する。クロックカウンタ413については、実施形態2において詳述する。
【0037】
SDコントローラ403は、SD規格に定義されているような公知のコントロールIC(集積回路)であり、SDプロトコルのスレーブ動作の制御と、記憶部404に対するデータの読み書きの制御とを実行する。記憶部404は、例えばNAND型フラッシュメモリによって構成され、例えば、撮像装置110から書き込まれた記憶データ、演算処理部412に書き込まれる画像解析処理機能の情報、FPGA402の設定データ、解析用の回路データ等の各種情報を記憶する。
【0038】
次に、図5を参照して着脱可能デバイス100の機能構成例を説明する。着脱可能デバイス100は、その機能構成として、例えば、解析部501、通信部502、及び記憶部503を含む。解析部501は、画像に対する解析処理を含む種々の画像処理(演算処理)を実行する。解析部501はFPGA402に対応し、例えば、撮像装置110から解析処理の設定要求が入力された場合に、解析処理を実行可能な状態にするための設定を行う。当該解析処理の設定要求は、実行可能とする解析処理の種別を指定する情報を含むことができ、解析部501は設定要求で指定された種類の解析処理を実行可能にするための設定を行う。また、解析部501は、画像が入力された場合、入力画像に対して、実行可能な状態に設定された解析処理を実行する。通信部502は、I/F部401に対応し、撮像装置110との通信を行う。記憶部503は、SDコントローラ403及び記憶部404に対応し、撮像装置110から受信した画像データを記憶すると共に、解析部501における画像処理のワークエリアとして利用される。本実施形態において、記憶部503には、解析部501における解析処理の結果が、処理の途中であっても随時保存されるように構成されている。
【0039】
本実施形態では、実行可能な解析処理の種別として、人体検出処理と顔検出処理とがあるが、実行可能な解析処理の例はこれらに限られない。例えば、事前に記憶部503に記憶された被写体(人物、車両、物等)が入力画像に含まれるか否かを判定する処理であってもよい。具体的には、事前に記憶された人物の画像特徴量と、入力画像から検出された人物の画像特徴量との一致度合いが算出され、一致度合いが閾値以上の場合に事前に記憶された人物であると判定することができる。また、プライバシー保護を目的として入力画像から検出された人物、物体、領域等に対して、所定のマスク画像を重畳したり、モザイク処理を施したりする処理であってもよい。また、人物の特定の行動を機械学習によって学習した学習モデルを用いて、画像中の人物が特定の行動を行っているかを検出する処理であってもよい。さらには、画像中の領域がどのような領域なのかを判定する処理であってもよい。例えば、建物や道路、人物、空等を機械学習によって学習した学習モデルを用いて、画像中の領域がどのような領域なのかを判定する処理であってもよい。
【0040】
以上のように、実行可能な解析処理は、機械学習を用いた画像解析処理にも、機械学習を用いない画像解析処理にも応用可能である。また、上記の各解析処理は、着脱可能デバイス100が単独で行うのではなく、撮像装置110と協働して実行してもよい。
【0041】
<クロック供給を停止させない処理シーケンスの説明>
本実施形態において、着脱可能デバイス100内の演算処理部412は、撮像装置110からのクロック供給により処理を実行可能であり、クロック供給が停止されてしまうと処理が終了しない状態となる。そのため、撮像装置110は着脱可能デバイス100が処理を実行している間、クロックを供給し続ける必要がある。しかしながら、撮像装置110に追加するソフトウェアによる制御のみで着脱可能デバイス100を制御しようとした場合、撮像装置110のI/F401を制御している既存のファームウエアからは着脱可能デバイスが画像処理を行っているかどうかを把握できない。そのため、I/F401での通信がない場合に、撮像装置110によっては省電力モード等に移行し、解析処理用に使用しているクロック供給を止められてしまう可能性がある。
【0042】
そこで、本実施形態では、着脱可能デバイス100における画像処理が停止しないよう、撮像装置110は解析処理の実行指示を行った後も、クロック供給を維持するように動作する。以下、本実施形態に対応する処理の詳細を説明する。まず、図6を参照して、画像処理に要するクロック供給を停止させないための、撮像装置110と着脱可能デバイス100との間で実行される処理の一例を説明する。該フローチャートに対応する処理は、例えば、撮像装置110側においては、制御部304として機能する1以上のプロセッサ(CPUやMPU等)が対応するプログラム(記憶部303として機能するメモリ等に格納)を実行することにより実現できる。また、着脱可能デバイス100側においては、対応する設定データを記憶部404から読み出し論理回路を生成して起動することによりFPGA402により実現できる。
【0043】
まず、S601において撮像装置110の制御部304はデバイス通信部306を介して、着脱可能デバイス100に解析処理の対象となる撮像画像を送信する。S611において、着脱可能デバイス100の通信部502は画像を受信する。続くS602で撮像装置110は送信した撮像画像に対して解析処理等の画像処理を開始するよう、制御部304はデバイス通信部306を介し、処理の実行指示を命令する実行指示コマンドを発行する。着脱可能デバイス100の解析部501は、実行指示コマンドを受信すると、S612において解析処理を開始する。次にS603で撮像装置110の制御部304はデバイス通信部306を介して、クロック供給用のコマンド(以下、ダミーコマンド、或いは、第1のコマンド)を発行する。着脱可能デバイス100の通信部502は、S613においてダミーコマンドを受信する。
【0044】
SD I/Fではプロトコル上、通信中はクロックを供給し続けるので、ダミーコマンドを発行し続けることによって撮像装置110から着脱可能デバイス100に対してクロックが供給され続けることになる。着脱可能デバイス100はコマンド・データの通信時に供給されるクロックによって解析処理を行う。着脱可能デバイス100が解析終了までに必要なクロックに関しては前述のように着脱可能デバイス100の記憶部403に持たせておき、撮像装置110は解析の開始前に読み出すようにしてもよい。撮像装置110側は解析終了までに必要なクロック数を把握することでダミーコマンドを発行する期間、処理結果(解析結果)を要求するタイミングを決定することができる。着脱可能デバイス100の解析部501は撮像装置110から受信したクロック数をカウントしており、S614において、着脱可能デバイス100の解析部501が解析処理に必要なクロック数を撮像装置110から受け取った時点で解析処理を終了する。これにより解析部501において正常な解析結果を出力できる状態となる。撮像装置110側では、解析処理に必要なクロック数が少なくとも出力されるようにダミーコマンドを発行した後、S604で制御部304はデバイス通信部306を介して、解析処理の処理結果を要求する出力要求コマンドを発行し、S615において着脱可能デバイス100は出力要求コマンドを受信すると、S616において処理結果を撮像装置110に送信する。S605で撮像装置110は処理結果を受信する。
【0045】
以上のシーケンス処理を行うことにより、通信が発生しないときにクロックの供給を止める装置に着脱可能デバイスが装着された場合であっても、着脱可能デバイス100側で解析処理が継続している期間において、撮像装置110からダミーコマンドを発行することによりクロック供給を継続することができるので、解析部501へのクロック供給が継続され解析処理を正常に終了することできる。
【0046】
<ダミーコマンドについて>
本実施形態におけるダミーコマンドは、SD I/Fを使用する場合、データのリードコマンドでも良いし、データのやりとりを伴わないステータス返答を求めるコマンドでもよい。SD I/Fでは、データの通信を伴う場合、コマンドに関してはコマンドラインで、データに関してはデータラインで、それぞれ通信される。このとき通信されるデータは、ダミーのデータでよい。一方、データ通信はなくステータス返答のみを求める通信の場合、コマンドは同様にコマンドラインで通信されるが、データを伴わないためデータラインは使用されない。リードコマンドを使用する場合には、あらかじめ、リードするデータブロック数をデータ出力するのに要するクロック数と、解析処理に要するクロック数(処理時間)が同等になるようにブロック数を設定するようにしてもよい。例えば、解析処理に10万クロック要する場合について考えると次のようになる。1ブロック当たり512Byteのデータをリードするので、データラインが4Bitの設定でデータをリードすると、1ブロック当たり1024クロックが供給される。そのため、100ブロック程度のブロック数を設定すれば、10万クロック要する解析処理が終了することになる。ただし、実際にはブロック毎にコマンド通信が行われるため、このクロック数も加味するのが好ましい。
【0047】
上述の図6の処理においてリードコマンドを使用する場合、着脱可能デバイス100側では解析処理が終了したS614のタイミングで解析が終了したことを示すユニークなデータ或いは識別子をリードデータブロック内に埋め込み返送するようにしてもよい。また、ステータス返答を求めるコマンドを使用する場合、データのやりとりが発生しないため、レスポンスの引数に解析終了したことを示す所定のデータや識別子を埋め込むようにしてもよい。これにより、撮像装置110側では、リードデータブロック内のユニークデータ、或いは、レスポンスの引数における所定の識別子等を判別して、着脱可能デバイス100側での処理が終了したと判定することができ、S604の処理に進むことができる。このように、リードデータもしくはレスポンスに埋め込まれた解析終了を示すデータを撮像装置110側で検出することで、即座にダミーコマンドの発行を停止できるため余分なクロック供給を行うことを防ぎ、解析開始から解析結果の取得までの時間を短縮することができる。
【0048】
上記では、SD I/Fを使用する場合にダミーコマンドを発行し続ける例を述べたが、SD I/Fとは異なるI/Fを使用する場合にはこれに限定されるものではなく、クロック供給が継続される操作であれば良い。
【0049】
本実施形態によれば、通信が発生しない場合にクロックの供給を止める撮像装置110に着脱可能デバイス100が装着された場合であっても、着脱可能デバイス100側で解析処理が継続している間は、撮像装置110からダミーコマンドを発行することによりクロック供給を継続することができる。これにより、撮像装置110は、着脱デバイス100側での処理を正常に終了させ、処理結果を取得できる。
【0050】
(実施形態2)
上述の実施形態では、解析処理を開始した後に一律にダミーコマンドを送信して、クロック供給を継続する場合を説明したが、本実施形態では、クロック供給が行われているかどうかを判定し、クロック供給が行われていないと判定された場合にダミーコマンドを送信する場合について説明する。本実施形態において、クロック供給有無は、クロックカウンタを用いて判定する場合と、解析結果に基づいて判定する場合とがある。以下、それぞれの場合について具体的に説明する。
【0051】
<クロックカウンタを用いたクロック供給有無の判定>
図7を参照して撮像装置110から着脱可能デバイス100にクロック供給が停止されているか否かを判定する処理の流れを説明する。該フローチャートに対応する処理は、例えば、撮像装置110側においては、制御部304として機能する1以上のプロセッサ(CPUやMPU等)が対応するプログラム(記憶部303として機能するメモリ等に格納)を実行することにより実現できる。また、図7においては記載していないものの、着脱可能デバイス100側の処理は、対応する設定データを記憶部404から読み出し論理回路を生成して起動することによりFPGA402により実現できる。
【0052】
以下では、クロック供給有無の判定処理の一例として着脱可能デバイス100内にクロックカウンタ413を持たせる方法を説明する。具体的には、図4に示すように、着脱可能デバイス100内のFPGA402に撮像装置110からのクロックが供給された場合にカウントを行うクロックカウンタ413を配置しておく。
【0053】
また、解析部501は、当該カウンタ回路に対応するクロックカウンタ機能を有し、受信したクロック数をカウントすると共に、撮像装置110からのクロックカウント値の要求コマンドに応じて、クロックのカウント値を出力する。記憶部503は、解析処理等の画像処理を開始してから完了するまでに要するクロック数等の情報を記憶する。解析処理に要するクロック数は、演算処理部412が処理を完了するために必要な、撮像装置110から供給するクロック数の値を示す。
【0054】
まず、S701において、撮像装置110の制御部304はデバイス通信部306を介して、着脱可能デバイス100に対してクロックカウント値の要求コマンドを発行し、クロックカウンタ413の値を読み出す。着脱可能デバイス100側においては、クロックカウント値の要求コマンドを受信すると、入出力制御部410は、クロックカウント413の現在のカウント値を読み出して、I/F部401を介して、撮像装置110にカウント値を出力する。
【0055】
続くS702において、撮像装置110と着脱可能デバイス100との間で通信が行われないように、制御部304はコマンドを発行せずに所定の時間間隔においてWait(待機状態)する。続くS703で、制御部304はクロックカウント値を要求するコマンドを再度発行し、着脱可能デバイス100からクロックカウンタ413の値を読み出す。これにより、所定の時間間隔を置いてカウンタ値を読み出すことができる。着脱可能デバイス100側においては、クロックカウント値の要求コマンドを受信すると、入出力制御部410は、クロックカウント413の現在のカウント値を再び読み出して、I/F部401を介して、撮像装置110にカウント値を出力する。
【0056】
続くS704において、制御部304は、S701とS703とで所定の時間間隔を置いて読み出したクロックカウント値を比較し、S702で一定時間Waitした時間分だけ、クロック数に所定の変化(増加)が生じているかどうか判定する。例えば、SD規格のHigh-speedモード(50MHzクロック)を使用している場合、100μsのWaitを入れた場合に、5000程度のカウント値の増加がみられれば、カウント値に所定の変化が発生しており、撮像装置110から着脱可能デバイス100へのクロック供給が継続されていると判断することができる。一方、カウント値の増加が100程度であれば、当該変化はクロックカウントの要求コマンドのやりとりに基づくものであり、カウント値に所定の変化が発生しているとは言えない。よって、この場合はクロック供給が停止されていると判断することができる。前者の場合、撮像装置110からダミーコマンドを供給しなくともクロック供給が継続することが予測されるが、後者の場合、撮像装置110からのクロック供給を継続するためにはダミーコマンドの出力が必要と予測される。
【0057】
そこで、S704の判定で、カウント値に所定の変化がないと判定された場合(S704で「YES」)、処理はS705に進み、所定のカウント値の変化があったと判定された場合(S704で「NO」)、処理はS709に進む。まず、S705において、撮像装置110の制御部304は、解析対象の撮像画像を着脱可能デバイス100に送信し、S706で撮像画像の解析処理の実行指示コマンドを発行する。続くS707において制御部304は、解析処理用のクロック供給のためのダミーコマンドを解析処理に必要なクロック数に相当する分だけ発行する。その後、S708で制御部304は、解析結果の要求コマンドを発行し、解析結果を取得する。そして、S705からS708までの処理を繰り返すことで、クロック供給が停止される場合でもダミーコマンドを利用して着脱可能デバイス100にクロック供給を行い、解析処理を実行することができる。
【0058】
一方、S709において、撮像装置110の制御部304は、解析対象の撮像画像を着脱可能デバイス100に送信し、S710で解析処理の実行指示コマンドを発行する。その後、S711において制御部304は解析に必要な期間においてWaitした後、S712で解析結果の要求コマンドを発行して解析結果を取得する。そして、S709からS712を繰り返すことで、クロック供給が停止されない場合は、撮像装置110からのクロック供給で着脱可能デバイス100上での解析処理を実行することができる。
【0059】
上記のS701やS703において送信するカウント値を要求するコマンドに対する着脱可能デバイス100の返答は、データ通信を伴わないコマンドのレスポンスで返答するようにしてもよいし、リードコマンドのようにデータとして返答するようにしてもよい。上記では説明のため、解析処理の開始前に要求するようにしているが、定期的に要求するようにしてもよい。また、カウント値の要求を行うタイミングに関しては、解析処理が実行されていない期間、特には解析開始前等の解析処理の通信がされていない間にすることで解析処理のためのコマンド発行を妨げるのを防ぐことができる。
【0060】
<解析結果に基づくクロック供給有無の判定>
次に、図8を参照して解析結果を用いて撮像装置110から着脱可能デバイスへのクロック供給の有無を判定する処理の流れを説明する。前述の図7ではクロックカウンタを用いてクロック供給の有無を判定していたが図8では撮像画像に対する実際の解析結果によりクロック供給の有無を判定する。該フローチャートに対応する処理は、例えば、撮像装置110側においては、制御部304として機能する1以上のプロセッサ(CPUやMPU等)が対応するプログラム(記憶部303として機能するメモリ等に格納)を実行することにより実現できる。また、図8においては記載していないものの、着脱可能デバイス100側の処理は、対応する設定データを記憶部404から読み出し論理回路を生成して起動することによりFPGA402により実現できる。
【0061】
まず、S801において撮像装置110の制御部304は、解析対象の撮像画像を着脱可能デバイス100に送信する。続くS802において、制御部304は、送信した撮像画像に対する解析処理の実行指示コマンドを発行する。着脱可能デバイス100側においては、撮像画像の受信後に、解析処理の実行指示コマンドを受信すると、解析部501が撮像画像の解析処理を開始する。制御部304は、続く803で解析に要する所定時間以上Waitし、S804で解析結果の要求コマンドを発行して解析結果を取得する。着脱可能デバイス100側においては、解析結果の要求コマンドを受信すると、当該コマンドを受信したタイミングにおける解析部501による撮像画像の解析処理の結果を(途中段階であっても)撮像装置110側に出力する。本実施形態において、記憶部503には、解析部501における解析処理の結果が、処理の途中であっても随時保存されるように構成されている。よって、解析結果の要求コマンドを受信したタイミングにおいて記憶部503に記憶されている解析結果を出力すればよい。
【0062】
ここで所定時間は、撮像画像の解析処理が完全に終了するのに必要な時間でなくてもよく、解析結果に一定の変化が確認できる時間であれば足りるものである。S805において制御部304は、所定時間において解析が実施されたかどうかの判定を行う。S802における実行指示コマンドに応じて解析処理が開始された後、解析処理が実施されていれば所定時間後において所定の解析結果が得られるはずである。例えば、解析が終了していれば、解析終了を示す解析結果が得られ、解析処理が途中であれば形跡処理が継続中であることを示す処理結果が得られるはずである。しかし、クロック供給が停止されて解析処理が正常に実施されていなければ、このような所定の解析結果は得られない。
【0063】
S805において所定の解析結果が得られていない場合(S805で「NO」)、処理はS806に進み、所定の解析結果が得られた場合(S805で「YES」)はS810に進む。まず、S806において、撮像装置110の制御部304は、撮像画像を着脱可能デバイス100に送信し、S807で解析処理の実行指示コマンドを発行する。続くS808において制御部304は、解析処理用のクロック供給のためのダミーコマンドを解析処理に要するクロック数に相当する分だけ発行する。その後、S809で制御部304は、解析結果の要求コマンドを発行し、解析結果を取得する。そして、S806からS809までの処理を繰り返すことでクロック供給が停止される場合でも、ダミーコマンドにより着脱可能デバイス100にクロック供給を行い、解析処理を実行することができる。
【0064】
一方、S810において、撮像装置110の制御部304は、撮像画像を着脱可能デバイス100に送信し、S811で解析処理の実行指示コマンドを発行する。その後、S812において制御部304は、解析処理に必要な所定時間だけWaitした後、S813で解析結果の要求コマンドを発行して解析結果を取得する。そして、S810からS813を繰り返すことで、クロックが停止されない場合には撮像装置110からのクロック供給により解析処理を実行するこができる。
【0065】
上記では、クロック供給の有無を解析結果の要求を1度のみ行って判定したが、解析結果の要求を複数回行って、それぞれの要求に応じて受信した解析結果における変化の有無に基づいて判定してもよい。また、解析処理が終了したかどうかに基づいて判定してもよい。更には、解析結果を格納する記憶部404の初期値、もしくはオール0xFFやオール0x00等の、処理対象の画像の解析結果としては出力され得ない結果が出力された場合に、クロック供給が停止されていると判定してもよい。また、記憶部404に保存されている前回の処理対象の画像の解析結果が出力される場合も、クロック供給が停止されていると判定することができる。本実施形態では、解析処理が行われた場合には、随時解析結果が記憶部404に保存されていくので、クロック供給が行われている場合には、前回の処理対象の画像の解析結果が残っていることは無いためである。
【0066】
また、S801において送信する画像を撮像装置110における撮像画像ではなく、予め解析結果が既知である所定の画像(テスト画像と呼ぶ)とすることができる。着脱可能デバイス100が実行する画像の解析処理の内容が同じである場合、同一画像に対して行われる解析処理の結果は一致する。従って、予め判明している通りの解析結果が返ってこない場合には、クロックが停止されているものと推測することができる。本実施形態では、撮像装置110の記憶部303に解析結果が既知の画像をあらかじめテスト画像として記憶させておくことができる。また、予めテスト画像を解析して得られた解析結果も記憶部303に保持しておくことができる。
【0067】
このように本実施形態においては、撮像装置110から着脱可能デバイス100に対するクロック供給が行われているかどうかを判定した上で、判定結果に応じた形態で撮像画像の解析処理を行うこととしている。これにより、SD I/F上での通信がない場合にでもクロック供給されるシステムにおいては、処理中にダミーコマンドの発行処理を省略できるので処理負荷を低減することができる。
【0068】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【0069】
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0070】
100 着脱可能デバイス、110 撮像装置、120 ネットワーク、130 入出力装置
図1
図2
図3
図4
図5
図6
図7
図8