(57)【要約】【課題】板面を斜めから撮影する画像における歪みが生じることがないように補正する。【解決手段】カメラにより撮影された撮影画像に対してカメラによる光学的歪曲を補正し、その光学的補正画像における板面の４辺を検出する。板面の縦横軸が画面ｘｙ軸に対して傾き、また縦横軸の軸線回りに板面が回転し、光学的補正画像における４辺の形態に至ったとして、それぞれの傾き角度及び回転角度を求め、各角度に基づいて補正することにより４辺を矩形にする。カメラが初期設置状態からずれて、撮影画像中の板面が相対的に画面に対して傾きかつ回転するようになっても、適切に補正することができる。【選択図】図２
2014033342.tif 000002
【特許請求の範囲】
【請求項１】
矩形の板面に対して所定の位置から斜めに撮影するように設けられたカメラと、前記カメラによる撮影画像の歪曲を画像処理して補正する画像補正装置とを有する撮像装置であって、
前記板面の縦横にそれぞれ沿う縦軸及び横軸を設定し、
前記画像補正装置は、
前記撮影画像の前記カメラによる光学的歪曲を補正した光学的補正画像を作る光学的補正画像形成部と、
前記板面が撮影画面上で矩形になるように前記板面の前記縦軸及び前記横軸の各傾き角度及び各軸回りの回転角度を算出する軸角度算出部と、
前記各傾き角度及び前記各回転角度に基づいて前記板面の前記撮影画面上での画像を矩形になるように補正する矩形板面形成部とを有することを特徴とする画像補正装置。
【請求項２】
前記軸角度算出部は、
前記光学的補正画像における前記板面の４辺を検出する４辺検出部と、
前記４辺からなる四角形に基づいて、前記撮影画面に沿う方向の前記縦軸の傾き角度と前記縦軸回りの回転角度とを算出する縦軸角度算出部と、
前記４辺からなる四角形に基づいて、前記撮影画面に直交する方向の前記横軸の傾き角度と前記横軸回りの回転角度とを算出する横軸角度算出部とを有することを特徴とする請求項１に記載の画像補正装置。
【請求項３】
前記縦軸角度算出部は、前記４辺における前記横軸方向の２辺を前記撮影画面上で平行にする場合の前記傾き角度と前記回転角度とを算出し、
前記横軸角度算出部は、前記４辺における前記縦軸方向の２辺を前記撮影画面上で平行にする場合の前記傾き角度と前記回転角度とを算出することを特徴とする請求項２に記載の画像補正装置。
【請求項４】
前記板面のそりを検出し、かつ前記そりを表す曲線を求めるそり処理部を有し、
前記矩形板面形成部は、前記そりを表す曲線に基づいて前記撮影画面上で前記４辺が矩形になる前記板面の画像を作ることを特徴とする請求項１乃至請求項３のいずれかに記載の画像補正装置。
【請求項５】
前記そり処理部は、
前記光学的補正画像において前記４辺の少なくとも１辺が湾曲していることを検出するとともに、前記湾曲している辺の両端を直線で結ぶ仮の直線状辺を求めて、前記仮の直線状辺を含む４辺に基づいて前記板面の前記横軸及び前記縦軸の各軸回りの回転を補正し、前記板面の該回転を補正された画像における前記仮の直線状辺に対する前記湾曲している辺上の複数の点の空間座標を求めて、各前記空間座標を結ぶ線に基づいて前記そりを表す曲線を求めることを特徴とする請求項４に記載の画像補正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラで撮影された画像を補正する画像補正装置に関するものである。
【背景技術】
【０００２】
従来、例えばデジタルカメラで紙面や電子黒板やホワイトボード等の板面に書かれているものや投影されているものを撮影し、その画像データをパーソナルコンピュータ等で処理してモニタに映し出したいという要望がある。その場合には、筆記者の邪魔にならないように、例えば電子黒板の場合にはカメラを板面の上部に設置し、板面を斜め上方から撮影することがある。そのような場合には、カメラの傾きに応じて画像が台形状に歪むため、画像を補正するようにしたものがある（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−４３５４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記特許文献１では、重力検出手段を設けて重力方向を検出し、重力方向から撮像時のカメラの向きを判定し、カメラの向きに応じて画像を補正している。これにより、板面に垂直な面上でのカメラの傾きに対して補正することができる。
【０００５】
しかしながら、カメラの光軸とホワイトボード等の板面との相対的な傾きは、板面に垂直な方向だけに限られず、板面に沿う方向（板面の高さ方向及び幅方向）の傾きも含まれる。そのため、出荷時に板面に対するカメラの光軸位置を設計値に合わせて調整かつ固定しておくが、カメラの完全な固定は難しいため、長期の使用中にずれが生じてしまう。そのようなずれに対しては、板面の垂直方向に対する傾きは上記重力方向の検出から補正可能であるが、他の方向（板面の高さ方向及び幅方向）に対しては上記構成では補正できない、という問題があった。
【０００６】
本発明は、このような従来技術の問題点を解消するべく案出されたものであり、その主な目的は、板面を斜めから撮影するカメラの設置状態による画像の歪みが生じることがないように構成された画像補正装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の画像補正装置は、矩形の板面に対して所定の位置から斜めに板面を撮影するように設けられたカメラと、前記カメラによる撮影画像の歪曲を画像処理して補正する画像補正装置とを有する撮像装置であって、前記板面の縦横にそれぞれ沿う縦軸及び横軸を設定し、前記画像補正装置は、前記撮影画像の前記カメラによる光学的歪曲を補正した光学的補正画像を作る光学的補正画像形成部と、前記板面が撮影画面上で矩形になるように前記板面の前記縦軸及び前記横軸の各傾き角度及び各軸回りの回転角度を算出する軸角度算出部と、前記各傾き角度及び前記各回転角度に基づいて前記板面の前記撮影画面上での画像を矩形になるように補正する矩形板面形成部とを有する構成とする。
【発明の効果】
【０００８】
本発明によれば、例えばホワイトボードの上方にカメラを設置し、ホワイトボードの板面を斜め上方から撮影した画像の歪みを補正してモニタ等に出力する場合に、斜めからの撮影による光学的歪曲を補正し、その光学的歪曲補正画像に対して、矩形状板面の縦軸及び横軸の撮影画面上での傾き角度及び軸回り回転角度を求め、各角度に応じて板面の画像を傾け、かつ回転させることにより、板面が矩形になるように補正することができる。これにより、使用過程においてカメラが初期設定の正規位置からずれて撮影するようになった場合でも、上記各軸の傾き角度や回転角度を求めて補正することから、歪みの無い板面の画像を得ることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明による画像補正装置が適用された撮像装置の一例を示す斜視図
【図２】撮像装置の構成を示すブロック図
【図３】本発明における全体フローを示すフロー図
【図４】（ａ）はカメラで撮影されたまま画像を示す図、（ｂ）は（ａ）の外接矩形画像を示す図
【図５】本発明に基づく板面検出・角度計算を行うフロー図
【図６】傾き角度φｈと回転角度θｈの計算要領を示すフロー図
【図７】（ａ）は板面のｈ軸の傾き及び軸回りに回転した状態を示す斜視図、（ｂ）は板面のｗ軸の傾き及び軸回りに回転した状態を示す斜視図
【図８】（ａ）は画面上での板面のｈ軸の傾き角度及び軸回りの回転角度を示す説明図、（ｂ）は画面上での板面を台形にした状態を示す図
【図９】（ａ）はカメラのｙ軸上での撮影範囲を示す図、（ｂ）は画像上でのカメラ位置座標を示す図
【図１０】図８（ｂ）の台形にする座標変換要領を示すフロー図
【図１１】板面のｗ軸回りの角度θｗの計算要領を示すフロー図
【図１２】（ａ）は画面上での台形状板面のｗ軸の傾き角度及び軸回りの回転角度を示す説明図、（ｂ）は画面上での板面を矩形にした状態を示す図
【図１３】角度の適正値を判定するフロー図
【図１４】（ａ）は板面のそりを示す斜視図、（ｂ）は画面上での板面のそりがある状態を示す図
【図１５】板面のそりを表す曲線を求めるフロー図
【図１６】（ａ）はそりが生じている板面のｈ軸及びｗ軸回りに回転していない状態を示す画面上での図、（ｂ）は（ａ）の矢印XVIｂ−XVIｂ線で見た断面形状を示す図
【図１７】そりが生じている場合の補正座標を求めるフロー図
【図１８】（ａ）は画像の出力結果を説明上格子模様を付して示す図、（ｂ）は対応する入力画像を示す図
【図１９】第２の実施形態を示す図１に対応する図
【発明を実施するための形態】
【００１０】
前記課題を解決するためになされた第１の発明は、矩形の板面に対して所定の位置から斜めに撮影するように設けられたカメラと、前記カメラによる撮影画像の歪曲を画像処理して補正する画像補正装置とを有する撮像装置であって、前記板面の縦横にそれぞれ沿う縦軸及び横軸を設定し、前記画像補正装置は、前記撮影画像の前記カメラによる光学的歪曲を補正した光学的補正画像を作る光学的補正画像形成部と、前記板面が撮影画面上で矩形になるように前記板面の前記縦軸及び前記横軸の各傾き角度及び各軸回りの回転角度を算出する軸角度算出部と、前記各傾き角度及び前記各回転角度に基づいて前記板面の前記撮影画面上での画像を矩形になるように補正する矩形板面形成部とを有する構成とする。
【００１１】
これによると、例えばホワイトボードの上方にカメラを設置し、ホワイトボードの板面を斜め上方から撮影した画像の歪みを補正してモニタ等に出力する場合に、斜めからの撮影による光学的歪曲を補正し、その光学的歪曲補正画像に対して、矩形状板面の縦軸及び横軸の撮影画面上での傾き角度及び軸回り回転角度を求め、各角度に応じて板面の画像を傾け、かつ回転させることにより、板面が矩形になるように補正することができる。これにより、使用過程においてカメラが初期設定の正規位置からずれて撮影するようになった場合でも、上記各軸の傾き角度や回転角度を求めて補正することから、歪みの無い板面の画像を得ることができる。
【００１２】
また、第２の発明は、前記第１の発明において、前記軸角度算出部は、前記光学的補正画像における前記板面の４辺を検出する４辺検出部と、前記４辺からなる四角形に基づいて、前記撮影画面に沿う方向の前記縦軸の傾き角度と前記縦軸回りの回転角度とを算出する縦軸角度算出部と、前記４辺からなる四角形に基づいて、前記撮影画面に直交する方向の前記横軸の傾き角度と前記横軸回りの回転角度とを算出する横軸角度算出部とを有する構成とする。
【００１３】
これによると、板面の４辺を検出し、その４辺が矩形になるように、板面の縦軸においては撮影画面に沿う方向の傾き角度と縦軸回りの回転角度とを求め、横軸においては撮影画面に直交する方向の傾き角度と横軸回りの回転角度とを求めることができる。
【００１４】
また、第３の発明は、前記第２の発明において、前記縦軸角度算出部は、前記４辺における前記横軸方向の２辺を前記撮影画面上で平行にする場合の前記傾き角度と前記回転角度とを算出し、前記横軸角度算出部は、前記４辺における前記縦軸方向の２辺を前記撮影画面上で平行にする場合の前記傾き角度と前記回転角度とを算出する構成とする。
【００１５】
これによると、縦軸及び横軸が傾きかつ回転しているという複雑な角度で板面が撮影された場合でも、各軸で傾きと回転とに分解してそれぞれの角度を求めることから、計算式を単純化して補正することができる。
【００１６】
また、第４の発明は、前記第１乃至第３のいずれかの発明において、前記板面のそりを検出し、かつ前記そりを表す曲線を求めるそり処理部を有し、前記矩形板面形成部は、前記そりを表す曲線に基づいて前記撮影画面上で前記４辺が矩形になる前記板面の画像を作る構成とする。
【００１７】
これによると、板面のそりを検出し、そりを表す曲線を求め、そりを表す曲線に基づいて４辺が矩形になる場面の画像を作ることにより、板面にそりが生じていた場合でも、そりを考慮した補正を行って、より一層正確な板面の画像を再現できる。
【００１８】
また、第５の発明は、前記第４の発明において、前記そり処理部は、前記光学的補正画像において前記４辺の少なくとも１辺が湾曲していることを検出するとともに、前記湾曲している辺の両端を直線で結ぶ仮の直線状辺を求めて、前記仮の直線状辺を含む４辺に基づいて前記板面の前記横軸及び前記縦軸の各軸回りの回転を補正し、前記板面の該回転を補正された画像における前記仮の直線状辺に対する前記湾曲している辺上の複数の点の空間座標を求めて、各前記空間座標を結ぶ線に基づいて前記そりを表す曲線を求める構成とする。
【００１９】
これによると、光学的補正画像において板面の４辺を検出し、その１辺が湾曲している場合には、その湾曲している辺の両端を結ぶ仮の直線状辺を求め、その仮の直線状辺を含めて板面の４辺とするとともに、板面の縦軸及び横軸の軸線回りの回転が無い状態に補正し、その補正された画像において湾曲している辺上の複数の点座標を、仮の直線状辺に対する空間座標に変換することから、各点を例えばスプライン補間により結んで、そりを表す曲線を求めることができる。このようにして、板面にそりが生じている場合にも対応できる。
【００２０】
以下、本発明の実施の形態を、図面を参照しながら説明する。
【００２１】
図１は、本発明による画像補正装置が適用された撮像装置の一例を示す斜視図である。図では、ホワイトボード１の上縁部に、上方に突出し、その突出端から板面１ａの前側に伸びる逆Ｌ字状のアーム２を介してカメラ３が支持されている。このように配置されたカメラ３により、ホワイトボード１の上方から板面１ａの全体を撮影する。また、カメラ３には制御装置としてのパソコン４が接続されている。
【００２２】
図２は、上記カメラ３及びパソコン４により構成された撮像装置におけるブロック図である。図に示されているように、カメラ３には、光学レンズ系３ａと、光学レンズ系３ａにより集光された像を検出して画像データ化する撮像素子３ｂと、撮像素子３ｂからの画像信号が入力する画像処理部３ｃと、画像処理部３ｃによりアクセスされるメモリ３ｄと、画像処理部３ｃと外部機器との間で通信を可能にするためのインターフェース部３ｅとが設けられている。
【００２３】
パソコン４は市販の公知の構造のものであってよい。パソコン４には、カメラ３との間で通信を行うためのインターフェース部４ａと、インターフェース部４ａを介して入力される画像データをパソコン４で処理できる信号に変換する画像データ入力部４ｂと、予め歪曲情報が記憶されたメモリ４ｃと、画像データ入力部４ｂとメモリ４ｃとからの各データを入力する主制御部５と、カメラ３から入力し、補正処理された画像を表示するモニタである表示器４ｄと、外部装置６から入力される信号を主制御部５に伝達するためのインターフェース部４ｅとが設けられている。なお、インターフェース部４ａと画像データ入力部４ｂとは、ＵＳＢや、キャプチャボードにより構成されてよい。
【００２４】
上記主制御部５は、例えばプログラムによるものであってよく、４辺検出部としてのエッジ検出部５ａと、光学的補正画像形成部としての歪曲補正部５ｂと、軸角度算出部（横軸角度算出部及び縦軸角度算出部）としての角度計算部５ｃと、矩形板面形成部としての補正座標計算部５ｄと、そり処理部としての再歪曲補正部５ｅと、表示データ変換部５ｆとにより構成されている。
【００２５】
エッジ検出部５ａは、公知のエッジ処理により画像中のエッジを検出するとともに、ハフ処理による直線及び曲線の検出を行う。歪曲補正部５ｂは、撮影されたままの画像から公知の外接矩形処理により板面１ａを矩形化する補正を行う。角度計算部５ｃは、板面１ａの縦方向の軸（ｈ軸）の軸回りの回転角度と画面のy軸に対する傾き角度とを計算するとともに、板面１ａの横方向の軸（ｗ軸）の軸回りの回転角度と画面のｘ軸に対する傾き角度とを計算する。補正座標計算部５ｄは、板面１ａの傾きや回転を補正して長方形とした４角の座標を計算する。再歪曲補正部５ｅは、板面１ａに反りが生じている場合の反りを補正する。表示データ変換部５ｆは、補正された板面１ａの画像を表示器４ｄに映し出すための表示データの変換を行う。
【００２６】
次に、主として、主制御部５における制御要領をフロー図等を参照して説明する。
【００２７】
図３は、本発明における全体フローを示すフロー図である。本フローのステップＳＴ１では、カメラ３で撮影されて送信されてくる画像データの入力（読み込み）処理を行う。図４（ａ）に、カメラ３で撮影されたままでモニタ画面２１上に映し出す場合の画像を示す。なお、図においてハッチングされた部分はカメラ（撮像素子）により撮影されなかった領域（以下、同様）である。また、図４（ａ）では、カメラに近い側である図の下側に板面１ａの上側が映し出され、カメラから遠い側である図の上側に板面１ａの下側が映し出されており、図に二点鎖線で示される板面１ａの外形のように、カメラに近い側（板面１ａの上側）よりも遠い側（板面１ａの下側）の方の曲率が大である。
【００２８】
ステップＳＴ２では、ステップＳＴ１の画像データから歪曲情報の入力を行う。歪曲情報としては、図４（ａ）におけるカメラに近い側の縁（被撮影部分との境界）の曲がりのデータを用いることができる。
【００２９】
ステップＳＴ３では、外接矩形を用いて歪曲補正を行う。ここで、外接矩形とは、図４（ａ）に示された画面２１の４つの角に対応する画像の各角の位置を変えずに、上記歪曲情報に基づいて図４（ａ）の画面２１に映し出された映像を矩形状に補正したものである。その補正後の画像を図４（ｂ）に示す。
【００３０】
ステップＳＴ４では、本発明に基づく板面検出・角度計算を行う。その詳細なフローを図５を参照して説明する。
【００３１】
図５のステップＳＴ１１では、上記図４（ｂ）の外接矩形に補正された補正画像を入力する。ステップＳＴ１２では、図４（ｂ）の画像上で板面１ａのアスペクト比を算出する。なお、板面１ａの４辺を構成する板面１ａの枠に対して、例えば公知のエッジ検出により縦横１辺ずつの少なくとも２辺を検出し、ハフ変換して直線を検出することにより、アスペクト比を計算することができる。
【００３２】
ステップＳＴ１３では、板面１ａの４辺となる直線・曲線を検出する。例えば図４（ｂ）の場合には、板面１ａの縦枠の辺が直線として、横枠の辺が曲線として検出されている。このように、外接矩形の補正だけでは、完全な直線により構成された板面とはならない。なお、ここでの直線・曲線の検出は、ハフ変換によるものであってよい。
【００３３】
ステップＳＴ１３の次のステップＳＴ１４では、板面１ａの４辺が全て検出されたか否かを判別する。全て検出された場合にはステップＳＴ１５に進む。
【００３４】
ステップＳＴ１５では、画面の横軸をｘ軸とし、縦軸をｙ軸として、板面１ａの高さ方向の軸としてのｈ軸のｙ軸に対する傾き角度φｈと、板面１ａのｈ軸回りの回転角度θｈを計算する。その計算要領を図６のフロー図を参照して説明する。
【００３５】
ここで、図７（ａ）を参照し、板面１ａの上記傾き角度φhと回転角度θｈとについて説明する。図において実線で示される板面１ａは、板面１ａがｘｙ面と平行、すなわち傾き角度φh＝０であり、回転角度θｈ＝０の場合（初期状態）である。それに対して、使用中のカメラ３の位置変化により、図の実線で示されるｈ軸回りに回転角度θｈで板面１ａが回転した場合を破線で示す。この場合のｈ軸の位置はカメラ３を回転中心とする軸であるが、カメラ３は必ずしも板面１ａの横方向の幅の中間点に位置していなくてもよい。そして、ｈ軸が図の一点鎖線で示されるように傾き角度φｈで傾いた場合には、板面１ａは図の二点鎖線で示されるようになる。この場合の初期状態における板面１ａの任意の点Ｐ１は、上記回転によりＰ２に移動し、上記傾きによりＰ３に移動する。なお、回転と傾きは同時に複合的に生じるものであるが、上記したように分解して考えることができる。
【００３６】
図６のステップＳＴ１５ａでは、図８（ａ）に示されるように、上記したハフ変換により直線として検出された板面の上辺ｙＴと下辺ｙＢとの各直線のデータを入力する。
【００３７】
ステップＳＴ１５ｂではｙ軸上の撮像範囲を、カメラ位置Ｐｃからのｙ軸に対する角度として入力する。具体的には、図９（ａ）に示されるｙｚ面でのカメラ位置Ｐｃを原点（ｙ０，ｚ０）として、カメラ位置Ｐｃから、ｙ軸上の撮像範囲におけるカメラに近い縁に対する角度θｉと，カメラから遠い縁に対する角度θｏとを入力する。なお、これらの角度は設計で決まる一定の値であり、メモリに記憶しておいてよい。
【００３８】
ステップＳＴ１５ｃでは、図９（ｂ）に示されるように、画像上（ｘｙ面）でのカメラ位置Ｐｃの座標（ｘ０，ｙ０）を次式により算出する。
ｘ０＝Ｗｉ／２  …（式１）
ｙ０＝（ｔａｎθｉ／（ｔａｎθｉ−ｔａｎθｏ））・Ｈｉ  …（式２）
ここで、Ｗｉは図９（ｂ）に示されるように撮像範囲（画像）の幅であり、Ｈｉは撮像範囲（画像）の高さである。
【００３９】
ステップＳＴ１５ｄでは、上記した上辺ｙＴ及び下辺ｙＢの各直線方程式を、
ｙＴ＝ＡＴ・ｘ＋ＢＴ  …（式３）
ｙＢ＝ＡＢ・ｘ＋ＢＢ  …（式４）
として表し、カメラ位置Ｐｃ（ｘ０，ｙ０）を原点として計算する処理を行う。ここで、ｘ，ｙ軸は画面の縦，横方向であり、ＡＴ，ＡＢは係数、ＢＴ，ＢＢは定数である。
【００４０】
ステップＳＴ１５ｅでは、図８（ａ）に示されるように、板面が回転していた場合の回転軸をｈ軸として、ｘｙ面上でのｈ軸のｙ軸に対する傾き角度φｈを算出し、ステップＳＴ１５ｆでは、板面のｈ軸回りの回転角度θｈを算出する。
【００４１】
これら各角度φｈ，θｈの計算において、ｈ軸回りの回転無し（θｈ＝０）の状態で、上下の両辺ｙＴ，ｙＢが互いに平行であり、ｈ軸と上下の各辺ｙＴ，ｙＢとが直交することを条件とし、上記式３，４の係数及び定数を用いて下記の各式が成り立つ。
ｓｉｎφｈ＝（（ＡＴ・ＢＢ−ＡＢ・ＢＴ）／（ＢＴ−ＢＢ））ｃｏｓφｈ  …（式５）
ｔａｎθｈ＝（ｚ０／ＢＢ）（ｓｉｎφｈ＋ＡＢｃｏｓφｈ）  …（式６）
【００４２】
ステップＳＴ１５ｇでは、上記各式５，６から求めた各値φｈ，θｈを例えばメモリに出力する。
【００４３】
このようにして、図５のステップＳＴ１５における計算を終了したら、ステップＳＴ１６に進む。ステップＳＴ１６では、図８（ａ）に示されるように任意の四角形として撮像されている板面を、図８（ｂ）に示されるように上下の辺ｙＴ，ｙＢが互いに平行な台形にする座標変換を行う。その座標変換要領を図１０のフロー図を参照して説明する。
【００４４】
図１０のステップＳＴ１６ａでは、図８（ａ）に示されるように撮像された板面の画像上の各角の座標（ｘ１，ｙ１），…，（ｘ４，ｙ４）を入力する。ステップＳＴ１６ｂでは、上記ステップＳＴ１５ｆで求めた傾き角度φｈ，回転角度θｈを入力する。
【００４５】
次のステップＳＴ１６ｃからは、各角の座標について、ステップＳＴ１６ｇとの間で繰り返し処理を行って、板面の各角の座標を順番に求める。
【００４６】
繰り返し処理におけるステップＳＴ１６ｄでは、画面のｘｙ空間から板面のｗｈ空間への座標変換を行う。このｗｈ空間とは、板面の傾き角度φｈを０に補正した空間であり、回転角度θｈは残っている。図８（ａ）で、ｙ軸方向とｈ軸方向とが反対になっているのは、カメラによる上からの撮影のため、画像では板面が上下逆に映し出されることによる。この座標変換の式は次式となる。
ｗ＝（ｘ−ｘ０）ｃｏｓφｈ−（ｙ−ｙ０）ｓｉｎφｈ  …（式７）
ｈ＝−（ｘ−ｘ０）ｓｉｎφｈ−（ｙ−ｙ０）ｃｏｓφｈ  …（式８）
【００４７】
ステップＳＴ１６ｅでは、上記傾き角度φｈを補正したｗｈ空間から、回転角度θｈを０に補正したｗ’ｈ’空間への座標変換を行う。これにより、板面は図８（ｂ）に示されるように台形になる。
【００４８】
先ず、ｗ’ｈ’空間における座標（ｗ’，ｈ’）は、次式により表される。
ｗ’＝ｗｘ＋ｒ  …（式９）
ｈ’＝（１−ｒ・Ｐｈ）ｈ  …（式１０）
ただし、式９中のｒは、
ｒ＝（ｗ−ｗｘ’）／（ｗ・Ｐｈ＋ｃｏｓθｈ）
である。この式中のｗｘ’は、ｗｘ’＝ｗｘ＋ｚｘ・ｔａｎ（θｈ／２）であり、Ｐｈは、Ｐｈ＝ｓｉｎ（θｈ／ｚ０）である。また、ｚ０は、上記したようにカメラのｚ軸方向の座標（図９（ａ）参照）である。
【００４９】
ステップＳＴ１６ｆでは、図８（ｂ）に示されるように、板面を台形としたｗ’ｈ’空間から画面のｘｙ空間における対応する座標（ｘ’，ｙ’）への座標変換を行う。なお、この座標変換の式は次式となる。
ｘ’＝ｗ’・ｃｏｓφｈ−ｈ’・ｓｉｎφｈ＋ｘ０  …（式１１）
ｙ’＝−ｗ’・ｓｉｎφｈ−ｈ’・ｃｏｓφｈ＋ｙ０  …（式１２）
【００５０】
そして、繰り返し処理により、台形の４角の座標（ｘ１’，ｙ１’），…，（ｘ４’，ｙ４’）について全ての計算が終了したら、ステップＳＴ１６ｇからステップＳＴ１６ｈに進む。ステップＳＴ１６ｈでは、台形の４角の各座標（ｘ１’，ｙ１’），…，（ｘ４’，ｙ４’）のデータをメモリに出力する。
【００５１】
このようにして、図５のステップＳＴ１６における計算を終了したら、ステップＳＴ１７に進む。ステップＳＴ１７では、板面１ａのｗ軸回りの角度θｗを計算する。その計算要領を図１１のフロー図を参照して説明する。
【００５２】
図１１のステップＳＴ１７ａでは、上記したように台形補正された板面の左辺ｘＬと右辺ｘＲとの各直線データを入力する。左辺ｘＬと右辺ｘＲとがそれぞれ図１２（ａ）に模式的に示されるように場合には、それぞれ次式で表せる。
ｘＬ＝ＡＬ・ｙ＋ＢＬ  …（式１３）
ｘＲ＝ＡＲ・ｙ＋ＢＲ  …（式１４）
【００５３】
ステップＳＴ１７ｂでは、ｙｚ面でのカメラ位置Ｐｃ（ｙ０，ｚ０）からｙ軸上の撮像範囲に対する角度θｉ，θｏを入力する。なお、上記ステップＳＴ１５ｂと同様であってよいため、ステップＳＴ１５ｂで入力処理した値を用いてよい。
【００５４】
ステップＳＴ１７ｃでは、上記ステップＳＴ１５ｃと同様に、画像でのカメラ位置Ｐｃ（ｘ０，ｚ０）を上記式３，４により算出する。ステップＳＴ１７ｄも、上記ステップＳＴ１５ｄと同様に、これ以降における直線方程式を、その原点（０，０）を上記カメラ位置Ｐｃ（ｘ０，ｙ０）として計算する処理を行うようにする。
【００５５】
ステップＳＴ１７ｅでは、図８（ｂ）に対応する図１２（ａ）に示されるように、ｘｙ面上で板面のｗ軸がｘ軸に対して傾き角度φｗだけ傾いていた場合に、ｗ軸のｘ軸に対する傾き角度φｗを算出する。次のステップＳＴ１７ｆでは、板面がｗ軸回りに回転角度θｗだけ回転していた場合の回転角度θｗを算出する。
【００５６】
ここで、図７（ｂ）を参照し、板面１ａの上記傾き角度φｗと回転角度θｗとについて説明する。図において実線で示される板面１ａは、上記ｈ軸の傾き及び回転で説明した場合と同じである。それに対して、使用中のカメラ３の位置変化により、図の実線で示されるｗ軸回りに回転角度θｗで板面１ａが回転した場合を破線で示す。この場合のｗ軸はカメラ３を回転中心とする軸である。そして、ｗ軸が図の一点鎖線で示されるように傾き角度φｗで傾いた場合には、板面１ａは図の二点鎖線で示されるようになる。この場合の初期状態における板面１ａの任意の点Ｐ１は、上記回転によりＰ４に移動し、上記傾きによりＰ５に移動する。なお、回転と傾きは同時に複合的に生じるものであるが、上記したように分解して考えることができる。
【００５７】
これら各角度φｗ，θｗの計算において、ｗ軸回りの回転無し（θｗ＝０）の状態で、左右の両辺ｘＬ，ｘＲが互いに平行であり、ｗ軸と左右の各辺ｘＬ，ｘＲとが直交することを条件とし、上記式１３，１４の係数（ＡＬ，ＡＲ）及び定数（ＢＬ，ＢＲ）を用いて下記の各式が成り立つ。
ｓｉｎφｗ＝（（ＡＲ・ＢＬ−ＡＬ・ＢＲ）／（ＢＬ−ＢＲ））ｃｏｓφｗ
…（式１５）
ｔａｎθｗ＝（ｚ０／ＢＬ）（ｓｉｎφｗ＋ＡＬｃｏｓφｗ）  …（式１６）
なお、図１２（ｂ）は、図１２（ａ）でθｗ＝０とした状態を示し、図１２（ａ）の台形の４角の各座標（ｘ１’，ｙ１’），…，（ｘ４’，ｙ４’）と、長方形の４角の各座標（ｘ１''，ｙ１''），…，（ｘ４''，ｙ４''）とがそれぞれ対応する。
【００５８】
ステップＳＴ１７ｇでは、上記各式１５，１６から求めた各値φｗ，θｗを例えばメモリに出力する。なお、板面１ａが正確な長方形の場合には、w軸とh軸とは直角に交わり、x軸とy軸も直角に交わるので、φｗとφｈとは同じ値になるが、実際にはθwの計算時とθhの計算時とで、w軸とh軸とは正確には等しくならないので、実装上φｗとφｈとを異なる値として扱う。これにより、傾きに対する値をより正確に求めることができる。
【００５９】
このようにして、図５のステップＳＴ１７における計算を終了したら、ステップＳＴ１８に進む。
【００６０】
ステップＳＴ１８では、上記ステップＳＴ１５，１７で計算された各角度が適正値であるか否かを判別する。角度の適正値とは、ｈ軸やｗ軸の傾きや回転角度が設計許容値以内か否かを判定するものであってよい。その判定要領を図１３のフロー図を参照して説明する。
【００６１】
図１３のステップＳＴ１８ａでは、上記ステップＳＴ１５，１７で計算された各値φｈ，φｗ，θｈ，θｗを入力する。ステップＳＴ１８ｂでは、ｈ軸の傾き角度φｈがｗ軸の傾き角度φｗと略等しいか否かを判別する。ここで、略等しいとする閾値としては、例えば両値の差が１度以内であってよい。両角度φｈ，φｗが略等しいと判定された場合にはステップＳＴ１８ｃに進む。
【００６２】
ステップＳＴ１８ｃでは、ｈ軸回りの回転角度が閾値（例えば５度）以下であるか否かを判別し、閾値以下の場合にはステップＳＴ１８ｄに進む。ステップＳＴ１８ｄでは、ｗ軸回りの回転角度が閾値（例えば５度）以下であるか否かを判別し、閾値以下の場合にはステップＳＴ１８ｅに進む。なお、ステップＳＴ１８ｃ，１８ｄの各閾値の５度は、限定される値ではなく、他の任意の角度であってよいが、例えばカメラの解像度などに基づく補正可能な範囲から定めることができる。
【００６３】
ステップＳＴ１８ｅに進んだ場合には、各角度が適正範囲内であることから、適正であるとするフラグ（＝ＴＲＵＥ）を立てる。
【００６４】
一方、ステップＳＴ１８ｂで両角度φｈ，φｗが略等しくないと判定された場合や、ステップＳＴ１８ｃでｈ軸回りの回転角度θｈが閾値を超えていると判定された場合や、ステップＳＴ１８ｄでｗ軸回りの回転角度がθｗが閾値を超えていると判定された場合にはステップＳＴ１８ｆに進む。
【００６５】
ステップＳＴ１８ｆでは、いずれかの角度が適正範囲内にない場合であり、その場合には非適正であるとするフラグ（＝ＦＡＬＳＥ）を立てる。
【００６６】
このようにして、いずれかのフラグ（ＴＲＵＥ／ＦＡＬＳＥ）を立てたら、図５のステップＳＴ１８において、角度（φｈ，φｗ，θｈ，θｗ）が適正値であるか否かを判別する。適正値であると判定された場合にはステップＳＴ１９に進む。
【００６７】
ステップＳＴ１９では、板面１ａのそりを、再歪曲補正部５ｅにより算出する。ここでは、図１４（ａ）に示されるように、板面１ａがｚ軸方向に凹面状にそっている場合について、図１５のフローに基づいて説明する。
【００６８】
図１５のステップＳＴ１９ａでは、エッジ検出により検出された板面１ａの上縁を入力する。なお、下縁を検出して同様の処理を実行してもよい。
【００６９】
次のステップＳＴ１９ｂでは、上記曲線の両端を通る直線を計算する。この場合の直線は、図１４（ｂ）の二点鎖線で示されるようになり、次式で表せる。
ｈ＝Ａｗ＋Ｂ  …（式１７）
ここで、Ａは傾きの係数であり、Ｂは定数である。
【００７０】
ステップＳＴ１９ｃでは、ｈ軸及びｗ軸の各傾き角度φｈ，φｗと、ｈ軸及びｗ軸の各回転角度θｈ，θｗとを入力する。なお、上記したようにφｈとφｗとは略等しいため、いずれか一方（例えばφｈ）の値を用いるだけでもよい。
【００７１】
次のステップＳＴ１９ｄからは、板面１ａのそりについて、ステップＳＴ１９ｈとの間で繰り返し処理を行って、板面１ａの曲線上の各代表点の座標を順番に求める。
【００７２】
繰り返し処理におけるステップＳＴ１９ｅでは、上記ステップＳＴ１６ｄと同様に、画面のｘｙ空間から板面１ａのｗｈ空間への座標変換を行い、任意の座標（ｘ，ｙ）を（ｗ，ｈ）に変換する。ステップＳＴ１９ｆでは、座標（ｗ，ｈ）から、ｈ軸及びｗ軸の各軸回りに回転していない（θｈ＝０，θｗ＝０）ときの座標（ｗ’，ｈ’）を計算する。図１４（ａ）のようなそりが生じていて、画面では図１４（ｂ）に示すようになっていた場合には、このステップＳＴ１９ｆにおける処理で、図１６（ａ）のようになる。図１６（ａ）の座標（ｗ’，ｈ’）は図１４（ａ）座標（ｗ，ｈ）に対応する。
【００７３】
ステップＳＴ１９ｇでは、板面１ａのそりを計算する。ここでは、図１６（ａ）の矢印XVIｂ−XVIｂ線で見た断面形状を示す図１６（ｂ）に示されるように、上記座標（ｗ’，ｈ’）に対応するｗｚ面における座標（ｗ’，ｚｃ）を求める。
【００７４】
この繰り返し処理により、曲線上の任意の数（ｎ）の代表点の各座標（ｗ１’，ｚｃ１），（ｗ２’，ｚｃ２），…，（ｗｎ’，ｚｃｎ）について全ての計算が終了したら、ステップＳＴ１９ｈからステップＳＴ１９ｉに進む。
【００７５】
ステップＳＴ１９ｉでは、各代表点の座標（ｗ１’，ｚｃ１），（ｗ２’，ｚｃ２），…，（ｗｎ’，ｚｃｎ）に基づいて、スプライン補間等により各代表点を通る近似式を計算する。これにより、例えば図１６ｂに示されるように、そりの無い線（ｚ＝０）に対してｚ軸方向に凹状の曲線が求められる。そして、ステップＳＴ１９ｊでは、ステップＳＴ１９ｉで求められたそりを表す曲線を出力する。
【００７６】
なお、そりの形態としては、上記したようにｈ軸に沿う面がｚ軸方向に凹状になる場合に限られず、ｗ軸方向に沿う面がｚ軸方向に凹状になる場合（図１４（ａ）の湾曲方向が直交する形態）も、座標（ｗ，ｚｃ）を座標（ｈ，ｚｃ）に置き換えることで同様に処理することができる。
【００７７】
このようにして、図５のステップＳＴ１９における計算を終了したら、適正な補正により板面１ａを矩形化処理するべくステップＳＴ２０に進む。ステップＳＴ２０では、板面１ａの位置（４角の各座標），角度（ｈ軸，ｗ軸の傾き及び回転），そり（上記そりを表す曲線）を出力して図５のフローを終了する。
【００７８】
なお、図５のフローにおいて、ステップＳＴ１４で板面１ａの４辺が全て検出されなかったと判定された場合にはステップＳＴ２２に進む。ステップＳＴ２２では、板面１ａの３辺が検出されたか否かを判別し、４辺の内３辺が検出されたと判定した場合にはステップＳＴ２３に進む。ステップＳＴ２３では、矩形の４辺の内３辺が検出されていることから、検出された３辺の中で非検出の１辺の両端に対応する２辺の各端同士を結ぶ線を求めて、非検出の１辺を推定する処理を行う。これにより、４辺が検出された場合と同様になることから、ステップＳＴ１５に進み、上記した処理を行う。
【００７９】
一方、ステップＳＴ２２で、３辺の検出にも至らなかったと判定された場合（２辺以下の検出）にはステップＳＴ２４に進む。この場合には、ステップＳＴ１５以降の処理を行うのに必要な数の辺の検出に失敗したことから、ステップＳＴ２４でエラー処理を行って、図５のフローを終了する。エラー処理としては、モニタ上にエラー表示する等でよい。
【００８０】
図５のフローで板面１ａの情報取得に成功した場合には、図１７のフローに進む。
【００８１】
図１７のステップＳＴ３１では、歪曲情報を入力する。この歪曲情報は、板面１ａの傾きやそりによる歪曲情報ではなく、上記メモリ４ｃに予め記憶されている歪曲情報のことであり、図１のカメラアングルで撮影することにより、図４（ａ）に示されるように撮影されるカメラ３における光学的な歪曲画像の情報である。
【００８２】
ステップＳＴ３２では、上記ステップＳＴ２０の出力データ（一時メモリに入れておいてよい）の板面１ａの位置，角度，そり曲線を入力する。ステップＳＴ３３では、ステップＳＴ３１の歪曲情報に基づいて、歪曲補正した近似線を計算する。例えば、予め設定した３０点の位置を結んで得られる曲線を、光学的歪曲情報に基づいて直線化する。
【００８３】
ステップＳＴ３４では、画面のｘｙ軸におけるｘ軸方向の不均一を補正する座標計算を行う。上記図１６に示したように、ｗｚ面においてｚ軸方向に凹状のそりが板面１ａに生じていた場合には、画面に映る板面１ａのｘ軸方向中央部に対して両端部分の方が狭くなる、という不均一さが生じる。そこで、上記図１５のフローでそりがある曲線が求められたら、そのそり曲線に応じてｘ軸方向の不均一さを補正する座標を計算する。
【００８４】
次のステップＳＴ３５からは、出力画像の全画素の補正について、ステップＳＴ３９との間で繰り返し処理を行って、全画素に対して計算を行う。
【００８５】
繰り返し処理におけるステップＳＴ３６では、図１８（ａ）に示される出力画像（補正後の画像）における画素Ｐ１の座標を求めるために、図１８（ｂ）に示される入力画像（カメラ３で撮影したままの画像）における対応する画素Ｐ１’の座標を決定する。なお、図の格子模様は説明上描いたものである。
【００８６】
ステップＳＴ３７では、ｗ−ｈ−ｚ空間上の座標を計算する。ここでは、上記ステップＳＴ３２で入力した板面１ａの角度，そり曲線に基づいて、ｗ−ｈ−ｚ空間上の座標を計算する。ステップＳＴ３８では、図１８（ｂ）に示される入力画像での対応する画素Ｐ１’の座標を計算する。ここでは、ステップＳＴ３２で入力した板面１ａの位置と、ステップＳＴ３３で計算した歪曲補正近似線とを用いて、画素Ｐ１’の座標を計算する。
【００８７】
そして、繰り返し処理により、出力画像の全画素（Ｐ１，…，Ｐｎ）について、対応する入力画像の全画素（Ｐ１’，…，Ｐｎ’）の計算が終了したら、ステップＳＴ３９からステップＳＴ４０に進む。
【００８８】
ステップＳＴ４０では、ステップＳＴ３５〜３９で求めた補正座標を出力する。入力画像と出力画像との対応する各画素座標に対して上記したように補正し、図１８（ａ）に示されるように、出力画像の板面１ａにおいてｘｙ方向に間隔の不均一さが無く、直接見た板面１ａと同様の歪みの無い画像が得られた。
【００８９】
以上、本発明を、その好適実施形態の実施例について説明したが、当業者であれば容易に理解できるように、本発明はこのような実施例により限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【００９０】
例えば、図１に対応する図１９に示されるように、机１１の板面としての上面１１ａを、上記と同様に撮影することができる。机１１の１辺から側方に延出しかつ上方に延びるように曲折されたアーム２の上端にカメラ３を固定し、カメラ３により上面１１ａを斜め上方から撮影する。これにより、上面１１ａに載置されたボードや紙に書かれた文字等を、上記と同様にパソコンのモニタに歪曲補正された状態で映し出すことができる。
【００９１】
また、上記実施形態に示した構成要素は必ずしも全てが必須なものではなく、本発明の趣旨を逸脱しない限りにおいて適宜取捨選択することが可能である。
【産業上の利用可能性】
【００９２】
本発明にかかる画像補正装置は、板面を斜めから撮影した場合の撮影画像の歪曲補正のみならず、カメラの初期設定位置からずれたことによる撮影画像の歪曲を好適に補正することができ、ホワイトボードに限られず、板面を斜めから撮影したものをモニタ等に出力する用途に有用である。
【符号の説明】
【００９３】
１  ホワイトボード
１ａ  板面
３  カメラ
４  パソコン
５  主制御部
５ａ  エッジ検出部
５ｂ  歪曲補正部
５ｃ  角度計算部
５ｄ  補正座標計算部
５ｅ  再歪曲補正部
５ｆ  表示データ変換部
【図１】
2014033342.tif 000003
【図２】
2014033342.tif 000004
【図３】
2014033342.tif 000005
【図４】
2014033342.tif 000006
【図５】
2014033342.tif 000007
【図６】
2014033342.tif 000008
【図７】
2014033342.tif 000009
【図８】
2014033342.tif 000010
【図９】
2014033342.tif 000011
【図１０】
2014033342.tif 000012
【図１１】
2014033342.tif 000013
【図１２】
2014033342.tif 000014
【図１３】
2014033342.tif 000015
【図１４】
2014033342.tif 000016
【図１５】
2014033342.tif 000017
【図１６】
2014033342.tif 000018
【図１７】
2014033342.tif 000019
【図１８】
2014033342.tif 000020
【図１９】
2014033342.tif 000021