[go: up one dir, main page]

JP2014017560A - 電子機器、撮像装置、システムおよびプログラム - Google Patents

電子機器、撮像装置、システムおよびプログラム Download PDF

Info

Publication number
JP2014017560A
JP2014017560A JP2012151894A JP2012151894A JP2014017560A JP 2014017560 A JP2014017560 A JP 2014017560A JP 2012151894 A JP2012151894 A JP 2012151894A JP 2012151894 A JP2012151894 A JP 2012151894A JP 2014017560 A JP2014017560 A JP 2014017560A
Authority
JP
Japan
Prior art keywords
imaging
instruction
communication
unit
buffer
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.)
Pending
Application number
JP2012151894A
Other languages
English (en)
Inventor
Hiroto Nagamine
洋人 長嶺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nikon Corp
Original Assignee
Nikon Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nikon Corp filed Critical Nikon Corp
Priority to JP2012151894A priority Critical patent/JP2014017560A/ja
Publication of JP2014017560A publication Critical patent/JP2014017560A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Studio Devices (AREA)

Abstract

【課題】大量のデータをUSB通信で受信している場合に、撮像に関する指示等をUSB通信で即座に送信すること。
【解決手段】電子機器は、USBの通信プロトコルに従って、撮像装置の複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて撮像装置と通信する通信部と、通信部に、複数のバッファ領域のうちの第1バッファ領域を通じて、撮像装置から画像データを取得するための通信を行わせ、複数のバッファ領域のうちの第2バッファ領域を通じて、撮像装置に撮像を指示する撮像指示および撮像装置の撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を撮像装置へ送信させる通信制御部とを備える。
【選択図】図6

Description

