ノイズ低減処理装置、カメラ、およびノイズ低減処理プログラム
【課題】ノイズ低減処理における目的音の劣化を低減すること。
【解決手段】動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出部と、音信号を取得する音信号取得部と、前記動作タイミング信号を検出して、前記動作部の動作によって生じるノイズ音が発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズが発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理部と、を備えることを特徴とする。
【解決手段】動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出部と、音信号を取得する音信号取得部と、前記動作タイミング信号を検出して、前記動作部の動作によって生じるノイズ音が発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズが発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理部と、を備えることを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音信号からノイズを減算するノイズ低減処理装置、カメラ、およびノイズ低減処理プログラムに関する。
【背景技術】
【0002】
例えば、連続的に発生している周囲音をノイズとして除去するため、音信号から周囲音に対応するノイズ(音信号に含まれているノイズ成分)を算出して、このノイズを音信号から減じるものがある(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−195955号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
撮像装置に設けられた光学系において、レンズを駆動するギア列等の駆動系の回転方向が逆転するとき等、一時的にノイズの音量が大きくなる場合がある。このように、動作部の動作状態に応じて駆動により発生するノイズの音量やタイミングが異なる場合、特許文献1の技術を用いたノイズ低減処理を行うと、収音対象である目的音が劣化してしまう問題があった。
【0005】
本発明は、前記の点に鑑みてなされたものであり、ノイズ低減処理における目的音の劣化を低減するノイズ低減処理装置、カメラ、およびノイズ低減処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、上記の課題を解決するためになされたものであり、動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出部と、音信号を取得する音信号取得部と、前記動作タイミング信号を検出して、前記動作部の動作によって生じるノイズ音が発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズ音が発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理部と、を備えることを特徴とする。
【発明の効果】
【0007】
本発明によれば、ノイズ低減処理における目的音の劣化を低減することができる。
【図面の簡単な説明】
【0008】
【図1】本発明の実施形態に係るノイズ低減処理部を含む撮像装置の構成の一例を示すブロック図である。
【図2】本発明の実施形態に係る動作部の動作タイミング信号と音信号との関係の一例を説明するための参考図である。
【図3】図2に示す音信号と窓関数との関係を説明するための参考図である。
【図4】本発明の実施形態に係る衝撃音ノイズ低減処理部が取得する第1周波数スペクトルと第2周波数スペクトルの一例を説明するための図である。
【図5】図3に示した各周波数スペクトルの周波数成分の一例を示す図である。
【図6】本実施形態に係る衝撃音ノイズ低減処理の一例について説明するための図である。
【図7】本実施形態に係るノイズ低減処理方法の一例について説明するためのフローチャートである。
【図8】目的音が男声である場合の周波数スペクトルと、目的音が女声である場合の周波数スペクトルの一例を示す図である。
【図9】エンコーダの出力とマイク音信号の一例を示す図である。
【図10】コマンド出力、エンコーダの出力、およびマイク音信号の一例を示す図である。
【図11】本発明の実施形態に係る動作部の動作タイミング信号と音信号との関係の他の例を説明するための参考図である。
【図12】図11に示す音信号と窓関数との関係を説明するための参考図である。
【図13】本発明の実施形態に係る衝撃音ノイズ低減処理部が取得する第1周波数スペクトルと第2周波数スペクトルの他の例を説明するための図である。
【発明を実施するための形態】
【0009】
本発明の実施形態について図面を参照して詳細に説明する。図1には、本実施形態に係る撮像装置の構成を示すブロック図が示されている。
図1に示す通り、撮像装置100は、光学系による像を撮像し、得られた画像データを記憶媒体200に記憶させるとともに、マイクによって収音されたマイク音信号に対してノイズ低減処理を行い、ノイズ低減処理後の音信号を記憶媒体200に記憶させる。
この撮像装置100は、ノイズ低減処理部250を備える。このノイズ低減処理部250が、マイクによって収音された音からノイズを低減するノイズ低減処理を行う。
【0010】
本実施形態に係るノイズ低減処理部250は、動作部が動作することによって発生するノイズ(以下、動作音という)を低減するためのノイズ低減処理を実行する。例えば、撮像装置100において、AF(Auto Focus)やVR(Vibration Reduction)等の処理において光学系を駆動する場合、モータや光学系が動くことによりノイズ(動作音)が発生する。また、モータが回転方向を切り換えた場合、一時的に大きい音のノイズ(動作音)が発生する。このように、動作部の動作状態が変化した場合に、一時的に発生する大きい音を衝撃音という。一方、この衝撃音よりも小さく、光学系やモータが動いているときに発生する音を駆動音という。つまり、駆動音は、衝撃音以外のノイズである。本実施形態に係るノイズ低減処理部250は、マイク音信号から衝撃音によるノイズを低減する衝撃音ノイズ低減処理を行うとともに、マイク音信号から駆動音によるノイズを低減する駆動音ノイズ低減処理を行う。
【0011】
以下、撮像装置100とノイズ低減処理部250の構成の一例について詳細に説明する。なお、本実施形態において、ノイズ低減処理部250は、撮像装置100に内蔵されている例について説明するが、本発明はこれに限られない。例えば、ノイズ低減処理部250は、撮像装置100の外部装置であってもよい。
【0012】
撮像装置100は、撮像部110と、バッファメモリ部130と、画像処理部140と、表示部150と、記憶部160と、通信部170と、操作部180と、CPU190(本発明にかかる制御部に相当する。)と、計時部220と、マイク230(本発明にかかる音信号取得部に相当する。)と、A/D変換部240と、ノイズ低減処理部250と、電池260と、を備える。
【0013】
撮像部110は、光学系111と、撮像素子119と、A/D(Analog/Digital)変換部120とを備え、設定される撮像条件(例えば絞り値、露出値等)に応じて予め決められた駆動パターンに従って、CPU190により制御される。この撮像部110は、光学系111による光学像を撮像素子119に結像させて、A/D変換部120によってデジタル信号に変換された光学像に基づく画像データを生成する。
【0014】
光学系111は、焦点調整レンズ(以下、「AFレンズ」という)112と、手ブレ補正レンズ(以下、「VRレンズ」という)113と、ズームレンズ114と、ズームエンコーダ115(本発明にかかる動作検出部に相当する。)と、レンズ駆動部116(本発明にかかる駆動部に相当する。)と、AFエンコーダ117(本発明にかかる動作検出部に相当する。)と、手ブレ補正部118(本発明にかかる駆動部に相当する。)を備える。
これら光学系111の各構成は、CPU190による焦点調整処理、手ブレ補正処理、およびズーム処理において、それぞれの駆動パターンに従って、駆動する。つまり、光学系111は、撮像装置100における動作部である。
【0015】
この光学系111は、ズームレンズ114から入射し、ズームレンズ114、VRレンズ113、AFレンズ112の順番で通過した光学像を、撮像素子119の受光面に導く。
レンズ駆動部116は、AFレンズ112およびズームレンズ114の位置を制御するための駆動制御信号(コマンド)をCPU190から入力する。このレンズ駆動部116は、入力する駆動制御信号に応じて、AFレンズ112およびズームレンズ114の位置を制御する。
つまり、この駆動制御信号がCPU190からレンズ駆動部116に入力されてレンズ駆動部116が駆動することにより、AFレンズ112およびズームレンズ114が移動(動作)する。本実施形態において、CPU190が駆動制御信号を出力したタイミングを、AFレンズ112およびズームレンズ114の動作が開始された動作開始タイミングという。
【0016】
ズームエンコーダ115は、ズームレンズ114の位置を表わすズームポジションを検出し、CPU190に出力する。このズームエンコーダ115は、ズームレンズ114の移動を検出し、例えば、ズームレンズ114が光学系111内を移動している場合にパルス信号をCPU190に出力する。一方、停止している場合、ズームエンコーダ115は、パルス信号の出力を停止する。
【0017】
AFエンコーダ117は、AFレンズ112の位置を表わすフォーカスポジションを検出し、CPU190に出力する。このAFエンコーダ117は、AFレンズ112の移動を検出し、例えば、AFレンズ112が光学系111内を移動している場合にパルス信号をCPU190に出力する。一方、停止している場合、AFエンコーダ117は、パルス信号の出力を停止する。
【0018】
なお、ズームエンコーダ115は、ズームポジションを検出するために、ズームレンズ114の駆動方向を検出するものであってもよい。また、AFエンコーダ117は、フォーカスポジションを検出するために、AFレンズ112の駆動方向を検出するものであってもよい。
例えば、ズームレンズ114やAFレンズ112は、レンズ駆動部116によって駆動される駆動機構(例えばモータやカム等)が時計回り(CW)あるいは反時計回り(CCW)に回転することにより光軸方向に移動する。ズームエンコーダ115およびAFエンコーダ117は、それぞれ、駆動機構の回転方向(ここでは、時計回りあるいは反時計回り)を検出することよって、ズームレンズ114およびAFレンズ112が移動していることを検出するものであってもよい。
【0019】
手ブレ補正部118は、例えば振動ジャイロ機構を備え、光学系111による像の光軸ぶれを検出し、この光軸ぶれを打ち消す方向にVRレンズ113を動かす。この手ブレ補正部118は、例えばVRレンズ113を動かしている状態においてハイレベルの信号をCPU190に出力する。一方、VRレンズ113を停止させている状態において、手ブレ補正部118は、ローレベルの信号の出力を停止する。
【0020】
撮像素子119は、例えば、光電変換面を備え、その受光面に結像した光学像を電気信号に変換して、A/D変換部120に出力する。
この撮像素子119は、操作部180を介して撮影指示を受け付けた際に得られる画像データを、静止画又は動画の画像データとして、A/D変換部120を介して記憶媒体200に記憶させる。一方、撮像素子119は、操作部180を介して撮像指示を受け付けていない状態において、連続的に得られる画像データをスルー画データとして、A/D変換部120を介してCPU190および表示部150に出力する。
【0021】
A/D変換部120は、撮像素子119によって変換された電気信号をデジタル化して、デジタル信号である画像データをバッファメモリ部130に出力する。
【0022】
バッファメモリ部130は、撮像部110によって撮像された画像データを、一時的に記憶する。また、バッファメモリ部130は、マイク230が収音したマイク検出音に応じたマイク音信号を、一時的に記憶する。なお、バッファメモリ部130は、マイク検出音が収音された時刻と、バッファメモリ部130における位置とを対応付けて、マイク検出音に応じたマイク音信号を記憶してもよい。
【0023】
画像処理部140は、記憶部160に記憶されている画像処理条件を参照して、バッファメモリ部130に一時的に記憶されている画像データに対して、画像処理をする。画像処理された画像データは、通信部170を介して記憶媒体200に記憶される。なお、画像処理部140は、記憶媒体200に記憶されている画像データに対して、画像処理をしてもよい。
【0024】
表示部150は、例えば液晶ディスプレイであって、撮像部110によって得られた画像データや操作画面等を表示する。
【0025】
記憶部160は、CPU190によってシーン判定の際に参照される判定条件や、シーン判定によって判断されたシーン毎に対応付けられた撮像条件等を記憶する。
【0026】
通信部170は、カードメモリ等の取り外しが可能な記憶媒体200と接続され、この記憶媒体200への情報(画像データや音データ等)の書込み、読み出し、あるいは消去を行う。
【0027】
操作部180は、例えば、電源スイッチ、シャッターボタン、マルチセレクタ(十字キー)、又はその他の操作キーを備え、ユーザによって操作されることでユーザの操作入力を受け付け、操作入力に応じた操作情報をCPU190に出力する。この操作部180は、ユーザによって押下される際、物理的な動作音を発生する場合がある。本実施形態において、ユーザの操作入力に応じた操作情報が操作部180からCPU190に入力するタイミングを、操作部180の動作が開始される動作開始タイミングという。
【0028】
記憶媒体200は、撮像装置100に対して着脱可能に接続される記憶部であって、例えば、撮像部110によって生成された(撮影された)画像データや、ノイズ低減処理部250により音信号処理された音信号を記憶する。
【0029】
バス210は、撮像部110と、バッファメモリ部130と、画像処理部140と、表示部150と、記憶部160と、通信部170と、操作部180と、CPU190と、計時部220と、A/D変換部240と、ノイズ低減処理部250と接続され、各構成部から出力されたデータ等を転送する。
【0030】
計時部220は、日にちや時刻を計時して、計時した日時を表わす日時情報を出力する。
【0031】
マイク230は、周辺の音を収音し、この音のマイク音信号をA/D変換部240に出力する。このマイク230によって収音されるマイク検出音には、主に、収音対象である目的音と、動作部による動作音(ノイズ)とが含まれている。
【0032】
ここで、マイク230によって取得されたマイク音信号について、例えば、AFレンズ112が動作された時に得られたマイク音信号を例に、図2、3を参照して説明する。
図2(A)は、AFエンコーダ117の出力と時間との関係の一例を示す。図2(B)は、マイク音信号と時間の関係の一例が示されている。なお、図2(B)は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。図2(A)と図2(B)に示すAFレンズ112の駆動パターンは、例えば、焦点距離αでピントを合わせるAF処理を行う場合の駆動パターンを示す。
【0033】
図2(A)には、その縦軸に、AFエンコーダ117出力から求めた、AFレンズ112を駆動する駆動機構の回転方向を示す。
この焦点距離αでピントを合わせるAF処理を行う駆動パターンでは、図2(A)に示す通り、AFレンズ112を駆動する駆動機構が、時刻t10〜t20において、時計回りCWに回転して、その後静止する。
つまり、時刻t10は、AFレンズ112の動作開始タイミングを、時刻t20は、AFレンズ112の動作停止タイミングを、それぞれ表わしている。なお、本実施形態において、動作開始タイミングの時刻t10は、AFレンズ112の位置を制御するための駆動制御信号をCPU190が出力したタイミングを示す。動作停止タイミングの時刻t20は、AFエンコーダ117からのパルス信号の出力が停止したタイミングを示す。
【0034】
従って、図2(B)に示す通り、時刻t10〜t20の期間で、マイク音信号にAFレンズ112による動作音が重畳(発生)している、又は、動作音が重畳している可能性が高い。本実施形態においては、時刻t10〜t20の期間において、AFレンズ112による動作音であるノイズが発生している場合について以下説明する。
また、図2(B)に示す通り、時刻t10、t20においては、それぞれ衝撃音が発生している可能性が高い。本実施形態においては、時刻t10、t20において、AFレンズ112による衝撃音が発生している場合について以下説明する。
【0035】
また、衝撃音が発生した場合、その衝撃音が発生している可能性の高い時間は、各駆動パターンに応じて予め決められている。焦点距離αでピントを合わせるAF処理を行う駆動パターンでは、図3に示すような衝撃音の発生する時間が決められている。
図3は、焦点距離αでピントを合わせるAF処理を行う駆動パターンでAFレンズ112を駆動した際に、マイク230で収音されるマイク音信号の一例を示す。図3に示すグラフは、縦軸にマイク230によって収音されたマイク音信号を、横軸に時間を、それぞれ示す。なお、図3は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。
焦点距離αでピントを合わせるAF処理を行う駆動パターンでは、時刻t10〜t11までの時間、および時刻t20〜t21までの時間が、それぞれ、衝撃音の発生する時間であると予め決められている。
本実施形態では、図3に示す通り、この衝撃音の発生する期間において、衝撃音が発生している例について説明する。
【0036】
図1に戻って、撮像装置100の各構成の説明を続ける。
CPU190は、設定された撮像条件(例えば絞り値、露出値等)に応じた駆動パターンに従って撮像部110を制御する。このCPU190は、ズームエンコーダ115から出力されるズームポジションおよびAFエンコーダ117から出力されるフォーカスポジションに基づき、レンズ駆動部116を駆動する駆動制御信号を生成して、レンズ駆動部116に出力する。その生成アルゴリズムは、必要に応じて既存のアルゴリズムを適宜用いてよい。
【0037】
タイミング信号検出部191は、撮像装置100が備えている動作部の動作状態が変化するタイミングを検出する。この動作状態が変化するタイミングとしては、例えば、動作部が動作を開始する動作開始タイミングと、動作部の動作が停止する動作停止タイミングとがある。
ここでいう動作部とは、例えば、上述した光学系111、あるいは、操作部180のことであり、撮像装置100が備えている構成のうち、動作することにより、または、動作されることにより、動作音が生じる(または、動作音が生じる可能性がある)構成である。
言い換えると、動作部とは、撮像装置100が備えている構成のうち、動作部が動作することにより生じた動作音、または、動作部が動作されることにより生じた動作音が、マイク230により収音される(または、収音される可能性のある)構成である。
【0038】
例えば、このタイミング信号検出部191は、動作部を動作させる駆動制御信号に基づいて、動作部の動作状態が変化するタイミングを検出してもよい。この駆動制御信号とは、動作部を動作させる駆動部に対して、動作部を動作させるようにする駆動制御信号、または、この駆動部を駆動させる駆動制御信号である。
【0039】
例えば、タイミング信号検出部191は、ズームレンズ114、VRレンズ113、または、AFレンズ112を駆動させるため、レンズ駆動部116または手ブレ補正部118に入力される駆動制御信号に基づいて、ズームレンズ114、VRレンズ113、または、AFレンズ112の動作が開始された動作開始タイミングを検出する。この場合、タイミング信号検出部191は、CPU190が駆動制御信号を生成する場合にCPU190内部で実行される処理やコマンドに基づいて、動作開始タイミングを検出してもよい。
また、タイミング信号検出部191は、操作部180から入力されるズームレンズ114、または、AFレンズ112を駆動させることを示す操作信号に基づいて、動作開始タイミングを検出してもよい。
【0040】
また、タイミング信号検出部191は、動作部が動作されたことを示す信号に基づいて、動作部の動作状態が変化するタイミングを検出してもよい。
例えば、タイミング信号検出部191は、ズームエンコーダ115またはAFエンコーダ117の出力に基づいて、ズームレンズ114またはAFレンズ112が駆動されたことを検出することにより、ズームレンズ114またはAFレンズ112の動作開始タイミングを検出してもよい。また、タイミング信号検出部191は、ズームエンコーダ115またはAFエンコーダ117の出力に基づいて、ズームレンズ114またはAFレンズ112が停止されたことを検出することにより、ズームレンズ114またはAFレンズ112の動作停止タイミングを検出してもよい。
また、タイミング信号検出部191は、手ブレ補正部118からの出力に基づいて、VRレンズ113が駆動されたことを検出することにより、VRレンズ113の動作開始タイミングを検出してもよい。このタイミング信号検出部191は、手ブレ補正部118からの出力に基づいて、VRレンズ113が停止されたことを検出することにより、VRレンズ113の動作停止タイミングを検出してもよい。
さらに、タイミング信号検出部191は、操作部180からの入力に基づいて、操作部180が操作されたことを検出することにより、動作部が動作するタイミングを検出してもよい。
【0041】
タイミング信号検出部191は、撮像装置100が備えている動作部の動作開始タイミングを検出し、検出した動作開始タイミングを示す動作開始タイミング信号を、ノイズ低減処理部250に出力する。また、タイミング信号検出部191は、動作停止タイミングを検出し、この検出した動作停止タイミングを示す動作停止タイミング信号を、ノイズ低減処理部250に出力する。
本実施形態において、タイミング信号検出部191は、AFレンズ112を動かす駆動制御信号がCPU190からレンズ駆動部116に出力されるタイミングを、AFレンズ112の動作開始タイミングと判定する。タイミング信号検出部191は、例えば、図3を用いた例で示す衝撃音が発生している時刻t10〜t11を示す情報を、動作開始タイミング信号として出力する。
また、タイミング信号検出部191は、AFエンコーダ117から出力されるパルス信号に基づき、このパルス信号の出力が停止した時を、AFレンズ112の動作が停止した動作停止タイミングと判定する。タイミング信号検出部191は、例えば、図3を用いた例で示す衝撃音が発生している時刻t20〜t21を示す情報を、動作停止タイミング信号として出力する。
【0042】
A/D変換部240は、マイク230から入力されたアナログ信号であるマイク音信号をデジタル信号であるマイク音信号に変換する。このA/D変換部240は、デジタル信号であるマイク音信号を、ノイズ低減処理部250に出力する。
また、A/D変換部240は、デジタル信号であるマイク音信号を、バッファメモリ部130あるいは記憶媒体200に記憶させる構成であってもよい。
【0043】
ノイズ低減処理部250は、A/D変換部240によりデジタル信号に変換されたマイク音信号に対して、例えばAFレンズ112、VRレンズ113、ズームレンズ114等の動作部による動作音であるノイズを低減するなどのノイズ低減処理を実行し、このノイズ低減処理した音信号を記憶媒体200に記憶させる。
このノイズ低減処理部250は、音信号処理部251と、衝撃音ノイズ低減処理部252と、駆動音ノイズ低減処理部253と、逆フーリエ変換部254とを含む。
【0044】
音信号処理部251は、A/D変換部240から出力されたマイク音信号に対して、予め決められた区間ごとに窓関数で重み付けするとともに、この区間毎のマイク音信号を周波数領域で表わされるスペクトルに変換して、この周波数領域で表わされるスペクトルを衝撃音ノイズ低減処理部252および駆動音ノイズ低減処理部253に出力する。
この音信号処理部251は、例えば、マイク音信号にフーリエ変換、あるいは高速フーリエ変換(FFT:Fast Fourier Transform)を行うことで、マイク音信号を周波数領域に変換する。音信号処理部251は、例えば、マイク音信号にフーリエ変換を行うことで、窓関数の各区間に対応する周波数スペクトルを算出する。
ここで、窓関数において予め定められた区間とは、信号処理の単位(フレーム)であって、一定の間隔で繰り返される区間である。これらの窓関数の各区間は、他の窓関数の各区間と半分ずつオーバーラップしている。なお、窓関数は、例えば、ハニング窓(ハニングウィンドウ)関数が利用可能である。
【0045】
上述した図3を参照して、音信号処理部251により算出される窓関数の各区間に対応する周波数スペクトルの一例について説明する。
音信号処理部251は、上述の通り、A/D変換部240から出力されたマイク音信号に対して、図3に示すように他の区間と半分ずつオーバーラップしている窓関数W1〜W14で重み付けをする。これにより、マイク音信号は、窓関数のサイズに分割される。この音信号処理部251は、窓関数W1〜W14で重み付けされた各区間のマイク音信号ごとに、例えばフーリエ変換を行い、周波数領域における周波数スペクトルS1〜S14を算出する。つまり、音信号処理部251によって算出される周波数スペクトルS1〜S14は、窓関数W1〜W14の区間に対応する周波数スペクトルである。
【0046】
図3に示す通り、時刻t10〜t11の区間、時刻t20〜t21の区間が、衝撃音が発生している区間である。また、時刻t11〜t20の区間が、駆動音が発生している区間である。
本実施形態において、窓関数W2〜W4に対応する周波数スペクトルS2〜S4は、AFレンズ112の動作開始タイミングt10に対応する衝撃音発生期間t10〜t11に対応する音情報である。また、窓関数W9〜W12に対応する周波数スペクトルS9〜S12は、AFレンズ112の動作停止タイミングt20に対応する衝撃音発生期間t20〜t21に対応する音情報である。窓関数W5〜W8に対応する周波数スペクトルS5〜S8は、AFレンズ112による駆動音の発生期間に対応する音情報である。
音信号処理部251は、例えば、周波数スペクトルS1〜S14を算出し、衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和と、予め決められた閾値とを比較する。この予め決められた閾値とは、衝撃音に対して目的音が大きいため衝撃音による音声劣化が少ないとされる目的音の周波数スペクトルの周波数成分の総和である。
衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和が、予め決められた閾値未満であると判定した場合、駆動音ノイズ低減処理部253は、算出した周波数スペクトルS1〜S14を衝撃音ノイズ低減処理部252に出力して、衝撃音ノイズ低減処理を実行するよう制御する。
一方、衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和が、予め決められた閾値以上であると判定した場合、駆動音ノイズ低減処理部253は、算出した周波数スペクトルS1〜S14を駆動音ノイズ低減処理部253に出力して、駆動音ノイズ低減処理を実行するよう制御する。
【0047】
衝撃音ノイズ低減処理部252は、タイミング信号検出部191から入力する動作タイミング信号に基づき、例えば、音信号処理部251から出力される周波数スペクトルS1〜S14から、衝撃音が発生している可能性の高い期間に対応する周波数スペクトル(以下、第1周波数スペクトルという)を取得する。例えば、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を、第1周波数スペクトルとして取得する。衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を、第1周波数スペクトルとして取得する。
【0048】
また、衝撃音ノイズ低減処理部252は、タイミング信号検出部191から入力する動作タイミング信号に基づき、音信号処理部251から出力される周波数スペクトルS1〜S14から、衝撃音が発生していない可能性の高い期間に対応する周波数スペクトル(以下、第2周波数スペクトルという)を取得する。この衝撃音ノイズ低減処理部252は、衝撃音を含んでいる可能性の高い第1周波数スペクトルごとに、この衝撃音を含む可能性の低い第2周波数スペクトルを取得する。本実施形態において、衝撃音ノイズ低減処理部252は、第1周波数スペクトルと時間軸方向において最も近い周波数スペクトルを第2周波数スペクトルとして取得する。つまり、衝撃音ノイズ低減処理部252は、第1周波数スペクトルと時間軸方向に隣接あるいは重複する周波数スペクトルを第2周波数スペクトルとして取得する。
なお、本実施形態において、第2周波数スペクトルは、衝撃音が発生していない可能性の高い期間に対応する周波数スペクトルである。しかし、本発明はこれに限られず、第2周波数スペクトルは、動作部の動作によって発生するノイズ音が発生しない可能性の高い期間に対応する周波数スペクトルであることが好ましい。また、動作音が発生していない可能性の高い期間に対応する周波数スペクトルであってもよい。
【0049】
ここで、図4を参照して、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルとの関係の一例について説明する。図4は、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルの一例を説明するための図である。
例えば、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS2、S3に対応する第2周波数スペクトルとして、周波数スペクトルS2、3の時間軸の過去方向に最も近い周波数スペクトルS1を取得する。また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS4に対応する第2周波数スペクトルとして、周波数スペクトルS4の時間軸の未来方向に最も近い周波数スペクトルS5を取得する。
【0050】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS9、S10に対応する第2周波数スペクトルとして、周波数スペクトルS9、10の時間軸の過去方向に最も近い周波数スペクトルS8を取得する。また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS11、12に対応する第2周波数スペクトルとして、周波数スペクトルS11、12の時間軸の未来方向に最も近い周波数スペクトルS13を取得する。
【0051】
さらに、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの少なくとも一部を第2周波数スペクトルの対応する部分に置き換える。
例えば、衝撃音ノイズ低減処理部252は、第1周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルと、第2周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルとを、周波数成分ごとに比較して、第2周波数スペクトルの方が第1周波数スペクトルに比べて小さいと判定した場合に、第1周波数スペクトルにおける当該周波数成分を第2周波数スペクトルの周波数成分に置き換える。
【0052】
図5を参照して詳細に説明する。図5は、一部の周波数スペクトルの周波数成分の一例について説明するための図である。なお、本実施の形態では、説明便宜のため、図3に示すマイク音信号のうち、窓関数W1,W3,W5,W7,W11,W13に対応する周波数スペクトルS1,S3,S5,S7,S11,S13について説明する。
図5に示す通り、周波数スペクトルS1,S3,S5,S7,S11,S13は、それぞれ、周波数成分f1〜f9の周波数成分を含む。
例えば、衝撃音ノイズ低減処理部252は、各周波数スペクトルの閾値周波数以上の周波数成分として、周波数成分f3〜f9について、第1周波数スペクトルと第2周波数スペクトルを比較することが予め決められている。よって、衝撃音ノイズ低減処理部252は、周波数成分f1,f2については、第1周波数スペクトルと第2周波数スペクトルを比較しない。
【0053】
ここで、図6を参照して、周波数スペクトルS1とS3について、衝撃音ノイズ低減処理部252による衝撃音ノイズ低減処理の一例について説明する。
図6は、周波数スペクトルS1とS3の周波数成分ごとに、振幅の比較について説明するための図である。
例えば、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f3の振幅と、周波数スペクトルS3の周波数成分f3の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f3の振幅の方が、周波数スペクトルS3の周波数成分f3の振幅に比べて小さい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3を、周波数スペクトルS1の周波数成分f3に置き換える。
また、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f4の振幅と、周波数スペクトルS3の周波数成分f4の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f4の振幅の方が、周波数スペクトルS3の周波数成分f4の振幅に比べて大きい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f4を、周波数スペクトルS1の周波数成分f4に置き換えない。
このようにして、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分の振幅の方が、周波数スペクトルS3の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS3の周波数成分を周波数スペクトルS1の周波数成分に置き換える。
図6に示す場合、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3、f6〜f9を周波数スペクトルS1の周波数成分f3、f6〜f9に置き換える。
【0054】
図1に戻って、ノイズ低減処理部250の各構成の説明を続ける。
駆動音ノイズ低減処理部253は、タイミング信号検出部191から入力する動作タイミング信号に基づき、例えば、音信号処理部251から出力される周波数スペクトルS1〜S14から、駆動音が発生している可能性の高い期間に対応する周波数スペクトル(以下、第3周波数スペクトルという)を取得する。例えば、駆動音ノイズ低減処理部253は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号と、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、駆動音が発生している可能性のある期間に対応する周波数スペクトルS2〜S12を、第3周波数スペクトルとして取得する。
【0055】
この駆動音ノイズ低減処理部253は、取得した第3周波数スペクトルに対して、駆動パターンに応じて予め決められているノイズを低減する駆動音ノイズ低減処理を行う。例えば、駆動音ノイズ低減処理部253は、駆動パターンに応じて予め決められているノイズを表わす周波数スペクトルの周波数成分を、第3周波数スペクトルの周波数成分から減算する周波数スペクトル減算法を用いる。なお、駆動パターンに応じて予め決められているノイズの周波数スペクトルは、設定値として駆動音ノイズ低減処理部253に予め設定されている。しかし本発明はこれに限られず、駆動音ノイズ低減処理部253が、過去のマイク音信号に基づき、駆動音が発生している区間の周波数スペクトルから駆動音が発生していない区間の周波数スペクトルを減算することにより、推定される駆動音のノイズの周波数スペクトルを、駆動パターンごとに算出しておくものであってもよい。
【0056】
逆フーリエ変換部254は、駆動音ノイズ低減処理部253から入力された周波数スペクトルに対して、例えば逆フーリエ変換、あるいは逆高速フーリエ変換(IFFT:Inverse Fast Fourier Transform)を行うことで、時間領域に変換する。
この逆フーリエ変換部254は、時間領域に変換された音信号を記憶媒体200に記憶させる。なお、逆フーリエ変換部254は、時間領域に変換された音信号と、撮像素子119により撮像された画像データとを、対応する日時情報を有する同士で対応付けて、記憶媒体200に記憶させてもよく、音信号を含む動画として記憶してもよい。
【0057】
次に、図7を参照して、本実施形態に係るノイズ低減処理方法の一例について説明する。図7は、本実施形態に係るノイズ低減処理方法の一例を示すフローチャートである。
例えば、操作部180の電源スイッチがONされると、撮像装置100に電源が投入され、電池260から各構成部に対して電力が供給される。本実施形態では、撮像装置100に対して、撮像時の画像データと音声データを対応付けて記憶媒体200に記憶させることが予め設定されている。
【0058】
(ステップST1)
マイク230は、例えば、電源がONされると、収音されたマイク音信号をA/D変換部240に出力する。A/D変換部240は、アナログ信号であるマイク音信号をデジタル変換したマイク音信号をノイズ低減処理部250に出力する。
ノイズ低減処理部250は、A/D変換部240からマイク音信号を入力する。
【0059】
ここで、ユーザによって、操作部180のレリーズボタンが押下された場合、CPU190は、AF処理において、例えば焦点距離αでピントを合わせるAF処理を実行するための駆動制御信号をレンズ駆動部116とタイミング信号検出部191に出力する。
このレンズ駆動部116は、入力する駆動制御信号に基づき、焦点距離αでピントを合わせる駆動パターンに従って、AFレンズ112を移動させる。例えば、レンズ駆動部116は、AFレンズ112の駆動機構を時計回りに所定量回転させて、AFレンズ112を移動させる。なお、この駆動機構を回転させる回転量やスピードは、焦点距離αでピントを合わせる駆動パターンとして、予め決められている。
AFレンズ112が動くと、AFエンコーダ117は、パルス信号をCPU190のタイミング信号検出部191に出力する。動いていたAFレンズ112が停止すると、AFエンコーダ117は、パルス信号出力を停止する。
【0060】
タイミング信号検出部191は、入力する駆動制御信号やAFエンコーダ117のパルス信号に基づき、焦点距離αでピントを合わせる駆動パターンに従って、動作タイミング信号を生成し、ノイズ低減処理部250に出力する。
例えば、焦点距離αでピントを合わせるAF処理を実行するための駆動制御信号を入力した場合、タイミング信号検出部191は、AFレンズ112の動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作開始タイミング信号を生成し、ノイズ低減処理部250に出力する。
そして、AFエンコーダ117から入力するパルス信号が停止された場合、タイミング信号検出部191は、AFレンズ112の動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作停止タイミング信号を生成し、ノイズ低減処理部250に出力する。
【0061】
(ステップST2)
ノイズ低減処理部250は、タイミング信号検出部191から動作タイミング信号が入力されたか否かを判定する。
(ステップST3)
動作タイミング信号が入力された場合、ノイズ低減処理部250の音信号処理部251は、A/D変換部240から出力されたマイク音信号に対して、予め決められた区間ごとに窓関数で重み付けするとともに、この区間毎のマイク音信号を周波数領域で表わされる周波数スペクトルに変換する。音信号処理部251は、例えば、窓関数で重み付けされた音信号をフーリエ変換して、周波数スペクトルS1〜S14を算出する。
【0062】
(ステップST4)
そして、音信号処理部251は、動作タイミング信号に基づき、衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和と、予め決められた閾値とを比較する。
例えば、音信号処理部251は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を取得する。そして、音信号処理部251は、周波数スペクトルS2〜S4ごとに、周波数成分の総和が予め決められた閾値未満であるか否かを判定する。また、音信号処理部251は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を取得する。そして、音信号処理部251は、周波数スペクトルS9〜S12ごとに、周波数成分の総和が予め決められた閾値未満であるか否かを判定する。
【0063】
そして、音信号処理部251は、周波数成分の総和が予め決められた閾値未満であった周波数スペクトルを衝撃音ノイズ低減処理部252に出力するとともに、この周波数スペクトルに対して衝撃音ノイズ低減処理を実行するよう衝撃音ノイズ低減処理部252を制御する。
【0064】
(ステップST5)
次いで、衝撃音ノイズ低減処理部252は、音信号処理部251から衝撃音ノイズ低減処理を実行する制御に基づき、A/D変換部240から入力するマイク音信号に対して衝撃音ノイズ低減処理を実行する。
例えば、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を、第1周波数スペクトルとして取得する。
そして、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS2、S3に対応する第2周波数スペクトルとして、周波数スペクトルS2、3の直前の周波数スペクトルS1を取得する。また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS4に対応する第2周波数スペクトルとして、周波数スペクトルS4の直後の周波数スペクトルS5を取得する。
【0065】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を、第1周波数スペクトルとして取得する。
そして、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS9、S10に対応する第2周波数スペクトルとして、周波数スペクトルS9、10の直前の周波数スペクトルS8を取得する。また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS11、12に対応する第2周波数スペクトルとして、周波数スペクトルS11、12の直後の周波数スペクトルS13を取得する。
【0066】
(ステップST6)
次いで、衝撃音ノイズ低減処理部252は、各周波数スペクトルの閾値周波数以上の周波数成分として、周波数成分f3〜f9について、第1周波数スペクトルと第2周波数スペクトルを比較する。
例えば、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f3の振幅と、周波数スペクトルS2の周波数成分f3の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f3の振幅の方が、周波数スペクトルS2の周波数成分f3の振幅に比べて小さい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3を、周波数スペクトルS1の周波数成分f3に置き換える。
また、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f4の振幅と、周波数スペクトルS2の周波数成分f4の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f4の振幅の方が、周波数スペクトルS2の周波数成分f4の振幅に比べて大きい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f4を、周波数スペクトルS1の周波数成分f4に置き換えない。
このようにして、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分の振幅の方が、周波数スペクトルS3の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS3の周波数成分を周波数スペクトルS1の周波数成分に置き換える。
そして、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3、f6〜f9を、周波数成分を周波数スペクトルS1の周波数成分f3、f6〜f9と置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´3を駆動音ノイズ低減処理部253に出力する。
【0067】
衝撃音ノイズ低減処理部252は、同様にして、第1周波数スペクトルである周波数スペクトルS2と第2周波数スペクトルS1との比較と、第1周波数スペクトルである周波数スペクトルS4と第2周波数スペクトルS5との比較を行う。そして、第2周波数スペクトルS1、S5の周波数成分の振幅の方が、それぞれ、周波数スペクトルS2、S4の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS2、S4の周波数成分をそれぞれ周波数スペクトルS1、S5の周波数成分に置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´2、S´4を駆動音ノイズ低減処理部253に出力する。
【0068】
また、衝撃音ノイズ低減処理部252は、同様にして、第1周波数スペクトルである周波数スペクトルS9、S10と第2周波数スペクトルS8との比較、および第1周波数スペクトルである周波数スペクトルS11、S12と第2周波数スペクトルS13との比較を行う。そして、第2周波数スペクトルS8の周波数成分の振幅の方が、それぞれ、周波数スペクトルS9、S10の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS9、S10の周波数成分をそれぞれ周波数スペクトルS8の周波数成分に置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´9、S´10を駆動音ノイズ低減処理部253に出力する。同様にして、第2周波数スペクトルS13の周波数成分の振幅の方が、それぞれ、周波数スペクトルS11、S12の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS11、S12の周波数成分をそれぞれ周波数スペクトルS13の周波数成分に置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´11、S´12を駆動音ノイズ低減処理部253に出力する。
【0069】
(ステップST7)
次いで、駆動音ノイズ低減処理部253は、音信号処理部251から入力するマイク音信号の周波数スペクトルと、衝撃音ノイズ低減処理部252から入力する衝撃音ノイズ低減処理後の周波数スペクトルに基づき、駆動音ノイズ低減処理を実行する。例えば、駆動音ノイズ低減処理部253は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号と、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、駆動音が発生している可能性のある期間に対応する周波数スペクトルS2〜S12を、第3周波数スペクトルとして取得する。
この駆動音ノイズ低減処理部253は、取得した第3周波数スペクトルS2〜S12のうち、衝撃音が発生している期間に対応する周波数スペクトルS2〜S4、S9〜S12を、衝撃音ノイズ低減処理後の周波数スペクトルS´2、S´3、S´4、S´9、S´10、S´11、S´12に置き換える。そして、駆動音ノイズ低減処理部253は、衝撃音ノイズ低減処理後の周波数スペクトルS´2、S´3、S´4、S´9、S´10、S´11、S´12と、周波数スペクトルS5〜S7に対して駆動音ノイズ低減処理を実行する。つまり、駆動音ノイズ低減処理部253は、駆動パターンに応じて予め決められているノイズを表わす周波数スペクトルの周波数成分を、衝撃音ノイズ低減処理後の第3周波数スペクトルS´2〜S´4、S5〜7、S´9〜S´12の周波数成分からそれぞれ減算する。駆動音ノイズ低減処理部253は、この駆動音ノイズ低減処理後の周波数スペクトルを逆フーリエ変換部254に出力する。
【0070】
(ステップST8)
逆フーリエ変換部254は、駆動音ノイズ低減処理部253から入力された駆動音ノイズ低減処理後の周波数スペクトルに対して、例えば逆フーリエ変換を行うことで、時間領域に変換する。この逆フーリエ変換部254は、時間領域に変換された音信号を記憶媒体200に記憶させる。
【0071】
以上説明したように、本実施形態に係る撮像装置100は、タイミング信号検出部191によって動作部の動作状態が変化するタイミングを検出するとともに、この動作タイミング信号に基づき、衝撃音が重畳している可能性のあるマイク音信号の周波数スペクトルの一部を、衝撃音が重畳していない可能性のあるマイク音信号の周波数スペクトルの一部と置き換える衝撃音ノイズ低減処理を実行する。これにより、周波数スペクトルの帯域が広い衝撃音であっても、目的音の不連続性が目立たず、かつ、衝撃音を低減した音信号を取得することができる。
【0072】
また、本実施形態に係る撮像装置100は、衝撃音が重畳していない可能性の高いマイク音信号の第2周波数スペクトルの一部として、以下の(1)〜(4)のうちいずれか1つの条件を満たすものを、衝撃音が重畳している可能性の高いマイク音信号の一部の第1周波数スペクトルと置き換えることが好ましい。
(1)衝撃音が発生している可能性の高い期間と時間軸方向に隣接あるいは重複する衝撃音が発生しない可能性の高い期間に取得される音信号に基づく第2周波数スペクトルであること。
(2)衝撃音および駆動音が発生しない可能性の高い期間に取得された音信号に基づく第2周波数スペクトルであること。
(3)第2周波数スペクトルのうち、予め決められた閾値以上の周波数成分であること。
(4)第2周波数スペクトルのうち、周波数スペクトルの周波数成分の総和において予め決められた割合以上の周波数成分であること。
【0073】
さらに、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの周波数成分よりも第2周波数スペクトルの周波数成分の方が、その振幅が小さい場合、その部分の置換えを行う。つまり、衝撃音ノイズ低減処理部252は、(1)〜(4)の条件を満たす第2周波数スペクトルのうち、(5)第1周波数スペクトルの周波数成分よりも小さい第2周波数スペクトルの周波数成分のみを置き換える。
このように、第1周波数スペクトルのうち、(1)〜(4)の少なくともいずれか1つの条件を満たす第2周波数スペクトルと対応する部分を、置き換えることによって、目的音の不連続性が目立たず、かつ、衝撃音を低減した音信号を取得することができる。
【0074】
上述の(3)の条件は、例えば、目的音の種類に応じて決定されるものであってもよい。
図8は、目的音が男声である場合の周波数スペクトルと、目的音が女声である場合の周波数スペクトルの一例を示す図である。
図8に示す通り、目的音が男声である場合、周波数スペクトルのうち、周波数が低い周波数成分を、目的音が女声である場合に比べてより多く、第1周波数スペクトルと第2周波数スペクトルの置換え範囲として設定することが好ましい。
ここでは、目的音が男声である場合、衝撃音ノイズ低減処理部252は、周波数成分f1、f2については置換えを行わずに、周波数成分f3〜f9についてのみ、第1周波数スペクトルの各周波数成分との大小関係を比較する。そして、第1周波数スペクトルの周波数成分の振幅よりも第2周波数スペクトルの周波数成分の振幅の方が小さい場合、この第1周波数スペクトルの周波数成分を第2周波数スペクトルの周波数成分と置き換える。
同様にして、目的音が女声である場合、衝撃音ノイズ低減処理部252は、周波数成分f1、f2、f3については置換えを行わずに、周波数成分f4〜f9についてのみ、第1周波数スペクトルの各周波数成分との大小関係を比較する。
【0075】
これは、男声の方が、女声に比べて、支配的なスペクトルが周波数が低い周波数成分により多く含まれているためである。なお、この支配的なスペクトルとは、目的音の特徴を示す周波数スペクトルをより多く含むものをいう。このように、支配的な周波数スペクトルの置換えを行わないことにより、目的音の劣化を防止することができる。よって、目的音の不連続性が目立たず、かつ、衝撃音を低減することができる。
【0076】
上述の(4)の条件は、例えば、周波数スペクトルの周波数成分の総和に対して、例えば、周波数が高い方の周波数成分の60%であると予め決められているものであってもよい。
この場合、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの周波数成分の全ての和を100%として、周波数が低い方(f1、f2・・・)から周波数成分の40%に相当する周波数成分については、第2周波数スペクトルとの比較は行わない。衝撃音ノイズ低減処理部252は、周波数が高い方(f9、f8・・・)から周波数成分の60%に相当する周波数成分については、第2周波数スペクトルとの比較を行う。
これにより、周波数スペクトルのうち、周波数の低い周波数成分についての目的音の劣化を防止することができる。
【0077】
次に、図9,10を参照して、タイミング信号検出部191によって検出される動作開始タイミングの一例について説明する。
図9には、例えば、AFエンコーダ117の出力と、マイク230が出力するマイク音信号の一例を示す図である。
図9に示す通り、AFエンコーダ117の出力がハイレベルとローレベルとを繰り返している期間を動作部による動作音が発生している期間であると決定した場合の一例について説明する。
この場合、AFエンコーダ117の出力が最初にハイレベルとなった時刻が、動作開始タイミングt1となる。よって、この時刻t1から衝撃音が発生している期間が開始する。また、AFエンコーダ117の出力が最後にハイレベルとなった際にローレベルに戻ったときの時刻が、動作停止タイミングt2となる。よって、この時刻t2から衝撃音が発生している期間が開始する
【0078】
しかし、この場合、AFレンズ112の駆動系(ギア列等)のバックラッシュの影響で、AFエンコーダ117の出力が、実際のAFレンズ112の駆動系の動作開始タイミングとずれる場合がある。この場合について、図10を参照して説明する。図10には、例えば、AFエンコーダ117の出力と、マイク230が出力するマイク音信号の他の例を示す図である。
【0079】
図10に示す通り、実際のAFレンズ112の駆動系の動作開始タイミングは、AFエンコーダ117の出力がハイレベルとローレベルとを繰り返している期間よりも時間軸方向の前(過去)に発生している。この場合、動作開始タイミングは時刻t3であり、時刻t3からの一定期間内において衝撃音が発生している。
よって、時刻t1を動作開始タイミングとした場合、衝撃音ノイズ低減処理部252は、時刻t1からの一定期間を衝撃音が発生している可能性の高い期間として取り扱うこととなる。この場合、衝撃音ノイズ低減処理部252によって取得された第1周波数スペクトルには、衝撃音が含まれていない可能性が高い。
【0080】
よって、タイミング信号検出部191は、図10を用いて説明したとおり、駆動系の実際の開始タイミングとAFエンコーダ117の出力とがずれてしまった場合の不都合を回避するため動作開始タイミングとして、動作部への駆動制御信号(コマンド)が出力された時刻を示す動作開始タイミング信号を生成する。
【0081】
[変形例]
次に、図11〜13を参照して、本実施形態に係る撮像装置100の駆動パターンの他の例について説明する。
図11(A)は、AFエンコーダ117出力から求めた回転方向と時間との関係の一例を示す。図11(B)は、マイク音信号と時間の関係の一例が示されている。なお、図11(B)は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。図11(A)と図11(B)に示すAFレンズ112の駆動パターンは、例えば、焦点距離βでピントを合わせるAF処理を行う場合の駆動パターンを示す。
【0082】
図11(A)には、その縦軸に、AFエンコーダ117の出力として、AFレンズ112を駆動する駆動機構の回転方向を示す。
この焦点距離βでピントを合わせるAF処理を行う駆動パターンでは、図11(A)に示す通り、AFレンズ112を駆動する駆動機構が、時刻t10〜t20において、時計回りCWに回転して、その後静止する。そして、AFレンズ112を駆動する駆動機構は、時刻t30〜t40まで、再び時計回りCWに回転した後、回転方向を反転させ、時刻t40〜t50まで、反時計回りCCWに回転して、その後静止する。
【0083】
つまり、時刻t10、t30は、それぞれAFレンズ112の動作開始タイミングを、時刻t20、t50は、それぞれAFレンズ112の動作停止タイミングを、表わしている。また、時刻t40は、AFレンズ112の駆動方向が逆回転となったタイミングを表わしている。
従って、図11(B)に示す通り、時刻t10〜t20の期間、および、時刻t30〜t50の期間で、マイク音信号にAFレンズ112による動作音が重畳(発生)している、又は、動作音が重畳している可能性が高い。本実施形態においては、時刻t10〜t20の期間、時刻t30〜t50の期間において、AFレンズ112による動作音であるノイズが発生している場合について以下説明する。
また、図11(B)に示す通り、時刻t10、t20、t30、t40、t50においては、それぞれ衝撃音が発生している可能性が高い。本実施形態においては、時刻t10、t20、t30、t40、t50において、AFレンズ112による衝撃音が発生している場合について以下説明する。
【0084】
また、衝撃音が発生した場合、その衝撃音が発生している可能性の高い時間は、各駆動パターンに応じて予め決められている。焦点距離βでピントを合わせるAF処理を行う駆動パターンでは、図12に示すような衝撃音の発生する時間(タイミング)が決められている。
図12は、焦点距離βでピントを合わせるAF処理を行う駆動パターンでAFレンズ112を駆動した際に、マイク230で収音されるマイク音信号の一例を示す。なお、図12は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。
【0085】
焦点距離βでピントを合わせるAF処理を行う駆動パターンでは、時刻t10〜t11までの時間、時刻t20〜t21までの時間、時刻t30〜t31までの時間、時刻t40〜t41までの時間、時刻t50〜t51までの時間が、それぞれ、衝撃音の発生する時間であると予め決められている。
本実施形態では、図12に示す通り、この衝撃音の発生する期間において、衝撃音が発生している例について説明する。
【0086】
音信号処理部251は、A/D変換部240から出力されたマイク音信号に対して、図12に示すように他の区間と半分ずつオーバーラップしている窓関数W0〜W32で重み付けをする。これにより、マイク音信号は、窓関数のサイズに分割される。この音信号処理部251は、窓関数W0〜W32で重み付けされた各区間のマイク音信号ごとに、例えばフーリエ変換を行い、周波数領域における周波数スペクトルS0〜S32を算出する。
【0087】
本実施形態において、窓関数W2〜W4に対応する周波数スペクトルS2〜S4は、AFレンズ112の動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を含む音情報である。また、窓関数W9〜W12に対応する周波数スペクトルS9〜S12は、AFレンズ112の動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を含む音情報である。さらに、窓関数W16〜W18に対応する周波数スペクトルS16〜S18は、AFレンズ112の動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を含む音情報である。また、窓関数W22〜W24に対応する周波数スペクトルS22〜S24は、AFレンズ112の動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を含む音情報である。さらに、窓関数W28〜W30に対応する周波数スペクトルS28〜S30は、AFレンズ112の動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を含む音情報である。
【0088】
ここで、図13を参照して、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルとの関係の一例について説明する。図13は、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルとの関係の一例を示す図である。
衝撃音ノイズ低減処理部252は、タイミング信号検出部191から入力する動作タイミング信号に基づき、例えば、音信号処理部251から出力される周波数スペクトルS0〜S32から、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を、第1周波数スペクトルとして取得する。また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を、第1周波数スペクトルとして取得する。さらに、衝撃音ノイズ低減処理部252は、動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS16〜S18を、第1周波数スペクトルとして取得する。また、衝撃音ノイズ低減処理部252は、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS22〜S24を、第1周波数スペクトルとして取得する。さらに、衝撃音ノイズ低減処理部252は、動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS28〜S30を、第1周波数スペクトルとして取得する。
【0089】
また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS2に対応する第2周波数スペクトルとして周波数スペクトルS2の直前の周波数スペクトルS0を取得する。この衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS3に対応する第2周波数スペクトルとして、周波数スペクトル3の直前の周波数スペクトルS1を取得する。また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS4に対応する第2周波数スペクトルとして、周波数スペクトルS4の直後の周波数スペクトルS5を取得する。
【0090】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS9に対応する第2周波数スペクトルとして周波数スペクトルS9の直前の周波数スペクトルS8を、第1周波数スペクトルである周波数スペクトルS10に対応する第2周波数スペクトルとして、周波数スペクトルS10の直前の周波数スペクトルS8を、それぞれ取得する。
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS11に対応する第2周波数スペクトルとして周波数スペクトルS11の直後の周波数スペクトルS13を、第1周波数スペクトルである周波数スペクトルS12に対応する第2周波数スペクトルとして周波数スペクトルS12の直後の周波数スペクトルS13を、それぞれ取得する。
【0091】
また、衝撃音ノイズ低減処理部252は、動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS17に対応する第2周波数スペクトルとして周波数スペクトルS17の直前の周波数スペクトルS15を取得する。
また、衝撃音ノイズ低減処理部252は、動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS16に対応する第2周波数スペクトルとして周波数スペクトルS16の直前の周波数スペクトルS15を、第1周波数スペクトルである周波数スペクトルS18に対応する第2周波数スペクトルとして周波数スペクトルS18の直後の周波数スペクトルS19を、それぞれ取得する。
【0092】
また、衝撃音ノイズ低減処理部252は、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS23に対応する第2周波数スペクトルとして周波数スペクトルS23の直前の周波数スペクトルS21を取得する。
また、衝撃音ノイズ低減処理部252は、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS22に対応する第2周波数スペクトルとして周波数スペクトルS22の直前の周波数スペクトルS21を、第1周波数スペクトルである周波数スペクトルS24に対応する第2周波数スペクトルとして周波数スペクトルS24の直後の周波数スペクトルS25を、それぞれ取得する。
【0093】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS29に対応する第2周波数スペクトルとして周波数スペクトルS29の直後の周波数スペクトルS31を取得する。
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS28に対応する第2周波数スペクトルとして周波数スペクトルS28の直前の周波数スペクトルS27を、第1周波数スペクトルである周波数スペクトルS30に対応する第2周波数スペクトルとして周波数スペクトルS30の直後の周波数スペクトルS31を、それぞれ取得する。
【0094】
さらに、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの少なくとも一部を第2周波数スペクトルの対応する部分に置き換える。
例えば、衝撃音ノイズ低減処理部252は、第1周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルと、第2周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルとを、周波数成分ごとに比較して、第2周波数スペクトルの方が第1周波数スペクトルに比べて小さいと判定した場合に、第1周波数スペクトルにおける当該周波数成分を第2周波数スペクトルの周波数成分に置き換える。
【0095】
このようにして、衝撃音ノイズ低減処理部252は、時間軸方向において、第1周波数スペクトルと隣接する第2周波数スペクトルについて、衝撃音ノイズ低減処理を実行する。
この場合、衝撃音ノイズ低減処理部252は、時間軸方向において、第1周波数スペクトルと隣接する周波数スペクトルのうち、駆動音を含まない周波数スペクトルが隣接している場合、この駆動音を含まない周波数スペクトルとの比較を行う。なお、時間軸方向において隣接する周波数スペクトルが駆動音を含む周波数スペクトルと衝撃音を含む周波数スペクトルである場合、衝撃音ノイズ低減処理部252は、駆動音を含む周波数スペクトルを第2周波数スペクトルとして取得する。
また、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41のように、時間軸方向において、第1周波数スペクトルと隣接する周波数スペクトルが、いずれも駆動音を含む周波数スペクトルである場合、衝撃音ノイズ低減処理部252は、いずれか一方の周波数スペクトルを第2周波数スペクトルとして取得する。この場合、衝撃音ノイズ低減処理部252は、第1周波数スペクトルと時間軸方向においてより近い周波数スペクトルを第2周波数スペクトルとして取得する。
【0096】
また、タイミング信号検出部191又はノイズ低減処理部250等による手順を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、実行処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものであってもよい。
【0097】
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0098】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【符号の説明】
【0099】
100…撮像装置、110…撮像部、190…CPU、191…検出部、170…通信部、200…記憶媒体、230…マイク、240…A/D変換部、250…ノイズ低減処理部、251…音信号処理部、252…衝撃音ノイズ低減処理部、253…駆動音ノイズ低減処理部、254…逆フーリエ変換部
【技術分野】
【0001】
本発明は、音信号からノイズを減算するノイズ低減処理装置、カメラ、およびノイズ低減処理プログラムに関する。
【背景技術】
【0002】
例えば、連続的に発生している周囲音をノイズとして除去するため、音信号から周囲音に対応するノイズ(音信号に含まれているノイズ成分)を算出して、このノイズを音信号から減じるものがある(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−195955号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
撮像装置に設けられた光学系において、レンズを駆動するギア列等の駆動系の回転方向が逆転するとき等、一時的にノイズの音量が大きくなる場合がある。このように、動作部の動作状態に応じて駆動により発生するノイズの音量やタイミングが異なる場合、特許文献1の技術を用いたノイズ低減処理を行うと、収音対象である目的音が劣化してしまう問題があった。
【0005】
本発明は、前記の点に鑑みてなされたものであり、ノイズ低減処理における目的音の劣化を低減するノイズ低減処理装置、カメラ、およびノイズ低減処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、上記の課題を解決するためになされたものであり、動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出部と、音信号を取得する音信号取得部と、前記動作タイミング信号を検出して、前記動作部の動作によって生じるノイズ音が発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズ音が発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理部と、を備えることを特徴とする。
【発明の効果】
【0007】
本発明によれば、ノイズ低減処理における目的音の劣化を低減することができる。
【図面の簡単な説明】
【0008】
【図1】本発明の実施形態に係るノイズ低減処理部を含む撮像装置の構成の一例を示すブロック図である。
【図2】本発明の実施形態に係る動作部の動作タイミング信号と音信号との関係の一例を説明するための参考図である。
【図3】図2に示す音信号と窓関数との関係を説明するための参考図である。
【図4】本発明の実施形態に係る衝撃音ノイズ低減処理部が取得する第1周波数スペクトルと第2周波数スペクトルの一例を説明するための図である。
【図5】図3に示した各周波数スペクトルの周波数成分の一例を示す図である。
【図6】本実施形態に係る衝撃音ノイズ低減処理の一例について説明するための図である。
【図7】本実施形態に係るノイズ低減処理方法の一例について説明するためのフローチャートである。
【図8】目的音が男声である場合の周波数スペクトルと、目的音が女声である場合の周波数スペクトルの一例を示す図である。
【図9】エンコーダの出力とマイク音信号の一例を示す図である。
【図10】コマンド出力、エンコーダの出力、およびマイク音信号の一例を示す図である。
【図11】本発明の実施形態に係る動作部の動作タイミング信号と音信号との関係の他の例を説明するための参考図である。
【図12】図11に示す音信号と窓関数との関係を説明するための参考図である。
【図13】本発明の実施形態に係る衝撃音ノイズ低減処理部が取得する第1周波数スペクトルと第2周波数スペクトルの他の例を説明するための図である。
【発明を実施するための形態】
【0009】
本発明の実施形態について図面を参照して詳細に説明する。図1には、本実施形態に係る撮像装置の構成を示すブロック図が示されている。
図1に示す通り、撮像装置100は、光学系による像を撮像し、得られた画像データを記憶媒体200に記憶させるとともに、マイクによって収音されたマイク音信号に対してノイズ低減処理を行い、ノイズ低減処理後の音信号を記憶媒体200に記憶させる。
この撮像装置100は、ノイズ低減処理部250を備える。このノイズ低減処理部250が、マイクによって収音された音からノイズを低減するノイズ低減処理を行う。
【0010】
本実施形態に係るノイズ低減処理部250は、動作部が動作することによって発生するノイズ(以下、動作音という)を低減するためのノイズ低減処理を実行する。例えば、撮像装置100において、AF(Auto Focus)やVR(Vibration Reduction)等の処理において光学系を駆動する場合、モータや光学系が動くことによりノイズ(動作音)が発生する。また、モータが回転方向を切り換えた場合、一時的に大きい音のノイズ(動作音)が発生する。このように、動作部の動作状態が変化した場合に、一時的に発生する大きい音を衝撃音という。一方、この衝撃音よりも小さく、光学系やモータが動いているときに発生する音を駆動音という。つまり、駆動音は、衝撃音以外のノイズである。本実施形態に係るノイズ低減処理部250は、マイク音信号から衝撃音によるノイズを低減する衝撃音ノイズ低減処理を行うとともに、マイク音信号から駆動音によるノイズを低減する駆動音ノイズ低減処理を行う。
【0011】
以下、撮像装置100とノイズ低減処理部250の構成の一例について詳細に説明する。なお、本実施形態において、ノイズ低減処理部250は、撮像装置100に内蔵されている例について説明するが、本発明はこれに限られない。例えば、ノイズ低減処理部250は、撮像装置100の外部装置であってもよい。
【0012】
撮像装置100は、撮像部110と、バッファメモリ部130と、画像処理部140と、表示部150と、記憶部160と、通信部170と、操作部180と、CPU190(本発明にかかる制御部に相当する。)と、計時部220と、マイク230(本発明にかかる音信号取得部に相当する。)と、A/D変換部240と、ノイズ低減処理部250と、電池260と、を備える。
【0013】
撮像部110は、光学系111と、撮像素子119と、A/D(Analog/Digital)変換部120とを備え、設定される撮像条件(例えば絞り値、露出値等)に応じて予め決められた駆動パターンに従って、CPU190により制御される。この撮像部110は、光学系111による光学像を撮像素子119に結像させて、A/D変換部120によってデジタル信号に変換された光学像に基づく画像データを生成する。
【0014】
光学系111は、焦点調整レンズ(以下、「AFレンズ」という)112と、手ブレ補正レンズ(以下、「VRレンズ」という)113と、ズームレンズ114と、ズームエンコーダ115(本発明にかかる動作検出部に相当する。)と、レンズ駆動部116(本発明にかかる駆動部に相当する。)と、AFエンコーダ117(本発明にかかる動作検出部に相当する。)と、手ブレ補正部118(本発明にかかる駆動部に相当する。)を備える。
これら光学系111の各構成は、CPU190による焦点調整処理、手ブレ補正処理、およびズーム処理において、それぞれの駆動パターンに従って、駆動する。つまり、光学系111は、撮像装置100における動作部である。
【0015】
この光学系111は、ズームレンズ114から入射し、ズームレンズ114、VRレンズ113、AFレンズ112の順番で通過した光学像を、撮像素子119の受光面に導く。
レンズ駆動部116は、AFレンズ112およびズームレンズ114の位置を制御するための駆動制御信号(コマンド)をCPU190から入力する。このレンズ駆動部116は、入力する駆動制御信号に応じて、AFレンズ112およびズームレンズ114の位置を制御する。
つまり、この駆動制御信号がCPU190からレンズ駆動部116に入力されてレンズ駆動部116が駆動することにより、AFレンズ112およびズームレンズ114が移動(動作)する。本実施形態において、CPU190が駆動制御信号を出力したタイミングを、AFレンズ112およびズームレンズ114の動作が開始された動作開始タイミングという。
【0016】
ズームエンコーダ115は、ズームレンズ114の位置を表わすズームポジションを検出し、CPU190に出力する。このズームエンコーダ115は、ズームレンズ114の移動を検出し、例えば、ズームレンズ114が光学系111内を移動している場合にパルス信号をCPU190に出力する。一方、停止している場合、ズームエンコーダ115は、パルス信号の出力を停止する。
【0017】
AFエンコーダ117は、AFレンズ112の位置を表わすフォーカスポジションを検出し、CPU190に出力する。このAFエンコーダ117は、AFレンズ112の移動を検出し、例えば、AFレンズ112が光学系111内を移動している場合にパルス信号をCPU190に出力する。一方、停止している場合、AFエンコーダ117は、パルス信号の出力を停止する。
【0018】
なお、ズームエンコーダ115は、ズームポジションを検出するために、ズームレンズ114の駆動方向を検出するものであってもよい。また、AFエンコーダ117は、フォーカスポジションを検出するために、AFレンズ112の駆動方向を検出するものであってもよい。
例えば、ズームレンズ114やAFレンズ112は、レンズ駆動部116によって駆動される駆動機構(例えばモータやカム等)が時計回り(CW)あるいは反時計回り(CCW)に回転することにより光軸方向に移動する。ズームエンコーダ115およびAFエンコーダ117は、それぞれ、駆動機構の回転方向(ここでは、時計回りあるいは反時計回り)を検出することよって、ズームレンズ114およびAFレンズ112が移動していることを検出するものであってもよい。
【0019】
手ブレ補正部118は、例えば振動ジャイロ機構を備え、光学系111による像の光軸ぶれを検出し、この光軸ぶれを打ち消す方向にVRレンズ113を動かす。この手ブレ補正部118は、例えばVRレンズ113を動かしている状態においてハイレベルの信号をCPU190に出力する。一方、VRレンズ113を停止させている状態において、手ブレ補正部118は、ローレベルの信号の出力を停止する。
【0020】
撮像素子119は、例えば、光電変換面を備え、その受光面に結像した光学像を電気信号に変換して、A/D変換部120に出力する。
この撮像素子119は、操作部180を介して撮影指示を受け付けた際に得られる画像データを、静止画又は動画の画像データとして、A/D変換部120を介して記憶媒体200に記憶させる。一方、撮像素子119は、操作部180を介して撮像指示を受け付けていない状態において、連続的に得られる画像データをスルー画データとして、A/D変換部120を介してCPU190および表示部150に出力する。
【0021】
A/D変換部120は、撮像素子119によって変換された電気信号をデジタル化して、デジタル信号である画像データをバッファメモリ部130に出力する。
【0022】
バッファメモリ部130は、撮像部110によって撮像された画像データを、一時的に記憶する。また、バッファメモリ部130は、マイク230が収音したマイク検出音に応じたマイク音信号を、一時的に記憶する。なお、バッファメモリ部130は、マイク検出音が収音された時刻と、バッファメモリ部130における位置とを対応付けて、マイク検出音に応じたマイク音信号を記憶してもよい。
【0023】
画像処理部140は、記憶部160に記憶されている画像処理条件を参照して、バッファメモリ部130に一時的に記憶されている画像データに対して、画像処理をする。画像処理された画像データは、通信部170を介して記憶媒体200に記憶される。なお、画像処理部140は、記憶媒体200に記憶されている画像データに対して、画像処理をしてもよい。
【0024】
表示部150は、例えば液晶ディスプレイであって、撮像部110によって得られた画像データや操作画面等を表示する。
【0025】
記憶部160は、CPU190によってシーン判定の際に参照される判定条件や、シーン判定によって判断されたシーン毎に対応付けられた撮像条件等を記憶する。
【0026】
通信部170は、カードメモリ等の取り外しが可能な記憶媒体200と接続され、この記憶媒体200への情報(画像データや音データ等)の書込み、読み出し、あるいは消去を行う。
【0027】
操作部180は、例えば、電源スイッチ、シャッターボタン、マルチセレクタ(十字キー)、又はその他の操作キーを備え、ユーザによって操作されることでユーザの操作入力を受け付け、操作入力に応じた操作情報をCPU190に出力する。この操作部180は、ユーザによって押下される際、物理的な動作音を発生する場合がある。本実施形態において、ユーザの操作入力に応じた操作情報が操作部180からCPU190に入力するタイミングを、操作部180の動作が開始される動作開始タイミングという。
【0028】
記憶媒体200は、撮像装置100に対して着脱可能に接続される記憶部であって、例えば、撮像部110によって生成された(撮影された)画像データや、ノイズ低減処理部250により音信号処理された音信号を記憶する。
【0029】
バス210は、撮像部110と、バッファメモリ部130と、画像処理部140と、表示部150と、記憶部160と、通信部170と、操作部180と、CPU190と、計時部220と、A/D変換部240と、ノイズ低減処理部250と接続され、各構成部から出力されたデータ等を転送する。
【0030】
計時部220は、日にちや時刻を計時して、計時した日時を表わす日時情報を出力する。
【0031】
マイク230は、周辺の音を収音し、この音のマイク音信号をA/D変換部240に出力する。このマイク230によって収音されるマイク検出音には、主に、収音対象である目的音と、動作部による動作音(ノイズ)とが含まれている。
【0032】
ここで、マイク230によって取得されたマイク音信号について、例えば、AFレンズ112が動作された時に得られたマイク音信号を例に、図2、3を参照して説明する。
図2(A)は、AFエンコーダ117の出力と時間との関係の一例を示す。図2(B)は、マイク音信号と時間の関係の一例が示されている。なお、図2(B)は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。図2(A)と図2(B)に示すAFレンズ112の駆動パターンは、例えば、焦点距離αでピントを合わせるAF処理を行う場合の駆動パターンを示す。
【0033】
図2(A)には、その縦軸に、AFエンコーダ117出力から求めた、AFレンズ112を駆動する駆動機構の回転方向を示す。
この焦点距離αでピントを合わせるAF処理を行う駆動パターンでは、図2(A)に示す通り、AFレンズ112を駆動する駆動機構が、時刻t10〜t20において、時計回りCWに回転して、その後静止する。
つまり、時刻t10は、AFレンズ112の動作開始タイミングを、時刻t20は、AFレンズ112の動作停止タイミングを、それぞれ表わしている。なお、本実施形態において、動作開始タイミングの時刻t10は、AFレンズ112の位置を制御するための駆動制御信号をCPU190が出力したタイミングを示す。動作停止タイミングの時刻t20は、AFエンコーダ117からのパルス信号の出力が停止したタイミングを示す。
【0034】
従って、図2(B)に示す通り、時刻t10〜t20の期間で、マイク音信号にAFレンズ112による動作音が重畳(発生)している、又は、動作音が重畳している可能性が高い。本実施形態においては、時刻t10〜t20の期間において、AFレンズ112による動作音であるノイズが発生している場合について以下説明する。
また、図2(B)に示す通り、時刻t10、t20においては、それぞれ衝撃音が発生している可能性が高い。本実施形態においては、時刻t10、t20において、AFレンズ112による衝撃音が発生している場合について以下説明する。
【0035】
また、衝撃音が発生した場合、その衝撃音が発生している可能性の高い時間は、各駆動パターンに応じて予め決められている。焦点距離αでピントを合わせるAF処理を行う駆動パターンでは、図3に示すような衝撃音の発生する時間が決められている。
図3は、焦点距離αでピントを合わせるAF処理を行う駆動パターンでAFレンズ112を駆動した際に、マイク230で収音されるマイク音信号の一例を示す。図3に示すグラフは、縦軸にマイク230によって収音されたマイク音信号を、横軸に時間を、それぞれ示す。なお、図3は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。
焦点距離αでピントを合わせるAF処理を行う駆動パターンでは、時刻t10〜t11までの時間、および時刻t20〜t21までの時間が、それぞれ、衝撃音の発生する時間であると予め決められている。
本実施形態では、図3に示す通り、この衝撃音の発生する期間において、衝撃音が発生している例について説明する。
【0036】
図1に戻って、撮像装置100の各構成の説明を続ける。
CPU190は、設定された撮像条件(例えば絞り値、露出値等)に応じた駆動パターンに従って撮像部110を制御する。このCPU190は、ズームエンコーダ115から出力されるズームポジションおよびAFエンコーダ117から出力されるフォーカスポジションに基づき、レンズ駆動部116を駆動する駆動制御信号を生成して、レンズ駆動部116に出力する。その生成アルゴリズムは、必要に応じて既存のアルゴリズムを適宜用いてよい。
【0037】
タイミング信号検出部191は、撮像装置100が備えている動作部の動作状態が変化するタイミングを検出する。この動作状態が変化するタイミングとしては、例えば、動作部が動作を開始する動作開始タイミングと、動作部の動作が停止する動作停止タイミングとがある。
ここでいう動作部とは、例えば、上述した光学系111、あるいは、操作部180のことであり、撮像装置100が備えている構成のうち、動作することにより、または、動作されることにより、動作音が生じる(または、動作音が生じる可能性がある)構成である。
言い換えると、動作部とは、撮像装置100が備えている構成のうち、動作部が動作することにより生じた動作音、または、動作部が動作されることにより生じた動作音が、マイク230により収音される(または、収音される可能性のある)構成である。
【0038】
例えば、このタイミング信号検出部191は、動作部を動作させる駆動制御信号に基づいて、動作部の動作状態が変化するタイミングを検出してもよい。この駆動制御信号とは、動作部を動作させる駆動部に対して、動作部を動作させるようにする駆動制御信号、または、この駆動部を駆動させる駆動制御信号である。
【0039】
例えば、タイミング信号検出部191は、ズームレンズ114、VRレンズ113、または、AFレンズ112を駆動させるため、レンズ駆動部116または手ブレ補正部118に入力される駆動制御信号に基づいて、ズームレンズ114、VRレンズ113、または、AFレンズ112の動作が開始された動作開始タイミングを検出する。この場合、タイミング信号検出部191は、CPU190が駆動制御信号を生成する場合にCPU190内部で実行される処理やコマンドに基づいて、動作開始タイミングを検出してもよい。
また、タイミング信号検出部191は、操作部180から入力されるズームレンズ114、または、AFレンズ112を駆動させることを示す操作信号に基づいて、動作開始タイミングを検出してもよい。
【0040】
また、タイミング信号検出部191は、動作部が動作されたことを示す信号に基づいて、動作部の動作状態が変化するタイミングを検出してもよい。
例えば、タイミング信号検出部191は、ズームエンコーダ115またはAFエンコーダ117の出力に基づいて、ズームレンズ114またはAFレンズ112が駆動されたことを検出することにより、ズームレンズ114またはAFレンズ112の動作開始タイミングを検出してもよい。また、タイミング信号検出部191は、ズームエンコーダ115またはAFエンコーダ117の出力に基づいて、ズームレンズ114またはAFレンズ112が停止されたことを検出することにより、ズームレンズ114またはAFレンズ112の動作停止タイミングを検出してもよい。
また、タイミング信号検出部191は、手ブレ補正部118からの出力に基づいて、VRレンズ113が駆動されたことを検出することにより、VRレンズ113の動作開始タイミングを検出してもよい。このタイミング信号検出部191は、手ブレ補正部118からの出力に基づいて、VRレンズ113が停止されたことを検出することにより、VRレンズ113の動作停止タイミングを検出してもよい。
さらに、タイミング信号検出部191は、操作部180からの入力に基づいて、操作部180が操作されたことを検出することにより、動作部が動作するタイミングを検出してもよい。
【0041】
タイミング信号検出部191は、撮像装置100が備えている動作部の動作開始タイミングを検出し、検出した動作開始タイミングを示す動作開始タイミング信号を、ノイズ低減処理部250に出力する。また、タイミング信号検出部191は、動作停止タイミングを検出し、この検出した動作停止タイミングを示す動作停止タイミング信号を、ノイズ低減処理部250に出力する。
本実施形態において、タイミング信号検出部191は、AFレンズ112を動かす駆動制御信号がCPU190からレンズ駆動部116に出力されるタイミングを、AFレンズ112の動作開始タイミングと判定する。タイミング信号検出部191は、例えば、図3を用いた例で示す衝撃音が発生している時刻t10〜t11を示す情報を、動作開始タイミング信号として出力する。
また、タイミング信号検出部191は、AFエンコーダ117から出力されるパルス信号に基づき、このパルス信号の出力が停止した時を、AFレンズ112の動作が停止した動作停止タイミングと判定する。タイミング信号検出部191は、例えば、図3を用いた例で示す衝撃音が発生している時刻t20〜t21を示す情報を、動作停止タイミング信号として出力する。
【0042】
A/D変換部240は、マイク230から入力されたアナログ信号であるマイク音信号をデジタル信号であるマイク音信号に変換する。このA/D変換部240は、デジタル信号であるマイク音信号を、ノイズ低減処理部250に出力する。
また、A/D変換部240は、デジタル信号であるマイク音信号を、バッファメモリ部130あるいは記憶媒体200に記憶させる構成であってもよい。
【0043】
ノイズ低減処理部250は、A/D変換部240によりデジタル信号に変換されたマイク音信号に対して、例えばAFレンズ112、VRレンズ113、ズームレンズ114等の動作部による動作音であるノイズを低減するなどのノイズ低減処理を実行し、このノイズ低減処理した音信号を記憶媒体200に記憶させる。
このノイズ低減処理部250は、音信号処理部251と、衝撃音ノイズ低減処理部252と、駆動音ノイズ低減処理部253と、逆フーリエ変換部254とを含む。
【0044】
音信号処理部251は、A/D変換部240から出力されたマイク音信号に対して、予め決められた区間ごとに窓関数で重み付けするとともに、この区間毎のマイク音信号を周波数領域で表わされるスペクトルに変換して、この周波数領域で表わされるスペクトルを衝撃音ノイズ低減処理部252および駆動音ノイズ低減処理部253に出力する。
この音信号処理部251は、例えば、マイク音信号にフーリエ変換、あるいは高速フーリエ変換(FFT:Fast Fourier Transform)を行うことで、マイク音信号を周波数領域に変換する。音信号処理部251は、例えば、マイク音信号にフーリエ変換を行うことで、窓関数の各区間に対応する周波数スペクトルを算出する。
ここで、窓関数において予め定められた区間とは、信号処理の単位(フレーム)であって、一定の間隔で繰り返される区間である。これらの窓関数の各区間は、他の窓関数の各区間と半分ずつオーバーラップしている。なお、窓関数は、例えば、ハニング窓(ハニングウィンドウ)関数が利用可能である。
【0045】
上述した図3を参照して、音信号処理部251により算出される窓関数の各区間に対応する周波数スペクトルの一例について説明する。
音信号処理部251は、上述の通り、A/D変換部240から出力されたマイク音信号に対して、図3に示すように他の区間と半分ずつオーバーラップしている窓関数W1〜W14で重み付けをする。これにより、マイク音信号は、窓関数のサイズに分割される。この音信号処理部251は、窓関数W1〜W14で重み付けされた各区間のマイク音信号ごとに、例えばフーリエ変換を行い、周波数領域における周波数スペクトルS1〜S14を算出する。つまり、音信号処理部251によって算出される周波数スペクトルS1〜S14は、窓関数W1〜W14の区間に対応する周波数スペクトルである。
【0046】
図3に示す通り、時刻t10〜t11の区間、時刻t20〜t21の区間が、衝撃音が発生している区間である。また、時刻t11〜t20の区間が、駆動音が発生している区間である。
本実施形態において、窓関数W2〜W4に対応する周波数スペクトルS2〜S4は、AFレンズ112の動作開始タイミングt10に対応する衝撃音発生期間t10〜t11に対応する音情報である。また、窓関数W9〜W12に対応する周波数スペクトルS9〜S12は、AFレンズ112の動作停止タイミングt20に対応する衝撃音発生期間t20〜t21に対応する音情報である。窓関数W5〜W8に対応する周波数スペクトルS5〜S8は、AFレンズ112による駆動音の発生期間に対応する音情報である。
音信号処理部251は、例えば、周波数スペクトルS1〜S14を算出し、衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和と、予め決められた閾値とを比較する。この予め決められた閾値とは、衝撃音に対して目的音が大きいため衝撃音による音声劣化が少ないとされる目的音の周波数スペクトルの周波数成分の総和である。
衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和が、予め決められた閾値未満であると判定した場合、駆動音ノイズ低減処理部253は、算出した周波数スペクトルS1〜S14を衝撃音ノイズ低減処理部252に出力して、衝撃音ノイズ低減処理を実行するよう制御する。
一方、衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和が、予め決められた閾値以上であると判定した場合、駆動音ノイズ低減処理部253は、算出した周波数スペクトルS1〜S14を駆動音ノイズ低減処理部253に出力して、駆動音ノイズ低減処理を実行するよう制御する。
【0047】
衝撃音ノイズ低減処理部252は、タイミング信号検出部191から入力する動作タイミング信号に基づき、例えば、音信号処理部251から出力される周波数スペクトルS1〜S14から、衝撃音が発生している可能性の高い期間に対応する周波数スペクトル(以下、第1周波数スペクトルという)を取得する。例えば、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を、第1周波数スペクトルとして取得する。衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を、第1周波数スペクトルとして取得する。
【0048】
また、衝撃音ノイズ低減処理部252は、タイミング信号検出部191から入力する動作タイミング信号に基づき、音信号処理部251から出力される周波数スペクトルS1〜S14から、衝撃音が発生していない可能性の高い期間に対応する周波数スペクトル(以下、第2周波数スペクトルという)を取得する。この衝撃音ノイズ低減処理部252は、衝撃音を含んでいる可能性の高い第1周波数スペクトルごとに、この衝撃音を含む可能性の低い第2周波数スペクトルを取得する。本実施形態において、衝撃音ノイズ低減処理部252は、第1周波数スペクトルと時間軸方向において最も近い周波数スペクトルを第2周波数スペクトルとして取得する。つまり、衝撃音ノイズ低減処理部252は、第1周波数スペクトルと時間軸方向に隣接あるいは重複する周波数スペクトルを第2周波数スペクトルとして取得する。
なお、本実施形態において、第2周波数スペクトルは、衝撃音が発生していない可能性の高い期間に対応する周波数スペクトルである。しかし、本発明はこれに限られず、第2周波数スペクトルは、動作部の動作によって発生するノイズ音が発生しない可能性の高い期間に対応する周波数スペクトルであることが好ましい。また、動作音が発生していない可能性の高い期間に対応する周波数スペクトルであってもよい。
【0049】
ここで、図4を参照して、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルとの関係の一例について説明する。図4は、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルの一例を説明するための図である。
例えば、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS2、S3に対応する第2周波数スペクトルとして、周波数スペクトルS2、3の時間軸の過去方向に最も近い周波数スペクトルS1を取得する。また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS4に対応する第2周波数スペクトルとして、周波数スペクトルS4の時間軸の未来方向に最も近い周波数スペクトルS5を取得する。
【0050】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS9、S10に対応する第2周波数スペクトルとして、周波数スペクトルS9、10の時間軸の過去方向に最も近い周波数スペクトルS8を取得する。また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS11、12に対応する第2周波数スペクトルとして、周波数スペクトルS11、12の時間軸の未来方向に最も近い周波数スペクトルS13を取得する。
【0051】
さらに、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの少なくとも一部を第2周波数スペクトルの対応する部分に置き換える。
例えば、衝撃音ノイズ低減処理部252は、第1周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルと、第2周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルとを、周波数成分ごとに比較して、第2周波数スペクトルの方が第1周波数スペクトルに比べて小さいと判定した場合に、第1周波数スペクトルにおける当該周波数成分を第2周波数スペクトルの周波数成分に置き換える。
【0052】
図5を参照して詳細に説明する。図5は、一部の周波数スペクトルの周波数成分の一例について説明するための図である。なお、本実施の形態では、説明便宜のため、図3に示すマイク音信号のうち、窓関数W1,W3,W5,W7,W11,W13に対応する周波数スペクトルS1,S3,S5,S7,S11,S13について説明する。
図5に示す通り、周波数スペクトルS1,S3,S5,S7,S11,S13は、それぞれ、周波数成分f1〜f9の周波数成分を含む。
例えば、衝撃音ノイズ低減処理部252は、各周波数スペクトルの閾値周波数以上の周波数成分として、周波数成分f3〜f9について、第1周波数スペクトルと第2周波数スペクトルを比較することが予め決められている。よって、衝撃音ノイズ低減処理部252は、周波数成分f1,f2については、第1周波数スペクトルと第2周波数スペクトルを比較しない。
【0053】
ここで、図6を参照して、周波数スペクトルS1とS3について、衝撃音ノイズ低減処理部252による衝撃音ノイズ低減処理の一例について説明する。
図6は、周波数スペクトルS1とS3の周波数成分ごとに、振幅の比較について説明するための図である。
例えば、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f3の振幅と、周波数スペクトルS3の周波数成分f3の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f3の振幅の方が、周波数スペクトルS3の周波数成分f3の振幅に比べて小さい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3を、周波数スペクトルS1の周波数成分f3に置き換える。
また、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f4の振幅と、周波数スペクトルS3の周波数成分f4の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f4の振幅の方が、周波数スペクトルS3の周波数成分f4の振幅に比べて大きい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f4を、周波数スペクトルS1の周波数成分f4に置き換えない。
このようにして、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分の振幅の方が、周波数スペクトルS3の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS3の周波数成分を周波数スペクトルS1の周波数成分に置き換える。
図6に示す場合、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3、f6〜f9を周波数スペクトルS1の周波数成分f3、f6〜f9に置き換える。
【0054】
図1に戻って、ノイズ低減処理部250の各構成の説明を続ける。
駆動音ノイズ低減処理部253は、タイミング信号検出部191から入力する動作タイミング信号に基づき、例えば、音信号処理部251から出力される周波数スペクトルS1〜S14から、駆動音が発生している可能性の高い期間に対応する周波数スペクトル(以下、第3周波数スペクトルという)を取得する。例えば、駆動音ノイズ低減処理部253は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号と、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、駆動音が発生している可能性のある期間に対応する周波数スペクトルS2〜S12を、第3周波数スペクトルとして取得する。
【0055】
この駆動音ノイズ低減処理部253は、取得した第3周波数スペクトルに対して、駆動パターンに応じて予め決められているノイズを低減する駆動音ノイズ低減処理を行う。例えば、駆動音ノイズ低減処理部253は、駆動パターンに応じて予め決められているノイズを表わす周波数スペクトルの周波数成分を、第3周波数スペクトルの周波数成分から減算する周波数スペクトル減算法を用いる。なお、駆動パターンに応じて予め決められているノイズの周波数スペクトルは、設定値として駆動音ノイズ低減処理部253に予め設定されている。しかし本発明はこれに限られず、駆動音ノイズ低減処理部253が、過去のマイク音信号に基づき、駆動音が発生している区間の周波数スペクトルから駆動音が発生していない区間の周波数スペクトルを減算することにより、推定される駆動音のノイズの周波数スペクトルを、駆動パターンごとに算出しておくものであってもよい。
【0056】
逆フーリエ変換部254は、駆動音ノイズ低減処理部253から入力された周波数スペクトルに対して、例えば逆フーリエ変換、あるいは逆高速フーリエ変換(IFFT:Inverse Fast Fourier Transform)を行うことで、時間領域に変換する。
この逆フーリエ変換部254は、時間領域に変換された音信号を記憶媒体200に記憶させる。なお、逆フーリエ変換部254は、時間領域に変換された音信号と、撮像素子119により撮像された画像データとを、対応する日時情報を有する同士で対応付けて、記憶媒体200に記憶させてもよく、音信号を含む動画として記憶してもよい。
【0057】
次に、図7を参照して、本実施形態に係るノイズ低減処理方法の一例について説明する。図7は、本実施形態に係るノイズ低減処理方法の一例を示すフローチャートである。
例えば、操作部180の電源スイッチがONされると、撮像装置100に電源が投入され、電池260から各構成部に対して電力が供給される。本実施形態では、撮像装置100に対して、撮像時の画像データと音声データを対応付けて記憶媒体200に記憶させることが予め設定されている。
【0058】
(ステップST1)
マイク230は、例えば、電源がONされると、収音されたマイク音信号をA/D変換部240に出力する。A/D変換部240は、アナログ信号であるマイク音信号をデジタル変換したマイク音信号をノイズ低減処理部250に出力する。
ノイズ低減処理部250は、A/D変換部240からマイク音信号を入力する。
【0059】
ここで、ユーザによって、操作部180のレリーズボタンが押下された場合、CPU190は、AF処理において、例えば焦点距離αでピントを合わせるAF処理を実行するための駆動制御信号をレンズ駆動部116とタイミング信号検出部191に出力する。
このレンズ駆動部116は、入力する駆動制御信号に基づき、焦点距離αでピントを合わせる駆動パターンに従って、AFレンズ112を移動させる。例えば、レンズ駆動部116は、AFレンズ112の駆動機構を時計回りに所定量回転させて、AFレンズ112を移動させる。なお、この駆動機構を回転させる回転量やスピードは、焦点距離αでピントを合わせる駆動パターンとして、予め決められている。
AFレンズ112が動くと、AFエンコーダ117は、パルス信号をCPU190のタイミング信号検出部191に出力する。動いていたAFレンズ112が停止すると、AFエンコーダ117は、パルス信号出力を停止する。
【0060】
タイミング信号検出部191は、入力する駆動制御信号やAFエンコーダ117のパルス信号に基づき、焦点距離αでピントを合わせる駆動パターンに従って、動作タイミング信号を生成し、ノイズ低減処理部250に出力する。
例えば、焦点距離αでピントを合わせるAF処理を実行するための駆動制御信号を入力した場合、タイミング信号検出部191は、AFレンズ112の動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作開始タイミング信号を生成し、ノイズ低減処理部250に出力する。
そして、AFエンコーダ117から入力するパルス信号が停止された場合、タイミング信号検出部191は、AFレンズ112の動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作停止タイミング信号を生成し、ノイズ低減処理部250に出力する。
【0061】
(ステップST2)
ノイズ低減処理部250は、タイミング信号検出部191から動作タイミング信号が入力されたか否かを判定する。
(ステップST3)
動作タイミング信号が入力された場合、ノイズ低減処理部250の音信号処理部251は、A/D変換部240から出力されたマイク音信号に対して、予め決められた区間ごとに窓関数で重み付けするとともに、この区間毎のマイク音信号を周波数領域で表わされる周波数スペクトルに変換する。音信号処理部251は、例えば、窓関数で重み付けされた音信号をフーリエ変換して、周波数スペクトルS1〜S14を算出する。
【0062】
(ステップST4)
そして、音信号処理部251は、動作タイミング信号に基づき、衝撃音発生期間に対応する周波数スペクトルの周波数成分の総和と、予め決められた閾値とを比較する。
例えば、音信号処理部251は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を取得する。そして、音信号処理部251は、周波数スペクトルS2〜S4ごとに、周波数成分の総和が予め決められた閾値未満であるか否かを判定する。また、音信号処理部251は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を取得する。そして、音信号処理部251は、周波数スペクトルS9〜S12ごとに、周波数成分の総和が予め決められた閾値未満であるか否かを判定する。
【0063】
そして、音信号処理部251は、周波数成分の総和が予め決められた閾値未満であった周波数スペクトルを衝撃音ノイズ低減処理部252に出力するとともに、この周波数スペクトルに対して衝撃音ノイズ低減処理を実行するよう衝撃音ノイズ低減処理部252を制御する。
【0064】
(ステップST5)
次いで、衝撃音ノイズ低減処理部252は、音信号処理部251から衝撃音ノイズ低減処理を実行する制御に基づき、A/D変換部240から入力するマイク音信号に対して衝撃音ノイズ低減処理を実行する。
例えば、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を、第1周波数スペクトルとして取得する。
そして、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS2、S3に対応する第2周波数スペクトルとして、周波数スペクトルS2、3の直前の周波数スペクトルS1を取得する。また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS4に対応する第2周波数スペクトルとして、周波数スペクトルS4の直後の周波数スペクトルS5を取得する。
【0065】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を、第1周波数スペクトルとして取得する。
そして、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS9、S10に対応する第2周波数スペクトルとして、周波数スペクトルS9、10の直前の周波数スペクトルS8を取得する。また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS11、12に対応する第2周波数スペクトルとして、周波数スペクトルS11、12の直後の周波数スペクトルS13を取得する。
【0066】
(ステップST6)
次いで、衝撃音ノイズ低減処理部252は、各周波数スペクトルの閾値周波数以上の周波数成分として、周波数成分f3〜f9について、第1周波数スペクトルと第2周波数スペクトルを比較する。
例えば、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f3の振幅と、周波数スペクトルS2の周波数成分f3の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f3の振幅の方が、周波数スペクトルS2の周波数成分f3の振幅に比べて小さい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3を、周波数スペクトルS1の周波数成分f3に置き換える。
また、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分f4の振幅と、周波数スペクトルS2の周波数成分f4の振幅とを比較する。この場合、周波数スペクトルS1の周波数成分f4の振幅の方が、周波数スペクトルS2の周波数成分f4の振幅に比べて大きい。よって、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f4を、周波数スペクトルS1の周波数成分f4に置き換えない。
このようにして、衝撃音ノイズ低減処理部252は、周波数スペクトルS1の周波数成分の振幅の方が、周波数スペクトルS3の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS3の周波数成分を周波数スペクトルS1の周波数成分に置き換える。
そして、衝撃音ノイズ低減処理部252は、周波数スペクトルS3の周波数成分f3、f6〜f9を、周波数成分を周波数スペクトルS1の周波数成分f3、f6〜f9と置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´3を駆動音ノイズ低減処理部253に出力する。
【0067】
衝撃音ノイズ低減処理部252は、同様にして、第1周波数スペクトルである周波数スペクトルS2と第2周波数スペクトルS1との比較と、第1周波数スペクトルである周波数スペクトルS4と第2周波数スペクトルS5との比較を行う。そして、第2周波数スペクトルS1、S5の周波数成分の振幅の方が、それぞれ、周波数スペクトルS2、S4の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS2、S4の周波数成分をそれぞれ周波数スペクトルS1、S5の周波数成分に置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´2、S´4を駆動音ノイズ低減処理部253に出力する。
【0068】
また、衝撃音ノイズ低減処理部252は、同様にして、第1周波数スペクトルである周波数スペクトルS9、S10と第2周波数スペクトルS8との比較、および第1周波数スペクトルである周波数スペクトルS11、S12と第2周波数スペクトルS13との比較を行う。そして、第2周波数スペクトルS8の周波数成分の振幅の方が、それぞれ、周波数スペクトルS9、S10の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS9、S10の周波数成分をそれぞれ周波数スペクトルS8の周波数成分に置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´9、S´10を駆動音ノイズ低減処理部253に出力する。同様にして、第2周波数スペクトルS13の周波数成分の振幅の方が、それぞれ、周波数スペクトルS11、S12の周波数成分の振幅に比べて小さい場合のみ、周波数スペクトルS11、S12の周波数成分をそれぞれ周波数スペクトルS13の周波数成分に置き換えて、衝撃音ノイズ低減処理後の周波数スペクトルS´11、S´12を駆動音ノイズ低減処理部253に出力する。
【0069】
(ステップST7)
次いで、駆動音ノイズ低減処理部253は、音信号処理部251から入力するマイク音信号の周波数スペクトルと、衝撃音ノイズ低減処理部252から入力する衝撃音ノイズ低減処理後の周波数スペクトルに基づき、駆動音ノイズ低減処理を実行する。例えば、駆動音ノイズ低減処理部253は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号と、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、駆動音が発生している可能性のある期間に対応する周波数スペクトルS2〜S12を、第3周波数スペクトルとして取得する。
この駆動音ノイズ低減処理部253は、取得した第3周波数スペクトルS2〜S12のうち、衝撃音が発生している期間に対応する周波数スペクトルS2〜S4、S9〜S12を、衝撃音ノイズ低減処理後の周波数スペクトルS´2、S´3、S´4、S´9、S´10、S´11、S´12に置き換える。そして、駆動音ノイズ低減処理部253は、衝撃音ノイズ低減処理後の周波数スペクトルS´2、S´3、S´4、S´9、S´10、S´11、S´12と、周波数スペクトルS5〜S7に対して駆動音ノイズ低減処理を実行する。つまり、駆動音ノイズ低減処理部253は、駆動パターンに応じて予め決められているノイズを表わす周波数スペクトルの周波数成分を、衝撃音ノイズ低減処理後の第3周波数スペクトルS´2〜S´4、S5〜7、S´9〜S´12の周波数成分からそれぞれ減算する。駆動音ノイズ低減処理部253は、この駆動音ノイズ低減処理後の周波数スペクトルを逆フーリエ変換部254に出力する。
【0070】
(ステップST8)
逆フーリエ変換部254は、駆動音ノイズ低減処理部253から入力された駆動音ノイズ低減処理後の周波数スペクトルに対して、例えば逆フーリエ変換を行うことで、時間領域に変換する。この逆フーリエ変換部254は、時間領域に変換された音信号を記憶媒体200に記憶させる。
【0071】
以上説明したように、本実施形態に係る撮像装置100は、タイミング信号検出部191によって動作部の動作状態が変化するタイミングを検出するとともに、この動作タイミング信号に基づき、衝撃音が重畳している可能性のあるマイク音信号の周波数スペクトルの一部を、衝撃音が重畳していない可能性のあるマイク音信号の周波数スペクトルの一部と置き換える衝撃音ノイズ低減処理を実行する。これにより、周波数スペクトルの帯域が広い衝撃音であっても、目的音の不連続性が目立たず、かつ、衝撃音を低減した音信号を取得することができる。
【0072】
また、本実施形態に係る撮像装置100は、衝撃音が重畳していない可能性の高いマイク音信号の第2周波数スペクトルの一部として、以下の(1)〜(4)のうちいずれか1つの条件を満たすものを、衝撃音が重畳している可能性の高いマイク音信号の一部の第1周波数スペクトルと置き換えることが好ましい。
(1)衝撃音が発生している可能性の高い期間と時間軸方向に隣接あるいは重複する衝撃音が発生しない可能性の高い期間に取得される音信号に基づく第2周波数スペクトルであること。
(2)衝撃音および駆動音が発生しない可能性の高い期間に取得された音信号に基づく第2周波数スペクトルであること。
(3)第2周波数スペクトルのうち、予め決められた閾値以上の周波数成分であること。
(4)第2周波数スペクトルのうち、周波数スペクトルの周波数成分の総和において予め決められた割合以上の周波数成分であること。
【0073】
さらに、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの周波数成分よりも第2周波数スペクトルの周波数成分の方が、その振幅が小さい場合、その部分の置換えを行う。つまり、衝撃音ノイズ低減処理部252は、(1)〜(4)の条件を満たす第2周波数スペクトルのうち、(5)第1周波数スペクトルの周波数成分よりも小さい第2周波数スペクトルの周波数成分のみを置き換える。
このように、第1周波数スペクトルのうち、(1)〜(4)の少なくともいずれか1つの条件を満たす第2周波数スペクトルと対応する部分を、置き換えることによって、目的音の不連続性が目立たず、かつ、衝撃音を低減した音信号を取得することができる。
【0074】
上述の(3)の条件は、例えば、目的音の種類に応じて決定されるものであってもよい。
図8は、目的音が男声である場合の周波数スペクトルと、目的音が女声である場合の周波数スペクトルの一例を示す図である。
図8に示す通り、目的音が男声である場合、周波数スペクトルのうち、周波数が低い周波数成分を、目的音が女声である場合に比べてより多く、第1周波数スペクトルと第2周波数スペクトルの置換え範囲として設定することが好ましい。
ここでは、目的音が男声である場合、衝撃音ノイズ低減処理部252は、周波数成分f1、f2については置換えを行わずに、周波数成分f3〜f9についてのみ、第1周波数スペクトルの各周波数成分との大小関係を比較する。そして、第1周波数スペクトルの周波数成分の振幅よりも第2周波数スペクトルの周波数成分の振幅の方が小さい場合、この第1周波数スペクトルの周波数成分を第2周波数スペクトルの周波数成分と置き換える。
同様にして、目的音が女声である場合、衝撃音ノイズ低減処理部252は、周波数成分f1、f2、f3については置換えを行わずに、周波数成分f4〜f9についてのみ、第1周波数スペクトルの各周波数成分との大小関係を比較する。
【0075】
これは、男声の方が、女声に比べて、支配的なスペクトルが周波数が低い周波数成分により多く含まれているためである。なお、この支配的なスペクトルとは、目的音の特徴を示す周波数スペクトルをより多く含むものをいう。このように、支配的な周波数スペクトルの置換えを行わないことにより、目的音の劣化を防止することができる。よって、目的音の不連続性が目立たず、かつ、衝撃音を低減することができる。
【0076】
上述の(4)の条件は、例えば、周波数スペクトルの周波数成分の総和に対して、例えば、周波数が高い方の周波数成分の60%であると予め決められているものであってもよい。
この場合、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの周波数成分の全ての和を100%として、周波数が低い方(f1、f2・・・)から周波数成分の40%に相当する周波数成分については、第2周波数スペクトルとの比較は行わない。衝撃音ノイズ低減処理部252は、周波数が高い方(f9、f8・・・)から周波数成分の60%に相当する周波数成分については、第2周波数スペクトルとの比較を行う。
これにより、周波数スペクトルのうち、周波数の低い周波数成分についての目的音の劣化を防止することができる。
【0077】
次に、図9,10を参照して、タイミング信号検出部191によって検出される動作開始タイミングの一例について説明する。
図9には、例えば、AFエンコーダ117の出力と、マイク230が出力するマイク音信号の一例を示す図である。
図9に示す通り、AFエンコーダ117の出力がハイレベルとローレベルとを繰り返している期間を動作部による動作音が発生している期間であると決定した場合の一例について説明する。
この場合、AFエンコーダ117の出力が最初にハイレベルとなった時刻が、動作開始タイミングt1となる。よって、この時刻t1から衝撃音が発生している期間が開始する。また、AFエンコーダ117の出力が最後にハイレベルとなった際にローレベルに戻ったときの時刻が、動作停止タイミングt2となる。よって、この時刻t2から衝撃音が発生している期間が開始する
【0078】
しかし、この場合、AFレンズ112の駆動系(ギア列等)のバックラッシュの影響で、AFエンコーダ117の出力が、実際のAFレンズ112の駆動系の動作開始タイミングとずれる場合がある。この場合について、図10を参照して説明する。図10には、例えば、AFエンコーダ117の出力と、マイク230が出力するマイク音信号の他の例を示す図である。
【0079】
図10に示す通り、実際のAFレンズ112の駆動系の動作開始タイミングは、AFエンコーダ117の出力がハイレベルとローレベルとを繰り返している期間よりも時間軸方向の前(過去)に発生している。この場合、動作開始タイミングは時刻t3であり、時刻t3からの一定期間内において衝撃音が発生している。
よって、時刻t1を動作開始タイミングとした場合、衝撃音ノイズ低減処理部252は、時刻t1からの一定期間を衝撃音が発生している可能性の高い期間として取り扱うこととなる。この場合、衝撃音ノイズ低減処理部252によって取得された第1周波数スペクトルには、衝撃音が含まれていない可能性が高い。
【0080】
よって、タイミング信号検出部191は、図10を用いて説明したとおり、駆動系の実際の開始タイミングとAFエンコーダ117の出力とがずれてしまった場合の不都合を回避するため動作開始タイミングとして、動作部への駆動制御信号(コマンド)が出力された時刻を示す動作開始タイミング信号を生成する。
【0081】
[変形例]
次に、図11〜13を参照して、本実施形態に係る撮像装置100の駆動パターンの他の例について説明する。
図11(A)は、AFエンコーダ117出力から求めた回転方向と時間との関係の一例を示す。図11(B)は、マイク音信号と時間の関係の一例が示されている。なお、図11(B)は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。図11(A)と図11(B)に示すAFレンズ112の駆動パターンは、例えば、焦点距離βでピントを合わせるAF処理を行う場合の駆動パターンを示す。
【0082】
図11(A)には、その縦軸に、AFエンコーダ117の出力として、AFレンズ112を駆動する駆動機構の回転方向を示す。
この焦点距離βでピントを合わせるAF処理を行う駆動パターンでは、図11(A)に示す通り、AFレンズ112を駆動する駆動機構が、時刻t10〜t20において、時計回りCWに回転して、その後静止する。そして、AFレンズ112を駆動する駆動機構は、時刻t30〜t40まで、再び時計回りCWに回転した後、回転方向を反転させ、時刻t40〜t50まで、反時計回りCCWに回転して、その後静止する。
【0083】
つまり、時刻t10、t30は、それぞれAFレンズ112の動作開始タイミングを、時刻t20、t50は、それぞれAFレンズ112の動作停止タイミングを、表わしている。また、時刻t40は、AFレンズ112の駆動方向が逆回転となったタイミングを表わしている。
従って、図11(B)に示す通り、時刻t10〜t20の期間、および、時刻t30〜t50の期間で、マイク音信号にAFレンズ112による動作音が重畳(発生)している、又は、動作音が重畳している可能性が高い。本実施形態においては、時刻t10〜t20の期間、時刻t30〜t50の期間において、AFレンズ112による動作音であるノイズが発生している場合について以下説明する。
また、図11(B)に示す通り、時刻t10、t20、t30、t40、t50においては、それぞれ衝撃音が発生している可能性が高い。本実施形態においては、時刻t10、t20、t30、t40、t50において、AFレンズ112による衝撃音が発生している場合について以下説明する。
【0084】
また、衝撃音が発生した場合、その衝撃音が発生している可能性の高い時間は、各駆動パターンに応じて予め決められている。焦点距離βでピントを合わせるAF処理を行う駆動パターンでは、図12に示すような衝撃音の発生する時間(タイミング)が決められている。
図12は、焦点距離βでピントを合わせるAF処理を行う駆動パターンでAFレンズ112を駆動した際に、マイク230で収音されるマイク音信号の一例を示す。なお、図12は、説明便宜のため、マイク音信号のうち、動作音の音信号のみを示し、目的音の音信号の図示を省略する。
【0085】
焦点距離βでピントを合わせるAF処理を行う駆動パターンでは、時刻t10〜t11までの時間、時刻t20〜t21までの時間、時刻t30〜t31までの時間、時刻t40〜t41までの時間、時刻t50〜t51までの時間が、それぞれ、衝撃音の発生する時間であると予め決められている。
本実施形態では、図12に示す通り、この衝撃音の発生する期間において、衝撃音が発生している例について説明する。
【0086】
音信号処理部251は、A/D変換部240から出力されたマイク音信号に対して、図12に示すように他の区間と半分ずつオーバーラップしている窓関数W0〜W32で重み付けをする。これにより、マイク音信号は、窓関数のサイズに分割される。この音信号処理部251は、窓関数W0〜W32で重み付けされた各区間のマイク音信号ごとに、例えばフーリエ変換を行い、周波数領域における周波数スペクトルS0〜S32を算出する。
【0087】
本実施形態において、窓関数W2〜W4に対応する周波数スペクトルS2〜S4は、AFレンズ112の動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を含む音情報である。また、窓関数W9〜W12に対応する周波数スペクトルS9〜S12は、AFレンズ112の動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を含む音情報である。さらに、窓関数W16〜W18に対応する周波数スペクトルS16〜S18は、AFレンズ112の動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を含む音情報である。また、窓関数W22〜W24に対応する周波数スペクトルS22〜S24は、AFレンズ112の動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を含む音情報である。さらに、窓関数W28〜W30に対応する周波数スペクトルS28〜S30は、AFレンズ112の動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を含む音情報である。
【0088】
ここで、図13を参照して、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルとの関係の一例について説明する。図13は、衝撃音ノイズ低減処理部252が取得する第1周波数スペクトルと第2周波数スペクトルとの関係の一例を示す図である。
衝撃音ノイズ低減処理部252は、タイミング信号検出部191から入力する動作タイミング信号に基づき、例えば、音信号処理部251から出力される周波数スペクトルS0〜S32から、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS2〜S4を、第1周波数スペクトルとして取得する。また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS9〜S12を、第1周波数スペクトルとして取得する。さらに、衝撃音ノイズ低減処理部252は、動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS16〜S18を、第1周波数スペクトルとして取得する。また、衝撃音ノイズ低減処理部252は、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS22〜S24を、第1周波数スペクトルとして取得する。さらに、衝撃音ノイズ低減処理部252は、動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を示す動作タイミング信号に基づき、衝撃音が発生している可能性のある期間に対応する周波数スペクトルS28〜S30を、第1周波数スペクトルとして取得する。
【0089】
また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS2に対応する第2周波数スペクトルとして周波数スペクトルS2の直前の周波数スペクトルS0を取得する。この衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS3に対応する第2周波数スペクトルとして、周波数スペクトル3の直前の周波数スペクトルS1を取得する。また、衝撃音ノイズ低減処理部252は、動作開始タイミングt10に対応する衝撃音発生期間t10〜t11を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS4に対応する第2周波数スペクトルとして、周波数スペクトルS4の直後の周波数スペクトルS5を取得する。
【0090】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS9に対応する第2周波数スペクトルとして周波数スペクトルS9の直前の周波数スペクトルS8を、第1周波数スペクトルである周波数スペクトルS10に対応する第2周波数スペクトルとして、周波数スペクトルS10の直前の周波数スペクトルS8を、それぞれ取得する。
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt20に対応する衝撃音発生期間t20〜t21を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS11に対応する第2周波数スペクトルとして周波数スペクトルS11の直後の周波数スペクトルS13を、第1周波数スペクトルである周波数スペクトルS12に対応する第2周波数スペクトルとして周波数スペクトルS12の直後の周波数スペクトルS13を、それぞれ取得する。
【0091】
また、衝撃音ノイズ低減処理部252は、動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS17に対応する第2周波数スペクトルとして周波数スペクトルS17の直前の周波数スペクトルS15を取得する。
また、衝撃音ノイズ低減処理部252は、動作開始タイミングt30に対応する衝撃音発生期間t30〜t31を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS16に対応する第2周波数スペクトルとして周波数スペクトルS16の直前の周波数スペクトルS15を、第1周波数スペクトルである周波数スペクトルS18に対応する第2周波数スペクトルとして周波数スペクトルS18の直後の周波数スペクトルS19を、それぞれ取得する。
【0092】
また、衝撃音ノイズ低減処理部252は、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS23に対応する第2周波数スペクトルとして周波数スペクトルS23の直前の周波数スペクトルS21を取得する。
また、衝撃音ノイズ低減処理部252は、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS22に対応する第2周波数スペクトルとして周波数スペクトルS22の直前の周波数スペクトルS21を、第1周波数スペクトルである周波数スペクトルS24に対応する第2周波数スペクトルとして周波数スペクトルS24の直後の周波数スペクトルS25を、それぞれ取得する。
【0093】
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS29に対応する第2周波数スペクトルとして周波数スペクトルS29の直後の周波数スペクトルS31を取得する。
また、衝撃音ノイズ低減処理部252は、動作停止タイミングt50に対応する衝撃音発生期間t50〜t51を示す動作タイミング信号に基づき、第1周波数スペクトルである周波数スペクトルS28に対応する第2周波数スペクトルとして周波数スペクトルS28の直前の周波数スペクトルS27を、第1周波数スペクトルである周波数スペクトルS30に対応する第2周波数スペクトルとして周波数スペクトルS30の直後の周波数スペクトルS31を、それぞれ取得する。
【0094】
さらに、衝撃音ノイズ低減処理部252は、第1周波数スペクトルの少なくとも一部を第2周波数スペクトルの対応する部分に置き換える。
例えば、衝撃音ノイズ低減処理部252は、第1周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルと、第2周波数スペクトルのうち予め決められた閾値周波数以上の周波数スペクトルとを、周波数成分ごとに比較して、第2周波数スペクトルの方が第1周波数スペクトルに比べて小さいと判定した場合に、第1周波数スペクトルにおける当該周波数成分を第2周波数スペクトルの周波数成分に置き換える。
【0095】
このようにして、衝撃音ノイズ低減処理部252は、時間軸方向において、第1周波数スペクトルと隣接する第2周波数スペクトルについて、衝撃音ノイズ低減処理を実行する。
この場合、衝撃音ノイズ低減処理部252は、時間軸方向において、第1周波数スペクトルと隣接する周波数スペクトルのうち、駆動音を含まない周波数スペクトルが隣接している場合、この駆動音を含まない周波数スペクトルとの比較を行う。なお、時間軸方向において隣接する周波数スペクトルが駆動音を含む周波数スペクトルと衝撃音を含む周波数スペクトルである場合、衝撃音ノイズ低減処理部252は、駆動音を含む周波数スペクトルを第2周波数スペクトルとして取得する。
また、動作反転タイミングt40に対応する衝撃音発生期間t40〜t41のように、時間軸方向において、第1周波数スペクトルと隣接する周波数スペクトルが、いずれも駆動音を含む周波数スペクトルである場合、衝撃音ノイズ低減処理部252は、いずれか一方の周波数スペクトルを第2周波数スペクトルとして取得する。この場合、衝撃音ノイズ低減処理部252は、第1周波数スペクトルと時間軸方向においてより近い周波数スペクトルを第2周波数スペクトルとして取得する。
【0096】
また、タイミング信号検出部191又はノイズ低減処理部250等による手順を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、実行処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものであってもよい。
【0097】
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0098】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【符号の説明】
【0099】
100…撮像装置、110…撮像部、190…CPU、191…検出部、170…通信部、200…記憶媒体、230…マイク、240…A/D変換部、250…ノイズ低減処理部、251…音信号処理部、252…衝撃音ノイズ低減処理部、253…駆動音ノイズ低減処理部、254…逆フーリエ変換部
【特許請求の範囲】
【請求項1】
動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出部と、
音信号を取得する音信号取得部と、
前記動作タイミング信号に基づき、前記動作部の動作によって生じるノイズが発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズが発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理部と、
を備えることを特徴とするノイズ低減処理装置。
【請求項2】
前記ノイズ低減処理部は、
前記ノイズが発生する期間と時間軸方向に最も近い前記ノイズが発生しない可能性の高い期間に取得される音信号に基づき前記第2周波数スペクトルを算出することを特徴とする請求項1に記載のノイズ低減処理装置。
【請求項3】
前記ノイズ低減処理部は、
前記動作部の動作時に前記動作部の状態が変化したことにより発生する衝撃音である前記ノイズが発生しない可能性の高い期間において取得された音信号に基づき前記第2周波数スペクトルを算出することを特徴とする請求項1あるいは2に記載のノイズ低減処理装置。
【請求項4】
前記ノイズ低減処理部は、
前記ノイズが発生した可能性の高い期間に取得された音信号のうち、予め決められた周波数成分の範囲に含まれる前記第1周波数スペクトルの周波数成分を、前記予め決められた周波数成分の範囲に含まれる前記第2周波数スペクトルの周波数成分に置き換えることを特徴とする請求項1から3のうちいずれか一項に記載のノイズ低減処理装置。
【請求項5】
前記ノイズ低減処理部は、
前記第1周波数スペクトルの振幅と前記第2周波数スペクトルの振幅とを周波数成分ごとに比較し、前記第2周波数スペクトルの周波数成分の振幅が前記第1周波数スペクトルの周波数成分の振幅よりも小さいと判定した場合、当該第1周波数スペクトルの当該周波数成分を当該第2周波数スペクトルの当該周波数成分に置き換えることを特徴とする請求項1から4のうちいずれか一項に記載のノイズ低減処理装置。
【請求項6】
前記ノイズ低減処理部は、
前記第2周波数スペクトルを構成する複数の周波数成分の総和が予め決められた閾値以上であるか否かを判定し、前記閾値未満であった場合に、前記第1周波数スペクトルの少なくとも一部を前記第2周波数スペクトルの対応する部分に置き換えることを特徴とする請求項1から5のうちいずれか一項に記載のノイズ低減処理装置。
【請求項7】
前記動作部を駆動させるためのコマンドを駆動部に出力する制御部と、
前記動作部が動いていることを検出し、前記動作部が動作していることを示す動作検出信号を出力する動作検出部と、をさらに備え、
前記ノイズ低減処理部は、
前記制御部がコマンドを出力したタイミングを示す第1動作タイミング信号と、前記動作検出部が前記動作検出信号の出力を停止したタイミングとを示す第2動作タイミング信号とに基づき、前記ノイズ音が発生する可能性の高い期間を判定することを特徴とする請求項1から6のうちいずれか一項に記載のノイズ低減処理装置。
【請求項8】
前記ノイズ低減処理部は、
前記動作タイミング信号に基づき、前記動作部による動作の開始時であると判定した場合、動作開始時において前記ノイズ音が発生する可能性の高い期間の直前の前記ノイズ音が発生しない可能性の高い期間に取得される音信号に基づき、前記第2周波数スペクトルを算出し、
前記動作タイミング信号に基づき、前記動作部による動作の終了時であると判定した場合、動作終了時において前記ノイズ音が発生する可能性の高い期間の直後の前記ノイズ音が発生しない可能性の高い期間に取得される音信号に基づき、前記第2周波数スペクトルを算出することを特徴とする請求項1から7のうちいずれか一項に記載のノイズ低減処理装置。
【請求項9】
上述の請求項1から8のうちいずれか一項に記載のノイズ低減処理装置を含むことを特徴とするカメラ。
【請求項10】
コンピュータを、
動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出手段、
音信号を取得する音信号取得手段、
前記動作タイミング信号を検出して、前記動作部の動作によって生じるノイズ音が発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズ音が発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理手段、
として機能させるためのノイズ低減処理プログラム。
【請求項1】
動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出部と、
音信号を取得する音信号取得部と、
前記動作タイミング信号に基づき、前記動作部の動作によって生じるノイズが発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズが発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理部と、
を備えることを特徴とするノイズ低減処理装置。
【請求項2】
前記ノイズ低減処理部は、
前記ノイズが発生する期間と時間軸方向に最も近い前記ノイズが発生しない可能性の高い期間に取得される音信号に基づき前記第2周波数スペクトルを算出することを特徴とする請求項1に記載のノイズ低減処理装置。
【請求項3】
前記ノイズ低減処理部は、
前記動作部の動作時に前記動作部の状態が変化したことにより発生する衝撃音である前記ノイズが発生しない可能性の高い期間において取得された音信号に基づき前記第2周波数スペクトルを算出することを特徴とする請求項1あるいは2に記載のノイズ低減処理装置。
【請求項4】
前記ノイズ低減処理部は、
前記ノイズが発生した可能性の高い期間に取得された音信号のうち、予め決められた周波数成分の範囲に含まれる前記第1周波数スペクトルの周波数成分を、前記予め決められた周波数成分の範囲に含まれる前記第2周波数スペクトルの周波数成分に置き換えることを特徴とする請求項1から3のうちいずれか一項に記載のノイズ低減処理装置。
【請求項5】
前記ノイズ低減処理部は、
前記第1周波数スペクトルの振幅と前記第2周波数スペクトルの振幅とを周波数成分ごとに比較し、前記第2周波数スペクトルの周波数成分の振幅が前記第1周波数スペクトルの周波数成分の振幅よりも小さいと判定した場合、当該第1周波数スペクトルの当該周波数成分を当該第2周波数スペクトルの当該周波数成分に置き換えることを特徴とする請求項1から4のうちいずれか一項に記載のノイズ低減処理装置。
【請求項6】
前記ノイズ低減処理部は、
前記第2周波数スペクトルを構成する複数の周波数成分の総和が予め決められた閾値以上であるか否かを判定し、前記閾値未満であった場合に、前記第1周波数スペクトルの少なくとも一部を前記第2周波数スペクトルの対応する部分に置き換えることを特徴とする請求項1から5のうちいずれか一項に記載のノイズ低減処理装置。
【請求項7】
前記動作部を駆動させるためのコマンドを駆動部に出力する制御部と、
前記動作部が動いていることを検出し、前記動作部が動作していることを示す動作検出信号を出力する動作検出部と、をさらに備え、
前記ノイズ低減処理部は、
前記制御部がコマンドを出力したタイミングを示す第1動作タイミング信号と、前記動作検出部が前記動作検出信号の出力を停止したタイミングとを示す第2動作タイミング信号とに基づき、前記ノイズ音が発生する可能性の高い期間を判定することを特徴とする請求項1から6のうちいずれか一項に記載のノイズ低減処理装置。
【請求項8】
前記ノイズ低減処理部は、
前記動作タイミング信号に基づき、前記動作部による動作の開始時であると判定した場合、動作開始時において前記ノイズ音が発生する可能性の高い期間の直前の前記ノイズ音が発生しない可能性の高い期間に取得される音信号に基づき、前記第2周波数スペクトルを算出し、
前記動作タイミング信号に基づき、前記動作部による動作の終了時であると判定した場合、動作終了時において前記ノイズ音が発生する可能性の高い期間の直後の前記ノイズ音が発生しない可能性の高い期間に取得される音信号に基づき、前記第2周波数スペクトルを算出することを特徴とする請求項1から7のうちいずれか一項に記載のノイズ低減処理装置。
【請求項9】
上述の請求項1から8のうちいずれか一項に記載のノイズ低減処理装置を含むことを特徴とするカメラ。
【請求項10】
コンピュータを、
動作部が動作するタイミングを示す動作タイミング信号を検出するタイミング信号検出手段、
音信号を取得する音信号取得手段、
前記動作タイミング信号を検出して、前記動作部の動作によって生じるノイズ音が発生する可能性の高い期間に取得される音信号の第1周波数スペクトルと、前記ノイズ音が発生しない可能性の高い期間に取得される音信号の第2周波数スペクトルとを算出し、前記算出した第1周波数スペクトルの少なくとも一部を前記算出した第2周波数スペクトルの対応する部分に置き換えた周波数スペクトルに基づき、前記音信号に対してノイズ低減を行ったノイズ低減音信号を算出するノイズ低減処理手段、
として機能させるためのノイズ低減処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−11873(P2013−11873A)
【公開日】平成25年1月17日(2013.1.17)
【国際特許分類】
【出願番号】特願2012−120155(P2012−120155)
【出願日】平成24年5月25日(2012.5.25)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】
【公開日】平成25年1月17日(2013.1.17)
【国際特許分類】
【出願日】平成24年5月25日(2012.5.25)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】
[ Back to top ]