JP2004157999A - 空間画像の画像変換方法及びリアルタイム送信方法 - Google Patents
空間画像の画像変換方法及びリアルタイム送信方法 Download PDFInfo
- Publication number
- JP2004157999A JP2004157999A JP2003351692A JP2003351692A JP2004157999A JP 2004157999 A JP2004157999 A JP 2004157999A JP 2003351692 A JP2003351692 A JP 2003351692A JP 2003351692 A JP2003351692 A JP 2003351692A JP 2004157999 A JP2004157999 A JP 2004157999A
- Authority
- JP
- Japan
- Prior art keywords
- image
- rectangular
- conversion
- spatial image
- spatial
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000001131 transforming effect Effects 0.000 title abstract 2
- 238000006243 chemical reaction Methods 0.000 claims description 98
- 230000005540 biological transmission Effects 0.000 claims description 11
- 230000009466 transformation Effects 0.000 abstract 4
- 230000003287 optical effect Effects 0.000 description 10
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000007430 reference method Methods 0.000 description 1
Images
Abstract
【課題】 凸面鏡や魚眼レンズで撮影した円形ないし環状又は中凸矩形状の空間画像を矩形画像に変換する方法に関し、比較的小さいメモリ容量のコンピュータで変換テーブルを利用した画像の高速変換処理を実現し、空間画像を矩形画像に変換してリアルタイムで送信することが可能な、より安価なシステムを提供する。
【解決手段】 空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを用いて、空間画像の極座標表示における360度の空間画像の総ての部分における矩形画像への変換を可能にする。好ましい変換テーブルは、円形ないし環状の空間画像の極座標系における45度、90度又は180度分のものである。
【選択図】 図7
【解決手段】 空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを用いて、空間画像の極座標表示における360度の空間画像の総ての部分における矩形画像への変換を可能にする。好ましい変換テーブルは、円形ないし環状の空間画像の極座標系における45度、90度又は180度分のものである。
【選択図】 図7
Description
この発明は、凸面鏡や魚眼レンズの光軸を垂直方向にして撮影して得られる全方位画像や、水平方向にして得られる全正面画像などの空間画像をコンピュータ処理により矩形画像に変換する方法に関するもので、コンピュータを介在させた送信システムにより、カメラの設置場所における撮影画像を遠隔地にある表示端末にリアルタイムで、即ち可及的に小さい遅れ時間で送信する画像送信システムに特に有効な画像変換方法に関するものである。
遠隔地の景観や状況を観察ないし監視するために、現地に設置されたカメラの撮影画像を観察者が操作している表示端末に送信するシステムは公知である。カメラとして一般的な矩形領域を撮影するカメラを用いたときには、観察者が望む方向を見るために、カメラの方向を遠隔制御する必要が生ずる。この方法は、カメラの方向を変えるための機械的な仕組みと、その遠隔制御装置を必要とするため、全体システムが複雑になり、高価になる。この問題を解決する手段として、現地に凸面鏡、双曲面レンズ、魚眼レンズなどを装着したカメラを設置して、当該カメラで全方位の画像を取り込む方法が利用されている。このような方法で取り込まれた全方位画像は、カメラの光軸の前方又は後方を中心とした円形ないし環状の二次元画像となるので、当該全方位画像を人間にとってなじみやすい矩形画像に変換して表示させる必要がある。
下記特許文献1には、環状の全方位画像の中の観察者が指定する部分画像を矩形画像に変換して送信することについての記載がある。このようなシステムを実現する際に必要となる画像のクリッピング(部分画像の切取り)や全方位画像から矩形画像への変換などの画像処理は、コンピュータを利用したディジタル処理により行われるのが一般的である。ディジタル処理による全方位画像から矩形画像への変換は、全方位画像の各画素(ピクセル)の画像中心からの距離と基準方法からの角度とを直交座標系における縦横の位置に換算するという単純な演算操作であるが、動画の送信では1フレームの処理を1/30秒程度の速度で行わなければならないため、特に解像度の高い画像の処理に時間がかかることとなり、一般的には動きの滑らかさか画像の解像度かのいずれかを犠牲にしなければならなくなる。この問題に対処する一つの提案として、下記特許文献2には、全方位画像から矩形画像への画像変換をハードロジックと変換テーブルとを利用して行うことが記載されている。
特表2000−515984号公報
特開2000−333303号公報
この発明の課題は、比較的小さいCPUパワーと比較的小さいメインメモリ量とによって、全方位画像から矩形画像への画像変換の高速処理を実現し、それによって比較的安価なシステムにより、遠隔地に設置したカメラで撮影された全方位動画像を観察者が望む領域の矩形動画像に変換して観察者の表示端末にリアルタイムで表示できるようにすることである。
変換テーブルを用いる全方位画像から矩形画像への変換処理は、三角関数を含む演算式を個々のピクセルに適用してゆく演算プログラムによる処理に比べて、より高速な画像変換を実現することができる。しかしそのためには、変換テーブルがメインメモリに読み込まれていることが必要であり、テーブルが大きければそれだけ多くのメインメモリを必要とする。全方位画像は、その一部となる矩形画像よりデータ量が数倍多く、従って全方位画像を矩形画像に変換する際に参照されるテーブルの容量は、大きくならざるを得ず、大きなメインメモリ容量を必要とする。
全方位画像は、凸面鏡や魚眼レンズの光軸を垂直方向にして撮影した円形ないし円環状の画像であるが、同様な問題は、凸面鏡や魚眼レンズの光軸を水平方向や斜め上下方向にして撮影した円形ないし中凸矩形状の画像(この明細書では全正面画像といい、全方位画像と合わせて空間画像と総称する。)から矩形画像を切り出すときにも生ずる。凸面鏡や魚眼レンズで撮影した画像は円形となるが、上下方向の視野角を制限した全方位画像は円環状となり、上下方向及び左右方向の視野角を制限した全正面画像は中凸矩形状となる。
この発明の課題は、上記問題を解決して、比較的小さいメモリ容量のコンピュータで変換テーブルを利用した画像の高速変換処理を実現することにより、全方位画像や全正面画像などの空間画像を矩形画像に変換してリアルタイムで送信することが可能な、より安価なシステムを提供することである。
この発明は、凸面鏡や魚眼レンズの光軸を垂直方向ないし水平方向にして撮影した空間画像の一部領域を直角座標系の矩形画像に変換する際に、空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを用いて、空間画像の極座標表示における360度の総ての領域における矩形画像への変換を可能にすることにより、上記課題を解決したものである。
即ち、本願の請求項1の発明に係る空間画像の画像変換方法は、円形ないし環状又は中凸矩形状の空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを用いて、空間画像の極座標系における360度の総ての領域の矩形画像への変換処理を行うことを特徴とする。
本願の請求項2の発明に係る空間画像の画像変換方法は、空間画像のピクセル位置から矩形画像のピクセル位置を換算する変換テーブルを用いて空間画像から全領域ないし所定領域の矩形画像を生成する画像変換方法において、空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを用いて、空間画像上のピクセル位置を矩形画像上のピクセル位置に変換することを特徴とするものである。
また、本願の請求項4の発明は、上記請求項1又は2記載の画像変換方法において、変換テーブルを空間画像の極座標系における45度、90度又は180度分のテーブルとしたものである。この請求項4の方法によれば、変換テーブルを参照する際の座標値の換算をきわめて簡単な、従って高速処理可能な演算により行うことができる。
本願請求項3の発明は、上記画像変換方法を採用することにより画像データの高速送信を実現したもので、空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを処理コンピュータのメインメモリに読み込み、カメラから処理コンピュータに逐次送信されてくる空間動画像の各フレームを上記変換テーブルを用いて全方向の矩形画像又は観察者が指定する領域の矩形画像に変換して表示端末へ送信する、空間画像のリアルタイム送信方法である。
本願請求項5の発明は、上記空間画像のリアルタイム送信方法において、変換テーブルを円形ないし環状又は中凸矩形状の空間画像の極座標系における45度、90度又は180度分のテーブルとしたものであり、請求項4の発明で説明した理由により、送信の際の画像変換をより高速に行うことが可能になる。
この発明の方法によれば、メインメモリに読み込まれるテーブルの大きさは、空間画像の総ての位置情報を備えたテーブルの少なくとも8分の1ないし2分の1の大きさで済む。
この発明の画像変換方法を用いた空間画像のリアルタイム送信では、カメラから処理コンピュータに逐次送信されてくる動画像の各フレームをメインメモリ上に置いたまま、既にメインメモリに読み込まれている変換テーブルを用いて、画面全体を表示する矩形画像(パノラマ画像ないし全体画像)又は観察者が指定する領域を表示する矩形画像(部分画像)に変換して表示端末へと送信する。メインメモリ上の空間画像は、カメラから順次送られてくる後続の空間画像を受信する毎に先入れ先出し式に古いものから順に消去されてゆき、メインメモリ上にも補助記憶装置のメモリ領域にも痕跡を残さない。変換後の矩形画像についても同様に、表示端末に送信された後の画像は、圧縮処理に必要なフレームを残して順次消去されてゆく。
このような処理により、遠隔地のカメラが撮影した空間画像をリアルタイムに矩形画像に変換して表示端末に送信することが可能になる。
この発明の画像変換方法を利用すれば、空間画像からパノラマ画像ないし部分領域の矩形画像に少ないメモリ量で高速に変換することができ、全方位カメラや全正面カメラが捉えたライブ映像を時間遅れなく遠隔地のユーザー端末に送信ないし配信して表示するシステムをより安価に構築できるという効果がある。
以下、この発明の画像変換方法を利用したリアルタイム画像送信方法の例を示す添付図面を参照して、この発明の実施形態を説明する。
図1はハードウェア構成図である。図1において、1はビデオカメラ(アナログ又はディジタルビデオカメラ)、2は画像変換用コンピュータ、3は配信サーバー、4はユーザー端末(表示端末)、5は凸面鏡ないし魚眼レンズ、6はルータである。
凸面鏡ないし魚眼レンズ5を装着したビデオカメラ1は、光軸を中心とする全方位又は全正面の空間を撮影する。撮影された画像は、カメラの結像面に円形ないし円環状又は中凸矩形状の空間画像を生成する。
画像変換用コンピュータ2は、一般的なコンピュータシステムと同じ構成であり、CPU10、メインメモリ11、ビデオキャプチャインターフェイス12、ネットワークインターフェイス13などで構成される。メインメモリ11には、第1バッファ領域14、第2バッファ領域15、変換テーブル領域16が確保されている。ビデオキャプチャインターフェイス12は、ビデオカメラ1に接続されており、ビデオカメラ1が撮影した空間画像は、ビデオキャプチャインターフェイス12を通して画像変換用コンピュータに送られる。
配信サーバー3は、ストリーミング動画を配信するサーバーであり、ルータ6を通して画像変換用コンピュータ2やインターネット7と接続されている。サーバー3から送信された動画像データ(矩形画像データ)は、ルータ6やインターネット7を通じてユーザー端末4に送られ、動画像が表示される。
図2は本発明の画像処理方法を利用した画像配信の手順の一例を示すフローチャートである。
ユーザー端末がサーバーにアクセスすると、ディスプレイにビデオカメラ1が現時点で撮影した空間画像が表示され、その空間画像からユーザーが見たい領域を選択する。この情報は画像変換用コンピュータ2に送られ、その情報からどの方向を見るかなどの初期パラメータが作成され、画像変換用の変換テーブル領域16、第1バッファ領域14、第2バッファ領域15が作成される。
次に、ビデオキャプチャインターフェイス12が初期化され、ビデオ画像(空間画像)のキャプチャーを始める。同時に配信サーバー3で、ユーザー端末4の処理能力と当該端末が利用するビデオ圧縮形式を調べる。
次に、ビデオ画像を取り込み、メインメモリ上の変換テーブルを用いて空間画像を矩形画像に変換し、配信サーバー3で、画像をビデオ圧縮形式にして、ユーザー端末4にビデオファイルを送信する。
ユーザーがビデオファイルの閲覧を終了したら、配信サーバー3と画像変換用コンピュータ2は、終了処理を行う。
次に画像変換処理を中心に、図示実施形態における処理の詳細を説明する。
(1) ライブ動画の撮影
撮影現場に設置されたビデオカメラ1で撮影した空間画像の各フレームは、当該カメラにビデオライン入力、USB、IEEE1394などの接続手段で接続された画像変換用コンピュータ2に転送する。
(1) ライブ動画の撮影
撮影現場に設置されたビデオカメラ1で撮影した空間画像の各フレームは、当該カメラにビデオライン入力、USB、IEEE1394などの接続手段で接続された画像変換用コンピュータ2に転送する。
(2) 撮影データの取り込み
画像変換用コンピュータ2は、ビデオキャプチャインターフェイス12からの割り込み信号があると、第1バッファメモリに空間画像のデータを書き込む。なお、この処理は、通常ビデオキャプチャデバイスがA/D変換器とDMA転送を利用して行う。ビデオカメラ1がデジタルビデオカメラの場合は、IEEE1394インターフェイスやUSBインタフェースを通して画像データを取得する。
画像変換用コンピュータ2は、ビデオキャプチャインターフェイス12からの割り込み信号があると、第1バッファメモリに空間画像のデータを書き込む。なお、この処理は、通常ビデオキャプチャデバイスがA/D変換器とDMA転送を利用して行う。ビデオカメラ1がデジタルビデオカメラの場合は、IEEE1394インターフェイスやUSBインタフェースを通して画像データを取得する。
(3) 画像変換
変換用コンピュータ2は、ビデオキャプチャデバイスが第1バッファメモリ14にアクセスしていない時間(垂直復帰信号時)に、第1バッファメモリ14から第2バッファメモリ15に画像データをコピーする(または、第1バッファメモリと第2バッファメモリをフリッピングする)。その後、変換用コンピュータのメインメモリ上にある変換テーブルを利用して、第2バッファメモリの空間画像データを矩形画像データに変換する。
変換用コンピュータ2は、ビデオキャプチャデバイスが第1バッファメモリ14にアクセスしていない時間(垂直復帰信号時)に、第1バッファメモリ14から第2バッファメモリ15に画像データをコピーする(または、第1バッファメモリと第2バッファメモリをフリッピングする)。その後、変換用コンピュータのメインメモリ上にある変換テーブルを利用して、第2バッファメモリの空間画像データを矩形画像データに変換する。
空間画像は、周囲360度の全方位の景観又は正面視野全体を表示する一枚の大きな矩形画像(全体画像。全方位を表示するものはパノラマ画像ともいう。)に変換してもよいし、テレビ画像などに合わせて4:3や16:9のサイズの矩形画像にクリッピング(切り抜き)してもよい。この場合、接続ユーザーごとに違う画像を提供する場合は、全体画像にして配信時にクリッピングする方法が望ましく、全てのユーザーに同じ画像を提供する場合は、空間画像の必要な部分だけを変換する方法が望ましい。また、ユーザー端末側で全体画像を処理する場合は、サーバー側でクリッピング作業を行う必要はない。
(4) 画像変換に用いる変換テーブル
変換テーブルは、図3、4に示すように、縦方向に提供する画像のピクセル以上の配列を持ち、横方向に少なくとも90度の視野角分の配列を持つ二次元の配列T(X,Y)である。ここでX、Yにオフセット値を加えた値が横方向及び縦方向の画素の位置に対応する。テーブルの大きさは前述したサイズ以上のものであればどのようなサイズでも良いが、X、Yの最大値、Xmax、Ymaxの値が大きければ、画像の横方向および縦方向の解像度がより細かくなる。本実施例では、ユーザがカメラの視野角の範囲内で視線を上下することも許容するとして、レンズ5の縦方向の画角をθcam、横方向の画角をθxcam(図3の全方位画像では360度)とし、ユーザーに提供する縦方向の画角をθview、ユーザーに送信する縦方向の画素サイズをVviewとしたときに、
縦方向テーブルサイズは、
Ymax = Vview/θview×θcam
通常、ピクセル密度は縦横同じであるから、横方向テーブルサイズは、図3の全方位画像では
Xmax = Vview/θview×90
図4の全正面画像では、
Xmax = Vview/θview×θxcam
となるようにする。なお、本実施例では角度の単位は度で示してある。
変換テーブルは、図3、4に示すように、縦方向に提供する画像のピクセル以上の配列を持ち、横方向に少なくとも90度の視野角分の配列を持つ二次元の配列T(X,Y)である。ここでX、Yにオフセット値を加えた値が横方向及び縦方向の画素の位置に対応する。テーブルの大きさは前述したサイズ以上のものであればどのようなサイズでも良いが、X、Yの最大値、Xmax、Ymaxの値が大きければ、画像の横方向および縦方向の解像度がより細かくなる。本実施例では、ユーザがカメラの視野角の範囲内で視線を上下することも許容するとして、レンズ5の縦方向の画角をθcam、横方向の画角をθxcam(図3の全方位画像では360度)とし、ユーザーに提供する縦方向の画角をθview、ユーザーに送信する縦方向の画素サイズをVviewとしたときに、
縦方向テーブルサイズは、
Ymax = Vview/θview×θcam
通常、ピクセル密度は縦横同じであるから、横方向テーブルサイズは、図3の全方位画像では
Xmax = Vview/θview×90
図4の全正面画像では、
Xmax = Vview/θview×θxcam
となるようにする。なお、本実施例では角度の単位は度で示してある。
変換テーブルの1つの配列T(X,Y)にはそれぞれ、x、y、p、qのパラメータがある。配列をT(X,Y)で表し、その配列のxの値をT(X,Y).x、yの値をT(X,Y).yのように表すと、変換テーブルの水平方向の角度が90度、垂直方向の角度がθcamであるとき、視角θx、θyの時の変換テーブルの座標X、Yの値は、
X = (Xmax/90×θx)
Y = 縦方向視角(Yview-(Ymax/θcam×θy))+(θcam/2)
となり、x、y、p、qのそれぞれの値は
T(X,Y).x:視角θx、θyのときの極座標のX座標値整数部
T(X,Y).y:視角θx、θyのときの極座標のY座標値整数部
T(X,Y).p:視角θx、θyのときの極座標のX座標値小数部
T(X,Y).q:視角θx、θyのときの極座標のY座標値小数部
である(図5、6参照)。実際のプログラムでは、ビデオ画像の基準座標は画像の中心位置ではないので、それぞれオフセット値を加えることになるが、本実施例ではオフセット値を省略して、ビデオ画像の基準座標を画像の中心位置としている。
X = (Xmax/90×θx)
Y = 縦方向視角(Yview-(Ymax/θcam×θy))+(θcam/2)
となり、x、y、p、qのそれぞれの値は
T(X,Y).x:視角θx、θyのときの極座標のX座標値整数部
T(X,Y).y:視角θx、θyのときの極座標のY座標値整数部
T(X,Y).p:視角θx、θyのときの極座標のX座標値小数部
T(X,Y).q:視角θx、θyのときの極座標のY座標値小数部
である(図5、6参照)。実際のプログラムでは、ビデオ画像の基準座標は画像の中心位置ではないので、それぞれオフセット値を加えることになるが、本実施例ではオフセット値を省略して、ビデオ画像の基準座標を画像の中心位置としている。
なお、環状の全方位画像で、ドーナツ形の画像の外径の半径がRa、内径の半径がRbのとき、
T(X,Y).x+T(X,Y).pは((Ra-Rb)×(θcam/Ymax×Y)+Rb)×cos(90/Xmax×X)であり
T(X,Y).y+T(X,Y).qは((Ra-Rb)×(θcam/Ymax×Y)+Rb)×sin(90/Xmax×X)である。
T(X,Y).x+T(X,Y).pは((Ra-Rb)×(θcam/Ymax×Y)+Rb)×cos(90/Xmax×X)であり
T(X,Y).y+T(X,Y).qは((Ra-Rb)×(θcam/Ymax×Y)+Rb)×sin(90/Xmax×X)である。
(5) 画像の変換
このテーブルで角度θx.θyの極座標位置を求める場合、θxをθxcam(この例では90度)で割った剰余(θxxとする)、θyの時の角度で、1象限分での差分の角度θxxのときのテーブル座標Xp、Ypをそれぞれ求める。
これは、1象限分での変換座標があれば、容易にそれぞれの象限での座標を求めることができるためで、これによって、変換テーブルの大きさを1/4にできるからである。
Xp = (Xmax/90×θx)
Yp = (Ymax/θcam×θy)+(θcam/2)
そして、
T(Xp,Yp)のテーブル値を参照して、角度θxがどの象限にあるかで結果のテーブル値を変換する。
なお、Xs,Ys,Ps,Qsはテーブル参照のための一時変数である。
第1象限のときは、
Xs = T(Xp,Yp).x
Ys = T(Xp,Yp).y
Ps = T(Xp,Yp).p
Qs = T(Xp,Yp).q
第2象限のときは、
Xs = −T(Xp,Yp).y
Ys = T(Xp,Yp).x
Ps = −T(Xp,Yp).q
Qs = T(Xp,Yp).p
第3象限のときは、
Xs = −T(Xp,Yp).x
Ys = −T(Xp,Yp).y
Ps = −T(Xp,Yp).p
Qs = −T(Xp,Yp).q
第4象限のときは、
Xs = T(Xp,Yp).y
Ys = −T(Xp,Yp).x
Ps = T(Xp,Yp).q
Qs = −T(Xp,Yp).p
である(図7参照)。
このテーブルで角度θx.θyの極座標位置を求める場合、θxをθxcam(この例では90度)で割った剰余(θxxとする)、θyの時の角度で、1象限分での差分の角度θxxのときのテーブル座標Xp、Ypをそれぞれ求める。
これは、1象限分での変換座標があれば、容易にそれぞれの象限での座標を求めることができるためで、これによって、変換テーブルの大きさを1/4にできるからである。
Xp = (Xmax/90×θx)
Yp = (Ymax/θcam×θy)+(θcam/2)
そして、
T(Xp,Yp)のテーブル値を参照して、角度θxがどの象限にあるかで結果のテーブル値を変換する。
なお、Xs,Ys,Ps,Qsはテーブル参照のための一時変数である。
第1象限のときは、
Xs = T(Xp,Yp).x
Ys = T(Xp,Yp).y
Ps = T(Xp,Yp).p
Qs = T(Xp,Yp).q
第2象限のときは、
Xs = −T(Xp,Yp).y
Ys = T(Xp,Yp).x
Ps = −T(Xp,Yp).q
Qs = T(Xp,Yp).p
第3象限のときは、
Xs = −T(Xp,Yp).x
Ys = −T(Xp,Yp).y
Ps = −T(Xp,Yp).p
Qs = −T(Xp,Yp).q
第4象限のときは、
Xs = T(Xp,Yp).y
Ys = −T(Xp,Yp).x
Ps = T(Xp,Yp).q
Qs = −T(Xp,Yp).p
である(図7参照)。
(6) 他の角度分の変換テーブルを用いるときの参照座標
上記は、第1象限90度分の変換テーブルを用いるときの空間画像の座標から変換テーブルの座標を参照するときの変換式であるが、180度又は45度分の変換テーブルを用いるときは、以下のように変換して参照すればよい、
上記は、第1象限90度分の変換テーブルを用いるときの空間画像の座標から変換テーブルの座標を参照するときの変換式であるが、180度又は45度分の変換テーブルを用いるときは、以下のように変換して参照すればよい、
第1、2象限180度分の変換テーブルのときは、
第1、2象限なら、
Xs = T(Xp,Xp).x
Ys = T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = T(Xp,Xp).q
第3、4象限なら、
Xs = T(Xp,Xp).x
Ys = −T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = −T(Xp,Xp).q
とする(図8参照)。
第1、2象限なら、
Xs = T(Xp,Xp).x
Ys = T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = T(Xp,Xp).q
第3、4象限なら、
Xs = T(Xp,Xp).x
Ys = −T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = −T(Xp,Xp).q
とする(図8参照)。
また、第1象限Y軸側45度分の変換テーブルのときは、
第1象限Y軸側45度範囲なら、
Xs = T(Xp,Xp).x
Ys = T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = T(Xp,Xp).q
第1象限X軸側45度範囲なら、
Xs = T(Xp,Xp).y
Ys = T(Xp,Xp).x
Ps = T(Xp,Xp).q
Qs = T(Xp,Xp).p
第2象限X軸側45度範囲なら、
Xs = −T(Xp,Xp).y
Ys = T(Xp,Xp).x
Ps = −T(Xp,Xp).q
Qs = T(Xp,Xp).p
第2象限Y軸側45度範囲なら、
Xs = −T(Xp,Xp).x
Ys = T(Xp,Xp).y
Ps = −T(Xp,Xp).p
Qs = T(Xp,Xp).q
第3象限Y軸側45度範囲なら、
Xs = −T(Xp,Xp).x
Ys = −T(Xp,Xp).y
Ps = −T(Xp,Xp).p
Qs = −T(Xp,Xp).q
第3象限X軸側45度範囲なら、
Xs = −T(Xp,Xp).y
Ys = −T(Xp,Xp).x
Ps = −T(Xp,Xp).q
Qs = −T(Xp,Xp).p
第4象限X軸側45度範囲なら、
Xs = T(Xp,Xp).y
Ys = −T(Xp,Xp).x
Ps = T(Xp,Xp).q
Qs = −T(Xp,Xp).p
第4象限Y軸側45度範囲なら、
Xs = T(Xp,Xp).x
Ys = −T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = −T(Xp,Xp).q
となる(図9参照)。
第1象限Y軸側45度範囲なら、
Xs = T(Xp,Xp).x
Ys = T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = T(Xp,Xp).q
第1象限X軸側45度範囲なら、
Xs = T(Xp,Xp).y
Ys = T(Xp,Xp).x
Ps = T(Xp,Xp).q
Qs = T(Xp,Xp).p
第2象限X軸側45度範囲なら、
Xs = −T(Xp,Xp).y
Ys = T(Xp,Xp).x
Ps = −T(Xp,Xp).q
Qs = T(Xp,Xp).p
第2象限Y軸側45度範囲なら、
Xs = −T(Xp,Xp).x
Ys = T(Xp,Xp).y
Ps = −T(Xp,Xp).p
Qs = T(Xp,Xp).q
第3象限Y軸側45度範囲なら、
Xs = −T(Xp,Xp).x
Ys = −T(Xp,Xp).y
Ps = −T(Xp,Xp).p
Qs = −T(Xp,Xp).q
第3象限X軸側45度範囲なら、
Xs = −T(Xp,Xp).y
Ys = −T(Xp,Xp).x
Ps = −T(Xp,Xp).q
Qs = −T(Xp,Xp).p
第4象限X軸側45度範囲なら、
Xs = T(Xp,Xp).y
Ys = −T(Xp,Xp).x
Ps = T(Xp,Xp).q
Qs = −T(Xp,Xp).p
第4象限Y軸側45度範囲なら、
Xs = T(Xp,Xp).x
Ys = −T(Xp,Xp).y
Ps = T(Xp,Xp).p
Qs = −T(Xp,Xp).q
となる(図9参照)。
(7) 矩形画像のRGB値の取得
次に、それぞれの象限で、第2バッファメモリ上の空間画像のXs+Ps,Ys+Qsの座標の近傍4点のRGB値(C1,C2,C3,C4)を読み込む。
C1 = (Xs,Ys),C2 = (Xs+1,Ys),C3 = (Xs,Ys+1),C4 = (Xs+1,Ys+1)
このC1,C2,C3,C4,P,Qの値を利用して、C1ないしC4のそれぞれのRGB値(Cnr、Cng、Cnb)をそれぞれ次式で線形補間をする。
Cr = (C1r×P+C2r×(1−P))×Q+(C3r×P+C4r×(1−P))×(1−Q)
Cg = (C1g×P+C2g×(1−P))×Q+(C3r×P+C4g×(1−P))×(1−Q)
Cb = (C1b×P+C2b×(1−P))×Q+(C3b×P+C4b×(1−P))×(1−Q)
次に、それぞれの象限で、第2バッファメモリ上の空間画像のXs+Ps,Ys+Qsの座標の近傍4点のRGB値(C1,C2,C3,C4)を読み込む。
C1 = (Xs,Ys),C2 = (Xs+1,Ys),C3 = (Xs,Ys+1),C4 = (Xs+1,Ys+1)
このC1,C2,C3,C4,P,Qの値を利用して、C1ないしC4のそれぞれのRGB値(Cnr、Cng、Cnb)をそれぞれ次式で線形補間をする。
Cr = (C1r×P+C2r×(1−P))×Q+(C3r×P+C4r×(1−P))×(1−Q)
Cg = (C1g×P+C2g×(1−P))×Q+(C3r×P+C4g×(1−P))×(1−Q)
Cb = (C1b×P+C2b×(1−P))×Q+(C3b×P+C4b×(1−P))×(1−Q)
このCr,Cg,Cb値が視角θx、θyの矩形画像のピクセル値として矩形画像保持バッファメモリ保存され、この計算を矩形画像の全てのピクセルに対して行った矩形画像データが社内ネットワークで配信サーバー3に送られる。
(8) 配信サーバへの矩形画像の転送
変換用コンピュータ2から配信サーバー3への転送方法は特に限定されないが、320x240ピクセル、32bpp(bit/pixel)、秒間30フレームのデータの場合、データ転送に必要な速度は約73Mbpsになるために、1000BASE−SXや100BASE−TXなどの高速なデータ転送のできるインターフェイスが望ましい。
変換用コンピュータ2から配信サーバー3への転送方法は特に限定されないが、320x240ピクセル、32bpp(bit/pixel)、秒間30フレームのデータの場合、データ転送に必要な速度は約73Mbpsになるために、1000BASE−SXや100BASE−TXなどの高速なデータ転送のできるインターフェイスが望ましい。
(9) 配信サーバ
配信サーバー3は、矩形画像データを受け取ると、動画変換用の画像バッファにデータを保持する。動画変換用の画像バッファは複数のフレームの画像データを保持しているリングバッファである。これは、通常動画は過去の複数フレームのデータを利用してデータを圧縮するためであり、モーションJPEG方式などの現在の画像のみで圧縮を行う方式の場合は配信サーバー3は現在のフレームのデータのみを保持していれば良い。これは、動画のデータ形式によって変わるため、最低1画面分以上を保持できるバッファが必要である。
配信サーバー3は、矩形画像データを受け取ると、動画変換用の画像バッファにデータを保持する。動画変換用の画像バッファは複数のフレームの画像データを保持しているリングバッファである。これは、通常動画は過去の複数フレームのデータを利用してデータを圧縮するためであり、モーションJPEG方式などの現在の画像のみで圧縮を行う方式の場合は配信サーバー3は現在のフレームのデータのみを保持していれば良い。これは、動画のデータ形式によって変わるため、最低1画面分以上を保持できるバッファが必要である。
ユーザー別に違う角度の画像を提供する場合は、配信サーバー3は動画のエンコード時にパノラマ画像データを各ユーザーが選択した方向の所定の大きさの矩形でクリッピングする。この場合は配信サーバー3での処理が多くなるが、そのような場合は配信サーバー3を複数設置して変換用コンピュータ2が複数の配信サーバー3に対してパノラマ画像データを送信をすることにより解決できる。
実用的には例えば、処理能力が十分なユーザー端末4には全体画像を送信してユーザー側でクリッピングし、処理能力が不足するユーザー端末には配信サーバーでユーザが選択した領域の部分画像を全体画像から切り取ってユーザー端末に送信する。
(10) 表示端末への画像データの配信
配信サーバー3は矩形画像データを圧縮(エンコード)し、直ちにそのデータをユーザー端末4へ送信する。これにより、よりリアルタイム性の高い動画データをユーザーに提供することが可能である。
配信サーバー3は矩形画像データを圧縮(エンコード)し、直ちにそのデータをユーザー端末4へ送信する。これにより、よりリアルタイム性の高い動画データをユーザーに提供することが可能である。
なお上述した処理による画像の配信において、図1ではカメラ1、画像変換用コンピュータ2及び配信サーバー3を設けてこれらをネットワークで接続した例を示したが、ハードウェア構成として、カメラと画像処理コンピュータを一体化する構成や、更にカメラと画像処理コンピュータと配信サーバーを総て一体化する構成としても、この発明の方法による画像配信が可能であることは勿論であり、特に携帯電話や小型機器を利用して機動的に画像配信を行いたいときに、ハードウェアを一体化する構成が便利である。このような携帯ないし小型機器のときは、補助記憶装置として、HDDの代わりにメモリカードなどの記憶メディアを使用することも好ましいことである。
1 ビデオカメラ
2 画像変換用サーバ
3 配信サーバ
4 ユーザー端末
5 凸面鏡ないし魚眼レンズ
6 ルータ
7 インターネット
10 CPU
11 メインメモリ
12 ビデオキャプチャインターフェイス
13 ネットワークインターフェイス
14 一次バッファ領域
15 二次バッファ領域
16 変換テーブル領域
2 画像変換用サーバ
3 配信サーバ
4 ユーザー端末
5 凸面鏡ないし魚眼レンズ
6 ルータ
7 インターネット
10 CPU
11 メインメモリ
12 ビデオキャプチャインターフェイス
13 ネットワークインターフェイス
14 一次バッファ領域
15 二次バッファ領域
16 変換テーブル領域
Claims (5)
- 空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを用いて、当該空間画像の極座標系における360度の総ての領域の矩形画像への変換処理を行うことを特徴とする、空間画像変換方法。
- 空間画像のピクセル位置から矩形画像のピクセル位置を換算する変換テーブルを用いて当該空間画像から全領域ないし所定領域の矩形画像を生成する画像変換方法において、空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを用いて、空間画像上のピクセル位置を矩形画像上のピクセル位置に変換することを特徴とする、空間画像の画像変換方法。
- 空間画像の直角座標系における縦横値の交換、符号変換又はその組み合わせ演算により得られる縦横値で参照される変換テーブルを処理コンピュータのメインメモリに読み込み、カメラから処理コンピュータに逐次送信されてくる空間動画像の各フレームを上記変換テーブルを用いて全領域の矩形画像又は観察者が指定する領域の矩形画像に変換して表示端末へ送信する、空間画像のリアルタイム送信方法。
- 変換テーブルが円形ないし環状又は中凸矩形状の空間画像の極座標系における45度、90度又は180度分のテーブルである、請求項1又は2記載の画像変換方法。
- 変換テーブルが円形ないし環状又は中凸矩形状の空間画像の極座標系における45度、90度又は180度分のテーブルである、請求項3記載の空間画像のリアルタイム送信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003351692A JP2004157999A (ja) | 2002-10-18 | 2003-10-10 | 空間画像の画像変換方法及びリアルタイム送信方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002304170 | 2002-10-18 | ||
JP2003351692A JP2004157999A (ja) | 2002-10-18 | 2003-10-10 | 空間画像の画像変換方法及びリアルタイム送信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004157999A true JP2004157999A (ja) | 2004-06-03 |
Family
ID=32827986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003351692A Pending JP2004157999A (ja) | 2002-10-18 | 2003-10-10 | 空間画像の画像変換方法及びリアルタイム送信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004157999A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009140066A (ja) * | 2007-12-04 | 2009-06-25 | Alpine Electronics Inc | 歪曲補正画像生成ユニットおよび歪曲補正画像生成方法 |
CN109104611A (zh) * | 2018-07-11 | 2018-12-28 | 深圳超多维科技有限公司 | 一种用于球面与平面间映射的方法和装置 |
CN111028298A (zh) * | 2019-12-17 | 2020-04-17 | 哈尔滨工业大学 | 一种用于刚体坐标系空间变换标定的汇聚式双目系统 |
US10783657B2 (en) | 2018-05-09 | 2020-09-22 | Neusoft Corporation | Method and apparatus for vehicle position detection |
-
2003
- 2003-10-10 JP JP2003351692A patent/JP2004157999A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009140066A (ja) * | 2007-12-04 | 2009-06-25 | Alpine Electronics Inc | 歪曲補正画像生成ユニットおよび歪曲補正画像生成方法 |
US10783657B2 (en) | 2018-05-09 | 2020-09-22 | Neusoft Corporation | Method and apparatus for vehicle position detection |
CN109104611A (zh) * | 2018-07-11 | 2018-12-28 | 深圳超多维科技有限公司 | 一种用于球面与平面间映射的方法和装置 |
CN111028298A (zh) * | 2019-12-17 | 2020-04-17 | 哈尔滨工业大学 | 一种用于刚体坐标系空间变换标定的汇聚式双目系统 |
CN111028298B (zh) * | 2019-12-17 | 2023-02-03 | 哈尔滨工业大学 | 一种用于刚体坐标系空间变换标定的汇聚式双目系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6331869B1 (en) | Method and apparatus for electronically distributing motion panoramic images | |
US6539547B2 (en) | Method and apparatus for electronically distributing images from a panoptic camera system | |
JP3792901B2 (ja) | カメラ制御システム及びその制御方法 | |
US8326077B2 (en) | Method and apparatus for transforming a non-linear lens-distorted image | |
US10334166B2 (en) | Distributed video panoramic display system | |
CA2530187A1 (en) | Panoramic video system with real-time distortion-free imaging | |
WO2019131577A1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
US9065996B2 (en) | Surveillance system | |
KR101465112B1 (ko) | 카메라 시스템 | |
JP2005333552A (ja) | パノラマ映像配信システム | |
CN107018386A (zh) | 一种视频流多分辨率观测系统 | |
JP2008028606A (ja) | パノラマ展開画像撮像装置およびパノラマ展開画像撮像システム | |
AU2007249585B2 (en) | Real-time capture and transformation of hemispherical video images to images in rectilinear coordinates | |
JPWO2019078033A1 (ja) | 再生装置および方法、並びに、生成装置および方法 | |
CN105959562A (zh) | 获取全景拍摄数据的方法、装置以及便携式全景拍摄设备 | |
US10565679B2 (en) | Imaging device and method | |
Fiala | Pano-presence for teleoperation | |
JP2004157999A (ja) | 空間画像の画像変換方法及びリアルタイム送信方法 | |
JP2019080174A (ja) | 画像処理装置、撮像システム、通信システム、画像処理方法、およびプログラム | |
US20040189876A1 (en) | Remote video recognition system | |
JP6394682B2 (ja) | 方法および画像処理装置 | |
JP3550046B2 (ja) | カメラ画像伝送方法及びカメラ画像伝送システム | |
KR101980086B1 (ko) | 360도 영상 촬영 장치 및 360도 영상 편집 방법 | |
KR100480520B1 (ko) | 영상 전송 방법 및 상기 방법을 이용하는 네트워크 카메라시스템 | |
JP2006013983A (ja) | ビデオカメラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050225 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080129 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080610 |