(57)【特許請求の範囲】
【請求項１】
１つのフレーム画像をそれぞれ格納可能な３以上のフレームバッファからなる画像記憶手段と、
フレーム画像を上記画像記憶手段へ周期的に書き込む画像書込手段と、
上記画像記憶手段から上記フレーム画像を周期的に読み出す画像読出手段と、
最後に書き込みが終了した上記フレームバッファを示す前回書込先情報、上記前回書込先情報に係る書き込みの直前に書き込みが終了した上記フレームバッファを示す前々回書込先情報、及び、読出中の上記フレームバッファを示す読出先情報を保持するアクセス先記憶手段と、
上記前回書込先情報に基づいて、次の読出先となる上記フレームバッファを選択し、上記読出先情報を更新する読出先選択手段と、
上記前回書込先情報及び上記読出先情報に基づいて、次の書込先となる上記フレームバッファを選択する書込先選択手段とを備え、
上記画像書込手段は、上記書込先選択手段が選択した上記フレームバッファに対し、上記フレーム画像を書き込み、
上記画像読出手段は、上記読出先選択手段が選択した上記フレームバッファから上記フレーム画像を読み出し、
上記書込先選択手段は、上記前回書込先情報及び上記読出先情報を比較し、
両者が一致する場合には、上記前回書込先情報及び上記前々回書込先情報が示す上記フレームバッファを除く上記フレームバッファを選択し、
両者が一致しない場合には、上記前回書込先情報及び上記読出先情報が示す上記フレームバッファを除く上記フレームバッファを選択することを特徴とする画像処理装置。
【請求項２】
上記画像読出手段は、上記画像書込手段による上記フレーム画像の書き込みと同期することなく上記フレーム画像を読み出し、
上記書込先選択手段は、上記前回書込先情報の更新後、予め定められた遅延時間が経過した後に、上記読出先情報を読み出し、
上記遅延時間は、上記読出先選択手段による上記前回書込先情報の読み出し及び上記読出先情報の更新に要する時間よりも長いことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
１つのフレーム画像をそれぞれ格納可能な３以上のフレームバッファからなる画像記憶手段と、
フレーム画像を上記画像記憶手段へ周期的に書き込む画像書込手段と、
上記画像記憶手段から上記フレーム画像を周期的に読み出す画像読出手段と、
最後に書き込みが終了した上記フレームバッファを示す前回書込先情報、及び、読出中の上記フレームバッファを示す読出先情報を保持するアクセス先記憶手段と、
上記前回書込先情報に基づいて、次の読出先となる上記フレームバッファを選択し、上記読出先情報を更新する読出先選択手段と、
上記前回書込先情報及び上記読出先情報に基づいて、次の書込先となる上記フレームバッファを選択する書込先選択手段とを備え、
上記画像書込手段は、上記書込先選択手段が選択した上記フレームバッファに対し、上記フレーム画像を書き込み、
上記画像読出手段は、上記読出先選択手段が選択した上記フレームバッファから上記フレーム画像を読み出し、
さらに、上記画像読出手段は、上記画像書込手段による上記フレーム画像の書き込みと同期することなく上記フレーム画像を読み出し、
上記書込先選択手段は、上記前回書込先情報の更新後、予め定められた遅延時間が経過した後に、上記読出先情報を読み出し、
上記遅延時間は、上記読出先選択手段による上記前回書込先情報の読み出し及び上記読出先情報の更新に要する時間よりも長いことを特徴とする画像処理装置。
【請求項４】
各フレーム画像間にブランク期間を介在させてフレーム画像を周期的に取得するとともに、上記フレーム画像の出力タイミングを示す同期信号を生成する画像取得手段を備え、
上記画像書込手段は、上記画像取得手段が取得した上記フレーム画像を上記画像記憶手段へ周期的に書き込み、
上記書込先選択手段が、上記フレーム画像の出力終了タイミングに同期して、上記前回書込先情報を更新するとともに、上記フレーム画像の出力開始タイミングに同期して、上記読出先情報を読み出すことを特徴とする請求項２又は３に記載の画像処理装置。
【請求項５】
上記フレーム画像の書込周期及び読出周期は、互いに一方が他方の整数倍ではないことを特徴とする請求項２又は３に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に係り、更に詳しくは、３以上のフレームバッファからなる画像記憶手段を備えた画像処理装置の改良に関する。
【背景技術】
【０００２】
一般に、動画像は多数のフレーム画像によって構成され、動画像を入出力する画像処理装置には、フレーム画像を一時格納するためのフレームバッファが設けられている。このような画像処理装置において、例えば、入力周期が出力周期よりも短い場合や、互いに同期していない場合に、読み出し中のフレーム画像が更新され、乱れた画像が読み出されるティアリングという現象が発生することが知られている。
【０００３】
例えば、撮影した動画像をほぼリアルタイムで表示（プレビュー表示）させる場合、撮影画像がフレームバッファへ繰り返し書き込まれるとともに、表示画像がフレームバッファから繰り返し読み出される。このとき、同一のフレームバッファに対し、書き込み及び読み出しが行われると、一部のみが更新された状態の乱れたフレーム画像が読み出されることがあった。
【０００４】
このようなティアリングの発生を回避する方法が従来から提案されている（例えば、特許文献１）。特許文献１に記載された画像処理装置は、３つのフレームバッファを備えるとともに、コマ落ちが発生した場合にフレームバッファへの書き込みを一時中止することによってティアリングの発生を防止している。しかしながら、この方法では、コマ落ちの発生時にフレームバッファへの書き込みを中止することによって、ティアリングを防止しているため、コマ落ちからの復帰直後に最新のフレーム画像を読み出すことができないという問題があった。
【０００５】
例えば、撮影した動画像のプレビュー表示時に、コマ落ちを意図的に発生させ、一時的に静止画像を表示させたいような場合がある。この様な撮像装置において、コマ落ちからの復帰直後に、最新のフレーム画像を表示することができず、古いフレーム画像が一旦表示された後に最新のフレーム画像が表示され、不連続で不自然な表示が行われるという問題があった。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２９８７６０
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、上記事情に鑑みてなされたものであり、ティアリングの発生を防止するとともに、コマ落ちからの復帰時に最新のフレーム画像を表示することができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の本発明による画像処理装置は、１つのフレーム画像をそれぞれ格納可能な３以上のフレームバッファからなる画像記憶手段と、フレーム画像を上記画像記憶手段へ周期的に書き込む画像書込手段と、上記画像記憶手段から上記フレーム画像を周期的に読み出す画像読出手段と、最後に書き込みが終了した上記フレームバッファを示す前回書込先情報、上記前回書込先情報に係る書き込みの直前に書き込みが終了した上記フレームバッファを示す前々回書込先情報、及び、読出中の上記フレームバッファを示す読出先情報を保持するアクセス先記憶手段と、上記前回書込先情報に基づいて、次の読出先となる上記フレームバッファを選択し、上記読出先情報を更新する読出先選択手段と、上記前回書込先情報及び上記読出先情報に基づいて、次の書込先となる上記フレームバッファを選択する書込先選択手段とを備え、上記画像書込手段が、上記書込先選択手段が選択した上記フレームバッファに対し、上記フレーム画像を書き込み、上記画像読出手段が、上記読出先選択手段が選択した上記フレームバッファから上記フレーム画像を読み出し、上記書込先選択手段は、上記前回書込先情報及び上記読出先情報を比較し、両者が一致する場合には、上記前回書込先情報及び上記前々回書込先情報が示す上記フレームバッファを除く上記フレームバッファを選択し、両者が一致しない場合には、上記前回書込先情報及び上記読出先情報が示す上記フレームバッファを除く上記フレームバッファを選択するように構成される。
【０００９】
この様な構成により、前回書込先情報に基づいて、次の読出先となるフレームバッファを選択し、前回書込先情報及び読出先情報に基づいて、次の書込先となるフレームバッファを選択することができる。このため、画像書込手段の書込先及び画像読出手段の読出先が一致し、ティアリングが発生するのを防止することができる。特に、コマ落ちの発生時に書き込みを停止することなく、ティアリングの発生を防止することにより、コマ落ちからの復帰時に古いフレーム画像が読み出されるのを防止することができる。
【００１１】
また、この様な構成により、コマ落ちが発生している期間を除き、常に最新のフレーム画像を読み出すことができる。
【００１３】
また、この様な構成により、３つのフレームバッファを用いて、ティアリングの発生を防止するとともに、コマ落ちからの復帰時に最新のフレーム画像を読み出すことができる。つまり、コストを増大させることなく実現することができる。
【００１４】
第２の本発明による画像処理装置は、上記構成に加えて、上記画像読出手段が、上記画像書込手段による上記フレーム画像の書き込みと同期することなく上記フレーム画像を読み出し、上記書込先選択手段が、上記前回書込先情報の更新後、予め定められた遅延時間が経過した後に、上記読出先情報を読み出し、上記遅延時間が、上記読出先選択手段による上記前回書込先情報の読み出し及び上記読出先情報の更新に要する時間よりも長くなるように構成される。
第３の本発明による画像処理装置は、１つのフレーム画像をそれぞれ格納可能な３以上のフレームバッファからなる画像記憶手段と、フレーム画像を上記画像記憶手段へ周期的に書き込む画像書込手段と、上記画像記憶手段から上記フレーム画像を周期的に読み出す画像読出手段と、最後に書き込みが終了した上記フレームバッファを示す前回書込先情報、及び、読出中の上記フレームバッファを示す読出先情報を保持するアクセス先記憶手段と、上記前回書込先情報に基づいて、次の読出先となる上記フレームバッファを選択し、上記読出先情報を更新する読出先選択手段と、上記前回書込先情報及び上記読出先情報に基づいて、次の書込先となる上記フレームバッファを選択する書込先選択手段とを備え、上記画像書込手段は、上記書込先選択手段が選択した上記フレームバッファに対し、上記フレーム画像を書き込み、上記画像読出手段は、上記読出先選択手段が選択した上記フレームバッファから上記フレーム画像を読み出し、さらに、上記画像読出手段は、上記画像書込手段による上記フレーム画像の書き込みと同期することなく上記フレーム画像を読み出し、上記書込先選択手段は、上記前回書込先情報の更新後、予め定められた遅延時間が経過した後に、上記読出先情報を読み出し、上記遅延時間は、上記読出先選択手段による上記前回書込先情報の読み出し及び上記読出先情報の更新に要する時間よりも長くなるように構成される。
【００１５】
この様な構成により、画像書込手段によるフレーム画像の書き込みと、画像読出手段によるフレーム画像の読み出しが、互いに非同期であり、書込先選択手段及び読出先選択手段が互いに非同期で動作している場合であっても、ティアリングの発生を防止し、また、コマ落ちからの復帰時に古いフレーム画像が読み出されるのを防止することができる。
【００１６】
第４の本発明による画像処理装置は、上記構成に加えて、各フレーム画像間にブランク期間を介在させてフレーム画像を周期的に取得するとともに、上記フレーム画像の出力タイミングを示す同期信号を生成する画像取得手段を備え、上記画像書込手段は、上記画像取得手段が取得した上記フレーム画像を上記画像記憶手段へ周期的に書き込み、上記書込先選択手段が、上記フレーム画像の出力終了タイミングに同期して、上記前回書込先情報を更新するとともに、上記フレーム画像の出力開始タイミングに同期して、上記読出先情報を読み出すように構成される。この様な構成により、画像取得手段のブランク期間を利用して、画像処理装置を簡単な構成で実現することができ、コストを抑制することができる。
【００１７】
第５の本発明による画像処理装置は、上記構成に加えて、上記フレーム画像の書込周期及び読出周期は、互いに一方が他方の整数倍ではないように構成される。本発明は、この様な画像処理装置に特に好適である。
【発明の効果】
【００２０】
本発明による画像処理装置では、読出先選択手段が、前回書込先情報に基づいて、次の読出先となるフレームバッファを選択するとともに、書込先選択手段が、前回書込先情報及び読出先情報に基づいて、次の書込先となるフレームバッファを選択する。このため、画像書込手段の書込先及び画像読出手段の読出先が一致し、ティアリングが発生するのを防止することができる。特に、コマ落ちの発生時に書き込みを停止することなく、ティアリングの発生を防止し、コマ落ちからの復帰時に古いフレーム画像が読み出されるのを防止することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明による画像処理装置の一構成例を示したブロック図であり、画像処理装置の一例として、撮像装置１００が示されている。
【図２】図１の画像処理部１２の詳細構成の一例を示したブロック図である。
【図３】フレーム画像の読出処理の一例を示したフローチャートである。
【図４】フレーム画像の書込処理の一例を示したフローチャートである。
【図５】書込先選択部２１１による書込先の決定方法の一例を示した図表である。
【図６】コマ落ちが発生した場合における画像処理部１２の動作状態の一例を時系列に示した説明図である。
【図７】従来の画像処理装置においてコマ落ちが発生した場合の動作状態を時系列に示した説明図である。
【図８】フレーム画像の書込先及び読出先の変更が同時に行われた場合の様子を示した説明図である。
【図９】読出先の変更が、フレーム画像の終了タイミングと同時であった場合の動作が示した説明図である。
【図１０】読出先の変更が、フレーム画像の開始タイミングと同時であった場合の動作が示されている。
【図１１】図２の画像処理部１２の動作の一例を示したタイミングチャートである。
【図１２】図１１に続くタイミングチャートである。
【図１３】撮影周期が表示周期よりも短い場合における動作状態を時系列に示した説明図である。
【発明を実施するための形態】
【００２２】
図１は、本発明による画像処理装置の一構成例を示したブロック図であり、画像処理装置の一例として、撮像装置１００が示されている。この撮像装置１００は、表示制御部１０、カメラ部１１、画像処理部１２及び表示部１３からなり、動画像を撮影しながら、撮影した動画像をリアルタイムで表示することができる。
【００２３】
カメラ部１１は、撮影により動画像データを取得する画像取得手段、例えば、ＣＣＤ（Charge Coupled Device）を備えた撮像装置であり、予め定められた撮影周期ごとにカメラ同期信号Ｃsync及び撮影画像データＣdataを出力する。撮影画像データＣdataは、カメラ部１１によって撮影された動画像データであり、時系列に生成された多数のフレーム画像からなる。カメラ同期信号Ｃsyncは、各フレーム画像の出力開始及び出力終了のタイミングを示す信号である。
【００２４】
表示部１３は、動画像を表示するための表示手段、例えば、ＬＣＤ（Liquid Crystal Display）パネルを備えた表示装置であり、予め定められた表示周期ごとに表示同期信号Ｄsyncを出力し、表示画像データＤdataが入力される。表示画像データＤdataは、表示部１３によって表示される動画像データであり、時系列に表示される多数のフレーム画像からなる。表示同期信号Ｄsyncは、各フレーム画像の入力開始のタイミングを示す信号である。
【００２５】
画像処理部１２は、撮影画像データＣdataに基づいて、表示画像データＤdataを生成する画像処理手段である。すなわち、カメラ同期信号Ｃsyncに同期したフレーム画像をカメラ部１１から取得するとともに、表示同期信号Ｄsyncに同期したフレーム画像を生成し、表示部１３へ出力している。画像処理部１２は、フレーム画像を一時保持するための複数のフレームバッファを備え、カメラ部１１から入力されたフレーム画像をフレームバッファのいずれかに書き込み、この書き込みが終了するごとに書込終了割込ＣＥを出力する。また、表示切替要求ＤＲに基づいて、フレーム画像を読み出すフレームバッファを切り替える。
【００２６】
表示制御部１０は、画像処理部１２からの書込終了割込ＣＥに基づいて、表示切替要求ＤＲを生成する表示制御手段、例えば、マイクロプロセッサである。表示切替要求ＤＲは、画像処理部１２から表示部１３へ出力されるフレーム画像の更新を要求する信号であり、表示切替要求ＤＲが入力されない場合、画像処理部１２は、同一のフレーム画像を出力し続ける。つまり、この撮像装置１００では、必然的に発生するコマ落ちに加えて、意図的なコマ落ちをソフトウエア制御により発生させることもできる。
【００２７】
ここで、コマ落ちとは、動画像データから一部のフレーム画像が欠落する現象であり、通常、撮影周期が表示周期よりも短い場合に生じる。ここでは、画像処理部１２に入力されたが、画像処理部１２から出力されないフレーム画像が存在する現象を意味するものとする。この画像処理部１２では、撮影周期が表示周期以上であっても、表示切替要求ＤＲを用いてコマ落ちを意図的に発生させることができる。
【００２８】
図２は、図１の画像処理部１２の詳細構成の一例を示したブロック図である。この画像処理部１２は、入力制御部２１、画像記憶部２２、出力制御部２３及びアクセス先記憶部２４からなる。
【００２９】
＜画像記憶部２２＞
画像記憶部２２は、３つのフレームバッファ２２ａ〜２２ｃからなり、各フレームバッファ２２ａ〜２２ｃは、それぞれ１つのフレーム画像を格納することができる。フレーム画像は、入力制御部２１によって書き込まれ、出力制御部２３によって読み出される。
【００３０】
＜アクセス先記憶部２４＞
アクセス先記憶部２４は、入力制御部２１及び出力制御部２３のアクセス先として選択されたフレームバッファ２２ａ〜２２ｃを保持する記憶手段であり、書込先情報ＷＳ、前回書込先情報ＷＳ１、前々回書込先情報ＷＳ２及び読出先情報ＲＳを記憶している。書込先情報ＷＳは、フレーム画像を書込中のフレームバッファ（以下、書込先）を示すデータである。前回書込先情報ＷＳ１は、更新前の書込先情報ＷＳ、すなわち、フレーム画像の書き込みが最後に終了したフレームバッファ（以下、前回書込先）を示すデータである。前々回書込先情報ＷＳ２は、更新前の前回書込先情報ＷＳ１、つまり、書込先情報ＷＳに係る書き込みの直前に書き込みが終了したフレームバッファ（以下、前々回書込先）を示すデータである。読出先情報ＲＳは、フレーム画像を読出中のフレームバッファ（以下、読出先）を示している。
【００３１】
＜入力制御部２１＞
入力制御部２１は、カメラ部１１から入力されたフレーム画像を画像記憶部２２へ書き込む画像記憶部２２の入力制御手段であり、書込先選択部２１１及び画像書込部２１２からなる。この入力制御部２１は、フレーム画像の書込先として、フレームバッファ２２ａ〜２２ｃのいずれか１つを選択し、選択されたフレームバッファに対し、当該フレーム画像を書き込む。
【００３２】
書込先選択部２１１は、フレーム画像ごとに書込先となるフレームバッファを選択する。フレームバッファの選択は、カメラ同期信号Ｃsyncに基づいて開始され、選択するフレームバッファは、前回書込先情報ＷＳ１、前々回書込先情報ＷＳ２及び読出先情報ＲＳに基づいて決定される。具体的には、前回書込先及び読出先を比較し、両者が一致しなければ、前回書込先及び読出先を除くフレームバッファを新たな書込先として選択する。一方、両者が一致すれば、前回書込先及び前々回書込先を除くフレームバッファを新たな書込先として選択する。
【００３３】
また、書込先選択部２１１は、上記選択結果に基づいて、書込先情報ＷＳを更新するとともに、前回書込先情報ＷＳ１及び前々回書込先情報ＷＳ２も更新する。さらに、書込先選択部２１１は、１つのフレーム画像の書き込みが終了するごとに、書込終了割込ＣEを生成し、表示制御部１０へ出力する。
【００３４】
画像書込部２１２は、書込先として選択されたフレームバッファに対し、カメラ部１１から入力されたフレーム画像を書き込む。なお、フレーム画像の書き込みの開始及び終了は、カメラ同期信号Ｃsyncに基づいて判別される。
【００３５】
＜出力制御部２３＞
出力制御部２３は、画像記憶部２２からフレーム画像を読み出し、表示部１３へ出力する画像記憶部２２の出力制御手段であり、読出先選択部２３１及び画像読出部２３２からなる。この出力制御部２３は、フレーム画像の読出先として、フレームバッファ２２ａ〜２２ｃのいずれか１つを選択し、この選択結果に基づいて、読出先情報ＲＳを更新する。また、選択されたフレームバッファからフレーム画像を読み出す。
【００３６】
読出先選択部２３１は、表示切替要求ＤＲに基づいて、読出先となるフレームバッファを選択する。読出先の選択は、表示同期信号Ｄsyncに同期して開始され、選択するフレームバッファは、前回書込先情報ＷＳ１に基づいて決定される。具体的には、前回書込先が新たな読出先として選択される。また、読出先情報ＲＳを更新し、上記選択結果を読出先情報ＲＳに反映させる。
【００３７】
画像読出部２３２は、読出先として選択されたフレームバッファからフレーム画像を読み出し、表示部１３へ出力する。なお、フレーム画像の読み出しの開始及び終了は、表示同期信号Ｄsyncに基づいて判別される。
【００３８】
図３のステップＳ１０１〜Ｓ１０４は、フレーム画像の読出処理の一例を示したフローチャートである。このフローチャートは、フレーム画像の入力開始を示す表示同期信号Ｄsyncが入力された場合に開始され、出力制御部２３によって実行される。
【００３９】
まず、表示制御部１０からの表示切替要求ＤＲの有無が判別される（ステップＳ１０１）。表示切替要求ＤＲを受け付けていない場合、ステップＳ１０４へ進む。一方、表示切替要求ＤＲを受け付けている場合、読出先選択部２３１が、前回書込先を新たな読込先として選択する（ステップＳ１０２）。つまり、前回書込先情報ＷＳ１が示すフレームバッファが、新たな読出先として選択される。次に、ステップＳ１０２の選択結果に基づいて、読出先選択部２３１が読出先情報ＲＳを更新する（ステップＳ１０３）。つまり、前回書込先情報ＷＳ１の内容が読出先情報ＲＳにコピーされる。
【００４０】
次に、画像読出部２３２が、読出先のフレームバッファからフレーム画像を読み出し、読み出されたフレーム画像が表示部１３へ出力される（ステップＳ１０４）。つまり、ステップＳ１０１において表示切替要求ＤＲを受け付けていなかった場合には、前回の表示周期の場合と同じフレーム画像が読み出される一方、表示切替要求ＤＲを受け付けていた場合には、新たなフレーム画像が読み出される。１つのフレーム画像の読み出しが終了すれば、図３の読出処理は終了する。
【００４１】
図４のステップＳ２０１〜Ｓ２０８は、フレーム画像の書込処理の一例を示したフローチャートである。このフローチャートは、フレーム画像の出力開始を示すカメラ同期信号Ｃsyncが入力された場合に開始され、入力制御部２１によって実行される。
【００４２】
まず、書込先選択部２１１が、前回書込先及び読出先を比較する（ステップＳ２０１）。つまり、読出先のフレームバッファが、最後に書き込みを終了したフレームバッファと一致するか否かが判別される。
【００４３】
両者が一致しない場合、書込先選択部２１１は、前回書込先及び読出先以外のフレームバッファを新たな書込先として選択する（ステップＳ２０２，Ｓ２０３）。ティアリングの発生を回避するには、読出中のフレームバッファを新たな書込先として選択することはできない。また、前回書込先は次の読出先となるため、ティアリングの発生を回避するには、前回書込先を新たな書込先として選択することもできない。このため、本実施の形態では、両者が一致しない場合、前回書込先及び読出先を除くフレームバッファを新たな書込先として選択している。
【００４４】
一方、ステップＳ２０２において両者が一致する場合、書込先選択部２１１は、前回書込先及び前々回書込先以外のフレームバッファを新たな書込先として選択する（ステップＳ２０４）。読出先が前回書込先と一致する場合、ティアリングの発生を回避するためには、読出先（前回書込先）以外を次の書込先として選択すればよい。ここでは、書き込みの終了が最も古いフレームバッファを新たな書込先として選択するために、前回書込先及び前々回書込先以外のフレームバッファを新たな書込先として選択している。この場合、全てのフレームバッファ２２ａ〜２２ｃを順に書込先として選択することができる。
【００４５】
次に、ステップＳ２０３，Ｓ２０４の選択結果に基づいて、書込先選択部２１１が書込先情報ＷＳを更新する（ステップＳ２０５）。つまり、新たに選択された書込先が書込先情報ＷＳに書き込まれる。その後、書込先として選択されたフレームバッファに対し、カメラ部１１から入力されたフレーム画像が、画像書込部２１２によって書き込まれる（ステップＳ２０６）。
【００４６】
フレーム画像の書き込みが終了した後、書込先選択部２１１は、前回書込先情報ＷＳ１及び前々回書込先情報ＷＳ２を更新する（ステップＳ２０７）。つまり、前回書込先情報ＷＳ１の内容が前々回書込先情報ＷＳ２にコピーされ、書込先情報ＷＳの内容が前回書込先情報ＷＳ１にコピーされる。なお、後述する通り、書込先情報ＷＳの更新と、前回書込先情報ＷＳ１との間には時間差を設けることが望ましい。
【００４７】
前回書込先情報ＷＳ１及び前々回書込先情報ＷＳ２の更新が終了すれば、書込先選択部２１１により書込終了割込ＣＥが生成され、表示制御部１０へ出力され（ステップＳ２０８）、図４の書込処理は終了する。
【００４８】
図５は、書込先選択部２１１による書込先の決定方法の一例を示した図表であり、前回書込先、前々回書込先、読出先と、これらに基づいて選択される次の書込先との組み合わせが示されている。なお、図表中のＡ〜Ｃは、フレームバッファ２２ａ〜２２ｃをそれぞれ意味し、「＊」は、任意のフレームバッファ２２ａ〜２２ｃを意味する。この図表によれば、前回書込先及び表示先を除く書きフレームバッファが書込先となり、しかも、可能な限り、全てのフレームバッファ２２ａ〜２２ｃが順に書込先となるように、次の書込先が選択されていることがわかる。
【００４９】
図６の（ａ）〜（ｆ）は、コマ落ちが発生した場合における画像処理部１２の動作状態の一例を時系列に示した説明図であり、フレームバッファ２２ａ〜２２ｃ、書込先情報ＷＳ、前回書込先情報ＷＳ１及び読出先情報ＲＳの内容が示されている。なお、図中のＦＰ１〜ＦＰ６は、カメラ部１１から順に入力されるフレーム画像である。
【００５０】
図中の（ａ）は、コマ落ちが発生していない通常時における様子が示されている。フレームバッファ２２ａ，２２ｂには、フレーム画像ＦＰ１，ＦＰ２がそれぞれ格納され、読出先情報ＲＳがフレームバッファ２２ａを指し、書込先情報ＷＳがフレームバッファ２２ｂを指している。
【００５１】
図中の（ｂ）〜（ｄ）は、コマ落ちの発生中における様子が示されている。読出先はフレームバッファ２２ａに固定され、フレーム画像ＦＰ１が繰り返し読み出されている。一方、書込先情報ＷＳは、読出先以外のフレームバッファ２２ｂ，２２ｃを交互に指しており、新たなフレーム画像ＦＰ３〜ＦＰ５は、書き込み可能な全てのフレームバッファ２２ｂ，２２ｃに対し順に書き込まれている。そして、（ｄ）の状態では、フレームバッファ２２ａが読出先、フレームバッファ２２ｃが前回書込先、フレームバッファ２２ｃが書込先となる。
【００５２】
図中の（ｅ）及び（ｆ）は、コマ落ちからの復帰後における様子が示されている。（ｄ）の状態において、読出先情報ＲＳが更新されると、コマ落ちから復帰する。このとき、まず前回書込先情報ＷＳ１が読出先情報ＲＳにコピーされ、読出先となったフレームバッファ２２ｂからフレーム画像ＦＰ４の読み出しが開始される。図中の（ｅ）は、この時の状態が示されている。
【００５３】
その後、次の書込先が選択され、書込先情報ＷＳ及び前回書込先情報ＷＳ１が更新される。その結果、フレームバッファ２２ａが書込先、フレームバッファ２２ｃが前回書込先になり、フレームバッファ２２ａへフレーム画像ＦＰ６の書き込みが開始される。この状態で、読出先情報ＲＳが更新されると、フレームバッファ２２ｃが読出先となり、フレーム画像ＦＰ５が読み出される。図中の（ｆ）には、この時の状態が示されている。
【００５４】
図６では、コマ落ちの期間中、フレーム画像ＦＰ１が繰り返し読み出されているが、コマ落ちから復帰した直後には、フレーム画像ＦＰ４が読み出されている。つまり、フレーム画像から復帰した直後には、そのときの最新のフレーム画像が読み出されている。その結果、フレーム画像ＦＰ１、ＦＰ４、ＦＰ５、ＦＰ６の順で読み出しが行われる。
【００５５】
図７は、従来の画像処理装置においてコマ落ちが発生した場合の動作状態を時系列に示した説明図であり、条件及び記載方法は図６の場合と同一である。従来の画像処理装置では、コマ落ちの発生中にフレーム画像の書き込みを中止することによって、ティアリングの発生を防止している。このため、フレーム画像ＦＰ４，ＦＰ５は、フレームバッファへ書き込まれることはない（図中の（ｃ）及び（ｄ）参照）。その結果、コマ落ちから復帰した直後には、フレームバッファ２２ｃに保持されているフレーム画像ＦＰ３が読み出される（図中の（ｅ）参照）。その後、フレームバッファ２２ａへのフレーム画像ＦＰ６の書き込みが終了するまで、読出先はフレームバッファ２２ｃに固定される（図中の（ｆ）参照）。その結果、フレーム画像ＦＰ１，ＦＰ３、ＦＰ６の順で読み出しが行われる。
【００５６】
図７では、コマ落ちの期間中、フレーム画像ＦＰ１が繰り返し読み出される点は図６と同様であるが、コマ落ちから復帰した直後に、古いフレーム画像ＦＰ３が読み出されてしまう。つまり、フレーム画像から復帰した直後に、そのときの最新のフレーム画像ＦＰ４ではなく、フレーム画像ＰＦ３が読み出され、次にフレーム画像ＦＰ６が読み出されることになる。つまり、コマ落ちからの復帰後に、古いフレーム画像が表示されるとともに、不連続の動画像データが表示される。
【００５７】
これに対し、図６に示した本発明に係る画像処理部１２では、フレーム画像ＦＰ１、ＦＰ４、ＦＰ５、ＦＰ６が順に読み出されており、コマ落ちからの復帰後には、最新のフレーム画像が表示されるとともに、連続する動画像データを表示することができる。
【００５８】
図８は、フレーム画像の書込先及び読出先の変更が同時に行われた場合の様子を示した説明図である。図２の撮像装置１００において、カメラ部１１及び表示部１３が非同期で動作している場合、画像処理部１２において、フレーム画像の書込先及び読出先が同時に変更されることにより、ティアリングが発生する可能性がある。図８は、この様なティアリング発生時の様子を説明するための図である。
【００５９】
この図では、撮影画像データＣdata、前回書込先情報ＷＳ１及び読出先情報ＲＳが時系列に示されている。撮影画像データＣdataを構成する各フレーム画像に付された記号ａ〜ｃは、当該フレーム画像の書込先となるフレームバッファ２２ａ〜２２ｃを意味している。同様にして、前回書込先情報ＷＳ１及び読出先情報ＲＳに付された記号ａ〜ｃも、これらが指しているフレームバッファ２２ａ〜２２ｃを意味している。
【００６０】
フレーム画像の書込先が「ｂ」、前回書込先が「ａ」、読出先が「ｃ」という状態において、フレーム画像の書込先及び読出先が同時に変更されると、変更後の書込先が「ａ」又は「ｃ」のいずれかになり、変更後の読出先が「ａ」又は「ｂ」のいずれかになる。このため、変更後の書込先及び読出先がともに「ａ」となり、ティアリングが発生する場合がある。
【００６１】
前回書込先情報ＷＳ１は、フレーム画像の書込終了タイミングに同期して「ａ」から「ｂ」へ更新される。このとき、読出先選択部２３１は、前回書込先情報ＷＳ１を参照して次の読込先を決定するため、変化前の「ａ」を読み出せば、読出先情報ＲＳは「ａ」に更新される。一方、次の書込先を決定する書込先選択部２１１が、前回書込先情報ＷＳ１から変化後の「ｂ」を読み出し、読出先情報ＲＳから変化前の「ｃ」を読み出せば、前回書込先情報ＷＳ１も「ａ」に更新される。その結果、書込先及び読出先が、ともに同一のフレームバッファ２２ａとなり、ティアリングが発生することになる。
【００６２】
図９及び図１０は、撮影画像データＣdataのブランク期間を利用し、ティアリングの発生を防止する方法についての説明図である。ここでは、撮影画像データＣdataが、１つのフレーム画像が出力されるデータ期間ＴＤと、フレーム画像が出力されない一定のブランク期間ＴＢとを交互に繰り返しているものとする。このブランク期間ＴＢを利用し、前回書込先の更新タイミングと、書込先の決定タイミングの間にタイムラグを設けることによって、書込先及び読出先の変更タイミングに起因して発生するティアリングを防止している。
【００６３】
ここでは、前回書込先情報ＷＳ１が、フレーム画像の書込終了タイミングに同期して更新される一方、書込先は、フレーム画像の書込開始タイミングに同期して決定される。つまり、前回書込先の更新と書込先の更新との間に、ブランク期間ＴＢに相当する遅延時間を設けている。この遅延時間の存在により、更新タイミングによって、書込先及び読出先が同一のフレームバッファになることによって、ティアリングが発生するのを防止している。
【００６４】
図９は、読出先の変更が、フレーム画像の終了タイミングと同時であった場合の動作が示されている。フレーム画像の書込先が「ｂ」、前回書込先が「ａ」、読出先が「ｃ」という状態において、フレーム画像の終了タイミングに同期して、前回書込先及び読出先が同時に変更されると、変更後の読出先が「ａ」又は「ｂ」のいずれかになる。しかしながら、書込先の更新は、次のフレーム画像の開始タイミングに同期して行われている。このため、更新後の書込先は常に「ｂ」となる。つまり、次の書込先を選択するまでに、読出先は「ａ」又は「ｂ」のいずれかに確定し、「ｃ」ではないことが保証される。従って、図８の場合のように新たな書込先も「ａ」となり、ティアリングが発生することはない。
【００６５】
図１０は、読出先の変更が、フレーム画像の開始タイミングと同時であった場合の動作が示されている。フレーム画像の書込先が「ｂ」、前回書込先が「ａ」、読出先が「ｃ」という状態において、フレーム画像の終了タイミングに同期して、前回書込先が更新され、フレーム画像の次の開始タイミングに同期して、読出先が更新された場合、更新後の前回書込先及び読出先は、いずれも「ｂ」となる。一方、更新後の書込先は「ａ」又は「ｃ」となる。
【００６６】
つまり、前回書込先の更新から書込先及び読出先の更新までの間に、ブランク期間ＴＢに相当するタイムラグがあるため、読出先の変更する時点では前回書込先が一意に決まり「ｂ」となっている。一方、書込先は、変化前後の読出先である「ｃ」又は「ｂ」のいずれかに基づいて選択されるため、更新後の書込先は「ａ」又は「ｃ」となる。従って、更新後の読出先及び書込先が同一のフレームバッファになることはなく、ティアリングが発生することはない。
【００６７】
要するに、フレーム画像の終了タイミングに同期して、前回書込先を更新し、フレーム画像の次の開始タイミングに同期して、書込先を更新すれば、ブランク期間ＴＢを遅延時間として利用することができ、読出先の更新タイミングに起因して、ティアリングが発生するのを防止することができる。
【００６８】
図１１及び図１２は、図２の画像処理部１２の動作の一例を示したタイミングチャートであり、図１２は図１１の続きである。カメラ同期信号Ｃsyncは、撮影画像データＣdataの出力期間に高レベルとなり、非出力期間に低レベルとなる。撮影画像データＣdataの各フレーム画像に示されたａ〜ｃは、当該フレーム画像の書込先となるフレームバッファ２２ａ〜２２ｃ、つまり、書込先情報ＷＳを意味する。
【００６９】
書込先情報ＷＳは、撮影画像データＣdataの書込開始タイミング、つまり、カメラ同期信号Ｃsyncの立ち上がりに同期して更新される。前回書込先情報ＷＳ１は、撮影画像データＣdataの書込終了タイミング、つまり、カメラ同期信号Ｃsyncの立ち下がりに同期して更新される。同様にして、前々回書込先情報ＷＳ２も、撮影画像データＣdataの書込終了タイミングに同期して更新されるが、図中では省略している。読出先情報ＲＳは、表示切替要求ＤＲの立ち下がりに同期して更新される。
【００７０】
表示同期信号Ｄsyncは、表示画像データＤdataの入力期間に高レベルとなり、非入力期間に低レベルとなるが、図中では非入力期間を省略し、立ち下がりタイミングのみが示されている。書込終了割込ＣＥは、撮影画像データＣdataの書き込み終了時に生成され、表示制御部１０へ出力される。表示切替要求ＤＲは、書込終了割込ＣＥに基づいて表示制御部１０によって生成される。つまり、表示切替要求ＤＲは、書込終了割込ＣＥの出力後に立ち上がる。その後、表示同期信号Ｄsyncに同期して立ち下がり、この立ち下がりに同期して、読出先情報ＲＳが更新される。
【００７１】
時刻ｔ１において、カメラ同期信号Ｃsyncが立ち下がると、画像書込部２１２による書込先「ａ」へのフレーム画像の書き込みが終了する。このとき、書込先選択部２１１によって、前回書込先情報ＷＳ１が「ｃ」から「ａ」へ更新され、前々回書込先情報ＷＳ２が「ｃ」に更新されるとともに、書込終了割込ＣＥが生成される。
【００７２】
時刻ｔ２において、カメラ同期信号Ｃsyncが立ち上がると、書込先選択部２１１により、新たな書込先の選択が行われる。ここでは、前回書込先が「ａ」、読出先が「ｃ」であるため、新たな書込先として「ｂ」が選択され、書込先情報ＷＳが更新される。
【００７３】
時刻ｔ３において、表示切替要求ＤＲが、表示同期信号Ｄsyncに同期して立ち下がり、新たな読出先が選択される。ここでは、前回書込先が「ａ」であるため、新たな読出先として「ａ」が選択され、読出先情報ＲＳが更新される。なお、表示切替要求ＤＲは、書込終了割込ＣＥを受け付けた表示制御部１０によって立ち上げられる。
【００７４】
時刻ｔ４において、表示切替要求ＤＲが立ち下がり、新たな読出先として「ａ」が選択される。このとき、前々回書込先の「ｃ」は読出先として指定されておらず、コマ落ちが発生している。
【００７５】
時刻ｔ５及びｔ６において、書込終了割込ＣＥがそれぞれ生成されている。しかしながら、時刻ｔ５の書込終了割込ＣＥに対応する表示切替要求ＤＲが表示制御部１０によって生成される前に、時刻ｔ６の書込終了割込ＣＥが出力されているため、時刻ｔ５の書込終了割込は時刻ｔ６に破棄され、当該書込終了割込に対応する読出先の切り替えは行われない。
【００７６】
時刻ｔ７において、カメラ同期信号Ｃsync及び表示切替要求ＤＲが、同時に立ち下がり、前回書込先が「ｂ」から「ｃ」へ更新されるのと同時に、読出先が「ｂ」又は「ｃ」に更新される。
【００７７】
時刻ｔ８において、カメラ同期信号Ｃsyncの立ち上がりに同期して、新たな書込先が選択される。時刻ｔ８は、時刻ｔ７からブランク期間ＴＢの経過後であるため、時刻ｔ８の時点では、読出先情報ＲＳの「ｂ」又は「ｃ」への更新が確定し、前回書込先の「ｃ」への更新も確定している。従って、新たな書込先として「ａ」が選択される。このとき、２フレーム分のコマ落ちが発生しているが、読出先として最新のフレーム画像を保持しているフレームバッファ２２ａが指定されている。また、時刻ｔ７において、カメラ同期信号Ｃsync及び表示切替要求ＤＲが、同時に立ち下がっているが、ティアリングが発生することもない。
【００７８】
なお、ティアリングの発生を防止するためには、ブランク期間ＴＢの長さが問題となり得る。具体的には、読出先選択部２３１が、前回書込先情報ＷＳ１を読み出して新たな読出先を選択し、読出先情報ＲＳが更新されるまでに要する時間に比べて、ブランク期間ＴＢはより長い期間である必要がある。書込先選択部２１１及び読出先選択部２３１の動作クロックの非同期性を吸収するため、相互の情報を参照する際、同期化のために数クロックずつの遅延が発生するが、書込先選択部２１１及び読出先選択部２３１の動作クロックのそれぞれ数クロックずつの和に比べ、カメラ部１１のブランク期間ＴＢをより長くしておけば問題はない。
【００７９】
時刻ｔ９において、カメラ同期信号Ｃsyncが立ち下がると、前回書込先情報ＷＳ１及び前々回書込先情報ＷＳ２が更新される。この更新により、書込先が「ｂ」、前回書込先が「ｂ」、前々回書込先が「ｃ」、読出先が「ａ」という状態になる。
【００８０】
時刻ｔ１０において、カメラ同期信号Ｃsyncが立ち上がるのと同時に、表示切替要求ＤＲが立ち下がっているため、読出先が「ｂ」に更新されるのと同時に、書込先が「ｃ」又は「ａ」に更新される。
【００８１】
時刻ｔ１０は、時刻ｔ９からブランク期間ＴＢの経過後であるため、時刻ｔ１０の時点では、前回書込先情報ＷＳ１の「ｂ」への変更と、前々回書込先情報ＷＳ２の「ｃ」への更新は確定している。一方、書込先選択部２１１が、新たな書込先を選択するために読出先情報ＲＳを参照した際、更新前の「ａ」又は更新後の「ｂ」のいずれかが読み出される。従って、新たな書込先として「ｃ」又は「ａ」が選択され、書込先情報ＷＳが更新される。このとき、新たな読出先が「ｂ」であることから、新たな書込先が「ｃ」又は「ａ」のいずれであってもティアリングは発生しない。
【００８２】
図１３は、撮影周期が表示周期よりも短い場合における動作状態を時系列に示した説明図である。図示した撮影周期は表示周期よりも長いため、コマ落ちが必然的に発生する。しかしながら、本発明の実施の形態による画像処理装置では、コマ落ちが生じた場合であっても、コマ落ちからの復帰直後に、最新のフレーム画像を表示させることができる。
【００８３】
また、図示した撮影周期及び表示周期は、互いに一方が他方の整数倍となる関係になく、カメラ同期信号Ｃsyncの変化タイミングが、表示同期信号Ｄsyncの立ち下がりタイミングと同時になる場合が偶然生じ得る。しかしながら、本発明の実施の形態による画像処理装置では、このようなカメラ部１１及び表示部１３が互いに非同期で動作する場合であっても、ティアリングが発生することがない。
【００８４】
なお、上記実施の形態では、書込先選択部２１１が、前回書込先及び読出先が一致する場合に、前回書込先情報ＷＳ１及び前々回書込先情報ＷＳ２が示すフレームバッファ以外のフレームバッファを選択する例について説明した。このような構成は、コマ落ちの発生中に書き込み可能な全てのフレームバッファに対し、フレーム画像を順次に書き込むことができる点で、本発明の望ましい実施の形態であるが、本発明は、この様な構成のみには限定されない。
【００８５】
すなわち、前回書込先及び読出先が一致する場合に、前回書込先情報ＷＳ１が示すフレームバッファ以外のフレームバッファのいずれかを書込先として選択するものであってもよい。この様な構成であっても、ティアリングの発生を防止しつつ、コマ落ちからの復帰直後に古いフレーム画像が読み出されるのを防止することができる。つまり、前回書込先及び読出先の比較を行うことなく、常に、前回書込先及び読出先を除くフレームバッファを次の書込先として選択するように構成することもできる。
【００８６】
また、上記実施の形態では、画像記憶部２２が３つのフレームバッファ２２ａ〜２２ｃからなる例について説明した。このような構成は、コストを抑制することができる点で、本発明の望ましい実施の形態であるが、本発明は、上記構成のみには限定されない。すなわち、画像記憶部２２が４以上のフレームバッファ２２ａ〜２２ｃからなる場合であっても、ティアリングの発生を防止しつつ、コマ落ちからの復帰直後に古いフレーム画像が読み出されるのを防止することができる。この場合、書込先情報ＷＳ、前回書込先情報ＷＳ１、前々回書込先情報ＷＳ２及び読出先情報ＲＳとして、上述したそれぞれの選択条件を満たすフレームバッファのいずれかを選択すればよい。
【符号の説明】
【００８７】
ＣＥ    書込終了割込
Ｃdata  撮影画像データ
Ｃsync  カメラ同期信号
Ｄdata  表示画像データ
Ｄsync  表示同期信号
ＤＲ    表示切替要求
ＦＰ１〜ＦＰ７  フレーム画像
ＲＳ  読出先情報
ＴＢ  ブランク期間
ＴＤ  データ期間
ＷＳ  書込先情報
ＷＳ１  前回書込先情報
ＷＳ２  前々回書込先情報
ｔ１〜ｔ１０  時刻
１０  表示制御部
１１  カメラ部
１２  画像処理部
１３  表示部
２１  入力制御部
２１１  書込先選択部
２１２  画像書込部
２２  画像記憶部
２２ａ〜２２ｃ  フレームバッファ
２３  出力制御部
２３１  読出先選択部
２３２  画像読出部
２４  アクセス先記憶部
１００  撮像装置
【図１】
0005511577.tif 000002
【図２】
0005511577.tif 000003
【図３】
0005511577.tif 000004
【図４】
0005511577.tif 000005
【図５】
0005511577.tif 000006
【図６】
0005511577.tif 000007
【図７】
0005511577.tif 000008
【図８】
0005511577.tif 000009
【図９】
0005511577.tif 000010
【図１０】
0005511577.tif 000011
【図１１】
0005511577.tif 000012
【図１２】
0005511577.tif 000013
【図１３】
0005511577.tif 000014