JP4561851B2 - 撮像装置、撮像方法および撮像プログラム - Google Patents

撮像装置、撮像方法および撮像プログラム Download PDF

Info

Publication number
JP4561851B2
JP4561851B2 JP2008069627A JP2008069627A JP4561851B2 JP 4561851 B2 JP4561851 B2 JP 4561851B2 JP 2008069627 A JP2008069627 A JP 2008069627A JP 2008069627 A JP2008069627 A JP 2008069627A JP 4561851 B2 JP4561851 B2 JP 4561851B2
Authority
JP
Japan
Prior art keywords
image data
buffer
imaging
frame image
counter
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.)
Expired - Fee Related
Application number
JP2008069627A
Other languages
English (en)
Other versions
JP2009225297A (ja
Inventor
公靖 水野
孝基 土橋
淳 村木
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2008069627A priority Critical patent/JP4561851B2/ja
Priority to KR1020090021165A priority patent/KR101018549B1/ko
Priority to US12/404,492 priority patent/US8587694B2/en
Priority to TW098108524A priority patent/TWI449413B/zh
Priority to CN2009101268327A priority patent/CN101540840B/zh
Publication of JP2009225297A publication Critical patent/JP2009225297A/ja
Application granted granted Critical
Publication of JP4561851B2 publication Critical patent/JP4561851B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • H04N5/772Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera the recording apparatus and the television camera being placed in the same enclosure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/915Television signal processing therefor for field- or frame-skip recording or reproducing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction

Description

本発明は、画像データを撮像する撮像装置、撮像方法および撮像プログラムに関する。
撮像した画像データをバッファに順次記憶し、画像や音声に変化があると、連続して撮像された複数の連写画像データをバッファから読み出して、記録メディアに記録するカメラが知られている(例えば、特許文献1参照)。このカメラによれば、画像や音声に変化があったことを検出した時点(以下、トリガー検出時点という。)から過去に遡って撮像された画像データを含む連写された画像データを記録メディアに記録することができる。
また、このカメラは、トリガー検出時点からの時間間隔に応じて画像データの間引きパターンを予め設定し、この間引きパターンにより、撮像された画像データを間引て記録する比率を決めるので、記録メディアに記録される画像データの総データ量を削減しつつ、決定的瞬間を記録した可能性の高いトリガー検出時点の画像データについては品質を維持したまま記録させることができる。
特開2004−304418号公報
しかしながら、特許文献1のカメラは、トリガー検出時点の前に撮像された画像データの全てを、一旦バッファに記憶してから間引きを行い、間引かれた画像データを記録メディアに最終的に記録させる。つまり、バッファに記憶される全ての画像データを記憶できる最長時間まで記憶した上で、画像データの間引きを行う。そのため、最終的に記録メディアに記録させる画像データは間引き後の画像データであるにもかかわらず、バッファの容量としては、間引く前の画像データ、つまり、所定時間分の撮像により得られる全画像データ分の記憶容量が必要であった。すなわち、最終的に記録させたい画像データの容量よりも、バッファの容量を大きく設定しなければならないという問題があった。
そこで、本発明は、画像データの間引きを行う撮像において、必要となるバッファの容量を低減することを目的とする。
本発明の撮像装置は、所定時間間隔でフレーム画像データを順次出力する撮像手段と、
前記撮像手段から出力される所定の複数フレーム分の画像データを一時的に保持可能な複数エリアを有するバッファと、
撮影指示を与える撮影指示手段と、を備え、
前記撮影指示手段により撮影指示が与えられたときに、前記バッファに保持されている複数フレーム分の画像データを、間引かずにそのまま記録メディアに転送して保存する撮像装置において、
前記バッファ空きエリアの有無に関わらず、前記撮像手段から出力される最新のフレーム画像データを保持させるために、古いフレーム画像データほど高い間引き率となるように、前記バッファ内のフレーム画像データを削除する削除手段と、
前記削除手段により削除されたフレーム画像データが保持されていたエリアに、前記最新のフレーム画像データを書き込む書込手段と、
を更に備えたことを特徴とする。
好ましくは、本発明の撮像装置は、
前記削除手段により削除されるフレーム画像データの間引き率は、上限及び下限が固定されており、当該上下限間の遷移態様は、ユーザが任意に設定できる、
ことを特徴とする。
好ましくは
削除手段は、前記撮像手段のフレーム画像データ出力間隔に同期して動作し、1回の動作で複数のフレーム画像データを削除しない、
ことを特徴とする。
好ましくは、本発明の撮像装置は、
前記バッファの各エリアに保持されるフレーム画像データの時系列順位を示すためのカウンタを更に備え、
前記バッファに前記最新のフレーム画像データが保持される度に、前記カウンタの内容を更新する、
ことを特徴とする。
また、本発明の撮像方法は、所定時間間隔でフレーム画像データを順次出力する撮像手段と、
前記撮像手段から出力される所定の複数フレーム分の画像データを一時的に保持可能な複数エリアを有するバッファと、
撮影指示を与える撮影指示手段と、を備え、
前記撮影指示手段により撮影指示が与えられたときに、前記バッファに保持されている複数フレーム分の画像データを、間引かずにそのまま記録メディアに転送して保存する撮像装置において、
前記バッファ空きエリアの有無に関わらず、前記撮像手段から出力される最新のフレーム画像データを保持させるために、古いフレーム画像データほど高い間引き率となるように、前記バッファ内のフレーム画像データを削除し、
削除されたフレーム画像データが保持されていたエリアに、前記最新のフレーム画像データを書き込む、
ことを特徴とする。
また、本発明の撮像プログラムは、所定時間間隔でフレーム画像データを順次出力する撮像手段と、
前記撮像手段から出力される所定の複数フレーム分の画像データを一時的に保持可能な複数エリアを有するバッファと、
撮影指示を与える撮影指示手段と、を備え、
前記撮影指示手段により撮影指示が与えられたときに、前記バッファに保持されている複数フレーム分の画像データを、間引かずにそのまま記録メディアに転送して保存する撮像装置のコンピュータを、
前記バッファ空きエリアの有無に関わらず、前記撮像手段から出力される最新のフレーム画像データを保持させるために、古いフレーム画像データほど高い間引き率となるように、前記バッファ内のフレーム画像データを削除する削除手段と、
前記削除手段により削除されたフレーム画像データが保持されていたエリアに、前記最新のフレーム画像データを書き込む書込手段と、
して機能させる。
本発明によれば、画像データの間引きを行う撮像において、必要となるバッファの容量を低減できる。
(第1の実施形態)
本発明の第1の実施形態に係る画像データの撮像では、図1に示すように、複数の画像データを連続して撮像し、過去に遡るほど、撮像された画像データをフレームレートが低くなるように間引いて記録する。以下では、これを間引き連写撮像という。
例えば、図1は、カメラにより23枚の画像データを30fps(Frame per Second)のフレームレートで撮像し、12枚の画像データを記録する場合の間引き連写撮像の例を示す。30fpsとは、1/30秒の間隔で画像データを撮像することを意味する。言い換えると、1秒当たり30枚撮像することを意味する。図1では、1つの四角が1枚分の画像データを示しており、右側が未来、左側が過去に該当する。12という番号を付してある画像データが最も新しく撮像されたものである。また、1という番号を付してある画像データが最も過去に撮像されたものである。
図1では、時系列順で最も新しい7枚の画像データについては、撮像された画像データが全て記録される。この場合のフレームレートは30fpsである。中間の4枚の画像データは2枚ごとに1枚間引いて記録される。すなわち、2枚ごとに1枚記録される。画像データが記録される比率は1/2である。この場合のフレームレートは15fpsである。最も古い12枚の画像データは4枚ごとに3枚間引いて記録される。すなわち、4枚ごとに1枚記録される。画像データが記録される比率は1/4である。この場合のフレームレートは7.5fpsである。全部で12枚の画像データが記録される。
本発明の実施形態に係るカメラ10は、図2に示すように、イメージセンサ部1と、イメージセンサ制御部2と、CPU(Central Processing Unit)3と、メモリ部4と、記録メディア制御部5と、記録メディア6と、画像処理部7と、シャッター部8と、時計部9とを有している。
イメージセンサ部1は、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの撮像素子を含み、画像データを撮像する。イメージセンサ制御部2はCPU3からの指示に従って、イメージセンサ部1を制御する。イメージセンサ制御部2は、イメージセンサ部1から撮像された画像データを読み出して、メモリ部4に格納する。
CPU3は、プログラマブルなプロセサである。CPU3は、カメラ10全体を制御する。CPU3は、イメージセンサ制御部2に対して撮像開始と撮像終了を指示し、撮像データの格納位置を指示する。また、CPU3は、記録メディア制御部5に対して記録メディア6へのデータの保存や読み出しを指示する。CPU3は、画像処理に関するパラメータを計算する。CPU3は、画像処理部7に対して計算されたパラメータを含む画像処理条件を設定し、画像処理の開始を指示する。
メモリ部4は、RAM(Randam Access Memory)、ROM(Read Only Memory)やフラッシュメモリ等のメモリを含む。メモリ部4は、撮像された画像データ、プログラムおよびパラメータ等を格納する。メモリ部4は、撮像された画像データを保持するバッファとして働く。
記録メディア制御部5は、CPU3の指示に従って、記録メディア6へデータを書き込み、記録メディア6からデータを読み出す。記録メディア6は、例えば、SD(Secure Digital)メモリカード、ハードディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)である。記録メディア6は、例えば、図1に示したような間引き連写撮像された画像データを記録する。
画像処理部7は、イメージセンサ制御部2が格納した画像データの現像処理やリサイズ、JPEG(Joint Photographic Experts Group)規格に準拠した画像データの圧縮や伸長等の処理を行なう。
シャッター部8は、シャッターキーを含む。CPU3は、例えば、シャッターキーがハーフシャッター状態になったことを検出した場合に撮像開始が指示されたと判断する。また、CPU3は、例えば、シャッターキーが、ハーフシャッター状態から全押し状態になったとき、撮像終了が指示されたと判断する。
時計部9は、現在時刻を計時する。CPU3は、時計部9より現在時刻を取得し、例えば、記録メディア6に画像データを記録する際に、画像データとともにその画像データが撮像された日時を記録する。
なお、イメージセンサ部1とイメージセンサ制御部2は本発明の撮像手段の一例であり、メモリ部4は本発明の保持手段の一例であり、CPU3は本発明の更新手段と削除手段と格納手段と選択手段と画像数情報取得手段と初期値算出手段と撮像制御手段と記録制御手段の一例であり、シャッター部8は本発明の第1の検出手段と第2の検出手段の一例であり、記録メディア6は本発明の記録媒体の一例である。
本発明の実施形態では、図3に示すように、連続して撮像された画像データを時系列順に3つのグループに分割する。
第1のグループは、シャッターキーが全押し状態になった時等のトリガー検出時点付近の時間範囲において撮像された画像データであり、最も新しく撮像された画像データを含む。トリガー検出時点は重要な画像が写っている決定的瞬間で有る可能性が高い。このため、CPU3は、第1のグループの画像データを全て記録メディア6に記録する。例えば、CPU3は、図3に示すように、R枚撮像された画像データをR枚記録する。
一方、CPU3は、トリガー検出時点から離れた時間範囲において撮像された画像データを間引いて画像メモリに記録する。
第2のグループは、第1のグループの画像データが撮像される直前に連続して撮像された複数の画像データを含む。第2のグループでは、過去に向かって遡るに連れて、間引かれる画像データが増加する。すなわち記録メディア6に記録される画像データの比率が減少する。
具体的には、CPU3は、図3に示すように、第2のグループの画像データを2のN乗枚ごとにサブグループに再度分割する。ある一つのサブグループにおいて記録メディア6に記録される画像データの数は、そのサブグループと隣り合う過去に撮像されたサブグループにおいて記録メディア6に記録される画像データの数の2倍であり、そのサブグループと隣り合う未来に撮像されたサブグループにおいて記録メディア6に記録される画像データの数の半分である。
図3に示すように、(N−C+1)個のサブグループがある場合、撮像された画像データ数に対する記録メディア6に記録される画像データ数の比率は、1/1から2C−Nまで減少する。
第3のグループは、第2のグループの画像データが撮像される直前に連続して撮像された複数の画像データを含む。撮像された画像データ数に対する記録メディア6に記録される画像データの数の比率は、第2のグループの中で最も過去に撮像されたサブグループの比率と同一である。例えば、図3では、CPU3は、2C−Nの比率で2×P枚の画像データを記録する。
本発明の実施形態において、記録メディア6に記録される画像データの数Mは、次の(1)式で表せる。
Figure 0004561851