本発明は、電子機器、撮像装置、システムおよびプログラムに関する。
PTP(Picture Transfer Protocol)におけるレスポンダがベンダー拡張モードをサポートする装置である場合に、イニシエータとして動作する装置が、ベンダー拡張モードの開始をレスポンダに要求する通信システムが知られている(例えば、特許文献1参照)。
[先行技術文献]
[特許文献]
[特許文献1]特開2004−112069号公報
画像データ等の大量のデータを撮像装置からUSB通信で受信している場合には、撮像に関する指示等を当該撮像装置へUSB通信で即座に送信することは容易ではない。
本発明の第1の態様においては、電子機器は、USBの通信プロトコルに従って、撮像装置の複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて撮像装置と通信する通信部と、通信部に、複数のバッファ領域のうちの第1バッファ領域を通じて、撮像装置から画像データを取得するための通信を行わせ、複数のバッファ領域のうちの第2バッファ領域を通じて、撮像装置に撮像を指示する撮像指示および撮像装置の撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を撮像装置へ送信させる通信制御部とを備える。
本発明の第2の態様においては、撮像装置は、USBの通信プロトコルに従って、複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて電子機器と通信する通信部と、通信部に、電子機器へ画像データを提供する通信を、複数のバッファ領域のうちの第1バッファ領域を通じて行わせ、電子機器から撮像指示および撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を、複数のバッファ領域のうちの第2バッファ領域を通じて受信させる通信制御部と、通信部が撮像指示を受信した場合に、撮像部に撮像動作を行わせる撮像制御部とを備える。
本発明の第3の態様においては、プログラムは、USBの通信プロトコルに従って、撮像装置の複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて撮像装置と通信する通信ステップと、複数のバッファ領域のうちの第1バッファ領域を通じて、撮像装置から画像データを取得するための通信を行わせ、複数のバッファ領域のうちの第2バッファ領域を通じて、撮像装置に撮像を指示する撮像指示および撮像装置の撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を撮像装置へ送信させる通信制御ステップとを、コンピュータに実行させる。
本発明の第4の態様においては、プログラムは、USBの通信プロトコルに従って、複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて電子機器と通信する通信ステップと、電子機器へ画像データを提供する通信を、複数のバッファ領域のうちの第1バッファ領域を通じて行わせ、電子機器から撮像指示および撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を、複数のバッファ領域のうちの第2バッファ領域を通じて受信させる通信制御ステップと、撮像指示を受信した場合に、撮像部に撮像動作を行わせる撮像制御ステップとを、コンピュータに実行させる。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
一実施形態におけるシステム5の一例を示す。 撮像装置10のシステム構成の一例を示す。 PC100のブロック構成の一例を模式的に示す。 PC100がパイプ40を通じて送信するInitiateCaptureオペレーションのデータフォーマットの一例を示す。 PC100がパイプ40を通じて送信するReleaseオペレーションのデータフォーマットの一例を示す。 表示装置108に表示される画面600の一例を模式的に示す。 撮像装置10とPC100との間の通信シーケンス一例を示す。 撮像装置10とPC100との間の通信シーケンスの他の一例を示す。 PC100の起動から終了までの処理フローを示す。 撮像装置10の起動から終了までの処理フローを示す。 撮像装置10が撮像動作を行う場合のフローの一例を示す。
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、一実施形態におけるシステム5の一例を示す。システム5は、撮像装置10とパーソナルコンピュータであるPC100とを備える。撮像装置10は、一例としてカメラである。撮像装置10とPC100とは、通信ケーブルの一例としてのUSBケーブル20で接続され、USBケーブル20を通じてUSB通信で通信する。PC100は、PC100に対するユーザ操作に基づいて、USBケーブル20を通じて撮像装置10へ撮像指示を送信する。また、PC100は、USBケーブル20を通じて、撮像装置10から画像データを取得するための通信を行う。PC100はUSBホストとして撮像装置10と通信し、撮像装置10はUSBデバイスとしてPC100と通信する。撮像装置10とPC100との間の通信は、一例として、USB2.0のHiSpeedで行われる。撮像装置10およびPC100は、USB上でPTP(Picture Transfer Protocol)に規定された通信を行う。PC100は、PTPにおけるイニシエータとして撮像装置10と通信し、撮像装置10はPTPにおけるレスポンダとしてPC100と通信する。
撮像装置10は、デフォルトエンドポイントであるEP0の他に、USB静止画像キャプチャデバイスクラスで定義されたエンドポイント構成を構築する。具体的には、撮像装置10は、USB静止画像キャプチャデバイスクラス上でのPTP通信用に3個のエンドポイントEP1、EP2およびEP3を構築する。EP0は、コントロール転送であり、双方向のデータ転送を実現する。EP0は、標準リクエスト、クラス定義リクエスト、ベンダリクエストをデバイスへ送信するために使用される。EP1は、Data−INエンドポイントであり、IN方向のバルク転送に使用される。EP2は、Data−OUTエンドポイントであり、OUT方向のバルク転送に使用される。EP3は、Data−Inエンドポイントであり、インタラプト転送で使用される。したがって、撮像装置10とPC100との間には、EP0に対応するパイプ40を含む通信経路30とは別に、EP1、EP2およびEP3にそれぞれ対応するパイプ41、パイプ42およびパイプ43を含むPTP通信用の通信経路50が論理的に構築される。
撮像装置10で画像データが生成されると、撮像装置10は、パイプ43を通じてPTPのObjectAddedイベントをPC100へ送信する。PC100は、ObjectAddedイベントを受信すると、パイプ42を通じてGetObjectオペレーションを撮像装置10へ送信する。撮像装置10は、GetObjectオペレーションを受信すると、パイプ41を通じて画像データをPC100へ送信する。具体的には、撮像装置10は、一つの画像データを形成する複数の部分データを、複数のデータパケットで送信する。より具体的には、撮像装置10は、PC100からEP1を指定したINトークンパケットを受信すると、EP1に対応するバッファに格納した部分データを含むデータパケットを、PC100へ送信する。撮像装置10は、部分データの全ての送信が完了するまで、INトークンパケットに応じて部分データを送信する処理を繰り返す。
PC100は、パイプ42を通じて画像データの転送期間内に、撮像装置10に撮像させる旨の指示をユーザから受け付けると、撮像装置10に対する撮像指示を、パイプ40を通じて送信する。例えば、撮像装置10は、InitiateCaptureオペレーションのデータパケットを、EP1を指定して送信する。撮像装置10は、パイプ40を通じてInitiateCaptureオペレーションを受信すると、撮像動作を行う。撮像装置10は、当該InitiateCaptureオペレーションに対応する画像データが生成された後、既に転送が開始されていた画像データの転送が完了すると、PTPに従ってパイプ43を通じてObjectAddedイベントをPC100へ送信する。なお、画像データの転送期間とは、撮像装置10からPC100へ一つの画像データの転送を開始してから、当該画像データを形成する部分データの全ての送信が完了するまでの期間であってよい。
システム5によれば、PTPに従う画像データの転送期間内においても、PC100は撮像装置10へ撮像指示を送信して、撮像装置10に撮像動作を行わせることができる。このため、PC100は、撮像装置10との間でPTPに従った通信を行いつつ、シャッタチャンスを逃すことなく撮像装置10に被写体を撮像させることができる。
図2は、撮像装置10のシステム構成の一例を示す。撮像装置10は、一例としてレンズ交換式カメラある。本図ではレンズユニット120が装着された状態の撮像装置10のブロック構成を示す。
レンズユニット120は、レンズマウント接点121を有するレンズマウントを備える。カメラ本体130は、カメラマウント接点131を有するカメラマウントを備える。レンズマウントとカメラマウントとが係合してレンズユニット120とカメラ本体130とが一体化されると、レンズマウント接点121とカメラマウント接点131とが接続される。レンズMPU123は、レンズマウント接点121およびカメラマウント接点131を介してカメラMPU140と接続され、相互に通信しつつ協働してレンズユニット120を制御する。
レンズユニット120は、レンズ群122、レンズ駆動部124およびレンズMPU123を有する。被写体光は、レンズユニット120が有する光学系としてのレンズ群122を光軸に沿って透過して、カメラ本体130に入射する。メインミラー145は、レンズ群122の光軸を中心とする被写体光束中に斜設される斜設状態と、被写体光束から退避する退避状態を取り得る。
メインミラー145が斜設状態にある場合、メインミラー145は、レンズ群122を通過した被写体光束の一部を反射する。具体的には、斜設状態におけるメインミラー145の光軸近傍領域は、ハーフミラーとして形成されている。光軸近傍領域に入射した被写体光束の一部は透過し、他の一部は反射する。メインミラー145により反射された被写体光束はファインダ部147に導かれて、ユーザに観察される。ユーザは、ファインダ部147を通じて構図等を確認することができる。ファインダ部147は、被写体光束に基づく被写体像とともに、撮像動作の設定状態を示す情報等を含む種々の情報をユーザに提示する表示デバイスを含んでよい。
メインミラー145の光軸近傍領域を透過した被写体光束の一部は、サブミラー146で反射されて、AFユニット142へ導かれる。AFユニット142は、被写体光束を受光する複数の光電変換素子列を有する。光電変換素子列は、合焦状態にある場合には位相が一致した信号を出力し、前ピン状態または後ピン状態にある場合には、位相ずれした信号を出力する。位相のずれ量は、焦点状態からのずれ量に対応する。AFユニット142は、光電変換素子列の出力を相関演算することで位相差を検出して、位相差を示す位相差信号をカメラMPU140へ出力する。
レンズ群122の焦点状態は、カメラMPU140等の制御により、AFユニット142からの位相差信号を用いて調節される。例えば、位相差信号から検出された焦点状態に基づき、カメラMPU140によってレンズ群122が含むフォーカスレンズの目標位置が決定され、決定された目標位置に向けてレンズMPU123の制御によってフォーカスレンズの位置が制御される。具体的には、レンズMPU123は、一例としてフォーカスレンズモータを含むレンズ駆動部124を制御して、レンズ群122を構成するフォーカスレンズを移動させる。このように、メインミラー145がダウンして斜設状態にある場合に、位相差検出方式でレンズ群122の焦点状態が検出されて焦点調節が行われる。AFユニット142は、被写体像における複数の領域のそれぞれにおいて焦点状態を調節すべく、複数の領域にそれぞれ対応する複数の位置にそれぞれ光電変換素子列が設けられる。
測光素子144は、光学ファインダ部に導かれた光束の一部の光束を受光する。測光素子144が有する光電変換素子で検出された被写体の輝度情報は、カメラMPU140に出力される。カメラMPU140は、測光素子144から取得した輝度情報に基づき、AE評価値を算出して露出制御に用いる。
メインミラー145が被写体光束から退避すると、サブミラー146はメインミラー145に連動して被写体光束から退避する。撮像素子132のレンズ群122側には、メカニカルシャッタの一例としてのフォーカルプレーンシャッタ143が設けられる。メインミラー145が退避状態にあり、フォーカルプレーンシャッタ143が開状態にある場合、レンズ群122を透過した被写体光束は、撮像素子132の受光面に入射する。
撮像素子132は、撮像部として機能する。撮像素子132は、レンズ群122を通過した被写体光束により被写体を撮像する。撮像素子132としては、例えばCCDセンサ、CMOSセンサ等の固体撮像素子を含む。撮像素子132は、被写体光束を受光する複数の光電変換素子を有しており、複数の光電変換素子でそれぞれ生じた蓄積電荷量に応じたアナログ信号をアナログ処理部133へ出力する。アナログ処理部133は、撮像素子132から出力されたアナログ信号に対して、感度補正処理、OBクランプ処理等のアナログ処理を施して、A/D変換器134へ出力する。A/D変換器134は、アナログ処理部133から出力されたアナログ信号を、画像データを表すデジタル信号に変換して出力する。撮像素子132、アナログ処理部133およびA/D変換器134は、カメラMPU140からの指示を受けた駆動部148により駆動される。
A/D変換器134からデジタル信号で出力した画像データは、ASIC135に入力される。ASIC135は、画像処理機能に関連する回路等を一つにまとめた集積回路である。ASIC135は、揮発性メモリの一例としてのRAM136の少なくとも一部のメモリ領域を、画像データを一時的に記憶するバッファ領域として使用して、RAM136に記憶させた画像データに対して種々の画像処理を施す。ASIC135による画像処理としては、欠陥画素補正、ホワイトバランス補正、色補間処理、色補正、ガンマ補正、輪郭強調処理、画像データの圧縮処理等を例示することができる。撮像素子132が連続して撮像した場合、順次に出力される画像データはバッファ領域に順次に記憶される。撮像素子132が連続して撮像することにより得られた複数の画像データは、連続する静止画の画像データ、または、動画を構成する各画像の画像データとして、バッファ領域に順次に記憶される。RAM136は、ASIC135において動画データを処理する場合にフレームを一時的に記憶するフレームメモリとしても機能する。
ASIC135における画像処理としては、記録用の画像データを生成する処理の他、表示用の画像データを生成する処理、自動焦点調節(AF)用の画像データ処理を例示できる。また、ASIC135における画像処理としては、AF処理用のコントラスト量を検出する処理等を含む。具体的には、ASIC135は、画像データからコントラスト量を検出してカメラMPU140に供給する。例えば、ASIC135は、光軸方向の異なる位置にフォーカスレンズを位置させて撮像することにより得られた複数の画像データのそれぞれからコントラスト量を検出する。カメラMPU140は、検出されたコントラスト量とフォーカスレンズの位置とに基づいて、レンズ群122の焦点状態を調節する。例えば、カメラMPU140は、コントラスト量を増大させるようフォーカスレンズの目標位置を決定して、レンズMPU123に、決定された目標位置に向けてフォーカスレンズの位置を制御させる。このように、メインミラー145がアップして退避状態にある場合に、コントラスト検出方式でレンズ群122の焦点状態が検出されて焦点調節が行われる。このように、カメラMPU140は、ASIC135およびレンズMPU123と協働して、レンズ群122の焦点調節を行う。
ASIC135は、A/D変換器134から出力された画像データを記録する場合、規格化された画像フォーマットの画像データに変換する。例えば、ASIC135は、静止画の画像データを、JPEG等の規格に準拠した符号化形式で符号化された静止画データを生成するための圧縮処理を行う。また、ASIC135は、複数のフレームを、QuickTime、H.264、MPEG2、Motion JPEG等の規格に準拠した符号化方式で符号化された動画データを生成するための圧縮処理を行う。ASIC135は、生成した静止画データ、動画データ等の画像データを、不揮発性の記録媒体の一例としての外部メモリ180へ出力して記録させる。例えば、ASIC135は、静止画ファイル、動画ファイルとして外部メモリ180に記録させる。外部メモリ180としては、フラッシュメモリ等の半導体メモリを例示することができる。具体的には、外部メモリ180としては、SDメモリカード、CFストレージカード、XQDメモリカード等の種々のメモリカードを例示することができる。RAM136に記憶されている画像データは、記録媒体IF150およびコネクタ151を通じて外部メモリ180へ転送される。また、外部メモリ180に記録されている画像データは、記録媒体IF150を通じてRAM136へ転送されRAM136に記憶される。記録媒体IF150としては、上述したメモリカードに対するアクセスを制御するカードコントローラを例示することができる。
ASIC135は、記録用の画像データの生成に並行して、表示用の画像データを生成する。例えば、ASIC135は、いわゆるライブビュー動作時に、表示部138に表示させる表示用の画像データを生成する。また、画像の再生時においては、ASIC135は、外部メモリ180から読み出された画像データから表示用の画像データを生成する。生成された表示用の画像データは、表示制御部137の制御に従ってアナログの信号に変換され、液晶ディスプレイ等の表示部138に表示される。また、撮像により得られた画像データに基づく画像表示と共に、当該画像データに基づく画像表示をすることなく、撮像装置10の各種設定に関する様々なメニュー項目も、ASIC135および表示制御部137の制御により表示部138に表示される。
外部通信IFの一例としてのデバイスコントローラ部152は、外部機器との通信を担う。デバイスコントローラ部152は、外部機器に対してデバイスとして通信を行う。具体的には、デバイスコントローラ部152は、USBデバイスコントローラを含み、USBコネクタである通信コネクタ156を通じて、外部機器とのUSB通信を行う。デバイスコントローラ部152は、転送コントローラ部153、バッファ部154およびトランシーバ部155を含む。トランシーバ部155は、転送コントローラ部153の制御に従って、通信コネクタ156の通信端子を介してデータを電気信号で送受信する。具体的には、トランシーバ部155は、PC100からUSBケーブル20および通信コネクタ156を介して電気信号で受信したデータをバッファ部154に記憶する。また、トランシーバ部155は、バッファ部154に記憶されているデータを、通信コネクタ156の通信端子に出力する。通信端子に出力された電気信号は、USBケーブル20を介して電気信号でPC100へ出力される。例えば、デバイスコントローラ部152は、外部メモリ180から読み出されRAM136に一時的に記憶された画像データを、電気信号でPC100へ出力する。
バッファ部154は、エンドポイントに対応する複数のバッファを含む。転送コントローラ部153は、USBホストから指定されたエンドポイントに対応するバッファを通じて、USBホストと通信する。具体的には、デバイスコントローラ部152は、USBの通信プロトコルに従って、複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて撮像装置10と通信する通信部として機能する。PC100との間の通信は、物理的にはトランシーバ部155が担う。そして、デバイスコントローラ部152は、撮像装置10へ画像データを提供する通信を、複数のバッファ領域のうちの第1バッファ領域を通じて行わせ、電子機器から撮像指示および撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を、複数のバッファ領域のうちの第2バッファ領域を通じて受信させる通信制御部として機能する。第1バッファ領域は、デバイスコントローラ部152がPC100へ画像データを転送するための通信をPTPに従って行うための複数のバッファ領域である。そして、第2バッファ領域は、第1バッファ領域に含まれる複数のバッファ領域のいずれとも異なるバッファ領域である。具体的には、第1バッファ領域は、EP1およびEP2に対応するバッファ領域であり、第2バッファ領域は、EP0に対応するバッファ領域である。
位置検出装置の一例としてのGPSユニット158は、GPS衛星からの信号を受信して、GPSユニット158の位置情報を示す信号を、ASIC135へ出力する。位置情報としては、緯度、経度および高度情報を例示することができる。ASIC135は、画像データおよび位置情報を含む画像ファイルを外部メモリ180に記録させる。
撮像装置10は、上記に説明した制御を含めて、カメラMPU140およびASIC135により直接的または間接的に制御される。撮像装置10の動作に必要な定数、変数等のパラメータ、プログラム等は、システムメモリ139に格納される。システムメモリ139は、電気的に消去・記憶可能な不揮発性メモリであり、例えばフラッシュROM、EEPROM等により構成される。システムメモリ139は、パラメータ、プログラム等を、撮像装置10の非動作時にも失われないように格納する。システムメモリ139に記憶されたパラメータ、プログラム等は、RAM136に展開され、撮像装置10の制御に利用される。カメラ本体130内の、ASIC135、RAM136、システムメモリ139、表示制御部137、カメラMPU140、デバイスコントローラ部152およびGPSユニット158は、バス等の接続インタフェース149により相互に接続され、各種のデータをやりとりする。
操作入力部141は、ユーザから操作を受け付ける。操作入力部141は、レリーズボタン12を含む。その他、操作入力部141は、再生ボタン、ライブビュースイッチ、動画ボタン、電源スイッチ等の各種操作部材等を含む。また、操作入力部141は、タッチパネル等として表示部138と一体に実装された入力部材を含んでよい。カメラMPU140は、操作入力部141が操作されたことを検知して、操作に応じた動作を実行する。例えば、カメラMPU140は、レリーズボタン12が押し込まれた場合に、撮像動作を実行するように撮像装置10の各部を制御する。また、カメラMPU140は、タッチパネルとして実装された入力部材が操作された場合に、表示部138に表示されたメニュー項目および操作内容に応じた動作をするよう、撮像装置10の各部を制御する。
カメラ本体130の各部、レンズユニット120の各部および外部メモリ180は、電源回路192を介して電源190から電力供給を受ける。電源190としては、カメラ本体130に対して着脱できる例えばリチウムイオン電池等の二次電池、系統電源等を例示することができる。また、撮像装置10がPC100等のUSBホストと通信コネクタ156およびUSBケーブル20を介して接続されている場合、電源回路192は、通信コネクタ156のVBUSラインを通じて供給される電力を、カメラ本体130の各部、レンズユニット120の各部および外部メモリ180に供給する。二次電池は電池の一例であり、電池とは、実質的に充電することができない非充電式の電池を含む。カメラMPU140は、電源回路192を制御することにより、電源190から撮像装置10の各部への電力供給を制御する。
図3は、PC100のブロック構成の一例を模式的に示す。PC100は、CPU110、操作入力部111、ホストコントローラ部112、表示装置108、RAM106、ROM109、記録媒体117、電源回路118、通信コネクタ116を備える。CPU110、操作入力部111、RAM106、ROM109、表示装置108、ホストコントローラ部112は、バス等の接続インタフェース119により相互に接続され、各種のデータをやりとりする。
PC100の各部は、CPU110により直接的または間接的に制御される。PC100動作に必要な定数、変数等のパラメータ、プログラム等は、ROM109または記録媒体117に格納される。ROM109は、電気的に消去・記憶可能な不揮発性メモリであり、例えばフラッシュROM、EEPROM等により構成される。ROM109は、ハードウェアパラメータ、起動プログラム等を、PC100の非動作時にも失われないように格納する。ROM109に格納されたハードウェアパラメータ、起動プログラム等は、RAM106に展開され、撮像装置10の動作に利用される。記録媒体117は、不揮発性の記録媒体であり、ハードディスク装置、フラッシュメモリ等を例示することができる。記録媒体117には、PC100用のオペレーティングシステム(OS)、OSの上で動作する各種アプリケーションプログラム、ソフトウェアライブラリ等が格納される。
CPU110は、OS、各種アプリケーションを実行することで、OS、各種アプリケーションで定められた画面を表示装置108に表示させる。例えば、CPU110は、ユーザ指示を受け付けるメニュー、ボタン等のアイコン等を、表示装置108に表示させる。
操作入力部111は、ユーザから操作を受け付ける。操作入力部111は、マウス、キーボード等を含む。CPU110は、操作入力部111が操作されたことを検知して、操作入力部111に対する操作に応じた動作を実行する。例えば、CPU110は、マウスに対してクリック操作がなされた場合に、現在のカーソルの位置に応じて定められた動作が行われるよう、PC100の各部を制御する。操作入力部111は、撮像装置10に撮像を実行させる指示をユーザから取得する指示取得部として機能する。
外部通信IFの一例としてのホストコントローラ部112は、外部機器との通信を担う。ホストコントローラ部112は、外部機器に対してホストとして通信する。具体的には、ホストコントローラ部112は、USBホストコントローラを含み、USBコネクタである通信コネクタ116を通じて外部機器とのUSB通信を行う。ホストコントローラ部112は、転送コントローラ部113、バッファ部114およびトランシーバ部115を含む。トランシーバ部115は、転送コントローラ部113の制御に従って、通信コネクタ116の通信端子を介してデータを電気信号で送受信する。具体的には、トランシーバ部115は、撮像装置10からUSBケーブル20および通信コネクタ116を介して電気信号で受信したデータを、バッファ部114に記憶する。また、トランシーバ部115は、バッファ部114に記憶されているデータを、通信コネクタ116の通信端子に出力する。通信端子に出力された電気信号は、USBケーブル20を介して電気信号で撮像装置10へ出力される。
バッファ部114は、USBデバイスに構築された複数のエンドポイントに対応する複数のバッファを含む。転送コントローラ部113は、USBデバイスに対して指定したエンドポイントに対応するバッファを通じて、USBデバイスと通信する。ホストコントローラ部112は、USBの通信プロトコルに従って、撮像装置10の複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて撮像装置10と通信する通信部として機能する。撮像装置10との通信は、物理的にはトランシーバ部115が担う。また、ホストコントローラ部112は、複数のバッファ領域のうちの第1バッファ領域を通じて、撮像装置10から画像データを取得するための通信を行わせ、複数のバッファ領域のうちの第2バッファ領域を通じて、撮像装置10に撮像を指示する撮像指示を撮像装置10へ送信させる通信制御部として機能する。第1バッファ領域は、ホストコントローラ部112が撮像装置10から画像データを取得するための通信をPTPに従って行うための複数のバッファ領域である。そして、第2バッファ領域は、第1バッファ領域に含まれる複数のバッファ領域のいずれとも異なるバッファ領域である。具体的には、第1バッファ領域は、EP1およびEP2に対応するバッファ領域であり、第2バッファ領域は、EP0に対応するバッファ領域である。
PC100の各部は、電源回路118を介して外部電源または内部電源から電力供給を受ける。内部電源としては、PC100に対して着脱できる例えばリチウムイオン電池等の二次電池等を例示することができる。外部電源としては、系統電源を例示することができる。また、PC100が撮像装置10等のUSBデバイスと通信コネクタ116およびUSBケーブル20を介して接続されている場合、電源回路118は、通信コネクタ116のVBUS端子を通じて、撮像装置10へ電力を供給する。CPU110は、電源回路118を制御することにより、電源から各部への電力供給を制御する。
PTPに従って撮像装置10からPC100へ画像データを転送するための通信は、パイプ41およびパイプ42を通じて行われる。具体的には、PC100においては、ホストコントローラ部112が、EP2を指定したOUTトランザクションにより、GetObjectオペレーションのUSBパケットを撮像装置10へ送信する。そして、ホストコントローラ部112は、EP1を指定したINトランザクションにより、撮像装置10から画像データを受信する。撮像装置10においては、GetObjectオペレーションのUSBパケットを受信した場合、EP1を指定したINトランザクションに応じて、EP1に対応するバッファ領域に画像データを形成する部分データを順次に記憶させ、PC100へUSBパケットで順次に送信する。以下の説明において、パイプを通じて行われる通信とは、パイプに対応するエンドポイントを指定して行われる通信である。すなわち、パイプを通じて行われる通信とは、当該パイプに対応するEPに対応するバッファ領域を介して行われる通信である。例えば、パイプ41を通じて行われる通信とは、EP1を指定して行われる通信である。すなわち、パイプ41を通じて行われる通信とは、EP1に対応するバッファ領域を介して行われる通信である。なお、バッファ領域は、単一のバッファの中のメモリ領域として複数設けられてよく、物理的に別のバッファとして設けられてもよい。
図4は、PC100がパイプ40を通じて送信するInitiateCaptureオペレーションのデータフォーマットの一例を示す。本InitiateCaptureオペレーションは、1つのUSBリクエストで送信される。本USBリクエストのbmRequestTypeの値は、USBホストからUSBデバイスへのクラス定義リクエストであることを示す。bRequestの値0x70は、本クラス定義リクエストにおいて、撮像指示に関するベンダリクエストであることを示す。wValueの値0x0000は、撮像指示に関するベンダリクエストのうち、静止画の撮像指示であることを示す。wLengthの値0x0000は、本USBリクエストに続いてPC100から送信するデータがないことを示す。
図5は、PC100がパイプ40を通じて送信するReleaseオペレーションのデータフォーマットの一例を示す。PC100は、本Releaseオペレーションは、1つのUSBリクエストで送信される。本USBリクエストのbmRequestTypeの値は、USBホストからUSBデバイスへのクラス定義リクエストであることを示す。bRequestの値0x70は、本クラス定義リクエストにおいて、撮像指示に関するベンダリクエストであることを示す。wLengthの値0x0000は、本USBリクエストに続いてPC100から送信するデータがないことを示す。
非0x0000のwValueの値は、本ベンダリクエストがReleaseオペレーションであることを示す。Releaseオペレーションは、撮像装置10へレリーズボタンの押し込み状態を通知する。具体的には、CPU110は、半押し状態を通知する場合に、wValueの値に0x0001を設定する。CPU110は、全押し状態を通知する場合に、wValueの値に0x0002を設定する。CPU110は、レリーズボタンがOFF状態を通知する場合に、wValueの値に0x0003を設定する。
本図で例示したReleaseオペレーションは、撮像装置10がユーザ操作を受け付けるレリーズボタン12に対する操作状態を識別する情報を含む撮像指示の一例である。ホストコントローラ部112は、撮像すべき旨のユーザ操作として受け付けられる操作状態を示す第1状態を識別する情報を含む第1撮像指示と、第1状態とは異なる操作状態を示す第2状態を識別する情報を含む第2撮像指示とを、パイプ40を通じて撮像装置10へ送信する。レリーズボタン12は、第1位置まで押し込まれることにより、撮像すべき旨のユーザ操作を受け付けるボタン部材である。そして、第1状態は、レリーズボタン12が第1位置まで押し込まれた状態を示し、第2状態は、指示入力部の押し込みが解除された状態を示す。すなわち、全押し状態は第1状態の一例であり、OFF状態は第2状態の一例である。
図6は、PC100の表示装置108に表示される画面600の一例を模式的に示す。画面600は、撮像装置10の設定項目選択用のオブジェクト611−オブジェクト613、撮像装置10の設定状態を変更する指示を受け付けるためのオブジェクト621−オブジェクト626、オブジェクト630、ならびに、撮像動作に関する指示を受け付けるためのオブジェクト640、オブジェクト642およびオブジェクト644を含む。
オブジェクト611は、撮像装置10の設定項目のうち第1設定項目を変更する第1変更メニューを選択する指示を受け付ける。本図は、第1変更メニューの一例である。オブジェクト611が選択されると、本図に示すように、シャッタスピード変更用のオブジェクト621、絞り変更用のオブジェクト622、ISO感度変更用のオブジェクト623、フォーカスポイント変更用のオブジェクト624、測光モード変更用のオブジェクト625、ホワイトバランス変更用のオブジェクト626を変更するメニューが表示される。
オブジェクト621は、シャッタスピード、すなわち露光時間を変更する指示を受け付けるスライダオブジェクトを含む。オブジェクト622は、絞り値を変更する指示を受け付けるスライダオブジェクトを含む。オブジェクト623は、ISO感度を変更する指示を受け付けるセレクタオブジェクトを含む。オブジェクト624は、フォーカスポイントの移動方向を指定させるための4方向のカーソル制御オブジェクトと、現在設定されているフォーカスポイントの位置を示すオブジェクトを含む。オブジェクト625は、測光モードを変更する指示を受け付けるセレクタオブジェクトを含む。オブジェクト626は、ホワイトバランスの動作モードを変更する指示を受け付けるセレクタオブジェクトを含む。
オブジェクト621、オブジェクト622、オブジェクト623、オブジェクト624、オブジェクト625またはオブジェクト626で指示を受け付けた場合、ホストコントローラ部112は、撮像設定を変更する指示を送信する。具体的には、ホストコントローラ部112は、撮像設定の変更を、PTPオペレーションを送信することで指示する。
オブジェクト630は、撮像装置10の状態を示す情報を含む。オブジェクト630は、測光モードを示すオブジェクト、フレームレートを示すオブジェクト、F値を示すオブジェクト、および、コマンドダイヤルの状態を示すオブジェクトを含む。
オブジェクト612は、撮像装置10の設定項目のうちの第2設定項目を変更する第2変更メニューを選択する指示を受け付ける。第2設定項目は、露光動作の設定を含んでよい。露光動作の設定としては、単写、連写、バルブ露光およびタイム露光のいずれかの露光モードを選択することを含んでよい。単写モードは、1枚分の画像データを記録する露光モードである。連写モードは、レリーズボタンが押し込まれている期間にわたって連続撮影を行って1枚分以上の画像データを記録するための露光モードである。バルブ露光モードは、長時間露出モードの一部として、レリーズボタンが押し込まれている期間にわたって露光を行って1枚分の画像データを記録するための露光モードである。タイム露光モードは、レリーズボタンが押し込まれてからレリーズボタンが次に押し込まれるまでの期間にわたって露光を行って1枚分の画像データを記録するための露光モードである。
オブジェクト613は、撮像装置10の設定項目のうちの第3設定項目を変更する第3変更メニューを選択する指示を受け付ける。第3設定項目は、撮像により得られた画像データを記録する記録先を設定する動作設定を含んでよい。記録先の設定としては、外部メモリ180に記録するモード、PC100の記録媒体117に記録するモード、外部メモリ180および記録媒体117の双方に記録するモードのいずれかの記録モードを選択することを含んでよい。第2変更メニューおよび第3変更メニューを通じて設定状態を変更する指示を受け付けた場合、ホストコントローラ部112は、当該設定状態の変更を、PTPオペレーションを送信することで指示する。
オブジェクト640は撮影指示を受け付ける。例えば、露光モードが単写モードに設定されている状態でオブジェクト640の操作を検出すると、撮像指示として図4に例示したInitiateCaptureオペレーションを送信する。露光モードが連写モード、バルブ露光モードおよびタイム露光モードのいずれかに設定されている状態でオブジェクト640の操作を検出すると、ホストコントローラ部112は、図5に例示したReleaseオペレーションを送信することで、レリーズ状態を撮像装置10へ通知する。
具体的には、露光モードとして連写モードまたはバルブ露光モードが設定されている場合は、オブジェクト640が押し込まれたことを検出すると、ホストコントローラ部112は、レリーズボタンが全押し状態であることを示すべく、wValueの値が0x0002に設定されたReleaseオペレーションを送信する。オブジェクト640の押し込みが解除されたことを検出されると、ホストコントローラ部112は、レリーズボタンがOFF状態になったことを示すべく、wValueの値が0x0003に設定されたReleaseオペレーションを送信する。レリーズボタンが全押し状態にあることを示すReleaseオペレーションは、オブジェクト640の押し込みを検出した場合に1度送信してよい。1度だけ送信することに代えて、オブジェクト640が押し込まれている期間にわたって、レリーズボタンが全押し状態であることを示す複数のReleaseオペレーションを送信してもよい。撮像装置10においては、レリーズボタンが全押し状態にあることを示すReleaseオペレーションを受信してからレリーズボタンがOFF状態にあることを示すReleaseオペレーションを受信するまでの期間、設定されている露光モードに応じて連写撮影またはバルブ撮影を行う。
露光モードとしてタイム露光モードが設定されている場合は、オブジェクト640がクリックされたことを検出すると、レリーズボタンが全押し状態であることを示すべく、ホストコントローラ部112は、wValueの値が0x0002に設定されたReleaseオペレーションを送信する。そして、オブジェクト640が次に押し込まれたことを検出すると、ホストコントローラ部112は、レリーズボタンが全押し状態であることを示すべく、wValueの値が0x0002に設定されたReleaseオペレーションを送信する。撮像装置10においては、レリーズボタンが全押し状態にあることを示すReleaseオペレーションを受信してから次にレリーズボタンが全押し状態にあることを示すReleaseオペレーションを受信するまでの期間にわたって、露光を行う。
オブジェクト642は、レリーズの半押し指示を受け付ける。オブジェクト642がクリックされたことが検出されると、半押し状態を示すべく、wValueの値がx0001に設定されたReleaseオペレーションを送信する。撮像装置10においては、当該Releaseオペレーションを受信した場合、レリーズボタン12の半押し操作に対して定められた撮像準備動作を行う。撮像準備動作としては、フォーカスポイントに対応する位置の被写体に対して合焦するAF動作、測光モードに応じて露出を自動制御するAE動作等を例示することができる。なお、撮像装置10は、レリーズボタンが半押しされた場合の動作設定として、AF動作と、AE動作と、AF動作およびAE動作とのいずれを行うかを設定できてよい。
オブジェクト644は、ライブビュー撮影指示を受け付ける。オブジェクト644がクリックされると、ライブビュー動作を指示するオペレーションを送信する。ライブビュー動作を指示するオペレーションは、PTPにおけるベンダリクエストとして実装されてよい。例えば、ライブビュー動作オペレーションは、撮像装置10のライブビュースイッチの状態を示すオペレーションとして実装されてよい。撮像装置10においては、ライブビュー動作オペレーションを受信した場合、ライブビュー動作オペレーションで示されるライブビュースイッチの状態に応じて、ライブビュー動作の開始および停止を制御する。
図7は、撮像装置10とPC100との間の通信シーケンス一例を示す。本通信シーケンスは、PC100と撮像装置10とがUSBケーブル20で接続されてからの通信シーケンスである。本通信シーケンスにおけるPC100側の処理は、CPU110が主体となってホストコントローラ部112等の各部を制御することによって行われる。また、撮像装置10側の処理は、カメラMPU140が主体となってデバイスコントローラ部152等を含む撮像装置10の各部を制御することによって行われる。
PC100と撮像装置10とがUSBケーブル20で接続されると、PC100は、撮像装置10と初期通信を行う。初期通信は、PC100が撮像装置10との間でUSB通信を行うためにUSB規格に従って行う通信を含む。例えば、初期通信は、撮像装置10にエンドポイントを構築させるための通信を含む。また、初期通信は、撮像装置10がUSB静止画像キャプチャデバイスクラス上でのPTP通信を行うことを通知するための通信を含む。また、PTPで定められた初期設定通信を含む。例えば、初期通信は、PC100が撮像装置10のデバイス情報を取得するための、PC100から撮像装置10へのGetDeviceInfoオペレーションの送信と、撮像装置10から100へのデバイス情報の送信とを含む。また、初期通信は、PC100と撮像装置10との間のセッションを設定するための、PC100から撮像装置10へのOpenSessionオペレーションの送信を含む。
初期通信が完了した後、PC100において、図6に例示した画面600におけるオブジェクト640がクリックされたことを検出すると、PC100は、InitiateCaptureオペレーションを撮像装置10へ送信する(S710)。本InitiateCaptureオペレーションは、一枚目の静止画の撮像を指示するオペレーションである。本InitiateCaptureオペレーションは、パイプ42を通じて撮像装置10へ送信される。
撮像装置10は、InitiateCaptureオペレーションを受信すると、静止画の撮像動作を行い、撮像により得られた画像データを外部メモリ180に記録する(S711)。撮像動作により画像データが生成されると、撮像装置10は、ObjectAddedイベントを、パイプ41を通じてPC100へ送信する(S712)。
PC100は、ObjectAddedイベントを受信すると、パイプ42を通じてGetObjectInfoオペレーションを撮像装置10へ送信する(ステップS714)。撮像装置10は、GetObjectInfoオペレーションを受信すると、パイプ41を通じて画像情報をPC100へ送信する(S716)。画像情報は、画像データの種類、ファイル名、サイズ等の情報を含む。
PC100は、画像情報を受信すると、一枚目の静止画の画像データを取得するためのGetObjectオペレーションを、パイプ42を通じて撮像装置10へ送信する。撮像装置10は、GetObjectオペレーションを受信すると、パイプ41を通じて、指定された画像データをPC100へ転送する(S720−1〜N)。画像データは、パイプ41を通じて、複数回に分けて順次にPC100へ送信される。本例では、N回に分けてPC100へ送信される。S710、S712、S714、S716、S718およびS720の通信は、PTPの標準コマンドで行われる。
PC100が、画像データの転送期間内において、図6に例示した画面600のオブジェクト640がクリックされたことを検出すると、PC100は、InitiateCaptureオペレーションを撮像装置10へ送信する(S722)。本InitiateCaptureオペレーションは、二枚目の静止画の撮像を指示するオペレーションである。本InitiateCaptureオペレーションは、図4に例示したUSBリクエストであり、ホストコントローラ部112により、パイプ40を通じて撮像装置10へ送信される。
撮像装置10は、InitiateCaptureオペレーションを受信すると、静止画の撮像動作を行う(S724)。撮像動作により外部メモリ180に画像データが記録されると、撮像装置10は、ObjectAddedイベントを、パイプ43を通じてPC100へ送信する(S714)。PC100は、ObjectAddedを受信すると、現在転送中の画像データの転送が完了するのを待つ。
PC100は、一枚目の画像データにおける最後の分割データを受信すると(S720−N)、GetObjectInfoオペレーションを、パイプ42を通じて撮像装置10へ送信する(S728)。本GetObjectInfoオペレーションは、ステップS726で受信したObjectAddedイベントに対応する画像データの情報を取得するオペレーションである。撮像装置10は、GetObjectInfoオペレーションを受信すると、パイプ41を通じて画像情報をPC100へ送信する(S726)。
PC100は、画像情報を受信すると、二枚目の静止画の画像データを取得するためのGetObjectオペレーションを、パイプ42を通じて撮像装置10へ送信する(S732)。撮像装置10は、GetObjectオペレーションを受信すると、パイプ41を通じて、指定された画像データをPC100へ転送する(S734−1〜N)。画像データは、パイプ41を通じて、複数回に分けて順次にPC100へ送信される。本例では、N回に分けてPC100へ送信される。S720、S728、S730、S732、S734の通信は、PTPの標準コマンドで行われる。
このように、ホストコントローラ部112は、複数のバッファ領域のうちの第1バッファ領域を通じて、撮像装置10から画像データを取得するための通信を行わせ、複数のバッファ領域のうちの第2バッファ領域を通じて、撮像装置10に撮像を指示する撮像指示を撮像装置10へ送信する。すなわち、第1バッファ領域は、バルク転送で通信するためのバッファ領域であり、第2バッファ領域は、コントロール転送で通信するためのバッファ領域である。すなわち、ホストコントローラ部112は、第1バッファを通じてコントロール転送以外の転送モードで撮像装置10から画像データを取得する通信を行い、撮像指示を、第2バッファ領域を通じてコントロール転送の転送モードで撮像装置10へ送信する。
また、ホストコントローラ部112は、撮像装置10に撮像を実行させるオペレーションを送信した後において、当該オペレーションに対応するCaptureCompleteイベントを受信する前に、第2バッファ領域を通じて撮像指示を撮像装置へ送信する。具体的には、ホストコントローラ部112は、撮像装置10に撮像を実行させるオペレーションを通信部に送信させた後において、当該オペレーションに対応するCaptureCompleteイベントを受信する前に撮像装置10に撮像を実行させる指示を操作入力部111を介してユーザから取得した場合に、第2バッファ領域を通じて撮像指示を撮像装置10へ送信する。
本シーケンスで説明したように、システム5によれば、PTPに従って画像データを転送している間であっても、InitiateCaptureを撮像装置10へ送信して、撮像装置10に即座に撮像動作を行わせることができる。そして、画像データの転送中の撮像動作で得られた画像データを、PTPに従ってPC100へ転送することができる。
図8は、撮像装置10とPC100との間の通信シーケンスの他の一例を示す。本シーケンスは、特に、Releaseオペレーションを用いて撮像を指示する場合のシーケンスの一例を示す。具体的には、露光モードが連写モードに設定されている場合のシーケンスの一例を示す。なお、ここでは主として、図7に例示した通信シーケンスとの相違点を説明する。
初期通信(S800)、InitiateCaptureオペレーションの送信(S810)、ObjectAddedイベントの送信(S812)、GetObjectオペレーションの送信(S814)、画像情報の送信(S816)、GetObjectオペレーションの送信(S818)、画像データの転送(S820)は、それぞれS700、S810、S812、S814、S816、S818、S820の処理に対応するので、説明を省略する。
一枚目の画像の画像データの転送期間内において、PC100が、図6に例示した画面600のオブジェクト640がクリックされたことを検出すると、PC100は、Releaseオペレーションを撮像装置10へ送信する(S821)。本Releaseオペレーションは、レリーズボタンの状態が半押し状態であることを示す図5に例示したUSBリクエストである。本Releaseオペレーションは、パイプ40を通じて撮像装置10へ送信される。
撮像装置10は、Releaseオペレーションを受信すると、連写を開始する(S824)。連写により、画像データは外部メモリ180へ順次に記録される。撮像装置10は、外部メモリ180に画像データが記録されると、撮像装置10は、一つの画像データが外部メモリ180に記録される毎に、ObjectAddedイベントをPC100へ送信する(S826−1〜M)。ObjectAddedイベントは、パイプ43を通じてPC100へ送信される。PC100は、ObjectAddedイベントを受信すると、現在転送中の画像データの転送が完了するまで、受信したObjectAddedイベントに対応するGetObjectInfoオペレーションの送信を待つ。
PC100は、一枚目の画像データにおける最後の分割データを受信すると(S820−N)、二枚目の画像データに対するGetObjectInfoオペレーションを、パイプ42を通じて撮像装置10へ送信する(S828)。本GetObjectInfoオペレーションは、連写期間中における一枚目の画像データの情報を取得するオペレーションである。撮像装置10は、GetObjectInfoオペレーションを受信すると、パイプ41を通じて画像情報をPC100へ送信する(S830)。
PC100は、画像情報を受信すると、二枚目の静止画の画像データを取得するためのGetObjectオペレーションを、パイプ42を通じて撮像装置10へ送信する(S832)。撮像装置10は、GetObjectオペレーションを受信すると、パイプ41を通じて、指定された画像データをPC100へ転送する(S834−1〜N)。画像データは、パイプ41を通じて、複数回に分けて順次にPC100へ送信される。本例では、N回に分けてPC100へ送信される。なお、S826、S828、S830、S832、S834の通信は、PTPの標準コマンドで行われる。本シーケンスでは、連写で得られたM枚の画像の画像データのうち1枚分の画像データをPC100へ転送するところまでをしたが、S828、S830、S832、S834の通信を順次に残りのM−1枚分の画像データに対して行うことで、連写動作で得られたM枚画像の画像データを、PTPに従ってPC100へ転送することができる。
このように、システム5によれば、PTPに従って画像データを転送している間であっても、レリーズボタンの状態を撮像装置10へ送信して、レリーズボタンの状態に応じた撮像動作を撮像装置10に即座に行わせることができる。そして、転送中の撮像により得られた画像データを、PTPに従ってPC100へ転送することができる。
図9は、PC100の起動から終了までの処理フローを示す。本フローは、例えば操作入力部111の一部としての電源スイッチがON位置に切り替えられた場合に、開始される。本フローは、CPU110が主体となってPC100の各部を制御することにより実行される。
ステップS900において、CPU110は、オペレーティングシステム(OS)を立ち上げる。具体的には、PC100を制御するための起動コードがROM109からRAM106に展開され、カメラMPU140が起動コードを実行して、記録媒体117に記録されているOSによる制御に移行する。OSの制御に移行した後、ユーザ操作等に基づいて、種々のアプリケーションプログラムが起動される。本アプリケーションプログラムは、図6に例示した画面を表示し、撮像装置10と通信して撮像装置10を制御するアプリケーションプログラム等を含む。
ステップS902において、CPU110は、生じたイベントの種類を判定する。各種イベントは、操作入力部111に対する操作で生じる操作イベント、USBパケットの受信イベント、外部機器が接続された場合に生じる接続イベント等により生じる。ここでは、撮像装置10の動作設定を変更する指示に応じて生じる撮像設定の変更イベント、撮像装置10に撮像動作を行わせる指示に応じて生じる撮像指示イベント、および、USBパケットの受信に応じて生じるパケット受信イベント、および、外部機器の接続に応じて生じる外部機器接続イベントについて説明する。
撮像設定の変更指示イベントは、図6に例示したオブジェクト621等がクリックされた場合に生じる。本変更指示イベントが生じた場合、ホストコントローラ部112は、動作設定を指示するUSBパケットを撮像装置10へ送信する(ステップS910)。具体的には、撮像条件等の動作条件の変更を指示するPTPのオペレーションを送信する。
撮像指示イベントは、図6に例示したオブジェクト640、オブジェクト642またはオブジェクト644がクリックされた場合に生じる。本撮像指示イベントが生じた場合、ホストコントローラ部112は、撮像動作に関する指示を行うUSBパケットを撮像装置10へ送信する(ステップS912)。本USBパケットとしては、パイプ42を通じて送信されるPTP標準のInitiateCaptureオペレーションのパケット、パイプ40を通じて送信されるPTPベンダリクエストのInitiateCaptureオペレーションのパケット、PTPベンダリクエストのライブビュー動作オペレーションのパケットを例示できる。
パケット受信イベントは、ホストコントローラ部112でパケットを受信した場合に生じる。パケット受信イベントが生じた場合、CPU110は、受信したパケットの内容に応じて定められた処理を実行する(ステップS914)。本ステップの処理は、ObjectAddedイベント等のPTPイベントを受信した場合に行う処理、PTPオペレーションの送信に応じて撮像装置10からデータを受信した場合に行う処理を含む。CPU110は、これらのPTPイベントやPTP関連のUSBパケットを受信した場合、上記アプリケーションプログラムや各種ソフトウェアライブラリで定められた処理を実行する。
外部機器接続イベントは、ホストコントローラ部112で外部機器の接続を検出した場合に生じる。外部機器接続イベントが生じた場合、CPU110は、外部機器と接続する処理を実行する(ステップS916)。本ステップの処理としては、接続されるUSBデバイスをコンフィグレーションするためのUSB規格で定められた処理等を例示することができる。また、接続されたUSBデバイスが撮像装置10である場合、本処理は、GetDeviceInfoオペレーションを撮像装置10へ送信する処理、OpenSessionオペレーションを撮像装置10へ送信する処理等を含む。
ステップS910、ステップS912、ステップS914、ステップS916の処理が終了すると、ステップS922に処理を進める。
ステップS922では、電源をOFFするか否かを判断する。例えば、電源スイッチがOFF位置にされた場合に、電源をOFFすると判断する。電源をOFFしないと判断した場合はステップS902に処理を移行する。電源をOFFすると判断した場合は、電源をOFFする前に必要な処理を行う(ステップS924)。本処理は、OSで定められた終了コードを実行する処理を含む。ステップS924の処理が完了すると、本フローを終了する。
図10は、撮像装置10の起動から終了までの処理フローを示す。本フローは、例えば操作入力部141の一部としての電源スイッチがON位置に切り替えられた場合に、開始される。本フローは、カメラMPU140が主体となって撮像装置10の各部を制御することにより実行される。
ステップS1000において、カメラMPU140は、オペレーティングシステム(OS)を立ち上げる。具体的には、撮像装置10を制御するためのパラメータ、起動コード、OS等が、システムメモリ139からRAM136に展開され、カメラMPU140が起動コードを実行して、OSによる制御に移行する。ステップS1002において、カメラMPU140は、撮像装置10の初期設定を行う。例えば、カメラMPU140は、展開されたパラメータ、プログラム等に従って、例えば操作入力部141の一部としての撮像モードダイヤル等の状態に基づき、撮像装置10の動作条件を設定する。動作条件としては、撮影モード、撮像条件、記録条件等を例示できる。撮影モードとしては、連写モードや単写モード等を例示することができる。撮像条件としては、露光時間、絞り値および撮像感度等を例示できる。記録条件としては、記録画素数等を例示することができる。
続いて、ステップS1004において、カメラMPU140は、初期設定で設定された内容を表示部138に表示させる。例えば、カメラMPU140は、撮像モード、撮像条件、および、記録条件等の情報を、アイコン表示等の種々の形式で表示部138に表示させる。
続いて、ステップS1006において、カメラMPU140は、生じたイベントの種類を判定する。各種イベントは、操作入力部141に対する操作で生じる操作イベント、USBパケットの受信イベント、外部機器が接続された場合に生じる接続イベント等により生じる。ここでは、設定動作を行う指示に応じて生じる設定イベント、再生動作を行う指示に応じて生じる再生イベント、および、撮像動作を行わせる指示に応じて生じる撮像イベント、USBパケットの受信に応じて生じるパケット受信イベント、および、外部機器の接続に応じて生じる外部機器接続イベントについて説明する。
設定イベントは、操作入力部141の一部としての設定ボタンの操作を検出した場合に生じる。また、設定イベントは、動作設定を指示するUSBパケットを受信した場合に生じる。例えば、動作設定を指示するUSBパケットとしては、撮像条件等の動作条件の変更を指示するPTPのオペレーションを受信した場合を例示することができる。
設定イベントが生じた場合、カメラMPU140が主体となって、指示内容に応じた設定処理を行う(ステップS1010)。本設定処理では、指示内容に応じて、撮像装置10の動作条件が設定される。動作設定が変更された場合、変更された動作設定に応じてパラメー変数が変更される。
再生イベントは、操作入力部141の一部としての再生ボタンの操作を検出した場合に生じる。再生イベントが生じた場合、カメラMPU140は、操作入力部141に対するユーザ操作に基づき、指示された再生処理を実行する(ステップS1012)。再生処理としては、外部メモリ180に記録された静止画、動画等の画像データに基づき画像を一覧表示する処理、画像データの選択を受け付ける処理、ユーザにより選択された画像データに基づき表示部138に画像を表示する処理等を例示することができる。
撮像イベントは、操作入力部141の一部としてのレリーズボタン12、ライブビューボタン、または、動画記録ボタンの操作が検出された場合に生じる。また、撮像イベントは、撮像を指示するUSBパケットを受信した場合に生じる。撮像を指示するUSBパケットとしては、パイプ42を通じて受信されるPTP標準のInitiateCaptureオペレーションのパケット、パイプ40を通じて受信されるPTPベンダリクエストのInitiateCaptureオペレーションのパケット、PTPベンダリクエストのライブビュー動作オペレーションのパケットを例示できる。カメラMPU140は、撮像イベントが生じた場合、撮像に応じて撮像処理を行う(ステップS1014)。
パケット受信イベントは、デバイスコントローラ部152でパケットを受信した場合に生じる。パケット受信イベントが生じた場合、カメラMPU140は、受信したパケットの内容に応じて定められた処理を実行する(ステップS1016)。本ステップの処理は、GetDeviceInfo等の情報を要求するPTPオペレーションの受信に応じて、要求された情報を送信する処理を含む。また、本ステップの処理は、InitiateCapture等の撮像を指示するPTPオペレーション、動作設定の変更を指示するPTPオペレーションの受信に応じて、撮像イベント、設定イベント等の対応するイベントを発生させる処理を含む。カメラMPU140は、これらのPTPオペレーションやPTP関連のUSBパケットを受信した場合、上記OSや各種ソフトウェアライブラリで定められた処理を実行する。
外部機器接続イベントは、デバイスコントローラ部152でホストコントローラ部112から接続を要求された場合に生じる。外部機器接続イベントが生じた場合、CPU110は、外部機器と接続する処理を実行する(ステップS1018)。本ステップの処理としては、USB規格で定められた、USBデバイスとしてコンフィグレーションする処理等を例示することができる。また、接続されたUSBホストがPC100である場合、本ステップの処理は、PTP通信用のパイプ41、パイプ42およびパイプ43に対応するエンドポイントを構築する処理を含む。また、本ステップの処理は、PTPで定められた初期設定処理、例えばGetDeviceInfoオペレーションに応じて撮像装置10へデバイス情報を送信する処理等を含む。
ステップS1010、ステップS1012、ステップS1014、ステップS1016、ステップS1018の処理が終了すると、ステップS1022に処理を進める。
ステップS1022では、電源をOFFするか否かを判断する。例えば、処理すべきイベントが無く、かつ、撮像装置10が動作を開始してから予め定められた期間、新たなイベントが生じていない場合に、電源をOFFすると判断する。また、電源スイッチがOFF位置にされた場合にも、電源をOFFすると判断する。電源をOFFしないと判断した場合はステップS1006に処理を移行する。電源をOFFすると判断した場合は、電源をOFFする前に必要な処理を行う(ステップS1024)。本処理としては、変更されたパラメータ変数等の情報をシステムメモリ139に格納する処理等を例示することができる。ステップS1024の処理が完了すると、本フローを終了する。
図11は、撮像装置10が撮像動作を行う場合のフローの一例を示す。本フローは、ステップS1014の一部の処理に適用できる。本フローは、カメラMPU140が主体となって撮像装置10の各部を制御することにより実行される。本フローは、レリーズ指示またはライブビュー動作の指示で撮像イベントが生じた場合に、開始される。レリーズ指示には、レリーズボタン12の押し込みによる指示の他、PTP標準のInitiateCaptureオペレーション、図4等で例示したInitiateCaptureオペレーション、図5等で例示した、レリーズ全押し状態を示すReleaseオペレーションを含む。ライブビュー動作の指示には、ライブビュースイッチの操作による指示の他、ライブビュー動作オペレーションによる指示を含む。
ステップS1102において、レリーズ指示であるかライブビュー動作の指示であるかを判断する。レリーズ指示であると判断された場合、露光モードを判断する(ステップS1104)。
ステップS1104の判断において、露光モードが連写モードであると判断された場合、撮像素子132で間欠露光を開始し(ステップS1142)、1枚分の露光が完了する毎に、撮像素子132からのRAW画像データ取り込み処理、記録用の画像データの生成処理および記録用の画像データの記録処理を行う(ステップS1144)。画像データが外部メモリ180に記録されると、PC100とPTP接続されていることを条件として、ObjectAddedイベントを送信する(ステップS1146)。そして、レリーズボタンのOFFが指示されたか否かを判断する(ステップS1148)。具体的には、レリーズボタン12が物理的にOFF状態になった場合、または、レリーズボタンがOFF状態を示すReleaseイベントを受信した場合に、レリーズボタンのOFFが指示されたと判断する。レリーズボタンのOFFが指示されていない場合、ステップS1144に処理を戻す。レリーズボタンのOFFが指示された場合は、本フローを終了する。
ステップS1140の判断において、露光モードが単写モードであると判断された場合、撮像素子132で露光を行い(ステップS1112)、撮像素子132からのRAW画像データ取り込み処理、記録用の画像データの生成処理および記録用の画像データの記録処理を行う(ステップS1114)。記録用の画像データが外部メモリ180に記録されると、PC100とPTP接続されていることを条件として、ObjectAddedイベントを送信し(ステップS1116)、本フローを終了する。
ステップS1140の判断において、露光モードがバルブ撮影モードであると判断された場合、撮像素子132で露光を開始する(ステップS1122)。そして、レリーズボタンのOFFが指示されたか否かを判断する(ステップS1124)。具体的には、レリーズボタン12が物理的にOFF状態になった場合、または、レリーズボタンがOFF状態を示すReleaseイベントを受信した場合に、レリーズボタンのOFFが指示されたと判断する。レリーズボタンのOFFが指示されるまで、本判断を繰り返す。レリーズボタンのOFFが指示されると、ステップS1114に処理を移行する。
ステップS1140の判断において、露光モードがタイム撮影モードであると判断された場合、現在露光中であるか否かを判断する(ステップS1132)。現在露光中でないと判断された場合、撮像素子132で露光を開始し(ステップS1134)、処理を終了する。現在露光中であると判断された場合、ステップS1126に処理を移行する。
ステップS1102の判断において、レリーズ指示であると判断された場合、ライブビュー動作の開始指示であるか終了指示であるかを判断する(ステップS1162)。ライブビュー動作の開始指示であると判断された場合は、ライブビュー動作を開始させ(ステップS1164)、本フローを終了する。ライブビュー動作の終了指示であると判断された場合は、ライブビュー動作を終了させ(ステップS1066)、本フローを終了する。
なお、上記の例では、ベンダリクエストとしてのInitiateCaptureオペレーションによる撮像指示を、コントロール転送で送信するとした。しかし、ホストコントローラ部112は、当該撮像指示を、バルク転送、インタラプト転送およびアイソクロナス転送の少なくとも一つの転送モードで撮像装置10へ送信してもよい。この場合に、PTP通信用に撮像装置10に構築されたエンドポイントとは異なるエンドポイントに対応するバッファ領域を通じて、当該撮像指示を送信する。
なお、上記の例では、ホストコントローラ部112は、PTP通信用パイプとは異なるパイプを通じて撮像指示を送信するとした。しかし、ホストコントローラ部112は、PTP通信用パイプとは異なるパイプを通じて、撮像装置10の撮像動作の設定状態を変更する指示を撮像装置10へ送信してもよい。すなわち、ホストコントローラ部112は、USB通信用の複数のバッファ領域のうちの第1バッファ領域を通じて、撮像装置10から画像データを取得するための通信を行わせ、複数のバッファ領域のうちの第2バッファ領域を通じて、撮像装置10に撮像を指示する撮像指示および撮像装置10の撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を撮像装置10へ送信してよい。撮像装置10の撮像動作の設定としては、図6等に関連して説明した撮像条件を例示することができる。すなわち、撮像動作の設定指示としては、焦点設定、露出設定およびホワイトバランス設定の少なくとも一つの設定状態を変更する指示を含む。また、ホストコントローラ部112は、PTP通信用パイプとは異なるパイプを通じて、フォーカス調節等を指示する調節指示を、撮像装置10へ送信してもよい。例えば、当該指示は、半押し状態を示すReleaseオペレーションで送信されてよい。すなわち、レリーズボタン12が、第1位置より浅い第2位置まで押し込まれることによりフォーカスおよび露出の少なくとも一方を調節すべき旨のユーザ操作を受け付ける場合に、ホストコントローラ部112は、レリーズボタン12が第2位置まで押し込まれた状態を識別する情報を含む調節指示を、複数のバッファ領域のうちの第2バッファ領域を通じて、撮像装置10へ送信してよい。かかる動作によれば、PTPに従って画像データを転送している期間内に、撮像条件の変更や、焦点調節等の撮像準備を撮像装置10に指示することができる。このため、ユーザは、撮像条件や焦点調節等をじっくりと行うことができる。
なお、上記の説明では、画像データ等の転送をPTPに従って行う場合について説明した。しかし、PTPに関連して説明した撮像装置10およびPC100の動作は、MTP(Media Transfer Protocol)に従って画像データ等の通信を行う場合にも適用できる。
上記の説明において、カメラMPU140の動作として説明した処理は、カメラMPU140がプログラムに従って撮像装置10が有する各ハードウェアを制御することにより実現される。また、上記の説明においてASIC135により実現される処理は、プロセッサによって実現することができる。例えば、ASIC135の動作として説明した処理は、プロセッサがプログラムに従って撮像装置10が有する各ハードウェアを制御することにより実現される。すなわち、本実施形態の撮像装置10に関連して説明した処理は、プロセッサがプログラムに従って動作して各ハードウェアを制御することにより、プロセッサ、メモリ等を含む各ハードウェアとプログラムとが協働して動作することにより実現することができる。すなわち、当該処理を、いわゆるコンピュータ装置によって実現することができる。コンピュータ装置は、上述した処理の実行を制御するプログラムをロードして、読み込んだプログラムに従って動作して、当該処理を実行してよい。コンピュータ装置は、当該プログラムを記憶しているコンピュータ読取可能な記録媒体から当該プログラムをロードすることができる。本実施形態のPC100撮像装置10に関連して説明した処理も同様に、プロセッサがプログラムに従って動作して各ハードウェアを制御することにより、プロセッサ、メモリ等を含む各ハードウェアとプログラムとが協働して動作することにより実現することができる。
また、本実施形態において、レンズユニット120が装着された状態の撮像装置10を、撮像装置の一例として取り上げた。しかし、撮像装置とは、レンズユニット120が装着されていないカメラ本体130を含む概念である。撮像装置としては、レンズ交換式カメラの一例である一眼レフレックスカメラの他に、レンズ非交換式カメラの一例であるコンパクトデジタルカメラ、ミラーレス式カメラ、ビデオカメラ、撮像機能付きの携帯電話機、撮像機能付きの携帯情報端末、スキャナ、撮像機能付きのゲーム機器等の娯楽装置等、撮像機能を有する種々の電子機器を適用の対象とすることができる。また、PC100に対応する電子機器としては、携帯電話機、携帯情報端末、ゲーム機器等の娯楽装置等、テレビジョン装置等の種々の機器を適用の対象とすることができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
0、1、2、3 EP、5 システム、40、41、42、43 パイプ、10 撮像装置、12 レリーズボタン、20 USBケーブル、30、50 通信経路、100 PC、106 RAM、108 表示装置、109 ROM、110 CPU、111 操作入力部、112 ホストコントローラ部、113 転送コントローラ部、114 バッファ部、115 トランシーバ部、116 通信コネクタ、117 記録媒体、118 電源回路、119 接続インタフェース、120 レンズユニット、121 レンズマウント接点、122 レンズ群、123 レンズMPU、124 レンズ駆動部、130 カメラ本体、131 カメラマウント接点、132 撮像素子、133 アナログ処理部、134 A/D変換器、135 ASIC、136 RAM、137 表示制御部、138 表示部、139 システムメモリ、140 カメラMPU、141 操作入力部、142 AFユニット、143 フォーカルプレーンシャッタ、144 測光素子、145 メインミラー、146 サブミラー、147 ファインダ部、148 駆動部、149 接続インタフェース、150 記録媒体IF、152 デバイスコントローラ部、153 転送コントローラ部、154 バッファ部、155 トランシーバ部、156 通信コネクタ、158 GPSユニット、180 外部メモリ、190 電源、192 電源回路、600 画面、611、612、613、621、622、623、624、625、626、630、640、642、644 オブジェクト

Claims (14)

  1. USBの通信プロトコルに従って、撮像装置の複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて前記撮像装置と通信する通信部と、
    前記通信部に、前記複数のバッファ領域のうちの第1バッファ領域を通じて、前記撮像装置から画像データを取得するための通信を行わせ、前記複数のバッファ領域のうちの第2バッファ領域を通じて、前記撮像装置に撮像を指示する撮像指示および前記撮像装置の撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を前記撮像装置へ送信させる通信制御部と
    を備える電子機器。
  2. 前記通信制御部は、前記撮像装置から画像データを取得するための通信を、PTP(Picture Transfer Protocol)またはMTP(Media Transfer Protocol)のプロトコルに従って前記通信部に行わせ、
    前記第1バッファ領域は、前記プロトコルに従って通信するための複数のバッファ領域を含み、
    前記第2バッファ領域は、前記第1バッファ領域に含まれる前記複数のバッファ領域のいずれとも異なるバッファ領域である
    請求項1に記載の電子機器。
  3. 前記通信制御部は、前記撮像装置に撮像を実行させるオペレーションを前記通信部に送信させた後において、前記オペレーションに対応するCaptureCompleteイベントを受信する前に、前記通信部に前記第2バッファ領域を通じて前記撮像指示を前記撮像装置へ送信させる
    請求項2に記載の電子機器。
  4. 前記撮像装置に撮像を実行させる指示をユーザから取得する指示取得部をさらに備え、
    前記通信制御部は、前記撮像装置に撮像を実行させるオペレーションを前記通信部に送信させた後において、前記オペレーションに対応するCaptureCompleteイベントを受信する前に前記撮像装置に撮像を実行させる指示を前記指示取得部がユーザか ら取得した場合に、前記通信部に前記第2バッファ領域を通じて前記撮像指示を前記撮像装置へ送信させる
    請求項3に記載の電子機器。
  5. 前記通信制御部は、前記通信部に、前記第1バッファを通じてコントロール転送以外の転送モードで前記撮像装置から画像データを取得する通信を行わせ、前記撮像指示および前記設定変更指示の少なくとも一方の指示を、前記第2バッファ領域を通じてコントロール転送の転送モードで前記撮像装置へ送信させる
    請求項1から4のいずれか一項に記載の電子機器。
  6. 前記通信制御部は、前記通信部に、前記撮像指示および前記設定変更指示の少なくとも一方の指示を、バルク転送、インタラプト転送およびアイソクロナス転送の少なくとも一つの転送モードで前記第2バッファ領域を通じて前記撮像装置へ送信させる
    請求項1から4のいずれか一項に記載の電子機器。
  7. 前記撮像指示は、前記撮像装置がユーザ操作を受け付ける指示入力部に対する操作状態を識別する情報を含み、
    前記通信制御部は、前記通信部に、撮像すべき旨のユーザ操作として受け付けられる前記操作状態を示す第1状態を識別する情報を含む第1撮像指示と、前記第1状態とは異なる前記操作状態を示す第2状態を識別する情報を含む第2撮像指示とを、前記第2バッファ領域を通じて前記撮像装置へ送信させる
    前記通信制御部は、前記通信部に、前記撮像すべき旨のユーザ操作を受け付ける第1操作状態を示す第1撮像指示と、前記第1操作状態の解除状態を示す第2撮像指示とを、前記第2バッファを通じて前記撮像装置へ送信させる
    請求項1から6のいずれか一項に記載の電子機器。
  8. 前記指示入力部は、第1位置まで押し込まれることにより、前記撮像すべき旨のユーザ操作を受け付けるボタン部材であり、
    前記第1状態は、前記指示入力部が前記第1位置まで押し込まれた状態を示し、
    前記第2状態は、前記指示入力部の押し込みが解除された状態を示す
    請求項7に記載の電子機器。
  9. 前記ボタン部材は、第1位置より浅い第2位置まで押し込まれることにより、フォーカスおよび露出の少なくとも一方を調節すべき旨のユーザ操作を受け付け、
    前記通信制御部は、前記通信部に、前記ボタン部材が前記第2位置まで押し込まれた状態を識別する情報を含む調節指示を、前記第2バッファ領域を通じて前記撮像装置へ送信させる
    請求項8に記載の電子機器。
  10. 前記設定変更指示は、前記撮像装置に、焦点設定、露出設定およびホワイトバランス設定の少なくとも一つの設定状態を変更する指示を含む
    請求項1から9のいずれか一項に記載の電子機器。
  11. 撮像部と、
    USBの通信プロトコルに従って、複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて電子機器と通信する通信部と、
    前記通信部に、前記電子機器へ画像データを提供する通信を、前記複数のバッファ領域のうちの第1バッファ領域を通じて行わせ、前記電子機器から撮像指示および撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を、前記複数のバッファ領域のうちの第2バッファ領域を通じて受信させる通信制御部と、
    前記通信部が前記撮像指示を受信した場合に、前記撮像部に撮像動作を行わせる撮像制御部と
    を備える撮像装置。
  12. 請求項1から10のいずれか一項に記載の電子機器と、
    前記撮像装置と
    を備えるシステム。
  13. USBの通信プロトコルに従って、撮像装置の複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて前記撮像装置と通信する通信ステップと、
    前記複数のバッファ領域のうちの第1バッファ領域を通じて、前記撮像装置から画像データを取得するための通信を行わせ、前記複数のバッファ領域のうちの第2バッファ領域を通じて、前記撮像装置に撮像を指示する撮像指示および前記撮像装置の撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を前記撮像装置へ送信させる通信制御ステップと
    をコンピュータに実行させるためのプログラム。
  14. USBの通信プロトコルに従って、複数のエンドポイントにそれぞれ対応する複数のバッファ領域を通じて電子機器と通信する通信ステップと、
    前記電子機器へ画像データを提供する通信を、前記複数のバッファ領域のうちの第1バッファ領域を通じて行わせ、前記電子機器から撮像指示および撮像動作の設定状態を変更する設定変更指示の少なくとも一方の指示を、前記複数のバッファ領域のうちの第2バッファ領域を通じて受信させる通信制御ステップと、
    前記撮像指示を受信した場合に、撮像部に撮像動作を行わせる撮像制御ステップと
    をコンピュータに実行させるためのプログラム。
