以下図面に従って本発明に係る実施形態を詳細に説明する。本実施形態では、撮像装置に収容される音声処理装置ついて説明する。
図1は実施形態の撮像装置100の構成を示すブロック図である。撮像装置100は、撮像部101、音声入力部102、メモリ103、表示制御部104、表示部105を有する。また、撮像装置100は、符号化処理部106、記録再生部107、記録媒体108、制御部109、操作部110、音声出力部111、スピーカ112、外部出力部113、並びに、これらを接続するバス114を有する。
撮像部101は、撮影光学レンズにより取り込まれた被写体の光学像を撮像素子により画像信号に変換し、アナログデジタル変換、画像調整処理などを行い、画像データを生成する。撮影光学レンズは、内蔵型の光学レンズであっても、着脱式の光学レンズであっても良い。また、撮像素子は、CCD、CMOS等に代表される光電変換素子であればよい。
音声入力部102は、内蔵または音声端子を介して接続されたマイクにより、音声処理装置外(実施形態では撮像装置外)からの周辺の音声を集音し、電気信号を生成する。また、音声入力部102は、アナログデジタル変換、音声処理などを行い音声データを生成する。マイクは、指向性、無指向性を問わないが、本実施形態では無指向性のマイクを使用するものとする。
メモリ103は、撮像部101により得られた画像データや、音声入力部102により得られた音声データを一時的に記憶するために利用される。
表示制御部104は、撮像部101により得られた画像データに係る画像や、撮像装置100の操作画面、メニュー画面等を表示部105や、不図示の映像端子を介して外部のディスプレイに表示する。表示部105の種類は問わないが、例えば液晶表示器である。
符号化処理部106は、メモリ103に一時的に記憶された画像データや音声データを読み出して所定の符号化を行い、圧縮画像データ、圧縮音声データ等を生成する。また、音声データに関しては圧縮しないようにしてもよい。圧縮画像データは、例えば、MPEG2やH.264/MPEG4−AVCなど、どのような圧縮方式で圧縮されたものであってもよい。また、圧縮音声データも、AC3(A)AC、ATRAC、ADPCMなどのような圧縮方式で圧縮されたものであってもよい。また、符号化処理部106は、上記の符号化データ(圧縮画像データ、圧縮音声データ)の復号処理も行う。
記録再生部107は、記録媒体108に対して、符号化処理部106で生成された圧縮画像データ、圧縮音声データまたは音声データ、各種データを記録したり、記録媒体108から読出したりする。ここで、記録媒体108は、画像データ、音声データ等を記録する不揮発性の記録媒体である。例えば、磁気ディスク、光学式ディスク、半導体メモリなどであり、その種類は問わない。また、記録媒体108は、本装置100に対して固定であっても、脱着可能であっても構わない。
制御部109は、バス114を介して、撮像装置100の各ブロックに制御信号を送信することで撮像装置100の各ブロックを制御するものであり、各種制御を実行するためのCPUやメモリなどから構成される。制御部109で使用するメモリは、各種制御プログラムを格納するROM、演算処理のためのワークエリアとして利用するRAM等であり、制御部109の外付けのメモリも含む。
操作部110は、ボタン、ダイヤル、タッチパネル、或いはそれらの組み合わせであり、ユーザの操作に応じて、指示信号を制御部109に送信する。操作部110は、具体的には、動画記録開始、終了を指示するための撮影ボタン、光学的もしくは電子的に画像に対してズーム動作する指示するためのズームレバー、各種調整をするための十字キー、決定キーなどを有する。
音声出力部111は、記録再生部107により再生された音声データや圧縮音声データ、または制御部109により出力される音声データをスピーカ112や音声端子などに出力する。外部出力部113は、記録再生部107により再生された圧縮映像データや圧縮音声データ、音声データなどを外部機器に出力する。データバス114は、音声データや画像データ等の各種データ、各種制御信号を撮像装置100の各ブロックに供給する。
以上が実施形態における撮像装置100の構成の説明である。次に、実施形態における撮像装置の通常の動作について説明する。
本実施形態の撮像装置100は、ユーザが操作部110を操作して電源を投入する指示が出されたことに応じて、不図示の電源供給部からの電力が、撮像装置の各ブロックに供給される。
電源が供給されると、制御部109は、操作部110のモード切り換えスイッチが、例えば、撮影モード、再生モード等のどのモードを指定しているかを、操作部110からの指示信号により確認する。撮影モードにおける動画記録モードでは、撮像部101により得られた画像データと音声入力部102により得られた音声データとを1つの画像ファイルとして保存する。再生モードでは、記録媒体108に記録された画像ファイルを記録再生部107により再生して表示部105に表示させ、スピーカ112より出力することになる。
撮影モードでは、まず、制御部109は、撮影待機状態に移行させるように制御信号を撮像装置100の各ブロックに送信し、以下のような動作をさせる。
撮像部101は、撮影光学レンズにより取り込まれた被写体の光学像を撮像素子により動画像信号に変換し、アナログデジタル変換、画像調整処理などを行い、動画像データを生成する。そして、撮像部101は、得られた動画像データを表示処理部104に送信し、表示部105に表示させる。なお、撮像部101は、1フレームが水平1920画素×垂直1080画素、フレームレートが30フレーム/秒の動画像信号を出力する。ユーザはこの様にして表示された画面を見ながら撮影の準備を行う。
音声入力部102は、複数のマイクにより得られたアナログ音声信号をデジタル信号に変換し、得られた複数のデジタル音声信号を処理して、マルチチャンネルの音声データを生成する。そして、得られた音声データを音声出力部111に送信し、接続されたスピーカ112や不図示のイヤホンから音声として出力させる。ユーザは、この様にして出力された音声を聞きながら記録音量を決定するためのマニュアルボリュームの調整をすることもできる。
次に、ユーザが操作部110の記録ボタンを操作することにより撮影開始の指示信号が制御部109に送信されると、制御部109は、撮像装置100の各ブロックに撮影開始の指示信号を送信し、撮影モードにおける動画像記録モードに移行する。具体的な、制御部109の処理は以下の通りである。
撮像部101は、撮影光学レンズにより取り込まれた被写体の光学像を撮像素子により動画像信号に変換し、アナログデジタル変換、画像調整処理などを行い、動画像データを生成する。そして、得られた動画像データを表示処理部104に送信し、表示部105に表示させる。また、撮像部101は、得られた画像データをメモリ103へ送信する。
音声入力部102は、複数のマイクにより得られたアナログ音声信号をデジタル信号に変換し、得られた複数のデジタル音声信号を処理して、マルチチャンネルの音声データを生成する。そして、得られた音声データをメモリ103に送信する。また、マイクが一つの場合には、得られたアナログ音声信号をデジタル変換し音声データを生成し、音声データをメモリ103に送信する。
符号化処理部106は、メモリ103に一時的に記憶された動画像データや音声データを読み出して所定の符号化を行い、圧縮動画像データ、圧縮音声データ等を生成し、再びメモリ103に格納する。
制御部109は、メモリ103に格納された圧縮動画像データ、圧縮音声データを合成し、データストリームを形成し、記録再生部107に出力する。音声データを圧縮しない場合には、制御部109は、メモリ103に格納された音声データと圧縮動画像データとを合成し、データストリームを形成して記録再生部107に出力する。
記録再生部107は、UDF、FAT等のファイルシステム管理のもとに、データストリームを一つの動画ファイルとして記録媒体108に書き込んでいく。
撮像装置100は、上記の処理を動画記録状態中、継続することになる。そして、ユーザが操作部110の記録ボタンを操作することにより撮影終了の指示信号が制御部109に送信されると、制御部109は、撮像装置100の各ブロックに撮影終了の指示信号を送信し、以下のような動作をさせる。
撮像部101、音声入力部102は、それぞれ動画像データ、音声データの生成を停止する。符号化処理部106は、メモリに記憶されている残りの画像データと音声データとを読出して所定の符号化を行い、圧縮動画像データ、圧縮音声データ等を生成し終えたら動作を停止する。音声データを圧縮しない場合には、当然、圧縮動画像データの生成が終わったら動作を停止する。
そして、制御部109は、これらの最後の圧縮動画像データと、圧縮音声データまたは音声データとを合成し、データストリームを形成し、記録再生部107に出力する。
記録再生部107は、UDF、FAT等のファイルシステム管理のもとに、データストリームを一つの動画ファイルとして記録媒体108に書き込んでいく。そして、データストリームの供給が停止したら、動画ファイルを完成させて、記録動作を停止させる。
制御部109は、記録動作が停止すると、撮影待機状態に移行させるように制御信号を撮像装置100の各ブロックに送信して、撮影待機状態に戻る。
次に、再生モードについて説明する。ユーザが操作部110を操作して再生モードにした場合、制御部109は、再生状態に移行させるように制御信号を撮像装置100の各ブロックに送信し、以下のような動作をさせる。
記録媒体108に記録された圧縮動画像データと圧縮音声データとからなる動画ファイルを記録再生部107が読出して、読出された圧縮動画像データ、圧縮音声データを符号化処理部106に送る。
符号化処理部106は、圧縮動画像データ、圧縮音声データを復号し、それぞれを表示制御部104、音声出力部111に送信する。表示制御部104は、復号された動画像データを表示部105に表示させる。音声出力部111は、復号された音声データを内蔵のスピーカ112、または、取付けられた外部スピーカに出力して、音響として再生させる。
本実施形態の撮像装置100は以上のように、動画像、音声の記録再生を行うことができる。
本実施形態では、音声入力部102において、音声信号を得る際に、マイクにより得られた音声信号のレベル調整処理等の処理をしている。この処理は、装置が起動してから常に行われてもよいし、撮影モードが選択されてから行われてもよい。或いは、音声の記録に関連するモードが選択されてから行われても良い。また、音声の記録に関連するモードにおいて、音声の記録が開始したことに応じて上記の処理を行ってもよい。本実施形態では、動画像撮影の開始されたタイミングで上記の処理を行うものとして説明する。
図2は本実施形態の撮像装置100の撮像部101、音声入力部102のブロック構成図である。
撮像部101は、被写体の光学像を取り込む光学レンズ201、光学レンズ201により取り込まれた被写体の光学像を電気信号(画像信号)に変換させる撮像素子202を有する。さらに、撮像部101は、撮像素子202により得られたアナログ画像信号をデジタル画像信号に変換し、画質調整処理をして画像データを形成し、メモリに送信する画像処理部203を有している。さらに、撮像部101は、光学レンズ201を移動させるための位置センサ、モータ等の公知の駆動メカニズムを有する光学レンズ制御部204を有している。本実施形態では、撮像部101に光学レンズ201、光学レンズ制御部204が内蔵されているように記載しているが、光学レンズ201は、レンズマウントを介して撮像装置100に着脱自在な交換レンズであっても良い。また、光学レンズ制御部204は、交換レンズ内に設けられるようにしても良い。
ここで、ズーム動作、フォーカス調整などの指示を、ユーザが操作部110を操作して入力すると、制御部109は、光学レンズ制御部204に光学レンズ201を移動させるための制御信号(駆動信号)を送信する。光学レンズ制御部204は、この制御信号に応じて、不図示の位置センサで光学レンズ201の位置を確認し、不図示のモータ等で光学レンズ201の移動を行う。また、画像処理部203により得られた画像や被写体との距離を制御部109が確認し、自動的に調整する場合は、光学レンズを駆動させる制御信号を送信することになる。また、画像のブレを防止する、いわゆる防振機能を備えている場合には、制御部109は、不図示の振動センサにより検出された振動に基づいて、光学レンズ201を移動させるための制御信号を光学レンズ制御部204に送信することになる。
このときに、光学レンズ201の移動による駆動騒音や光学レンズ201を移動させるためのモータの駆動騒音が発生することになる。制御部109からの光学レンズ201を駆動させる制御信号に応じて、光学レンズ制御部204が光学レンズ201を駆動させる。従って、制御部109は、駆動騒音が発生するタイミングを知る(検出するまたは、決定する)ことができる。
本実施形態において、光学レンズ201の制御により、例えば最大で50倍、最小で1倍のズーミングを光学的に行うことができる。これを本実施形態では光学ズームと言う。勿論、光学ズームの倍率は前記以上でも前記以下でも構わないものとする。光学ズームは、制御部109からの指示で、光学レンズ制御部204が、光学レンズ201の光学レンズを移動させることで、被写体の光学像をズーミングさせるものである。また、画像処理部203は、撮像素子202により得られた画像信号の一部をズームインした画像信号を出力する電子ズーム機能を備えている。また、撮像素子202により得る画像の範囲を広くし、画像処理部203で画像サイズをズームアウトした画像信号を出力する電子ズーム機能を備えている。
以上が実施形態における撮像部101の構成とその動作である。次に、音声入力部102の構成と動作を説明する。
実施形態の撮像装置100は、参照符号205a,205bで示す2つのマイクを有する。これらマイク205a、205bは空気(媒体)を伝播する振動を電気信号に変換し、音声信号を出力するものである。マイク205aがメイン(MAIN)マイク、マイク205bがサブ(SUB)マイク205bであって、以降、この名称で表現する。
詳細は後述する説明で明らかにするが、メインマイク205aは、ステレオ音声の一方のチャネルに対応するマイクとして機能し、且つ、音声処理装置外(実施形態では撮像装置100外)から音声を主として取得するためのマイクである。また、サブマイク205bは、ステレオ音声のもう一方のチャネルに対応するマイクとして機能する位置に配置される。サブマイク205bは、メインマイク205aと比較して、音声処理装置内(撮像装置100)の駆動部からの駆動騒音を主として取得するためのマイクである。
メインマイク205aはアナログの音声信号をMch(メインチャネル)、サブマイク205bはアナログの音声信号をSch(サブチャネル)として出力する。本実施形態において第一の音声入力部をメインマイク205a、第一の音声信号をMchとする。また、第二の音声入力部をサブマイク205b、第二の音声信号をSchとする。本実施形態では2チャンネルで構成されたステレオ方式とするため、メインマイク205aとサブマイク205bの配置位置は、撮像部101の正立に構えた際の水平方向に所定距離隔てた位置に設けられている。なお、実施形態では、マイク数を2としているが、それ以上のマイクを保持する構成でも構わない。
メインマイク205a,サブマイク205bにより得られたアナログ音声信号はA/D変換部206に供給され、ここでそれぞれの音声信号がデジタルの音声データに変換される。本実施形態におけるA/D変換部206は、48KHzのサンプリングレートでサンプリングを行い、1サンプリング当たり16bitのデジタルデータを生成するものとする。
A/D変換部206で得られた、予め設定された音声信号の期間(フレーム)の時系列のデジタルの音声データはFFT部207に供給され、ここで高速フーリエ変換され、周波数毎の周波数スペクトルデータに変換される。本実施形態において、周波数スペクトルは、0Hzから48kHzまでにおいて1024ポイントの周波数スペクトルデータとして変換され、ナイキスト周波数である24kHzまでにおいては512ポイントの周波数スペクトルを持つものとする。メインマイク205aからの周波数スペクトルデータをMain[0]〜[511]、サブマイク205bからの周波数スペクトルデータをSub[0]〜[511]と表す。また、本実施形態において、第一の音声スペクトルデータをMain[0]〜[511]、第二の音声スペクトルデータをSub[0]〜[511]と表すものとする。なお、各スペクトルデータの添え字が「0」が最低周波数を、「511」が最大周波数を表すものとする。
駆動音演算処理部209は、駆動部を駆動させるための、制御部109からの制御信号に応じて、FFT部207により得た周波数スペクトルデータの周波数成分毎の、駆動騒音の減算量を決定する。この駆動騒音は、光学レンズ201が駆動されることにより発生される。なお、本実施形態における駆動部はズーム動作、フォーカス調整により駆動する光学レンズ201を指すものとする。駆動音演算処理部209は、周波数スペクトル毎の減算量を表すNC_Gain[0]〜[511]と、駆動騒音検出信号を出力する。
詳細は後述する説明から明らかになるが、感度差補正部208は、駆動音演算処理部209からの、1フレーム前の駆動騒音検出信号に応じて、現フレームのMain[0]〜[511]に対するSub[0]〜[511]の感度を補正し、補正後の周波数スペクトルデータMain[0]〜[511]、Sub[0]〜[511]を出力する。
風雑音演算処理部210は、FFT部207からの周波数スペクトルデータから、風雑音を検出し、減算量を決定する。そして、風雑音演算処理部210は、決定した風雑音の周波数スペクトルデータWC_Gain[0]〜[511]と、風雑音レベル信号を出力する。
ステレオゲイン演算処理部211は、FFT部207からの周波数スペクトルデータに対し、ステレオのLch(左チャネル)及びRch(右チャネル)それぞれのゲインを決定する。そして、ステレオゲイン演算処理部211は、各チャネルの、決定した周波数スペクトルの成分毎のゲインを表すGain_L[0]〜[511]とGain_R[0]〜[511]を出力する。ここで、左チャンネルのゲインがGain_L[0]〜[511]、右チャンネルのゲインがGain_R[0]〜[511]である。
トータルゲイン演算部212は、駆動音演算処理部209、風雑音演算処理部210、および、ステレオゲイン演算処理部211において決定したNC_Gain[0]〜[511]、WC_Gain[0]〜[511]、Gain_L[0]〜[511]、Gain_R[0]〜[511]を合算し、Total_Gain_L[0]〜[511]、Total_Gain_R[0]〜[511]を出力する。具体的には、次式の通りである。実施形態では、このトータルゲイン演算部212は、トータルゲイン決定部として機能する。
Total_Gain_R[]=NC_Gain[]+WC_Gain[]+Gain_R[]
Total_Gain_L[]=NC_Gain[]+WC_Gain[]+Gain_L[]
L/Rch生成部213は、MAIN[0]〜[511]の周波数毎の周波数スペクトルと、トータルゲイン演算部212で決定したTotal_Gain_L[0]〜[511]、Total_Gain_R[0]〜[511]を用いて、LchとRchの周波数スペクトルデータを生成する(詳細後述)。つまり、本実施形態におけるL/Rch生成部213はステレオ生成部として機能する。
iFFT部214は、L/Rch生成部213で生成された各チャネルの周波数スペクトルデータに対して逆高速フーリエ変換を行い、それぞれのチャネルの時系列の音声信号に戻す。
音声処理部215は、イコライザ等の処理を実施する。オートレベルコントローラは、時系列の音声信号の振幅を所定のレベルに調整する(以後、ALC部216)。
以上の構成により、音声入力部102は、音声信号に所定の処理を行い音声データを形成し、メモリ103へ送信することになる。
次に、本実施形態の撮像装置100の記録動作について図4を用いて説明する。同図は実施形態の撮像装置100の記録のシーケンスを示すフローチャートである。
S401にて、ユーザによる操作部110の操作により記録(REC)開始が指示されることで、本処理が開始される。S402にて、制御部109は音声録音するために音声のパスを接続する。音声パスが確立した後、S403にて、制御部109は、本実施形態で説明する制御を含めた信号処理の初期設定をおこない、処理を開始する。この信号処理の内容に関しては後述する。以降、RECシーケンスが終了するまで、本実施形態で説明する制御を含めた信号処理は実施される。
記録処理シーケンス中、制御部109は、ユーザによる操作部110への操作を監視する。そして、ユーザにより、操作部110の一部であるズームレバーが操作された場合、S404からS405に処理を進め、制御部109は撮像部101を制御し、ズーム処理を行う。このズーム処理は、S406にて、ユーザがズームレバーの操作を止めたと判定されるまで継続する。ズーム処理中は、先に説明したように、レンズ201の移動による駆動騒音が発生し、その騒音が周囲環境音に重畳して録音されてしまう点に注意されたい。
そして、制御部109は、ユーザによる操作部110の操作や、記録媒体108の状況によって、記録終了が指示されたと判断した場合、S407からS408に処理を進める。S408にて、制御部109は音声パスを切断し、次いで、S409にて信号処理も終了する。
次に、本実施形態の撮像装置100の音声入力部102の詳細を図6を用いて説明する。同図は、本実施形態の音声入力部102の詳細な構成を示すブロック図である。
本実施形態における音声入力部102は、前述の通り、空気中を伝播する音声振動を電気信号に変換し、音声信号を出力するメインマイク205aとサブマイク205bを有する。また前述の通り、A/D変換部206は、アナログ音声信号を、48KHz、16bitのサンプリングを行い、アナログ音声信号からデジタル音声データに変換する。
感度差補正部208は、メインマイク205aからの周波数スペクトルデータMain[0]〜[511]と、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]との感度差を補正する。このため、感度差補正部208は、感度補正積分器2081、感度補正検出部2082、補正量演算部2083、感度補正ゲインテーブル2084、感度差補正ゲイン部2085を含む。
感度補正積分器2081は、メインマイク205aからの周波数スペクトルデータMain[0]〜[511]、及び、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]に対し、時間軸方向のレベル変化に時定数を持たせる。
感度補正検出部2082は、感度補正積分器2081にて時定数を持たせた周波数スペクトルデータであるMain[0]〜[511]とSub[0]〜[511]のレベル差『Main[n]−Sub[n]』を、全周波数ポイントについて求める。ここで、差分は正負の符号が発生することに注意されたい。
補正量演算部2083は、感度補正検出部2082からの差分レベルが負の場合(Main[n]<Sub[n]の場合に等価)、Main[n]=Sub[n]となるようにするため、Sub[n]の補正量を算出する。
なお、感度補正検出部2082からの差分レベルが正の場合(Main[n]≧Sub[n]の場合に等価)、Sub[n]を補正する必要が無い。したがって、この場合、補正量演算部2083はSub[n]の補正量として0を出力する。
感度補正ゲインテーブル2084は、補正量演算部2083にて算出された各周波数スペクトルSub[0]〜[511]の具体的な補正量が格納している。
感度差補正ゲイン部2085は、実際に、感度補正ゲインテーブル2084を基に各周波数スペクトルSub[0]〜[511]のレベル補正を実行する。
ここで上記の時定数については、感度補正の追従を限りなく遅くする事を目的とするので数十秒単位とする。また、感度補正積分器2081は、後述する駆動検出部2095により駆動騒音の検出を表す駆動騒音検出信号を受けた場合、その動作を停止する。これは、光学レンズ201が駆動している不安定な期間における積分を排除する事を意図する。
以上が実施形態における感度差補正部208を構成する各処理部の説明である。次に、駆動音演算処理部209について説明する。
駆動音演算処理部209は、メインマイク205a、サブマイク205bからの周波数スペクトルデータであるMain[0]〜[511]、Sub[0]〜[511]から、駆動騒音の減算量NC_Gain[0]〜[511]を決定し、駆動騒音を検出した事を示す駆動騒音検出信号を出力する。このため、駆動音演算処理部209は、Mch−Sch演算部2091、駆動騒音除去ゲイン演算部2092、時間毎振幅変動検出部2093、時間毎位相変動検出部2094、駆動検出部2095、フレーム間振幅差検出部2096、駆動音減算量積分器2097を有する。
Mch−Sch演算部2091は、メインマイク205aからの周波数スペクトルデータMain[0]〜[511]から、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]を差し引いた値を、駆動騒音の減算量として出力する。
ただし、周波数スペクトルnポイント目において、Main[n]>Sub[n]の場合には、減算量[n]は0とする。つまり、Mch−Sch演算部2091は、周波数スペクトルnポイント目において、Main[n]−Sub[n]<0であることを条件に負の値を減算量[n]として出力する。
また、Main[n]に対してSub[n]が十分に大きく、Main[n]−Sub[n]が予め設定した閾値(負の値)を下回る場合、Mch−Sch演算部2091は、駆動騒音を検出したことを示す検出信号[n]を出力し、否の場合には検出信号を出力しない。なお、実際には、騒音検出を"1"、非検出を"0"として表しても良い。
また、駆動騒音検出の判定は、減算関係を逆にして、Sub[n]−Main[n]と閾値(正の値を持つ)との比較で行っても良い。この場合、Mch−Sch演算部2091は、この演算の結果が閾値を上回った場合に駆動騒音検出を示す信号を出力することになる。
駆動検出部2095は、Mch−Sch演算部2091からの1フレーム分の検出信号[0]〜[511]を受け、その中に、1以上の検出信号が存在した場合、該当のフレームにおいては駆動騒音を検出した事を表す駆動騒音検出信号を出力する。
Mch−Sch演算部2091及び駆動検出部2095による処理は、正の閾値をThと定義したとき、次式を満たす「i」(iは0から511のいずれか)が存在するか否かの判定を行い、その判定結果を駆動騒音検出を示す信号として出力していると、と言える。
Main[i]+Th<Sub[i]
時間毎振幅変動検出部2093は、メインマイク205aからの周波数スペクトルデータMain[0]〜[511]、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]に対し、時間方向のフレーム間での振幅変動量の検出を行う。具体的には、時間毎振幅変動検出部2093は、現在のフレームの周波数スペクトルのnポイント目の成分値と、前フレームの周波数スペクトルのnポイント目の成分値との差分値を求め、出力する。そして、nポイント目での変動量が予め設定された閾値を超えた場合、時間毎振幅変動検出部2093は、時間毎振幅変動量[n]を出力し、閾値以下の場合には0を出力する。
時間毎位相変動検出部2094は、後述の位相差判定部2111から取得する位相情報に基づき、メインマイク205aからの周波数スペクトルデータMain[0]〜[511]、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]の位相変動量の検出を行う。例えば周波数スペクトルnポイント目において前記変動量が予め定められた閾値を超えた場合は、時間毎位相変動検出部2094は、時間毎位相変動量[n]を出力する。また、変動量が閾値以下の場合、時間毎位相変動検出部2094は、時間毎位相変動量[n]を出力しない、又は、時間毎位相変動量[n]=0として出力する。
フレーム間振幅差検出部2096は、駆動検出部2095からの駆動騒音検出信号に基づき、サブマイク205bからの周波数スペクトルデータであるSub[0]〜[511]の時間方向のフレーム間での振幅差の検出を行う。例えば周波数スペクトルnポイント目において、駆動騒音検出信号があり、前フレームと現フレームとの振幅差が予め定められた閾値を超えた場合は、フレーム間振幅差検出部2096は、フレーム間振幅差量[n]を出力する。また、差が閾値以下の場合、フレーム間振幅差検出部2096は、フレーム間振幅差量[n]を出力しない、もしくは、フレーム間振幅差量[n]=0として出力する。
駆動騒音除去ゲイン演算部2092は、同一フレームにおいて、前述のMch−Sch演算部2095からの減算量[0]〜[511]、時間毎振幅変動検出部2093からの時間毎振幅変動量[0]〜[511]、時間毎位相変動検出部2094からの時間毎位相変動量[0]〜[511]、フレーム間振幅差検出部2096からのフレーム間振幅差量[0]〜[511]其々の結果に対し、予め定められた系数を乗算して、加算した駆動騒音除去量[0]〜[511]を算出し、出力する。
駆動音減算量積分器2097は、駆動騒音除去ゲイン演算部2092から出力された駆動騒音除去量[0]〜[511]に対し、時間方向の変動量に時定数を持たせ、駆動騒音除去ゲインNC_Gain[0]〜[511](正負の符号付き)を出力する。
以上が実施形態の駆動音演算処理部209の構成と動作である。次に、風雑音演算処理部210について説明する。
風雑音演算処理部210は、メインマイク205aからの周波数スペクトルデータMain[0]〜[511]、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]から風雑音を検出し、減算量を表すWC_Gain[0]〜[511]と、風雑音レベル信号を出力する。風雑音演算処理部210は、風検出部2101、風雑音ゲイン演算部2102、風雑音減算量積分器2103を有する。
風検出部2101は、メインマイク205aからの周波数スペクトルMain[0]〜[511]、及び、サブマイク205bからの周波数スペクトルSub[0]〜[511]のうちから、それぞれの低周波数域の所定数のポイントの相関に応じて風雑音レベルの検出を行う。例えば低域の10ポイントにおいて、次式に従い風雑音レベルを求め、出力する。なお、ここでの"n"は、実施形態の場合には0乃至9であるが、この数は適宜変更しても構わない。
風雑音レベル=Σ(Main[n]−Sub[n])/(Main[n]+Sub[n])
なお、上式のΣは、n=0乃至9の合算を示している。
また、風雑音ゲイン演算部2102は、図17に示すような特性線分を持つテーブルを有する。図示のように、1つの線分は、或る周波数以下ではゲインが負、その周波数以上ではゲインが0となる。そして、ゲインが負から0となる周波数の位置が互いに異なる複数の線分を含む。そして、風雑音ゲイン演算部2102は、風雑音レベルに従った1つの線分を用いて、風雑音ゲイン[0]〜[511]を決定し、出力する。なお、実施形態では、風雑音ゲイン[0]〜[511]をテーブルを用いて決定するものとしたが、風雑音レベルを引数とする関数を用いて、風雑音ゲイン[0]〜[511]を決定しても良い。
風雑音減算量積分器2103は、風雑音ゲイン演算部2102から出力された風雑音ゲイン[0]〜[511]に対し、時間方向の変動量に時定数を持たせ、風雑音ゲインWC_Gain[0]〜[511](正負の符号付き)を出力する。
以上が実施形態における風雑音演算処理部210の構成と動作である。次に、実施形態におけるステレオゲイン演算処理部211を説明する。
ステレオゲイン演算処理部211は、メインマイク205aからの周波数スペクトルデータMain[0]〜[511]、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]から、ステレオのLchのゲインGain_L[0]〜[511]と、RchのゲインGain_R[0]〜[511]を生成し、出力する。このために、ステレオゲイン演算処理部211は、位相差判定部2111、ステレオゲイン演算部2112、ステレオ抑制部2113、左ゲイン積分器2114,右ゲイン積分器2115を有する。
位相差判定部2111は、周波数スペクトルデータMain[0]〜[511]に対するSub[0]〜[511]の位相情報を算出する。
例えば、周波数スペクトルデータにおける各ポイントの位相ベクトルをV()として表した場合の、周波数ポイントnの位相情報[n]は次式に従って算出される。
位相情報[n]=|V(Main[n]) ×V(Sub[n])|/(|V(Main[n]) |・|V(Sub[n])|)
ここで、右辺の"|x|"はベクトルxの絶対値(スカラー)を表し、分母の"・"はスカラーどうしの積、分子の"×"は2つのベクトルの正弦である外積を表している。
位相差判定部2111は上式に従って算出した位相情報[0]〜[511]を出力する。
ステレオゲイン演算部2112は、位相差判定部2111からの位相情報[0]〜[511]からステレオゲイン[0]〜[511]の演算を行う。例えば周波数ポイントnにおいて、次式に従って各チャネルのゲインを得る。
Lch生成用のステレオゲイン=1+位相情報[n]×強調係数
Rch生成用のステレオゲイン=1−位相情報[n]×強調係数
ステレオゲイン演算部2112は、上式にて算出されたLch,Rchのステレオゲイン[n]を出力する。ここで、強調係数は周波数に応じて変更されるものであり、上限を1、下限を0とするものである。
ステレオ抑制部2113は、駆動音演算処理部209内のMch−Sch演算部2091からの駆動騒音を検出したことを示す検出信号を受けた場合に強調係数を0にする。また、ステレオ抑制部2113は、風雑音演算処理部210内の風検出部2101からの風雑音レベルに応じて強調係数を0にする。
左ゲイン積分器2114は、ステレオゲイン演算部2112から出力された、Lch生成用のステレオゲイン[0]〜[511]に対し、時間方向の変動量に所定の時定数を持たせ、それをステレオゲインGainL[0]〜[511](正負の符号付き)として出力する。
右ゲイン積分器2115は、ステレオゲイン演算部2112から出力された、Rch生成用のステレオゲイン[0]〜[511]に対し、時間方向の変動量に所定の時定数を持たせ、それをステレオゲインGainR[0]〜[511](正負の符号付き)として出力する。
以上が実施形態のステレオゲイン演算処理部211の構成と動作である。次に、実施形態におけるトータルゲイン演算部212を説明する。
トータルゲイン演算部212は、駆動音演算処理部209、風雑音演算処理部210、および、ステレオゲイン演算処理部211において決定したNC_Gain[0]〜[511]、WC_Gain[0]〜[511]、Gain_L[0]〜[511]、Gain_R[0]〜[511]を合算し、Total_Gain_L[0]〜[511]、Total_Gain_R[0]〜[511]を出力する。具体的には次式である。
Total_Gain_L[]=NC_Gain[] + WC_Gain[] + Gain_L[]
Total_Gain_R[]=NC_Gain[] + WC_Gain[] + Gain_R[]
次に、L/Rch生成部213を説明する。このL/Rch生成部213は、周波数スペクトルデータMAIN[0]〜[511]から、トータルゲイン演算部212で決定したTotal_Gain_L[0]〜[511]、Total_Gain_R[0]〜[511]を用いて、LchとRchの出力用の周波数スペクトルデータを作成する。L/Rch生成部213は、Mch/Sch選択部2131、L/Rchゲイン加算部2132を有する。
Mch/Sch選択部2131は、風検出部2101による風雑音レベルに応じて、周波数スペクトルデータMain[0]〜[511]に合成することになるSub[0]〜[511]の周波数ポイントの範囲を選択する。また、Mch/Sch選択部2131は、風雑音レベルに応じて、合成する境界位置を低周波数ポイントから高周波数ポイントへと変化させる。また、風を検出されない場合、Mch/Sch選択部2131は合成を行わず、周波数スペクトルデータMain[0]〜[511]をそのまま出力する。
L/Rchゲイン加算部2132は、Mch/Sch選択部2132から出力された周波数スペクトルデータMain[0]〜[511]に対して、トータルゲイン演算部212で決定したTotal_Gain_L[0]〜[511]、Total_Gain_R[0]〜[511]を用いて、左右チャネル(LchとRch)の周波数スペクトルデータを作成する。
以上が実施形態のL/Rch生成部213の構成と動作である。
iFFT部214は、L/Rch生成部213で生成された各チャネルの周波数スペクトルデータを逆変換(逆FFT変換)し、元の時系列の音声信号に戻す。音声処理部215は、イコライザ等の処理を実施する。ALC(オートレベルコントローラ)216は、時系列の音声信号の振幅を所定のレベルに調整する。
以上の構成を備え、音声入力部102は、音声信号に所定の処理を行い音声データを形成して、メモリ103へ送信し、格納することになる。
ここで、本実施形態の音声入力部102の一部を構成するメカ構成について、図3(a)、3(b)を用いて説明する。
図3(a)は、本実施形態の撮像装置の筐体の外観図である。撮影対象に撮像装置が向いた状態で、撮影者から見て右側の所定位置の参照符号"a"がメインマイク205aの入力穴(開口部)、左側の対向する位置の参照符号"b"がサブマイク205bの入力穴となる。図3(b)においての拡大図は、音声入力部102の一部であるメインマイク205aとサブマイク205bのメカ構成部である。図3(b)は、前記メカ構成を示す断面図である。マイク穴を構成する外装部102−1、メインマイク205aを保持するメインマイクブッシュ102−2a、サブマイク205bを保持するサブマイクブッシュ102−2b、其々のマイクブッシュを外装部へ押し付け保持をする押し付け部103により構成される。外装部102−1、押し付け部103についてはPC材等のモールド部材で構成されるが、アルミ、ステンレス等の金属部材であっても問題ない。また、メインマイクブッシュ102−2a、サブマイクブッシュ102−2bについては、エチレンプロピレンジエンゴム等のゴム材にて構成される。
ここで、外装部におけるマイク穴の径について説明する。サブマイク205bへのマイク穴の径(開口している面積)は、メインマイク205aへのマイク穴の径(同面積)に対して小さく、所定の倍率にて縮小された構成をとる。マイク穴形状については円状か楕円状が望ましいが、方形状でも構わない。また、其々の穴形状について、同形状でも別形状でも構わない。前記構成は、撮像装置内部でマイクに空気伝搬して伝わる駆動騒音についてサブマイク205bのマイク穴側から外部へ漏れにくくなる事を目的とする。
次に、外装部102−1とマイクブッシュで構成されるマイク前面の空間について説明する。外装部102−1とサブマイクブッシュ102−2bで構成されるサブマイク205bの前面の空間の容積は、外装部102−1とメインマイクブッシュ102−2aで構成されるメインマイク205aの前面の空間のそれより大きく、所定の倍率の容積を確保する構成をとる。この構成は、サブマイク205bの前面の空間において、空間内の気圧変化が大きくなり、駆動騒音が強調される事を目的とする。
前述の通り、マイク入力のメカ構成におけるサブマイク205b入力は、メインマイク205a入力に対して、駆動騒音の振幅が大きく強調される構成をとる。各マイクへ入力される駆動騒音の音声レベルの関係は、メインマイク205a<サブマイク205bとなる。一方、マイク穴の前面から空気伝搬により各マイクへ入力される、装置外からの音声(本来の集音目的である周辺環境音)のレベル関係は、メインマイク205a≧サブマイク205bの関係となることに注意されたい。
ここで、本実施形態の音声入力部102でのステレオゲイン演算処理部211の動作について、図7から図9を用いて説明する。
図7は、撮像装置100に内蔵されたマイクに対する外部からの音声の経路と、内蔵の光学レンズ201の駆動時の音声の経路の一例を示している。この時のマイクは、図2に示すメインマイク205aおよびサブマイク205bが該当する。図7のように周囲環境音の音源と撮像装置100との距離は、メインマイク205aとサブマイク205b間の距離に対して十分に大きい。よって、周囲環境音の音源からのメインマイク205aへの音声の伝播経路と、周囲環境音の音源とサブマイク205bへの音声の伝播経路は殆ど同一と考えて良い。しかし、撮像装置内蔵の光学レンズ201は、メインマイク205aとサブマイク205bに近接している。また、光学レンズ201の移動を行うためのモータからマイクへの距離が均等でなかったり、撮像装置内での音声の経路が異なる可能性もある。故に、光学レンズ駆動系からメインマイク205a、サブマイク205bそれぞれへの音声経路(距離)は大きく異なってしまう。つまり、周囲環境音と駆動騒音とでは、MchとSchの音声レベルの差分に大きな差が出る事となる。それ故、周囲環境音と光学レンズの駆動騒音は大きく差が出て、これらを容易に区別することができる。
一方、本来、周囲環境音は左右のどちら側から発生したかはMchとSchでは大きさでは判断することは難しい。そこで、周囲環境音は音声信号の位相を利用して判断することができる。詳細について説明する。
図8(a)〜(c)は、或る周波数スペクトルデータMain[n]とSub[n]の関係を示している。
ステレオゲイン演算処理部211は、メインマイク205aからの周波数スペクトルデーMain[0]〜[511]、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]から、ステレオのLchのゲインGain_L[0]〜[511]、RchのゲインGain_R[0]〜[511]を出力する。ステレオゲイン演算処理部211は以下の構成を備えている。
位相差判定部2111は、周波数スペクトルデータMain[0]〜[511]に対する周波数スペクトルデータSub[0]〜[511]の位相情報を算出する。
例えば周波数ポイントnの周囲環境音が、メインマイク205a側から発生した場合、V(Main[n])とV(Sub[n])の関係は図8(a)のような関係になる。本実施形態でのマイク配置においても、周波数スペクトルの大きさは変わってしまっても、位相は変わることはない。そこで、位相情報を、V(Main[n]) とV(Sub[n])の外積(|V(Main[n]) ×V(Sub[n]) |)を用いることで得る。
位相情報[n]=|V(Main[n]) ×V(Sub[n]) |/(|V(Main[n]) |・|V(Sub[n]) |)
位相差判定部2111は、上式にて算出された位相情報[n]を出力する。ここで求められる位相情報[n]は、すなわち、V(Main[n])とV(Sub[n])のsinθであり、周囲環境音がメインマイク205a側(撮像装置100を構えるユーザの右側)から発生した場合は、0<位相情報[n]≦1となる。
また、周波数ポイントnの周囲環境音が、サブマイク205b側から発生した場合、V(Main[n])とV(Sub[n])の関係は図8(b)のような周波数スペクトルの関係になる。本実施形態でのマイク配置においても、周波数スペクトルの大きさは変わってしまっても、位相は変わることはない。
そこで、位相情報をV(Main[n]) とV(Sub[n]) の外積(|V(Main[n]) ×V(Sub[n]) |)を用いることで得る。
位相情報[n]=|V(Main[n]) ×V(Sub[n]) |/(|V(Main[n]) |・|V(Sub[n]) |)
位相差判定部2111は、上式にて算出された位相情報[n]を出力する。ここで求められる位相情報[n]は、すなわち、V(Main[n])とV(Sub[n])のsinθであり、周囲環境音がサブマイク205b側からの場合、0>位相情報[n]≧−1となる。
また周波数ポイントnの周囲環境音がメインマイク205a、サブマイク205bと同じ距離、すなわち光学レンズ201の中心から発生した場合、V(Main[n])とV(Sub[n])の関係は図8(c)のような周波数スペクトルの関係になる。本実施形態でのマイク配置においても、周波数スペクトルの大きさは変わってしまっても、位相は変わることはない。
位相情報は、V(Main[n]) とV(Sub[n]) の外積(|V(Main[n]) ×V(Sub[n]) |)を用いることで得ることができる。
位相情報[n]=|V(Main[n]) ×V(Sub[n]) |/(|V(Main[n]) |・|V(Sub[n]) |)
位相差判定部2111は、上式にて算出された位相情報[n]を出力する。ここで求められる位相情報[n]は、V(Main[n])とV(Sub[n])のsinθであり、周囲環境音が、サブマイク205b側からは位相情報[n]≒0となる。
ステレオゲイン演算部2112は、上記のようにして決定した位相情報[0]〜[511]を用いて、ステレオゲイン[0]〜[511]の演算を行っている。例えば周波数ポイントnにおいて、ステレオゲイン演算部2112は次式に従って各チャネルのゲインを算出する。
Lch生成用のステレオゲイン=1+位相情報[n]×強調係数
Rch生成用のステレオゲイン=1−位相情報[n]×強調係数
そして、ステレオゲイン演算部2112は、上式にて算出された各チャネルのステレオゲイン[n]を出力する。
図9はステレオゲイン演算部2112で用いられる各周波数ポイントにおける強調係数を示した図である。
横軸を周波数ポイント、縦軸を強調係数とした時、もっとも強調したい周波数の強調係数を最大値の1.0として、位相差がでにくい低域と位相差が判断できない高域の強調係数は最小値の0とする。
例えばもっとも強調したい1kHz〜5kHzは強調係数を1.0とし、200Hz以下は0とする。
位相差が判断できない高域の強調係数は、メインマイク205aとサブマイク205bの距離で決定する。例えば、メインマイク205aとサブマイク205bの距離が15mmの時、音速を340m/sとすると、15mmの間に半波長が入る11.3kHz以上になると、正しい位相情報が取れず、左右が反転してしまう可能性がある。また、15mmの間に1/4波長の入る5.7kHz以上は正確性が低い。そこで図9に示すような周波数に応じた強調係数のかけ方を行う。
ここで、本実施形態の音声入力部102での駆動音演算処理部209、トータルゲイン演算部212、L/Rch生成部213の動作について、図5、図10から図13を用いて説明する。
図10は、メインマイク205aとサブマイク205bそれぞれの各周波数の振幅スペクトルデータの例を示している。
FFT部207により、各チャネルの音声信号は0Hzから48kHzまでにおいて1024ポイントの周波数スペクトルとして変換される。変換後の周波数スペクトルデータは、ナイキスト周波数である24kHzまでにおいては512ポイントの周波数スペクトルを持つものとする。
先に図3(a),(b)を用いて説明したように、実施形態の撮像装置100のマイク入力のメカ構成によれば、サブマイク205bは、メインマイク205aに対して、駆動騒音の振幅が大きく強調された信号を生成する。つまり振幅スペクトルにおいて、
周囲環境音レベル:メインマイク205a≧サブマイク205b
駆動騒音レベル:メインマイク205a<サブマイク205b
との関係となる。
図10に、メインマイク205aからの振幅スペクトルデータMain[]、サブマイク205bからの振幅スペクトルデータSub[]の一例を示す。また、同図における「Main−Sub」は、Mch−Sch演算部2091にて演算される、Main[]からSub[]を差し引いた減算量[0]〜[511]を示している。
例えば、SchにおけるNポイント目の周辺の振幅スペクトルを着目すると、Sch>Mchであり、つまり駆動騒音が支配的なポイントである事が言える。この時、Main−Subには、Nポイント目周辺にて予め定められたズーム検出閾値を超える(下回る)減算量が算出され、Nポイント目周辺は「駆動騒音」とされる振幅スペクトルと検出される。一方、MchにおけるN2ポイント目の振幅スペクトルを着目すると、Sch≦Mchである。つまり周囲環境音が支配的なポイントであることが言える。この時、Main−Subには、ズーム検出閾値を超える減算量は算出されないため、N2ポイント目周辺の振幅スペクトルは駆動騒音とは検出されることはない。上記演算を[0]〜[511]の振幅スペクトル全ての範囲において実行する。
図11は、サブマイク205bの周波数Nポイント目の時系列の振幅スペクトルを示す図である。
図示の「Sub ch」は、Nポイント目の振幅スペクトルデータが時系列にて変動する事を示す。
Sch|tn−t(n-1)|は、SchNポイント目の振幅スペクトルに対し、時間毎振幅変動検出部2093により演算される時間方向のフレーム間での振幅変動量を示し、時間毎変動量[n]として出力される。例えば、t1からt2にてSchの振幅スペクトルに着目すると、時間方向での変動量は大きくなっており、Sch|tn−t(n-1)|には、t1からt2において、変動量検出閾値を超える時間毎変動量が算出される。この演算を[0]〜[511]の振幅スペクトルの全てのポイントにおいて実行する。
図12(a),(b)は、メインマイク205aからの振幅スペクトル、サブマイク205bからの振幅スペクトルにおける、周波数Nポイント目の時系列の位相を示す図である。
同図(a)は複素数平面Im,Reにより、時間方向における「周囲環境音」の位相の変化を示しており、実線部はMchを、点線部はSchを表している。t0,t1,t2,t3,t4については、時間方向の推移を示す。
同図(b)は、「駆動騒音」の位相の変化を示している。
ここにおいて、周囲環境音については、MchとSchの位相は、t0からt4の時間の推移において一定である。駆動騒音については、MchとSchの位相はt0からt4の時間の推移において大きく変動している。其々の時間方向での位相の変動は時間毎位相変動検出部2094にて検出され、時間毎位相変動量[n]として出力される。時間毎位相変動検出部2094は、この演算を[0]〜[511]の振幅スペクトルの全て周波数ポイントについて実行する。
図13(a)、(b)は、Mch−Sch演算部2091の動作タイミングチャートの一例を表している。
同図(a)におけるMain[N]、Sub[N]、Main[N]−Sub[N]は、それぞれ周波数Nポイント目のMchの振幅スペクトルデータ、Schの振幅スペクトルデータ、Mch振幅スペクトルからSch振幅スペクトルを差し引いた減算量[N]を示している。Main[N]−Sub[N]は、Mch−Sch演算部2091にて演算を行われた結果を出力している。
ここで、同図(a)のt1からt2の期間を着目すると、Sub[N]の振幅スペクトルは、Main[N]に対して大きく上回っており、Main[N]−Sub[N]の演算結果はズーム閾値を上回る結果となっており、駆動騒音として検出され、減算量[N]が出力される。
図13(b)におけるMain[N2]、Sub[N2]、Main[N2]−Sub[N2]は、それぞれ周波数N2ポイント目のMchの振幅スペクトル、Schの振幅スペクトル、Mch振幅スペクトルからSch振幅スペクトルを差し引いた減算量[n]を示す。ここで、同図(b)のt1からt2の期間を着目すると、Main[N2]とSub[N2]が同レベルで変動しており、Main[N2]−Sub[N2]の演算結果もズーム閾値を上回る結果はない。周波数N2ポイント目において駆動騒音は検出されない結果となる。Mch−Sch演算部2091は上記タイミングチャートで示した演算を[0]〜[511]の振幅スペクトル全てにおいて実行する。
図5はL/Rch生成部213のタイミングチャートの一例を表す。ズーム駆動動作は、制御部109からの制御を受け、t1からt2のタイミングにおいて、光学レンズ201が駆動動作となる。Mchスペクトルは、図5において抽出した特定の周波数Nポイント目のスペクトルを表す。Lch,Rchについては、トータルゲイン演算部212で決定したTotal_Gain_L、Total_Gain_RをMchに加算することで生成される。同図のタイミングチャートに示されるように、例えば、Mchに対し、Total_Gain_Lを下げ、Total_Gain_Rを上げることで、Rchが強調することができ、1chの入力で2chのステレオ信号を生成する事が可能である。
また、t1からt2における光学レンズの駆動動作中においても、Total_Gain_L、Total_Gain_Rを下げることで、Lch,Rchに対し、駆動騒音を除去することが可能である。
ここで、ここで、本実施形態の音声入力部102での感度差補正部208の動作について、図14を用いて説明する。
図14は、感度差補正部208の動作タイミングチャートの一例を示している。同図において、ズーム検出は駆動検出部2095の駆動騒音の検出結果を示す。入力スペクトルNPointは、周波数Nポイント目のMchの振幅スペクトル、Schの振幅スペクトルを示す。実線部はMchを、点線部はSchを示わしている。
入力スペクトル(積分)NPointは、周波数Nポイント目の感度補正積分器2081のMch、Schの積分結果を示す。感度調整出力スペクトルNPointは、周波数Nポイント目の感度差補正ゲイン部2085によりレベル補正されたMchの振幅スペクトル、Schの振幅スペクトルを示す。実線部はMchを、点線部はSchを示す。
図14において、t0はREC開始のタイミングであり、t0からt1にかけては数10秒程度の充分長い時間を表わしている。タイミングt2からt3にかけては、ズーム検出がONされており、駆動検出部2095により駆動騒音が発生していることを表す。
入力スペクトルNPointは、MchとSchはREC開始時t0においてレベル差が生じている。それに対し、入力スペクトル(積分)NPointは、感度補正積分器2081により、積分されt0からt1にかけてゆっくりとレベル差に追従していく。感度調整出力スペクトルNPointも入力スペクトル(積分)NPointの積分結果に対し、t0からt1にかけて充分に時間を掛けて感度差補正ゲイン部2085にてゲイン補正をしていく。これは、感度差補正部208は、メインマイク205aとサブマイク205bの感度補正を目的としているので、数十秒程度の充分な時間を掛けてのレベル補正で良く、過渡的な応答性を必要としない。
また、タイミングt2からt3にかけてのズーム検出ON期間においては、感度補正積分器2081が停止状態となる。よって、駆動騒音が発生することにより、Mchの振幅スペクトル、Schの振幅スペクトルに大きなレベル差が発生するが、感度補正積分器2081が停止状態にあるので、レベル差に追従することなく、値は保持される。前述したが、感度差補正部208は、メインマイク205aとサブマイク205bの感度補正を目的としているので、駆動騒音による過渡的なレベル差分に対する応答は必要としない。感度差補正部208は上記タイミングチャートで示した補正を[0]〜[511]の振幅スペクトル全てにおいて実行する。
ここで、本実施形態の音声入力部102での風雑音演算処理部210の動作について、図15から図17を用いて説明する。
図15は、音声入力部102の一部であるサブマイク205bに対し、風防材102−3を構成したメカ構成を示す断面図である。
マイク穴を構成する外装部102−1は、メインマイク205aを保持するメインマイクブッシュ102−2a、サブマイク205bを保持するサブマイクブッシュ102−2b、其々のマイクブッシュを外装部へ押し付け保持をする押し付け部103により構成される。外装部102−1、押し付け部103についてはPC材等のモールド部材で構成されるが、アルミ、ステンレス等の金属部材であっても問題ない。また、メインマイクブッシュ102−2a、サブマイクブッシュ102−2bについては、エチレンプロピレンジエンゴム等のゴム材にて構成される。
ここで、外装部102−1におけるマイク穴の穴径について説明する。サブマイク205bへのマイク穴の径は、メインマイク205aへのマイク穴の径に対して小さい。実施形態では、サブマイク205bのマイク孔の径(直径)は、メインマイク205aのマイク穴のそれの1/3の寸法としている。マイク穴形状については円状、楕円状が望ましいが、方形状でも構わない。また、其々の穴形状について、同形状でも別形状でも構わない。
次に、外装部102−1とマイクブッシュ102−2a、102−2bで構成されるマイク前面の空間と、クッション材の配置について説明する。外装部102−1とサブマイクブッシュ102−2bで構成されるサブマイク205bの前面の空間の容積は、外装部102−1とメインマイクブッシュ102−2aで構成されるメインマイク205a前面の空間のそれより大きく、3倍確保する構成をとる。
外装部102−1とサブマイクブッシュ102−2bで構成されるサブマイク205bの前面の空間においては、風防材102−3として、風防クッション材やシールマイクを配置する。いずれも風の周波数に対応した0〜4kHz程度の低周波帯の信号成分をフィルタする部材として構成される。風防材102−3により低周波帯が支配的である風雑音のサブマイク205bへの空気伝搬の影響を大幅に軽減する事が可能である。
図16は、風雑音入力時のメインマイク205aからの周波数スペクトルデータMain[0]〜[511]と、サブマイク205bからの周波数スペクトルデータSub[0]〜[511]を示している。風雑音入力時、風雑音成分は点線部の低周波帯域において存在している。風検出部2101は、メインマイク205aからの周波数スペクトルMain[0]〜[511]、サブマイク205bからの周波数スペクトルSub[0]〜[511]のうちから、低域周波数帯の例えば10ポイントの相関をみて風雑音レベルの検出を行っている。風検出部2101は、例えば低域の周波数ポイントnにおいて、次式に従って風雑音レベルを算出し、出力する。
風雑音レベル=Σ(Main[n]−Sub[n])/(Main[n]+Sub[n])
なお、上式は、低周波成分の10ポイントとしているで、nは0乃至9の範囲内である。また、実施形態では、低域周波数帯を10ポイントとしたが、この数は一例である。撮像装置の設計に応じて適宜設定することが望まれる。
図17は、風雑音ゲイン演算部2102にて演算される、風検出部2101からの風雑音レベルに対する風雑音ゲイン[0]〜[511]の周波数関係を示す。風検出部2101からの風雑音レベルが大きい程、風雑音ゲインはマイナス側へシフトし、点線の示すカットオフ周波数を高周波帯域へシフトする。前記カットオフの周波数により風雑音ゲイン[0]〜[511]は決定される。
次に、本実施形態の音声入力部102でのMch/Sch選択部213の動作について、図18(a),(b)を用いて説明する。
図18(a)は、Mch/Sch選択部2131にて合成される、メインマイク205aからの周波数スペクトルデータMain[0]〜[511](図示のMain ch)とサブマイク205bからの周波数スペクトルデータSub[0]〜[511](図示のSub ch)との、風雑音レベルに応じた合成比率と周波数の関係を示している。
ここで図3(a)は、図3(b)記載のメインマイク205aとサブマイク205bのメカ構成に対応した実施形態を示す。ここでMch/Sch選択部2131は、図18(a)に示すように、風雑音レベルに基づき、Main chを1.0から0.5の比率で、また、Sub chを0から0.5の比率で合成する。
風雑音レベルが大きい程、Main chにおいては1.0から0.5へ合成比率を下げ、Sub chにおいては0から0.5へ合成比率を上げ、Main chとSub chを合成するクロスオーバーの周波数(合成の上限周波数)を上げていく。そして、Mch/Sch選択部2131は、風雑音レベルに依存する上限周波数以下ではMain chとSub chとを図示の比率で合成し、上限周波数を上回る周波数ではMain chを選択して出力する。風雑音レベルが0の場合は、Schの合成比率は0となる。ここで、図3(b)で記載の通り、サブマイク205bへのマイク穴の径は、メインマイク205aへのマイク穴の径に対して小さく、1/3に縮小された構成をとる。よって、サブマイク205bへの風雑音の影響度はメインマイク205aよりも弱い。よって、風検出部2101からの風雑音レベルに応じて、Mchに対しSchを合成する事により、風雑音の軽減に効果を果たす。
次に図18(b)は、図15に示すようにサブマイク205bに対し、風防材102−3を構成したメカ構成に対応した実施形態を示す。ここでMch/Sch選択部2131は風雑音レベルから、Mchを1.0から0の比率で、Schを0から1.0の比率で合成する。つまり、風雑音レベルが大きい程、Mchにおいては1.0から0へ合成比率を下げ、Schにおいては0から1.0へ合成比率を上げ、MchとSchを合成するクロスオーバーの周波数を上げていく。風雑音レベルが0の場合は、Schの合成比率は0となる。ここで図3(a)や図15で記載の通り、サブマイク205bへのマイク穴の径は、メインマイク205aへのマイク穴の径に対して小さく、1/3に縮小された構成をとる。かつ、外装部102−1とサブマイクブッシュ102−2bで構成されるサブマイク205b前面の空間には、風防材102−3を設けている。よって、サブマイク205bへの風雑音の影響度はメインマイク205aに対し、更に小さくできる。よって、風検出部2101からの風雑音レベルに応じて、MchからSchに切り替えていく事で、風雑音の軽減に効果を果たす。
ここで、本実施形態の音声入力部102でのステレオ抑制部2113の具体的動作について図19、図20を用いて説明する。
図19は、ステレオ抑制部2113について、駆動騒音検出時と風雑音検出時に応じて、ステレオ効果の強調に用いる強調係数を変更するタイミングチャートを示している。図19において、Main[N]は、周波数Nポイント目のMchの振幅スペクトルデータを示す。また、駆動騒音検出信号は、駆動検出部2095により駆動騒音を検出した事を示す検出信号を示す。また、風雑音検出信号は、風検出部2101により風雑音を検出した事を示す風雑音レベル(予め設定された閾値以上の風雑音レベル)を示す。GainL[N]、GainR[N]は、ステレオゲイン演算処理部2112により決定された周波数Nポイント目のMchの振幅スペクトルに加算するステレオのLch及び、Rchのゲインを示す。
ステレオ抑制部2113は、Mch−Sch演算部2091からの駆動騒音を検出したことを示す検出信号を受けて、強調係数を0にする。また、風検出部2101からの風雑音を検出した事を示す風雑音レベルを受けて、強調係数を周波数に応じて0にする。
ここで、タイミングt1からt2の期間を着目すると、Main[N]の振幅スペクトルは大きく変動しており、Mch−Sch演算部2091からの検出信号は、駆動騒音有りとして検出を示している。この期間、GainL[N]、GainR[N]は0に固定されている。つまりステレオ抑制部2113が強調係数を0にした事を表している。また、タイミングt3からt4の期間を着目すると、Main[N]の振幅スペクトルは大きく変動しており、風検出部2101からの風雑音検出信号は検出を示している。この期間、GainL[N]、GainR[N]は0に固定されている。つまりステレオ抑制部2113が強調係数を0にした事を表している。
図20は、風検出部2101からの風雑音レベル検出時において、Mch/Sch選択部2131にてメインマイク205aからの周波数スペクトルMain[0]〜[511]とサブマイク205bからの周波数スペクトルSub[0]〜[511]が合成される比率と、周波数に対し、ステレオ抑制部2113にて強調係数を0にする周波数の関係を示す図である。ここでMch/Sch選択部2131は風雑音レベルから、風雑音レベルが大きい程、Mchにおいては1.0から0.5へ合成比率を下げ、Schにおいては0から0.5へ合成比率を上げ、MchとSchを合成するクロスオーバーの周波数を上げていく。風雑音レベルの場合、前記クロスオーバーの周波数は500Hzである。これに対しステレオ抑制部2113は、前記クロスオーバーの周波数よりも高い周波数750Hzまで強調係数を0に固定する。ステレオ抑制部2113は、風検出部2101からの風雑音レベルが大きい程、強調係数を0に固定する周波数を上げていく。GainL、GainRのステレオゲインによる強調により、風雑音も強調されることを防ぐ。
ここで、本実施形態の音声入力部102での駆動音減算量積分器2097、風雑音減算量積分器2103、右ゲイン積分器2114、左ゲイン積分器2115の動作について図21を用いて説明する。
図21は、周波数Nポイント目のMchの振幅スペクトルデータについての、それぞれ決定される駆動騒音除去ゲインNC_GAIN[N]、風雑音減算量WC_GAIN[N]、Lch生成用ステレオゲインL_GAIN[N]、Rch生成用ステレオゲインR_GAIN[N]のそれぞれに対する時定数を示す。これらは、駆動音減算量積分器2097、風雑音減算量積分器2103、左ゲイン積分器2114,右ゲイン積分器2115により決定される。駆動騒音減算量積分器の時定数は、右ゲイン積分器2115、左ゲイン積分器2114の時定数に対して遅く、風雑音減算量積分器の時定数は右ゲイン積分器2115、左ゲイン積分器2114の時定数に対して遅い。駆動騒音と風雑音は、それぞれ駆動騒音成分であり、時系列でのばらつきも大きく、時定数を遅くしてそれぞれ駆動騒音減算と風雑音減算の追従を遅くすることで前記ばらつきを抑える。また、ステレオゲインについては、時定数を早くすることで、発音する被写体の移動に対する追従を早くする。
本実施形態においては、2系統の音声が入力される場合について説明したが、それ以上のチャンネル数であっても適用することができる。
また、本実施形態においては、撮像装置について説明したが、本実施形態の音声入力部102の音声処理は、外部の音声を記録、または入力するような装置つまり、音声記録装置であればどのような装置であっても適用することができる。例えば、ICレコーダ、携帯電話等に適用しても良い。
また、実施形態では、図6に示す構成をハードウェアにより実現する例を説明したが、例えば、同図のマイクやAD変換部等を除く処理部の多くを、プロセッサが実行するプロシージャやサブルーチン等のプログラムで実現しても構わない。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。