ここで、N=1,2,3,……、C=0,1,2,3,……、R=0,1,2,3,……、P=0,1,2,3,……である。
第1のグループの撮像枚数はR枚である。
第2のグループの撮像枚数は(2+2C+1+……+2N−2+2N−1+2)枚である。ただし、N>C。
第3のグループの撮像枚数は2×P枚である。
図1に示した間引き連写撮像の例では、10〜12の番号が付された画像データが第1のグループであり、3〜9の番号が付された画像データが第2のグループであり、1と2の番号が付された画像データが第3のグループである。更に、第2のグループは、6〜9の番号が付された画像データで構成されるサブグループと、4と5の番号が付された画像データで構成されるサブグループと、3の番号が付された画像データのみからなるサブグループに分割される。
従って、図1に示した間引き連写撮像の例では、N=2、C=0、P=2、R=3である。
このように、本実施形態では、撮像された画像データ数に対する記録メディア6に記録される画像データの比率が最高、言い換えると記録メディア6に記録される画像データのフレームレートが最高の画像データの数と、撮像された画像データ数に対する記録メディア6に記録される画像データの比率が最低、言い換えると記録メディア6に記録される画像データのフレームレートが最低の画像データの数を任意に増やすことができる。
更に、本発明の実施形態では、時系列的に中間の時点に撮像された画像データは過去に遡るほど記録される画像データのフレームレートが減少する。
図4は、N=3、C=0、P=0、R=1の場合の例である。第1のグループは1枚の撮像された画像データを含む。第2のグループは、32枚の撮像された画像データを含み、4個のサブグループ1〜4に分割される。第3のグループに含まれる画像データは存在しない。
実線の四角は1枚の画像データを示す。時刻t1〜t8の各時刻において、右端の四角が新しく撮像された画像データであり、左に位置するほどより過去に撮像された画像データである。
時刻t1〜t8の各時刻において新たな画像データが撮像されると、各画像データは左に移動する。このため、時刻t1〜t8を連続して見ると、矢印で示したように、右上から左下に向かって移動する。CPU3は、時刻t1〜t8に行う処理を繰り返し実行する。
線の四角の中に×印が付された画像データは、削除される画像データを示す。
サブグループ2は4枚の画像データを含む。CPU3は、時刻t2、時刻t4、時刻t6、時刻t8にサブグループ2に新たに属することになる画像データを削除する。サブグループ3は2枚の画像データを含む。CPU3は、時刻t3と時刻t7にサブグループ3に新たに属することになる画像データを削除する。サブグループ4は1枚の画像データを含む。CPU3は、時刻t5にサブグループ4に新たに属することになる画像データを削除する。そして、CPU3は、時刻t1に第3のグループに新たに属することになる画像データを削除する。
このように、本実施形態では、CPU3は各時刻において1枚の画像データを削除する。
本実施形態では、カメラ10によって新たな画像データが撮像されると、CPU3は、第2のグループに含まれるサブグループ2〜4において、各々のサブグループに新しく属することになる画像データを2回に1回の割合で削除する。ただし、CPU3は、各々の時刻には1枚の画像データのみを削除すれば良い。
言い換えると、本実施形態では、カメラ10によって新たな画像データが撮像されると、CPU3は、第2のグループに含まれる各々のサブグループにおいて、時系列的に最も後に撮像されたサブグループを除く各サブグループについて、時系列的に後に撮像されたサブグループから時系列的に前に撮像されたサブグループに画像データが2つ移動するごとに1つの画像データを削除する。
これより、第2のグループに含まれる時系列的に連続した2つのサブグループについて、時系列的に後のサブグループにおいて記録メディア6に記録される画像データの数は、時系列的に前のサブグループにおいて記録メディア6に記録される画像データの数の2倍であるという関係を実現することができる。
上記(1)式において、N=3、C=1、P=1、R=1とすると、記録枚数はM=17となる。この場合に、カメラ10が画像データを60fpsのフレームレートで撮像すると、図5に示すように、間引き連写撮像画像は、60fps相当で記録される画像データが9(=8+1)枚、30fps相当で記録される画像データが4枚、15fps相当で記録される画像データが4(=2+2)枚となる。
このうち、第1のグループの画像データは60fps相当で記録される画像データ1枚である。第2のグループの画像データは60fps相当で記録される画像データ8枚、30fps相当で記録される画像データ4枚、15fps相当で記録される画像データ2枚である。また、第3のグループの画像データは15fps相当で記録される画像データ2枚である。
本実施形態では、画像データを保存するためのバッファをメモリ部4に記録枚数M分用意する。必要なバッファの容量は、(1枚分の画像データを格納するためのバッファ容量)×記録枚数Mとなる。図5の例では、記録枚数M=17であるので、バッファに格納する1枚分の画像が800万画素のBayerデータであるとすると、800万×17=13600万画素となる。1バイト/画素とすると、バッファの容量は13600万バイトとなる。このように、本実施形態によれば、間引き連写撮像を適用するアプリケーション毎に、必要なバッファの容量を簡単に計算して求めることができる。
一方、図5の例では、画像データは最長で33枚×(1/60)=33/60秒の保持時間が経過するまで保持される。このように、本実施形態によれば、最長の保持時間に比べて必要なバッファの容量を低減することができる。
本実施形態では、記録枚数分のM個のバッファに1対1に対応したM個のカウンタを設ける。これらのカウンタは、メモリ部4に設けても良いし、メモリ部4とは別に専用のカウンタを設けても良い。
それぞれのカウンタは、次の規則に従って独立に動作する。
(1)新たに撮像された画像データがメモリ部4のバッファに格納されるごとに、その画像データが格納されたバッファに対応するカウンタに下記(2)式に示す初期値Vinitが設定される。
(2)値が0のカウンタを除き、その他のカウンタは1ずつディクリメントされる。ただし、カウンタの値が0の場合はディクリメントされない。
Figure 0004561851
ここで、N、C、P、Rの意味は(1)式と同様である。
図5の例では、初期値Vinit=33である。メモリ部4のバッファに保持される可能性のある画像データの中で最も過去に撮像された画像データは、1番の番号が付された画像データである。また、最も新しく撮像された画像データは33番の番号が付された画像データである。初期値Vinitは、1番の画像データが撮像されてから33番の画像データが撮像されるまでに実際に撮像される画像データの枚数である。
本実施形態では、後述するように、カウンタに初期値Vinitが設定されるため、各カウンタの値は対応するバッファに格納されている画像データに関する相対的な時刻情報を示す。
本実施形態では、図4で示した削除される画像データを格納しているバッファに新しく撮像された画像データを格納する。ただし、図4の例では第2のグループに含まれるサブグループは4つであったが、図5の例では第2のグループに含まれるサブグループは3つである。図5の例では、図4と異なり、時刻t1〜時刻t3の処理が繰り返し実行される。
CPU3は、図4において時刻t2に削除される画像データを格納しているバッファに対応する値24のカウンタ、時刻t3に削除される画像データを格納しているバッファに対応する値16のカウンタ、時刻t4に削除される画像データを格納しているバッファに対応する値24のカウンタ、時刻t1に削除される画像データを格納しているバッファに対応する値0のカウンタの順番で、繰り返し削除対象となるバッファを選択する。
具体的には、CPU3は、以下に示す「削除対象バッファ選択規則」に従って、新しい画像データを撮像するごとに、画像データを削除する対象とするバッファ(以下、削除対象バッファという)を選択する。CPU3は、選択された削除対象バッファに新しく撮像された画像データを格納する。CPU3は、これを繰り返し行なうことで、間引き連写撮像を実現する。
[削除対象バッファ選択規則]
CPU3は、連続して撮像された画像データについて、以下の(1)〜(N−C+1)に記載される選択を繰り返す。CPU3は、新しく画像データが撮像されるごとにM個のカウンタの値を全て調べて削除対象バッファを1個のみ選択する。
(1) カウンタの値が2×(N−C+P)であるバッファを、2回撮像されるごとに1回の正確な周期で削除対象バッファとして選択する。
(2) カウンタの値が2×(N−C+P−1)であるバッファを、2回撮像されるごとに1回の正確な周期で削除対象バッファとして選択する。
(3) カウンタの値が2×(N−C+P−2)であるバッファを、2回撮像されるごとに1回の正確な周期で削除対象バッファとして選択する。
(N−C−1)カウンタの値が2×(N−C+P−(N−C−2))=2×(P+2)であるバッファを、2N−C+1回撮像されるごとに1回の正確な周期で削除対象バッファとして選択する。
(N−C) カウンタの値が2×(N−C+P−(N−C−1))=2×(P+1)であるバッファを、2N−C回撮像されるごとに1回の正確な周期で削除対象バッファとして選択する。
(N−C+1)カウンタの値が0であるバッファを、2N−C回撮像されるごとに1回の正確な周期で削除対象バッファとして選択する。
なお、N、C、Pの意味は、(1)式と(2)式と同様である。
このように削除対象バッファを選択すると、新しく画像データが撮像されるごとに1個ずつ削除対象バッファが選ばれる。このため、新しく撮像された画像データを必ずメモリ部4内のバッファに格納することができる。ただし、間引き連写撮像の開始直後しばらくの間、つまり、全てのバッファに画像が格納されるまでの間は、削除対象バッファが存在しない場合がある。その場合は、間引き連写撮像開始後に画像データが一度も格納されていないバッファに新しく撮像された画像データを格納する。この詳細な説明は後述する。
図6は、本発明の第1の実施形態に係るプログラムのフローチャートである。
図示しないモード選択キーにより、間引き連写撮像モードが選択されると、CPU3は、第1のグループの撮像枚数を示すパラメータR、第2のグループの撮像枚数を決定するパラメータNとパラメータC、第3のグループの撮像枚数を決定するパラメータPを取得する(ステップ1)。
例えば、CPU3は、パラメータN、パラメータC、パラメータP、パラメータRを、間引き連写撮像の最長の記録時間と記録枚数の一覧を図示しないディスプレイに表示し、ユーザに選択させることによって取得する。CPU3は、ユーザによって選択されたパラメータN、パラメータC、パラメータP、パラメータRをメモリ部4のフラッシュメモリ等の不揮発性メモリに記憶し、再度間引き連写撮像モードが選択されたときに、記憶されている値を使用する。また、例えば、間引き連写撮像モードが選択されたとき、CPU3は、パラメータN、パラメータC、パラメータP、パラメータRとして予め決められている値を取得する。
次に、CPU3は、画像データの数Mと初期値Vinitを、上記(1)式と(2)式により計算する(ステップ2)。そして、記録メディア6に記録される画像データの数Mに対応する数のバッファとカウンタをメモリ部4に確保する(ステップ3)。次に、CPU3は、全てのカウンタの値を0に初期化する(ステップST4)。各カウンタの初期化が完了したら、CPU3は撮像開始を待つ(ステップST5;N)。CPU3は、例えば、シャッター部8に含まれるシャッターキーがハーフシャッター状態になったことを検出した場合に撮像開始と判断する(ステップST5;Y)。但し、撮像開始の判断は、ハーフシャッター状態の検出に限らず、どのような方法であっても良い。
CPU3は、撮像開始と判断する(ステップST5;Y)と、イメージセンサ制御部2に撮像開始を指示する(ステップST6)。イメージセンサ制御部2は、CPU3からの撮像開始を受信すると、イメージセンサ部1を駆動し、所定のフレームレートで撮像を開始する。所定のフレームレートとは、間引き連写撮像における最高フレームレートと同じである。CPU3は、イメージセンサ制御部2に撮像開始指示を出した後は、ループ制御変数Iを1に初期化する(ステップST7)。ループ制御変数Iは、削除バッファ決定規則を実現するために使われるものであり、1から2N−Cまでをカウントする。
CPU3は、イメージセンサ制御部2からの格納開始通知を待つ(ステップST8)。格納開始通知とは、イメージセンサ部1が1枚の画像データを撮像し、メモリ部4のバッファに格納する準備ができたことを示す。CPU3は格納開始通知を受信してから動作することで、イメージセンサ制御部2との同期を取る。格納開始通知をCPU3が受信する(ステップST8;Y)と、CPU3はカウンタの値が0以外の全てのカウンタの値を1だけディクリメントする(ステップST9)。
そして、CPU3は、図4で示した削除される画像データが格納されているバッファを削除対象バッファとして選択する(ステップST10)。削除対象バッファを選択する具体的な方法については後述する。
CPU3は、イメージセンサ制御部2に対して、選択された削除対象バッファに新しく撮像された画像データの格納を指示する(ステップST11)。イメージセンサ制御部2は、CPU3からの指示に従って、選択された削除対象バッファに画像データを格納する。
次に、CPU3は、画像データが格納されたバッファに対応するカウンタに対して、上記(2)式で計算される初期値Vinitを設定する(ステップST12)。
本実施形態では、画像データが格納されている全てのカウンタの値は、新しい画像データが撮像され、バッファに格納されるごとに1だけディクリメントされる。一方、上述したように、初期値Vinitは、最も古い画像データが撮像されてから最新の画像データが撮像されるまでに実際に撮像された画像データの枚数である。このため、初期値Vinitとあるカウンタの値の差分は、画像データがそのカウンタに対応するバッファに格納された後に撮像された画像データの枚数を示している。
当然のことながら、カウンタの値が初期値Vinitであるバッファに格納されている画像データは、M個のバッファに格納されている画像データの中で最も新しい画像データである。それ以外の画像データに関しては、その画像データがバッファに格納されてからの経過時間を、{Vinit−(カウンタの値)}×撮像間隔により求めることができる。ただし、撮像間隔=1/(カメラ10の撮像するフレームレート)である。
また、画像データは最長でカウンタの値が0になるまで保持される。すなわち、画像データは最長でVinit×撮像間隔の保持時間が経過するまで保持される。
従って、本実施形態のカウンタの値は、各バッファに格納されている画像データについて、最も新しく撮像された画像データに対する相対的な時刻情報を兼ねていることになる。このため、本実施形態では、画像データに関する時刻情報を保存する必要はない。
カウンタの初期値Vinitを設定した後、CPU3は撮像が継続中か否かを判断する(ステップST13)。撮像が継続していないのであれば、処理を終了する(ステップST13;N)。一方、撮像が継続中であれば(ステップST13;Y)、ループ制御変数Iを1だけインクリメントする(ステップST14)。その結果、ループ制御変数Iが2N−C以下の場合には、ステップST8に戻る(ステップST15;N)。一方、ループ制御変数Iが2N−Cを超えてしまった場合にはステップST7に戻り(ステップST15;Y)、ループ制御変数Iを1にする。
そして、再び格納開始通知を待ち(ステップST8)、ステップST8〜ステップST15を繰り返す。
なお、シャッターの状態が、ハーフシャッターから全押しになったときCPU3は撮像終了と判断する(ステップST13;N)方法がある。この方法によれば、シャッターを全押しした時刻を基準時点として、そこから過去に遡って撮像することができる。
また、CPU3は、シャッターの全押しを検出したとき、画像データを所定の枚数撮像した後、撮像終了と判断する(ステップST13;N)こととしても良い。例えば、画像データをR枚数撮像した後、撮像終了と判断することとした場合、シャッターの全押しを検出した時刻に撮像された画像データが第2のグループの最後の画像データとなり、その時刻以降に第1のグループの画像データが撮像されることとなる。この場合、シャッターの全押しを検出した時刻以降に撮像されたR枚の画像データは全て記録メディア6に記録される。
この方法によれば、シャッター全押し後に撮像された画像データを最高フレームレートで記録できる。このため、シャッターを全押しするタイミングが撮影者の意図する決定的瞬間より少し早い場合でも、シャッター全押し後に撮像された撮影者の意図した画像データを記録メディア6に記録できる可能性が高くなる。
ステップST10において、削除対象バッファを選択するとき、CPU3は、図7に示すように、ループ制御変数KをN−Cに初期化する(ステップST101)。次に、CPU3は、ループ制御変数Iが2で割り切れるか否かを判断する(ステップST102)。割り切れない場合(ステップST102;N)には、割り切れる値が見つかるまでループ変数Kを1だけディクリメントする(ステップST103)。なお、この処理は、少なくともK=0になれば必ず割り切れる値が見つかる。2=2=1であるので、ループ制御変数Iは少なくとも1で割り切れる。
割り切れるKの値が見つかったら(ステップST102;Y)、K=N−Cか否かを判断する(ステップST104)。K=N−Cではない場合(ステップST104;N)、カウンタの値が2×(N−C+P−K)のカウンタを検索する(ステップST105)。
ステップST105で検索しても、該当するカウンタが見つからない場合がある(ステップST106;N)。このような状況は、全てのバッファに画像が格納されていないとき、つまり撮像開始後しばらくの間に起こる。この場合、撮像開始後まだ一度も画像が格納されていないバッファを検索する。この検索には、値が0のカウンタを検索すればよい(ステップST107)。
K=N−Cの場合(ステップST104;Y)、カウンタの値が0のカウンタを検索する(ステップST107)。
これらの検索により該当するカウンタが見つかったら、そのカウンタに対応するバッファを削除対象バッファとして選択する(ステップST108)。
例えば、図4の例では、N=3、C=0、P=0である。このとき、図7に示した処理において、ループ制御変数Kの初期値は3である。
ループ制御変数K=3の場合、第3のグループに新たに属することになる画像データが格納されているバッファが削除対象バッファとして選択される。この場合、画像データが8回撮像されるごとに、値が0のカウンタに対応するバッファが削除対象バッファとして選択される。
図4の例では、第2のグループには4つのサブグループが含まれる。ループ制御変数K=0の場合、サブグループ2に新たに属することになる画像データが格納されているバッファが削除対象バッファとして選択される。図7のステップST105において、K=0に対応するカウンタの値は24である。この場合、画像データが2回撮像されるごとに、値が24のカウンタに対応するバッファが削除対象バッファとして選択される。
ループ制御変数K=1の場合、サブグループ3に新たに属することになる画像データが格納されているバッファが削除対象バッファとして選択される。図7のステップST105において、K=1に対応するカウンタの値は16である。この場合、画像データが4回撮像されるごとに、値が16のカウンタに対応するバッファが削除対象バッファとして選択される。
ループ制御変数K=2の場合、サブグループ4に新たに属することになる画像データが格納されているバッファが削除対象バッファとして選択される。図7のステップST105において、K=2に対応するカウンタの値は8である。この場合、画像データが8回撮像されるごとに、値が8のカウンタに対応するバッファが削除対象バッファとして選択される。
従って、図4の例では、削除対象バッファとして選択されるバッファに対応するカウンタの値は24→16→24→8→24→16→24→0を繰り返す。
また、図5の例では、N=3、C=1、P=1である。このとき、図7に示した処理において、ループ制御変数Kの初期値は2である。
ループ制御変数K=2の場合には、第3のグループに属する画像データが格納されているバッファが削除対象バッファとして選択される。この場合、画像データが4回撮像されるごとに、値が0のカウンタに対応するバッファが削除対象バッファとして選択される。
図5の例では、第2のグループには3つのサブグループが含まれる。ループ制御変数K=0の場合には、第2のグループの中の時系列順で真ん中のサブグループに新たに属することになる画像データが格納されているバッファが削除対象バッファとして選択される。図7のステップST105において、K=0に対応するカウンタの値は24である。この場合、画像データが2回撮像されるごとに、値が24のカウンタに対応するバッファが削除対象バッファとして選択される。
ループ制御変数K=1の場合には、第2のグループの中の左のサブグループ、すなわち時系列順で最も古いサブグループに新たに属することになる画像データが格納されているバッファが削除対象バッファとして選択される。図7のステップST105において、K=1に対応するカウンタの値は16である。この場合、画像データが4回撮像されるごとに、値が16のカウンタに対応するバッファが削除対象バッファとして選択される。
従って、図5の例では、削除対象バッファとして選択されるバッファに対応するカウンタの値は24→16→24→0を繰り返す。
図5の例では、N=3、C=1、P=1、R=1である。この場合、上記(1)式で計算される画像データの枚数はM=17である。従って、本実施形態では、CPU3は、メモリ部4に17個のバッファ0〜バッファ16および17個のカウンタ0〜カウンタ16を設ける。
図5の例では、画像データの撮像が進むにつれて、カウンタ0〜カウンタ16の値は図8に示すように変化する。
図8では、下の方向に時間が進む。画像データ番号=0は、画像データが撮像されていない状態を示す。画像データ番号が0のとき、CPU3はカウンタ0〜カウンタ16を0に初期化する(図6のステップST4)。
画像データ番号=1は、1枚目の画像データが撮像された状態を示す。CPU3は、イメージセンサ制御部2からの格納開始通知を受信する(図6のステップST8;Y)と、図7に示した処理を実行して削除対象バッファとして値が24のカウンタに対応するバッファを検索する(図7のステップST105)。しかし、全てのカウンタの値が0であるので、検索しても見つからない。そこで、CPU3は、カウンタ0を削除対象バッファとして選択する(図7のステップST107、ST108)。ただし、カウンタ0〜カウンタ16は全て値が0であるので、CPU3は、カウンタ0〜バッファカウンタ16のいずれを選択しても良い。以下でも、同様である。
上述したように、図5の例では、(2)式で計算される初期値Vinit=33である。CPU3は、カウンタ0に対応するバッファに1枚目の画像データを格納し、カウンタ0に初期値33を設定する(図6のステップST11、ST12)。
画像データ番号=2は、2枚目の画像データが撮像された状態を示す。CPU3は、イメージセンサ制御部2からの格納開始通知を受信する(図6のステップST8;Y)と、カウンタの値が0以外のカウンタの値を1だけディクリメントする(図6のステップST9)。この場合、カウンタ0だけが−1され、カウンタ0の値は32となる。続いて、CPU3は、図7に示した処理を実行して削除対象バッファとして値が16のカウンタに対応するバッファを検索する(図7のステップST105)。しかし、値が16のカウンタは検索しても見つからない。そこで、CPU3は、カウンタ1を削除対象バッファとして選択する(図7のステップST108)。CPU3は、カウンタ1に対応するバッファに2枚目の画像データを格納し、カウンタ1に初期値33を設定する(図6のステップST11、ST12)。
画像データ番号=3は、3枚目の画像データが撮像された状態を示す。CPU3は、イメージセンサ制御部2からの格納開始通知を受信する(図6のステップST8;Y)と、カウンタの値が0以外のカウンタの値を1だけディクリメントする(図6のステップST9)。この場合、カウンタ0とカウンタ1が−1され、カウンタ0とカウンタ1の値はそれぞれ31と32となる。続いて、CPU3は、図7に示した処理を実行して削除対象バッファとして値が24のカウンタに対応するバッファを検索する(図7のステップST105)。しかし、値が24のカウンタは検索しても見つからない。そこで、CPU3は、カウンタ2を削除対象バッファとして選択する(図7のステップST108)。CPU3は、カウンタ2に対応するバッファに3枚目の画像データを格納し、カウンタ2に初期値33を設定する(図6のステップST11、ST12)。
画像データ番号=4は、4枚目の画像データが撮像された状態を示す。CPU3は、イメージセンサ制御部2からの格納開始通知を受信する(図6のステップST8;Y)と、カウンタの値が0以外のカウンタの値を1だけディクリメントする(図6のステップST9)。この場合、カウンタ0〜カウンタ2が−1され、カウンタ0とカウンタ1とカウンタ2の値はそれぞれ30と31と32となる。続いて、CPU3は、図7に示した処理を実行して削除対象バッファとして値が0のカウンタに対応するバッファを検索する(図7のステップST105)。値が0のカウンタとしてカウンタ3〜カウンタ16が見つかる(図7のステップST107)。CPU3は、カウンタ3〜カウンタ16のいずれを選択しても良いが、ここではカウンタ3を削除対象バッファとして選択するものとする(図7のステップST108)。CPU3は、カウンタ3に対応するバッファに4枚目の画像データを格納し、カウンタ3に初期値33を設定する(図6のステップST11、ST12)。
更に、撮像が続く場合、削除対象バッファとして選択されるバッファのカウンタの値は24→16→24→0を繰り返す。
画像データ番号=11は、11枚目の画像データが撮像された状態を示す。このとき、CPU3は、撮像開始後、めて、カウンタの値が0以外のバッファに対して、撮像データを格納する。CPU3は、カウンタ0〜カウンタ9を1だけディクリメントする。その結果、カウンタ1の値は24になる。一方、CPU3は、図7に示した処理を実行し、削除対象バッファとして値が24のカウンタに対応するバッファを検索する(図7のステップST105)。その結果、CPU3は値が24のカウンタとしてカウンタ1を見つける(図7のステップST107)。CPU3はカウンタ1を削除対象バッファとして選択する(図7のステップST108)。CPU3は、カウンタ1に対応するバッファに11枚目の画像データを格納し、カウンタ1に初期値33を設定する(図6のステップST11、ST12)。
なお、図8において、○印で囲んだ33の値のカウンタは、そのカウンタに対応するバッファに新しく撮像された画像データが格納されることを示す。
以上のように撮像を継続していくと、画像データ番号=32のとき全てのバッファに撮像データが格納された状態になる。この状態で撮像を終了すると、各カウンタの値は、カウンタ0〜カウンタ16の順に、28、12、4、31、32、16、8、18、27,20、22、24、26、30、25、29、33となっている。
撮像を終了すると、画像処理部7が現像処理、画像補正処理、JPEG圧縮処理などを行い、CPU3は、記録メディア制御部5を制御して、17個のバッファに格納されている画像データを記録メディア6に記録させる。
本実施形態では、初期値Vinit=33とカウンタの値の差分は、そのカウンタに対応するバッファに格納された画像データがバッファに格納された後に撮像された画像データの枚数を示している。このように、カウンタの値は相対的な時刻情報を示すので、それぞれのバッファに格納されている画像データの撮像時刻についての相対関係が分かる。
このため、CPU3は、画像データを記録メディア6に記録する際に、間引き連写撮像した17枚の画像データを時系列順に整列させて記録することができる。また、CPU3は、時計部8から現在時刻を取得し、記録メディア6に記録する画像データに対応付けてその画像データが撮像された日時を記録することができる。更に、各バッファの画像データを個別にJPEG圧縮し、各JPEGヘッダ部に撮像された日時の情報を埋め込むことができる。
本実施形態では、図9に示すように、撮像終了のタイミングによって記録メディア6に記録される画像データの時系列的な相対関係が異なる。図9において、実線の四角は、記録メディア6に記録される画像データを示す。×印が付された波線の四角は削除される画像データを示す。
時刻t1に撮像を終了した場合、図9の最も上の行に示すように、例えば、図8に示す画像データ番号=32に対応する画像データが記録メディア6に記録される。すなわち、CPU3は、カウンタ0〜16の値である28、12、4、31、32、16、8、18、27、20、22、24、26、30、25、29、33に対応する時刻に撮像された画像データを記録する。
ただし、これらのカウンタ0〜16の値は、図8に示すように、画像データ番号=1から撮像が開始され、画像データ番号=32に対応する画像データが撮像されたときに撮像を終了した場合の例である。撮像を開始してから撮像が終了するまでの撮像枚数が異なれば、カウンタ0〜16の値は図8に示す画像データ番号=32とは異なる値となる。例えば、図9の最も上の行における時刻t1と最も下の行における時刻t1では、画像データの時系列上での相対関係は同一であるが、カウンタ0〜16の値は異なっている。
また、時刻t2に撮像を終了した場合、図9の2番目の行に示すように、例えば、図8に示す画像データ番号=33に対応する画像データが記録メディア6に記録される。
このように、撮像を終了するタイミングにより記録される画像データの時系列上での相対関係は変わってくる。ただし、図3で説明した関係は保たれる。つまり、変数N、C、P、Rにより決まる第1のグループ、第2のグループおよび第3のグループの記録枚数は、どのようなタイミングで終了しても守られる。また、変数Nにより決まる第2のグループに含まれるサブグループ間の撮像枚数の関係も守られる。すなわち、あるサブグループにおいて記録される画像データのフレームレートは、そのサブグループと隣り合う過去のサブグループにおけるフレームレートの2倍であり、隣り合う未来のサブグループにおけるフレームレートの半分である。
(第2の実施形態)
本発明の第2の実施形態に係る間引き連写撮像も、図10に示すように、第1の実施形態と同様に、複数の画像データを連続して撮像し、過去に遡るほど、撮像された画像データをフレームレートが低くなるように間引いて記録する。
第2の実施形態で使用されるカメラの構造は、図2に示す第1の実施形態で使用されるカメラ10と同一である。また、撮像された一連の画像データの分割についても、図3に示す第1の実施形態と同一である。間引き連写撮像の結果として記録メディア6に記録される画像データも、第1の実施形態と第2の実施形態で同一である。
第1の実施形態ではカウンタとしてダウンカウンタを用いたが、第2の実施形態ではカウンタとしてアップカウンタを用いる点が異なる。図10は、第1の実施形態における図5と同様に、N=3、C=1、P=1、R=1の場合の間引き連写撮像の例である。記録枚数はM=17である。図10は、0の番号を付された画像データが最も新しく撮像されたものであり、32の番号を付された画像データが最も過去に撮像されたものである点を除いて、図5と同一である。
本実施形態でも、画像データを保存するためのバッファをメモリ部4に記録枚数M分用意する。必要なバッファの容量は、(1枚分の画像データを格納するためのバッファ容量)×記録枚数Mとなる。また、記録枚数分のM個のバッファに1対1に対応したM個のカウンタを設ける。これらのカウンタは、メモリ部4に設けても良いし、メモリ部4とは別に専用のカウンタを設けても良い。
なお、Mは第1の実施形態で示した(1)式で計算される。
それぞれのカウンタは、次の規則に従って独立に動作する。
(1)新たに撮像された画像データがメモリ部4のバッファに格納されるごとに、その画像データが格納されたバッファに対応するカウンタに初期値0が設定される。
(2)値がVinitのカウンタを除き、その他のカウンタは1ずつインクリメントされる。ただし、カウンタの値がVinitの場合はインクリメントされない。なお、Vinitは第1の実施形態で示した(2)式で計算される。
本実施形態では、カウンタに初期値0が設定されるため、各カウンタの値は対応するバッファに格納されている画像データに関する相対的な時刻情報を示す。
図11と図12は、本発明の第2の実施形態に係るプログラムのフローチャートの例である。図11と図12は、本発明の第1の実施形態に係るプログラムのフローチャートである図6と図7とほぼ同一である。図11と図6、および図12と図7において同一のステップには同一のステップ番号が付してある。
第2の実施形態では、第1の実施形態と異なり、ステップST24において、CPU3は全てのカウンタの値を(2)式で計算されるVinitに初期化する。また、ステップST29において、CPU3はカウンタの値がVinit以外の全てのカウンタの値を1だけインクリメントする。ステップST32において、CPU3は、画像データが格納されたバッファに対応するカウンタに対して、初期値0を設定する。
更に、ステップST205において、カウンタの値が2×(1+K+R)のカウンタを検索する。ステップST207において、値がVinitのカウンタを検索する
図11と図12のフローチャートから分かる通り、図10の例では、削除対象バッファとして選択されるバッファに対応するカウンタの値は9→17→9→33を繰り返す。
上記各実施形態では、イメージセンサ制御部2が読み出した画像データをメモリ部4のバッファに格納していたが、画像処理部7において処理した後の画像データやJPEG圧縮した後の画像データを格納してもよい。
また、上記各実施形態では、新しく撮像された画像データを削除対象バッファとして選択されたバッファに格納したが、削除対象バッファ以外のバッファに格納することも可能である。例えば、上記(1)式で計算される記録枚数Mよりもバッファとカウンタの数を多くすると、画像データが削除されているバッファが複数存在することになる。この場合、画像データが削除済みのバッファであれば、新しく撮像された画像データをいずれのバッファに格納しても良い。
また、上記各実施形態では、撮像開始の判断をハーフシャッター状態の検出によって行なったが、撮像開始の判断を、カメラの電源投入後、所定時間経過後としたり、ハーフシャッター状態を検出してから数フレーム後にしたりすることもできる。同様に、撮像終了の判断についても、シャッター全押し以外の方法でもよく、画像や音声に変化があったことを検出した場合に撮像終了と判断する等、撮像終了判断にどのような方法を用いてもよい。
上記各実施形態では、図7と図12における“削除対象バッファの選択”フローの中で、ループ制御変数Kを用いて、カウンタの値を求めた。しかし、N、C、P、Rの値が既知であれば、削除対象バッファに対応するカウンタの値を計算できる。そこで、削除対象バッファに対応するカウンタの値を予め計算し、記憶しておいてもよい。
第1の実施形態では、カウンタの値をVinitから0まで1ずつカウントダウンしていたが、例えば、任意の数Z=X×Sを導入して{(Vinit+X)×S}からZまでSずつカウントダウンしてもよい。この場合、新たに撮像された画像データが格納されるバッファに対応するカウンタには、初期値として{(Vinit+X)×S}が設定される。
同様に、第2の実施形態では、カウンタの値を0からVinitまで1ずつカウントアップしていたが、例えば、任意の数Z=X×Sを導入して、Zから{(Vinit+X)×S}までSずつカウントアップしてもよい。この場合、新たに撮像された画像データが格納されるバッファに対応するカウンタには、初期値としてZが設定される。
このように、本発明の実施形態では、バッファに新たに撮像された画像データを格納する場合に、変数N、C、P、Rによって求められる初期値をカウンタに設定する。これにより、カウンタの値によって相対的な時間情報を計算することができる。このため、時刻情報を保存する必要がなくなり、回路規模が縮小し、ソフトウェアが簡略になる。
また、上記各実施形態では、間引き連写撮像における必要なバッファの数を(1)式として定式化した。上記各実施形態では、撮像された画像データをバッファに1つずつ格納していく過程において、削除対象バッファに格納されている画像データを、バッファが画像データを保持できる最長時間(第1の実施形態では、カウンタの値が初期値「Vinit」から「0」になるのに要する時間)が経過する前(例えば、カウンタの値が「24」や「16」になった時点)に削除することによって、画像データの間引きを行った。これにより、撮像された画像データの全てをバッファに一旦保持させてから間引きを行う必要がなくなり、間引き後の画像データ、つまり最終的に記録メディア6に記録される画像データ(記録枚数M分の画像データ)を格納できる最低限のバッファの容量さえ用意しておけばよいので、バッファの容量を低減することができる。また、上記各実施形態では、バッファの容量(バッファ数)を変数N、C、P、Rによって任意に設定することができる。
上記各実施形態では、変数NとCにより基本的な間引き連写撮像の枚数が決まる。また、変数Cにより、間引き連写撮像の最低フレームレートの値と、最低フレームレートでの記録枚数を変更できる。また、変数RとPによって、間引き連写撮像の最高フレームレートと最低フレームレートで記録される画像データの枚数を任意に増やすことができる。
このように、本発明の実施形態では、変数N、C、P、Rの値を調整することによってカウンタの値の初期値Vinitを変更することができる。この初期値Vinitは画像データを記録メディア6に記録できる時間を規定するため、換言すれば、変数N、C、P、Rの値を調整することによって画像データを記録メディア6に記録できる時間を調整することができる。
これにより、様々なアプリケーションにおいて、容易に本発明を適用できるようになる。
また、上記各実施形態では、削除対象バッファの選択規則について明確にしている。この規則に従えば、新しく画像データが撮像されるごとに1個の削除対象バッファを選択することができる。そのため、間引き連写撮像のための処理が、「削除対象バッファ選択→画像データ記録」という処理の繰り返しになり、単純になる。
以上、本発明の実施形態について説明したが、設計上の都合やその他の要因によって必要となる様々な修正や組み合わせは、請求項に記載されている発明や発明の実施形態に記載されている具体例に対応する発明の範囲に含まれると理解されるべきである。
本発明の第1の実施形態に係る間引き連写撮像の例を示す図である。 本発明の実施形態に係るカメラのブロック図である。 本発明の実施形態に係る撮像された一連の画像データの分割を示す図である。 本発明の第1の実施形態に係る画像データを削除するタイミングの例を示す図である。 本発明の第1の実施形態に係る間引き連写撮像の一例を示す図である。 本発明の第1の実施形態に係るプログラムのフローチャートを示す図である。 本発明の第1の実施形態に係る削除対象バッファ選択プログラムのフローチャートを示す図である。 本発明の第1の実施形態に係る画像データが撮像されるにつれて変化するカウンタ0〜カウンタ16の値の一例を示す図である。 本発明の第1の実施形態に係る撮像終了のタイミングに応じた間引き連写撮像により記録される画像データの時系列上での相対関係を示す図である。 本発明の第2の実施形態に係る間引き連写撮像の一例を示す図である。 本発明の第2の実施形態に係るプログラムのフローチャートを示す図である。 本発明の第2の実施形態に係る削除対象バッファ選択プログラムのフローチャートを示す図である。
符号の説明
1…イメージセンサ部
2…イメージセンサ制御部
3…CPU
4…メモリ部
5…記録メディア制御部
6…記録メディア
7…画像処理部
8…シャッター部
9…時計部
10…カメラ