JP2012151894A 2012-07-05 2012-07-05 電子機器、撮像装置、システムおよびプログラム Pending JP2014017560A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012151894A JP2014017560A (ja) 2012-07-05 2012-07-05 電子機器、撮像装置、システムおよびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012151894A JP2014017560A (ja) 2012-07-05 2012-07-05 電子機器、撮像装置、システムおよびプログラム

Publications (1)

Publication Number Publication Date
JP2014017560A true JP2014017560A (ja) 2014-01-30

Family

ID=50111916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012151894A Pending JP2014017560A (ja) 2012-07-05 2012-07-05 電子機器、撮像装置、システムおよびプログラム

Country Status (1)

Country Link
JP (1) JP2014017560A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190065857A1 (en) * 2017-08-25 2019-02-28 Panasonic Intellectual Property Management Co., Ltd. Imaging apparatus, electronic device, and method of transmitting image data
JP2019041372A (ja) * 2017-08-25 2019-03-14 パナソニックIpマネジメント株式会社 撮像装置、電子機器及び画像データの転送方法
JP2022115407A (ja) * 2021-01-28 2022-08-09 株式会社リコー 制御システム、電子機器、外部機器及び制御方法
WO2025025997A1 (zh) * 2023-07-29 2025-02-06 华为技术有限公司 一种相机请求处理方法及相关装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190065857A1 (en) * 2017-08-25 2019-02-28 Panasonic Intellectual Property Management Co., Ltd. Imaging apparatus, electronic device, and method of transmitting image data
JP2019041372A (ja) * 2017-08-25 2019-03-14 パナソニックIpマネジメント株式会社 撮像装置、電子機器及び画像データの転送方法
US11120272B2 (en) 2017-08-25 2021-09-14 Panasonic Intellectual Property Management Co., Ltd. Imaging apparatus, electronic device, and method of transmitting image data
JP2022115407A (ja) * 2021-01-28 2022-08-09 株式会社リコー 制御システム、電子機器、外部機器及び制御方法
JP7658095B2 (ja) 2021-01-28 2025-04-08 株式会社リコー 制御システム、電子機器、外部機器及び制御方法
WO2025025997A1 (zh) * 2023-07-29 2025-02-06 华为技术有限公司 一种相机请求处理方法及相关装置

Similar Documents

Publication Publication Date Title
JP5517668B2 (ja) 通信装置、撮像装置及びそれらの制御方法、プログラム並びに記憶媒体
US9667856B2 (en) Auto focus adjusting method, auto focus adjusting apparatus, and digital photographing apparatus including the same
US9563245B2 (en) Electronic device and computer readable medium
US20120300051A1 (en) Imaging apparatus, and display method using the same
US10542216B2 (en) Apparatus and method for storing moving image portions
JP5665013B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US9807296B2 (en) Image capturing apparatus and auto focus control method therefor
JP2009081808A (ja) 撮影制御装置、撮影制御方法、撮影制御プログラム、および撮影装置
US9473683B2 (en) Image capture apparatus, lens unit, communication controlling method, and diaphragm controlling method
JP2024161150A (ja) 撮像装置
JP2015036845A (ja) 電子機器およびプログラム
JP2014017560A (ja) 電子機器、撮像装置、システムおよびプログラム
US10075638B2 (en) Apparatus that performs zooming operation, control method therefor, and storage medium
CN101459770A (zh) 数字拍摄设备及其控制方法
JP6337431B2 (ja) システム、サーバ、電子機器およびプログラム
US20150181134A1 (en) Imaging apparatus method for controlling imaging apparatus and storage medium
KR101670055B1 (ko) 디지털 영상 처리 장치의 제어 방법, 상기 방법을 적용한 디지털 영상 처리 장치, 상기 디지털 영상 처리 장치를 포함하는 통신 시스템
JP2014049969A (ja) 撮像装置およびプログラム
JP2007208903A (ja) 撮影システム及び撮影指示装置
JP6519606B2 (ja) 電子機器およびプログラム
JP2013097728A (ja) 電子機器およびプログラム
JP2015070453A (ja) 撮像装置、システム、プログラムおよび方法
JP2015040906A (ja) 撮像装置およびプログラム
JP6635210B2 (ja) 電子機器
JP5648563B2 (ja) 画像処理装置、画像処理方法、及びプログラム