(57)【特許請求の範囲】
【請求項１】
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
回転角に対応付けられる正規化画像を複数含む前記商品の全周囲画像列であって、画像変換装置から出力された全周囲画像列を、前記受け付けられた角度に基づいて補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
を備え、
商品を異なる位置から撮影したN枚の撮影済画像と、当該N枚の撮影済画像のそれぞれが撮影された際の傾きと、の入力を受け付ける画像受付部、
整数k = 0，1，2，...，N-2のそれぞれについて、前記受け付けられたN枚の撮影済画像のうち第k番目の撮影済画像と、第k+1番目の撮影済画像と、から、対応する特徴点を２つ抽出する抽出部、
前記抽出された２つの特徴点の前記k番目の撮影済画像における位置p[k]，q[k]と、前記抽出された２つの特徴点の前記k+1番目の撮影済画像における位置p[k+1]，q[k+1]と、前記k番目の撮影済画像に対応付けられる傾きR[k]と、前記k+1番目の撮影済画像に対応付けられる傾きR[k+1]と、から、前記k番目の撮影済画像が撮影された撮影位置T[k]と、前記k+1番目の撮影済画像が撮影された撮影位置T[k+1]と、を推定する推定部、
前記N枚の撮影済画像について推定された撮影位置のそれぞれを、前記推定された商品位置から等距離で、当該商品位置を貫く中心軸から等距離である正規化位置に対応付け、前記N枚の撮影済画像のそれぞれを、正規化画像であって当該対応付けられた正規化位置から当該商品位置を向く傾きで当該商品を撮影した画像を近似する画像である正規化画像に変換する近似部、
前記複数の正規化画像と、当該複数の正規化位置のそれぞれの前記中心軸回りの回転角と、当該複数の正規化位置のそれぞれから前記商品を向く傾きと、を対応付けて出力する出力部
を備え、
前記補間部は、
前記全周囲画像列に含まれる正規化画像のうち、前記受け付けられた角度に当該正規化画像に対応付けられる回転角が最も近い正規化画像を選択し、
現実世界を画像に投影するためのアフィン変換行列であって、当該選択された正規化画像に対応付けられる角度に対するアフィン変換行列と、前記受け付けられた角度に対するアフィン変換行列の逆行列と、の積により表現されるアフィン変換を前記正規化画像に施すことにより、前記補間済画像を得る
ことを特徴とする画像処理装置。
【請求項２】
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
回転角に対応付けられる正規化画像を複数含む前記商品の全周囲画像列を、前記受け付けられた角度に基づいて補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
を備え、
前記補間部は、
前記全周囲画像列に含まれる正規化画像B[0]，B[1]，...，B[N-1]のそれぞれに対応付けられる回転角θ[0]，θ[1]，...，θ[N-1]（θ[０]≦θ[１]≦...≦θ[Ｎ−１]）のうち、前記受け付けられた角度φを挟む回転角θ[k]，θ[k+1]に対応付けられる正規化画像B[k]，B[k+1]を選択し、
現実世界を正規化画像B[k]，B[k+1]に投影するためのアフィン変換行列L[k]，L[k+1]と、当該現実世界を画像に投影するための前記受け付けられた角度φに対するアフィン変換行列L(φ)と、から、第１画像L(φ) L[k]-1B[k]と、第２画像L(φ) L[k+1]-1B[k+1]と、を生成し、
前記第１画像L(φ) L[k]-1B[k]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が小さい側の第３画像を抽出し、
前記第２画像L(φ) L[k+1]-1B[k+1]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が大きい側の第４画像を抽出し、
前記第３画像を前記中心軸まわりの回転角が小さい側に、前記第４画像を前記中心軸まわりの回転角が大きい側に、それぞれ配置して並べることにより、前記補間済画像を得る
ことを特徴とする画像処理装置。
【請求項３】
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
回転角に対応付けられる正規化画像を複数含む前記商品の全周囲画像列であって、画像変換装置から出力された全周囲画像列を、前記受け付けられた角度に基づいて補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
を備える画像処理装置であって、
前記画像変換装置は、
商品を異なる位置から撮影したN枚の撮影済画像と、当該N枚の撮影済画像のそれぞれが撮影された際の傾きと、の入力を受け付ける画像受付部、
整数k = 0，1，2，...，N-2のそれぞれについて、前記受け付けられたN枚の撮影済画像のうち第k番目の撮影済画像と、第k+1番目の撮影済画像と、から、対応する特徴点を２つ抽出する抽出部、
前記抽出された２つの特徴点の前記k番目の撮影済画像における位置p[k]，q[k]と、前記抽出された２つの特徴点の前記k+1番目の撮影済画像における位置p[k+1]，q[k+1]と、前記k番目の撮影済画像に対応付けられる傾きR[k]と、前記k+1番目の撮影済画像に対応付けられる傾きR[k+1]と、から、前記k番目の撮影済画像が撮影された撮影位置T[k]と、前記k+1番目の撮影済画像が撮影された撮影位置T[k+1]と、を推定する推定部、
前記N枚の撮影済画像について推定された撮影位置のそれぞれを、前記推定された商品位置から等距離で、当該商品位置を貫く中心軸から等距離である正規化位置に対応付け、前記N枚の撮影済画像のそれぞれを、正規化画像であって当該対応付けられた正規化位置から当該商品位置を向く傾きで当該商品を撮影した画像を近似する画像である正規化画像に変換する近似部、
前記複数の正規化画像と、当該複数の正規化位置のそれぞれの前記中心軸回りの回転角と、当該複数の正規化位置のそれぞれから前記商品を向く傾きと、を対応付けて出力する出力部
を備え、
前記推定部は、前記商品撮影装置により撮影された撮影対象の位置を前記第k番目の画像内の位置に変換する同次座標の変換行列M[k]と、前記第k+1番目の画像内の位置に変換する同次座標の変換行列M[k+1]と、前記位置p[k]の各要素と１とを縦に並べた縦ベクトル(p[k],1)tと、前記位置q[k]の各要素と１とを縦に並べた縦ベクトル(q[k],1)tと、前記位置p[k+1]の各要素と１とを縦に並べた縦ベクトル(p[k+1],1)tと、前記位置q[k+1]の各要素と１とを縦に並べた縦ベクトル(q[k+1],1)tと、についての連立方程式
M[k]-1(p[k],1)t = M[k+1]-1(p[k+1],1)t,
M[k]-1(q[k],1)t = M[k+1]-1(q[k+1],1)t
を解くことにより、前記撮影位置T[k]と、前記撮影位置T[k+1]と、を推定し、
前記補間部は、
前記商品を近似する球体の舟型多円錐図法による展開図の各舟型を、前記全周囲画像列に含まれる正規化画像のうち、その回転角が当該舟型の緯度に最も近い正規化画像から、生成して、当該球体の表面に配置し、
前記受け付けられた角度から前記球体を見た画像を生成することにより、
前記補間済画像を得る
ことを特徴とする画像処理装置。
【請求項４】
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
回転角に対応付けられる正規化画像を複数含む前記商品の全周囲画像列であって、画像変換装置から出力された全周囲画像列を、前記受け付けられた角度に基づいて補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
を備える画像処理装置であって、
前記画像変換装置は、
商品を異なる位置から撮影したN枚の撮影済画像と、当該N枚の撮影済画像のそれぞれが撮影された際の傾きと、の入力を受け付ける画像受付部、
整数k = 0，1，2，...，N-2のそれぞれについて、前記受け付けられたN枚の撮影済画像のうち第k番目の撮影済画像と、第k+1番目の撮影済画像と、から、対応する特徴点を２つ抽出する抽出部、
前記抽出された２つの特徴点の前記k番目の撮影済画像における位置p[k]，q[k]と、前記抽出された２つの特徴点の前記k+1番目の撮影済画像における位置p[k+1]，q[k+1]と、前記k番目の撮影済画像に対応付けられる傾きR[k]と、前記k+1番目の撮影済画像に対応付けられる傾きR[k+1]と、から、前記k番目の撮影済画像が撮影された撮影位置T[k]と、前記k+1番目の撮影済画像が撮影された撮影位置T[k+1]と、を推定する推定部、
前記N枚の撮影済画像について推定された撮影位置のそれぞれを、前記推定された商品位置から等距離で、当該商品位置を貫く中心軸から等距離である正規化位置に対応付け、前記N枚の撮影済画像のそれぞれを、正規化画像であって当該対応付けられた正規化位置から当該商品位置を向く傾きで当該商品を撮影した画像を近似する画像である正規化画像に変換する近似部、
前記複数の正規化画像と、当該複数の正規化位置のそれぞれの前記中心軸回りの回転角と、当該複数の正規化位置のそれぞれから前記商品を向く傾きと、を対応付けて出力する出力部
を備え、
前記推定部は、前記商品撮影装置により撮影された撮影対象の位置を前記第k番目の画像内の位置に変換する同次座標の変換行列M[k]と、前記第k+1番目の画像内の位置に変換する同次座標の変換行列M[k+1]と、前記位置p[k]の各要素と１とを縦に並べた縦ベクトル(p[k],1)tと、前記位置q[k]の各要素と１とを縦に並べた縦ベクトル(q[k],1)tと、前記位置p[k+1]の各要素と１とを縦に並べた縦ベクトル(p[k+1],1)tと、前記位置q[k+1]の各要素と１とを縦に並べた縦ベクトル(q[k+1],1)tと、についての連立方程式
M[k]-1(p[k],1)t = M[k+1]-1(p[k+1],1)t,
M[k]-1(q[k],1)t = M[k+1]-1(q[k+1],1)t
を解くことにより、前記撮影位置T[k]と、前記撮影位置T[k+1]と、を推定し、
前記補間部は、
前記商品を近似する多面体の各面を、前記全周囲画像列に含まれる正規化画像のうち、その傾きが当該面の法線方向に最も近い正規化画像から、生成して、当該球体の表面に配置し、
前記受け付けられた角度から前記多面体を見た画像を生成することにより、
前記補間済画像を得る
ことを特徴とする画像処理装置。
【請求項５】
角度受付部、補間部を有する画像処理装置が実行する画像処理方法であって、
前記角度受付部が、商品を貫通する回転軸周りの角度を受け付ける角度受付工程、
前記補間部が、回転角に対応付けられる正規化画像を複数含む前記商品の全周囲画像列を、前記受け付けられた角度に基づいて補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間工程
を備え、
前記補間工程では、
前記全周囲画像列に含まれる正規化画像B[0]，B[1]，...，B[N-1]のそれぞれに対応付けられる回転角θ[0]，θ[1]，...，θ[N-1]（θ[０]≦θ[１]≦...≦θ[Ｎ−１]）のうち、前記受け付けられた角度φを挟む回転角θ[k]，θ[k+1]に対応付けられる正規化画像B[k]，B[k+1]を選択し、
現実世界を正規化画像B[k]，B[k+1]に投影するためのアフィン変換行列L[k]，L[k+1]と、当該現実世界を画像に投影するための前記受け付けられた角度φに対するアフィン変換行列L(φ)と、から、第１画像L(φ) L[k]-1B[k]と、第２画像L(φ) L[k+1]-1B[k+1]と、を生成し、
前記第１画像L(φ) L[k]-1B[k]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が小さい側の第３画像を抽出し、
前記第２画像L(φ) L[k+1]-1B[k+1]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が大きい側の第４画像を抽出し、
前記第３画像を前記中心軸まわりの回転角が小さい側に、前記第４画像を前記中心軸まわりの回転角が大きい側に、それぞれ配置して並べることにより、前記補間済画像を得る
ことを特徴とする画像処理方法。
【請求項６】
コンピュータを、
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
回転角に対応付けられる正規化画像を複数含む前記商品の全周囲画像列を、前記受け付けられた角度に基づいて補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
として機能させ、
前記補間部が、
前記全周囲画像列に含まれる正規化画像B[0]，B[1]，...，B[N-1]のそれぞれに対応付けられる回転角θ[0]，θ[1]，...，θ[N-1]（θ[０]≦θ[１]≦...≦θ[Ｎ−１]）のうち、前記受け付けられた角度φを挟む回転角θ[k]，θ[k+1]に対応付けられる正規化画像B[k]，B[k+1]を選択し、
現実世界を正規化画像B[k]，B[k+1]に投影するためのアフィン変換行列L[k]，L[k+1]と、当該現実世界を画像に投影するための前記受け付けられた角度φに対するアフィン変換行列L(φ)と、から、第１画像L(φ) L[k]-1B[k]と、第２画像L(φ) L[k+1]-1B[k+1]と、を生成し、
前記第１画像L(φ) L[k]-1B[k]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が小さい側の第３画像を抽出し、
前記第２画像L(φ) L[k+1]-1B[k+1]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が大きい側の第４画像を抽出し、
前記第３画像を前記中心軸まわりの回転角が小さい側に、前記第４画像を前記中心軸まわりの回転角が大きい側に、それぞれ配置して並べることにより、前記補間済画像を得る
前記全周囲画像列に含まれる正規化画像のうち、前記受け付けられた角度に当該正規化画像に対応付けられる回転角が最も近い正規化画像を選択し、
現実世界を画像に投影するためのアフィン変換行列であって、当該選択された正規化画像に対応付けられる角度に対するアフィン変換行列と、前記受け付けられた角度に対するアフィン変換行列の逆行列と、の積により表現されるアフィン変換を前記正規化画像に施すことにより、前記補間済画像を得る
ように機能させることを特徴とするプログラム。
【請求項７】
コンピュータを、
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
回転角に対応付けられる正規化画像を複数含む前記商品の全周囲画像列を、前記受け付けられた角度に基づいて補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
として機能させ、
前記補間部が、
前記全周囲画像列に含まれる正規化画像B[0]，B[1]，...，B[N-1]のそれぞれに対応付けられる回転角θ[0]，θ[1]，...，θ[N-1]（θ[０]≦θ[１]≦...≦θ[Ｎ−１]）のうち、前記受け付けられた角度φを挟む回転角θ[k]，θ[k+1]に対応付けられる正規化画像B[k]，B[k+1]を選択し、
現実世界を正規化画像B[k]，B[k+1]に投影するためのアフィン変換行列L[k]，L[k+1]と、当該現実世界を画像に投影するための前記受け付けられた角度φに対するアフィン変換行列L(φ)と、から、第１画像L(φ) L[k]-1B[k]と、第２画像L(φ) L[k+1]-1B[k+1]と、を生成し、
前記第１画像L(φ) L[k]-1B[k]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が小さい側の第３画像を抽出し、
前記第２画像L(φ) L[k+1]-1B[k+1]を、前記中心軸に平行な分割線により、(φ-θ[k])対(θ[k+1]-φ)に分割して、前記中心軸まわりの回転角が大きい側の第４画像を抽出し、
前記第３画像を前記中心軸まわりの回転角が小さい側に、前記第４画像を前記中心軸まわりの回転角が大きい側に、それぞれ配置して並べることにより、前記補間済画像を得る
前記全周囲画像列に含まれる正規化画像のうち、前記受け付けられた角度に当該正規化画像に対応付けられる回転角が最も近い正規化画像を選択し、
現実世界を画像に投影するためのアフィン変換行列であって、当該選択された正規化画像に対応付けられる角度に対するアフィン変換行列と、前記受け付けられた角度に対するアフィン変換行列の逆行列と、の積により表現されるアフィン変換を前記正規化画像に施すことにより、前記補間済画像を得る
ように機能させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、プログラム、ならびに、情報記録媒体に関し、商品の全周囲画像列から商品を任意の向きから見た画像を得るものである。
【背景技術】
【０００２】
物体の周囲からその物体を順に撮影して得られる複数の画像からなる全周囲画像列は、当該物体の３次元形状モデルを生成する他（たとえば、非特許文献１を参照。）、商品の外観をわかりやすく消費者に見せる等、種々の応用が可能である。
【０００３】
ここで、全周囲画像は、物体を中心とする円周上で、カメラの撮影方向が当該物体を向くように移動させながら、当該物体を含む現実世界の様子を順次撮影することによって得られる。
【０００４】
このため、全周囲画像の撮影には、カメラの位置や向きを上記の設定に合わせるため、特殊な器具を必要とするのが一般的であった。
【０００５】
一方、近年では、安価なディジタルカメラが普及している。ディジタルカメラでは、撮影用のレンズが被写体を含む外界の光を集めてＣＣＤ（Charge Coupled Device）等の画像センサに外界の様子を結像する。
【０００６】
ユーザがシャッターを押すと、その後のある短時間の間に画像センサが感知した光の強さや波長等に基づいて、電子ファイルの形式の画像が得られる。この電子ファイルが、従来の光学式カメラにおける感光済みフィルムや現像済み印画紙に相当する。
【０００７】
さらに、ライブプレビュー、あるいは、ライブビューと呼ばれる技術も普及している。ライブプレビューでは、画像センサが現在検知している画像を、そのままリアルタイムで液晶ディスプレイ等の画面に表示する（たとえば、非特許文献２を参照）。すなわち、ライブプレビューでは、液晶ディスプレイ等による電子ファインダが利用されるのである。
【０００８】
ライブプレビューでファインダ画面に表示される画像は、「ユーザが今、この瞬間にシャッターを押したと仮定した場合に得られるであろう画像」に相当するものである。
【０００９】
したがって、ライブプレビューを利用すれば、ユーザは、撮影の前に、被写体に対する構図や露光などを確認することができる。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】保田和隆，右田剛史，青山正人，椋木雅之，浅田尚紀，疎な全周囲画像列からの密な３次元形状モデルの生成，社団法人情報処理学会研究報告，ＣＶＩＭ，コンピュータビジョンとイメージメディア，２００３−ＣＶＩＭ−１３８（１１），７３頁〜８０頁，http://harp.lib.hiroshima-u.ac.jp/bitstream/harp/6507，２００３年５月８日
【非特許文献２】Wikipedia，The Free Encyclopedia，Live preview，http://en.wikipedia.org/wiki/Live_preview，２０１０年６月１５日
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、中小の商店主やオークションの個人出品者が商品を紹介するための全周囲画像を撮影したい場合には、上記のような特殊な器具を用意できない場合がほとんどである。
【００１２】
また、ユーザが撮影した撮影済画像から全周囲画像列を得ることができた後には、当該全周囲画像列を補間して、商品を任意の向きから見た補間画像を得たい、という要望がある。
【００１３】
本発明は、上記のような課題を解決するもので、商品の全周囲画像列から商品を任意の向きから見た画像を得るのに好適な画像処理装置、画像処理方法、プログラム、ならびに、情報記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の第１の観点に係る画像処理装置は、
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
前記受け付けられた角度に基づいて、商品の全周囲画像列を補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
を備えるように構成する。
【００１５】
また、本発明の画像処理装置において、
前記補間部は、
前記全周囲画像列に含まれる正規化画像のうち、その回転角が前記受け付けられた角度に最も近い正規化画像を選択し、
当該選択された正規化画像を、当該回転角と、当該受け付けられた角度とに基づいてアフィン変換することにより、
前記補間画像を得る
ように構成することができる。
【００１６】
また、本発明の画像処理装置において、
前記補間部は、
前記商品を近似する球体の舟型多円錐図法による展開図の各舟型を、前記全周囲画像列に含まれる正規化画像のうち、その回転角が当該舟型の緯度に最も近い正規化画像から、生成して、当該球体の表面に配置し、
前記受け付けられた角度から前記球体を見た画像を生成することにより、
前記補間画像を得る
ように構成することができる。
【００１７】
また、本発明の画像処理装置において、
前記補間部は、
前記商品を近似する多面体の各面を、前記全周囲画像列に含まれる正規化画像のうち、その傾きが当該面の法線方向に最も近い正規化画像から、生成して、当該球体の表面に配置し、
前記受け付けられた角度から前記多面体を見た画像を生成することにより、
前記補間画像を得る
ように構成することができる。
【００１８】
本発明の第２の観点に係る画像処理方法は、角度受付部、補間部を有する画像処理装置が実行し、
前記角度受付部が、商品を貫通する回転軸周りの角度を受け付ける角度受付工程、
前記補間部が、前記受け付けられた角度に基づいて、商品の全周囲画像列を補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間工程
を備えるように構成する。
【００１９】
本発明の第３の観点に係るプログラムは、コンピュータを、
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
前記受け付けられた角度に基づいて、商品の全周囲画像列を補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
として機能させるように構成する。ことができる。
【００２０】
本発明の第４の観点に係るコンピュータ読取可能な情報記録媒体は、コンピュータを、
商品を貫通する回転軸周りの角度を受け付ける角度受付部、
前記受け付けられた角度に基づいて、商品の全周囲画像列を補間して、当該商品を前記受け付けられた角度から見た様子を表す補間済画像を得る補間部
として機能させるプログラムを記録するように構成する。
【００２１】
すなわち、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。
【００２２】
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、コンピュータとは独立して配布・販売することができる。
【発明の効果】
【００２３】
本発明によれば、商品の全周囲画像列から商品を任意の向きから見た画像を得るのに好適な画像処理装置、画像処理方法、プログラム、ならびに、情報記録媒体を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の一つの実施形態に係る画像処理システムの概要構成を示す説明図である。
【図２】本発明の一つの実施形態に係る商品撮影装置の概要構成を説明する説明図である。
【図３】撮影済画像と、ライブプレビュー画像と、ファインダ画面に表示される画像と、の関係を示す説明図である。
【図４】撮影済画像と、ライブプレビュー画像と、ファインダ画面に表示される画像と、の関係を示す説明図である。
【図５】本発明の一つの実施形態に係る商品撮影装置にて実行される商品撮影処理の制御の流れを示すフローチャートである。
【図６】本発明の一つの実施形態に係る画像変換装置の概要構成を示す説明図である。
【図７】本実施形態に係る画像変換装置にて実行される画像変換処理の制御の流れを示すフローチャートである。
【図８】本実施形態に係る画像処理装置の各要素と、端末装置の各要素と、の関係を示す説明図である。
【図９】画像処理装置の各要素と、端末装置の各要素と、において実行される画像処理の制御の流れを示すフローチャートである。
【発明を実施するための形態】
【００２５】
以下に本発明の実施形態を説明する。本実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００２６】
（１．画像処理システム）
図１は、本実施形態に係る画像処理システムの概要構成を示す説明図である。以下、本図を参照して説明する。
【００２７】
本実施形態に係る画像処理システム１０１は、商品撮影装置１２１、画像変換装置１４１、画像処理装置１６１、端末装置１８１から構成される。
【００２８】
商品撮影装置１２１は、商品の紹介を行おうとする商店主やオークション出品者等が、当該商品を撮影する際に使用するものである。典型的には、商品撮影装置１２１は、情報処理機能を有するディジタルカメラや携帯電話、スマートフォンなどにより構成されるが、ＵＳＢ（Universal Serial Bus）カメラが接続されたパーソナルコンピュータ等により構成することも可能である。
【００２９】
撮影者は、商品撮影装置１２１を用いて、その商品が視野のできるだけ中央に配置され、商品と商品撮影装置１２１との距離ができるだけ一定であるようにする。そして、撮影者は、その商品の周りをぐるりと一周しながら、あるいは、商品自体を回転させながら、撮影を繰り返し、複数の商品画像を得る。
【００３０】
画像変換装置１４１は、商品撮影装置１２１による撮影により得られた複数の商品画像を、当該商品に対する全周囲画像列に変換するものである。ここで、全周囲画像列とは、当該商品を貫通する回転軸を中心とする円周上を移動するカメラから、当該商品を向く光軸方向で、当該商品を撮影したと想定した際に得られる画像の集合体である。
【００３１】
したがって、回転軸から商品を経てカメラに至る角度は一定であり、回転軸とカメラの距離も一定であり、商品とカメラの距離が一定であるような状況で撮影されたと想定した画像が全周囲画像である。
【００３２】
上記のように、商品撮影装置１２１を利用する撮影者は、このような特殊な撮影法に熟達しているわけでもなく、特殊な器具を有しているわけでもない。そこで、本実施形態では、商品撮影装置１２１を利用する際に、できるだけ全周囲画像の列が得やすくなるように、種々の補助を行う。
【００３３】
すなわち、撮影の際には、本実施形態では、ライブプレビュー用に、液晶ディスプレイ等の電子ファインダを利用する。電子ファインダのファインダ画面には、商品撮影装置１２１から見た商品の現在の様子が表示されるほか、過去に撮影済みの商品の様子も重ねて表示される。
【００３４】
したがって、撮影者は、商品がどのような大きさで、どのような角度で撮影されるか、を、過去の履歴と対比しながら撮影することができる。このため、回転軸から商品を経て商品撮影装置１２１に至る角度や、商品と商品撮影装置１２１の距離をできるだけ一定とすることができるのである。
【００３５】
画像変換装置１４１は、複数の商品画像を全周囲画像列に変換するが、本実施形態で得られる変換結果は、ある種の近似であり、非特許文献１に開示されるような複雑な計算を必要としない点にも、本実施形態の特徴がある。
【００３６】
画像変換装置１４１は、商品画像から全周囲画像列を得るものであり、画像処理装置１６１は、商品の全周囲画像列を管理するものであるが、典型的には、両者は、当該商品のネット販売を行う１つのサーバ装置により構成される。
【００３７】
すなわち、商店主等は、自身がディジタルカメラ等の商品撮影装置１２１により撮影した複数の商品画像を、サーバ装置にアップロードする。
【００３８】
すると、サーバ装置は、画像変換装置１４１として機能して、商品画像を全周囲画像列に変換する。
【００３９】
さらに、サーバ装置は、画像処理装置１６１として機能して、この全周囲画像列を、当該商品をネット通信販売やネットオークションで購入するかを検討しているユーザに閲覧させる。この際に、全周囲画像列をそのままユーザに提供するのではなく、ユーザの興味を惹くような適切な画像処理を行うことも、本実施形態の特徴がある。
【００４０】
ウェブサーバとして機能する画像処理装置１６１に対して、端末装置１８１は、ウェブ端末として機能して、画像処理装置１６１に全周囲画像列の適切な提供を求める。すなわち、端末装置１８１は、ウェブ等のコンピュータ通信網に接続が可能なパーソナルコンピュータや携帯電話、スマートフォン等により構成される。
【００４１】
全周囲画像列は、商品の周囲をぐるりと一周したときに見える様子を画像にして、これを順次並べた列である。
【００４２】
本実施形態では、端末装置１８１から、この一周の中のどの角度のときの画像が見たいか、を、画像処理装置１６１に通知する。
【００４３】
すると、画像処理装置１６１は、全周囲画像に対して適宜補間処理を施して、その角度に応じた商品の外観を表す補間画像を生成する。
【００４４】
そして、画像処理装置１６１から補間画像が端末装置１８１に送信され、端末装置１８１のモニタ画面に当該補間画像が表示される。
【００４５】
端末装置１８１からは、キーボードやタッチパネルを利用して、ユーザが直接角度を入力するように構成することも可能である。ただし、携帯電話やスマートフォン等には、コンパス機能やＧＰＳ（Global Positioning System）機能、加速度センサ等を用いた傾き検知機能を持つものがある。
【００４６】
したがって、このような機能により得られた角度をそのまま、あるいは当該角度を定数倍したものを用いると、端末装置１８１の向きを変えるだけで、補間画像に表現される商品の向きを変化させることができる。このように、ユーザが簡易な操作で商品の外観をぐるりと一周観察することができる点にも、本実施形態の特徴がある。
【００４７】
なお、本実施形態では、画像処理装置１６１と端末装置１８１とを別の機器により構成しているが、両者を一つのパーソナルコンピュータやスマートフォン、携帯電話等により一体に構成することとしても良い。この場合、端末装置１８１と画像処理装置１６１との情報の送信ならびに受信は、１つの機器の電子回路内における電気信号の送受によって実現される。
【００４８】
たとえば、画像変換装置１４１を構成するウェブサーバから、スマートフォンに、商品の全周囲画像列をダウンロードする。そして、スマートフォンが画像処理装置１６１として機能して、その傾きに応じて、スマートフォンが全周囲画像列から補間画像を生成して、モニタ画面に表示する、というものである。
【００４９】
このように、本発明に係る画像処理の各機能を、各種のサーバ・クライアント方式により分散させて実現するか、それとも一体の装置により実現するか、は、画像処理を実現するコンピュータ等の情報処理装置の用途や性能に応じて、適宜変更が可能である。
【００５０】
以下、本実施形態に係る画像処理システム１０１の各部について、さらに詳細に説明する。
【００５１】
（２．商品撮影装置）
図２は、本実施形態に係る商品撮影装置１２１の概要構成を説明する説明図である。以下、本図を参照して説明する。
【００５２】
商品撮影装置１２１は、画像センサ部２０１、指示受付部２０２、保存部２０３、ファインダ表示部２０４を備える。また、傾きセンサ部２０５を備えるように構成しても良い。
【００５３】
すなわち、画像センサ部２０１は、商品が配置された外界から投射された光を感知して、当該感知の結果を表す画像を出力する。
【００５４】
典型的には、画像センサ部２０１は、ＣＣＤ等の画像センサにより構成される。画像センサ部２０１に感知される光は、レンズや各種の絞りを経て到達したものである。
【００５５】
一方、指示受付部２０２は、ユーザからの撮影指示を受け付ける。指示受付部２０２は、いわゆるシャッターボタンに相当するものである。
【００５６】
さらに、保存部２０３は、撮影指示が受け付けられると、画像センサ部２０１により感知されている画像を保存する。
【００５７】
保存部２０３は、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）などにより構成されるフラッシュメモリカードやハードディスク等の不揮発性の情報記憶媒体に、撮影された画像ファイルを記録するのが一般的である。
【００５８】
そして、ファインダ表示部２０４は、画像センサ部２０１により感知されている画像をファインダ画面に表示する。
【００５９】
撮影者は、ファインダ画面に表示される画像を参照しながら、商品撮影装置１２１の位置や向きの調整、ピント合わせや絞りの調整を行う。
【００６０】
ここまでの各部の機能は、ライブプレビュー機能が塔載されたディジタルカメラと同様である。
【００６１】
本実施形態では、ファインダ表示部２０４は、画像センサ部２０１により感知されている画像をファインダ画面に表示する際に、保存部２０３により保存された画像と合成する点に、特徴がある。
【００６２】
この合成においては、過去に撮影済みの視野を表す画像と、現在撮影しようと視野を表す画像と、が、ファインダ画面に重ねられて表示される。したがって、撮影者は、両者の画像をリアルタイムで対比しながら、商品撮影装置１２１の位置や向きの調整を行うことができる。
【００６３】
２つの画像を重ねるための合成の手法として最も単純なものは、保存部２０３により保存された画像（撮影済画像）を半透明にして、画像センサ部２０１により感知されている画像（ライブプレビュー画像）にライブプレビューの画像に重ねて合成してファインダ画面に表示する手法である。
【００６４】
図３、図４は、撮影済画像と、ライブプレビュー画像と、ファインダ画面に表示される画像と、の関係を示す説明図である。以下、これらの図を参照して説明する。なお、これらの図では、半透明を表現するために、適宜点線を利用するものとする。
【００６５】
図３には、商品３０１がほぼ中央に配置する撮影済画像３１１と、同じく商品３０１がほぼ中央に配置するライブプレビュー画像３２１と、が示されている。両者では、商品３０１の角度が微妙に異なっている。
【００６６】
撮影済画像３１１を半透明にしてライブプレビュー画像３２１に重ねて合成した結果得られるファインダ画像３３１では、２つの商品３０１の画像が、ほぼ同じ大きさで重なって表示されている。したがって、現在の状態でシャッターを切れば、全周囲画像列に変換する際に、誤差を小さくすることができる。
【００６７】
一方、図４では、撮影済画像３１１では商品３０１がほぼ中央に配置されているが、ライブプレビュー画像３２１では、商品３０１の位置や大きさは、撮影済画像３１１とは大きく異なっている。
【００６８】
すると、撮影済画像３１１を半透明にしてライブプレビュー画像３２１に重ねて合成した結果得られるファインダ画像３３１では、２つの商品３０１の画像は、ほとんど重なっていない。したがって、現在の状態でシャッターを切ってライブプレビュー画像３２１と同じ様子を表す新たな撮影済画像３１１を得たとしても、全周囲画像列に変換する際に、誤差が大きくなると考えられる。
【００６９】
すなわち、撮影者は、図３のように、過去に撮影した商品３０１の画像と、現在見えている商品３０１の画像と、が、できるだけ同じ大きさで、少しだけ見える角度が違うように商品撮影装置１２１の位置を調整してから、撮影のための指示入力を与えれば良いことになる。
【００７０】
なお、撮影者が商品撮影装置１２１を動かしたとしても、撮影済画像３１１内の商品３０１やその背景の位置は変化しないが、ライブプレビュー画像３２１内の商品３０１やその背景の位置は、撮影者の動きに連動して変化する。
【００７１】
したがって、撮影者は、ファインダ画像３３１のうち、どれが撮影済画像３１１に由来する画像であり、どれがライブプレビュー画像３２１に由来する画像であるか、を、容易に区別することができる。
【００７２】
また、両者の区別をより一層明確にするためには、撮影済画像３１１に対して色彩フィルタや、輪郭線抽出フィルタを施してから、ライブプレビュー画像３２１に合成するという手法もある。
【００７３】
この他の手法としては、撮影済画像３１１と、ライブプレビュー画像３２１とを、交互にファインダ画面に表示する形態が考えられる。上記のように、ファインダ画面に表示されている画像がライブプレビュー画像３２１か撮影済画像３１１かは、撮影者の動きにファインダ画面の表示が追随するかそれとも固定されているか、によって区別できる。
【００７４】
したがって、両画像を表示する時間長は、任意に設定することができる。ただし、一般には、ライブプレビュー画像３２１の表示時間が、撮影済画像３１１の表示時間よりも長くなるように、両者の表示切り替え時間を設定する。
【００７５】
合成の対象となる撮影済画像３１１は、当該商品３０１の撮影を開始した時点の画像を採用するのが一般的であるが、撮影者が適宜選択できるようにしても良い。また、直前に撮影した画像を撮影済画像３１１として採用して合成することも可能である。
【００７６】
さて、傾きセンサ部２０５は、商品撮影装置１２１の傾きを感知し、保存部２０３は、撮影指示が受け付けられると、画像センサ部２０１により感知されている画像を傾きセンサ部により感知されている傾きに対応付けて保存する。
【００７７】
商品の周囲をぐるりと一周して撮影する際には、その回転軸は、重力の方向とするのが一般的である。この場合には、傾きセンサ部２０５は、加速度センサにより構成することができる。これに合わせて、ＧＰＳやコンパスなどの機能により、傾きを検知することとしても良い。
【００７８】
加速度センサにより、商品撮影装置１２１の重力方向の軸に対する傾きを検知するとともに、ＧＰＳやコンパスなどを利用して、商品撮影装置１２１の重力方向の軸回りの回転量を検知すれば、傾きセンサ部２０５で、商品撮影装置１２１の３軸方向の傾きをすべて検知することができる。これにより、現実世界における商品撮影装置１２１の姿勢を、すべて把握することができる。これらの３軸方向の傾きの情報は、後述する画像変換装置１４１で、撮影済画像３１１を正規化して全周囲画像列を得る際に参照される。
【００７９】
上記のように、適切な全周囲画像を得るためには、回転軸から商品３０１を経て商品撮影装置１２１に至る角度が一定であること、すなわち、重力に対する傾きが一定であることが望ましい。
【００８０】
したがって、ファインダ画像３３１に、補助情報として、現在検知されている商品撮影装置１２１の傾き、すなわち、ライブプレビュー画像３２１の傾きの情報と、撮影済画像３１１の撮影時の傾きの情報と、を表示すれば、撮影者は、できるだけ一定の角度で商品３０１を撮影することができ、全周囲画像列への変換の際の誤差を小さくすることができる。
【００８１】
本実施形態では、図３、図４に示すように、ファインダ画像３３１内に、ライブプレビュー画像３２１の傾きを表す棒グラフ３２２と、撮影済画像３１１の傾きを表す棒グラフ３１２と、が、表示される。撮影者は、両棒グラフ３１２、３２２の長さが一致するようにしてから撮影を行うように心掛ければ良い。
【００８２】
なお、傾きを表す手法としては、棒グラフ３１２、３２２に限らず、一致と不一致の度合を表現できる任意の図形を採用することができる。また、傾きの数値を文字情報により表示することとしても良い。
【００８３】
図５は、本実施形態に係る商品撮影装置１２１にて実行される商品撮影処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【００８４】
本処理は、商品撮影装置１２１を構成するディジタルカメラ等において、商品の全周囲画像列の素材となる画像の撮影を開始する旨のユーザが選択することによって開始される。
【００８５】
まず、商品撮影装置１２１において、画像センサ部２０１が、商品が配置された外界から投射された光を感知して、当該感知の結果を表す画像を出力する（ステップＳ５０１）。ここで出力される画像が、ライブプレビュー画像３２１である。
【００８６】
ついで、傾きセンサ部２０５が、商品撮影装置１２１の現在の傾きを取得する（ステップＳ５０２）。
【００８７】
ついで、指示受付部２０２において、ユーザからの撮影指示がなされたか否かを判定する（ステップＳ５０３）。
【００８８】
ユーザからの撮影指示がなされた場合（ステップＳ５０３；Ｙｅｓ）、保存部２０３が、ライブプレビュー画像３２１と、ステップＳ５０２において検知された傾きと、を、対応付けて保存する（ステップＳ５０４）。この後、制御はステップＳ５０１に戻る。
【００８９】
一方、ユーザからの撮影指示がなされていない場合（ステップＳ５０２；Ｎｏ）、本処理が開始されて以降に保存部２０３に保存された画像、すなわち、撮影済画像３１１があるか否かを調べる（ステップＳ５０５）。
【００９０】
撮影済画像３１１が存在する場合（ステップＳ５０５；Ｙｅｓ）、いずれかの撮影済画像３１１を選択する（ステップＳ５０６）。この選択は、上記のように、最初に撮影された画像としても良いし、処理の途中で適宜ユーザが変更できることとしても良いし、直前に撮影された画像としても良い。
【００９１】
そして、選択された撮影済画像３１１を半透明にして、ライブプレビュー画像３２１と合成する（ステップＳ５０７）。この際には、上記のように、撮影済画像３１１に色彩フィルタや輪郭抽出フィルタ等を施してから合成することとしても良い。また、上記のように、時分割でいずれかの画像を選択し、当該選択された画像を合成の結果とすることとしても良い。
【００９２】
さらに、選択された撮影済画像３１１に対応付けられる傾きと、ステップＳ５０２において取得された商品撮影装置１２１の現在の傾きと、を、表す棒グラフ３１２、３２２をステップＳ５０６の合成結果に描画して、ファインダ画像３３１を得る（ステップＳ５０８）。
【００９３】
そして、ファインダ表示部２０４が、ファインダ画像３３１を、液晶ディスプレイ等により構成されるファインダ画面に表示し（ステップＳ５０９）、ステップＳ５０１に戻る。
【００９４】
一方、撮影済画像が存在しない場合（ステップＳ５０５；Ｎｏ）、ライブプレビュー画像３２１にステップＳ５０２において取得された商品撮影装置１２１の現在の傾きを表す棒グラフ３２２を描画して、ファインダ画像３３１を得る（ステップＳ５１０）。
【００９５】
そして、ファインダ表示部２０４が、ファインダ画像３３１を、液晶ディスプレイ等により構成されるファインダ画面に表示し（ステップＳ５１１）、ステップＳ５０１に戻る。
【００９６】
なお、傾きセンサ部２０５を省略した態様では、傾きに係る処理も適宜省略される。
【００９７】
本実施形態では、商品撮影装置１２１の重力に対する傾きを棒グラフ３１２、３２２としてファインダ画像３１１内に描画している。
【００９８】
このように、本実施形態に係る画像撮影装置１２１によれば、過去に撮影した商品の画像と、現在の商品のライブプレビューの画像と、が、重ねられてファインダ画面に表示されるので、商品と画像撮影装置１２１との距離をできるだけ一定に保つことができる。
【００９９】
また、傾きを検知する態様では、画像撮影装置１２１を、所定の回転軸に対してできるだけ一定の姿勢で回転するように移動させることができる。
【０１００】
したがって、ユーザは、商品の全周囲画像列に高い品質で変換することができる画像を、容易に撮影することができるようになる。
【０１０１】
（３．画像変換装置）
上記のように、画像撮影装置１２１を利用すれば、商品３０１の回りをぐるりと一周するように、かつ、商品３０１に対する距離や重力の方向に対する傾きをできるだけ一定に保ちながら、画像撮影装置１２１を移動させ、商品３０１を順次撮影することができる。
【０１０２】
このような撮影手法によって複数の撮影済画像３１１が得られたら、これらを正規化して、商品３０１の全周囲画像列を得ることができる。この際に、本実施形態の画像変換装置１４１が利用される。
【０１０３】
ここで、商品３０１の全周囲画像列とは、商品３０１を貫通するような回転軸を想定し、この回転軸から商品３０１を経てカメラに至る角度を一定に保ち、商品３０１とカメラとの距離を一定に保ちながら、カメラを回転軸の周りで回転させ、商品３０１を順次撮影したと仮定したときに得られる画像の列のことである。
【０１０４】
したがって、画像撮影装置１２１により撮影された複数の撮影済画像３１１は、「誤差の大きな全周囲画像列」と考えることができる。画像撮影装置１２１においては、上記の角度や距離をできるだけ一定に保ちながら商品３０１を撮影する工夫がなされているが、人間による撮影では、どうしても撮影時に誤差が生じてしまうからである。
【０１０５】
画像変換装置１４１は、複数の撮影済画像３１１を変換して、できるだけ誤差の小さい全周囲画像列を得るものである。
【０１０６】
ここで、本実施形態においては、撮影対象物の３次元モデルを構築する非特許文献１とは異なり、簡易な計算によって全周囲画像列を得ることができる。以下、詳細に説明する。
【０１０７】
図６は、本実施形態に係る画像変換装置１４１の概要構成を示す説明図である。以下、本図を参照して説明する。
【０１０８】
本実施形態に係る画像変換装置１４１は、画像受付部６０１、変換部６０２を有する。
【０１０９】
ここで、画像受付部６０１は、商品をその周囲から商品撮影装置１２１により撮影して保存された複数の撮影済画像３１１を受け付ける。
【０１１０】
画像変換装置１４１がウェブサーバなどにより構成される場合には、撮影者は、自身が撮影した撮影済画像３１１を、インターネットなどを介してアップロードする。画像受付部６０１は、このアップロードを受け付けるものである。
【０１１１】
なお、商品撮影装置１２１が撮影済画像３１１を画像変換装置１４１に自動的に送信するような形態を採用しても良い。この態様では、商品撮影装置１２１は、撮影済画像３１１の保存が所定の数行われるごとに、あるいは、所定の時間撮影がされなかった場合に自動的に撮影済画像３１１を送信を行う。この態様は、特に、ＰＤＡ（Personal Data Assistant）やスマートフォン等の携帯型コンピュータにおいて所定のプログラムを実行することにより、商品撮影装置１２１を実現する場合に好適である。
【０１１２】
また、画像撮影装置１２１がディジタルカメラなどにより構成され、画像変換装置１４１がパーソナルコンピュータなどにより構成される場合には、両者の間でメモリカードを抜挿することによって撮影済画像３１１を移動する。
【０１１３】
一方、変換部６０２は、受け付けられた複数の撮影済画像３１１を商品３０１の全周囲画像列に変換する。
【０１１４】
ここで、本実施形態の変換部６０２は、さらに、抽出部６１１、推定部６１２、近似部６１３、出力部６１４から構成されている。
【０１１５】
ここで、抽出部６１１は、撮影済画像３１１を順に２枚ずつ取得する。そして、取得された２枚の撮影済画像３１１から、対応する特徴点を抽出する。この際には、各種の画像認識アルゴリズムを適用することが可能である。
【０１１６】
対応する特徴点が得られたら、２枚の撮影済画像３１１内における特徴点の配置から、当該２枚の撮影済画像３１１を撮影したときの商品撮影装置１２１の位置と向きとを推定して、これら２枚の撮影済画像３１１のそれぞれを正規化するためのアフィン変換行列を求める。ここで用いるアフィン変換は、拡大縮小、回転、斜行変換のほか、一点透視による透視変換を含むものである。このため、行列を表現する際には、適宜同次座標を用いる。
【０１１７】
なお、以下では、表記を簡易にして理解を容易にするため、混乱の生じない限り、元の行列やベクトルと、同次座標とするために追加された定数の次元を増やした行列やベクトルと、を、同じ記号で表記することがある。
【０１１８】
そして、近似部６１３は、２枚の撮影済画像３１１のそれぞれに対して得られたアフィン変換行列に基づくアフィン変換を当該撮影済画像３１１に適用して、正規化する。正規化済画像は、全周囲画像列に含まれるべき画像を近似するものである。
【０１１９】
出力部６１４は、ここで得られる２枚の正規化済画像と、これらが、回転軸周りにどれだけの差角で撮影されたか、を出力する。
【０１２０】
以下、画像変換装置１４１にて実行される画像変換処理の制御の流れを、さらに詳細に説明する。
【０１２１】
図７は、本実施形態に係る画像変換装置１４１にて実行される画像変換処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【０１２２】
まず、画像受付部６０１が、商品撮影装置１２１により撮影して保存された複数の撮影済画像３１１と、各撮影済画像３１１に対応付けられる傾きと、を受け付ける（ステップＳ７０１）。以下、理解を容易にするため、これらの撮影済画像３１１がN枚であるものとし、各撮影済画像をG[0]，G[1]，…，G[N-1]と表記する。また、各画像G[0]，G[1]，…，G[N-1]を撮影したときの傾きをR[0]，R[1]，…，R[N-1]とする。
【０１２３】
なお角括弧によって表現している添字部は、以降では、Nにかかる剰余類により表現されているものとする。すなわち、添字部の整数が負であったり、N以上であった場合には、これをNで割った余りを添字の値として利用する。たとえば、傾きR[N]は、傾きR[0]と同じものを意味し、画像G[-1]は、画像R[N-1]と同じものを意味する。
【０１２４】
傾きR[0]，R[1]，…，R[N-1]は、商品撮影装置１１２に固定されるカメラ座標系の各座標軸の方向を決定する情報である。したがって、傾きR[0]，R[1]，…，R[N-1]のそれぞれの自由度は６である。
【０１２５】
ただし、各座標軸の方向を表す単位ベクトルを並べることによって３行３列の行列により表現するのが一般的である。
【０１２６】
次に、0からNまでの間で整数kを変化させて以下の処理を繰り返す（ステップＳ７０２）。
【０１２７】
すなわち、抽出部６１１が、画像G[k]と画像G[k+1]から、対応する特徴点を抽出する（ステップＳ７０３）。
【０１２８】
ついで、推定部６１２は、抽出された特徴点の組のうち、いずれか３つの組を選択する（ステップＳ７０４）。この３つの組の選択の手法は任意であるが、画像G[k]内において、選択される対応点同士の距離が離れており、画像G[k+1]内においても、選択される対応点同士の距離が離れているように選択すると、誤差を抑えることができる。商品の天辺、底辺、左辺中央、右辺中央の近傍の特徴点から、いずれか３つを選択することとしても良い。
【０１２９】
以下、３つの特徴点をそれぞれP，Q，Wと呼ぶこととする。画像G[k]内においてこれらの特徴点が描画されている位置をp[k]，q[k]，w[k]、画像G[k+1]内においてこれらの特徴点が描画されている位置をp[k+1]，q[k+1]，w[k+1]と表記するものとする。
【０１３０】
そして、推定部６１２は、
（１）特徴点Pの画像G[k]，G[k+1]における位置p[k]，p[k+1]と、
（２）特徴点Qの画像G[k]，G[k+1]における位置q[k]，q[k+1]と、
（３）特徴点Wの画像G[k]，G[k+1]における位置w[k]，w[k+1]と、
（４）画像G[k]を撮影したときの商品撮影装置１２１の傾きR[k]と、
（５）画像G[k+1]を撮影したときの商品撮影装置１２１の傾きR[k+1]と、
から、
（ｘ）画像G[k]を撮影したときの商品撮影装置１２１の位置T[k]と、
（ｙ）画像G[k+1]を撮影したときの商品撮影装置１２１の位置T[k+1]と、
を、推定する（ステップＳ７０５）。
【０１３１】
この推定のアルゴリズムの詳細を、以下に詳細に説明する。
【０１３２】
一般に、カメラによる撮影においては、現実の世界に固定されたワールド座標系と、カメラに固定されたカメラ座標系と、の間の座標変換を用いる。ワールド座標系とカメラ座標系とは、いずれも３つの互いに直交する座標軸を持つ。
【０１３３】
以下、カメラ座標系における３つの座標軸の方向ベクトルを、それぞれrx，ry，rzとおく（数１〜数３）。
【０１３４】
【数１】
0004830041.tif 000002
【０１３５】
【数２】
0004830041.tif 000003
【０１３６】
【数３】
0004830041.tif 000004
【０１３７】
なお、これらの数値rx1，rx2，…，rz3は、いずれも、ワールド座標系の座標値で、ベクトルrx，ry，rzを表現したものである。
【０１３８】
また、ワールド座標系の原点に対するカメラ座標系の原点の位置ベクトルをTとおく（数４）。
【０１３９】
【数４】
0004830041.tif 000005
【０１４０】
この数値t1，t2，t3も、位置ベクトルTのワールド座標系の座標値である。
【０１４１】
このような条件の下で、点Pのカメラ座標系における座標値を並べたベクトルpcが、以下のように表現されたとする（数５）。
【０１４２】
【数５】
0004830041.tif 000006
【０１４３】
すると、点Pのワールド座標系における座標値を並べたベクトルpwは、以下のように表現できる（数６）。
【０１４４】
【数６】
0004830041.tif 000007
【０１４５】
ここで、行列Rは、カメラ座標系の座標軸の方向を表現する行列である。すなわち、商品撮影装置１２１で撮影を行った際の、傾きセンサ部２０５の重力センサやコンパス等の検知結果から、この行列が得られることになる。
【０１４６】
さて、この式では、平行移動を加算により表現しているが、同次座標表現を用いることに、行列の乗算のみで表現することも可能である（数７）。
【０１４７】
【数７】
0004830041.tif 000008
【０１４８】
ここで、Rtは、行列Rの転置行列を意味する。Rはユニタリ行列であるから、
R-1 = Rt
が成立する。また、0tは、３次元の横零ベクトルである。
【０１４９】
さて、カメラ座標系のz軸に直交して、原点から焦点距離fだけ離間した投影面を考える。この投影面に投影された結果が、撮影済画像３１１に相当する。そこで、この投影面に固定された２次元座標系における座標値を並べたベクトルuを、以下のように表現する（数８）。
【０１５０】
【数８】
0004830041.tif 000009
【０１５１】
すると、点Pが投影面に投影される先は、以下のように表現できる（数９）。
【０１５２】
【数９】
0004830041.tif 000010
【０１５３】
これを書き換える（数１０）。
【０１５４】
【数１０】
0004830041.tif 000011
【０１５５】
ここで、２つのベクトルが非零の比例定数で比例関係にあることを≡と表記するものとする（数１１）。
【０１５６】
【数１１】
0004830041.tif 000012
【０１５７】
ワールド座標系で座標がpwの点Pを、位置T、傾きRの商品撮影装置１２１で撮影すると、撮影済画像３１１における投影先の座標puは、以下のように表現される（数１２）。
【０１５８】
【数１２】
0004830041.tif 000013
【０１５９】
ここで、Mは、３行４列の行列である。
【０１６０】
なお、この投影面は、理想的なピンホールカメラを想定したものであり、カメラ座標系に固定されていて、２次元座標系の第１軸は、x軸に平行であり、２次元座標系の第２軸は、y軸に平行であるものとしている。
【０１６１】
この条件が必ずしも満たされない一般的な投影を採用した場合には、状況に応じた行列Aを採用すれば良い。
【０１６２】
たとえば、投影面とカメラ座標系のz軸とが角ψをなすとき、行列Aは、適当な定数k1，k2，uc1，uc2を用いて、以下のように表現できる（数１３）。
【０１６３】
【数１３】
0004830041.tif 000014
【０１６４】
たとえば魚眼レンズを利用したような場合等であっても、行列Aを適切に定めることによって、上記と同様のアフィン変換行列Mを求めることができる。
【０１６５】
さて、このような撮影の関係に基づいて、以下、撮影の位置T[k]，T[k+1]を求める手法について説明する。これらはいずれも３要素を持つから、未知数は合計で６個である。
【０１６６】
そこでひとまず、撮影位置T[k]、傾きR[k]に対するアフィン変換行列をM[k]とおき、撮影位置T[k+1]、傾きR[k+1]に対するアフィン変換行列をM[k+1]とおく。すると、以下のような関係が成立する（数１４）。
【０１６７】
【数１４】
0004830041.tif 000015
【０１６８】
ただし、M[k]およびM[k+1]は、３行４列の行列であるから、M[k]-1およびM[k+1]-1は、M[k]およびM[k+1]の一般化逆行列であるものとする。一般化逆行列は、「ムーア−ペンローズの擬似逆行列」と呼ばれることもある。
【０１６９】
さてここで、未知数の数は、撮影位置T[k]，T[k+1]の座標値の６個と、各≡における左辺と右辺の比例係数の３個の、合計９つである。
【０１７０】
一方、行列方程式は、３次元のものが３つあるから、合計９つである。したがって、これらの連立方程式を解くことで、すべての未知数を得ることができる。
【０１７１】
なお、連立方程式を解く際には、記号処理に基づく数式処理によって解を得ても良いし、各種の近似解法を利用することとしても良い。たとえば、T[k]，T[k+1]および比例定数に適当な初期値を与えて最急降下法により、解を求める手法である。
【０１７２】
このほか、特徴点の数を増やすと、連立方程式の数をさらに増やすことができる。この場合には、各連立方程式の左辺から右辺を引いた誤差の自乗和を最小化するように最尤推定をすることで、これらの未知数を得ることができる。
【０１７３】
このように、画像内の対応する特徴点を３つ選択することで、撮影位置T[k]，T[k+1]が判明する。逆に、撮影の位置T[k]，T[k+1]が判明すれば、一点透視の透視投影におけるアフィン変換行列M[k]，M[k+1]が求められる。
【０１７４】
これらの処理を繰り返す（ステップＳ７０７）と、ステップＳ７０５（ｘ）により、
T[0]，T[1]，T[2]，…，T[N-1]の各推定値
が得られ、ステップＳ７０５（ｙ）により、
T[1]，T[2]，…，T[N-1]，T[0]の各推定値
が得られることになる。
【０１７５】
したがって、いずれか一方を選択する、あるいは、両者の平均を求めることによって、商品撮影装置１２１の位置
T[0]，T[1]，T[2]，…，T[N-1]
を同定する（ステップＳ７０７）。
【０１７６】
さらに、以下の手法により、現実世界における商品３０１の位置Hを同定する（ステップＳ７０８）。
【０１７７】
すなわち、整数k = 0，1，2，…，N-1のそれぞれについて、傾きR[k]から、撮影の光軸方向を取得する。そして、撮影の位置T[k]を通り、当該光軸方向に伸びる直線を想定する。これらN本の直線は、商品３０１の位置H、もしくは、その近傍を通過するはずである。
【０１７８】
そこで、商品３０１の位置HとこれらN本の直線との距離の自乗和が最小化するように、最小自乗法により、商品３０１の位置Hを求めることができる。
【０１７９】
さて、上記のような商品撮影装置１２１を使って撮影を行った場合、同定された撮影の位置T[0]，T[1]，T[2]，…，T[N-1]は、商品３０１の位置Hを貫通する中心軸のまわりに、円周状に配置されているものと考えられる。また、人間が商品の撮影を行う場合に、必ずしも真横から撮影するとは限らず、斜め上方から撮影することも多い。
【０１８０】
すなわち、理想的には、位置Hを頂点とする円錐の底面に、推定された撮影位置T[0]，T[1]，T[2]，…，T[N-1]が配置されることになるはずである。また、真横から撮影した場合には、位置Hを中心とする円周上に、推定された撮影位置T[0]，T[1]，T[2]，…，T[N-1]が配置されることになるはずである。
【０１８１】
しかしながら、撮影は人間が操作しているため、必ず、誤差が生じる。このため、撮影位置T[0]，T[1]，T[2]，…，T[N-1]を正規化することにより、位置Hを中心とする正円錐の底面である正円周上に正規化位置S[0]，S[1]，S[2]，…，S[N-1]を同定する（ステップＳ７０９）。なお、この正円錐の頂角を１８０度とすることによって、位置Hを中心とする正円周上に正規化位置S[0]，S[1]，S[2]，…，S[N-1]が並ぶ場合にも対応できる。
【０１８２】
この同定のため、具体的には、以下のような計算を行う。
【０１８３】
まず、位置Hから各撮影位置T[0]，T[1]，T[2]，…，T[N-1]が離れている距離を揃える。すなわち、整数k = 0，1，2，…，N-1のそれぞれについて、距離を揃えるためのスケール係数sc[k]と、位置
U[k] = T[k] + sc[k](T[k]-H)/|T[k]-H|
とを、sc[0]，sc[1]，sc[2]，…，sc[N-1]をできるだけ小さくように、計算する。
【０１８４】
すなわち、位置U[k]は、商品３０１の位置Hと撮影位置T[k]を結ぶ直線上にあり、位置U[k]と撮影位置T[k]は、sc[k]だけ離間している。この際に、sc[0]，sc[1]，sc[2]，…，sc[N-1]を最小化することを拘束条件とするのである。
【０１８５】
最も単純には、各撮影位置T[0]，T[1]，T[2]，…，T[N-1]との平均距離Dを
D = Σk=0N-1 |T[k]-H|/N
により求め、
sc[k] = D - |T[k]-H|
とすれば、各|U[k]-H|は、すべて距離Dに等しくなる。
【０１８６】
次に、円錐の底面となる円周の中心の位置Jおよび半径rを計算する。円周の中心の位置Jは、
J = Σk=0N-1 U[k]/N
のように、位置U[k]の重心とするのが最も単純である。次に円周の半径rは、
r = Σk=0N-1 |U[k]-J|/N
のように、位置Jと各U[k]との距離の平均とするのが最も単純である。
【０１８７】
このようにして、商品３０１の位置、ならびに、当該商品３０１の全周囲画像列を撮影する際の円周の軌跡が定められる。この円周は、位置Hと位置Jを結ぶ直線を回転軸としている。
【０１８８】
そこで、次に、各k = 0，1，2，…，N-1について、撮影位置T[k]に対する円周上の位置S[k]を同定する。ここで求められる位置S[k]は、撮影位置T[k]を正規化した、仮想的な撮影位置に相当する。
【０１８９】
円周上のうち、撮影位置T[k]に最も近い位置をS[k]とする手法が最も単純である。
【０１９０】
まず、ベクトルH-Jと、ベクトルT[k]-Jと、から、ベクトルOP[k] = ((H-J)×(T[k]-J))×(H-J)を計算する。
【０１９１】
ベクトル（H-J×T[k]-J）は、ベクトルH-JおよびベクトルT[k]-Jの両方に直交する。
【０１９２】
したがって、ベクトルOP[k] = ((H-J)×(T[k]-J))×(H-J)は、ベクトルH-Jと、ベクトルT[k]-Jと、が張る平面に平行であり、ベクトルH-Jと直交する。
【０１９３】
すなわち、位置Jから当該円周が張る平面に対してT[k]から垂らした足へ伸びる半直線と、ベクトルOP[k]とは、同じ向きに平行に伸びるのである。
【０１９４】
したがって、撮影位置T[k]に最も近い円周上の点の正規化位置S[k]は、
S[k] = J + r OP[k]/|OP[k]|
により求められることになる。
【０１９５】
このように、正規化位置S[0]，S[1]，…，S[N-1]は、所定の円周上に並ぶ。そこで、この円周上で、S[0]から見て、S[0]，S[1]，…，S[N-1]のそれぞれが、中心Jに対して、どれだけ回転しているか、を求めることも可能である。
【０１９６】
すなわち、正規化位置S[0]，S[1]，…，S[N-1]の回転角を、それぞれθ[0]，θ[1]，…，θ[N-1]とする。整数k = 0，1，…，N-1に対して、θ[k]は、ベクトルS[0]-Jに対してベクトルS[k]-Jが張る角ということになる。すなわち、
cos(θ[k]) = 《S[0]-J，S[k]-J》/(|S[0]-J|・|S[k]-J|)，
sin(θ[k]) = |(S[0]-J)×(S[k]-J)|/(|S[0]-J|・|S[k]-J|)
により、各回転角θ[k]を求めることができる。ここで《x,y》は、ベクトルxとベクトルyの内積である。
【０１９７】
なお、このようにして得られたθ[k]は、
0=θ[0]≦θ[1]≦θ[2]≦…≦θ[N-2]<2π
のように昇順に並ぶことと考えても、一般性を失わない。もしあるkにおいて
θ[k]>θ[k+1]
となって、順序が入れかわってしまっている場合には、
（ａ）画像G[k]、傾きR[k]撮影位置T[k]、正規化位置S[k]、回転角θ[k]と、
（ｂ）画像G[k+1]、傾きR[k+1]撮影位置T[k+1]、正規化位置S[k+1]、回転角θ[k+1]と、
を、まとめて入れ換えれば良いからである。
【０１９８】
さらに、整数k = 0，1，2，…，N-1について、仮想化位置S[k]における仮想的な撮影の傾きV[k]を計算する（ステップＳ７１０）。具体的には、
仮想化位置S[k]から商品３０１の位置Hに向かうベクトルH-S[k]を、撮影の光軸方向（z軸）とし、
仮想化位置S[k]における円周の接線方向を撮影の左右方向（x軸）とし、
仮想化位置S[k]から円周の中心位置Jに向かうベクトルJ-S[k]の、H-S[k]に直交する成分を、撮影の上下方向（y軸）とする
のが典型的である。この２つの方向を定めることで、カメラ座標系の６つの自由度が決定される。仮想化位置S[k]における撮影の傾きV[k]も自動的に定まることになる。
【０１９９】
さて、上記のように、現実の空間内の位置pwに配置される点Pは、撮影位置T[k]から向きR[k]で撮影すると、以下の関係を満たす画像G[k]の位置puに投影される（数１５）。
【０２００】
【数１５】
0004830041.tif 000016
【０２０１】
ここで、この式の比例定数は、［数１０］にも表示の通り、点Pのカメラ座標系におけるz軸、すなわち撮影方向の光軸の座標値pc3である。
【０２０２】
したがって、点Pが表面に配置された商品３０１を商品撮影装置１２１で撮影する際には、商品３０１と商品撮影装置１２１との距離
d[k] = |T[k]-H|
をpc3の近似値とすることができる（数１６）。
【０２０３】
【数１６】
0004830041.tif 000017
【０２０４】
逆に、画像G[k]の位置puに投影されている点Pの現実空間内における位置pwは、以下の近似計算により求めることができる（数１７）。
【０２０５】
【数１７】
0004830041.tif 000018
【０２０６】
同様に、現実世界の位置pcに配置されている点Pが、回転角θ[k]における正規化画像B[k]において、位置pu'に投影されるものとする。
【０２０７】
正規化画像B[k]を撮影した位置は、正円錐の底面であり、各正規化位置S[k]と頂点Hとの距離d = |S[k]-H|は、kにかかわらず一定であるから、以下のような関係が成立する（数１８）。
【０２０８】
【数１８】
0004830041.tif 000019
【０２０９】
すなわち、正規化画像B[k]における位置pu'は、撮影済画像G[k]における位置puと対応付けられることになるが、この位置puは、以下のように近似することができる（数１９）。
【０２１０】
【数１９】
0004830041.tif 000020
【０２１１】
したがって、正規化画像B[k]内の各位置について、
（１）撮影済画像G[k]の画素の位置を、上記の関係により求め、
（２）求められた位置の撮影済画像G[k]における画素値を取得し、
（３）当該取得された画素値を、正規化画像B[k]の当該位置の画素値として描画する
ことによって、正規化画像B[k]が得られるのである。
【０２１２】
このようなアルゴリズムを利用して、近似部６１３は、整数k = 0，1，2，…，N-1のそれぞれについて、仮想化位置S[k]から傾きV[k]で撮影した場合の現実の位置から画像内の位置への変換を行うアフィン変換行列L[k]を計算する（ステップＳ７１１）。
【０２１３】
その後、画像G[k]に対して、アフィン変換行列
(d/d[k])M[k]L[k]-1
による変換を施して、全周囲画像列に含まれる回転角θ[k]に対する正規化画像B[k]を得る（ステップＳ７１２）。
【０２１４】
このようにして、正規化画像B[0]，B[1]，B[2]，…，B[N-1]を並べた全周囲画像列、ならびに、各正規化画像に対する回転角θ[0]，θ[1]，θ[2]，…，θ[N-1]が得られたら、出力部６１４は、これらを全周囲画像列の情報として出力して（ステップＳ７１３）、本処理を終了する。
【０２１５】
なお、ステップＳ７１９においては、現実世界の位置から正規化画像内の位置への変換を行うアフィン変換行列(1/d)L[0]，(1/d)L[1]，(1/d)L[2]，…，(1/d)L[N-1]も全周囲画像列の情報の一部として出力することが望ましい。
【０２１６】
出力された全周囲画像列、回転角、および、アフィン変換行列の情報は、サーバ装置内のハードディスクなどに蓄積されるのが一般的であるが、ここからスマートフォンや携帯電話、パーソナルコンピュータ等へダウンロードすることも可能である。
【０２１７】
なお、上記の説明では、商品３０１を頂点とする略円錐の底面の略円周上を商品撮影装置１２１が移動しながら、商品３０１を撮影することによって、撮影済画像が得られている。
【０２１８】
そして、撮影の結果に含まれる誤差を修正して、商品３０１を頂点とする正円錐の底面の正円周上を商品撮影装置１２１が移動しながら商品３０１を撮影することによって得られるであろう正規化画像を得ることとしている。
【０２１９】
ここで、処理を簡略化するために、商品撮影装置１２１が移動するのは商品３０１を中心とする略円周上であり、正規化画像は、商品３０１を中心とする正円周上から見た様子であると仮定しても良い。この手法では、拘束条件が上記の説明に比べて大幅に簡略化されるため、より一層の計算の速度向上が見込める。
【０２２０】
このほか、各種の最尤推定の技術を利用して、商品３０１の位置や円錐の形状を定めることとしても良い。
【０２２１】
以下では、本実施形態に係る商品撮影装置１２１を利用した場合に、より一層簡易な近似計算で、撮影位置T[k]，T[k+1]、傾きR[k]，R[k+1]、アフィン変換行列M[k]，M[k+1]を求める手法について計算する。
【０２２２】
上記のように、（数１０）から（数１１）への変形においては、比例定数pc3を消去している。この比例定数pc3は、撮影方向の光軸における撮影対象の点の座標値、すなわち、カメラから撮影対象の点への奥行きを表すものである。
【０２２３】
一方で、本実施形態に係る商品撮影装置１２１を利用した場合には、撮影済画像において商品３０１の大きさがほぼ一定になるように撮影が行われる。したがって、商品３０１への奥行きは、いずれの撮影位置から見た場合であっても、ほぼ等しいと考えられる。
【０２２４】
すると、（数１４）における比例関係「≡」は、等号「＝」に置き換えることが可能となる。すると、未知数である比例定数を求める必要がなくなる。
【０２２５】
したがって、商品３０１への奥行きが等しいとして、位置p，qの２つの特徴点から、以下の連立方程式により、撮影位置T[k]，T[k+1]、傾きR[k]，R[k+1]、アフィン変換行列M[k]，M[k+1]を求めることができる。
【０２２６】
【数２０】
0004830041.tif 000021
【０２２７】
すなわち、未知数の数は、撮影位置T[k]，T[k+1]の座標値の６個であり、行列方程式は３次元のものが２つであり、合計６つであるから、撮影位置T[k]，T[k+1]を計算により求めることができるのである。
【０２２８】
具体的な計算は、上記の形態と同様の手法を採用することができる。
【０２２９】
撮影位置を求めるために参照する特徴点の数が多くなれば、計算の負荷は高くなるが、計算精度は向上する。また、特徴点の数を３つ以上とすれば、各撮影位置T[k]に対する商品３０１の位置に特段の前提条件がなくとも、撮影位置T[k]，T[k+1]、傾きR[k]，R[k+1]、アフィン変換行列M[k]，M[k+1]を求めることができる。
【０２３０】
一方で、本実施形態のように、各撮影位置T[k]に対するに対する商品３０１の奥行きがほぼ等しいと考えられる場合には、特徴点の数を２つとすれば、計算の負荷を低くすることができる一方で、近似を用いつつも高い精度で撮影位置T[k]，T[k+1]、傾きR[k]，R[k+1]、アフィン変換行列M[k]，M[k+1]を求めることができる。
【０２３１】
（４．画像処理装置）
全周囲画像列に含まれる正規化画像B[0]，B[1]，B[2]，…，B[N-1]は、それぞれ、商品３０１の周囲の回転角θ[0]，θ[1]，θ[2]，…，θ[N-1]に対応付けられている。なお、上記のように、
0=θ[0]≦θ[1]≦θ[2]≦…≦θ[N-1]<2π
としても一般性を失わない。
【０２３２】
画像処理装置１６１は、ユーザから任意の回転角φが与えられると、当該回転角φに相当する位置から商品３０１を見たときの画像を、前記情報から補間して、ユーザに提示する機能を果たす。もっとも単純に補間を行う手法は、以下の通りである。
【０２３３】
上記のように、円錐底面における回転角φからは、円錐底面の円周上の位置S(φ)、および、そこでの撮影の傾きV(φ)を一意に求めることができる。したがって、当該位置S(φ)ならびに傾きV(φ)と、円錐の斜辺の長さdから、アフィン変換行列(1/d)L(φ)が一意に定められる。
【０２３４】
回転角θ[0]，θ[1]，θ[2]，…，θ[N-1]のうち、つぎに、回転角φに最も近いものを選択する。選択された回転角がθ[k]であったとする。
【０２３５】
この手法では、正規化画像B[k]から、回転角φに対する補間画像B(φ)を得る。
【０２３６】
最も単純な手法は、正規化画像B[k]を、そのまま補間画像B(φ)とする手法である。これは、Nが十分に大きい場合（たとえば、２０以上）に、計算量を抑制する意味で効果的である。
【０２３７】
このほか、上記のように、正規化画像B[k]に対しては、現実世界を画像に投影するためのアフィン変換行列(1/d)L[k]ならびに、その逆を行うアフィン変換行列d L[k]-1が対応付けられている。
【０２３８】
そこで、正規化画像B[k]に対して、アフィン変換
(1/d)L(φ)d L[k]-1 = L(φ)L[k]-1
を施すことにより、補間画像B(φ)が得られることになる。
【０２３９】
この手法では、１つの補間画像B(φ)を得るために、一つの正規化画像B[k]のみを利用しているが、複数の正規化画像B[k]から、１つの補間画像B(φ)を得ることも可能である。たとえば、回転角について
θ[k]≦φ<θ[k+1]
が満たされる正規化画像B[k]，B[k+1]の２つについて、上記のようにアフィン変換を適用する。
【０２４０】
そして、B[k]にアフィン変換を適用して得られた画像の、左側(φ-θ[k])/(θ[k+1]-θ[k])を抽出し、B[k+1]にアフィン変換を適用して得られた画像の、右側(θ[k+1]-φ)/(θ[k+1]-θ[k])を抽出し、これらを左右に並べることで補間画像B(φ)とする手法である。なおここでは、φやθは、ユーザに近い側が左から右に回転するときに増加するように、向きを定めているが、逆向きにしても向きを入れ換えることで同様の手法が採用できる。
【０２４１】
また、２枚の正規化画像を並べるのではなく、より多くの正規化画像を並べる場合にも、上記と同様に、正規化画像を回転方向に対して垂直帯状に切断して抽出し、これらを並べることにより、補間画像B(φ)を得ることができる。
【０２４２】
さて、図８は、本実施形態に係る画像処理装置１６１の各要素と、端末装置１８１の各要素と、の関係を示す説明図である。図９は、画像処理装置１６１の各要素と、端末装置１８１の各要素と、において実行される画像処理の制御の流れを示すフローチャートである。以下、これらの図を参照して説明する。
【０２４３】
なお、上記のように、画像処理装置１６１と、端末装置１８１と、は、一体として構成することも可能であるし、別々の機器として構成することも可能である。また、各部をいずれの機器に配置するか、も、任意に変更が可能である。そこで本図では、最も典型的な態様を図示している。
【０２４４】
本図に示すように、本実施形態に係る画像処理装置１６１は、角度受信部８０１、角度受付部８０２、補間部８０３、画像送信部８０４を有する。
【０２４５】
一方、端末装置１８１は、角度センサ部８１１、角度送信部８１２、画像受信部８１３、モニタ表示部８１４を有する。
【０２４６】
画像処理が開始されると、画像処理装置１６１ではサーバ処理が、端末装置１８１では端末処理が、それぞれ実行される。
【０２４７】
まず、端末装置１８１において、角度センサ部８１１が、端末装置１８１の所定の軸周りの角度φを感知する（ステップＳ９０１）。
【０２４８】
商品撮影装置１２１により商品を撮影する際には、３軸の傾きを検知するのが一般的としていたが、端末装置１８１においては、加速度センサを１つだけ用いて、重力の方向に対する傾きを検知することとしても十分である。もちろん、３軸の傾きを検知することとしても良い。
【０２４９】
ついで、角度送信部８１２は、感知された角度φを画像処理装置１６１に送信する（ステップＳ９０２）。
【０２５０】
すると、画像処理装置１６１において、角度受信部８０１は、端末装置１８１から送信された角度φを受信して、角度受付部８０２に受け付けさせる（ステップＳ９０３）。
【０２５１】
そして、補間部８０３は、受け付けられた角度φから、上記のようなアルゴリズムに基づいて、補間画像B(φ)を得る（ステップＳ９０４）。
【０２５２】
さらに、画像送信部８０４は、得られた補間画像B(φ)を、端末装置１６１に送信して（ステップＳ９０５）、処理はステップＳ９０３に戻る。
【０２５３】
さて、端末装置１８１では、画像受信部８１３が、画像処理装置１６１から送信された補間画像B(φ)を受信する（ステップＳ９０６）。
【０２５４】
そして、モニタ表示部８１４が、受信された補間画像B(φ)を、モニタ画面に表示して（ステップＳ９０７）、処理はステップＳ９０１に戻る。
【０２５５】
このように、本実施形態では、端末装置１８１を傾けるだけで、その傾きに連動して、端末装置１８１のモニタ画面に表示される商品３０１も回転することになり、ユーザは、容易に商品３０１の全周囲の様子を見ることができる。
【０２５６】
なお、画像処理装置１６１と、端末装置１８１と、を、一体として構成する際には、角度センサ部８１１により検知された角度φが補間部８０３に与えられ、補間部８０３により得られた補間画像B(φ)がモニタ表示部８１４に与えられて、補間画像B(φ)がモニタ画面に表示される。すなわち、端末装置１８１は、角度センサ部８１１、補間部８０３、モニタ表示部８１４から構成されることになる。
【０２５７】
このほか、傾きセンサを有していない一般的なパーソナルコンピュータによって端末装置１８１を実現する場合には、角度センサ部８１１を用いて角度φを感知するのではなく、ユーザがキーボードやマウス等の入力装置を操作することによって、角度φを入力するような形態を採用しても良い。たとえば、キーボードの第１のボタンを押圧することによってφが増加し、第２のボタンを押圧することによってφが減少するような操作体系や、マウスの移動量にφの値を連動させるような操作体系を採用することができる。
【０２５８】
また、上記の例においては、感知された角度φをそのまま利用して、補間画像B(φ)を表示することとしている。しかしながら、１より大きい定数kを利用して、感知された角度φに対し、補間画像B(kφ)を表示することとしても良い。すなわち、角度受付部８０２は、受け付た角度をk倍してしまう、というものである。
【０２５９】
補間画像B(φ)を表示する手法では、商品３０１の全周囲を観察するには、ユーザは、端末装置１８１自体を１周、３６０度回転させる必要がある。
【０２６０】
一方、補間画像B(kφ)を表示する手法では、商品３０１の全周囲を観察するために必要な端末装置１８１の回転量は(360/k)度ですむ。
【０２６１】
たとえば、k=4とすれば、ユーザは、端末装置１８１の傾きを９０度だけ変化させれば、商品３０１の全周囲を観察することが可能である。
【０２６２】
なお、角度をk倍する処理は、たとえば端末装置１８１において実行しても良い。たとえば、検知された角度φを角度送信部８１２がk倍して、角度kφを送信する、等である。
【０２６３】
以下では、正規化画像B[0]，B[1]，B[2]，…，B[N-1]ならびに回転角θ[0]，θ[1]，θ[2]，…，θ[N-1]と、与えられた回転角φと、から、補間画像B(φ)を得る他の手法について説明する。
【０２６４】
すなわち、商品３０１を球体と考えて、正規化画像B[0]，B[1]，B[2]，…，B[N-1]から舟型多円錐図法（interrupted normal polyconic projection）による展開図を作る。そして、この展開図から球体を形成し、この球体を位置S(φ)ならびに傾きV(φ)で観察したとして、補間画像B(φ)を作るというものである。
【０２６５】
地球儀を作成する際の舟型多円錐図法では、経度３０度ごとに地球表面を切断して１２個の舟形を作る。本実施形態では、舟形はN個である。また、上記のように、θ[0] = 0を想定する。そして、
（０）正規化画像B[0]から緯度(θ[N-1]+2π)/2〜緯度2π、ならびに、緯度0〜緯度θ[1]/2の舟形を作り、
（１）正規化画像B[1]から緯度(θ[0]+θ[1])/2〜緯度(θ[1]+θ[2])/2の舟形を作り、
（２）正規化画像B[2]から緯度(θ[1]+θ[2])/2〜緯度(θ[2]+θ[3])/2の舟形を作り、…、
（ｋ）正規化画像B[k]から緯度(θ[k-1]+θ[k])/2〜緯度(θ[k]+θ[k+1])/2の舟形を作り、…、
（Ｎ−１）正規化画像B[N-1]から緯度(θ[N-2]+θ[N-1])/2〜緯度(θ[N-1]+2π)/2の舟形を作る。
【０２６６】
舟形を作成する単純な方法としては、各正規化画像から、当該舟形に対応する位置をそのまま切り取る、という手法がある。この手法は、商品３０１の全体形状が球体に類似する場合に好適である。
【０２６７】
こうしてできたN個の舟形を結合することで、仮想的に略球体を形成することができる。あとは、この略球体を位置S(φ)ならびに傾きV(φ)で観察したとして、補間画像B(φ)を作るのである。
【０２６８】
このほか、後述する多面体近似と同様に、位置S[k]を視点位置とし、舟形を球体表面に貼り付けたものを投影面として、正規化画像B[k]を舟形に投影する手法がある。この手法では、商品３０１を覆う球体の表面を複数の舟形領域に分割し、各舟形領域に、正規化画像を投影することになる。
【０２６９】
上述の通り、商品３０１を仮想的な凸多面体で近似する、という手法もある。当該凸多面体の全体の商品の形状に類似するものを選択する。
【０２７０】
そして、当該凸多面体の表面に配置される各多角形に対して、以下のような処理を行うことにより、商品３０１の凸多面体モデルを形成するのである。
【０２７１】
まず、正規化画像B[0]，B[1]，B[2]，…，B[N-1]のうち、生成の際の傾きV[0]，V[1]，V[2]，…，V[N-1]が、当該多角形の法線方向に最も近い正規化画像B[k]を選択する。
【０２７２】
まず、正規化画像B[k]を商品３０１の位置に当該回転角θ[k]で仮想的に配置する。そして、位置S[k]を視点位置とし、当該多角形を投影面として、正規化画像B[k]を多面体に投影する。
【０２７３】
一旦このような略球体モデルや凸多面体モデルが形成された後は、これらのモデルを、さまざまな方向から見ることが可能となる。
【産業上の利用可能性】
【０２７４】
本発明によれば、商品の全周囲画像列から商品を任意の向きから見た画像を得るのに好適な画像処理装置、画像処理方法、プログラム、ならびに、情報記録媒体を提供することができる。
【符号の説明】
【０２７５】
１０１  画像処理システム
１２１  商品撮影装置
１４１  画像変換装置
１６１  画像処理装置
１８１  端末装置
２０１  画像センサ部
２０２  指示受付部
２０３  保存部
２０４  ファインダ表示部
２０５  傾きセンサ部
３０１  商品
３１１  撮影済画像
３１２  撮影済画像の撮影時の傾きを表す棒グラフ
３２１  ライブプレビュー画像
３２２  現在の傾きを表す棒グラフ
３３１  ファインダ画像
６０１  画像受付部
６０２  変換部
６１１  抽出部
６１２  推定部
６１３  近似部
６１４  出力部
８０１  角度受信部
８０２  角度受付部
８０３  補間部
８０４  画像送信部
８１１  角度センサ部
８１２  角度送信部
８１３  画像受信部
８１４  モニタ表示部
【要約】 
【課題】ユーザが撮影した画像を商品の全周囲画像列に変換する。
【解決手段】画像処理装置１６１において、角度受付部８０２は、商品を貫通する回転軸周りの角度を受け付ける。補間部８０３は、受け付けられた角度に基づいて、商品の全周囲画像列を補間して、当該商品を受け付けられた角度から見た様子を表す補間済画像を得る。補間済画像は、全周囲画像列に含まれる正規化画像のうち受け付けられた角度に最も近い傾きのものを変換したり、正規化画像を球体や多面体に投影したものを当該受け付けられた角度で観察した画像を生成する等して、得られる。
【選択図】図８【図１】
0004830041.tif 000022
【図２】
0004830041.tif 000023
【図３】
0004830041.tif 000024
【図４】
0004830041.tif 000025
【図５】
0004830041.tif 000026
【図６】
0004830041.tif 000027
【図７】
0004830041.tif 000028
【図８】
0004830041.tif 000029
【図９】
0004830041.tif 000030