Claims (6)

  1. 所定時間間隔でフレーム画像データを順次出力する撮像手段と、
    前記撮像手段から出力される所定の複数フレーム分の画像データを一時的に保持可能な複数エリアを有するバッファと、
    撮影指示を与える撮影指示手段と、を備え、
    前記撮影指示手段により撮影指示が与えられたときに、前記バッファに保持されている複数フレーム分の画像データを、間引かずにそのまま記録メディアに転送して保存する撮像装置において、
    前記バッファ空きエリアの有無に関わらず、前記撮像手段から出力される最新のフレーム画像データを保持させるために、古いフレーム画像データほど高い間引き率となるように、前記バッファ内のフレーム画像データを削除する削除手段と、
    前記削除手段により削除されたフレーム画像データが保持されていたエリアに、前記最新のフレーム画像データを書き込む書込手段と、
    を更に備えたことを特徴とする撮像装置。
  2. 前記削除手段により削除されるフレーム画像データの間引き率は、上限及び下限が固定されており、当該上下限間の遷移態様は、ユーザが任意に設定できる、
    ことを特徴とする請求項1に記載の撮像装置。
  3. 前記削除手段は、前記撮像手段のフレーム画像データ出力間隔に同期して動作し、1回の動作で複数のフレーム画像データを削除しない
    ことを特徴とする請求項1又は2に記載の撮像装置。
  4. 前記バッファの各エリアに保持されるフレーム画像データの時系列順位を示すためのカウンタを更に備え、
    前記バッファに前記最新のフレーム画像データが保持される度に、前記カウンタの内容を更新する
    ことを特徴とする請求項1から3のいずれか1項に記載の撮像装置。
  5. 所定時間間隔でフレーム画像データを順次出力する撮像手段と、
    前記撮像手段から出力される所定の複数フレーム分の画像データを一時的に保持可能な複数エリアを有するバッファと、
    撮影指示を与える撮影指示手段と、を備え、
    前記撮影指示手段により撮影指示が与えられたときに、前記バッファに保持されている複数フレーム分の画像データを、間引かずにそのまま記録メディアに転送して保存する撮像装置において、
    前記バッファの空きエリアの有無に関わらず、前記撮像手段から出力される最新のフレーム画像データを保持させるために、古いフレーム画像データほど高い間引き率となるように、前記バッファ内のフレーム画像データを削除し、
    削除されたフレーム画像データが保持されていたエリアに、前記最新のフレーム画像データを書き込む
    ことを特徴とする撮像方法
  6. 所定時間間隔でフレーム画像データを順次出力する撮像手段と、
    前記撮像手段から出力される所定の複数フレーム分の画像データを一時的に保持可能な複数エリアを有するバッファと、
    撮影指示を与える撮影指示手段と、を備え、
    前記撮影指示手段により撮影指示が与えられたときに、前記バッファに保持されている複数フレーム分の画像データを、間引かずにそのまま記録メディアに転送して保存する撮像装置のコンピュータを
    前記バッファ空きエリアの有無に関わらず、前記撮像手段から出力される最新のフレーム画像データを保持させるために、古いフレーム画像データほど高い間引き率となるように、前記バッファ内のフレーム画像データを削除する削除手段と、
    前記削除手段により削除されたフレーム画像データが保持されていたエリアに、前記最新のフレーム画像データを書き込む書込手段と、
    して機能させるための撮像プログラム
JP2008069627A 2008-03-18 2008-03-18 撮像装置、撮像方法および撮像プログラム Expired - Fee Related JP4561851B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008069627A JP4561851B2 (ja) 2008-03-18 2008-03-18 撮像装置、撮像方法および撮像プログラム
KR1020090021165A KR101018549B1 (ko) 2008-03-18 2009-03-12 촬상장치, 촬상방법 및 촬상 프로그램을 기록한 기록매체
US12/404,492 US8587694B2 (en) 2008-03-18 2009-03-16 Imaging apparatus, imaging method and computer-readable recording medium storing imaging program which store frame image data such that a thinning rate is higher for older frame image data
TW098108524A TWI449413B (zh) 2008-03-18 2009-03-17 攝像裝置、攝像方法及記錄有攝像程式之記錄媒體
CN2009101268327A CN101540840B (zh) 2008-03-18 2009-03-18 拍摄装置以及拍摄方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008069627A JP4561851B2 (ja) 2008-03-18 2008-03-18 撮像装置、撮像方法および撮像プログラム

Publications (2)

Publication Number Publication Date
JP2009225297A JP2009225297A (ja) 2009-10-01
JP4561851B2 true JP4561851B2 (ja) 2010-10-13

Family

ID=41088485

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008069627A Expired - Fee Related JP4561851B2 (ja) 2008-03-18 2008-03-18 撮像装置、撮像方法および撮像プログラム

Country Status (5)

Country Link
US (1) US8587694B2 (ja)
JP (1) JP4561851B2 (ja)
KR (1) KR101018549B1 (ja)
CN (1) CN101540840B (ja)
TW (1) TWI449413B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8736702B2 (en) * 2009-12-22 2014-05-27 Samsung Electronics Co., Ltd. Apparatus and method of calculating a shooting frequency based on the obtained sound information
US8428308B2 (en) 2011-02-04 2013-04-23 Apple Inc. Estimating subject motion for capture setting determination
US8379934B2 (en) 2011-02-04 2013-02-19 Eastman Kodak Company Estimating subject motion between image frames
US8736704B2 (en) 2011-03-25 2014-05-27 Apple Inc. Digital camera for capturing an image sequence
US8736697B2 (en) 2011-03-25 2014-05-27 Apple Inc. Digital camera having burst image capture mode
US8736716B2 (en) * 2011-04-06 2014-05-27 Apple Inc. Digital camera having variable duration burst mode
KR101805626B1 (ko) * 2011-11-18 2017-12-08 삼성전자주식회사 디지털 촬영 장치 및 이의 연속 촬영 제어 방법
JP6341815B2 (ja) * 2014-09-08 2018-06-13 キヤノン株式会社 撮像装置、その制御方法、及びプログラム
CN108989832B (zh) * 2017-05-31 2021-12-10 腾讯科技(深圳)有限公司 一种图像数据处理方法及其设备、存储介质、终端
JP7027071B2 (ja) * 2017-08-31 2022-03-01 キヤノン株式会社 記録制御装置およびその制御方法
CN109788224B (zh) 2019-03-26 2020-12-04 歌尔科技有限公司 视频录制方法、装置、网络摄像器及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003244619A (ja) * 2002-02-18 2003-08-29 Nikon Gijutsu Kobo:Kk デジタルカメラ
JP2004304418A (ja) * 2003-03-31 2004-10-28 Minolta Co Ltd カメラ
JP2005080226A (ja) * 2003-09-03 2005-03-24 Nikon Corp 電子スチルカメラ
JP2006311387A (ja) * 2005-04-28 2006-11-09 Toshiba Corp 撮像装置及び撮像方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2849301B2 (ja) * 1993-03-25 1999-01-20 株式会社日立製作所 撮像装置
US6977673B1 (en) * 1995-02-23 2005-12-20 Avid Technology, Inc. Portable moving picture recording device including switching control for multiple data flow configurations
US6597394B1 (en) * 1997-11-16 2003-07-22 Pictos Technologies, Inc. Programmable image transform processor for digital image processing
CN1181676C (zh) * 1999-02-08 2004-12-22 三洋电机株式会社 移动图像记录装置与数码照相机
JP2003153177A (ja) 2001-11-08 2003-05-23 Mega Chips Corp 映像録画装置および映像録画方法
JP4355156B2 (ja) * 2002-04-16 2009-10-28 パナソニック株式会社 画像復号化方法及び画像復号化装置
US7365775B2 (en) * 2002-05-20 2008-04-29 Olympus Corporation Image compression apparatus and method, image regeneration apparatus, camera and camera system
JP2004015286A (ja) * 2002-06-05 2004-01-15 Seiko Epson Corp ディジタルカメラ
JP2005107213A (ja) * 2003-09-30 2005-04-21 Olympus Corp カメラの自動焦点調節装置
JP2005110071A (ja) * 2003-10-01 2005-04-21 Hitachi Ltd 画像符号化装置、ダイジェスト画像作成装置及びダイジェスト画像作成方法
US7352390B2 (en) * 2003-10-08 2008-04-01 Hewlett-Packard Development Company, L.P. Digital camera for capturing image data with rapid response between activating a capture trigger and capturing image data
US6990637B2 (en) * 2003-10-23 2006-01-24 Microsoft Corporation Graphical user interface for 3-dimensional view of a data collection based on an attribute of the data
JP4321265B2 (ja) * 2004-01-06 2009-08-26 株式会社ニコン 電子カメラ
US7787026B1 (en) * 2004-04-28 2010-08-31 Media Tek Singapore Pte Ltd. Continuous burst mode digital camera
JP4116604B2 (ja) 2004-10-18 2008-07-09 株式会社日立国際電気 データ記録装置
JP4528189B2 (ja) * 2005-04-05 2010-08-18 オリンパスイメージング株式会社 撮像装置
JP2007104529A (ja) * 2005-10-07 2007-04-19 Eastman Kodak Co デジタルカメラおよびタイムラグ設定方法
JP2007142565A (ja) * 2005-11-15 2007-06-07 Olympus Imaging Corp 撮像装置及びその撮像方法
JP2007140278A (ja) * 2005-11-21 2007-06-07 Eastman Kodak Co デジタルカメラ、露出条件決定方法
US7764965B2 (en) * 2007-04-10 2010-07-27 Microsoft Corporation Dynamically changing service characteristics based on device and network connectivity attributes
WO2009104776A1 (ja) * 2008-02-20 2009-08-27 日本電気株式会社 撮像装置、撮像方法及びプログラム
US8423704B2 (en) * 2008-03-14 2013-04-16 International Business Machines Corporation Dynamic optimization of memory use in a digital recording device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003244619A (ja) * 2002-02-18 2003-08-29 Nikon Gijutsu Kobo:Kk デジタルカメラ
JP2004304418A (ja) * 2003-03-31 2004-10-28 Minolta Co Ltd カメラ
JP2005080226A (ja) * 2003-09-03 2005-03-24 Nikon Corp 電子スチルカメラ
JP2006311387A (ja) * 2005-04-28 2006-11-09 Toshiba Corp 撮像装置及び撮像方法

Also Published As

Publication number Publication date
TWI449413B (zh) 2014-08-11
TW200948049A (en) 2009-11-16
JP2009225297A (ja) 2009-10-01
CN101540840A (zh) 2009-09-23
KR20090100253A (ko) 2009-09-23
US8587694B2 (en) 2013-11-19
KR101018549B1 (ko) 2011-03-03
US20090237527A1 (en) 2009-09-24
CN101540840B (zh) 2012-02-01

Similar Documents

Publication Publication Date Title
JP4561851B2 (ja) 撮像装置、撮像方法および撮像プログラム
US11570414B2 (en) Imaging device
US8730339B2 (en) Camera
JP2008283629A (ja) 撮像装置、撮像信号処理方法、プログラム
JP2008283630A (ja) 撮像装置、撮像信号処理方法、プログラム
JP5338373B2 (ja) 撮像装置
JP2001094854A (ja) 電子スチルカメラ
JP2011130106A (ja) 記録装置及び記録方法
JP5131586B2 (ja) 撮影装置、画像記録方法、及びプログラム
JP2010147659A (ja) 電子カメラ
JP2006020096A (ja) 撮像記録装置、撮像記録方法及び撮像記録制御プログラム
JP4303622B2 (ja) 画像再生装置および方法
JP5541669B2 (ja) 記録装置、記録方法及びプログラム
US20240146891A1 (en) Imaging device
JP7171337B2 (ja) 撮像装置、画像記録方法及びプログラム
JP6702465B2 (ja) 撮像装置
US7689046B2 (en) Hybrid image and movie imaging system and method
JP2009130608A (ja) カメラ
JP2001094927A (ja) 電子スチルカメラ
JP3830145B2 (ja) デジタルカメラの画像記録方法
JP2008153828A (ja) 撮像装置
JP2009027545A (ja) 画像処理装置およびこれを備えるカメラ
JP2011188348A (ja) カメラ、情報処理装置、および情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100621

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100706

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100719

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130806

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees