JP4153761B2 - 3D model space generation device, 3D model space generation method, and 3D model space generation program - Google Patents

3D model space generation device, 3D model space generation method, and 3D model space generation program Download PDF

Info

Publication number
JP4153761B2
JP4153761B2 JP2002272578A JP2002272578A JP4153761B2 JP 4153761 B2 JP4153761 B2 JP 4153761B2 JP 2002272578 A JP2002272578 A JP 2002272578A JP 2002272578 A JP2002272578 A JP 2002272578A JP 4153761 B2 JP4153761 B2 JP 4153761B2
Authority
JP
Japan
Prior art keywords
points
image
point
stereo pair
unit
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.)
Expired - Fee Related
Application number
JP2002272578A
Other languages
Japanese (ja)
Other versions
JP2004110459A (en
Inventor
成典 田中
均 古田
悦司 北川
敏之 杉町
佳孝 南
大祐 其阿彌
Original Assignee
成典 田中
均 古田
悦司 北川
敏之 杉町
株式会社関西総合情報研究所
福井コンピュータ株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 成典 田中, 均 古田, 悦司 北川, 敏之 杉町, 株式会社関西総合情報研究所, 福井コンピュータ株式会社 filed Critical 成典 田中
Priority to JP2002272578A priority Critical patent/JP4153761B2/en
Publication of JP2004110459A publication Critical patent/JP2004110459A/en
Application granted granted Critical
Publication of JP4153761B2 publication Critical patent/JP4153761B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、3次元モデル空間生成装置などに関し、例えば、ステレオペア画像を用いた写真測量により、3次元モデル空間にモデルハウスを構築するものに関する。
【0002】
【従来の技術】
従来は、住宅の購入や賃貸を希望する顧客は、対象となっている物件を扱っている不動産業者の店舗に赴き、店舗に備えられてる資料を閲覧していた。また、賃貸の対象が公共住宅であれば、各自治体の施設に赴いて、当該公共住宅の資料を閲覧していた。
これらの、不動産業者の店舗や自治体の施設で提供されている資料は、間取りの見取り図が主流である。場合によっては、建物の外観や室内を撮影した写真が添付されていることもある。
【0003】
顧客はこれらの資料を閲覧して希望の物件を見つけると、実際の物件の様子(部屋の傷み具合など)を確認するために、不動産業者などに伴われて、現地を訪れていた。そして、実際の住居の内部に案内され、物件の状況を直接確認していた。
また、近年の急速なインターネットの普及に伴い、Web上で、不動産情報を公開する試みも行われるようになってきた。
これは、店舗で閲覧していた情報と同程度の内容、即ち間取りの見取り図や部屋内部の写真などをWebサーバによって顧客の端末に送信し、顧客は不動産業者の店舗などにわざわざ赴かなくても、物件情報を閲覧できるものである。
また、コンピュータグラフィックスを用いて不動産物件の3Dモデル空間を生成して顧客に提供すると便利であるが、3Dモデル空間を構成するための関連技術として次の特許文献1がある。
【0004】
【特許文献1】
特開2002−31527
【0005】
特許文献1で提案されている技術は、被写体を異なる2方向からデジタル式カメラで撮影し、デジタル画像中での被写体の座標値から被写体の3次元形状に関する情報を算出する技術である。
【0006】
【発明が解決しようとする課題】
しかし、民間の不動産に関する情報を不動産業者の店舗で閲覧する場合や公共住宅の情報を地方自治体の施設で閲覧する場合、何れもユーザはこれら店舗や施設の営業時間内にこれら店舗や施設に赴かなくてはならない。
また、これら店舗や施設にわざわざ赴いたとしても、得られる情報は、間取りの見取り図や外観、屋内の写真などの大まかな2次元情報であるため、顧客は希望物件を絞り込んだ後、物件を実際に見学する必要がある。
そこで、顧客は、物件を見学するために不動産業者などと見学の約束を取り付け、約束で指定した日時に不動産業者に伴われながら実際の物件の部屋の傷み具合などを直に確認しなくてはならない。
【0007】
このように一件下見をするのにも多大の労力と時間を必要とし、そのため、確認できる物件数にも限度がある。
また、Web上で公開している不動産情報も大まかな2次元情報(間取りの見取り図、外観や屋内の写真)を提供しているに留まっており、顧客は現地を見学する必要がある。
また、物件の内部を3次元コンピュータグラフィックスによって表現し、Web上で部屋内部の様子を確認できるようにすることも考えられるが、従来の3次元モデル空間(以下3Dモデル空間と記す)生成技術では、一物件分の3Dモデル空間を生成するのにも多大の製作時間と製作費用がかかってしまい、大量の物件情報に関して3Dモデル空間を生成することは困難であった。
【0008】
そこで、本発明の目的は、Web上の3Dモデル空間で利用するモデルハウスを容易に構築することができる3次元モデル空間生成装置、3次元モデル空間生成方法、及び3次元モデル空間生成プログラムを提供することである。
【0009】
【課題を解決するための手段】
本発明は、前記目的を達成するために、請求項1に記載の発明では、同一基準点及び同一の被写体を異なる少なくとも2方向から撮影した1対のステレオペア画像を取得する画像取得手段と、前記ステレオペア画像上で、前記被写体に識別可能に配設された点を抽出して対応させる対応点抽出手段と、既に得られている前記ステレオペア画像上で対応する点のうち同一平面上にある2つの対応点を選択する選択手段と、前記選択した2つの点を含む直線上の色を画像処理により識別する識別手段と、前記直線上の識別した色が変化する点のうち、前記2つの点のうちの何れか一方に最も近い点を前記ステレオペア画像上で対応する点として特定する対応点特定手段と、前記対応抽出手段で抽出した点と、前記対応点特定手段で特定した点から、所定の標定精度が得られる点の組み合わせを特定する組み合わせ手段と、前記特定した組み合わせに含まれる点を用いて前記ステレオペア画像を標定し、前記被写体の3次元情報を算出する標定手段と、を具備したことを特徴とする3次元モデル空間生成装置を提供する。
請求項2記載の発明では、前記対応点抽出手段で抽出する点には、水平方向の位置が予めわかっている点が少なくとも2点、高さが予めわかっている点が少なくとも3点含まれていることを特徴とする請求項1に記載の3次元モデル空間生成装置を提供する。
請求項3記載の発明では、既に得られている前記ステレオペア画像上の対応する点を用いて前記ステレオペア画像を構成する左画像と右画像を撮影した際のカメラの位置関係を解析する位置関係解析手段と、前記解析した位置関係を用いて、前記左画像上の点と前記右画像上の点の対応関係を特定する対応関係特定手段と、を具備し、前記対応点取特定手段は、前記対応関係特定手段で特定される対応関係を用いて前記左画像上の点と前記右画像上の点を対応させることにより、前記ステレオペア画像上の対応する点を特定することを特徴とする請求項1、又は請求項2に記載の3次元モデル空間生成装置を提供する。
請求項記載の発明では、前記標定手段で算出した前記被写体の3次元情報を用いて、前記被写体の立体モデルを所定のコンピュータグラフィックス言語で生成する立体モデル生成手段を具備したことを特徴とする請求項1から請求項までのうちの何れか1の請求項に記載の3次元モデル空間生成装置を提供する。
請求項記載の発明では、前記ステレオペア画像の何れか一方からテクスチャを生成するテクスチャ生成手段と、前記生成したテクスチャを前記立体モデルに貼り付ける貼り付け手段と、を具備したことを特徴とする請求項に記載の3次元モデル空間生成装置を提供する。
請求項記載の発明では、前記立体モデル生成手段によって生成された2つの立体モデルを、当該2つの立体モデルに共通な点の座標値を用いて1つの立体モデルに結合する結合手段を具備したことを特徴とする請求項、又は請求項に記載の3次元モデル空間生成装置を提供する。
請求項記載の発明では、画像取得手段と、対応点抽出手段と、選択手段と、識別手段と、対応点特定手段と、組み合わせ手段と、標定手段と、を備えたコンピュータにおいて、前記画像取得手段で、同一基準点及び同一の被写体を異なる少なくとも2方向から撮影した1対のステレオペア画像を取得する画像取得ステップと、前記対応点抽出手段は、前記ステレオペア画像上で、前記被写体に識別可能に配設された点を抽出して対応させる対応点抽出ステップと、前記選択手段で、既に得られている前記ステレオペア画像上で対応する点のうち同一平面上にある2つの対応点を選択する選択ステップと、前記識別手段で、前記選択した2つの点を含む直線上の色を画像処理により識別する識別ステップと、前記対応点特定手段で、前記直線上の識別した色が変化する点のうち、前記2つの点のうちの何れか一方に最も近い点を前記ステレオペア画像上で対応する点として特定する対応点特定ステップと、前記組み合わせ手段で、前記対応抽出手段で抽出した点と、前記対応点特定手段で特定した点から、所定の標定精度が得られる点の組み合わせを特定する組み合わせステップと、前記標定手段で、前記特定した組み合わせに含まれる点を用いて前記ステレオペア画像を標定し、前記被写体の3次元情報を算出する標定ステップと、から構成されたことを特徴とする3次元モデル空間生成方法を提供する。
請求項記載の発明では、同一基準点及び同一の被写体を異なる少なくとも2方向から撮影した1対のステレオペア画像を取得して記憶する画像取得機能と、前記記憶したステレオペア画像上で、前記被写体に識別可能に配設された点を抽出して対応させて記憶する対応点抽出機能と、既に得られている前記ステレオペア画像上で対応する点のうち同一平面上にある2つの対応点を選択する選択機能と、前記選択した2つの点を含む直線上の色を画像処理により識別する識別機能と、前記直線上の識別した色が変化する点のうち、前記2つの点のうちの何れか一方に最も近い点を前記ステレオペア画像上で対応する点として特定して記憶する対応点特定機能と、前記対応抽出機能で抽出して記憶した点と、前記対応点特定機能で特定して記憶した点を読みだして、該点から、所定の標定精度が得られる点の組み合わせを特定する組み合わせ機能と、前記特定した組み合わせに含まれる点を用いて前記ステレオペア画像を標定し、前記被写体の3次元情報を算出する標定機能と、をコンピュータで実現するための3次元モデル空間生成プログラムを提供する。
【0010】
【発明の実施の形態】
以下、本発明の好適な実施の形態について参照詳細に説明する。
図1(a)は、本実施の形態のモデルハウスシステム1の構成の一例を示した図である。
モデルハウスシステム1は、モデルハウスコンテンツを提供するモデルハウスサーバ6、ユーザがモデルハウスサーバ6にアクセスするための端末3、3、3、・・・(以下端末3)、モデルハウスサーバ6と端末3を接続するインターネット5、不動産物件の室内を撮影したステレオペア画像から当該室内を3DCG(3次元コンピュータグラフィックス)化した3Dモデルハウスコンテンツを生成するコンテンツ作成装置7などから構成されている。
【0011】
モデルハウスサーバ6は、端末3にモデルハウスコンテンツを送信するコンテンツ送信サーバである。モデルハウスサーバ6は、特有のURL(Uniform Resource Locators)を備えており、このURLによりインターネット5上で他のサーバ装置から識別可能となっている。
【0012】
モデルハウスサーバ6は、モデルハウスコンテンツを送信する機能を備えている。そして、端末3からのモデルハウスコンテンツ送信要求を受けると、インターネット5を介してモデルハウスコンテンツを端末3に送信(ダウンロード)する。
また、モデルハウスサーバ6は、コンテンツ作成装置7とインターネット5や専用回線などにより接続可能となっており、コンテンツ作成装置7からモデルハウスコンテンツの送信(アップロード)を受けることができるようになっている。
【0013】
インターネット5は、所定のプロトコルを用いて、各サーバ装置と各端末装置間の通信を可能とするネットワークである。所定のプロトコルとしては、TCP/IP(Transmission Control Protocol/Internet Protocol)などがある。
本実施の形態では、モデルハウスサーバ6と端末3をインターネット5で接続するように構成したが、これに限定するものではなく、LAN(Local Area Network)やWAN(Wide Area Network)、光通信網、通信衛星を介した通信網、あるいはこれらのうち複数を接続して構成することができる。
【0014】
端末3は、ダイアルアップ接続などによりインターネット5と接続可能に配設されたパーソナルコンピュータなどにより構成されている。
端末3は、モデルハウスサーバ6のURLを用いることによりモデルハウスサーバ6にアクセス可能となっている。
そして、端末3はモデルハウスサーバ6にアクセスし、モデルハウスコンテンツ送信要求を送信することができ、また、モデルハウスサーバ6から送られてきたモデルハウスコンテンツを受信することかできる。
【0015】
端末3は、ブラウザ4を備えており、これを用いて、モデルハウスサーバ6からダウンロードしたモデルハウスコンテンツが提供する機能を利用できるようになっている。
端末3は、パーソナルコンピュータの他に、インターネット5に接続可能なゲーム機、ワードプロセッサ、STP(Set Top Box)、携帯電話などの各種端末装置を用いて構成することも可能である。
【0016】
コンテンツ作成装置7は、不動産物件の屋内を撮影したステレオペア画像からモデルハウスコンテンツを生成する装置である。コンテンツ作成装置7は、大きく分けて以下の5つの機能を備えている。
(1)物件の室内を撮影したステレオペア画像を用いて写真測量し、被写体をオブジェクトとする3Dモデル空間を生成する。
なお、写真測量とは、被写体を異なる方向から撮影したステレオペア画像を標定(後述)することにより、被写体の3次元情報を計算する手法を言う。
(2)複数の3Dモデル空間を結合して室内全体の3Dモデル空間を生成する。
(3)生成した3Dモデル空間に配置しているオブジェクトに写真測量に使用した画像をテクスチャとして貼り付ける。
(4)テクスチャを貼り付けた3Dモデル空間を用いてモデルハウスコンテンツを生成する
(5)生成したモデルハウスコンテンツをモデルハウスサーバ6にアップロードする。
【0017】
本実施の形態では、モデルハウスコンテンツをHTML(HypertextMarkup Language)を用いて生成した。しかし、これに限定せず、XML(Extensible Markup Language)や他の言語を用いて構成することもできる。
【0018】
図1(b)は、ブラウザ4の構成を概念的に示した図である。
ブラウザ4は、いわゆるWWWブラウザであり、Webサーバから送信されてきたコンテンツを表示するなどして、ユーザが当該コンテンツが提供する機能を利用可能とするものである。
ブラウザ4は、例えば、所定のプログラム(ブラウザプログラム)が端末3のCPU(Central Processing Unit)に実行されることによりソフトウェア的に実現される。
Webサーバから送信されるコンテンツは、例えば、Webページなどを記述するHTMLやXMLといったマークアップ言語などで記述されている。
【0019】
ブラウザ4は、これら記述されている内容を解釈して端末3のディスプレイに所定の画面を表示したり、スピーカから音声を発生させたりなどする他、ユーザが入力したデータをサーバ装置に送信したりする。
基本的には、ブラウザ4は、HTMLなどで記述されたファイルを解釈して所定の画面を表示するものであるが、プラグインを組み込むことにより、その機能を拡張することができる。
プラグインは、様々な種類のものが提供されている。
例えば、プラグインとしてVRML(Virtual Reality Modeling Language)ビューアをブラウザ4に組み込むと、VRMLで記述された3DCGをブラウザ4で利用できるようになる。
【0020】
VRMLは、3DCGを記述するためのコンピュータグラフィックス言語である。VRMLを用いることにより立体モデル化されたオブジェクト(対象物)を仮想空間で表現することができる。
VRMLはインターネット5上で使用可能である。即ち、VRMLファイルをインターネット5を介して送信することができると共に、VRMLビューアをプラグインとして組み込んだブラウザ4を用いてVRMLファイルで記述されたオブジェクトを表示することができる。
【0021】
VRMLは、オブジェクトを立体的に表現することのみならず、音声や動きなども同時に表現できる。そして、ユーザは仮想空間の中を移動したり、対象物を様々な角度から観察したりすることができる。
VRMLビューアは、VRMLで作成されたファイルを読み込んでオブジェクトをディスプレイ上に表示するプラグインソフトである。
【0022】
プラグインには、この他に、例えば、XMLをベースとした2次元グラフィックス記述言語であるSVG(Scalable Vector Graphics)で作成されたファイルを用いて、2次元画像をディスプレイに表示するビューアや、動画をストリーミング再生するもの、ベクトルデータで記述されたアニメーションを再生するものなど各種のものがある。
【0023】
また、これらプラグインには、所定の言語で記述されたプログラムを実行する機能を持ったものもある。この機能を利用すると、サーバ装置からダウンロードするコンテンツの中に所定言語で記述したプログラム(スクリプト)を組み込んでおき、これをブラウザ4上で実行することができる。
これにより、コンテンツに対してユーザから入力があった場合に、その都度サーバ装置にアクセスしなくても、適当な処理を端末3で行うことができる。例えば、ユーザからの入力に従ってディスプレイに表示している画像を変化させることなどができる。
【0024】
本実施の形態では、ブラウザ4に、モデルハウスの間取りを2次元画像(平面図)として表示するプラグインである間取り表示部8と、3DCG化したモデルハウスの室内を表示するプラグインである3D表示部9が組み込まれている。
間取り表示部8は、間取り図表示手段を構成し、3D表示部9は3次元コンピュータグラフィックス表示手段を構成している。
モデルハウスコンテンツで、間取り図をSVGで作成した場合、間取り表示部8はSVGビューアとなる。また、間取り図を他の言語で作成した場合、間取り表示部8当該言語に対応したプラグインとなる。
【0025】
モデルハウスコンテンツで、モデルハウスの3DCGをVRMLで作成した場合は、3D表示部9は、VRMLビューアとなる。また、3DCGを他の言語で作成した場合は、当該言語に対応したプラグインとなる。
このように、間取り表示部8、及び3D表示部9は、モデルハウスコンテンツで用いられてるコンピュータ言語に対応したプラグインである。
【0026】
図2は、モデルハウスコンテンツの画面遷移の一例を示した図である。
モデルハウスコンテンツは、物件絞り込み画面18、モデルハウス画面20、見学申込画面19などの各種画面を端末3で提供する。
物件絞り込み画面18は、各不動産物件から所望の条件を満たす物件を絞り込む機能をユーザに提供するものである。
物件の絞り込みは、例えば、不動産物件の所在地域別、沿線別、価格帯別、一戸建てあるいは集合住宅別、築年数別などの様々な条件を用いて、当該条件に合致する物件を絞り込むことができる。
これらの条件は、単独で用いることができる他、条件を組み合わせて検索条件式を生成し、物件を絞り込むこともできる。検索条件式は、例えば、(A電鉄の沿線)かつ(価格が3千万円から4千万万まで)、とか、((〇〇県)又は(〇×県))かつ(A電鉄沿線)などと、条件を論理積、論理和で結合して作ることができる。
【0027】
物件絞り込み画面18では、ある程度物件数が絞り込まれてくると、物件ごとにより詳細な情報(価格、間取り情報、最寄駅、最寄駅までの距離、築年数など)が一覧表示されるようになっている。
そのため、ある条件で物件を絞り込んだ後、絞り込まれた物件の情報を見ながら更に他の条件で絞り込むこともできる。
例えば、A電鉄沿線を条件として物件を絞り込んだ結果、価格帯が2千万円から3千万円程度の物件が散見したため、更に価格帯2千万円から3千万円を検索条件として先の検索結果を絞り込むことができる。
【0028】
図示しないが、物件絞り込み画面18で一覧表示される各物件にはそれぞれ見学ボタンが設けられている。このボタンをマウス操作などで選択すると、端末3からモデルハウスサーバ6に当該物件に関するモデルハウスファイルの送信要求が送られる。
モデルハウス画面20は、選択された物件を3DCGにて擬似的に物件見学できる機能を提供する画面であり、モデルハウスファイルを用いて表示される。
詳細は後述するが、モデルハウス画面20は、当該物件の間取りを表示する間取り表示エリアと、当該間取り図でユーザが指定した部屋の3DCGを表示する3DCG表示エリアを供えている。
【0029】
ユーザは、間取り図で任意の部屋を選択することができ、その部屋の様子を3DCGにて確認することができる。
3DCGのオブジェクト(この場合、壁や窓など)は、実際に当該オブジェクトを撮影したデジタル写真にてマッピング(即ちオブジェクトの表面に当該オブジェクトの実際の写真が貼り付けてある)されており、ユーザは実際の部屋の様子をあたかも現地見学しているように確認することができる。
また、モデルハウス画面20は、タンス、テーブル、鏡台など、各種の家具類を3DCG化した家具ライブラリを備えており、ユーザは、家具ライブラリから適当な家具を選んで3DCG化された部屋に配置してみることもできる。
【0030】
見学申込画面19は、ユーザが不動産業者や地方自治体に物件の現地見学を申し込むための画面である。
モデルハウス画面20で、3DCGを用いて擬似的に物件を見学した後、実際の物件を更に詳細に確認したい場合は、見学申込画面19から申込事項を入力し、見学を申し込めるようになっている。
【0031】
申込事項は、見学希望者の氏名、住所、電話番号、見学希望日、見学希望物件ID(物件を特定するために、物件ごとに一意に割り当てられたID)などから構成されている。これらの記入事項は、端末3からモデルハウスサーバ6に送信される。
不動産事業者や地方自治体などの担当者は、これら記入事項を用いて、直接ユーザと物件見学の日取りなどを決めることができる。
【0032】
図3(a)は、モデルハウスファイル21の構成を模式的に表した図である。モデルハウスファイル21は、端末3からの送信要求により、モデルハウスサーバ6から端末3にダウンロードされる。そして、端末3のブラウザ4により、後に説明する物件見学機能を発揮する。
モデルハウスファイル21は、基本的にはHTMLファイルであり、その中に制御プログラム22、間取りデータベース23、3DCGデータベース24、対応テーブル25が埋め込まれている。
【0033】
間取りデータベース23は、当該物件の各階の間取り図を2次元グラフィックスとして表示するための間取りデータを格納したデータベースである。間取りデータベース23は、間取り表示部8によりディスプレイに表示される。
3DCGデータベース24は、各部屋の3DCGを表示するための3DCGデータを格納したデータベースであり、例えばVRMLで記述されている。
3DCGデータベース24は、3D表示部9によりディスプレイに表示される。
【0034】
対応テーブル25は、間取りデータで表示される各部屋と3DCGデータを対応させた表である。
間取りデータで定義される間取り図の各部屋には、図3(b)に示したように、各部屋を一意に特定するための部屋IDが割り当てられている。ここで、各部屋とは居間や寝室のみならず、トイレやホール、玄関など、当該物件を構成する要素で、3DCGで表現するものを含むものとする。
【0035】
また、3DCGデータベース24においては、各3DCGデータを一意に特定するための3DCGデータIDが割り当てられている。
そして、対応テーブル25は、各部屋IDと各3DCGデータIDを対応付けている。
対応テーブル25により、ユーザが間取り図で部屋を選択した場合に、当該部屋に対応する3DCGを検索することができる。
【0036】
制御プログラム22は、モデルハウス画面全体を制御するためのプログラムである。制御プログラム22は、ユーザから入力(部屋の選択など)があった場合に、当該入力に応じた動作をさせる(選択された部屋の3DCGを表示するなど)イベントドリブン型のプログラムである。
制御プログラム22は、所定のプログラム言語により記述されており、間取り表示部8などの所定のプラグイン上で実行されるようになっている。
【0037】
図3(c)は、制御プログラム22をCPUで実行して得られる中央処理部26と、間取り表示部8、3D表示部9などの各構成要素との関係を説明するための図である。
中央処理部26は、ユーザが不動産物件を特定すると、当該物件の間取りデータを間取りデータベース23から検索し、間取り表示部8に表示させる。間取りデータは、不動産物件が1階、2階など複数階から構成されている場合は、階数別に用意されており、中央処理部26は、表示させる階数をユーザに選択させる。
【0038】
間取り表示部8では、表示した間取り図のうち、ユーザが任意の部屋を選択できるようになっている。ユーザが間取り図で何れかの部屋を選択した場合、中央処理部26は、その部屋の部屋IDを間取り表示部8から取得し、当該部屋IDに対応する3DCGデータIDを対応テーブル25で検索する。
中央処理部26は、3DCGデータIDを取得したら、このIDをキーとして3DCGデータベース24を検索し、当該3DCGデータIDに対応付けられた3DCGデータを取得して3D表示部9に渡す。
このように、中央処理部26は、ユーザが間取り図で部屋を選択すると、その部屋の3DCGを3D表示部9に表示させる。
このように、中央処理部26は、間取り図上の部屋を特定する特定手段を構成している。
【0039】
なお、本実施の形態では、間取りデータベース23や3DCGデータベース24をモデルハウスファイル21と共に端末3にダウンロードする構成としたが、これに限定せず、これらをモデルハウスサーバ6に置いておき、ユーザが間取り図や部屋を特定するたびに、これらの間取り図データや3DCGデータをモデルハウスサーバ6からダウンロードするように構成しても良い。
なお、以上の説明では省略したが、部屋の3DCG内に配置する家具の3DCGデータを収納した家具3DCGデータベースなどもモデルハウスファイル21に含まれてダウンロードされる。
【0040】
図4は、モデルハウス画面20の一例を示した図である。モデルハウス画面20は、ブラウザ4が、モデルハウスファイル21を用いて端末3のディスプレイに表示したものである。
モデルハウス画面20は、間取り表示エリア11、3DCG表示エリア12、家具名入力欄13、家具表示エリア14、間取り選択エリア15、平行移動ボタン16、回転ボタン17などから構成されている。
間取り表示エリア11は、当該不動産物件の間取り図を2次元グラフィックスとして表示するエリアである。間取り表示エリア11に表示される間取り図は、間取り表示部8が間取りデータを用いて表示したものである。
【0041】
端末3に備えられたマウスなどを操作することによりポインタ18を間取り図上の任意の部屋の上に重ね、所定のマウスボタンをクリックすることにより、当該部屋を選択することかできる。間取り表示部8は、選択された部屋の部屋IDを中央処理部26に送るようになっている。この部屋IDは、当該部屋の3DCGデータを検索するのに用いられる。
以降、画面上のボタンやアイコンなどにポインタ18を合わせて所定のマウスボタンをクリックすることを単にアイコンでボタンをクリックするなどと記すことにする。
【0042】
間取り選択エリア15は、間取り表示エリア11に表示する階数を選択するエリアである。
間取り選択エリア15では、「1階間取り」、「2階間取り」などといった階数を選択する選択項目にラジオボタンが設定されている。ラジオボタンとは、複数の選択項目の中から1つだけを選択するためのボタンであり、何れか1つのボタンが選択されると他のボタンの選択が解除されるようになっている。
間取り選択エリア15に表示される選択項目は物件ごとに変化する。例えば、地階、1階、2階からなる物件に対しては、選択項目として「地階」、「1階」、「2階」が表示される。
【0043】
間取り選択エリア15で選択された項目内容(階数など)は中央処理部26に送られる。そして、中央処理部26は選択された項目に対応する間取りデータを間取りデータベース23から検索し、間取り表示部8に渡す。
間取り選択エリア15には、階数の他に「外観」を選択項目として表示することも可能である。この場合、この項目を選択すると、間取り表示エリア11に当該物件の外観写真が表示される。この場合、3DCG表示エリア12に、当該物件の3DCGが表示されるように構成することも可能である。
【0044】
3DCG表示エリア12は、間取り選択エリア15で選択された部屋の3DCGを表示するエリアである。選択された部屋に対応する3DCGデータの検索などは、中央処理部26が行う。
3DCG表示エリア12に表示されるオブジェクトの表面には、実際の物件を撮影したデジタル画像が貼り付けてある(マッピングしてある)。そのため、実際の部屋の様子(壁の模様や傷み具合、部屋全体の色合い、窓の外に見えるものなど)を実際の写真画像によって確認することができる。
【0045】
3DCG表示エリア12の下には平行移動ボタン16と回転ボタン17が備えられている。
これらのボタンは、ユーザの視点を移動させるためのものである。これらボタンを操作することにより、ユーザは、3DCG表示エリア12で表示されている部屋の内部を自由に移動することができる。
【0046】
平行移動ボタン16は、左右にそれぞれ配置された左移動ボタン16a、右移動ボタン16cと、上下にそれぞれ配置された前進ボタン16b、後退ボタン16dから構成されている。
左移動ボタン16aにポインタ18を合わせ、所定のマウスボタンを押し下げると、押し下げている間ユーザの視点が左方向に所定のスピードで平行移動する。
同様に、右移動ボタン16c、前進ボタン16b、後退ボタン16dにポインタ18を合わせて所定のマウスボタンを押し下げると、視点をそれぞれ右方向、前方向、後ろ方向に平行移動させることができる。
【0047】
回転ボタン17は、左右にそれぞれ配置された左回転ボタン17a、右回転ボタン17bと、上下にそれぞれ配置された上回転ボタン17c、下回転ボタン17dから構成されている。
左回転ボタン17aにポインタ18を合わせ、所定のマウスボタンを押し下げると、押し下げている間ユーザの視点が左方向に所定のスピードで回転する。
同様に、右回転ボタン17b、上回転ボタン17c、下回転ボタン17dにポインタ18を合わせて所定のマウスボタンを押し下げると、視点をそれぞれ右方向、上方向、下方向に回転させることができる。
以上の3DCG内での視点の平行移動及び回転移動は、3D表示部9により発揮される機能である。
【0048】
また、3DCG表示エリア12に表示された室内の3Dモデル空間中に、家具ライブラリに用意された各種の家具類を配置して見ることもできる。
家具ライブラリでは、各種の家具の3DCGが用意されている。これら家具の表面には、実際の写真が貼り付けてあるため、実物と同じ質感が表現されている。
【0049】
家具名入力欄13は、3DCG表示エリア12内に配置する家具の家具名を入力する欄である。家具名入力欄13の右端には、矢印ボタンが備えられている。この矢印ボタンをクリックすると、家具名の一覧がドロップダウンメニューで表示される。そして、表示された家具名のうち、所望の家具名をクリックすることにより当該家具名を入力することができる。
家具表示エリア14には、家具名入力欄13で入力された家具名に対応する家具の画像が表示される。
表示された家具の画像を確認し、この家具を3DCG表示エリア12に表示されている3Dモデル空間に配置したい場合は、家具の画像をダブルクリックする。即ち、ポインタ18を家具の画像に合わせ、所定のマウスボタンを素早く2回押し下げる。
【0050】
すると、当該家具の3DCGが3DCG表示エリア12の中央付近に表示される。
詳細は省略するが、これをマウスでドラッグするなどして、平行移動させたり回転させたりすることができる。
このように、家具の3DCGを移動、回転させて、室内の所望の位置に配置する。
【0051】
以上に説明したモデルハウスコンテンツにより、以下の効果を得ることができる。
検索条件を設定することにより、複数の不動産物件から所望の物件を絞り込むことができる。
絞り込んだ物件を3DCGを用いて擬似的に見学することができる。3DCGデータは、インターネット5を介してモデルハウスサーバ6から送られてくるので、ユーザは、わざわざ現地に赴かなくても容易に物件を見学することかできる。
【0052】
室内の3Dモデル空間を構成する3DCGは、当該室内を実際に撮影した画像で貼り付けてあるため、実際の部屋の状況を確認することができる。
家具ライブラリを用いることにより、室内の3Dモデル空間に様々な家具を配置してみることができる。
現地を実際に見学したい場合は、インターネット5を用いて見学を申し込むことができる。
【0053】
次に、コンテンツ作成装置7について説明する。
図5は、コンテンツ作成装置7のハードウェア的な構成の一例を示したブロック図である。
コンテンツ作成装置7は、制御部27にバスライン43を介して入力手段34、出力手段38、通信制御装置42、記憶装置48、記憶媒体駆動装置46、入出力インターフェース44などを接続して構成されている。バスライン43は、CPU28と他の装置との信号の伝送を行う伝送線である。
制御部27は、CPU28、ROM(Read Only Memory)30、RAM(Random Access Memory)30などから構成されている。
制御部27は、CPU28によって制御され、実行するプログラムに従って各種の情報処理を行う。
【0054】
例えば、3Dモデル空間生成プログラム50が起動されている場合は、ステレオペア画像を標定し、被写体(不動産物件の室内など)を3次元的に表現する3Dモデル空間を生成し、コンテンツ作成プログラム54が起動されている場合は、先に生成した3Dモデル空間を用いてモデルハウスファイル21(HTMLファイル)を生成したりなどする。
また、所定の制御プログラムによって、コンテンツ作成装置7の各構成要素を制御したりなどもする。
ここで、標定とは、後述する内部標定、相互標定、外部標定などの写真測量の一連の工程を意味する。
【0055】
ROM30は、CPU28が各種演算や制御を行うための各種プログラム、データ、パラメータなどを格納したリードオンリーメモリである。CPU28は、ROM30からプログラムやデータ、パラメータなどを読み込むことができる。また、ROM30は読み込み専用であるため、ROM30の記憶内容を書き換えたり消去することは行わない。
RAM32は、CPU28にワーキングメモリとして使用されるランダムアクセスメモリを提供する。CPU28は、RAM32にプログラムやデータなどを書き込んだり消去したりすることができる。本実施の形態では、RAM32には、CPU28が標定処理、3Dモデル空間の生成、モデルハウスファイル21の生成などを行うためのエリアが確保可能となっている。
【0056】
入力手段34は、例えばキーボード、マウス、ジョイスティックなどの入力装置から構成されている。
キーボードは、コンテンツ作成装置7に対して文字や数字などの情報を入力するための装置である。
キーボードは、カナや英文字などを入力するためのキーや数字を入力するためのテンキー、各種機能キー、カーソルキー及びその他のキーによって構成されている。
【0057】
キーボードにより、コンテンツ作成装置7に対してテキストデータを入力する他、各種のコマンドを入力することができる。
この機能により、コンテンツ作成装置7のユーザは、3Dモデル空間生成プログラム50やコンテンツ作成プログラム54などの各種プログラムが実行されているときに、適切なテキストデータやコマンドなどを入力することができる。
マウスは、ポインティングデバイスである。コンテンツ作成装置7がGUI(Graphical User Interface)を用いて操作可能な場合、表示装置上に表示されたボタンやアイコンなどをマウスでクリックすることにより、所定の情報(コマンドや選択項目など)の入力を行うことができる。
【0058】
出力手段38は、例えば表示装置、印刷装置などから構成されている。
表示装置は、例えばCRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ、プラズマディスプレイなどのディスプレイ装置で構成され、画像情報や文字情報などを画面上に提示するための装置である。
表示装置は、生成した3Dモデル空間を表示したり、又はGUIによる画面などを表示することができるようになっている。
印刷装置は、例えば、ステレオペア画像などの画像を紙などの印刷媒体に印刷する装置である。印刷装置は、例えば、インクジェットプリンタ、レーザプリンタ、熱転写プリンタ、ドットプリンタなどの各種プリンタ装置によって構成されている。
【0059】
通信制御装置42は、通信回線を介してコンテンツ作成装置7をモデルハウスサーバ6などに接続するための装置であって、モデム、ターミナルアダプタ、その他の装置によって構成されている。
通信制御装置42は、例えばインターネット5やLAN(Local Area Network)又は専用回線などの通信回線に接続されており、これらのネットワークを介してモデルハウスファイル21やその他のファイルをモデルハウスサーバ6にアップロードすることができる。
通信制御装置42はCPU28によって制御され、例えばTCP/IPなどの所定のプロトコルに従って他の端末装置やサーバ装置と交信することができる。
【0060】
記憶装置48は、読み書き可能な記憶媒体と、その記憶媒体に対してプログラムやデータを読み書きするための駆動装置によって構成されている。当該記憶媒体として主にハードディスクが使用されるが、その他に、例えば、光磁気ディスク、磁気ディスク、半導体メモリなどの他の読み書き可能な記憶媒体によって構成することも可能である。
記憶装置48は、3Dモデル空間生成プログラム50、カメラデータデータベース52、コンテンツ作成プログラム54、画像データベース56、3Dモデル空間データベース58などが記憶されている。
【0061】
3Dモデル空間生成プログラム50は、CPU28にステレオペア画像から3DCGを作成すると共に、更に複数の3DCGを結合して3Dモデル空間を生成するための機能を発揮させるためのプログラムである。詳細は後述するが、この機能により、不動産物件の室内を撮影したステレオペア画像から部屋の各部分の立体モデルを生成した後、これらを結合して部屋全体の立体モデルを生成することができる。
【0062】
カメラデータデータベース52は、ステレオペア画像を撮影したデジタル式カメラ62に固有のパラメータのうち、標定処理に必要なものを記憶したデータベースである。例えば、カメラデータデータベース52は、レンズの焦点距離、CCDのサイズ、CCD受光面の縦方向のピクセル数及び横方向のピクセル数などが含まれている。
また、縦方向と横方向のピクセル数は、CCDサイズとピクセルのサイズから計算するように構成することもできる。
【0063】
本実施の形態では、同一種類のデジタル式カメラにより、全てのステレオペア画像を撮影することとするが、複数種類のデジタル式カメラを用いる場合は、カメラデータデータベース52に各種類ごとにカメラデータを格納し、ステレオペア画像を標定する場合は、当該ステレオペア画像を撮影したデジタル式カメラのカメラデータを用いるようにする。
コンテンツ作成プログラム54は、モデルハウスファイル21の生成を支援する機能をCPU28に発揮させるためのソフトウェアである。
モデルハウスコンテンツは、物件絞り込み機能を提供するファイル、3DCGによるモデルハウスを提供するファイル(モデルハウスファイル21)、現地での物件見学を申し込むファイルなど、各種のファイルによって構成されている。コンテンツ作成プログラム54は、これら各種ファイルのうち、モデルハウスファイル21の生成を支援する。
【0064】
画像データベース56は、標定に用いるステレオペア画像の画像データを格納するデータベースである。
ここで、格納されるステレオペア画像は、不動産物件の室内を撮影したステレオペア画像である。
これら画像データは、CPU28が不動産物件室内の3Dモデル空間を生成するのに使用される。また、家具ライブラリに用いる家具の3DCGを作成するための家具のステレオペア画像を格納することもできる。
本実施の形態では、ステレオペア画像はJPEG(Joint Photographic Experts Group)形式のファイルとして保存されるものとする。これは、ビットマップ形式又はGIF(Graphics Interchange Format)形式などの他の形式のファイルにて保存することも可能である。
【0065】
3Dモデル空間データベース58は、CPU28によって作成された3Dモデル空間を表示するための3DCGデータを格納するデータベースである。
3Dモデル空間データベース58は、各不動産物件ごとに区分されている。
そして各物件は、更に部屋ごとに区分されおり、この区分に当該部屋の3DCGデータが格納されている。即ち、3Dモデル空間データベース58は、不動産物件と部屋をキーとして当該部屋の3DCGが検索できるようになっている。
【0066】
記憶装置48には、図示しない他のプログラムやデータが格納されている。
図示しない他のプログラムやデータとしては、間取り表示エリア11に表示する間取り図の生成を支援する間取り図生成支援プログラムや生成した間取り図データを格納する間取り図データベースなどがある。
また、入出力インターフェース44を介してデジタル式カメラ62からステレオペア画像を転送するための転送プログラムも備えている。
更に、各種ファイルをモデルハウスサーバ6へアップロードしたりあるいはモデルハウスサーバ6からダウンロードするためのFTP(File Transfer Protocol)プログラム、コンテンツ作成装置7とネットワークとの通信を維持する通信プログラム、メモリ管理や入出力管理などのコンテンツ作成装置7を動作させるための基本ソフトウェアであるOS(Operating System)なども備えている。
【0067】
記憶媒体駆動装置46は、着脱可能な記憶媒体を駆動してデータの読み書きを行うための駆動装置である。着脱可能な記憶媒体としては、例えば、光磁気ディスク、磁気ディスク、磁気テープ、半導体メモリ、データをパンチした紙テープ、CD−ROMなどがある。なお、CD−ROMや紙テープは、読み込みのみ可能である。
記憶媒体駆動装置46を駆動することにより、記憶媒体に格納されているステレオペア画像を読み込むことが可能である。
【0068】
入出力インターフェース44は、例えば、シリアルインターフェースやその他の規格のインターフェースにより構成されている。入出力インターフェース44は、外部機器をコンテンツ作成装置7に接続するためのインターフェースである。本実施の形態ではデジタル式カメラ62に接続して、当該カメラからステレオペア画像を読み込むのに使用する。
【0069】
次に、3Dモデル空間生成プログラム50を用いて不動産物件の室内の3Dモデル空間を生成する仕組みについて説明する。
図6は、3Dモデル空間生成プログラム50がCPU28によって実行された場合に生成される3Dモデル空間生成システム50aの構成を示した図である。本実施の形態では、3Dモデル空間生成システム50aをソフトウェア的に構成したが、これに限定するものではなく、ハードウェア的に専用装置を構成しても良い。
【0070】
3Dモデル空間生成システム50aは、画像取得部75、対応点取得部77、写真測量部72、3DCGファイル生成部73、3DCGファイル格納部121、121、・・・、結合部125、歪補正部126などから構成されている。
画像取得部75は、不動産物件の室内を撮影したステレオペア画像を画像データベース56から取得するモジュールである。画像取得部75は、画像取得手段を構成している。
ステレオペア画像とは、同一の被写体を異なる角度から撮影した一対の画像である。ステレオペア画像に対して後述する標定作業を行うことにより、被写体の3次元情報を計算することができる。
対応点取得部77は、ステレオペア画像(左画像、右画像)上で対応する対応点を自動的に取得するモジュールである。なお、自動的に取得するのが困難な点に関しては補助的に手動で対応点を取得するように構成しても良い。
対応点取得部77の機能については後程詳細に説明する。
【0071】
写真測量部72は、対応点取得部77で取得した対応点を用いてステレオペア画像を標定し、被写体の3次元情報を算出するモジュールである。即ち、対応点の左右画像上での座標値などを用いて被写体の3次元情報を計算し、被写体を表現する3Dモデル空間を生成する。
3DCGファイル生成部73は、写真測量部72が生成した3Dモデル空間を所定のコンピュータグラフィックス言語(例えばVRML)で記述し、所定のビューア(VRMLビューアなど)で当該3Dモデル空間を表示できる状態にする。
【0072】
3DCG格納部121、121、・・・は、3DCGファイル生成部73が生成した3DCGファイルを一時的に格納するモジュールである。
1組のステレオペア画像から1つの立体モデルが生成される。本実施の形態では、部屋の各部分(窓側、壁側、出入り口側などの部屋の四方)を撮影したステレオペア画像から当該各部分の3Dモデル空間を生成し、これらを結合して部屋全体の3Dモデル空間を生成する。3DCG格納部121、121、・・・は、これら結合するための各3Dモデル空間を一時的に格納しておくモジュールである。
【0073】
結合部125は、3DCG格納部121、121、・・・(以下3DCG格納部121)に格納してある3Dモデル空間を基準点(後述)などを手掛かりにして結合し、部屋全体の3Dモデル空間を生成するモジュールである。理論的には、各3Dモデル空間の重複している部分に対応点が3点あれば、これらを結合することができる。
換言すれば、結合部125は、複数の3Dモデル空間のそれぞれの座標系を統一し、被写体全体(部屋全体)の3Dモデル空間を生成する座標系統一機能を提供する。
このように、結合部125は、結合手段を構成している。
【0074】
後述するように、室内のステレオペア画像を撮影する場合、標定の基準点を取るための標尺をステレオペア画像に写しこんでおく。
1つ標尺を固定したまま室内の各方面を撮影した場合は、各ステレオペア画像は共通の基準点を与えることができるので、3DCG格納部121に格納したそれぞれのステレオペア画像を共通の基準点の元に1つにまとめることができる。また、狭い部屋の四方を撮影するなど、標尺を固定したまま室内各方面のステレオペア画像を撮影するのが困難な場合は、2つの標尺を用い、標尺を移動させながら室内の各方面を撮影する。
この撮影方法では、複数の3Dモデルが異なる基準点を持つことになる。隣接した3Dモデル空間での共通の基準点の座標を基に後述する絶対標定によって座標系を統一した後、複数の3DCGファイルを1つにまとめる。
【0075】
歪補正部126は、生成する3Dモデル空間が室内空間をモデル化したことに着目して、壁と天井の境目などの直線と直角で構成される3次元座標データを修正する。
本実施の形態では、被写体が部屋であるため、例えば壁の輪郭を構成する線分のように1つの点から出る線分は上下前後左右である場合が多い。
そのため、2組のステレオペア画像のぞれぞれを用いて算出した点の3次元座標値が類似する場合はこれを同一の点であると認識する。
【0076】
次に、図7〜図12を用いながら、ステレオペア画像を用いた標定処理と、当該標定の結果を用いた3DCGファイルの生成について説明する。
図7は、標尺を用いた室内の撮影方法を説明するための図であり、それぞれ室内を天井方向から見た図を示している。
一組のステレオペア画像(左画像と右画像)を標定する場合、左右の画像に、少なくとも、平面位置が既知の点が2点、及び高さが既知の点が3点が基準点として写っていることが必要である。
また、生成した2つの3Dモデルを結合する場合、これら2つの3Dモデル内に、共通する基準点が3点存在することが必要である。
【0077】
そのため、本実施の形態では、予め三辺の長さが既知の直角三角形を標尺として用い、これを床に置いて左右の画像に写しこむこととした。
標尺の3つの頂点は、それぞれ位置関係が固定されているため、この3つの頂点は、平面位置、及び高さが既知の3点として使用することができる。
部屋が小さく、左右の画像に標尺を写しこむことができない場合は、2枚個の標尺を組み合わせて用いることにした。
また、後に標尺の3隅を画像処理にて自動的に抽出するため、例えば、3隅を異なる色で着色するなど、これら3隅を画像処理で自動的に識別できるようにした。
【0078】
図7(a)〜(c)は、部屋の床上の中央付近に標尺130を1つ置き、当該標尺130の周囲を反時計方向に円弧を描くように移動しながら室内の四方を撮影する場合を示している。何れの場合も標尺130の位置は同一の場所に固定してある。
まず、図7(a)に示したように、デジタル式カメラ62を用いて室内の画像(図面に向かって左上方向)を撮影する。その際に、標尺130をデジタル画像内に写しこんでおく。このとき撮影されたデジタル画像をデジタル画像aとする。
【0079】
次に、図7(b)に示したように、デジタル式カメラ62を標尺130の周りに反時計方向に移動して室内を異なる方向(図面に向かって左方向)を撮影する。その際に、標尺130をデジタル画像内に写しこんでおく。このとき撮影されたデジタル画像をデジタル画像bとする。
後にデジタル画像aを右画像とし、デジタル画像bを左画像として標定する。そのため、デジタル画像aとデジタル画像bにおいて被写体が少なくとも2/3程度オーバーラップして撮影されていることが望ましい。
【0080】
次に、図7(c)に示したように、デジタル式カメラ62を標尺130の周りに反時計方向に移動して室内を異なる方向(図面に向かって左下方向)を撮影する。その際に、標尺130をデジタル画像内に写しこんでおく。このとき撮影されたデジタル画像をデジタル画像cとする。
後にデジタル画像bを右画像とし、デジタル画像cを左画像として標定する。そのため、デジタル画像bとデジタル画像cにおいて、被写体が少なくとも2/3程度オーバーラップして撮影されていることが望ましい。
【0081】
以降、以上に説明した要領で、標尺130の周りを円弧を描くように移動しながら、室内の全ての方向についてデジタル画像a、b、c、・・・を撮影する。そして、隣接する方向を撮影したデジタル画像を組として(デジタル画像aとデジタル画像b、デジタル画像bとデジタル画像c、・・・など)標定することにより、室内の各方向についての3Dモデル空間(デジタル画像a、bによって生成した3Dモデル空間、デジタル画像b、cによって生成した3Dモデル空間、・・・など)を、室内の全ての方向に渡って生成することができる。
そして、隣接する方向に関する3Dモデル空間を、それぞれ標尺130を基準として結合することにより、室内全体の3Dモデル空間を創出することができる。
【0082】
図7(d)〜(h)は、部屋の床上の中央付近に2つ標尺130、131を置き、これら標尺130、131を移動させながら、これら標尺の周囲を反時計方向に円弧を描くように移動し、室内の四方を撮影する場合を示している。
この方法は、室内が狭いなどの問題から標尺を室内の中央付近に置き、これを固定したまま当該縮尺の周囲を移動することが困難な場合、即ち、1つの標尺を固定し、これをデジタル画像に写しこみながら室内の四方を全周に渡って撮影することが困難な場合に用いることができる。
【0083】
まず、図7(d)に示したように、デジタル式カメラ62を用いて室内の画像(図面に向かって左上方向)を撮影する。その際に、標尺130と標尺131のうち、少なくとも標尺130をデジタル画像内に写しこんでおく。このとき撮影されたデジタル画像をデジタル画像dとする。
次に、図7(e)に示したように、デジタル式カメラ62を標尺130、標尺131の周りに反時計方向に移動する。デジタル式カメラ62を移動した結果、標尺131が撮影範囲から外れることになったものとする。
次に、図7(f)に示したように、標尺131をデジタル式カメラ62の撮影範囲に入るように移動する。この際の標尺131の移動先の位置は、図7(g)で示したデジタル式カメラ62の次の移動位置で、標尺131が撮影範囲に入る場所を選んでおく。
【0084】
そして、図7(f)で示した撮影位置で室内の図面に向かって左方向の面を撮影する。この際に、標尺130と標尺131の2つをデジタル画像に写しこんでおく。このとき撮影されたデジタル画像をデジタル画像fとする。
後にデジタル画像dを右画像とし、デジタル画像fを左画像として標定する。そのため、デジタル画像dとデジタル画像fにおいて被写体が少なくとも2/3程度オーバーラップして撮影されていることが望ましい。
次に、デジタル式カメラ62を図7(g)に示した次の撮影位置に移動する。その結果、標尺130が撮影範囲から外れることになったものとする。
次に、図7(h)に示したように、標尺130をデジタル式カメラ62の撮影範囲に入るように移動する。この際の標尺130の移動先の位置は、図示しないが、次のデジタル式カメラ62の移動位置で、標尺131が撮影範囲に入る場所を選んでおく。
【0085】
そして、図7(h)で示した撮影位置で室内の図面に向かって左下方向の面を撮影する。この際に、標尺130と標尺131の2つをデジタル画像に写しこんでおく。ことのき撮影されたデジタル画像をデジタル画像hとする。
後にデジタル画像fを右画像とし、デジタル画像hを左画像として標定する。そのため、デジタル画像fとデジタル画像hにおいて被写体が少なくとも2/3程度オーバーラップして撮影されていることが望ましい。
【0086】
以上の手順により、デジタル画像d、f、hを撮影することができた。そして、デジタル画像d、fでは、標尺130が共通して写しこまれており、デジタル画像f、hでは、標尺131が共通して写しこまれている。
デジタル画像d、fでは、標尺130を基準として標定することができ、また、デジタル画像f、hでは、標尺131を基準として標定を行うことができる。一方、デジタル画像fでは、標尺130と標尺131の双方が移しこまれているので、これを用いて、生成された2つの3Dモデル空間を結合することができる。
【0087】
これを更に詳細に説明すると次のようになる。
標尺130を用いてデジタル画像d、fから3Dモデル空間dfを生成したものとする。また、標尺131を用いてデジタル画像f、hから3Dモデル空間fhを生成したものとする。
デジタル画像d、fを用いた標定の結果から、3Dモデル空間dfにおける標尺130、標尺131の座標値を計算することができる。
一方、デジタル画像f、hを用いた標定の結果から3Dモデル空間fhにおける標尺130、標尺131の座標値を計算することができる。
【0088】
以上で求めた3Dモデル空間dfにおける標尺130、標尺131の座標値と、3Dモデル空間fhにおける標尺130、標尺131の座標値が一致するように、何れかの3Dモデルを平行移動させることにより、3Dモデル空間dfと3Dモデル空間fhの座標軸を一致させて結合することができる。
以降、以上に説明した要領で、標尺130と標尺131の何れか一方を移動させながら、これら標尺の周りを円弧を描くように移動し、室内の全ての方向についてデジタル画像d、f、h、・・・を撮影する。そして、生成した3Dモデル空間を結合することにより、室内全体の3Dモデル空間を生成することができる。
【0089】
以上の図7(d)〜(h)での説明では、2つの標尺130、131を1つずつ移動することとしたが、これに限定するものではなく、例えば、隣接する何れの2つの立体モデルに共通の標尺が含まれるように、3つ以上の標尺を床上に配置し、標尺を移動せずに室内の四方のデジタル画像を撮影しても良い。
【0090】
図8は、3Dモデル空間生成システム50aについて、更に詳細に写真測量部72と3DCGファイル生成部73の構成を示した図である。
画像取得部75は、ステレオペア画像を処理に応じて一組ずつ取得するようになっている。即ち、画像取得部75が取得したステレオペア画像を対応点取得部77、写真測量部72、3DCGファイル生成部73で処理した後、次のステレオペア画像を取得する。
対応点取得部77は、左右のデジタル画像でそれぞれ対応する点を特定し、これらの画像上での2次元座標値を取得するモジュールである。
図9は、対応点取得部77の機能を説明するための、ステレオペア画像(左画像135、右画像136)の一例を模式的に示した図である。
【0091】
左画像135は、3DCGを生成しようとしている室内において、窓138が設けられた壁137を壁137に向かって左側から撮影したデジタル画像の模式図である。
右画像136は、同じ壁137を壁137に向かって右側から撮影したデジタル画像の模式図である。
左画像135、右画像136には、それぞれ同じ位置に固定した標尺130が写しこまれている。
標尺130の3隅の基準点130a、130b、130cは、写真測量の際の基準点として用いられる。
基準点130a、130b、130cは、画像処理で被写体から識別できるように、例えばそれぞれ異なる色で着色してある。
【0092】
対応点取得部77は、まず、左画像135、右画像136からこれら基準点130a、130b、130cを自動的に抽出し、これら基準点の左画像135、右画像136内での2次元座標値を用いて左画像135、右画像136を撮影した際のデジタル式カメラ62の位置や傾きなどを大まかに計算する。このように、対応点取得部77は、被写体に識別可能に配設された点を抽出して対応させる対応点抽出手段を構成している。
即ち、基準点130a、130b、130cを用いて大まかに標定する。これは、基準点130a、130b、130cに対して、後に説明する、内部標定部78、相互標定部81、絶対標定部82を作用させることにより行うことができる。又、対応点取得部77に標定機能を備えるように構成しても良い。
【0093】
また、本実施の形態では、一例として、窓138の四隅に、対応点を取得するためのターゲット140a、140b、140c、140dを設置した。
ターゲットとしては、白色の下地に黒色の十字を描いた紙や板などを用いる。そして、十字の中心を画像処理により点として抽出する。
ターゲット140a、140b、140c、140dを左画像135、右画像136の双方に移しこんでおく。
左画像135、右画像136に写っているターゲット140a、140b、140c、140d上の点の対応付けは次のように行う。
まず、左画像135、右画像136に写っている基準点130a、130b、130cの2次元座標値から左画像135、右画像136を撮影した際のデジタル式カメラ62の傾きを計算する。
【0094】
対応点取得部77は、計算により求めたデジタル式カメラ62の位置と傾き、及びターゲット上の点の左画像135、右画像136上での2次元座標値を用いて、これらターゲット140a、140b、140c、140dによる対応点を左画像135と右画像136で対応づける。この場合、対応点取得部77は対応関係特定手段を構成している。
このように、対応点取得部77は、既にステレオペア画像上で対応付けられている点を用いて更に対応する点を特定する対応点特定手段をも構成している。
【0095】
これは、対応しているターゲット上の点同士は、カメラの位置と傾きがわかれば理論上は必ず交叉するという事実を用いたものである。
即ち、被写体上のある点から発せられた光はある経路をたどって、左画像135、右画像136上の所定の点に到達する。逆に、デジタル式カメラ62を撮影時の位置に保持したまま左画像135、右画像136上のこの点から光を発すると、この光は先の経路を逆にたどって被写体上の先の点で交叉する。
このように、デジタル式カメラ62の位置と傾きがわかれば、この原理を用いて左右画像上のターゲットをそれぞれ対応付けることができる。
しかし、実際は、測定誤差などの関係により交叉しない場合があるので、この場合は一番近いターゲット上の点を対応づける。
【0096】
本実施の形態では、窓の4隅に対応点を取るためのターゲットを設置したが、ターゲットの設置場所はこれに限定するものではなく、例えば、部屋の隅など任意の場所に設置することができる。ただし、これらターゲットは、左画像135と、右画像136の双方に写しこむようにする。
また、後に左画像135、右画像136で他の対応点を検出する関係上、ターゲットは同一平面状に配置するのが望ましい。
また、ターゲットを用いずに、例えば、窓138の4隅のエッジ部分などを画像処理によって抽出し、これを対応づけるように構成することもできる。
更に、ターゲットをそれぞれ異なる色で着色したり、異なる形状としたりして他のターゲットからそれぞれ識別可能とすることにより、画像処理でこれらを抽出して対応付けることも可能である。
【0097】
ところで、標定の精度を向上させるためには、左画像135、右画像136全体に満遍なく対応点を取るのが望ましい。
そこで、対応点取得部77は、先に対応関係を求めたターゲット140a、140b、140c、140d上の点を基準として、左画像135と右画像136で対応する点を更に複数特定する。
これら対応点は、例えば、ある2つの既知の対応点(同一平面上にある)を線で結び、その線と色の境目の交点をのうち、2つの対応点の何れかに最も近い点を対応点とすることができる。
これを図9を用いて説明する。まず、ターゲット140a、140cによる対応点を直線で結ぶ。その直線を図面上方向にたどっていくと、壁137と天井の境目で画像の色が変わる。その点を対応点150aとする。一方、この直線を図面下方にたどっていくと、壁137と床の境目で画像の色が変わる。この点を対応点150cとする。
【0098】
左画像135における対応点150aと右画像136における対応点150aは、それぞれ被写体上で同一の点であり、また、左画像135における対応点150cと右画像136における対応点150cは、被写体上で同一の点である。このように、ターゲット140a、140cによる対応点を基準として、被写体上の他の対応点を左画像135と右画像136で更に特定することができ、これを標定に利用することができる。
この場合、対応点取得部77は、既に得られている前記ステレオペア画像上で対応する点のうち同一平面上にある2つの対応点を選択する選択手段と、前記選択した2つの点を含む直線上の色を画像処理により識別する識別手段を構成している。
【0099】
以上の手順を、他の2つのターゲットの組み合わせに対しても同様に行い、左画像135、右画像136で満遍なく対応点を取ることができる。
また、ターゲットの他に、基準点を用いて対応点を取得することもできる。
例えば、基準点130a、130cを結ぶ直線を壁137方向にたどっていき、画像の色が変化する点を対応点151aとすることもできる。
この場合、例えば、基準点130aとターゲット140bによる対応点を結ぶ直線など、同一平面上にない点を結ぶと対応する点が取れないので、以上の方法で対応点を取る場合は、同一平面状に設けた基準点や対応点を用いるようにする。
また、仮に同一平面上にない対応点から誤った対応点が取られたとしても、後述する遺伝的アルゴリズムで適切な対応点を選択する際に淘汰されてしまう。
【0100】
このように、本実施の形態では、既に取得した対応点と、2次元デジタル画像の特徴を用いて新規の対応点を取得することができる。
即ち、既に取得した2つの対応点を通る直線を算出すると共に、エッジ検出などにより被写体の輪郭などを抽出する。そして、この直線と被写体の輪郭との交点を対応点として取得する。この方法は同一平面上にある対応点の取得に有用である。
なお、この手法に後述する縦視差や逆変換を用いて交点を対応点して利用するか否かを判別するように構成してもよい。
これは、直線式を算出する対応点の誤差が大きい場合、誤差が蓄積されていく可能性があるため、縦視差や逆変換による誤差検証を行うものである。
以上の手順では、画像の色が変化する点を用いて対応点を求めたが、例えば、次のような他の方法を用いて対応点を取得することもできる。
なお、標定では、被写体上の同一点の写真上での2次元座標値を左画像、右画像のそれぞれについて最低6点知る必要がある。
【0101】
(1)縦視差を用いた対応点取得方法。
この手法は、写真の像は被写体から反射された光がレンズ中心を直進してフィルムの平面に投影される、という共線条件により算出できる縦視差を用いるものである。
複数のカメラで同一点を撮影した場合、各カメラの光は、理論上必ず一点で交叉する。しかし、実際には、レンズの歪みや光の屈折などにより誤差が生じる。この交点において生じる誤差が縦視差である。
本方法では縦視差の小さい点を検出することにより対応点を取得する。また、縦視差を用いることにより、対応点の誤差の検証が可能となる。本方法では、誤差の検証も可能であるため、他の対応点取得方法と組み合わせて利用すると有用である。
【0102】
(2)逆変換を用いた対応点取得方法。
本手法は、まず、写真測量技術を用いて対応点のステレオ画像上の2次元座標(例えば後述するピクセル座標)から3次元座標データを計算する。次に算出された3次元座標データを写真測量技術を用いて逆変換し、2次元座標を計算する。そして、初期値の2次元座標と逆変換により算出された2次元座標の誤差を算出する。本手法では、対応点の精度と算出された誤差が相関するため、誤差の小さい点を検出することにより対応点を取得する。
本手法は、誤差の検証も可能であるため、他の対応点取得方法と組み合わせて利用すると有用である。
【0103】
(3)エッジ検出を用いた対応点取得方法。
ステレオペア画像は、多大な色情報を持つ。そのため、ステレオペア画像の色情報の変化量から画像のエッジを検出することが可能である。本手法では、ステレオペア画像において、左右の画像における対応点同士は同様の色情報を持つため、エッジ検出を用いて対応点を取得する。本手法は、対応点の候補点の絞り込みにおいて非常に有用である。
【0104】
(4)軌跡を用いた対応点取得方法
本手法は、3次元座標データの軌跡を求めることにより、対応点を取得するものである。
まず、既知の2つの対応点を通る直線式を算出する。次に、その直線上に2次元座標上を等間隔に任意の対応点を取得する。そして、それぞれの対応点において3次元座標データを算出する。更に、算出した3次元座標データの軌跡を算出する。その軌跡は、必ず平面の境目が変極点になる。再議に、その極値情報を元に対応点を取得する。本手法は、複数の平面の境目を表す対応点の取得に有用である。
【0105】
対応点取得部77は、以上の手順により基準点、対応点を求めた後、これらの点の左画像135上での2次元座標値と右画像136での2次元座標値を出力する。
これらの座標値は、例えば、デジタル画像の中央を原点とし、座標値をミリメートル単位で取得する。これには、座標値をピクセルで取得した後(2次元ピクセル座標)、この座標値にピクセルの大きさを掛ければ良い。
【0106】
写真測量部72(図8)は、内部標定部78、準最適解探索部84から構成されている。
後に詳細に説明するように、写真測量は一般に、被写体を異なる方向から撮影した一組のステレオペア画像を内部標定、相互標定、絶対標定の順に標定し、被写体の3次元座標値を算出する。このように写真測量は内部標定、相互標定、絶対標定の3つのフェーズから構成されている。
【0107】
内部標定とは、被写体が感光面(CCD)に投影される際の歪を修正したりなどして、画像上の2次元座標(機械座標と呼ばれる)を相互標定に使用する写真座標に変換する作業である。機械座標は、長さの単位がピクセル単位であり、座標原点は画像の4角の何れかに設定されている。写真座標系は、長さの単位がミリであり、座標原点は画像の中心に設定されている。機械座標から写真座標への座標変換にはアフィン変換を用いた。
【0108】
相互標定とは、ステレオペア画像間の相対的な傾きや位置の関係を求め、撮影状態を再現する作業である。即ち、ステレオペア画像を撮影した際のデジタル式カメラ62の位置や傾きを算出する。
相互標定により、相対的な3次元座標系であるモデル座標系が得られ、被写体はモデル座標系内で被写体と相似な立体モデルとして表される。
相互標定の段階ではモデル座標系の縮尺と傾き及び平行移動量は不明である。
【0109】
絶対標定とは、ステレオペア画像に写しこんでおいた基準点の絶対座標(実際の測量値)を用いてモデル座標の縮尺や傾き及び平行移動量を求める作業である。絶対標定により被写体と同じスケールの立体を得ることができる。
より具体的には、被写体を重心中心で回転変換を行うための重心座標系への変換、累積縮尺の計算、累加並行移動量の計算、累積回転行列の計算、全対応点の座標変換、標高の調整計算、平面位置の標高計算などを行う。
このように、写真測量部72は、ステレオペア画像を撮影した際のデジタル式カメラ62の位置関係を解析する位置関係解析手段と、被写体の3次元情報を算出する標定手段を構成している。
【0110】
内部標定部78は、対応点取得部77から基準点、対応点の座標値を受け取り、またカメラデータデータベース52(図5)からカメラデータを受け取る。そして、内部標定部78は、これらの座標値とカメラデータを用いてステレオペア画像を内部標定し、標定結果を準最適解探索部84に出力する。
準最適解探索部84は、点選定部80、相互標定部81、絶対標定部82、評価・判断部83から構成されている。
準最適解探索部84は、対応点取得部77から取得したステレオペア画像上の複数の点(基準点、対応点)の様々な組み合わせを発生させ、標定の精度が所定の程度を満たす点の組み合わせを探索する。
即ち、標定の精度がある程度高くなる点の組み合わせを探し、この組み合わせを用いてステレオペア画像を標定する。このように、準最適解探索部84が探索する点の組み合わせは、必ずしも全ての組み合わせの中で、最も測量精度が高くなる点の組み合わせとは限らないため、準最適な組み合わせと呼ばれる。
【0111】
標定の精度は、所定の方法で残差を定義し、残差が所定の条件を満たしたとき、所望の精度が得られたものとする。
例えば、残差は次のように定義することができる。まず、点のある組み合わせからステレオペア画像の標定を行う。そして、標定結果を用いて各基準点(例えば標尺130の各頂点)の3次元座標値を計算する。次に、各基準点の実測値(予めわかっている)と計算値を比較する。
この比較値により標定の精度を検証することができる。例えば、各基準点の座標値の計算値と実測値の差を座標軸のそれぞれに全て加算したものを残差とすることができる。
そして、後に説明する遺伝的アルゴリズムを用いて対応点の様々な組み合わせを発生させて繰り返し標定すると、残差が小さくなっていき、ある値に収束する。この残差が収束したときの対応点の組み合わせをもって標定結果を得る。
【0112】
準最適解探索部84の各構成要素の機能は次の通りである。
点選定部80は、遺伝的アルゴリズムに従って基準点と対応点から点の組み合わせを生成する。遺伝的アルゴリズムについては、後程説明する。
相互標定部81は、点選定部80が生成した点の組み合わせに対して相互標定を行う。即ち、左画像135と、右画像136を撮影した際のデジタル式カメラ62の位置と傾きを求め、被写体(室内)に相似な3Dモデル空間を生成する。絶対標定部82は、相互標定部81が出力した結果を用いて、ステレオペア画像を絶対評価し、被写体と同じ縮尺の3Dモデル空間を生成する。また、絶対標定の段階で、標定に用いられた点の3次元座標値が求められる。
【0113】
評価・判断部83は、絶対標定部82が出力した3Dモデル空間の精度を、先に説明した基準点の3次元座標によって定義した残差などを用いて確認し、標定結果の収束を判断する。
また、標定に用いた点の組み合わせに基準点が含まれていないなど、標定結果に基準点の3次元座標値が含まれていない場合は、後に説明する各点座標値計算部86により基準点の3次元座標値を求める。
点選定部80〜評価・判断部83は、以上の作業を結果が収束するまで繰り返す。絶対標定の結果が収束した場合は、このときの点の組み合わせで得られた結果を標定結果とする。写真測量部72は、標定に用いた点の3次元座標などの標定結果を3DCGファイル生成部73に渡す。
【0114】
以上に説明した写真測量部72は、絶対標定までおこなって、被写体の同一の縮尺の3Dモデル空間を生成したが、本実施の形態の目的は、3Dモデル空間で不動産物件の部屋を表現することであるので、必ずしも物件の絶対的な大きさを知る必要はない。そのため、写真測量部72で絶対標定まで行わず、相互標定で実際の部屋と相似な3Dモデル空間を生成し、これを持って部屋を表現しても良い。
【0115】
3DCGファイル生成部73は、各点座標値計算部86、ポリゴン生成部88、ソースコード生成部90、テクスチャ生成部92、テクスチャ貼り付け部94などから構成されている。3DCGファイル生成部73は、被写体の3Dモデルを生成する立体モデル生成手段を構成している。
各点座標値計算部86は、標定の結果得られた各パラメータ(左右画像の傾きや標定に用いられた点の3次元座標値)を写真測量部72から受け取ると共に、標定に用いられなかった点の3次元座標値を標定結果を用いて算出する。
【0116】
ステレオペア画像の標定が既に完了しているので、左画像135と右画像136で任意の対応点を取れば、これらの3次元情報は即座に算出することができる。
また、後にポリゴンを発生させる都合上、ポリゴン作成用の点(基準点、対応点を含む)が一様に分布するように、ステレオペア画像上に新たに対応点を発生させ、その3次元座標値を絶対標定の結果から算出する機能を各点座標値計算部86に加えることも可能である。
ポリゴン生成部88は、各点(基準点、対応点)の3次元座標値を各点座標値計算部86から取得し、これらからボロノイ領域を生成し、更にボロノイ領域をドロネー分割してポリゴンを発生させる。なお、以降の作業は左画像135に対して行う。
【0117】
図10(a)は、ボロノイ領域、及びドロネー分割を説明するための図である。
ボロノイ領域とは、2次元空間又は3次元空間上の点集合をそれぞれの点の距離が最短になる領域に分割したものである。
点191a、191b、191c、・・・は3次元座標値がわかっている被写体上の対応点である。
平面192a(図では便宜上線分で表している)は、平面上の点が点191a、点191bから等距離にある平面である。また、平面192bは、平面上の点が点191a、点191cから等距離にある平面である。このようにして平面192a、192b、192c、・・・を発生させる。その結果、ボロノイ領域194a、194b、194c、・・・が生成される。
【0118】
ドロネー分割とは、ボロノイ領域を基に三角形を形成し、領域を分割する技術である。
図10(a)で、隣接するボロノイ領域194a、194b、194cの中心にある点191d、191c、191bを線分193c、193a、193bで結ぶとボロノイ領域195が生成される。ボロノイ領域はポリゴンとして利用することができる。このようにして、被写体上の点の集合からポリゴンを発生させる。
以上のようにボロノイ領域を利用してポリゴンを発生させると、図10(b)に示したような細長いポリゴン196の発生を抑制することができる。
【0119】
このようにして、ポリゴン生成部88は、点の集合から自動的に三角ポリゴンを発生させることができる。そして、発生させたポリゴンから、後に3DCGのソースコードを生成する際に必要な線・面情報を容易に取得することができる。ここで、線情報とは、ポリゴンを構成する線分の3次元座標情報であり、面情報とは、ポリゴンを構成する面の3次元座標情報である。
線情報からは、被写体のワイヤーフレームモデルを生成することができ、面情報からは、サーフェスモデルやソリッドモデルを生成することができる。
本実施の形態ではワイヤーフレームモデルを生成せずに、面情報からサーフェスモデルを生成するものとする。
そのため、ポリゴン生成部88は、面情報をソースコード生成部90に渡す。
【0120】
ソースコード生成部90(図8)は、ポリゴン生成部88から受け取った面情報を用いて3DCGのソースコードを生成する。ソースコードを記述するコンピュータグラフィックス言語としては、例えばVRMLを用いることができる。
【0121】
テクスチャ生成部92は、ポリゴン生成部88で生成した各ポリゴンに貼り付ける画像を左右画像から切り抜くモジュールである。
テクスチャ生成部92は、画像取得部75から左画像を受け取り、ポリゴン生成部88から各ポリゴンの左右画像上での形状と位置を表す情報を受け取る。
そして、テクスチャ生成部92は、各ポリゴンの形状と位置に該当する左右画像上の領域を各ポリゴンごとに抽出することにより切り抜く。
切り抜いた画像は例えばJPEG形式などの画像ファイルにて3Dモデル空間データベース58(図5)に格納される。
このようにテクスチャ生成部92はテクスチャ生成手段を構成している。
【0122】
テクスチャ貼り付け部94は、ソースコード生成部90が生成した立体モデルにテクスチャ生成部92が切り抜いたテクスチャを貼り付ける。
ソースコード生成部90が生成した立体モデルは三角ポリゴンにより構成されている。
テクスチャ貼り付け部94は、各ポリゴンに貼り付ける画像データを特定する情報をテクスチャ生成部92から受け取り、この情報を基に各ポリゴンに該当する画像データを貼り付けて3DCGのソースコードを更新する。
【0123】
このように、テクスチャ貼り付け部94は、テクスチャ貼り付け手段を構成している。
そして、テクスチャ貼り付け部94は、更新したソースコードを3DCG格納部121(図6)に出力する。
例えば、VRMLの場合、テクスチャの貼り付けはVRMLファイル(テキストファイル)中の所定の個所に該当するテクスチャのファイル名などを書き込むことにより行う。
【0124】
次に、遺伝的アルゴリズムについて説明する。
本実施の形態では、遺伝的アルゴリズムを用いて、標定にかかる計算時間を大幅に短縮する方法を採用した。
写真測量を行う場合、ステレオペア画像上の点(基準点、対応点)のうち、いくつか(最低6個)を選択し、選択された点を用いて標定計算を行う。
点の選択の仕方により標定精度が異なるため、多数ある点の中から高い精度で標定計算を行うことができる点の組み合わせを探さなくてはならない。従来の写真測量では、高度の専門知識と豊富な経験を有する作業者が点の組み合わせの探索を行っていた。ところが、このような専門家においてさえ最適な点の組み合わせの探索は困難である。
【0125】
そこで、本実施の形態では、点からなる組み合わせを複数個任意に作り、残差が一定の範囲に収束するまでこれらに、交叉、突然変異といった遺伝的アルゴリズムにおける遺伝操作を繰り返すことにより残差を収束させる方法を採用する。この方法を用いれば、計測点数が多い場合でも、全ての点の組み合わせに対して標定計算をする必要がなくなり、計算時間の軽減を実現することができ、また、必要な精度を満たす標定結果を得ることができる。
【0126】
遺伝的アルゴリズムは、固体集団において、交叉、淘汰、突然変異といった作用を行いながら、生存競争の末に環境に対する適合度が高い固体が生き残っていくというダーウィニズム進化論に端を発する。進化論によれば、より環境に適した者が淘汰において生き残る確率が高く、生き残った者同士が交叉することにより、次世代により優れた形質を残すとともに、突然変異によって、新しい形質を獲得する。仮に突然変異によって劣った形質を獲得した場合、その固体は淘汰されてしまうので、結果的に突然変異によってより優れた形質を獲得したものが生き残り、その子孫が増え、固体集団全体の適合度は向上する。
【0127】
突然変異により、交叉のみでは得られない遺伝子を発生させることができる。数学的な言い方をすれば、突然変異をすることにより、局所解を回避し、より最適な解を得ることができる。
このプロセスをアルゴリズム化したのが遺伝的アルゴリズムである。遺伝的アルゴリズムでは対象を何らかの方法で遺伝子(遺伝子コードとも呼ばれる)で表現し、評価関数を用いて遺伝子の適合度を求める。
【0128】
評価関数は自然界で言えば自然環境に当たる。この自然環境に対する適合度が高い遺伝子を持った個体ほど生き延びて子孫を残す確率が高くなり、適合度が低い遺伝子を持った個体は子孫を残す確率が低くなり、その結果、全体として、優れた形質を持った次の世代が形成される。
遺伝的アルゴリズムの工学への適用は盛んに研究されており、ジェットエンジンの設計の最適化や、コジェネーションの最適化、道路整備順位の決定などの数多くの組み合わせ最適化問題に適用されている。
【0129】
図11は点の組み合わせを表現した図である。この例では、基準点、対応点など写真測量に用いる点を20点取った。遺伝子は20個の遺伝子座158a、158b、・・・、158tからなり、それぞれの遺伝子座には0又は1の2つの数値が割り振られている。遺伝子座とは遺伝子の構成単位である。これらの遺伝子座にP1からP20までの点を対応させることにより、それぞれの点に0か1の数値を割り振る。
【0130】
点に1が対応しているときは、その点は標定を行う点の組に採用され、0が対応しているときは採用されない。
例えば、P1、P2、P5、P7、P9、P12、P18の遺伝子座に1が割り振られ、その他の遺伝子座には0が割り振られた場合、P1、P2、P5、P7、P9、P12、P18が標定を行う点の組み合わせとして選択されたことを意味する。
【0131】
本実施の形態では、これらの遺伝子の適合度は、当該遺伝子の標定から得られる残差の逆数とした。即ち、残差が小さいほど適合度は大きくなる。残差は実施例1と同じ方法で求めた。また、適合度の取り方は、これに限るものではなく、標定の精度が高い遺伝子ほど適合度が大きくなるものであれば良い。
遺伝的操作としては交叉と突然変異を行った。
交叉は、適合度の高い遺伝子を2つ選択し、2点交叉を行った。2点交叉とは、例えば図11の第2の遺伝子座と第3の遺伝子座の間の点151と、第4の遺伝子座と第5の遺伝子座の間の点52に挟まれた領域にある遺伝子のデータを2つの遺伝子の間で交換することである。
【0132】
前記点151と点152の選び方は任意の場合もあるし、固定してある場合もある。交叉方法として、この他に1点交叉や3点交叉などを行っても良い。
突然変異は、ある一定の確率で任意の遺伝子中の0と1をいくつか反転させることにより行った。これにより、交叉のみでは、生み出せない新しい遺伝子を形成し、局所最適解に陥らないようにする。
【0133】
本実施の形態では標定精度が高くなる点の組み合わせについて標定を行うため、この組み合わせからもれる点については淘汰され標定計算が行われない。
ところで、本実施の形態のアルゴリズムにより標定が行われ、全ての標定要素(デジタル式カメラ62の傾きやモデル座標の縮尺、回転、平行移動など)が求まると、これらの標定要素を用いて、淘汰された点の実空間での3次元座標値を計算することができる。このため、標定作業で計測点が淘汰され、その座標値が計算されなかった場合でも、標定結果を用いてそれらの座標値を計算することができる。
【0134】
図12は遺伝的操作を繰り返すごとに、遺伝子の適合度が上昇し、ある値に収束するところを示している。点154は第一世代の各遺伝子の適合度の最大値である。
遺伝的操作を行うごとに、各遺伝子の適合度を計算する。それらの適合度の最大値は、世代を経るごとに上昇する。そして、ある程度世代を経ると、その最大値はほぼ一定の値を示すようになる。このとき、適合度が収束したと判断する。
【0135】
本実施の形態では図12の点156に示したように、ある計算時間±t、例えば、±3分間における各遺伝子の適合度の最大値が±1パーセント以内に収まったとき、収束したと判断した。適合度の収束条件はこれに限らず、例えば、所定の世代に渡って、適合度の最大値が所定のパーセント以内に収まったときを収束と判断したり、また、各遺伝子の適合度の最大値ではなく、平均値を用いたりしても良い。
【0136】
図13は、ステレオペア画像から3DCGデータを生成するまでの手順を説明するためのフローチャートである。
まず、画像取得部75が写真測量を行うためのステレオペア画像を取得する(ステップ5)。
次に、対応点取得部77が、ステレオペア画像から、予めステレオペア画像に写しこんでおいた基準点を抽出する(ステップ10)。
【0137】
次に、内部標定部78、相互標定部81、絶対標定部82により、ステレオペア画像上の基準点の2次元座標値から左画像と右画像を撮影した際のデジタル式カメラ62の位置と傾きを計算する。そして、各点座標値計算部86は、計算結果を用いて左画像におけるターゲット上の点の3次元座標と右画像におけるターゲット上の点の3次元座標を計算する。対応点取得部77は、左画像と右画像で3次元座標値が近いターゲット上の点を対応付け、対応点とする(ステップ15)。
【0138】
次に、対応点取得部77は、取得した対応点を用いて更に対応点を取得する(ステップ20)。これは、例えば2つの既知の対応点を結んだ直線上で画像の色が変化する点を検出するなどして行う。
次に、内部標定部78がカメラデータなどを用いて内部標定を行う(ステップ78)。
【0139】
次に、点選定部80が、基準点、対応点の中から所定の数の点を選択し、点の組み合わせを生成する(ステップ30)。
次に、相互標定部81が、生成された点の組み合わせを用いてステレオペア画像を相互標定する(ステップ35)。
次に、絶対標定部82が相互標定の結果を用いて絶対標定を行う(ステップ40)。
次に、評価・判断部83が、基準点の3次元座標値を標定結果を用いて残差を計算し、標定の精度の収束を判断する(ステップ45)。評価・判断部83が収束していないと判断した場合(ステップ45;N)、ステップ30に戻り、遺伝的アルゴリズムに従って新たな点の組み合わせを発生させ、標定作業を再度行う。
【0140】
評価・判断部83が収束したと判断した場合(ステップ45;Y)、各点座標値計算部86が、標定結果を用いて、標定に用いられなかった他の点の3次元座標値を計算する(ステップ50)。
次に、ポリゴン生成部88が、点(基準点、対応点)を用いて被写体をドロネー分割し、更にドロネー分割の結果を用いてボロノイ領域を生成してポリゴンを生成する(ステップ55)。
【0141】
次に、ソースコード生成部90が、生成されたポリゴンを用いて例えばVRMLなどのコンピュータグラフィックス言語によりソースコードを生成する(ステップ60)。即ち、立体モデルを所定のコンピュータ言語にて記述する。
一方、テクスチャ生成部92は、画像取得部75が左画像を取得し、これを用いてポリゴン生成部88が生成したポリゴンに貼り付けるテクスチャを切り抜いて生成する(ステップ65)。
【0142】
次に、テクスチャ貼り付け部94が、ソースコード生成部90が生成したソースコードを更新することにより、立体モデルにテクスチャ生成部92が生成したテクスチャを貼り付ける(ステップ70)。
テクスチャ貼り付け部94は、テクスチャを貼り付けた立体モデルを3DCG格納部121に出力し、処理を終了する。
【0143】
以上に説明した3Dモデル空間生成システム50aにより、以下のような効果を得ることができる。
(1)ステレオペア画像の左右画像から、対応する基準点を自動抽出することができる。
(2)ターゲットなどを用いることにより、ステレオペア画像画像から対応点を自動的に取得することができる。
(3)既知の対応点を用いて新たな対応点を自動的に取得することができる。
【0144】
(4)基準点、対応点を用いて、ステレオペア画像を自動的に標定することができる。
(5)遺伝的アルゴリズムを用いることにより、高速に準最適解を求めることができる。
(6)標定結果を用いて、自動的にコンピュータグラフィックスを生成することができる。
(7)立体モデルにテクスチャとして実際の室内画像を貼り付けることができる。
(8)室内の異なる面に関する立体モデルを1つに結合することができる。
【0145】
図14は、コンテンツ作成画面の一例を示した図である。
コンテンツ作成画面201は、コンテンツ作成プログラム54(図5)をCPU28で実行することによりディスプレイに表示されたものである。コンテンツ作成者はコンテンツ作成画面201を適当に操作することにより、コンテンツ作成プログラム54が提供するモデルハウスコンテンツ作成機能を利用することができる。
これにより、所定の不動産物件の各部屋に3DCGを対応付け、モデルハウスコンテンツを作成することができる。
【0146】
物件欄205は、モデルハウスファイル21を作成しようとする不動産物件を特定する物件特定情報、例えば住所などを入力する欄である。
参照ボタン206は、物件欄205への物件特定情報の入力を補助するためのボタンである。参照ボタン206をクリックすると、間取り図データベースに間取り図が格納されている物件特定情報が一覧表示される。コンテンツ作成者は、一覧表示された物件特定情報から所望のものをクリックすることにより、当該物件特定情報を物件欄205に入力することができる。
間取り表示エリア207、208は、それぞれ物件欄205で指定された不動産物件の間取り図を表示するエリアである。
CPU28は、物件欄205に物件特定情報が入力されると、この情報をキーとして間取り図データベースを検索するようになっている。間取り表示エリア207、208に表示される間取り図は、CPU28が検索された間取りデータを用いて表示したものである。
【0147】
本実施の形態では、一例として2階建ての不動産物件が検索されたものとする。この場合、間取り表示エリア207には1階の間取り図が表示され、間取り表示エリア208には2階の間取り図画表示される。
不動産物件が1階建ての場合は間取り表示エリア207のみ表示される。このように、不動産物件の間取り図の数に応じて間取り表示エリアが表示されるようになっている。
【0148】
3D画像欄220は、区分情報を入力する欄である。3Dモデル空間データベース58は不動産物件ごとに区分されており、同一不動産物件に属する3DCGファイルは同一区分に分類されている。
3D画像欄220に区分情報を入力することにより、所望の不動産物件に関する3DCGファイルを特定することができる。
区分情報としては、例えば、当該不動産物件の住所など、当該不動産物件を特定する情報が用いられる。
参照ボタン221は、3D画像欄220への区分情報の入力を補助するためのボタンである。参照ボタン221をクリックすると、3Dモデル空間データベース58に形成されている不動産物件ごとの区分が一覧表示される。コンテンツ作成者は、一覧表示された3DCG特定情報から所望のものをクリックすることにより、当該物件特定情報を物件欄205に入力することができる。
【0149】
サムネイル表示エリア223は、3D画像欄220に入力された区分に属する3DCGファイルを一覧表示するエリアである。
3DCGファイルの一覧表示は、当該3DCGファイルに係る部屋の一部を2次元画像として表したサムネイル226、227、・・・を用いて行われる。
コンテンツ作成者は、サムネイル表示エリア223に表示されたサムネイル226、227、・・・を見ることにより、3DCGファイルがどの部屋の3DCGファイルであるかを認識することができる。
【0150】
サムネイル表示エリア223は、スライドバー224を備えており、これをマウス操作でスライドすることにより、サムネイル226、227、・・・を上下方向にスライドさせることができる。サムネイル226、227、・・・をスライドさせることにより、サムネイル表示エリア223に一度に表示しきれない分も表示させることができる。
【0151】
コンテンツ作成者は、サムネイル表示エリア223に表示されたサムネイルを間取り表示エリア207などの間取り図に表示された部屋の上にドラッグアンドドロップすることにより、両者を関連付けることができる。
ドラッグアンドドロップとは、ポインタを対象物に合わせ、所定のマウスボタンを押したままマウスを移動させ、目的の位置でマウスボタンを離す操作を言う。
例えば、サムネイル226にポインタ210を合わせ、これを台所229にドラッグアンドドロップするとサムネイル226と台所229を関連付けることができる。
これによって、モデルハウス画面20(図4)の間取り表示エリア11に表示される間取り図上の部屋と、3DCG表示エリア12に表示される3DCGとの対応関係を決めることができる。
【0152】
作成ボタン215は、コンテンツファイルを作成するためのボタンである。サムネイル表示エリア223のサムネイルと間取り表示エリア207などの間取り図上の部屋との対応関係を決めた後、作成ボタン215をクリックすると、当該不動産物件に関するモデルハウスファイルが作成される。コンテンツ作成者は、このモデルハウスファイルをモデルハウスサーバ6にアップロードすることにより、Web上でモデルハウスファイルを利用できるようにすることができる。
【0153】
リセットボタン216は、作業中の間取り図上の部屋と、3DCGファイルとの対応関係を全て取り消すためのボタンである。
キャンセルボタン217は、コンテンツ作成者が指定した間取り図上の特定の部屋と、当該部屋に対応付けられている3DCGファイルとの対応関係を取り消すためのボタンである。対応関係を取り消す部屋を間取り図上でクリックした後、キャンセルボタン217をクリックすると、当該部屋と、当該部屋に対応付けられた3DCGファイルとの関連付けを解消することができる。
【0154】
以上に説明したように、コンテンツ作成画面201を用いることにより、コンテンツ作成者は、間取り図上の部屋と、部屋をコンピュータグラフィックス化した3DCGを容易に対応づけることができる。
また、コンテンツファイルを例えば、HTMLにて自動生成することができる。
【0155】
本実施の形態では、以下のような効果を得ることができる。
(1)公共住宅やその他の不動産物件の物件情報をWeb上で公開することができ、店頭に間取り図などの物件情報を備えるよりも、低コストで質の高い物件情報をユーザに提供することができる。
(2)物件情報は、全てモデルハウスサーバ6などの記憶媒体に格納されるため、データの保守、管理が容易になり、店頭で物件情報を公開するよりも維持コストを低減することができる。
(3)ユーザは、実際の不動産物件の室内を撮影した画像から作成した3DCGをWeb上で閲覧することができるため、実際の部屋の状態を詳しく知ることができる。
(4)ユーザは、インターネット5に接続可能な端末3を利用すれば容易にモデルハウスコンテンツを利用することができるため、不動産物件の販売を促進することができる。
【0156】
以上、本発明の1実施形態について説明したが、本発明は説明した実施形態に限定されるものではなく、各請求項に記載した範囲において各種の変形を行うことが可能である。
【0157】
【発明の効果】
本発明によれば、Web上の3Dモデル空間で利用するモデルハウスを容易に構築することができる。
【図面の簡単な説明】
【図1】(a)は、モデルハウスシステムの構成を示した図であり、(b)は、ブラウザの構成を概念的に示した図である。
【図2】モデルハウスコンテンツの画面遷移の一例を示した図である。
【図3】(a)は、モデルハウスファイルの構成を模式的に表した図であり、(b)は対応テーブルの構成を示した図であり、(c)は、中央処理部26とその他の構成要素との関係を示した図である。
【図4】モデルハウス画面の一例を示した図である。
【図5】コンテンツ作成装置のハードウェア的な構成の一例を示したブロック図である。
【図6】3Dモデル空間生成システムの構成を示した図である。
【図7】(a)〜(c)は1つの標尺を用いた室内の撮影方法を説明するための図であり、(d)〜(h)は2つの標尺を用いた室内の撮影方法を説明するための図である。
【図8】写真測量部と3DCGファイル生成部の構成を示した図である。
【図9】ステレオペア画像の一例を模式的に示した図である。
【図10】(a)は、ボロノイ領域、及びドロネー分割を説明するための図であり、(b)は細長いポリゴンを示した図である。
【図11】点の組み合わせを表現した図である。
【図12】遺伝的操作を繰り返すごとに、遺伝子の適合度が上昇し、ある値に収束するところを示した図である。
【図13】ステレオペア画像から3DCGデータを生成するまでの手順を説明するためのフローチャートである。
【図14】コンテンツ作成画面の一例を示した図である。
【符号の説明】
1 モデルハウスシステム
3 端末
4 ブラウザ
5 インターネット
6 モデルハウスサーバ
7 コンテンツ作成装置
8 間取り表示部
9 3D表示部
11 間取り表示エリア
12 3DCG表示エリア
13 家具名入力欄
14 家具表示エリア
15 間取り選択エリア
16 平行移動ボタン
17 回転ボタン
18 物件絞り込み画面
19 見学申込画面
20 モデルハウス画面
21 モデルハウスファイル
22 制御プログラム
23 間取りデータベース
24 3DCGデータベース
25 対応テーブル
26 中央処理部
27 制御部
28 CPU
30 ROM
32 RAM
34 入力手段
38 出力手段
42 通信制御装置
43 バスライン
44 入出力インターフェース
46 記憶媒体駆動装置
48 記憶装置
50 3Dモデル空間生成プログラム
52 カメラデータデータベース
54 コンテンツ作成プログラム
56 画像データベース
58 3Dモデル空間データベース
62 デジタル式カメラ
72 写真測量部
73 3DCGファイル生成部
75 画像取得部
77 対応点取得部
78 内部標定部
80 点選定部
81 相互標定部
82 絶対標定部
83 評価・判断部
84 準最適解探索部
86 各点座標値計算部
88 ポリゴン生成部
90 ソースコード生成部
92 テクスチャ生成部
94 テクスチャ貼り付け部
121 CG格納部
125 結合部
126 歪補正部
130 標尺
131 標尺
135 左画像
136 右画像
137 壁
195 ボロノイ領域
201 コンテンツ作成画面
205 物件欄
206 参照ボタン
207 間取り表示エリア
208 間取り表示エリア
210 ポインタ
215 作成ボタン
216 リセットボタン
217 キャンセルボタン
220 3D画像欄
221 参照ボタン
223 サムネイル表示エリア
224 スライドバー
226 サムネイル
227 サムネイル
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a three-dimensional model space generation apparatus and the like, for example, relates to an apparatus for constructing a model house in a three-dimensional model space by photogrammetry using stereo pair images.
[0002]
[Prior art]
Conventionally, a customer who wants to purchase or rent a house has visited a real estate agent's store that deals with the target property and browsed the materials provided in the store. In addition, if the object of rent is a public housing, they went to the facilities of each local government and browsed the materials of the public housing.
These materials, which are provided at real estate agent stores and municipal facilities, are mainly floor plans. In some cases, a picture of the exterior or interior of the building is attached.
[0003]
When the customer browsed these materials and found the desired property, he visited the site with a real estate agent in order to confirm the actual property (such as how the room was damaged). And he was guided to the inside of the actual residence and checked the status of the property directly.
With the rapid spread of the Internet in recent years, attempts have been made to publish real estate information on the Web.
This means that the same level of information as the information viewed in the store, that is, a floor plan, a photo inside the room, etc. is sent to the customer's terminal by the Web server, and the customer has no trouble bothering at the store of the real estate agent. Can also view property information.
In addition, it is convenient to generate a 3D model space of a real estate property using computer graphics and provide it to a customer, but there is the following Patent Document 1 as a related technology for configuring the 3D model space.
[0004]
[Patent Document 1]
JP2002-31527
[0005]
The technique proposed in Patent Document 1 is a technique in which a subject is photographed with a digital camera from two different directions, and information regarding the three-dimensional shape of the subject is calculated from the coordinate values of the subject in the digital image.
[0006]
[Problems to be solved by the invention]
However, when browsing private real estate information at a real estate agent's store or when viewing public housing information at a local government facility, the user must visit these stores and facilities within the business hours of these stores and facilities. It must be done.
In addition, even if you go to these stores and facilities, the information obtained is rough two-dimensional information such as floor plans, appearance, and indoor photos. It is necessary to visit.
In order to visit the property, the customer must make an appointment with the real estate agent, etc., and check with the real estate agent on the date and time specified in the promise, and confirm the damage to the actual property room directly. Don't be.
[0007]
Thus, it takes a lot of labor and time to make a preview, and there is a limit to the number of properties that can be confirmed.
In addition, real estate information published on the Web only provides rough two-dimensional information (scheduled floor plans, external appearances and indoor photos), and customers need to visit the site.
In addition, it is conceivable that the interior of a property can be expressed by 3D computer graphics so that the inside of a room can be confirmed on the Web. Conventional 3D model space (hereinafter referred to as 3D model space) generation technology Then, it takes much production time and production cost to generate a 3D model space for one property, and it is difficult to generate a 3D model space for a large amount of property information.
[0008]
Accordingly, an object of the present invention is to provide a 3D model space generation apparatus, a 3D model space generation method, and a 3D model space generation method that can easily construct a model house used in a 3D model space on the Web as well as 3D model space generation program The Is to provide.
[0009]
[Means for Solving the Problems]
In order to achieve the above object, the present invention provides, in the invention according to claim 1, image acquisition means for acquiring a pair of stereo pair images obtained by photographing the same reference point and the same subject from at least two different directions, On the stereo pair image, corresponding point extracting means for extracting and corresponding to the points that can be identified by the subject; Selection means for selecting two corresponding points on the same plane among corresponding points on the stereo pair image already obtained, and a color on a straight line including the selected two points are identified by image processing A point that is closest to either one of the two points among the points on which the identified color on the straight line changes; On the stereo pair image As a corresponding point Corresponding point specifying means, a combination means for specifying a combination of points obtained by the corresponding extracting means, a point that can be obtained a predetermined orientation accuracy from the points specified by the corresponding point specifying means, and the specified combination 3D model space generation apparatus, comprising: an orientation unit that locates the stereo pair image using points included in the image and calculates 3D information of the subject.
In the invention according to claim 2, the points extracted by the corresponding point extracting means include at least two points where the horizontal position is known in advance and at least three points where the height is known in advance. The three-dimensional model space generation device according to claim 1 is provided.
In the invention according to claim 3, the position for analyzing the positional relationship of the camera when the left image and the right image constituting the stereo pair image are photographed by using the corresponding points on the stereo pair image already obtained. A correspondence analysis means; and a correspondence specifying means for specifying a correspondence relation between a point on the left image and a point on the right image using the analyzed positional relation, and the corresponding point identification means A point on the left image is associated with a point on the right image by using the correspondence specified by the correspondence specifying means, and the corresponding point on the stereo pair image is specified. A three-dimensional model space generation apparatus according to claim 1 or 2 is provided.
Claim 4 The invention described in claim 1, further comprising: a three-dimensional model generation unit that generates a three-dimensional model of the subject in a predetermined computer graphics language using the three-dimensional information of the subject calculated by the orientation unit. Claim from 1 3 A three-dimensional model space generation device according to any one of the claims is provided.
Claim 5 The invention described in claim 1, further comprising: a texture generation unit that generates a texture from any one of the stereo pair images; and a pasting unit that pastes the generated texture on the three-dimensional model. 4 The three-dimensional model space generation device described in 1 is provided.
Claim 6 In the described invention, the two-dimensional model generated by the three-dimensional model generation unit includes a combining unit that combines the two three-dimensional models into a single three-dimensional model using coordinate values of points common to the two three-dimensional models. Claim 4 Or claims 5 The three-dimensional model space generation device described in 1 is provided.
Claim 7 In the described invention, the image acquisition means, the corresponding point extraction means, Selection means, identification means, In a computer including corresponding point specifying means, combination means, and orientation means, the image acquisition means acquires a pair of stereo pair images obtained by photographing the same reference point and the same subject from at least two different directions. An image acquisition step, and the corresponding point extraction unit extracts a corresponding point on the stereo pair image so that the object can be identified and associated with the subject, and A selection step of selecting two corresponding points on the same plane among corresponding points on the stereo pair image already obtained by the selection means; and the two points selected by the identification means An identification step for identifying colors on a straight line by image processing; In the corresponding point specifying means, Of the points where the identified color changes on the straight line, the point closest to either one of the two points is On the stereo pair image As a corresponding point A corresponding point specifying step for specifying, a combination step for specifying a combination of a point extracted by the corresponding extracting unit by the combining unit and a point at which a predetermined orientation accuracy is obtained from the point specified by the corresponding point specifying unit; And a step of locating the stereo pair image using the points included in the specified combination and calculating three-dimensional information of the subject by the locating means, and comprising a three-dimensional model A space generation method is provided.
Claim 8 In the described invention, a pair of stereo pair images obtained by photographing the same reference point and the same subject from at least two different directions is acquired. And remember Image acquisition function, and Remembered On the stereo pair image, the points arranged so as to be identifiable to the subject are extracted and matched. Remember Corresponding point extraction function, A selection function for selecting two corresponding points on the same plane among corresponding points on the stereo pair image already obtained, and a color on a straight line including the two selected points are identified by image processing Among the points where the identified function and the identified color on the straight line change, a point closest to one of the two points On the stereo pair image As a corresponding point specific And remember Extracted by the corresponding point specifying function and the corresponding extracting function. Remember And the corresponding point specifying function Remember Point Read the point A combination function that identifies a combination of points that provides a predetermined orientation accuracy, and an orientation function that locates the stereo pair image using points included in the identified combination and calculates three-dimensional information of the subject. A three-dimensional model space generation program for realizing the above in a computer is provided.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described in detail with reference.
FIG. 1A is a diagram showing an example of the configuration of the model house system 1 according to the present embodiment.
The model house system 1 includes a model house server 6 that provides model house contents, terminals 3, 3, 3,... (Hereinafter referred to as a terminal 3) for a user to access the model house server 6, a model house server 6 and a terminal. 3, a content creation device 7 that generates 3D model house content in which the room is converted into 3DCG (three-dimensional computer graphics) from a stereo pair image obtained by photographing the room of the real estate.
[0011]
The model house server 6 is a content transmission server that transmits the model house content to the terminal 3. The model house server 6 has a unique URL (Uniform Resource Locators), and can be identified from other server apparatuses on the Internet 5 by this URL.
[0012]
The model house server 6 has a function of transmitting model house contents. When the model house content transmission request from the terminal 3 is received, the model house content is transmitted (downloaded) to the terminal 3 via the Internet 5.
The model house server 6 can be connected to the content creation device 7 via the Internet 5 or a dedicated line, and can receive transmission (upload) of the model house content from the content creation device 7. .
[0013]
The Internet 5 is a network that enables communication between each server device and each terminal device using a predetermined protocol. The predetermined protocol includes TCP / IP (Transmission Control Protocol / Internet Protocol).
In the present embodiment, the model house server 6 and the terminal 3 are connected to each other via the Internet 5. However, the present invention is not limited to this, but is not limited to this. The communication network via a communication satellite, or a plurality of these can be connected.
[0014]
The terminal 3 is constituted by a personal computer or the like arranged so as to be connectable to the Internet 5 by dial-up connection or the like.
The terminal 3 can access the model house server 6 by using the URL of the model house server 6.
The terminal 3 can access the model house server 6 and transmit a model house content transmission request, and can receive the model house content sent from the model house server 6.
[0015]
The terminal 3 includes a browser 4, and the function provided by the model house content downloaded from the model house server 6 can be used by using the browser 4.
The terminal 3 can be configured by using various terminal devices such as a game machine, a word processor, an STP (Set Top Box), and a mobile phone that can be connected to the Internet 5 in addition to the personal computer.
[0016]
The content creation device 7 is a device that generates model house content from a stereo pair image obtained by photographing the inside of a real estate property. The content creation device 7 is roughly divided into the following five functions.
(1) Photogrammetry is performed using a stereo pair image obtained by photographing the interior of a property, and a 3D model space is generated with the subject as an object.
Photogrammetry is a technique for calculating three-dimensional information of a subject by locating (described later) a stereo pair image obtained by photographing the subject from different directions.
(2) A plurality of 3D model spaces are combined to generate a 3D model space for the entire room.
(3) The image used for the photogrammetry is pasted as a texture to the object arranged in the generated 3D model space.
(4) Generate model house content using 3D model space with textures
(5) Upload the generated model house content to the model house server 6.
[0017]
In the present embodiment, the model house content is generated using HTML (Hypertext Markup Language). However, the present invention is not limited to this, and can be configured using XML (Extensible Markup Language) or other languages.
[0018]
FIG. 1B is a diagram conceptually showing the configuration of the browser 4.
The browser 4 is a so-called WWW browser, and allows the user to use functions provided by the content by displaying the content transmitted from the Web server.
The browser 4 is realized by software, for example, by executing a predetermined program (browser program) on a CPU (Central Processing Unit) of the terminal 3.
The content transmitted from the Web server is described in a markup language such as HTML or XML that describes a Web page, for example.
[0019]
The browser 4 interprets the described contents, displays a predetermined screen on the display of the terminal 3, generates sound from the speaker, etc., and transmits data input by the user to the server device. To do.
Basically, the browser 4 interprets a file described in HTML or the like and displays a predetermined screen, but its function can be expanded by incorporating a plug-in.
Various types of plug-ins are provided.
For example, if a VRML (Virtual Reality Modeling Language) viewer is installed in the browser 4 as a plug-in, 3DCG described in VRML can be used in the browser 4.
[0020]
VRML is a computer graphics language for describing 3DCG. By using VRML, a three-dimensional modeled object (object) can be expressed in a virtual space.
VRML can be used on the Internet 5. In other words, the VRML file can be transmitted via the Internet 5 and the object described in the VRML file can be displayed using the browser 4 in which the VRML viewer is incorporated as a plug-in.
[0021]
VRML can express not only the object three-dimensionally but also voice and movement at the same time. The user can move in the virtual space and observe the object from various angles.
The VRML viewer is plug-in software that reads a file created by VRML and displays an object on a display.
[0022]
In addition to this, for example, a viewer that displays a two-dimensional image on a display using a file created with SVG (Scalable Vector Graphics), which is a two-dimensional graphics description language based on XML, There are various types such as those for streaming moving images and those for reproducing animations described in vector data.
[0023]
Some of these plug-ins have a function of executing a program written in a predetermined language. When this function is used, a program (script) written in a predetermined language is incorporated into the content downloaded from the server device, and can be executed on the browser 4.
Thereby, when there is an input from the user to the content, an appropriate process can be performed by the terminal 3 without accessing the server device each time. For example, the image displayed on the display can be changed according to the input from the user.
[0024]
In the present embodiment, the floor plan display unit 8 which is a plug-in for displaying the floor plan of the model house as a two-dimensional image (plan view) on the browser 4 and the 3D which is a plug-in for displaying the interior of the model house converted into 3DCG. A display unit 9 is incorporated.
The floor plan display unit 8 constitutes floor plan display means, and the 3D display unit 9 constitutes three-dimensional computer graphics display means.
When the floor plan is created with SVG in the model house content, the floor plan display unit 8 becomes an SVG viewer. When the floor plan is created in another language, the floor plan display unit 8 is a plug-in corresponding to the language.
[0025]
When 3DCG of a model house is created with VRML as model house contents, the 3D display unit 9 becomes a VRML viewer. When 3DCG is created in another language, it becomes a plug-in corresponding to the language.
As described above, the floor plan display unit 8 and the 3D display unit 9 are plug-ins corresponding to the computer language used in the model house content.
[0026]
FIG. 2 is a diagram illustrating an example of screen transition of the model house content.
The model house content provides various screens such as a property narrowing screen 18, a model house screen 20, and a visit application screen 19 on the terminal 3.
The property narrowing screen 18 provides a user with a function of narrowing down properties satisfying a desired condition from each real estate property.
For narrowing down properties, for example, various properties such as real estate properties by location, along railway lines, by price range, single-family or multifamily housing, and by building age can be used to narrow down properties that meet those conditions. .
These conditions can be used alone, or the conditions can be combined to generate a search condition formula to narrow down the properties. Search condition formulas are, for example, (along A electric railway) and (price from 30 million yen to 40 million), ((0.00 prefecture) or (〇 × prefecture)) and (along A railway) It can be made by combining conditions with logical product or logical sum.
[0027]
In the property narrowing screen 18, when the number of properties is narrowed down to some extent, detailed information (price, floor plan information, nearest station, distance to the nearest station, building age, etc.) is displayed in a list for each property. It has become.
For this reason, after narrowing down properties under a certain condition, it is possible to further narrow down according to other conditions while viewing the narrowed property information.
For example, as a result of narrowing down the properties along the A Electric Railway line, properties with prices ranging from 20 million yen to 30 million yen were scattered, and the price range of 20 million yen to 30 million yen was further used as a search condition. You can narrow down the search results.
[0028]
Although not shown, a tour button is provided for each property displayed in a list on the property narrowing screen 18. When this button is selected by a mouse operation or the like, a request for transmitting a model house file related to the property is sent from the terminal 3 to the model house server 6.
The model house screen 20 is a screen that provides a function that allows a user to visit a selected property in a pseudo manner using 3DCG, and is displayed using a model house file.
Although details will be described later, the model house screen 20 provides a floor plan display area for displaying the floor plan of the property and a 3DCG display area for displaying the 3DCG of the room designated by the user in the floor plan.
[0029]
The user can select an arbitrary room on the floor plan, and can check the state of the room with 3DCG.
A 3DCG object (in this case, a wall, a window, etc.) is mapped (ie, the actual photograph of the object is pasted on the surface of the object) with a digital photograph of the object. You can check the actual room as if you were on-site.
The model house screen 20 is provided with a furniture library in which various furniture such as a chest, a table, and a table are converted into 3DCG. The user selects appropriate furniture from the furniture library and places it in a 3DCG-equipped room. You can also try it.
[0030]
The tour application screen 19 is a screen for a user to apply for a site tour of a property to a real estate agent or a local government.
If you want to check the actual property in more detail after viewing the property on the model house screen 20 using 3DCG, you can enter the application items on the tour application screen 19 and apply for the tour. .
[0031]
The application items include the name, address, telephone number, desired visit date, desired visit ID of the visitor (ID uniquely assigned to each property in order to identify the property), and the like. These entries are transmitted from the terminal 3 to the model house server 6.
A person in charge such as a real estate agent or a local government can use these entries to directly determine the date of the property tour with the user.
[0032]
FIG. 3A is a diagram schematically showing the configuration of the model house file 21. The model house file 21 is downloaded from the model house server 6 to the terminal 3 in response to a transmission request from the terminal 3. Then, the property tour function described later is exhibited by the browser 4 of the terminal 3.
The model house file 21 is basically an HTML file in which a control program 22, a floor plan database 23, a 3DCG database 24, and a correspondence table 25 are embedded.
[0033]
The floor plan database 23 is a database that stores floor plan data for displaying a floor plan of each floor of the property as two-dimensional graphics. The floor plan database 23 is displayed on the display by the floor plan display unit 8.
The 3DCG database 24 is a database storing 3DCG data for displaying 3DCG of each room, and is described in, for example, VRML.
The 3DCG database 24 is displayed on the display by the 3D display unit 9.
[0034]
The correspondence table 25 is a table in which each room displayed as the floor plan data is associated with the 3DCG data.
As shown in FIG. 3B, a room ID for uniquely identifying each room is assigned to each room in the floor plan defined by the floor plan data. Here, each room includes not only the living room and bedroom, but also the elements that constitute the property, such as a toilet, a hall, and a front door, and includes those expressed in 3DCG.
[0035]
In the 3DCG database 24, a 3DCG data ID for uniquely specifying each 3DCG data is assigned.
The correspondence table 25 associates each room ID with each 3DCG data ID.
With the correspondence table 25, when the user selects a room in the floor plan, 3DCG corresponding to the room can be searched.
[0036]
The control program 22 is a program for controlling the entire model house screen. The control program 22 is an event-driven program that performs an operation according to the input (such as displaying 3DCG of the selected room) when an input (selection of a room) is received from the user.
The control program 22 is described in a predetermined program language, and is executed on a predetermined plug-in such as the floor plan display unit 8.
[0037]
FIG. 3C is a diagram for explaining a relationship between the central processing unit 26 obtained by executing the control program 22 by the CPU and each component such as the floor plan display unit 8 and the 3D display unit 9.
When the user specifies a real estate property, the central processing unit 26 searches the floor plan database 23 for the floor plan data of the property and displays the floor plan data on the floor plan display unit 8. The floor plan data is prepared according to the number of floors when the real estate property is composed of a plurality of floors such as the first floor and the second floor, and the central processing unit 26 allows the user to select the number of floors to be displayed.
[0038]
In the floor plan display unit 8, the user can select an arbitrary room from the displayed floor plan. When the user selects any room in the floor plan, the central processing unit 26 acquires the room ID of the room from the floor plan display unit 8 and searches the correspondence table 25 for the 3DCG data ID corresponding to the room ID. .
When acquiring the 3DCG data ID, the central processing unit 26 searches the 3DCG database 24 using this ID as a key, acquires 3DCG data associated with the 3DCG data ID, and passes it to the 3D display unit 9.
As described above, when the user selects a room on the floor plan, the central processing unit 26 displays the 3DCG of the room on the 3D display unit 9.
As described above, the central processing unit 26 constitutes a specifying unit that specifies a room on the floor plan.
[0039]
In the present embodiment, the floor plan database 23 and the 3DCG database 24 are downloaded to the terminal 3 together with the model house file 21. However, the present invention is not limited to this. The floor plan data and 3DCG data may be downloaded from the model house server 6 each time a floor plan or room is specified.
Although omitted in the above description, a furniture 3DCG database storing furniture 3DCG data arranged in the room 3DCG is also included in the model house file 21 and downloaded.
[0040]
FIG. 4 is a diagram illustrating an example of the model house screen 20. The model house screen 20 is displayed on the display of the terminal 3 by the browser 4 using the model house file 21.
The model house screen 20 includes a floor plan display area 11, a 3DCG display area 12, a furniture name input field 13, a furniture display area 14, a floor plan selection area 15, a parallel movement button 16, a rotation button 17, and the like.
The floor plan display area 11 is an area for displaying the floor plan of the real estate property as two-dimensional graphics. The floor plan displayed in the floor plan display area 11 is displayed by the floor plan display unit 8 using the floor plan data.
[0041]
By operating a mouse or the like provided in the terminal 3, the pointer 18 can be placed on an arbitrary room on the floor plan, and the room can be selected by clicking a predetermined mouse button. The floor plan display unit 8 sends the room ID of the selected room to the central processing unit 26. This room ID is used to search 3DCG data of the room.
Hereafter, clicking the predetermined mouse button with the pointer 18 placed on the button or icon on the screen is simply referred to as clicking the button with the icon.
[0042]
The floor plan selection area 15 is an area for selecting a floor number to be displayed in the floor plan display area 11.
In the floor plan selection area 15, radio buttons are set for selection items for selecting the number of floors, such as “floor layout on the first floor” and “floor layout on the second floor”. A radio button is a button for selecting only one of a plurality of selection items. When any one of the buttons is selected, the selection of the other buttons is canceled.
The selection items displayed in the floor plan selection area 15 change for each property. For example, for a property consisting of a basement, a first floor, and a second floor, “basement”, “first floor”, and “second floor” are displayed as selection items.
[0043]
The item content (such as the floor number) selected in the floor plan selection area 15 is sent to the central processing unit 26. Then, the central processing unit 26 searches for the floor plan data corresponding to the selected item from the floor plan database 23 and passes it to the floor plan display unit 8.
In the floor plan selection area 15, "appearance" can be displayed as a selection item in addition to the floor number. In this case, when this item is selected, an appearance photograph of the property is displayed in the floor plan display area 11. In this case, the 3DCG of the property may be displayed in the 3DCG display area 12.
[0044]
The 3DCG display area 12 is an area for displaying 3DCG of the room selected in the floor plan selection area 15. The central processing unit 26 searches for 3DCG data corresponding to the selected room.
On the surface of the object displayed in the 3DCG display area 12, a digital image obtained by photographing an actual property is pasted (mapped). Therefore, it is possible to confirm an actual room state (such as a wall pattern or damage, a color of the entire room, an object visible outside the window, etc.) with an actual photographic image.
[0045]
Below the 3DCG display area 12, a translation button 16 and a rotation button 17 are provided.
These buttons are for moving the viewpoint of the user. By operating these buttons, the user can freely move inside the room displayed in the 3DCG display area 12.
[0046]
The parallel movement button 16 includes a left movement button 16a and a right movement button 16c arranged on the left and right sides, and a forward button 16b and a backward button 16d arranged on the upper and lower sides, respectively.
When the pointer 18 is aligned with the left movement button 16a and a predetermined mouse button is pressed down, the user's viewpoint moves in parallel to the left at a predetermined speed while the button is pressed down.
Similarly, when the pointer 18 is placed on the right movement button 16c, the forward button 16b, and the backward button 16d and a predetermined mouse button is pressed down, the viewpoint can be translated in the right direction, forward direction, and backward direction, respectively.
[0047]
The rotation button 17 includes a left rotation button 17a and a right rotation button 17b arranged on the left and right sides, and an upper rotation button 17c and a lower rotation button 17d arranged on the upper and lower sides, respectively.
When the pointer 18 is aligned with the left rotation button 17a and a predetermined mouse button is pressed down, the user's viewpoint rotates leftward at a predetermined speed while being pressed down.
Similarly, when the pointer 18 is placed on the right rotation button 17b, the upper rotation button 17c, and the lower rotation button 17d and a predetermined mouse button is pressed down, the viewpoint can be rotated rightward, upward, and downward, respectively.
The parallel movement and rotational movement of the viewpoint in the 3DCG described above are functions exhibited by the 3D display unit 9.
[0048]
In addition, various types of furniture prepared in the furniture library can be arranged and viewed in the indoor 3D model space displayed in the 3DCG display area 12.
In the furniture library, 3DCGs of various furniture are prepared. Since the actual photo is pasted on the surface of these furniture, the same texture as the real thing is expressed.
[0049]
The furniture name input column 13 is a column for inputting the furniture name of the furniture arranged in the 3DCG display area 12. An arrow button is provided at the right end of the furniture name input field 13. Clicking on this arrow button displays a list of furniture names in a drop-down menu. Then, by clicking a desired furniture name among the displayed furniture names, the furniture name can be input.
In the furniture display area 14, an image of furniture corresponding to the furniture name input in the furniture name input field 13 is displayed.
When the displayed furniture image is confirmed and this furniture is to be arranged in the 3D model space displayed in the 3DCG display area 12, the furniture image is double-clicked. That is, the pointer 18 is set to the furniture image, and a predetermined mouse button is quickly pressed twice.
[0050]
Then, the 3DCG of the furniture is displayed near the center of the 3DCG display area 12.
Although details are omitted, it can be translated and rotated by dragging it with the mouse.
In this way, the furniture 3DCG is moved and rotated to be arranged at a desired position in the room.
[0051]
With the model house content described above, the following effects can be obtained.
By setting search conditions, it is possible to narrow down a desired property from a plurality of real estate properties.
The narrowed properties can be simulated using 3DCG. Since the 3DCG data is sent from the model house server 6 via the Internet 5, the user can easily visit the property without going to the site.
[0052]
Since the 3DCG constituting the indoor 3D model space is pasted with an image obtained by actually capturing the room, the actual situation of the room can be confirmed.
By using the furniture library, various furniture can be arranged in the indoor 3D model space.
If you want to actually visit the site, you can apply for a tour using the Internet 5.
[0053]
Next, the content creation device 7 will be described.
FIG. 5 is a block diagram illustrating an example of a hardware configuration of the content creation device 7.
The content creation device 7 is configured by connecting an input unit 34, an output unit 38, a communication control device 42, a storage device 48, a storage medium drive device 46, an input / output interface 44, and the like to the control unit 27 via a bus line 43. ing. The bus line 43 is a transmission line for transmitting signals between the CPU 28 and other devices.
The controller 27 includes a CPU 28, a ROM (Read Only Memory) 30, a RAM (Random Access Memory) 30, and the like.
The control unit 27 is controlled by the CPU 28 and performs various types of information processing according to programs to be executed.
[0054]
For example, when the 3D model space generation program 50 is activated, a stereo pair image is determined, a 3D model space that three-dimensionally represents a subject (such as a room in a real estate property) is generated, and the content creation program 54 If activated, the model house file 21 (HTML file) is generated using the previously generated 3D model space.
Further, each component of the content creation device 7 is controlled by a predetermined control program.
Here, the orientation means a series of photogrammetric processes such as internal orientation, mutual orientation, and external orientation, which will be described later.
[0055]
The ROM 30 is a read-only memory that stores various programs, data, parameters, and the like for the CPU 28 to perform various calculations and controls. The CPU 28 can read programs, data, parameters, and the like from the ROM 30. Further, since the ROM 30 is read-only, the stored contents of the ROM 30 are not rewritten or erased.
The RAM 32 provides a random access memory used as a working memory for the CPU 28. The CPU 28 can write and erase programs and data in the RAM 32. In the present embodiment, the RAM 32 can secure an area for the CPU 28 to perform orientation processing, 3D model space generation, model house file 21 generation, and the like.
[0056]
The input means 34 is composed of an input device such as a keyboard, a mouse, and a joystick.
The keyboard is a device for inputting information such as characters and numbers to the content creation device 7.
The keyboard includes keys for inputting kana and English characters, numeric keys for inputting numbers, various function keys, cursor keys, and other keys.
[0057]
In addition to inputting text data to the content creation device 7, various commands can be input using the keyboard.
With this function, the user of the content creation device 7 can input appropriate text data, commands, and the like when various programs such as the 3D model space generation program 50 and the content creation program 54 are being executed.
A mouse is a pointing device. When the content creation device 7 can be operated using a GUI (Graphical User Interface), by clicking a button or icon displayed on the display device with a mouse, predetermined information (command, selection item, etc.) is input. It can be performed.
[0058]
The output unit 38 is constituted by, for example, a display device, a printing device, or the like.
The display device is configured by a display device such as a CRT (Cathode Ray Tube) display, a liquid crystal display, or a plasma display, and is a device for presenting image information, character information, and the like on a screen.
The display device can display the generated 3D model space, or display a screen using a GUI.
The printing apparatus is an apparatus that prints an image such as a stereo pair image on a print medium such as paper. The printing apparatus includes various printer apparatuses such as an ink jet printer, a laser printer, a thermal transfer printer, and a dot printer.
[0059]
The communication control device 42 is a device for connecting the content creation device 7 to the model house server 6 and the like via a communication line, and is constituted by a modem, a terminal adapter, and other devices.
The communication control device 42 is connected to a communication line such as the Internet 5, a LAN (Local Area Network), or a dedicated line, and uploads the model house file 21 and other files to the model house server 6 through these networks. can do.
The communication control device 42 is controlled by the CPU 28 and can communicate with other terminal devices and server devices according to a predetermined protocol such as TCP / IP.
[0060]
The storage device 48 includes a readable / writable storage medium and a drive device for reading / writing programs and data from / to the storage medium. A hard disk is mainly used as the storage medium, but it can also be configured by other readable / writable storage media such as a magneto-optical disk, a magnetic disk, and a semiconductor memory.
The storage device 48 stores a 3D model space generation program 50, a camera data database 52, a content creation program 54, an image database 56, a 3D model space database 58, and the like.
[0061]
The 3D model space generation program 50 is a program for causing the CPU 28 to create 3DCG from a stereo pair image, and to further exhibit a function for generating a 3D model space by combining a plurality of 3DCGs. Although details will be described later, by this function, after a stereo model of each part of the room is generated from a stereo pair image obtained by photographing the room of the real estate property, these can be combined to generate a stereo model of the entire room.
[0062]
The camera data database 52 is a database that stores parameters necessary for the orientation processing among parameters unique to the digital camera 62 that has captured a stereo pair image. For example, the camera data database 52 includes the focal length of the lens, the size of the CCD, the number of pixels in the vertical direction of the CCD light receiving surface, the number of pixels in the horizontal direction, and the like.
Further, the number of pixels in the vertical direction and the horizontal direction can be calculated from the CCD size and the pixel size.
[0063]
In the present embodiment, all stereo pair images are taken with the same type of digital camera. However, when a plurality of types of digital cameras are used, camera data is stored in the camera data database 52 for each type. When storing and locating a stereo pair image, the camera data of the digital camera that captured the stereo pair image is used.
The content creation program 54 is software for causing the CPU 28 to exhibit a function that supports generation of the model house file 21.
The model house content is composed of various files such as a file for providing a property narrowing function, a file for providing a model house by 3DCG (model house file 21), and a file for applying for a property tour in the local area. The content creation program 54 supports generation of the model house file 21 among these various files.
[0064]
The image database 56 is a database that stores image data of stereo pair images used for orientation.
Here, the stored stereo pair image is a stereo pair image obtained by photographing the room of the real estate property.
These image data are used by the CPU 28 to generate a 3D model space in the real estate property room. It is also possible to store a furniture stereo pair image for creating a 3DCG of furniture used in the furniture library.
In the present embodiment, it is assumed that the stereo pair image is saved as a file in JPEG (Joint Photographic Experts Group) format. This can also be saved in a file of another format such as a bitmap format or a GIF (Graphics Interchange Format) format.
[0065]
The 3D model space database 58 is a database that stores 3DCG data for displaying the 3D model space created by the CPU 28.
The 3D model space database 58 is classified for each real estate property.
Each property is further classified by room, and 3DCG data of the room is stored in this classification. That is, the 3D model space database 58 can search the 3DCG of the room using the real estate property and the room as keys.
[0066]
The storage device 48 stores other programs and data not shown.
Other programs and data (not shown) include a floor plan generation support program that supports generation of a floor plan to be displayed in the floor plan display area 11 and a floor plan database that stores the generated floor plan data.
A transfer program for transferring a stereo pair image from the digital camera 62 via the input / output interface 44 is also provided.
Furthermore, an FTP (File Transfer Protocol) program for uploading various files to the model house server 6 or downloading from the model house server 6, a communication program for maintaining communication between the content creation device 7 and the network, memory management and input An OS (Operating System) that is basic software for operating the content creation device 7 such as output management is also provided.
[0067]
The storage medium driving device 46 is a driving device for reading and writing data by driving a removable storage medium. Examples of the removable storage medium include a magneto-optical disk, a magnetic disk, a magnetic tape, a semiconductor memory, a paper tape punched with data, and a CD-ROM. Note that CD-ROMs and paper tapes can only be read.
By driving the storage medium driving device 46, it is possible to read a stereo pair image stored in the storage medium.
[0068]
The input / output interface 44 is constituted by, for example, a serial interface or another standard interface. The input / output interface 44 is an interface for connecting an external device to the content creation device 7. In this embodiment, it is connected to the digital camera 62 and used to read a stereo pair image from the camera.
[0069]
Next, a mechanism for generating a 3D model space in a real estate room using the 3D model space generation program 50 will be described.
FIG. 6 is a diagram showing a configuration of a 3D model space generation system 50 a generated when the 3D model space generation program 50 is executed by the CPU 28. In the present embodiment, the 3D model space generation system 50a is configured as software. However, the present invention is not limited to this, and a dedicated device may be configured as hardware.
[0070]
The 3D model space generation system 50a includes an image acquisition unit 75, a corresponding point acquisition unit 77, a photogrammetry unit 72, a 3DCG file generation unit 73, a 3DCG file storage unit 121, 121,..., A combination unit 125, and a distortion correction unit 126. Etc.
The image acquisition unit 75 is a module that acquires, from the image database 56, a stereo pair image obtained by photographing the room of a real estate property. The image acquisition unit 75 constitutes an image acquisition unit.
Stereo pair images are a pair of images obtained by photographing the same subject from different angles. By performing the orientation work described later on the stereo pair image, the three-dimensional information of the subject can be calculated.
The corresponding point acquisition unit 77 is a module that automatically acquires corresponding points on a stereo pair image (left image, right image). In addition, you may comprise so that a corresponding point may be manually acquired about the point which is difficult to acquire automatically.
The function of the corresponding point acquisition unit 77 will be described in detail later.
[0071]
The photogrammetry unit 72 is a module that determines a stereo pair image using the corresponding points acquired by the corresponding point acquisition unit 77 and calculates the three-dimensional information of the subject. That is, the three-dimensional information of the subject is calculated using the coordinate values of the corresponding points on the left and right images, and a 3D model space expressing the subject is generated.
The 3DCG file generation unit 73 describes the 3D model space generated by the photogrammetry unit 72 in a predetermined computer graphics language (for example, VRML) and displays the 3D model space in a predetermined viewer (such as a VRML viewer). To do.
[0072]
The 3DCG storage units 121, 121,... Are modules that temporarily store the 3DCG files generated by the 3DCG file generation unit 73.
One stereo model is generated from one set of stereo pair images. In the present embodiment, a 3D model space of each part is generated from a stereo pair image obtained by photographing each part of the room (four sides of the room such as the window side, the wall side, and the entrance / exit side) and combined to generate a 3D model space of the whole room. A 3D model space is generated. The 3DCG storage units 121, 121,... Are modules that temporarily store the 3D model spaces for combining them.
[0073]
The combining unit 125 combines the 3D model spaces stored in the 3DCG storage units 121, 121,... (Hereinafter referred to as 3DCG storage unit 121) using a reference point (described later) as a clue, and the 3D model space of the entire room. Is a module that generates Theoretically, if there are three corresponding points in the overlapping part of each 3D model space, these can be combined.
In other words, the combining unit 125 provides a function of a coordinate system that unifies the coordinate systems of a plurality of 3D model spaces and generates a 3D model space of the entire subject (the entire room).
As described above, the coupling portion 125 constitutes a coupling means.
[0074]
As will be described later, when shooting an indoor stereo pair image, a scale for taking a reference point for orientation is recorded in the stereo pair image.
When each direction in the room is photographed with one standard being fixed, each stereo pair image can be given a common reference point. Therefore, each stereo pair image stored in the 3DCG storage unit 121 is assigned a common reference point. Can be combined into one. Also, if it is difficult to take a stereo pair image of each direction in the room with the scale fixed, such as when shooting four sides of a narrow room, use two scales and take a picture of each direction in the room while moving the scale. To do.
In this photographing method, a plurality of 3D models have different reference points. After unifying the coordinate system by absolute orientation, which will be described later, based on the coordinates of a common reference point in adjacent 3D model spaces, a plurality of 3DCG files are combined into one.
[0075]
The distortion correction unit 126 corrects the three-dimensional coordinate data composed of a straight line and a right angle such as the boundary between the wall and the ceiling, focusing on the fact that the generated 3D model space models the indoor space.
In the present embodiment, since the subject is a room, for example, a line segment that emerges from one point, such as a line segment that forms the outline of a wall, is often in the vertical and horizontal directions.
Therefore, when the three-dimensional coordinate values of the points calculated using each of the two stereo pair images are similar, the points are recognized as the same point.
[0076]
Next, orientation processing using stereo pair images and generation of a 3DCG file using the orientation results will be described with reference to FIGS.
FIG. 7 is a diagram for explaining an indoor shooting method using a scale, and shows a view of the room viewed from the ceiling.
When positioning a pair of stereo pair images (left image and right image), at least two points with a known plane position and three points with a known height are taken as reference points in the left and right images. It is necessary to be.
In addition, when two generated 3D models are combined, it is necessary that three common reference points exist in the two 3D models.
[0077]
Therefore, in this embodiment, a right triangle whose three sides are known in advance is used as a measure, and this is placed on the floor and copied to the left and right images.
Since the three vertexes of the standard are fixed in positional relationship, the three vertexes can be used as three points whose plane position and height are known.
When the room was small and the scale could not be captured in the left and right images, it was decided to use a combination of two scales.
In addition, since the three corners of the scale are automatically extracted later by image processing, these three corners can be automatically identified by image processing, for example, by coloring the three corners with different colors.
[0078]
FIGS. 7A to 7C show a case where one gage 130 is placed near the center of the floor of the room and the four sides of the room are photographed while moving around the gage 130 so as to draw an arc in a counterclockwise direction. Is shown. In any case, the position of the staff 130 is fixed at the same place.
First, as shown in FIG. 7A, an indoor image (upper left direction toward the drawing) is taken using the digital camera 62. At that time, the staff 130 is copied into the digital image. The digital image taken at this time is referred to as a digital image a.
[0079]
Next, as shown in FIG. 7B, the digital camera 62 is moved in the counterclockwise direction around the staff 130 to shoot a different direction in the room (leftward as viewed in the drawing). At that time, the staff 130 is copied into the digital image. The digital image taken at this time is referred to as a digital image b.
Later, the digital image a is set as the right image and the digital image b is set as the left image. Therefore, it is desirable that the subjects are photographed with at least about 2/3 overlap in the digital image a and the digital image b.
[0080]
Next, as shown in FIG. 7 (c), the digital camera 62 is moved counterclockwise around the staff 130 to shoot a different direction in the room (downward to the left in the drawing). At that time, the staff 130 is copied into the digital image. The digital image taken at this time is referred to as a digital image c.
Later, the digital image b is set as the right image and the digital image c is set as the left image. For this reason, it is desirable that the subject is photographed with an overlap of at least about 2/3 in the digital image b and the digital image c.
[0081]
Thereafter, in the manner described above, the digital images a, b, c,... Are taken in all directions in the room while moving around the staff 130 so as to draw an arc. Then, the 3D model space (in each direction in the room) is determined by locating digital images obtained by photographing adjacent directions as a set (digital image a and digital image b, digital image b and digital image c,...). 3D model space generated by digital images a and b, 3D model space generated by digital images b and c, etc.) can be generated in all directions in the room.
And the 3D model space of the whole room | chamber interior can be created by couple | bonding the 3D model space regarding an adjacent direction on the basis of the measuring stick 130, respectively.
[0082]
In FIGS. 7D to 7H, two standard measures 130 and 131 are placed near the center on the floor of the room, and while these standard measures 130 and 131 are moved, a circular arc is drawn counterclockwise around these standard measures. It moves to, and the case where the inside of the room is photographed is shown.
This method is used when it is difficult to move the scale around the center of the room due to problems such as the room being small, etc. It can be used when it is difficult to capture all four sides of the room while capturing it in the image.
[0083]
First, as shown in FIG. 7D, an indoor image (upper left direction toward the drawing) is taken using the digital camera 62. At that time, at least the measure 130 of the measure 130 and the measure 131 is copied in the digital image. The digital image taken at this time is defined as a digital image d.
Next, as shown in FIG. 7E, the digital camera 62 is moved in the counterclockwise direction around the staff 130 and the staff 131. As a result of moving the digital camera 62, the staff 131 is assumed to be out of the shooting range.
Next, as shown in FIG. 7 (f), the staff 131 is moved so as to be within the photographing range of the digital camera 62. At this time, the position of the movement of the staff 131 is the next movement position of the digital camera 62 shown in FIG.
[0084]
Then, the surface in the left direction is photographed toward the indoor drawing at the photographing position shown in FIG. At this time, two of the staff 130 and the staff 131 are copied into the digital image. The digital image taken at this time is referred to as a digital image f.
Later, the digital image d is set as the right image and the digital image f is set as the left image. For this reason, it is desirable that the subject is photographed with at least about 2/3 overlap between the digital image d and the digital image f.
Next, the digital camera 62 is moved to the next shooting position shown in FIG. As a result, it is assumed that the staff 130 is out of the shooting range.
Next, as shown in FIG. 7H, the staff 130 is moved so as to fall within the photographing range of the digital camera 62. Although the position of the movement destination of the staff 130 at this time is not shown in the drawing, a position where the staff 131 enters the imaging range is selected at the next movement position of the digital camera 62.
[0085]
Then, the surface in the lower left direction is photographed toward the indoor drawing at the photographing position shown in FIG. At this time, two of the staff 130 and the staff 131 are copied into the digital image. A digital image photographed at this time is defined as a digital image h.
Later, the digital image f is set as the right image and the digital image h is set as the left image. For this reason, it is desirable that the subject is photographed by overlapping at least about 2/3 of the digital image f and the digital image h.
[0086]
The digital images d, f, and h could be taken by the above procedure. In the digital images d and f, the standard 130 is shown in common, and in the digital images f and h, the standard 131 is shown in common.
The digital images d and f can be standardized with the standard 130, and the digital images f and h can be standardized with the standard 131 as a standard. On the other hand, in the digital image f, since both the rule 130 and the measure 131 are transferred, the two generated 3D model spaces can be combined using this.
[0087]
This will be described in more detail as follows.
It is assumed that the 3D model space df is generated from the digital images d and f using the scale 130. Further, it is assumed that the 3D model space fh is generated from the digital images f and h using the scale 131.
From the orientation results using the digital images d and f, the coordinate values of the measure 130 and the measure 131 in the 3D model space df can be calculated.
On the other hand, the coordinate values of the standard 130 and the standard 131 in the 3D model space fh can be calculated from the result of orientation using the digital images f and h.
[0088]
By translating any 3D model so that the coordinate values of the standard 130 and the standard 131 in the 3D model space df determined above match the coordinate values of the standard 130 and the standard 131 in the 3D model space fh, The coordinate axes of the 3D model space df and the 3D model space fh can be matched and combined.
Thereafter, in the manner described above, either one of the measure 130 or the measure 131 is moved so as to draw an arc around the measure, and the digital images d, f, h, Shoot ... Then, by combining the generated 3D model spaces, a 3D model space for the entire room can be generated.
[0089]
In the above description with reference to FIGS. 7D to 7H, the two scales 130 and 131 are moved one by one. However, the present invention is not limited to this. For example, any two solids adjacent to each other. Three or more standard scales may be arranged on the floor so that a common standard is included in the model, and digital images in four directions inside the room may be taken without moving the standard.
[0090]
FIG. 8 is a diagram showing the configuration of the photogrammetry unit 72 and the 3DCG file generation unit 73 in more detail with respect to the 3D model space generation system 50a.
The image acquisition unit 75 acquires stereo pair images one by one according to processing. That is, after the stereo pair image acquired by the image acquisition unit 75 is processed by the corresponding point acquisition unit 77, the photogrammetry unit 72, and the 3DCG file generation unit 73, the next stereo pair image is acquired.
The corresponding point acquisition unit 77 is a module that specifies corresponding points in the left and right digital images and acquires two-dimensional coordinate values on these images.
FIG. 9 is a diagram schematically illustrating an example of a stereo pair image (the left image 135 and the right image 136) for explaining the function of the corresponding point acquisition unit 77.
[0091]
The left image 135 is a schematic diagram of a digital image obtained by photographing a wall 137 provided with a window 138 from the left side toward the wall 137 in a room in which 3DCG is to be generated.
The right image 136 is a schematic diagram of a digital image obtained by photographing the same wall 137 from the right side toward the wall 137.
In the left image 135 and the right image 136, a staff 130 fixed at the same position is shown.
The reference points 130a, 130b, and 130c at the three corners of the staff 130 are used as reference points for photogrammetry.
The reference points 130a, 130b, and 130c are colored with different colors, for example, so that they can be identified from the subject by image processing.
[0092]
The corresponding point acquisition unit 77 first automatically extracts the reference points 130a, 130b, and 130c from the left image 135 and the right image 136, and the two-dimensional coordinate values in the left image 135 and the right image 136 of these reference points. Is used to roughly calculate the position and tilt of the digital camera 62 when the left image 135 and the right image 136 are photographed. As described above, the corresponding point acquisition unit 77 constitutes a corresponding point extracting unit that extracts and corresponds points that are identifiable to the subject.
In other words, rough positioning is performed using the reference points 130a, 130b, and 130c. This can be performed by causing the internal orientation unit 78, the relative orientation unit 81, and the absolute orientation unit 82, which will be described later, to act on the reference points 130a, 130b, and 130c. Further, the corresponding point acquisition unit 77 may be configured to have an orientation function.
[0093]
In the present embodiment, as an example, the targets 140 a, 140 b, 140 c, and 140 d for obtaining corresponding points are installed at the four corners of the window 138.
As the target, paper or a plate in which a black cross is drawn on a white base is used. Then, the center of the cross is extracted as a point by image processing.
The targets 140a, 140b, 140c, and 140d are transferred to both the left image 135 and the right image 136.
The association of points on the targets 140a, 140b, 140c, and 140d shown in the left image 135 and the right image 136 is performed as follows.
First, the tilt of the digital camera 62 when the left image 135 and the right image 136 are photographed is calculated from the two-dimensional coordinate values of the reference points 130a, 130b, and 130c shown in the left image 135 and the right image 136.
[0094]
The corresponding point acquisition unit 77 uses the position and inclination of the digital camera 62 obtained by calculation, and the two-dimensional coordinate values on the left image 135 and the right image 136 of the points on the target, and these targets 140a, 140b, Corresponding points of 140c and 140d are associated with the left image 135 and the right image 136. In this case, the corresponding point acquisition unit 77 constitutes a correspondence relationship specifying unit.
In this way, the corresponding point acquisition unit 77 also constitutes corresponding point specifying means for specifying a corresponding point using a point already associated on the stereo pair image.
[0095]
This uses the fact that the corresponding points on the target always cross each other if the position and tilt of the camera are known.
That is, light emitted from a certain point on the subject follows a certain path and reaches predetermined points on the left image 135 and the right image 136. Conversely, when light is emitted from this point on the left image 135 and the right image 136 while the digital camera 62 is held at the position at the time of shooting, this light follows the previous path in the reverse direction and the previous point on the subject. Cross at.
Thus, if the position and inclination of the digital camera 62 are known, the targets on the left and right images can be associated with each other using this principle.
However, in reality, there is a case where the intersection does not occur due to a relationship such as a measurement error. In this case, the closest point on the target is associated.
[0096]
In the present embodiment, the target for taking corresponding points is installed at the four corners of the window. However, the installation location of the target is not limited to this. For example, the target may be installed at an arbitrary location such as a corner of a room. it can. However, these targets are projected on both the left image 135 and the right image 136.
In addition, it is desirable that the targets be arranged on the same plane in order to detect other corresponding points later in the left image 135 and the right image 136.
Further, without using the target, for example, the edge portions at the four corners of the window 138 may be extracted by image processing and associated with each other.
Furthermore, by coloring the targets with different colors or making them different shapes so that they can be distinguished from other targets, it is possible to extract and associate them with image processing.
[0097]
By the way, in order to improve the accuracy of the orientation, it is desirable to uniformly take corresponding points in the entire left image 135 and right image 136.
Therefore, the corresponding point acquisition unit 77 further specifies a plurality of corresponding points in the left image 135 and the right image 136 with reference to the points on the targets 140a, 140b, 140c, and 140d for which the corresponding relationship has been obtained previously.
These corresponding points are, for example, a point where two known corresponding points (on the same plane) are connected by a line, and an intersection of the line and a color boundary is the point closest to one of the two corresponding points. It can be a corresponding point.
This will be described with reference to FIG. First, the corresponding points by the targets 140a and 140c are connected by a straight line. When the straight line is traced upward in the drawing, the color of the image changes at the boundary between the wall 137 and the ceiling. This point is set as a corresponding point 150a. On the other hand, when this straight line is traced downward in the drawing, the color of the image changes at the boundary between the wall 137 and the floor. This point is set as a corresponding point 150c.
[0098]
The corresponding point 150a in the left image 135 and the corresponding point 150a in the right image 136 are the same point on the subject, respectively, and the corresponding point 150c in the left image 135 and the corresponding point 150c in the right image 136 are the same on the subject. This is the point. As described above, other corresponding points on the subject can be further specified by the left image 135 and the right image 136 on the basis of the corresponding points by the targets 140a and 140c, which can be used for orientation.
In this case, the corresponding point acquisition unit 77 includes selection means for selecting two corresponding points on the same plane among the corresponding points on the already obtained stereo pair image, and the two selected points. An identification means for identifying the color on the straight line by image processing is configured.
[0099]
The above procedure is similarly performed for the other two target combinations, and corresponding points can be obtained uniformly in the left image 135 and the right image 136.
In addition to the target, a corresponding point can be acquired using a reference point.
For example, a straight line connecting the reference points 130a and 130c can be traced in the direction of the wall 137, and a point where the color of the image changes can be set as the corresponding point 151a.
In this case, for example, if a point that is not on the same plane, such as a straight line connecting the corresponding point by the reference point 130a and the target 140b, is connected, a corresponding point cannot be obtained. The reference points and corresponding points provided in are used.
Further, even if an incorrect corresponding point is taken from corresponding points that are not on the same plane, it will be deceived when an appropriate corresponding point is selected by a genetic algorithm described later.
[0100]
Thus, in this embodiment, a new corresponding point can be acquired using the already acquired corresponding point and the feature of the two-dimensional digital image.
That is, a straight line passing through the two corresponding points already obtained is calculated, and the contour of the subject is extracted by edge detection or the like. Then, the intersection of this straight line and the contour of the subject is acquired as a corresponding point. This method is useful for obtaining corresponding points on the same plane.
In addition, you may comprise so that it may be discriminate | determined whether to use an intersection as a corresponding point using the vertical parallax and inverse transformation which are mentioned later for this method.
This is because error verification is performed by vertical parallax or inverse transformation because there is a possibility that errors may accumulate if the error of corresponding points for calculating the linear equation is large.
In the above procedure, the corresponding point is obtained using the point where the color of the image changes, but for example, the corresponding point can be obtained using another method as described below.
In the orientation, it is necessary to know at least six two-dimensional coordinate values on the photograph of the same point on the subject for each of the left image and the right image.
[0101]
(1) Corresponding point acquisition method using vertical parallax.
This technique uses a vertical parallax that can be calculated by a collinear condition that light reflected from a subject travels straight through the center of the lens and is projected onto the plane of the film.
When the same point is photographed by a plurality of cameras, the light from each camera always crosses at one point in theory. However, in reality, errors occur due to lens distortion, light refraction, and the like. The error that occurs at this intersection is the vertical parallax.
In this method, a corresponding point is acquired by detecting a point having a small vertical parallax. Further, by using the vertical parallax, it is possible to verify the error of the corresponding point. Since this method can also verify errors, it is useful to use in combination with other corresponding point acquisition methods.
[0102]
(2) Corresponding point acquisition method using inverse transformation.
In this method, first, three-dimensional coordinate data is calculated from two-dimensional coordinates (for example, pixel coordinates described later) on a stereo image of corresponding points using a photogrammetry technique. Next, the calculated three-dimensional coordinate data is inversely transformed using a photogrammetry technique to calculate two-dimensional coordinates. Then, an error between the initial two-dimensional coordinates and the two-dimensional coordinates calculated by inverse transformation is calculated. In this method, since the accuracy of the corresponding point correlates with the calculated error, the corresponding point is acquired by detecting a point with a small error.
Since this method can also verify errors, it is useful to use it in combination with other corresponding point acquisition methods.
[0103]
(3) Corresponding point acquisition method using edge detection.
A stereo pair image has a great deal of color information. Therefore, it is possible to detect the edge of the image from the amount of change in the color information of the stereo pair image. In this method, since the corresponding points in the left and right images have the same color information in the stereo pair image, the corresponding points are acquired using edge detection. This method is very useful in narrowing down candidate points for corresponding points.
[0104]
(4) Corresponding point acquisition method using trajectory
In this method, the corresponding points are obtained by obtaining the trajectory of the three-dimensional coordinate data.
First, a linear equation passing through two known corresponding points is calculated. Next, arbitrary corresponding points are acquired on the straight line at equal intervals on the two-dimensional coordinates. Then, three-dimensional coordinate data is calculated at each corresponding point. Further, the locus of the calculated three-dimensional coordinate data is calculated. The trajectory always has an inflection point at the boundary of the plane. For reconsideration, the corresponding points are acquired based on the extreme value information. This method is useful for acquiring corresponding points that represent the boundaries between a plurality of planes.
[0105]
The corresponding point acquisition unit 77 obtains the reference point and the corresponding point by the above procedure, and then outputs the two-dimensional coordinate value on the left image 135 and the two-dimensional coordinate value on the right image 136 of these points.
These coordinate values are obtained, for example, in millimeters with the center of the digital image as the origin. For this purpose, after the coordinate value is acquired by a pixel (two-dimensional pixel coordinate), the coordinate value is multiplied by the size of the pixel.
[0106]
The photogrammetry unit 72 (FIG. 8) includes an internal orientation unit 78 and a suboptimal solution search unit 84.
As will be described later in detail, in general, photogrammetry calculates a three-dimensional coordinate value of a subject by locating a pair of stereo pair images obtained by photographing the subject from different directions in the order of internal orientation, relative orientation, and absolute orientation. Thus, photogrammetry is composed of three phases: internal orientation, relative orientation, and absolute orientation.
[0107]
Internal orientation is a technique for converting two-dimensional coordinates (referred to as machine coordinates) on an image into photographic coordinates used for relative orientation, such as by correcting distortion when a subject is projected onto a photosensitive surface (CCD). Work. In machine coordinates, the unit of length is a pixel unit, and the coordinate origin is set to one of the four corners of the image. In the photographic coordinate system, the unit of length is millimeters, and the coordinate origin is set at the center of the image. Affine transformation was used for coordinate transformation from machine coordinates to photographic coordinates.
[0108]
The relative orientation is an operation for obtaining a relative inclination and positional relationship between stereo pair images and reproducing a shooting state. That is, the position and inclination of the digital camera 62 when a stereo pair image is taken are calculated.
By relative orientation, a model coordinate system which is a relative three-dimensional coordinate system is obtained, and the subject is represented as a three-dimensional model similar to the subject in the model coordinate system.
At the stage of relative orientation, the scale and inclination of the model coordinate system and the amount of translation are unknown.
[0109]
The absolute orientation is an operation for obtaining the scale and inclination of the model coordinates and the amount of parallel movement using the absolute coordinates (actual survey values) of the reference points captured in the stereo pair image. A solid with the same scale as the subject can be obtained by absolute orientation.
More specifically, conversion to a centroid coordinate system for rotating the subject around the center of gravity, calculation of cumulative scale, calculation of cumulative parallel movement, calculation of cumulative rotation matrix, coordinate conversion of all corresponding points, elevation Adjustment adjustment and elevation calculation of the plane position.
In this way, the photogrammetry unit 72 constitutes a positional relationship analysis unit that analyzes the positional relationship of the digital camera 62 when a stereo pair image is taken, and an orientation unit that calculates the three-dimensional information of the subject.
[0110]
The internal orientation unit 78 receives the reference point and the coordinate value of the corresponding point from the corresponding point acquisition unit 77, and receives the camera data from the camera data database 52 (FIG. 5). Then, the internal orientation unit 78 internalizes the stereo pair image using these coordinate values and camera data, and outputs the orientation result to the semi-optimal solution search unit 84.
The suboptimal solution search unit 84 includes a point selection unit 80, a relative orientation unit 81, an absolute orientation unit 82, and an evaluation / determination unit 83.
The sub-optimal solution search unit 84 generates various combinations of a plurality of points (reference points, corresponding points) on the stereo pair image acquired from the corresponding point acquisition unit 77, and determines the point where the accuracy of the orientation satisfies a predetermined degree. Search for combinations.
That is, a combination of points at which the accuracy of orientation is increased to some extent is searched, and a stereo pair image is oriented using this combination. Thus, the combination of points searched by the sub-optimal solution search unit 84 is not necessarily the combination of points with the highest surveying accuracy among all the combinations, and is called a sub-optimal combination.
[0111]
As for the accuracy of orientation, a residual is defined by a predetermined method, and when the residual satisfies a predetermined condition, a desired accuracy is obtained.
For example, the residual can be defined as: First, stereo pair images are determined from combinations with points. And the three-dimensional coordinate value of each reference point (for example, each vertex of the staff 130) is calculated using the orientation result. Next, the measured value (preliminarily known) of each reference point is compared with the calculated value.
The accuracy of the orientation can be verified by this comparison value. For example, the difference obtained by adding all the difference between the calculated value of the coordinate value of each reference point and the actually measured value to each of the coordinate axes can be used as the residual.
When various combinations of corresponding points are generated using a genetic algorithm, which will be described later, and the localization is repeated, the residual becomes smaller and converges to a certain value. The orientation result is obtained with a combination of corresponding points when the residual converges.
[0112]
The function of each component of the suboptimal solution search unit 84 is as follows.
The point selection unit 80 generates a combination of points from the reference points and the corresponding points according to a genetic algorithm. The genetic algorithm will be explained later.
The relative orientation unit 81 performs relative orientation on the combination of points generated by the point selection unit 80. That is, the position and inclination of the digital camera 62 when the left image 135 and the right image 136 are photographed are obtained, and a 3D model space similar to the subject (indoor) is generated. The absolute orientation unit 82 absolutely evaluates the stereo pair image using the result output from the relative orientation unit 81, and generates a 3D model space having the same scale as the subject. Further, at the stage of absolute orientation, the three-dimensional coordinate values of the points used for orientation are obtained.
[0113]
The evaluation / determination unit 83 confirms the accuracy of the 3D model space output from the absolute orientation unit 82 using the residual defined by the three-dimensional coordinates of the reference point described above, and determines the convergence of the orientation result. .
In addition, when the reference point is not included in the orientation result, such as when the reference point is not included in the combination of points used for the orientation, the reference point is calculated by each point coordinate value calculation unit 86 described later. Is obtained.
The point selection unit 80 to the evaluation / determination unit 83 repeat the above work until the result converges. When the absolute orientation result converges, the result obtained by combining the points at this time is taken as the orientation result. The photogrammetry unit 72 passes the orientation results such as the three-dimensional coordinates of the points used for orientation to the 3DCG file generation unit 73.
[0114]
The photogrammetry unit 72 described above performs absolute orientation and generates a 3D model space of the same scale of the subject. The purpose of the present embodiment is to represent a real estate property room in the 3D model space. Therefore, it is not always necessary to know the absolute size of the property. Therefore, the photogrammetry unit 72 may not perform absolute orientation, but may generate a 3D model space similar to an actual room by mutual orientation and represent the room with this.
[0115]
The 3DCG file generation unit 73 includes a point coordinate value calculation unit 86, a polygon generation unit 88, a source code generation unit 90, a texture generation unit 92, a texture pasting unit 94, and the like. The 3DCG file generation unit 73 constitutes a three-dimensional model generation unit that generates a 3D model of the subject.
Each point coordinate value calculation unit 86 receives each parameter (the inclination of the left and right images and the three-dimensional coordinate value of the point used for the orientation) obtained from the orientation from the photogrammetry unit 72 and is not used for the orientation. The three-dimensional coordinate value of the point is calculated using the orientation result.
[0116]
Since the orientation of the stereo pair image has already been completed, if any corresponding points are taken in the left image 135 and the right image 136, these three-dimensional information can be calculated immediately.
In addition, for the convenience of generating polygons later, corresponding points are newly generated on the stereo pair image so that the points for polygon creation (including reference points and corresponding points) are uniformly distributed, and the three-dimensional coordinates thereof are generated. It is also possible to add a function for calculating a value from the result of absolute orientation to each point coordinate value calculation unit 86.
The polygon generation unit 88 acquires the three-dimensional coordinate value of each point (reference point, corresponding point) from each point coordinate value calculation unit 86, generates a Voronoi region from them, and further divides the Voronoi region into Delaunay to obtain a polygon. generate. The subsequent work is performed on the left image 135.
[0117]
FIG. 10A is a diagram for explaining Voronoi regions and Delaunay division.
The Voronoi region is obtained by dividing a point set on a two-dimensional space or a three-dimensional space into regions where the distance between the points is the shortest.
Points 191a, 191b, 191c,... Are corresponding points on the subject whose three-dimensional coordinate values are known.
The plane 192a (represented by a line segment for convenience in the figure) is a plane in which points on the plane are equidistant from the points 191a and 191b. The plane 192b is a plane in which points on the plane are equidistant from the points 191a and 191c. In this way, planes 192a, 192b, 192c,... Are generated. As a result, Voronoi regions 194a, 194b, 194c,... Are generated.
[0118]
Delaunay division is a technique for forming a triangle based on a Voronoi region and dividing the region.
In FIG. 10A, when points 191d, 191c, and 191b at the centers of adjacent Voronoi regions 194a, 194b, and 194c are connected by line segments 193c, 193a, and 193b, a Voronoi region 195 is generated. Voronoi regions can be used as polygons. In this way, a polygon is generated from a set of points on the subject.
As described above, when the polygon is generated using the Voronoi region, the generation of the elongated polygon 196 as shown in FIG. 10B can be suppressed.
[0119]
In this way, the polygon generation unit 88 can automatically generate a triangular polygon from a set of points. Then, from the generated polygon, it is possible to easily obtain line / surface information necessary for generating 3DCG source code later. Here, the line information is three-dimensional coordinate information of a line segment constituting the polygon, and the surface information is three-dimensional coordinate information of the surface constituting the polygon.
From the line information, a wire frame model of the subject can be generated, and from the surface information, a surface model or a solid model can be generated.
In the present embodiment, it is assumed that a surface model is generated from surface information without generating a wire frame model.
Therefore, the polygon generation unit 88 passes the surface information to the source code generation unit 90.
[0120]
The source code generation unit 90 (FIG. 8) generates 3DCG source code using the surface information received from the polygon generation unit 88. For example, VRML can be used as a computer graphics language for describing source code.
[0121]
The texture generation unit 92 is a module that cuts out an image to be pasted on each polygon generated by the polygon generation unit 88 from the left and right images.
The texture generation unit 92 receives the left image from the image acquisition unit 75 and receives information representing the shape and position of each polygon on the left and right images from the polygon generation unit 88.
Then, the texture generation unit 92 extracts the region on the left and right images corresponding to the shape and position of each polygon for each polygon.
The clipped image is stored in the 3D model space database 58 (FIG. 5) as an image file such as JPEG format.
Thus, the texture generation unit 92 constitutes a texture generation unit.
[0122]
The texture pasting unit 94 pastes the texture cut out by the texture generating unit 92 to the three-dimensional model generated by the source code generating unit 90.
The three-dimensional model generated by the source code generation unit 90 is composed of triangular polygons.
The texture pasting unit 94 receives information specifying the image data to be pasted on each polygon from the texture generation unit 92, and based on this information, pastes the image data corresponding to each polygon and updates the 3DCG source code.
[0123]
Thus, the texture pasting unit 94 constitutes a texture pasting means.
Then, the texture pasting unit 94 outputs the updated source code to the 3DCG storage unit 121 (FIG. 6).
For example, in the case of VRML, the texture is pasted by writing the file name of the texture corresponding to a predetermined location in the VRML file (text file).
[0124]
Next, the genetic algorithm will be described.
In the present embodiment, a method has been adopted in which the calculation time for orientation is greatly shortened using a genetic algorithm.
When performing photogrammetry, some (at least 6) of points (reference points and corresponding points) on the stereo pair image are selected, and orientation calculation is performed using the selected points.
Since the orientation accuracy differs depending on how points are selected, it is necessary to find a combination of points that can perform orientation calculation with high accuracy from among a large number of points. In conventional photogrammetry, workers with advanced expertise and abundant experience have searched for combinations of points. However, it is difficult even for such an expert to search for an optimal combination of points.
[0125]
Therefore, in the present embodiment, a plurality of combinations of points are arbitrarily created, and the residual is obtained by repeating genetic operations such as crossover and mutation until the residual converges to a certain range. Use a method of convergence. If this method is used, even if there are a large number of measurement points, it is not necessary to perform orientation calculation for all combinations of points, so that calculation time can be reduced and orientation results that satisfy the required accuracy can be obtained. Obtainable.
[0126]
The genetic algorithm originates from Darwinism evolution theory in which solids with high fitness to the environment survive after competition for survival while performing actions such as crossover, selection and mutation in the solid population. According to the theory of evolution, those who are more suitable for the environment have a higher probability of surviving in the cocoon, and the survivors cross over to leave a better trait for the next generation and acquire new traits through mutation. If an inferior trait is acquired by mutation, the individual is deceived, and as a result, those who acquired a superior trait by mutation survive, the number of offspring increases, and the fitness of the entire solid population is improves.
[0127]
Mutations can generate genes that cannot be obtained by crossover alone. In mathematical terms, by mutating, a local solution can be avoided and a more optimal solution can be obtained.
The genetic algorithm is an algorithm for this process. In a genetic algorithm, an object is expressed by a gene (also called a gene code) by some method, and the fitness of the gene is obtained using an evaluation function.
[0128]
The evaluation function hits the natural environment in the natural world. Individuals with genes that have a high degree of fitness for this natural environment have a higher probability of surviving and leaving offspring, and individuals with genes of a low degree of fitness have a lower probability of leaving offspring. The next generation with traits is formed.
The application of genetic algorithms to engineering has been extensively studied and applied to many combinatorial optimization problems such as jet engine design optimization, co-generation optimization, and road maintenance order determination.
[0129]
FIG. 11 is a diagram expressing combinations of points. In this example, 20 points used for photogrammetry such as reference points and corresponding points were taken. The gene consists of 20 gene loci 158a, 158b,..., 158t, and two numerical values of 0 or 1 are assigned to each gene locus. A locus is a structural unit of a gene. By assigning points from P1 to P20 to these loci, a numerical value of 0 or 1 is assigned to each point.
[0130]
When 1 corresponds to a point, that point is adopted as a set of points for orientation, and when 0 corresponds, it is not adopted.
For example, when 1 is assigned to the loci of P1, P2, P5, P7, P9, P12, and P18, and 0 is assigned to the other loci, P1, P2, P5, P7, P9, P12, P18 Is selected as a combination of points for orientation.
[0131]
In the present embodiment, the fitness of these genes is the reciprocal of the residual obtained from the orientation of the genes. That is, the smaller the residual is, the higher the fitness is. The residual was determined by the same method as in Example 1. In addition, the method of taking the degree of matching is not limited to this, and it is sufficient that the degree of matching increases as the gene has higher orientation accuracy.
Crossover and mutation were performed as genetic operations.
For crossover, two genes with high fitness were selected and two-point crossover was performed. The two-point crossover is, for example, a region sandwiched between a point 151 between the second locus and the third locus in FIG. 11 and a point 52 between the fourth locus and the fifth locus. The exchange of data for a gene between two genes.
[0132]
The method of selecting the points 151 and 152 may be arbitrary or may be fixed. As a crossover method, one-point crossover or three-point crossover may be performed.
Mutations were performed by inverting some 0s and 1s in any gene with a certain probability. As a result, a new gene that cannot be generated by crossover alone is formed, so that it does not fall into a local optimal solution.
[0133]
In the present embodiment, since the orientation is performed for the combination of points where the orientation accuracy is high, the points that are lost from this combination are deceived and no orientation calculation is performed.
By the way, when the orientation is performed by the algorithm of the present embodiment and all the orientation elements (the inclination of the digital camera 62, the scale of the model coordinates, the rotation, the translation, etc.) are obtained, these orientation elements are used to determine the orientation. It is possible to calculate a three-dimensional coordinate value of the selected point in real space. For this reason, even when measurement points are selected in the orientation work and the coordinate values are not calculated, the coordinate values can be calculated using the orientation results.
[0134]
FIG. 12 shows that the genetic fitness increases and converges to a certain value each time the genetic operation is repeated. Point 154 is the maximum fitness value of each gene of the first generation.
Each time a genetic manipulation is performed, the fitness of each gene is calculated. The maximum value of such fitness increases with each generation. Then, after a certain number of generations, the maximum value becomes almost constant. At this time, it is determined that the fitness has converged.
[0135]
In the present embodiment, as indicated by a point 156 in FIG. 12, when the maximum value of the fitness of each gene within a certain calculation time ± t, for example, ± 3 minutes is within ± 1%, it is determined that the convergence has occurred. did. The convergence condition of the fitness is not limited to this. For example, when the maximum value of the fitness is within a predetermined percentage over a predetermined generation, it is determined that the fitness is converged, or the fitness of each gene is maximized. An average value may be used instead of a value.
[0136]
FIG. 13 is a flowchart for explaining a procedure for generating 3DCG data from a stereo pair image.
First, the image acquisition unit 75 acquires a stereo pair image for performing photogrammetry (step 5).
Next, the corresponding point acquisition unit 77 extracts from the stereo pair image a reference point previously captured in the stereo pair image (step 10).
[0137]
Next, the position and inclination of the digital camera 62 when the left image and the right image are taken from the two-dimensional coordinate value of the reference point on the stereo pair image by the internal orientation unit 78, the relative orientation unit 81, and the absolute orientation unit 82. Calculate Then, each point coordinate value calculation unit 86 calculates the three-dimensional coordinates of the points on the target in the left image and the three-dimensional coordinates of the points on the target in the right image using the calculation results. The corresponding point acquisition unit 77 associates points on the target that are close in three-dimensional coordinate values in the left image and the right image, and sets them as corresponding points (step 15).
[0138]
Next, the corresponding point acquisition unit 77 further acquires corresponding points using the acquired corresponding points (step 20). This is performed, for example, by detecting a point where the color of the image changes on a straight line connecting two known corresponding points.
Next, the internal orientation unit 78 performs internal orientation using camera data or the like (step 78).
[0139]
Next, the point selection unit 80 selects a predetermined number of points from the reference points and the corresponding points, and generates a combination of points (step 30).
Next, the relative orientation unit 81 performs relative orientation on the stereo pair image using the generated combination of points (step 35).
Next, the absolute orientation unit 82 performs absolute orientation using the result of mutual orientation (step 40).
Next, the evaluation / determination unit 83 calculates the residual of the three-dimensional coordinate value of the reference point using the orientation result, and determines the convergence of the orientation accuracy (step 45). If the evaluation / determination unit 83 determines that the convergence has not occurred (step 45; N), the process returns to step 30, a new point combination is generated according to the genetic algorithm, and the orientation work is performed again.
[0140]
When it is determined that the evaluation / determination unit 83 has converged (step 45; Y), each point coordinate value calculation unit 86 calculates the three-dimensional coordinate values of other points not used for the orientation using the orientation result. (Step 50).
Next, the polygon generation unit 88 performs Delaunay division of the subject using points (reference points and corresponding points), and further generates a Voronoi region using the Delaunay division result to generate a polygon (step 55).
[0141]
Next, the source code generation unit 90 generates a source code using a computer graphics language such as VRML using the generated polygon (step 60). That is, the three-dimensional model is described in a predetermined computer language.
On the other hand, in the texture generation unit 92, the image acquisition unit 75 acquires the left image, and uses this to cut out and generate the texture to be pasted on the polygon generated by the polygon generation unit 88 (step 65).
[0142]
Next, the texture pasting unit 94 updates the source code generated by the source code generating unit 90, thereby pasting the texture generated by the texture generating unit 92 to the three-dimensional model (step 70).
The texture pasting unit 94 outputs the three-dimensional model with the texture pasted to the 3DCG storage unit 121, and ends the process.
[0143]
The following effects can be obtained by the 3D model space generation system 50a described above.
(1) Corresponding reference points can be automatically extracted from the left and right images of the stereo pair image.
(2) By using a target or the like, corresponding points can be automatically acquired from the stereo pair image.
(3) A new corresponding point can be automatically acquired using a known corresponding point.
[0144]
(4) The stereo pair image can be automatically determined using the reference point and the corresponding point.
(5) By using a genetic algorithm, a suboptimal solution can be obtained at high speed.
(6) Computer graphics can be automatically generated using the orientation result.
(7) An actual indoor image can be pasted as a texture on the three-dimensional model.
(8) It is possible to combine the three-dimensional models related to different surfaces in the room into one.
[0145]
FIG. 14 is a diagram illustrating an example of a content creation screen.
The content creation screen 201 is displayed on the display when the content creation program 54 (FIG. 5) is executed by the CPU 28. The content creator can use the model house content creation function provided by the content creation program 54 by appropriately operating the content creation screen 201.
Thereby, 3DCG is matched with each room of a predetermined real estate property, and a model house content can be created.
[0146]
The property column 205 is a column for inputting property specifying information for specifying a real estate property for which the model house file 21 is to be created, for example, an address.
The reference button 206 is a button for assisting the input of the property specifying information in the property column 205. When the reference button 206 is clicked, the property specifying information in which the floor plans are stored in the floor plan database is displayed in a list. The content creator can input the property specifying information into the property column 205 by clicking a desired item from the property specifying information displayed in a list.
The floor plan display areas 207 and 208 are areas for displaying a floor plan of the real estate property specified in the property column 205, respectively.
When the property specifying information is input to the property column 205, the CPU 28 searches the floor plan database using this information as a key. The floor plans displayed in the floor plan display areas 207 and 208 are displayed using the floor plan data searched by the CPU 28.
[0147]
In the present embodiment, it is assumed that a two-story real estate property is searched as an example. In this case, the floor plan display area 207 displays the floor plan of the first floor, and the floor plan display area 208 displays the floor plan of the second floor.
When the real estate property is one floor, only the floor plan display area 207 is displayed. Thus, the floor plan display area is displayed according to the number of floor plans of the real estate property.
[0148]
The 3D image column 220 is a column for inputting classification information. The 3D model space database 58 is classified for each real estate property, and 3DCG files belonging to the same real estate property are classified into the same category.
By inputting the classification information in the 3D image column 220, the 3DCG file relating to the desired real estate property can be specified.
As the classification information, for example, information for identifying the real estate property such as an address of the real estate property is used.
The reference button 221 is a button for assisting the input of the category information into the 3D image field 220. When the reference button 221 is clicked, a list for each real estate property formed in the 3D model space database 58 is displayed. The content creator can input the property specifying information into the property column 205 by clicking a desired one of the 3DCG specifying information displayed in a list.
[0149]
The thumbnail display area 223 is an area for displaying a list of 3DCG files belonging to the category input in the 3D image field 220.
The list display of 3DCG files is performed using thumbnails 226, 227,... Representing a part of the room related to the 3DCG file as a two-dimensional image.
The content creator can recognize which room the 3DCG file is the 3DCG file by looking at the thumbnails 226, 227,... Displayed in the thumbnail display area 223.
[0150]
The thumbnail display area 223 includes a slide bar 224, and the thumbnails 226, 227,... Can be slid in the vertical direction by sliding the bar 224 by operating the mouse. By sliding the thumbnails 226, 227,..., The thumbnail display area 223 can be displayed as much as it can not be displayed at once.
[0151]
The content creator can associate the thumbnails displayed by dragging and dropping the thumbnails displayed in the thumbnail display area 223 onto the room displayed in the floor plan display area 207 or the like.
Drag and drop refers to an operation in which a pointer is moved to an object, a mouse is moved while a predetermined mouse button is pressed, and the mouse button is released at a target position.
For example, when the pointer 210 is placed on the thumbnail 226 and dragged and dropped on the kitchen 229, the thumbnail 226 and the kitchen 229 can be associated with each other.
Thereby, the correspondence between the room on the floor plan displayed in the floor plan display area 11 of the model house screen 20 (FIG. 4) and the 3DCG displayed in the 3DCG display area 12 can be determined.
[0152]
The creation button 215 is a button for creating a content file. After determining the correspondence between the thumbnail in the thumbnail display area 223 and the room on the floor plan display area 207 and the like, when a creation button 215 is clicked, a model house file relating to the real estate is created. The content creator can make the model house file available on the Web by uploading the model house file to the model house server 6.
[0153]
The reset button 216 is a button for canceling all the correspondences between the room on the floor plan during work and the 3DCG file.
The cancel button 217 is a button for canceling the correspondence between a specific room on the floor plan designated by the content creator and the 3DCG file associated with the room. After clicking a room for canceling the correspondence on the floor plan and then clicking a cancel button 217, the association between the room and the 3DCG file associated with the room can be canceled.
[0154]
As described above, by using the content creation screen 201, the content creator can easily associate the room on the floor plan with 3DCG in which the room is computerized.
Further, the content file can be automatically generated by, for example, HTML.
[0155]
In the present embodiment, the following effects can be obtained.
(1) The property information of public housing and other real estate properties can be disclosed on the Web, and high-quality property information is provided to users at a lower cost than providing property information such as floor plans at the storefront. Can do.
(2) Since all the property information is stored in a storage medium such as the model house server 6, the maintenance and management of the data becomes easy, and the maintenance cost can be reduced as compared with the disclosure of the property information at the store.
(3) Since the user can browse the 3DCG created from an image obtained by photographing the room of an actual real estate property on the Web, the user can know the state of the actual room in detail.
(4) Since the user can easily use the model house content by using the terminal 3 that can be connected to the Internet 5, the user can promote the sale of the real estate property.
[0156]
Although one embodiment of the present invention has been described above, the present invention is not limited to the described embodiment, and various modifications can be made within the scope described in each claim.
[0157]
【The invention's effect】
According to the present invention, a model house used in a 3D model space on the Web can be easily constructed.
[Brief description of the drawings]
FIG. 1A is a diagram showing a configuration of a model house system, and FIG. 1B is a diagram conceptually showing a configuration of a browser.
FIG. 2 is a diagram illustrating an example of screen transition of model house content.
3A is a diagram schematically showing the configuration of a model house file, FIG. 3B is a diagram showing the configuration of a correspondence table, and FIG. 3C is a diagram showing the central processing unit 26 and others; It is the figure which showed the relationship with this component.
FIG. 4 is a diagram showing an example of a model house screen.
FIG. 5 is a block diagram illustrating an example of a hardware configuration of a content creation device.
FIG. 6 is a diagram showing a configuration of a 3D model space generation system.
FIGS. 7A to 7C are diagrams for explaining an indoor photographing method using one measuring scale, and FIGS. 7D to 7H are indoor photographing methods using two measuring scales. It is a figure for demonstrating.
FIG. 8 is a diagram illustrating a configuration of a photogrammetry unit and a 3DCG file generation unit.
FIG. 9 is a diagram schematically illustrating an example of a stereo pair image.
FIG. 10A is a diagram for explaining Voronoi regions and Delaunay division, and FIG. 10B is a diagram showing elongated polygons.
FIG. 11 is a diagram expressing a combination of points.
FIG. 12 is a diagram showing a point where the fitness of a gene increases and converges to a certain value each time a genetic operation is repeated.
FIG. 13 is a flowchart for explaining a procedure for generating 3DCG data from a stereo pair image;
FIG. 14 is a diagram showing an example of a content creation screen.
[Explanation of symbols]
1 Model house system
3 Terminal
4 Browser
5 Internet
6 Model house server
7 Content creation device
8 Floor plan display
9 3D display
11 Floor plan display area
12 3DCG display area
13 Furniture name input field
14 Furniture display area
15 Floor plan selection area
16 Translation button
17 Rotate button
18 Property screening screen
19 Visit application screen
20 Model house screen
21 Model house file
22 Control program
23 Floor plan database
24 3DCG database
25 Correspondence table
26 Central processing unit
27 Control unit
28 CPU
30 ROM
32 RAM
34 Input means
38 Output means
42 Communication control device
43 Bus line
44 I / O interface
46 Storage Medium Drive Device
48 storage devices
50 3D model space generation program
52 Camera data database
54 Content creation program
56 Image Database
58 3D model space database
62 Digital camera
72 Photogrammetry Department
73 3DCG file generator
75 Image acquisition unit
77 Corresponding point acquisition part
78 Internal orientation part
80 point selection section
81 Mutual orientation part
82 Absolute orientation part
83 Evaluation / Judgment Department
84 Suboptimal solution search unit
86 Point coordinate value calculator
88 Polygon generator
90 Source code generator
92 Texture generator
94 Texture pasting section
121 CG storage
125 joint
126 Distortion correction unit
130 Standard
131 Standard
135 Left image
136 Right image
137 wall
195 Voronoi region
201 Content creation screen
205 property column
206 Browse button
207 Floor plan display area
208 Floor plan display area
210 Pointer
215 Create button
216 Reset button
217 Cancel button
220 3D image field
221 Browse button
223 Thumbnail display area
224 slide bar
226 thumbnail
227 thumbnail

