(57)【要約】【課題】デジタルカメラ等の撮像装置において撮影処理を律速させることなく、ネットワーク転送を効率良く行えるようにする。【解決手段】ネットワーク転送機能を有するデジタルカメラ１００において、撮影画像情報を記録する外部記録媒体１０７に対するアクセスサイズを決定する。そして、撮影モードに応じて、撮影画像情報を一時記憶媒体１０４に記憶し、一時記憶媒体１０４からネットワーク転送する第１の転送方式と、撮影画像情報を一時記憶媒体１０４に記憶し、一時記憶媒体１０４から外部記録媒体１０７に記録してからネットワーク転送する第２の転送方式とを使い分ける。この場合に、第２の転送方式のペイロードサイズを決定したアクセスサイズの整数倍とする。【選択図】図１
2013207545.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク転送機能を有する撮像装置であって、
一時記憶媒体と、
撮影画像情報を記録する記録媒体に対するアクセスサイズを決定するアクセスサイズ決定手段と、
撮影画像情報を前記一時記憶媒体に記憶し、前記一時記憶媒体からネットワーク転送する第１の転送方式と、撮影画像情報を前記一時記憶媒体に記憶し、前記一時記憶媒体から前記記録媒体に記録してからネットワーク転送する第２の転送方式とを使い分ける制御手段とを備え、
前記制御手段は、前記第２の転送方式のペイロードサイズを前記アクセスサイズ決定手段で決定したアクセスサイズの整数倍とすることを特徴とする撮像装置。
【請求項２】
前記第１の転送方式では、前記一時記憶媒体に記憶した撮影画像情報をネットワーク転送する処理と同時に、前記一時記憶媒体に記憶した撮影画像情報を前記記録媒体に記録する処理を行うことを特徴とする請求項１に記載の撮像装置。
【請求項３】
撮影モードを検出する撮影モード検出手段を備え、
前記制御手段は、前記撮影モード検出手段で検出した撮影モードに応じて、前記第１の転送方式と前記第２の転送方式とを使い分けることを特徴とする請求項１又は２に記載の撮像装置。
【請求項４】
前記一時記憶媒体の使用量を検出する使用量検出手段を備え、
前記制御手段は、前記使用量検出手段で検出した使用量に応じて、前記第１の転送方式と前記第２の転送方式とを使い分けることを特徴とする請求項１又は２に記載の撮像装置。
【請求項５】
前記制御手段は、前記第１の転送方式及び前記第２の転送方式によるネットワーク転送の途中において、前記一時記憶媒体の使用量に応じてネットワーク転送処理を中断することを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項６】
前記第２の転送方式によるネットワーク転送の際に、転送が完了した撮影画像情報を含むパケットのチェックサム値を前記一時記憶媒体に記憶する手段を備えたことを特徴とする請求項５に記載の撮像装置。
【請求項７】
前記第２の転送方式によるネットワーク転送処理が中断された場合、前記一時記憶媒体に記憶されたチェックサム値を、前記記録媒体に記録する手段を備えたことを特徴とする請求項６に記載の撮像装置。
【請求項８】
前記第２の転送方式によるネットワーク転送処理が中断され、その後、再開されたときに、前記記録媒体に記録されたチェックサム値を利用することを特徴とする請求項７に記載の撮像装置。
【請求項９】
ネットワーク転送機能を有する撮像装置の制御方法であって、
撮影画像情報を記録する記録媒体に対するアクセスサイズを決定するステップと、
撮影画像情報を一時記憶媒体に記憶し、前記一時記憶媒体からネットワーク転送する第１の転送方式と、撮影画像情報を前記一時記憶媒体に記憶し、前記一時記憶媒体から前記記録媒体に記録してからネットワーク転送する第２の転送方式とを使い分けるステップとを有し、
前記第２の転送方式のペイロードサイズを前記決定したアクセスサイズの整数倍とすることを特徴とする撮像装置の制御方法。
【請求項１０】
ネットワーク転送機能を有する撮像装置を制御するためのプログラムであって、
撮影画像情報を記録する記録媒体に対するアクセスサイズを決定する処理と、
撮影画像情報を一時記憶媒体に記憶し、前記一時記憶媒体からネットワーク転送する第１の転送方式と、撮影画像情報を前記一時記憶媒体に記憶し、前記一時記憶媒体から前記記録媒体に記録してからネットワーク転送する第２の転送方式とを使い分ける処理とをコンピュータに実行させ、
前記第２の転送方式のペイロードサイズを前記決定したアクセスサイズの整数倍とすることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク転送機能を有するデジタルカメラ等の撮像装置、その制御方法及びプログラムに関する。
【背景技術】
【０００２】
従来、ネットワーク転送機能を有するデジタルカメラでは、デジタルカメラの撮影機能を律速させないために、ネットワーク転送専用のアダプタを用いる方法や、撮影機能とネットワーク転送機能とを切り替えて使用する、又は、撮影機能と同時にネットワーク転送機能を利用する場合には、撮影画像の解像度を落とし、ファイルサイズの小さい画像を転送するという方法が知られている。
デジタルカメラを用いて撮影機能とネットワーク転送機能とを同時に利用する場合、デジタルカメラ内の一時記憶媒体には、撮影機能によって生成された撮影画像情報を記憶する画像領域と、ネットワーク転送機能に必要なパケットを生成するパケット領域とが必要になる。
また、撮影機能だけを利用する場合、外部記録媒体に画像情報を書き込めば、一時記憶媒体の画像領域を開放することができるが、ネットワーク転送機能を同時に利用する場合、ネットワーク転送が完了するまで画像領域とパケット領域とを開放することができない。
従来のデジタルカメラでは、撮影画像情報が一時記憶媒体にある場合と、外部記録媒体にある場合とでネットワーク転送を効率良く行うことが考慮されていないため、ネットワーク転送専用のアダプタを用いたり、機能の切り替えや画像サイズの縮小で対応したりする必要がある。
なお、画像情報を外部記録媒体に効率良く記録する方式に関しては、特許文献１のように、セクタサイズに注目した方法がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１９５１７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したようにネットワーク転送機能を有するデジタルカメラにおいて、撮影画像情報が一時記憶媒体にある場合と、外部記録媒体にある場合とで効率の良いメモリ管理が行われていないがために、ネットワーク転送機能に制限がかかるという課題がある。
また、特許文献１等では、ネットワーク転送のペイロードサイズと、外部記録媒体のセクタサイズとに注目した構成とはなっていない。
【０００５】
本発明は、上記のような点に鑑みてなされたものであり、デジタルカメラ等の撮像装置において撮影処理を律速させることなく、ネットワーク転送を効率良く行えるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の撮像装置は、ネットワーク転送機能を有するデジタルカメラ等の撮像装置であって、一時記憶媒体と、撮影画像情報を記録する記録媒体に対するアクセスサイズを決定するアクセスサイズ決定手段と、撮影画像情報を前記一時記憶媒体に記憶し、前記一時記憶媒体からネットワーク転送する第１の転送方式と、撮影画像情報を前記一時記憶媒体に記憶し、前記一時記憶媒体から前記記録媒体に記録してからネットワーク転送する第２の転送方式とを使い分ける制御手段とを備え、前記制御手段は、前記第２の転送方式のペイロードサイズを前記アクセスサイズ決定手段で決定したアクセスサイズの整数倍とすることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、撮影処理を律速させることなく、ネットワーク転送を効率良く行うことが可能となる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態に係るデジタルカメラの構成を示すブロック図である。
【図２Ａ】第１の実施形態に係るデジタルカメラの撮影処理とネットワーク転送処理とを示すフローチャートである。
【図２Ｂ】第１の実施形態に係るデジタルカメラの撮影処理とネットワーク転送処理とを示すフローチャートである。
【図３】第２の実施形態に係るデジタルカメラの構成を示すブロック図である。
【図４】第２の実施形態に係るデジタルカメラの撮影処理とネットワーク転送処理とを示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明の好適な実施形態について説明する。
（第１の実施形態）
図１は、第１の実施形態に係る撮像装置であるデジタルカメラ１００の構成を示すブロック図である。
１０１はイメージセンサであり、被写体情報を光情報に変換する。１０２はＡ／Ｄコンバータであり、イメージセンサ１０１で変換された光情報をデジタルデータに変換する。１０３はＣＰＵであり、Ａ／Ｄコンバータ１０２で変換されたデジタルデータから撮影画像情報を生成する。１０４はＲＡＭ等の一時記憶媒体であり、ＣＰＵ１０３で生成された撮影画像情報を一時的に記憶したり、ネットワーク転送用のパケットを生成するのに利用されたりする。
【００１０】
１０５はネットワーク転送用ＩＣである。ＣＰＵ１０３は、撮影画像情報をネットワーク転送する場合、撮影画像情報をネットワークプロトコルに適したパケット構造に変換し、ネットワーク転送用ＩＣ１０５に送る。これにより、ネットワーク転送用ＩＣ１０５は、一時記憶媒体１０４から送られてきた撮影画像情報を含むパケットをネットワーク機器に転送することが可能となる。
【００１１】
１０６はデジタルカメラ１００に外部記録媒体１０７を接続するためのインタフェースである。１０７は外部記録媒体である。ＣＰＵ１０３は、一時記憶媒体１０４に一時記憶した撮影画像情報を、インタフェース１０６を介して外部記録媒体１０７に書き込む。
【００１２】
１０８はメインスイッチであり、デジタルカメラ１００の電源のＯＮ／ＯＦＦを切り替える。１０９はレリーズスイッチであり、不図示のシャッタボタンの押下によりＯＮする。１１０は不揮発性メモリであり、デジタルカメラ１００のメインプログラムが格納される。
【００１３】
図２Ａ、図２Ｂは、第１の実施形態に係るデジタルカメラ１００の撮影処理とネットワーク転送処理とを示すフローチャートである。以下に説明する各処理は、ＣＰＵ１０３が不揮発性メモリ１１０に格納されているプログラムを実行することにより実現され、本発明でいうアクセスサイズ決定手段、制御手段、撮影モード検出手段等が実現される。
メインスイッチ１０８がＯＮにされると（ステップＳ２０１）、外部記録媒体１０７が装着されているか否かを判定する（ステップＳ２０２）。外部記録媒体１０７が装着されていれば、外部記録媒体１０７を管理しているファイルフォーマットを検出する（ステップＳ２０３）。そして、当該外部記録媒体１０７にファイルフォーマットに基づいたセクタサイズ単位でアクセスするようにアクセスサイズを決定する（ステップＳ２０４）。
【００１４】
この状態において、レリーズスイッチ１０９がＯＮになったか否かを判定する（ステップＳ２０５）。レリーズスイッチ１０９がＯＮになったならば、ＣＰＵ１０３はイメージセンサ１０１及びＡ／Ｄコンバータ１０２で得られたデジタルデータを受け取る（ステップＳ２０６）。このデジタルデータから撮影画像情報を生成して（ステップＳ２０７）、一時記憶媒体１０４に記憶する（ステップ２０８）。
【００１５】
次に、撮影モードを検出する（ステップＳ２０９）。本実施形態において撮影モードには単写モード／連写モードがあり、単写モードであるか、連写モードであるかを判定する（ステップＳ２１０）。
まず、単写モードにおける処理を説明する。ステップＳ２１０で単写モードであれば、外部記録媒体１０７への記録処理（ステップＳ２１１）と、ネットワーク転送処理とを同時に行う（ステップＳ２１２〜Ｓ２２０）。
【００１６】
外部記録媒体１０７への記録処理に関しては、ステップＳ２０４で決定したアクセスサイズで一時記憶媒体１０４にある撮影画像情報を外部記録媒体１０７に書き込み（ステップＳ２１１）、ステップＳ２２１に移行する。
【００１７】
また、ネットワーク転送処理に関しては、まず、一時記憶媒体１０４にある転送する撮影画像情報（以下、転送画像情報と称する）の全サイズを検出する（ステップＳ２１２）。これは、転送画像情報の転送が完了したか否かを判定するために必要な値である。次に、ネットワーク転送用のパケットを生成するために必要な領域を一時記憶媒体１０４に確保し（ステップＳ２１３）、必要な領域が確保できたか否かを判定する（ステップＳ２１４）。ステップＳ２１４で必要な領域が確保できれば、確保した領域に、転送先情報が含まれているＥｔｈｅｒヘッダ、ＩＰヘッダを生成する（ステップＳ２１５）。そして、ＩＰヘッダに連続する領域に、ネットワークプロトコルで規定されているパケットの最大ペイロードサイズ分の撮影画像情報を一時記憶媒体１０４からコピーする（ステップＳ２１６）。この状態で、コピーした撮影画像情報とＴＣＰ擬似ヘッダを合わせたチェックサムを計算する（ステップＳ２１７）。チェックサム計算後、パケットをネットワーク転送用ＩＣ１０５に送信する（ステップＳ２１８）。パケットのネットワーク転送用ＩＣ１０５への送信が完了すると、ステップＳ２１３で確保した一時記憶媒体１０４の領域を開放する（ステップＳ２１９）。そして、転送した撮影画像情報のサイズが、ステップＳ２１２で検出した転送画像情報の全サイズ分に達したか否かを判定する（ステップＳ２２０）。全サイズに達していなければ、ステップＳ２１３〜Ｓ２１９の処理を繰り返し、全サイズに達していれば、ステップＳ２２１に移行する。なお、ステップＳ２１４で必要な領域が確保できない場合の処理については後述する。
ステップＳ２２１では、ステップＳ２１１及びステップＳ２１２〜Ｓ２２０の両方の処理が終了すると、撮影画像情報が記憶されていた一時記憶媒体１０４の領域を開放する。
【００１８】
ここまで説明した単写モードでは、一度に撮影できる枚数が１枚と限られているので、デジタルカメラ１００内の一時記憶媒体１０４には、外部記録媒体１０７に書き込む撮影画像情報を記憶する領域と、ネットワーク転送用のパケットを生成するために必要な領域とを同時に確保するための十分な空き容量があると考えられる。そこで、ＣＰＵ１０３による画像処理が終了し、一時記憶媒体１０４に記憶された撮影画像情報を、外部記録媒体１０７への書き込みとネットワーク転送処理とで同時に使用する。そして、両方の処理が終了すると、撮影画像情報が記憶されていた一時記憶媒体１０４の領域を開放するようにした。
【００１９】
次に、連写モードにおける処理を説明する。連写モードでは、単写モードと異なり、一時記憶媒体１０４には複数枚の撮影画像情報が記憶される。そのため、画像処理とネットワーク転送処理とを同時に行った場合、一時記憶媒体１０４の空き容量に余裕が無くなることが考えられる。その結果、一時記憶媒体１０４に空き容量ができるまで、撮影動作を止めてしまう可能性が考えられる。そこで、連写モード時にネットワーク転送を行う場合は、一旦、転送画像情報を外部記録媒体１０７に書き込む。その状態で、一時記憶媒体１０４に空き容量ができたときに、外部記録媒体１０７から一時記憶媒体１０４に転送画像情報を読み出して転送する。これにより、撮影中は、一時記憶媒体１０４を画像処理用として優先的に使用することが可能となり、撮影動作を律速させることがなくなる。
【００２０】
ステップＳ２０９で連写モードであれば、連写モードでの撮影枚数を検出する（ステップＳ２２６）。そして、検出した撮影枚数分、ステップＳ２０４で決定したアクセスサイズで一時記憶媒体１０４にある撮影画像情報を外部記録媒体１０７に書き込む（ステップＳ２２７、Ｓ２２８）。一時記憶媒体１０４にある撮影画像情報を全て外部記録媒体１０７に書き込むと、撮影画像情報が記憶されていた一時記憶媒体１０４の領域を開放する（ステップＳ２２９）。
【００２１】
次に、ネットワーク転送が完了していない撮影画像（以下、未転送画像と称する）の枚数を検出し（ステップＳ２３０）、未転送画像情報のサイズを検出する（ステップＳ２３１）。
続いて、転送画像情報を含むネットワーク転送用のパケットを生成する処理に移行し、転送画像のペイロードサイズを決定する（ステップＳ２３２）。転送画像情報は外部記録媒体１０７に記録されているため、パケットを生成するために必要な撮影画像情報は、外部記録媒体１０７から一時記憶媒体１０４に読み出す必要がある。このとき、外部記録媒体１０７へのアクセスは、ステップＳ２０４で決定したアクセスサイズで行う必要がある。
この場合に、一時記憶媒体１０４上で生成するパケットのペイロードサイズを単写モード時と同じ、ネットワークプロトコルで規定されている最大ペイロードサイズ分としてしまうと、外部記録媒体１０７に対するアクセスサイズと相関が無いため、無駄な処理が発生してしまうことが考えられる。例として、外部記録媒体１０７に対するアクセスサイズを５１２Ｂｙｔｅとして説明する。パケットの最大ペイロードサイズは１４６０Ｂｙｔｅであることが知られている。この１４６０Ｂｙｔｅのペイロードサイズでパケットを生成するためには、外部記録媒体１０７から一時記憶媒体１０４に３セクタ分の１５３６Ｂｙｔｅ読み出す。次に、その１５３６Ｂｙｔｅ中から、パケットを生成するために必要な１４６０Ｂｙｔｅを一時記憶媒体１０４の別の領域にコピーして、パケットを生成する必要がある。さらに、ペイロードとして使用しなかった残りの７６Ｂｙｔｅは、次のパケットのペイロードとして使用するようなメモリ管理が必要となる。
このように、パケットのペイロードサイズを、ネットワークプロトコルで規定されている最大ペイロードサイズとすると、外部記録媒体１０７から必要以上の撮影画像情報を読み出し、且つ一時記憶媒体１０４でパケットペイロードサイズ分だけメモリコピーする処理、及びそれに伴う煩雑なメモリ管理を行う必要がある。
【００２２】
そこで、外部記録媒体１０７から画像情報を読み出してネットワーク転送を行う連写モード時では、パケットのペイロードサイズを、ネットワークプロトコルで規定されている最大ペイロードサイズにするのではなく、最大ペイロードサイズ以下になるように、ステップＳ２０４で決定したアクセスサイズの整数倍のペイロードサイズとする。例として、外部記録媒体１０７に対するアクセスサイズを５１２Ｂｙｔｅとして説明する。すなわち、デジタルカメラ１００は外部記録媒体１０７に対して５１２Ｂｙｔｅのセクタサイズ単位でアクセスを行う。一方、パケットの最大ペイロードサイズは１４６０Ｂｙｔｅであることが知られている。この場合、ステップＳ２３２で決定する転送画像のペイロードサイズが５１２Ｂｙｔｅ×ｎ≦１４６０となるように整数ｎを決定する。つまり、ｎ＝２であれば、ペイロードサイズは１０２４Ｂｙｔｅとなり、最大ペイロードサイズである１４６０Ｂｙｔｅ以下となる。ｎ＝３であれば、ペイロードサイズは１５３６Ｂｙｔｅとなり、最大ペイロードサイズを超えてしまう。つまり、外部記録媒体１０７に対するアクセスサイズが５１２Ｂｙｔｅの場合、ステップＳ２３２で決定する転送画像のペイロードサイズは１０２４Ｂｙｔｅとなり、２セクタ分と決定される。
【００２３】
次に、ネットワーク転送用のパケットを生成するために必要な領域を一時記憶媒体１０４に確保し（ステップＳ２３３）、必要な領域が確保できたか否かを判定する（ステップＳ２３４）。ステップＳ２３４で必要な領域が確保できれば、確保した領域に、転送先情報が含まれているＥｔｈｅｒヘッダ、ＩＰヘッダを生成する（ステップＳ２３５）。そして、ＩＰヘッダに連続した領域に、ステップＳ２３２で決定したペイロードサイズ分の撮影画像情報を外部記録媒体１０７から読み出す（ステップＳ２３６）。このとき、外部記録媒体１０７から読み出した撮影画像情報が初めて転送されるものであるか否かを判定し（ステップＳ２３７）、初めて転送されるものであれば、ステップＳ２３８に移行する。ステップＳ２３８では、一時記憶媒体１０４にパケットとしてのデータが揃った状態で、ペイロード部分である転送された撮影画像情報とＴＣＰ擬似ヘッダ部分を合わせたチェックサムを計算し、計算したチェックサム値を一時記憶媒体１０４に記憶する。一方、読み出したパケットがチェックサム値計算済みのものであり、転送エラーや転送中断処理等で、途中で転送中断したものであるならば、チェックサムの再計算は行わずに、ステップＳ２３９に移行し、計算済みのチェックサム値を用いるものとする。
本実施形態では、外部記録媒体１０７から撮影画像情報を読み込む際には、セクタサイズ単位を用いているため、チェックサム計算が行われたか否かは、外部記録媒体１０７のファイルフォーマットに基づいて容易に管理することが可能である。
【００２４】
このような処理を経由して、完成したパケットをネットワーク転送用ＩＣ１０５に送信する（ステップＳ２４０）。これにより、撮影画像情報を転送することが可能になる。１パケット転送完了の度に、ステップＳ２３３で確保した一時記憶媒体１０４の領域を開放する（ステップＳ２４１）。
ステップＳ２３１で検出した未転送画像情報のサイズ分、転送が完了するまで、ステップＳ２３２〜ステップＳ２４２を繰り返す（ステップＳ２４２）。また、未転送画像がなくなるまで、ステップＳ２３１〜ステップＳ２４３を繰り返し（ステップＳ２４３）、最終的に未転送画像がなくなると、転送用に使用した一時記憶媒体１０４の領域を開放する（ステップＳ２４４）。
【００２５】
ここまで説明した連写モードでは、ネットワーク転送を行う場合、一旦、連写モードで撮影した撮影画像情報を外部記録媒体１０７に記録し、一時記憶媒体１０４に空き容量ができたときに、外部記録媒体１０７から一時記憶媒体１０４に転送画像情報を読み出して転送するようにした。これにより、一度に行える撮影枚数を律速することなく、撮影処理とネットワーク転送処理とを同時に行うことが可能になる。また、外部記録媒体１０７から転送画像情報を読み出す際に、パケットのペイロードサイズを、外部記録媒体１０７に対するアクセスサイズの整数倍とする。これにより、一時記憶媒体１０４での無駄なメモリコピーを省略することが可能となり、メモリコピーによる時間のオーバヘッドと、プログラムによる煩雑なメモリ管理をなくすことが可能となる。
【００２６】
以上では、デジタルカメラ１００の単写モード、連写モードにおける撮影処理とネットワーク転送処理とを説明してきたが、画像転送中に次の撮影処理が行われることも十分に考えられる。その場合について、図２のフローチャートを用いて説明する。
【００２７】
単写モードの場合、画像転送中とは、ステップＳ２１３〜Ｓ２２０までの処理を行っていることである。すなわち、画像転送が終了しないと、一時記憶媒体１０４で現在、転送中の撮影画像情報が占めている領域は開放されない状態である。この状態で次の撮影処理が行われると、一時記憶媒体１０４には、転送中の撮影画像情報と、次の撮影処理によって生成された撮影画像情報とが同時に存在することになる。このような状態が続くと、一時記憶媒体１０４は未転送画像情報で一杯となってしまい、次の撮影動作を行うことができなくなってしまう状態になるおそれがある。
そこで、ステップＳ２１４で、ネットワーク転送用のパケットを生成するために必要な領域が一時記憶媒体１０４に確保できたか否かを判定し、画像転送を続けるか、中断するかを判定する構成をとる。このとき、パケットを生成するための連続した領域を検出する際に、予め、撮影処理用の領域と画像転送用の領域とで使用可能な領域をプログラムにより任意な値で決定する。そして、画像転送用に使用している領域が使用可能な容量以下であればステップＳ２１５に移行し、そうでなければステップＳ２２２へと移行することで可能になる。
ステップＳ２１４で必要な領域が確保できなければ、撮影画像情報の転送処理を中断する（ステップＳ２２２）。続いて、外部記録媒体１０７に記録済みの撮影画像情報が占めていた一時記憶媒体１０４の領域を開放する（ステップＳ２２３）。そして、画像転送用に使用可能な領域の空き容量を検出する（ステップＳ２２４）。その結果、転送可能状態になれば（ステップＳ２２５）、ステップＳ２３０に移行し、外部記録媒体１０７から未転送画像情報を読み込み、再度、ステップＳ２１４で中断された画像転送を最初から行う。
【００２８】
連写モードの場合、ステップＳ２３４で必要な領域を確保できなければ、撮影画像情報の転送処理を中断する（ステップＳ２４７）。連写モード時では、常にパケットのペイロードサイズを外部記録媒体１０７に対するアクセスサイズ、換言すれば外部記録媒体１０７のファイルフォーマットに基づいたセクタサイズ単位の整数倍でアクセスするので、転送を中断するまでに転送した撮影画像情報をセクタ単位で管理することが可能である。そのため、転送が中断された際には、ステップＳ２３８で一度計算したチェックサム値を不揮発性メモリ１１０或いは外部記録媒体１０７に記録する（ステップＳ２４８）。そして、画像転送用に使用可能な領域の空き状況を検出する（ステップＳ２４９）。その結果、転送可能状態になれば（ステップＳ２５０）、ステップＳ２３０に移行し、再度、ステップＳ２３４で中断された画像転送を最初から行う。
このように連写モードでは、転送処理が再開されたときに、ステップＳ２３７で読み出されたペイロードが、既にチェックサム計算済みか否かを判定し、計算済みであれば、ステップＳ２４８で記録したチェックサム値を再利用する構成としている。これにより、ペイロード部分のチェックサムを再計算する必要がなくなり、ＣＰＵ１０３が行う無駄な処理を省くことが可能となる。
【００２９】
以上述べたように、デジタルカメラ１００の撮影モードに応じて、撮影画像情報を一時記憶媒体１０４に記憶し、一時記憶媒体１０４からネットワーク転送する第１の転送方式と、撮影画像情報を一時記憶媒体１０４に記憶し、一時記憶媒体１０４から外部記録媒体１０７に記録してからネットワーク転送する第２の転送方式とを使い分けるようにした。これにより、撮影処理を律速させることなく、ネットワーク転送を効率良く行うことが可能となる。
【００３０】
本実施形態では、ネットワーク転送機能を有するデジタルカメラ１００のネットワーク転送処理を単写モード、連写モードといった撮影モードによって切り替える方式を説明してきたが、それに限定されるものではない。例えば一時記憶媒体１０４の使用量（使用率）を検出し、その使用量に応じてネットワーク転送処理を切り替える構成としても同様の効果を得ることができる。
【００３１】
（第２の実施形態）
図３は、第２の実施形態に係る撮像装置であるデジタルカメラ１００の構成を示すブロック図である。なお、第１の実施形態に係るデジタルカメラ１００と同じ構成要素には同一の符号を付し、その説明は省略する。１１１はＣＰＵ１０３と外部記録媒体１０７との間に配されたチェックサム計算用ＩＣであり、ネットワーク転送用のパケットのペイロード部分のチェックサムをハードウェア処理するために用いられる。
【００３２】
図４は、第２の実施形態に係るデジタルカメラ１００の撮影処理とネットワーク転送処理とを示すフローチャートである。以下に説明する各処理は、ＣＰＵ１０３が不揮発性メモリ１１０に格納されているプログラムを実行することにより実現される。
ステップＳ２０１〜Ｓ２０８までは、デジタルカメラ１００の撮影に関する動作フローであり、第１の実施形態におけるステップＳ２０１〜Ｓ２０８と同様である。
【００３３】
ステップＳ３０１で、チェックサム計算用ＩＣ１１１に対して外部記録媒体１０７への撮影画像情報の書き込みモードを設定する。そして、チェックサム計算用ＩＣ１１１を介して、外部記録媒体１０７に、ステップＳ２０４で決定したアクセスサイズで一時記憶媒体１０４にある撮影画像情報を書き込む（ステップＳ３０２）。撮影画像情報の書き込みを完了すると、撮影画像情報が記憶されていた一時記憶媒体１０４の領域を開放する（ステップＳ３０３）。そして、画像転送用として使用できる一時記憶媒体１０４の空き容量を検出する（ステップＳ３０４、Ｓ３０５）。この検出方法は第１の実施形態と同様であるため、ここでの説明は省略する。
【００３４】
一時記憶媒体１０４に画像転送用の領域を確保できれば、転送先の情報を含むＥｔｈｅｒヘッダ及び、ＩＰヘッダを生成する（ステップＳ３０６）。そして、チェックサム計算用ＩＣ１１１のレジスタに対してパケット情報をセットする（ステップＳ３０７）。ここでのパケット情報とは、ＴＣＰ擬似ヘッダを生成するために必要な転送先のポート番号、ＩＰアドレス、デジタルカメラが使用するポート番号、ＩＰアドレス、転送するペイロードサイズのことである。これら情報をセットした後、チェックサム計算用ＩＣ１１１に対して、外部記録媒体１０７から、ステップＳ３０６で生成したＩＰヘッダに連続する領域に撮影画像情報を読み込むモードをセットする（ステップＳ３０８）。これにより、チェックサム計算用ＩＣ１１１は、読み込むペイロードサイズ分の撮影画像情報と、既に設定済みの擬似ヘッダ情報とからチェックサム値をハードウェア処理で計算し、レジスタに格納する（ステップＳ３０９）。このとき、読み込むペイロードサイズは、ステップＳ２０４で決定したアクセスサイズの整数倍であり、且つネットワークプロトコルに規定されている最大ペイロードサイズを超えない値とする。
【００３５】
続いて、パケットをネットワーク転送用ＩＣ１０５に送信し（ステップＳ３１１）、ステップＳ３０５で確保した一時記憶媒体１０４の領域を開放する（ステップＳ３１２）。以降、１枚の撮影画像を転送し終わるまで、ステップＳ３０４〜Ｓ３１２を繰り返す。
【００３６】
このように、パケットのペイロードサイズを外部記録媒体１０７のセクタサイズ単位で管理することにより、ネットワークプロトコルで規定されているパケットの最大ペイロードサイズ分とすると、外部記録媒体１０７から必要以上のデータを読み出すことによる煩雑なメモリ管理を行う必要がなくなる。
【００３７】
また、ステップＳ３０５で必要な領域を確保できなければ、撮影画像情報の転送処理を中断する（ステップＳ３１４）。そして、転送済みパケットのチェックサム値を不揮発性メモリ１１０或いは外部記録媒体１０７に記録する（ステップＳ３１５）。そして、画像転送用に使用可能な領域の空き状況を検出し（ステップＳ３１８）、転送可能状態になれば（ステップＳ３１７）、ステップＳ３０４に移行し、再度、ステップＳ３０５で中断された画像転送を最初から行う。
【００３８】
第２の実施形態では、第１の実施形態においてＣＰＵ１０３が行っていたチェックサムの計算をハードウェアブロックで計算する構成をとったものである。この構成でも、パケットのペイロードサイズを外部記録媒体１０７に対するアクセスサイズの整数倍で行うことにより、外部記録媒体１０７から、必要以上のデータを読み出すことによる煩雑なメモリ管理を行う必要がなくなり、セクタ単位で転送済みデータを管理することが容易となるという効果がある。
【００３９】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４０】
１００：デジタルカメラ、１０１：イメージセンサ、１０２：Ａ／Ｄコンバータ、１０３：ＣＰＵ、１０４：一時記憶媒体、１０５：ネットワーク転送用ＩＣ、１０６：インタフェース、１０７：外部記録媒体、１０８：メインスイッチ、１０９：レリーズスイッチ、１１０：不揮発性メモリ、１１１：チェックサム計算用ＩＣ
【図１】
2013207545.tif 000003
【図２Ａ】
2013207545.tif 000004
【図２Ｂ】
2013207545.tif 000005
【図３】
2013207545.tif 000006
【図４】
2013207545.tif 000007