特表-17163527IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社リコーの特許一覧
再表2017-163527画像処理システム、画像処理方法及びプログラム
<>
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000004
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000005
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000006
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000007
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000008
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000009
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000010
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000011
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000012
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000013
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000014
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000015
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000016
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000017
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000018
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000019
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000020
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000021
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000022
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000023
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000024
  • 再表WO2017163527-画像処理システム、画像処理方法及びプログラム 図000025
< >
(19)【発行国】日本国特許庁(JP)
【公報種別】再公表特許(A1)
(11)【国際公開番号】WO/0
(43)【国際公開日】2017年9月28日
【発行日】2018年12月27日
(54)【発明の名称】画像処理システム、画像処理方法及びプログラム
(51)【国際特許分類】
   H04N 5/232 20060101AFI20181130BHJP
   G06T 3/40 20060101ALI20181130BHJP
   G06T 3/00 20060101ALI20181130BHJP
【FI】
   H04N5/232 380
   H04N5/232 290
   H04N5/232 300
   H04N5/232 939
   G06T3/40 720
   G06T3/00 710
【審査請求】有
【予備審査請求】未請求
【全頁数】25
【出願番号】特願2018-506784(P2018-506784)
(21)【国際出願番号】PCT/0/0
(22)【国際出願日】2016年12月27日
(31)【優先権主張番号】特願2016-57354(P2016-57354)
(32)【優先日】2016年3月22日
(33)【優先権主張国】JP
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】高田 将人
(72)【発明者】
【氏名】庄原 誠
(72)【発明者】
【氏名】鈴木 秀和
(72)【発明者】
【氏名】佐川 幸威
【テーマコード(参考)】
5B057
5C122
【Fターム(参考)】
5B057BA15
5B057CA08
5B057CA12
5B057CA16
5B057CB08
5B057CB12
5B057CB16
5B057CD12
5B057CE10
5B057CH11
5B057CH16
5B057DA07
5B057DA08
5B057DA16
5C122DA04
5C122EA61
5C122FA03
5C122FB03
5C122FC04
5C122FH11
5C122FH20
5C122FK23
5C122FK37
5C122FK41
5C122GE11
5C122HA01
5C122HB01
5C122HB09
(57)【要約】
複数の撮像画像を生成する撮像装置と、前記撮像装置と接続される1以上の情報処理装置とを有する画像処理システムにおいて、前記情報処理装置が、前記撮像装置から、前記撮像画像のうち、少なくとも第1撮像画像及び第2撮像画像をそれぞれ入力し、前記第1撮像画像を変換するのに用いられる第1変換データ及び前記第2撮像画像を変換するのに用いられる第2変換データをそれぞれ取得し、前記第1変換データ及び前記第2変換データに基づいて変換されて生成されるそれぞれの変換画像をつなぎ合わせて出力画像を生成する。
【特許請求の範囲】
【請求項1】
複数の撮像画像を生成する撮像装置と、前記撮像装置と接続される1以上の情報処理装置とを有する画像処理システムであって、
前記情報処理装置は、
前記撮像装置から、前記撮像画像のうち、少なくとも第1撮像画像及び第2撮像画像をそれぞれ入力する入力部と、
前記第1撮像画像を変換するのに用いられる第1変換データ及び前記第2撮像画像を変換するのに用いられる第2変換データをそれぞれ取得する取得部と、
前記第1変換データ及び前記第2変換データに基づいて変換されて生成されるそれぞれの変換画像をつなぎ合わせて出力画像を生成する生成部と
を有する画像処理システム。
【請求項2】
前記取得部は、前記撮像装置ごとに、前記第1変換データ及び前記第2変換データを取得する請求項1に記載の画像処理システム。
【請求項3】
前記第1変換データ及び前記第2変換データは、前記撮像装置を特定できる識別データを有し、
前記撮像装置に対応する識別データを有する前記第1変換データ及び前記第2変換データを用いて、前記第1撮像画像及び前記第2撮像画像を変換する請求項1に記載の画像処理システム。
【請求項4】
前記変換画像をつなぎ合わせるつなぎ位置を調整する請求項1に記載の画像処理システム。
【請求項5】
前記変換画像を移動させる移動量を入力して、前記変換画像をつなぎ合わせるつなぎ位置を調整する請求項1に記載の画像処理システム。
【請求項6】
前記変換画像を移動させる移動量に基づいて、前記変換画像を重ねる量を調整する請求項5に記載の画像処理システム。
【請求項7】
前記撮像装置は、魚眼レンズ又は広角レンズを有する請求項1に記載の画像処理システム。
【請求項8】
前記第1変換データ及び前記第2変換データは、前記第1撮像画像及び前記第2撮像画像を前記出力画像の一部に配置し、かつ、前記第1撮像画像及び前記第2撮像画像を歪補正するデータである請求項1に記載の画像処理システム。
【請求項9】
複数の撮像画像を生成する撮像装置と、前記撮像装置と接続される1以上の情報処理装置とを有する画像処理システムが行う画像処理方法であって、
前記情報処理装置が、前記撮像装置から、前記撮像画像のうち、第1撮像画像及び第2撮像画像をそれぞれ入力する入力手順と、
前記情報処理装置が、前記第1撮像画像を変換するのに用いられる第1変換データ及び前記第2撮像画像を変換するのに用いられる第2変換データをそれぞれ取得する取得手順と、
前記情報処理装置が、前記第1変換データ及び前記第2変換データに基づいて変換されて生成されるそれぞれの変換画像をつなぎ合わせて出力画像を生成する生成手順と
を有する画像処理方法。
【請求項10】
複数の撮像画像を生成する撮像装置と、前記撮像装置と接続される1以上の情報処理装置とを有するコンピュータに画像処理方法を実行させるためのプログラムであって、
前記コンピュータが、前記撮像装置から、前記撮像画像のうち、第1撮像画像及び第2撮像画像をそれぞれ入力する入力手順と、
前記コンピュータが、前記第1撮像画像を変換するのに用いられる第1変換データ及び前記第2撮像画像を変換するのに用いられる第2変換データをそれぞれ取得する取得手順と、
前記コンピュータが、前記第1変換データ及び前記第2変換データに基づいて変換されて生成されるそれぞれの変換画像をつなぎ合わせて出力画像を生成する生成手順と
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理システム、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
従来、複数の画像をつないで、1つの画像を生成する方法が知られている。
【0003】
例えば、画像処理装置が、まず、複数の画像間のつなぎ位置を検出して、検出結果に基づいて、変換データを修正する。次に、画像処理装置が、修正された変換データを回転座標変換して、画像合成用変換データを生成する。このようにして、歪みの大きなレンズ光学系であっても、撮像された複数の画像を高精度につなぎ合わせる方法が知られている(例えば、特許文献1参照)。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の方法では、より精度良く複数の画像をつなぎ合わせるのが難しい場合がある。
【0005】
本発明の1つの側面は、より精度良く複数の画像をつなぎ合わせることを目的とする。
【課題を解決するための手段】
【0006】
一態様において、複数の撮像画像を生成する撮像装置と、前記撮像装置と接続される1以上の情報処理装置とを有する画像処理システムでは、
前記情報処理装置は、
前記撮像装置から、前記撮像画像のうち、少なくとも第1撮像画像及び第2撮像画像をそれぞれ入力する入力部と、
前記第1撮像画像を変換するのに用いられる第1変換データ及び前記第2撮像画像を変換するのに用いられる第2変換データをそれぞれ取得する取得部と、
前記第1変換データ及び前記第2変換データに基づいて変換されて生成されるそれぞれの変換画像をつなぎ合わせて出力画像を生成する生成部と
を有することを特徴とする。
【発明の効果】
【0007】
より精度良く複数の画像をつなぎ合わせることができる。
【図面の簡単な説明】
【0008】
図1】本発明の一実施形態に係る撮像装置の一例を説明する外観図(その1)である。
図2】本発明の一実施形態に係る撮像装置の一例を説明する外観図(その2)である。
図3】本発明の一実施形態に係る撮像装置のハードウェア構成の一例を説明するブロック図である。
図4】本発明の一実施形態に係る魚眼レンズの一例を説明する図(その1)である。
図5】本発明の一実施形態に係る魚眼レンズの一例を説明する図(その2)である。
図6】本発明の一実施形態に係る重複域の一例を説明する図(その1)である。
図7】本発明の一実施形態に係る重複域の一例を説明する図(その2)である。
図8】本発明の一実施形態に係る重複域の一例を説明する図(その3)である。
図9】本発明の一実施形態に係る重複域の一例を説明する図(その4)である。
図10】本発明の一実施形態に係る画像処理システムにおける情報処理装置のソフトウェア構成の一例を説明するブロック図である。
図11】本発明の一実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
図12】本発明の一実施形態に係る画像処理システムにおける情報処理装置による全体処理の一例を示すフローチャートである。
図13】本発明の一実施形態に係る出力画像及び撮像画像の一例を説明する図(その1)である。
図14】本発明の一実施形態に係る出力画像及び撮像画像の一例を説明する図(その2)である。
図15】本発明の一実施形態に係る変換データに基づく変換の一例を説明する図である。
図16】本発明の一実施形態に係る回転変換の一例を説明する図である。
図17】本発明の一実施形態に係る情報処理装置によるつなぎ合わせの一例を説明するフローチャートである。
図18】本発明の一実施形態に係る情報処理装置によるつなぎ位置の検出の一例を説明するフローチャートである。
図19】本発明の一実施形態に係るつなぎ位置の検出におけるパターンマッチングの一例を説明する図(その1)である。
図20】本発明の一実施形態に係るつなぎ位置の検出におけるパターンマッチングの一例を説明する図(その2)である。
図21】本発明の一実施形態に係る出力画像の生成の一例を説明する図である。
図22】本発明の一実施形態に係る画像処理システムの機能構成の一例を説明する機能ブロック図である。
【発明を実施するための形態】
【0009】
以下、本発明の一実施形態について説明する。まず、画像処理システムが有する撮像装置について説明する。
【0010】
<全天球カメラの例>
図1及び図2は、本発明の一実施形態に係る撮像装置の一例を説明する外観図である。例えば、撮像装置は、図示するような全天球カメラ1である。以下、撮像装置が図示する全天球カメラ1である場合を例に説明する。なお、全天球カメラ1は、撮像位置から360°等の広い範囲を撮像する装置である。
【0011】
具体的には、図1は、撮像装置の一例を説明する外観図である。図示するように、全天球カメラ1は、レンズ1H1と、レンズ1H2と、第1撮像素子1H3と、第2撮像素子1H4と、スイッチ(switch)1H5とを有する。なお、全天球カメラ1は、撮像素子及びレンズ等の光学系を3つ以上有する構成でもよい。以下、全天球カメラ1が2つの撮像素子及び2つのレンズを有する構成である例で説明する。
【0012】
レンズ1H1及びレンズ1H2は、例えば、180°以上の画角となる、いわゆる魚眼レンズ又は広角レンズ等である。
【0013】
第1撮像素子1H3及び第2撮像素子1H4は、レンズ1H1及びレンズ1H2によって入射する光を電気信号に変換し、撮像画像を撮像する。すなわち、第1撮像素子1H3及び第2撮像素子1H4は、例えば、CCD(Charge Coupled Device)イメージセンサ又はCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等である。以下、第1撮像素子1H3が撮像した画像に基づく全天球カメラ1が出力する撮像画像を「第1撮像画像」という。一方で、第2撮像素子1H4が撮像した画像に基づく全天球カメラ1が出力する撮像画像を「第2撮像画像」という。なお、各撮像画像は、撮像後、画像処理等によって補正された画像でもよい。
【0014】
スイッチ1H5は、全天球カメラ1に各種処理を開始させるトリガ(trigger)となる操作をユーザが行うための装置である。スイッチ1H5の使用方法等は、後述する。
【0015】
また、図2は、本発明の一実施形態に係る重複域の一例を説明する図である。なお、重複域2は、例えば、図示するように、第1撮像素子1H3及び第2撮像素子1H4が重複して撮像する場所である。つまり、重複域2にある被写体は、第1撮像画像及び第2撮像画像のいずれの撮像画像にも写る被写体である。
【0016】
全天球カメラ1は、スイッチ1H5が押されると、第1撮像素子1H3及び第2撮像素子1H4に露光を行わせ、それぞれ撮像する。
【0017】
なお、以下の全体構成例では、例えば、全天球カメラ1がネットワークI/F等を有し、全天球カメラ1がPC(Personal Computer)等の情報処理装置と接続される。すなわち、画像処理システムは、全天球カメラ1と、情報処理装置とを有する。そして、画像処理システムでは、例えば、全天球カメラ1によって生成される複数の撮像画像が、情報処理装置に送信され、情報処理装置が全天球カメラ1から送信されるそれぞれの撮像画像に対して画像処理をそれぞれ行う構成である。なお、全天球カメラ1は、例えば、以下のようなハードウェア構成の装置である。
【0018】
<全天球カメラのハードウェア構成例>
図3は、本発明の一実施形態に係る撮像装置のハードウェア構成の一例を説明するブロック図である。例えば、全天球カメラ1は、図1及び図2に示すハードウェアに加えて、図示するように、コントローラ(controller)1H10と、SDRAM(Synchronous Dynamic Random Access Memory)1H6と、ストレージ(storage)1H7とを有する。
【0019】
コントローラ1H10は、SRAM(Static Random Access Memory)1H11と、ROM(Read−Only Memory)1H12と、画像処理回路1H13とを有する。また、コントローラ1H10は、SDRAMI/F(interface)1H14と、ストレージI/F1H15と、CPU(Central Processing Unit)1H16とを有する。そして、第1撮像素子1H3及び第2撮像素子1H4は、画像処理回路1H13に接続される。さらに、SDRAM1H6は、SDRAMI/F1H14に接続される。さらに、ストレージ1H7は、ストレージI/F1H15に接続される。さらにまた、スイッチ1H5は、CPU1H16に接続される。
【0020】
SRAM1H11及びROM1H12は、記憶装置である。また、SRAM1H11は、CPU1H16等が使用するプログラム及び中間データを含む各種データ等を記憶する。
【0021】
画像処理回路1H13は、撮像されるそれぞれの画像を入力し、ホワイトバランス等の画像を補正する処理を行う。なお、画像処理回路1H13は、ASIC(Application Specific Integrated Circuit)又はPLD(Programmable Logic Device)等である。
【0022】
SDRAMI/F1H14は、SDRAM1H6とデータ等を入出力するためのインタフェースである。また、SDRAM1H6は、各種データを記憶する記憶装置である。なお、SDRAMI/F1H14は、CPU1H16及び画像処理回路1H13が用いる画像データ等の各種データを入出力する。
【0023】
ストレージI/F1H15は、ストレージ1H7とデータ等を入出力するためのインタフェースである。また、ストレージ1H7は、各種データを記憶する記憶装置である。なお、ストレージI/F1H15は、例えば、画像処理回路1H13に画像処理された画像を示すデータ等をストレージ1H7に記憶させる。
【0024】
CPU1H16は、処理を実現するための演算を行う演算装置及び各ハードウェアを制御する制御装置である。なお、全天球カメラ1は、内部又は外部に、処理の全部又は一部を処理させる演算装置等を有するハードウェア構成でもよい。
【0025】
また、全天球カメラ1が有するレンズ、すなわち、図1に示すレンズ1H1及びレンズ1H2は、例えば、以下のようなレンズである。
【0026】
図4及び図5は、本発明の一実施形態に係る魚眼レンズの一例を説明する図である。具体的には、図4は、本発明の一実施形態に係る魚眼レンズを用いる構成における入射角度と、像高との関係の一例を示す断面図である。一方で、図5は、本発明の一実施形態に係る魚眼レンズを用いる構成における入射角度と、像高との関係の一例を示す平面図である。なお、図5では、黒く塗られた範囲が、光が入射しない範囲の一例を示す。以下、レンズ1H1及びレンズ1H2が魚眼レンズである場合について、レンズ1H1を例に説明する。
【0027】
レンズ1H1を用いる場合では、画像には、全天球カメラ1の位置から半球分の範囲が撮像される。なお、レンズ1H1に入射する光の入射角度を入射角度α、画像の中心から入射角度αの光が結像する位置までの距離を像高h及び入射角度αと像高hとの関係を示す関数を射影関数f(α)とする。そして、射影関数f(α)は、レンズ1H1の性質及び仕様等によってレンズごとに異なる。なお、レンズ1H1が等距離射影方式のレンズである場合には、射影関数f(α)は、像高hと入射角度αとが比例する関係の関数となる。以下、レンズ1H1が等距離射影方式のレンズである場合を例に説明する。
【0028】
<重複域の例>
図6乃至図9は、本発明の一実施形態に係る重複域の一例を説明する図である。なお、図6乃至図9では、図示する第1画像3及び第2画像4が、例えば、各撮像素子によって撮像されるそれぞれの画像である場合を例に説明する。また、図では、黒く塗られた範囲は、図5と同様に、光が入射しない範囲の一例を示す範囲である。また、第1画像3及び第2画像4は、それぞれ重複域2(図2)となる画素を有する。例えば、図示するように、重複域2は、90°以上の入射角度αで撮像されるとする。具体的には、第1画像3では、重複域2は、例えば図示するように、第1範囲31である。同様に、第2画像4では、重複域2は、例えば図示するように、第2範囲41である。このように、重複域2は、例えば、各画像において、入射角度αが90°に対応する画素より外側の範囲で撮像される範囲である。
【0029】
以下、第1画像3は、重複域2を示す第1画素を有し、例えば、第1画素は、第1範囲31の画素である。同様に、第2画像4は、重複域2を示す第2画素を有し、例えば、第2画素は、第2範囲41の画素である。例えば、各画像のつなぎ合わせにおいて、つなぎ合わせる位置の計算等には、第1画素及び第2画素が用いられる。なお、各画像をつなぎ合わせる位置の計算等で用いられる範囲は、第1範囲31及び第2範囲41が有する全範囲でなくともよい。具体的には、各画像をつなぎ合わせる位置の計算等で用いられる範囲は、以下のような範囲でもよい。
【0030】
図8及び図9は、本発明の一実施形態に係る各画像における各種処理で使用される重複域の一例を説明する図である。図示するように、各画像をつなぎ合わせる位置の計算等で用いられる範囲は、第1範囲31及び第2範囲41のうち、一部でもよい。例えば、第1使用範囲32は、第1範囲31のうちの一部であり、各画像をつなぎ合わせる位置の計算等の処理で、第1範囲31の一部が使用される範囲となる例である。同様に、第2使用範囲42は、第2範囲41のうちの一部であり、各画像をつなぎ合わせる位置の計算等の処理で、第2範囲41の一部が使用される範囲となる例である。また、各画像は、像高hが高くなる、つまり、画像では外側の範囲に位置する画素ほど歪及び収差等が悪化する場合が多い。
【0031】
そこで、第1使用範囲32及び第2使用範囲42は、第1範囲31及び第2範囲41のうち、像高hが低い範囲に限定されるのが好ましい。つまり、情報処理装置等は、歪及び収差等が少ない範囲を第1使用範囲32及び第2使用範囲42等とすると、精度良く各画像をつなぎ合わせる位置を計算できる。
【0032】
次に、撮像装置の例である全天球カメラに、ネットワーク又はケーブル等を介して接続される情報処理装置を説明する。例えば、画像処理システムは、以下のようなソフトウェア構成の情報処理装置と、撮像装置とを有する。
【0033】
<ソフトウェア構成例>
図10は、本発明の一実施形態に係る画像処理システムにおける情報処理装置のソフトウェア構成の一例を説明するブロック図である。以下、図示するようなソフトウェア構成の情報処理装置の例であるPC50を例に説明する。具体的には、PC50は、例えば、OS(Operating System)によって構成されるカーネル(Kernel)部KNを有する。他にも、PC50は、あらかじめ画像処理アプリケーションソフトウェアがインストールされることによって構成されるアプリケーション部APを有する。さらに、PC50は、いわゆるビュワーアプリケーションソフトウェアがあらかじめインストールされることによって構成される画像出力部VEを有する。
【0034】
例えば、カーネル部KNは、例えば、USB(Universal Serial Bus)ドライバ等によって構成される。すなわち、画像処理システム10では、カーネル部KNは、USB等のインタフェースによって、全天球カメラ1とPC50とを接続させ、PC50と全天球カメラ1との間でデータ等を入出力する。そして、カーネル部KNは、全天球カメラ1から入力するデータをアプリケーション部APに送る。
【0035】
アプリケーション部APは、カーネル部KNが全天球カメラ1から入力する撮像画像を画像処理し、画像出力部VEがユーザURに表示する出力画像を生成する。なお、撮像画像に対する画像処理の詳細は、後述する。
【0036】
画像出力部VEは、アプリケーション部APが生成する出力画像をユーザURに表示する。また、画像出力部VEは、GUI(Graphical User Interface)等によって、ユーザURからの操作を入力してもよい。例えば、画像出力部VEは、つなぎ合わせに係る設定値等をユーザに設定させる。そして、入力された設定値等は、アプリケーション部APに送られる。このような構成にして、アプリケーション部APが画像処理に用いる設定値等が入力されてもよい。なお、設定値等の詳細は、後述する。また、設定値等を入力するためのGUIは、画像出力部VEが表示するに限られず、他のソフトウェアが表示してもよい。
【0037】
<情報処理装置のハードウェア構成例>
図11は、本発明の一実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。例えば、PC50は、以下のようなハードウェア構成であり、コンピュータである。
【0038】
図示する例では、PC50は、CPU(Central Processing Unit)50H1、ROM(Read−Only Memory)50H2及びRAM(Random Access Memory)50H3を有する。さらに、PC50は、外部I/F(interface)50H4、通信装置50H6、入力装置50H7、出力装置50H8及び記憶装置50H9を有する。
【0039】
CPU50H1は、処理を実現するための演算及びデータの加工を行う演算装置並びにハードウェアを制御する制御装置である。
【0040】
ROM50H2は、ファームウェア等のプログラムを記憶する記憶装置である。
【0041】
RAM50H3は、演算等において、作業領域となる記憶装置である。
【0042】
外部I/F50H4は、接続されるUSBメモリ等の記録媒体50H5と、ファイル等を入出力するインタフェースである。例えば、外部I/F50H4は、コネクタ、ケーブル及びドライバ等である。
【0043】
通信装置50H6は、プリンタPR1等の外部装置とネットワーク等を介して、通信を行う装置である。例えば、通信装置50H6は、コネクタ、ケーブル及びドライバ等である。
【0044】
入力装置50H7は、ユーザによる操作及び接続される外部装置からのデータを入力するインタフェースである。例えば、入力装置50H7は、キーボード、マウス又はこれらの組み合わせ等である。さらに、入力装置50H7は、キーボード又は撮像装置等の外部装置を接続させるコネクタ及びドライバ等である。
【0045】
出力装置50H8は、ユーザに対する表示及び接続される外部装置にデータを出力するインタフェースである。例えば、出力装置50H8は、ディスプレイ等である。さらに、出力装置50H8は、ディスプレイ等を接続させるコネクタ及びドライバ等である。
【0046】
記憶装置50H9は、入力されるデータ及びプログラム等を記憶する。また、記憶装置50H9は、主記憶装置及び補助記憶装置等である。
【0047】
なお、ハードウェア構成は、図示する構成に限られない。例えば、ハードウェア構成は、演算装置、制御装置又は記憶装置等を内部又は外部に更に有する構成でもよい。また、情報処理装置は、1つの装置でなく、複数の装置で構成されてもよい。
【0048】
<全体処理例>
図12は、本発明の一実施形態に係る画像処理システムにおける情報処理装置による全体処理の一例を示すフローチャートである。例えば、画像処理システムにおいて、PCは、全天球カメラから入力する撮像画像に対して、以下のような処理を行う。
【0049】
ステップS101では、PCは、変換データを取得する。なお、変換データは、撮像素子ごとに取得される。すなわち、図1に示す全天球カメラ1がPCに接続される場合には、PCは、2つのそれぞれの撮像素子に対応するそれぞれの変換データを取得する。以下、図1に示す例において、第1撮像素子1H3に対応する変換データを「第1変換データ」という。同様に、図1に示す例において、第2撮像素子1H4に対応する変換データを「第2変換データ」という。つまり、この例では、PCは、全天球カメラ1から第1変換データと、第2変換データとをそれぞれ取得する。
【0050】
また、第1変換データ及び第2変換データは、全天球カメラごとに異なるため、異なる全天球カメラが接続されると、PCは、第1変換データ及び第2変換データを新しく接続された全天球カメラから取得する。
【0051】
以下、第1変換データに基づく変換によって生成される画像、すなわち、第1撮像画像を変換して生成する画像を「第1変換画像」という。一方で、第2変換データに基づく変換によって生成される画像、すなわち、第2撮像画像を変換して生成する画像を「第2変換画像」という。
【0052】
なお、変換データは、全天球カメラ等の撮像装置と紐付けられてもよい。つまり、PCは、撮像装置ごとに、それぞれの第1変換データ及び第2変換データを取得し、記憶する。例えば、変換データは、それぞれの全天球カメラを識別できる全天球カメラのID(Identification)又は識別番号等を示す識別データを有してもよい。そして、全天球カメラがPCに接続されると、PCは、接続された全天球カメラの識別番号等を取得し、接続されている全天球カメラの識別番号等と、以前に取得した変換データが有する識別番号等とを照合する。
【0053】
次に、接続された全天球カメラの識別番号等と同一の識別番号となる変換データを記憶している場合には、PCは、識別データに基づいて特定される変換データを使用してもよい。つまり、PCは、識別データに基づいて、各撮像装置に対応する変換データを使用することができる。
【0054】
例えば、変換データは、下記(表1)のようなLUT(Look Up Table)形式のデータである。
【0055】
【表1】
上記(表1)に示すように、変換データは、変換前の座標と、変換後の座標値とを対応させるデータである。また、変換データは、全天球カメラごとに異なる。全天球カメラは、装置ごとにパラメータが異なる。そのため、パラメータの影響を受ける変換データも、全天球カメラごとに異なる。具体的には、変換データは、いわゆるメッシュファイル等である。つまり、変換データは、例えば、OpenGL(登録商標)において、テクスチャマッピングする際に用いられるデータである。また、変換データに基づいて変換されると、撮像画像は、出力画像の一部に配置され、かつ、歪補正等の処理が行われる。なお、変換データを用いる処理の詳細は、後述するステップS103で説明する。
【0056】
図12に戻り、ステップS102では、PCは、複数の撮像画像を入力する。すなわち、ステップS102では、接続される全天球カメラから複数の撮像画像を入力する。具体的には、図1に示す例では、PCは、2つの撮像画像を入力する。つまり、PCは、図1に示す例では、第1撮像画像及び第2撮像画像をそれぞれ入力する。
【0057】
ステップS103では、PCは、変換画像をつなぎ合わせて出力画像を生成する。まず、ステップS103では、PCは、変換データに基づいて、撮像画像を変換して変換画像を生成する。具体的には、PCは、以下のような変換を行う。
【0058】
図13及び図14は、本発明の一実施形態に係る出力画像及び撮像画像の一例を説明する図である。例えば、PCは、図12に示すステップS103によって、図13に示すような形式の出力画像IMGOUTを生成し、出力する。すなわち、出力画像IMGOUTは、例えば、正距円筒画像である。一方で、図12に示すステップS102では、図14に示す形式の撮像画像が複数入力される。図示するように、撮像画像及び出力画像が有する各画素は、所定の軸に対する角度(以下「垂直角度φ」という。)と、垂直角度φに対して直交する角度(以下「水平角度θ」という。)とを座標値にして特定される。以下、水平角度θは、0°乃至360°であるとする。なお、水平角度θは、−180°乃至180°としてもよい。また、垂直角度φは、0°乃至180°であるとする。なお、垂直角度φは、−90°乃至90°としてもよい。そして、各撮像画像が有する各画素が上記(表1)に示す変換データによって変換されると、変換画像が生成され、生成された変換画像をつなぎ合わせると出力画像が生成される。具体的には、以下のように変換が行われる。
【0059】
図15は、本発明の一実施形態に係る変換データに基づく変換の一例を説明する図である。具体的には、図15(A)は、出力画像IMGOUTの例を示す図である。一方で、図15(B)は、撮像画像の例を示す図である。まず、PCは、上記(表1)に示す変換データに基づいて、撮像画像を変換する。図示するように、上記(表1)に示す変換データに基づいて、撮像画像が有する各画素は、PCによって出力画像IMGOUT上の座標にマッピングされる。このように、上記(表1)に示す変換データは、平面座標系(x,y)で示す撮像画像が有する画素を球面座標系(θ,φ)に射影させるデータである。また、変換データには、図4及び図5で説明するような射影関係が、レンズの仕様等によって反映される。つまり、変換データに基づいて変換されると、歪曲収差等が補正される。なお、変換では、以下のような回転変換が行われてもよい。
【0060】
図16は、本発明の一実施形態に係る回転変換の一例を説明する図である。例えば、図16(A)及び図16(B)で図示するような撮像画像に基づいて、出力画像IMGOUTが出力される場合の例で説明する。この例のように、第1撮像素子1H3(図1)及び第2撮像素子1H4(図1)の設置される向き等によって、図示するように、それぞれの撮像画像の上下の向きが逆の場合がある。そのため、それぞれの被写体が、上下逆となって、いわゆる「天地逆転」の状態で、撮像画像に写る。このような場合には、PCは、変換によって、「天地逆転」を補正する回転変換を行ってもよい。具体的には、この例では、PCは、図16(B)に示す撮像画像の上下を反転させる回転変換を更に行い、図16(C)のように、出力画像IMGOUTを生成してもよい。
【0061】
そして、変換データに基づいて変換された画像をつなぎ合わせて出力画像を生成し、出力する。例えば、つなぎ合わせは、以下のような処理である。
【0062】
図17は、本発明の一実施形態に係る情報処理装置によるつなぎ合わせの一例を説明するフローチャートである。なお、図示する処理は、例えば、図12に示すS103で行われる処理である。
【0063】
ステップS201では、PCは、つなぎ位置を検出する。例えば、つなぎ位置は、変換された各撮像画像において、図2に示す重複域2で撮像される被写体を示す画素が検出される。具体的には、つなぎ位置の検出は、例えば、以下のような処理で実現される。
【0064】
図18は、本発明の一実施形態に係る情報処理装置によるつなぎ位置の検出の一例を説明するフローチャートである。例えば、図17に示すステップS201では、図18に示す処理を行って、第1変換画像と、第2変換画像とをつなぎ合わせるつなぎ位置を検出する。図示する例では、第1変換画像に係る重複域2(図2)が有する画素(θ,φ)ごとに、繰り返しステップS301及びステップS302が行われる。なお、重複域2が有する画素(θ,φ)は、球面座標系(θ,φ)における水平角度θ(図13)が「0°」乃至「360°」であるとする。また、重複域2が有する画素(θ,φ)は、球面座標系(θ,φ)における垂直角度φ(図13)が「φs」乃至「φe」であるとする。なお、「φs」及び「φe」は、レンズの全画角に対応して、あらかじめ定義される重複域2の開始角度と終了角度である。すなわち、「φs」及び「φe」は、重複域2が有する画素(θ,φ)を以下のようにパターンマッチングするため、あらかじめ設定される値である。
【0065】
ステップS301では、PCは、パターンマッチングにおいて、検索される画像(以下「パターン画像」という。)を設定する。例えば、以下のようなパターン画像が設定されるとする。
【0066】
図19及び図20は、本発明の一実施形態に係るつなぎ位置の検出におけるパターンマッチングの一例を説明する図である。以下、図19に図示するようなパターン画像300が設定される例で説明する。具体的には、例えば、図において「☆」で示す画素を中心画素として、「11×11画素」を有する画像が、第1変換画像が有する重複域2(図2)から切り出され、パターン画像300に設定される。なお、球面座標系(θ,φ)において、水平角度θは、両端(すなわち、「0°」及び「360°」である。)がつながっているため、一端と、他端とは、つなげて画素が扱われるとする。
【0067】
図18に戻り、ステップS302では、PCは、つなぎ位置を検出する。例えば、つなぎ位置は、ステップS301で設定されるパターン画像に基づいて、以下のように検出される。
【0068】
図20は、第2変換画像が有する重複域2におけるパターンマッチングによるつなぎ位置の検出方法の例を示す。例えば、つなぎ位置は、図示するように、「ずれ量(Δθ,Δφ)」で示す。具体的には、まず、PCは、第2変換画像が有する重複域2において、図19に図示するパターン画像300を水平角度θ及び垂直角度φ(図では、横及び縦である。)方向に移動させる。そして、PCは、テンプレートマッチング等で用いられる類似度を計算等し、類似度が高くなる位置と、現在、パターン画像300が配置されている位置との距離を計算する。なお、類似度は、例えば、SAD(Sum of Absolute Difference)法又はSSD(Sum of Squared Difference)法等で計算される。他にも、類似度は、例えば、POC(Phase−Only Correlation)法又はZNCC(Zero−mean Normalized Cross−Correlation)法等で計算されてもよい。このようにして計算される距離が、ずれ量(Δθ,Δφ)となる。つまり、図20において、「そのままの位置」にあるパターン画像300がずれ量(Δθ,Δφ)だけ移動すると、パターン画像300は、第2変換画像が有する重複域2が示す画像とマッチする。このようにして、この例では、PCは、計算されるずれ量(Δθ,Δφ)が示す位置をつなぎ位置と検出する。
【0069】
図17に戻り、ステップS202では、PCは、つなぎ合わせによって出力画像を生成する。例えば、出力画像は、以下のように、第1変換画像と、第2変換画像とをつなぎ合わせて合成して、生成される。
【0070】
図21は、本発明の一実施形態に係る出力画像の生成の一例を説明する図である。以下、図示するような第1撮像画像IMG1と、第2撮像画像IMG2とをそれぞれ変換し、つなぎ合わせて、PCが出力画像IMGOUTを生成する場合を例に説明する。
【0071】
第1撮像画像IMG1及び第2撮像画像IMG2は、図示するように、各変換データに基づいてそれぞれ変換されると、第1変換画像IMGC1及び第2変換画像IMGC2となり、かつ、出力画像IMGOUTの一部となるように配置される。
【0072】
図示するように、出力画像IMGOUTが示す画像のうち、第1撮像画像IMG1又は第2撮像画像IMG2にしか画素が存在しない領域は、第1撮像画像IMG1又は第2撮像画像IMG2が有するそれぞれの画素が採用される。一方で、出力画像IMGOUTが示す画像のうち、第1撮像画像IMG1又は第2撮像画像IMG2の両方に画素が存在する領域、すなわち、重複域2は、第1撮像画像IMG1又は第2撮像画像IMG2が有する画素がブレンド処理等されて採用される。なお、各画素は、出力画像IMGOUTの画素に採用される際に、補正されてもよい。
【0073】
ずれ量等によって、つなぎ位置が検出されている場合には、PCは、重複域2において、第1変換画像IMGC1及び第2変換画像IMGC2が有する各画素がつなぎ位置でつなぎ合うように各画像を配置する。なお、つなぎ位置は、ユーザの操作によって調整されてもよい。
【0074】
図10に示すような構成とすると、PCが変換データを有するため、各撮像画像を変換した後、出力画像を生成する上で、変換画像をどこでつなぐかを調整できる。全天球カメラのように、複数の光学系を有する撮像装置は、異なる光学系を有するため、それぞれの撮像において、視差がある場合が多い。そのため、例えば、各撮像画像に写る被写体までの距離によって、つなぎ位置は、異なる。具体的には、各撮像画像に写る被写体までの距離が、一方の撮像画像では、無限遠であって、他方の撮像画像では、近くであるとする。このような場合には、両方とも撮像される距離が無限遠である場合と、つなぎ位置は、異なる場合が多い。ゆえに、つなぎ位置は、調整できるのが望ましい。
【0075】
調整では、例えば、まず、ユーザが、出力される出力画像IMGOUTを見て、つながれている変換画像の一方を移動させる移動量を入力する。以下、図示するように、第2変換画像IMGC2が配置される位置を移動させて調整する例で説明する。なお、調整は、第1変換画像IMGC1が配置される位置を移動させてもよい。
【0076】
移動量は、例えば、図21に示す例において、第2変換画像IMGC2が配置される位置を移動させるφ方向の移動量(以下「第1移動量P1」という。)と、第2変換画像IMGC2が配置される位置を移動させるθ方向の移動量(以下「第2移動量P2」という。)とを示す値である。PCは、少なくとも第1移動量P1又は第2移動量P2のいずれか一方を入力する。例えば、移動量は、画像出力部VE(図10)がスクロールバー等のGUIを表示して、表示されるGUIからユーザの操作を入力すると、PCは、移動量を入力できる。次に、PCは、入力された移動量が示す位置に、第2変換画像IMGC2を配置する。このようにすると、PCは、視差等があっても、精度良く画像をつなぎ合わせることができる。
【0077】
より望ましくは、少なくとも第2移動量P2が入力され、つなぎ位置が調整されるのが望ましい。視差等に基づいて、ずれが生じやすいのは、θ方向である場合が多い。すなわち、各変換画像を重ねる量が、PCによって調整されるのがより望ましい。ゆえに、PCには、第2移動量P2が入力され、θ方向について調整が行われると、PCは、視差等があっても、より精度良く画像をつなぎ合わせることができる。
【0078】
<機能構成例>
図22は、本発明の一実施形態に係る画像処理システムの機能構成の一例を説明する機能ブロック図である。例えば、画像処理システム10は、撮像装置の例である全天球カメラ1と、情報処理装置の例であるPC50とを有する。また、図示する例では、PC50が、入力部10F1と、取得部10F2と、生成部10F3とを有する。
【0079】
入力部10F1は、全天球カメラ1から、撮像画像である少なくとも第1撮像画像及び第2撮像画像をそれぞれ入力する。なお、入力部10F1は、例えば、通信装置50H6(図11)又は入力装置50H7(図11)等によって実現される。
【0080】
取得部10F2は、第1撮像画像を変換するのに用いられる第1変換データ及び第2撮像画像を変換するのに用いられる第2変換データをそれぞれ取得する。なお、取得部10F2は、例えば、通信装置50H6(図11)又は入力装置50H7(図11)等によって実現される。
【0081】
生成部10F3は、第1変換データ及び第2変換データに基づいて変換されて生成されるそれぞれの変換画像をつなぎ合わせて出力画像を生成する。なお、生成部10F3は、例えば、CPU50H1(図11)等によって実現される。
【0082】
画像処理システム10では、PC50は、取得部10F2によって、あらかじめ第1変換データ及び第2変換データを全天球カメラ1から取得する。そのため、PC50は、入力部10F1によって入力される第1撮像画像及び第2撮像画像をPC50側で変換することができる。ゆえに、PC50は、生成部10F3によって、変換画像をつなぎ合わせて出力画像を生成することができる。変換データは、各撮像装置のパラメータ等を反映したデータである。そのため、変換データは、撮像装置ごとに異なる。そこで、図示する構成のように、PC50は、各撮像装置のパラメータ等に合わせた変換を行うため、撮像装置ごとに、変換データを取得すると、PC50は、各撮像画像を変換して、より精度良く複数の変換画像をつなぎ合わせることができ、出力画像を生成することができる。そして、画像処理システム10は、ユーザURに出力画像を出力することができる。
【0083】
また、本発明に係る実施形態は、ファームウェアを含むプログラムによって実現されてもよい。すなわち、情報処理装置又は1以上の情報処理装置を有する画像処理システムに、画像処理方法を実行させるためのプログラムによって、本発明に係る実施形態は、実現されてもよい。また、プログラムは、記録媒体又はネットワーク等を介して、情報処理装置等にインストールされる。なお、記録媒体は、光学ディスク等のコンピュータが読み取り可能な記録媒体である。また、コンピュータが読取可能な記録媒体は、USB(Universal Serial Bus)メモリ等の可搬型記録媒体及びフラッシュメモリ(flash memory)等の半導体メモリ等でもよい。
【0084】
以上、本発明の好ましい実施例について詳述したが、本発明は、説明した特定の実施形態に限定されない。すなわち、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
【0085】
本国際出願は、2016年3月22日に出願された日本国特許出願2016―57354号に基づく優先権を主張するものであり、その全内容を本国際出願に援用する。
【符号の説明】
【0086】
1 全天球カメラ
10 画像処理システム
50 PC
IMG1 第1撮像画像
IMG2 第2撮像画像
IMGC1 第1変換画像
IMGC2 第2変換画像
IMGOUT 出力画像
【先行技術文献】
【特許文献】
【0087】
【特許文献1】特許第5842886号公報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
【国際調査報告】