Claims (8)

同一基準点及び同一の被写体を異なる少なくとも2方向から撮影した1対のステレオペア画像を取得する画像取得手段と、
前記ステレオペア画像上で、前記被写体に識別可能に配設された点を抽出して対応させる対応点抽出手段と、
既に得られている前記ステレオペア画像上で対応する点のうち同一平面上にある2つの対応点を選択する選択手段と、
前記選択した2つの点を含む直線上の色を画像処理により識別する識別手段と、
前記直線上の識別した色が変化する点のうち、前記2つの点のうちの何れか一方に最も近い点を前記ステレオペア画像上で対応する点として特定する対応点特定手段と、
前記対応抽出手段で抽出した点と、前記対応点特定手段で特定した点から、所定の標定精度が得られる点の組み合わせを特定する組み合わせ手段と、
前記特定した組み合わせに含まれる点を用いて前記ステレオペア画像を標定し、前記被写体の3次元情報を算出する標定手段と、
を具備したことを特徴とする3次元モデル空間生成装置。
Image acquisition means for acquiring a pair of stereo pair images obtained by photographing the same reference point and the same subject from at least two different directions;
On the stereo pair image, corresponding point extracting means for extracting and corresponding to the points that can be identified by the subject;
Selecting means for selecting two corresponding points on the same plane among the corresponding points on the stereo pair image already obtained;
Identifying means for identifying, by image processing, a color on a straight line including the selected two points;
Corresponding point specifying means for specifying, as a corresponding point on the stereo pair image, a point closest to any one of the two points among the points where the identified color on the straight line changes ;
A combination means for specifying a combination of points at which a predetermined orientation accuracy is obtained from the points extracted by the correspondence extraction means and the points specified by the corresponding point specification means;
An orientation unit that locates the stereo pair image using points included in the identified combination and calculates three-dimensional information of the subject;
A three-dimensional model space generation apparatus comprising:
前記対応点抽出手段で抽出する点には、水平方向の位置が予めわかっている点が少なくとも2点、高さが予めわかっている点が少なくとも3点含まれていることを特徴とする請求項1に記載の3次元モデル空間生成装置。  The points extracted by the corresponding point extraction means include at least two points whose horizontal positions are known in advance and at least three points whose heights are known in advance. The three-dimensional model space generation device according to 1. 既に得られている前記ステレオペア画像上の対応する点を用いて前記ステレオペア画像を構成する左画像と右画像を撮影した際のカメラの位置関係を解析する位置関係解析手段と、
前記解析した位置関係を用いて、前記左画像上の点と前記右画像上の点の対応関係を特定する対応関係特定手段と、
を具備し、
前記対応点取特定手段は、前記対応関係特定手段で特定される対応関係を用いて前記左画像上の点と前記右画像上の点を対応させることにより、前記ステレオペア画像上の対応する点を特定することを特徴とする請求項1、又は請求項2に記載の3次元モデル空間生成装置。
A positional relationship analysis means for analyzing the positional relationship of the camera when the left image and the right image constituting the stereo pair image are captured using corresponding points on the stereo pair image already obtained;
Correspondence specifying means for specifying the correspondence between the points on the left image and the points on the right image using the analyzed positional relationship;
Comprising
The corresponding point acquisition specifying unit associates a point on the left image with a point on the right image using the correspondence specified by the correspondence specifying unit, thereby corresponding points on the stereo pair image. The three-dimensional model space generation device according to claim 1, wherein the three-dimensional model space generation device is specified.
前記標定手段で算出した前記被写体の3次元情報を用いて、前記被写体の立体モデルを所定のコンピュータグラフィックス言語で生成する立体モデル生成手段を具備したことを特徴とする請求項1から請求項までのうちの何れか1の請求項に記載の3次元モデル空間生成装置。Using three-dimensional information of the object calculated by the orientation means, claims 1 to 3, characterized by comprising a three-dimensional model generating means for generating a three-dimensional model of the object at a predetermined computer graphics languages The three-dimensional model space generation device according to claim 1. 前記ステレオペア画像の何れか一方からテクスチャを生成するテクスチャ生成手段と、
前記生成したテクスチャを前記立体モデルに貼り付ける貼り付け手段と、
を具備したことを特徴とする請求項に記載の3次元モデル空間生成装置。
Texture generating means for generating a texture from any one of the stereo pair images;
Pasting means for pasting the generated texture to the three-dimensional model;
The three-dimensional model space generation device according to claim 4 , comprising:
前記立体モデル生成手段によって生成された2つの立体モデルを、当該2つの立体モデルに共通な点の座標値を用いて1つの立体モデルに結合する結合手段を具備したことを特徴とする請求項、又は請求項に記載の3次元モデル空間生成装置。5. The apparatus according to claim 4 , further comprising a coupling unit that couples the two three-dimensional models generated by the three-dimensional model generation unit to a single three-dimensional model using coordinate values of points common to the two three-dimensional models. Or a three-dimensional model space generation device according to claim 5 . 画像取得手段と、対応点抽出手段と、選択手段と、識別手段と、対応点特定手段と、組み合わせ手段と、標定手段と、を備えたコンピュータにおいて、
前記画像取得手段で、同一基準点及び同一の被写体を異なる少なくとも2方向から撮影した1対のステレオペア画像を取得する画像取得ステップと、
前記対応点抽出手段は、前記ステレオペア画像上で、前記被写体に識別可能に配設された点を抽出して対応させる対応点抽出ステップと、
前記選択手段で、既に得られている前記ステレオペア画像上で対応する点のうち同一平面上にある2つの対応点を選択する選択ステップと、
前記識別手段で、前記選択した2つの点を含む直線上の色を画像処理により識別する識別ステップと、
前記対応点特定手段で、前記直線上の識別した色が変化する点のうち、前記2つの点のうちの何れか一方に最も近い点を前記ステレオペア画像上で対応する点として特定する対応点特定ステップと、
前記組み合わせ手段で、前記対応抽出手段で抽出した点と、前記対応点特定手段で特定した点から、所定の標定精度が得られる点の組み合わせを特定する組み合わせステップと、
前記標定手段で、前記特定した組み合わせに含まれる点を用いて前記ステレオペア画像を標定し、前記被写体の3次元情報を算出する標定ステップと、
から構成されたことを特徴とする3次元モデル空間生成方法。
In a computer comprising image acquisition means, corresponding point extraction means, selection means, identification means, corresponding point identification means, combination means, and orientation means,
An image acquisition step of acquiring a pair of stereo pair images obtained by photographing the same reference point and the same subject from at least two different directions with the image acquisition means;
The corresponding point extracting means extracts a corresponding point on the stereo pair image so as to extract and correspond to a point that can be identified by the subject; and
A selection step of selecting two corresponding points on the same plane among corresponding points on the stereo pair image already obtained by the selection means;
An identification step of identifying, by image processing, a color on a straight line including the selected two points by the identification means;
The corresponding point specifying means, among the points identified color on the straight line is changed, the corresponding point to identify the closest point on either of said two points as corresponding points on the stereo pair images Specific steps,
A combination step of specifying a combination of points that can obtain a predetermined orientation accuracy from the points extracted by the correspondence extraction unit and the points specified by the corresponding point specification unit by the combination unit;
An orientation step of locating the stereo pair image using points included in the identified combination and calculating three-dimensional information of the subject;
A three-dimensional model space generating method characterized by comprising:
同一基準点及び同一の被写体を異なる少なくとも2方向から撮影した1対のステレオペア画像を取得して記憶する画像取得機能と、
前記記憶したステレオペア画像上で、前記被写体に識別可能に配設された点を抽出して対応させて記憶する対応点抽出機能と、
既に得られている前記ステレオペア画像上で対応する点のうち同一平面上にある2つの対応点を選択する選択機能と、
前記選択した2つの点を含む直線上の色を画像処理により識別する識別機能と、
前記直線上の識別した色が変化する点のうち、前記2つの点のうちの何れか一方に最も近い点を前記ステレオペア画像上で対応する点として特定して記憶する対応点特定機能と、
前記対応抽出機能で抽出して記憶した点と、前記対応点特定機能で特定して記憶した点を読みだして、該点から、所定の標定精度が得られる点の組み合わせを特定する組み合わせ機能と、
前記特定した組み合わせに含まれる点を用いて前記ステレオペア画像を標定し、前記被写体の3次元情報を算出する標定機能と、
をコンピュータで実現するための3次元モデル空間生成プログラム。
An image acquisition function for acquiring and storing a pair of stereo pair images obtained by photographing the same reference point and the same subject from at least two different directions;
On stereo pair images the memory, a corresponding point extraction function to store in association with extracts that are identifiably arranged on the object,
A selection function for selecting two corresponding points on the same plane among the corresponding points on the stereo pair image already obtained;
An identification function for identifying a color on a straight line including the selected two points by image processing;
A corresponding point specifying function for specifying and storing a point closest to one of the two points as a corresponding point on the stereo pair image among the points where the identified color on the straight line changes ;
Combinations said corresponding extraction and extraction to the point stored in function and read the points stored identified by the above corresponding point specific function, from the point, to identify the combinations of points given orientation accuracy is obtained Function and
An orientation function that locates the stereo pair image using points included in the identified combination and calculates three-dimensional information of the subject;
A three-dimensional model space generation program for realizing the above on a computer.
JP2002272578A 2002-09-19 2002-09-19 3D model space generation device, 3D model space generation method, and 3D model space generation program Expired - Fee Related JP4153761B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002272578A JP4153761B2 (en) 2002-09-19 2002-09-19 3D model space generation device, 3D model space generation method, and 3D model space generation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002272578A JP4153761B2 (en) 2002-09-19 2002-09-19 3D model space generation device, 3D model space generation method, and 3D model space generation program

Publications (2)

Publication Number Publication Date
JP2004110459A JP2004110459A (en) 2004-04-08
JP4153761B2 true JP4153761B2 (en) 2008-09-24

Family

ID=32269563

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002272578A Expired - Fee Related JP4153761B2 (en) 2002-09-19 2002-09-19 3D model space generation device, 3D model space generation method, and 3D model space generation program

Country Status (1)

Country Link
JP (1) JP4153761B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180025135A (en) * 2016-08-30 2018-03-08 숭실대학교산학협력단 Apparatus and method for inside wall frame detection based on single image
US11763535B2 (en) 2018-11-23 2023-09-19 Samsung Electronics Co., Ltd. Electronic device and control method thereof

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4518889B2 (en) * 2004-09-21 2010-08-04 株式会社バンダイナムコゲームス Image generation system, program, and information storage medium
JP4773794B2 (en) * 2005-10-19 2011-09-14 株式会社岩根研究所 New and old video coordinate integration device
JP5594923B2 (en) * 2005-12-08 2014-09-24 富士機械製造株式会社 Substrate surface height measuring method and apparatus
JP5297779B2 (en) * 2008-12-02 2013-09-25 株式会社トプコン Shape measuring apparatus and program
WO2015159835A1 (en) * 2014-04-17 2015-10-22 シャープ株式会社 Image processing device, image processing method, and program
JP2017130049A (en) * 2016-01-20 2017-07-27 キヤノン株式会社 Image processor, image processing method and program
JP6548827B2 (en) * 2016-06-20 2019-07-24 ナーブ株式会社 INFORMATION MANAGEMENT DEVICE, INFORMATION MANAGEMENT SYSTEM, INFORMATION MANAGEMENT METHOD, AND PROGRAM
JP6881110B2 (en) * 2016-10-13 2021-06-02 株式会社リコー Information processing systems, information processing methods and programs
US10102657B2 (en) * 2017-03-09 2018-10-16 Houzz, Inc. Generating enhanced images using dimensional data
JP2018197674A (en) 2017-05-23 2018-12-13 オリンパス株式会社 Operation method of measuring device, measuring device, measurement system, three-dimensional shape restoring device, and program
KR102193974B1 (en) * 2018-12-26 2020-12-22 (주)신한항업 Method And System For Making 3D Indoor Space
JP6714267B1 (en) * 2019-09-19 2020-06-24 株式会社オフィス建 Adaptive design support server, adaptive design support method, and adaptive design support program
CN113256808A (en) * 2020-02-11 2021-08-13 阿里巴巴集团控股有限公司 Spatial relationship calculation method, device and storage medium
CN112000901B (en) * 2020-08-26 2023-01-13 北京百度网讯科技有限公司 Method and device for extracting spatial relationship of geographic position points
CN112581618B (en) * 2020-12-23 2024-05-24 深圳前海贾维斯数据咨询有限公司 Three-dimensional building model and real scene comparison method and system in building engineering industry
JP2023088061A (en) * 2021-12-14 2023-06-26 株式会社Jvcケンウッド Three-dimensional model generation apparatus, three-dimensional model generation method, and three-dimensional model generation program
CN114491770A (en) * 2022-02-21 2022-05-13 江苏建研建设工程质量安全鉴定有限公司 House inclination detection and calculation method based on three-dimensional laser scanning point cloud
CN114611407B (en) * 2022-03-22 2024-05-14 山西支点科技有限公司 Optimal layout method of infrared three-dimensional target lamps based on genetic algorithm
CN116663415B (en) * 2023-06-01 2023-09-29 湖南恩智测控技术有限公司 SVG model parameter identification method and system for improving Harris eagle optimization algorithm

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180025135A (en) * 2016-08-30 2018-03-08 숭실대학교산학협력단 Apparatus and method for inside wall frame detection based on single image
US11763535B2 (en) 2018-11-23 2023-09-19 Samsung Electronics Co., Ltd. Electronic device and control method thereof

Also Published As

Publication number Publication date
JP2004110459A (en) 2004-04-08

Similar Documents

Publication Publication Date Title
JP4153761B2 (en) 3D model space generation device, 3D model space generation method, and 3D model space generation program
Han et al. Potential of big visual data and building information modeling for construction performance analytics: An exploratory study
US10297074B2 (en) Three-dimensional modeling from optical capture
US20230032888A1 (en) Automated Determination Of Acquisition Locations Of Acquired Building Images Based On Determined Surrounding Room Data
US20190026400A1 (en) Three-dimensional modeling from point cloud data migration
US7031495B2 (en) Data authoring device
US20180025542A1 (en) Method and system for displaying and navigating an optimal multi-dimensional building model
JP7391317B2 (en) Information management device, information management system, information management method, and information management program
JP2010109783A (en) Electronic camera
CN110874818A (en) Image processing and virtual space construction method, device, system and storage medium
US11954773B1 (en) Process for creating an augmented image
WO2016065063A1 (en) Photogrammetric methods and devices related thereto
CN114842139A (en) Building three-dimensional digital model construction method based on spatial analysis
US20130290908A1 (en) Systems and methods for creating and utilizing high visual aspect ratio virtual environments
CN111024089A (en) Indoor positioning navigation method based on BIM and computer vision technology
JP4688309B2 (en) 3D computer graphics creation support apparatus, 3D computer graphics creation support method, and 3D computer graphics creation support program
KR101875047B1 (en) System and method for 3d modelling using photogrammetry
TWM565860U (en) Smart civil engineering information system
Devaux et al. 3D urban geovisualization: In situ augmented and mixed reality experiments
JP2013008257A (en) Image composition program
CN114048541B (en) Asset space marking method and system based on digital twins
JP7130215B1 (en) Planned building confirmation system
McCoy et al. Reducing barriers to remote project planning: Comparison of low-tech site capture approaches and image-based 3D reconstruction
JP7313941B2 (en) Information management system and information management method
JP3459620B2 (en) Photogrammetry device and storage medium storing photogrammetry program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050722

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20061206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20061206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080331

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080605

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080704

R150 Certificate of patent or registration of utility model

Ref document number: 4153761

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110711

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110711

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120711

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20170711

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20170711

Year of fee payment: 9

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20170711

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees