(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-08
(45)【発行日】2025-01-17
(54)【発明の名称】客体認識基盤室内側位のための端末装置、サービスサーバーおよびその方法
(51)【国際特許分類】
G06T 7/70 20170101AFI20250109BHJP
G06T 7/00 20170101ALI20250109BHJP
G06V 10/82 20220101ALI20250109BHJP
G01C 21/26 20060101ALI20250109BHJP
【FI】
G06T7/70 A
G06T7/00 350C
G06V10/82
G01C21/26 P
(21)【出願番号】P 2023547168
(86)(22)【出願日】2020-11-04
(86)【国際出願番号】 KR2020015298
(87)【国際公開番号】W WO2022097765
(87)【国際公開日】2022-05-12
【審査請求日】2023-04-12
(73)【特許権者】
【識別番号】523133247
【氏名又は名称】ダビオ インク.
【氏名又は名称原語表記】DABEEO,INC.
(74)【代理人】
【識別番号】110000590
【氏名又は名称】弁理士法人 小野国際特許事務所
(72)【発明者】
【氏名】パク ジュフム
【審査官】菊池 伸郎
(56)【参考文献】
【文献】特開2011-022157(JP,A)
【文献】国際公開第2020/183659(WO,A1)
【文献】韓国公開特許第10-2016-0003553(KR,A)
【文献】国際公開第2020/195875(WO,A1)
【文献】特開2011-043405(JP,A)
【文献】特開2015-146091(JP,A)
【文献】特開2009-205226(JP,A)
【文献】特開2019-171018(JP,A)
【文献】特開2019-046464(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/70
G06T 7/00
G06V 10/82
G01C 21/26
(57)【特許請求の範囲】
【請求項1】
予め設定された客体別座標値がマッチングされた室内地図が保存された保存部;
撮影部;および
前記撮影部を通じて獲得されたイメージで第1および第2客体を認識し、前記第1および第2客体の仮想空間位置をそれぞれ推定し、前記第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して前記第1および第2客体それぞれと前記ユーザ間の仮想空間距離をそれぞれ推定し、前記仮想空間距離を利用して前記ユーザの室内位置を推定する制御部;を含み、
前記制御部は、
前記第1客体の仮想空間位置とユーザの仮想空間位置間の第1ユークリッド距離を算出し、前記第2客体の仮想空間位置と前記ユーザの仮想空間位置間の第2ユークリッド距離を算出し、前記室内地図から前記第1および第2客体の室内座標をそれぞれ獲得し、前記第1および第2ユークリッド距離、前記第1および第2客体の室内座標を利用して前記ユーザの第1室内予測位置および第2室内予測位置を推定し、前記ユーザの仮想空間位置を基準として前記第1および第2客体の仮想空間位置までのベクトルである第1仮想ベクトルと第2仮想ベクトルの外積である仮想空間の外積を求め、前記第1室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第1室内外積および前記第2室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第2室内外積を求め、前記第1および第2室内外積のうち前記仮想空間の外積と符号が一致する室内外積の室内予測位置を前記ユーザの室内位置と推定することを特徴とする、端末装置。
【請求項2】
表示部をさらに含み、
前記制御部は、前記ユーザの位置を前記室内地図に表示して前記撮影部を通じて獲得されたイメージとともに前記表示部を通じてディスプレイさせることを特徴とする、請求項1に記載の端末装置。
【請求項3】
前記制御部は、
ディープラーニングを利用して前記第1および第2客体を認識し、仮想空間上に生成されるポイントクラウドを利用して前記第1および第2客体の仮想空間位置をそれぞれ推定することを特徴とする、請求項1に記載の端末装置。
【請求項4】
前記制御部は、
Dead Reckoningアルゴリズムを利用して前記ユーザの仮想空間位置を推定することを特徴とする、請求項1に記載の端末装置。
【請求項5】
通信網を通じてサービスサーバーと通信を遂行する通信部をさらに含み、
前記制御部は、
前記保存部に保存されたイメージ収集アプリケーションが実行された場合、前記撮影部を通じて予め選定された客体を撮影し、前記撮影された各客体のイメージを保存し、前記保存された各客体の撮影イメージを前記通信部を通じて前記サービスサーバーに伝送することを特徴とする、請求項1に記載の端末装置。
【請求項6】
室内地図に設定された各客体の撮影イメージを受信する通信部;および
前記通信部を通じて請求項5に記載の端末装置から受信した各客
体の撮影イメージを学習し、前記学習された各客体の撮影イメージを通じて客体およびその客体の座標をマッチングして客体認識のための客体認識モデルを生成する客体認識モデル生成部を含む、サービスサーバー。
【請求項7】
前記通信部を通じて端末装置から撮影イメージを含む位置推定要請信号が受信されると、前記撮影イメージを前記客体認識モデルに入力して第1および第2客体を認識し、前記第1および第2客体の仮想空間位置をそれぞれ推定し、前記第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して前記第1および第2客体それぞれと前記ユーザ間の仮想空間距離をそれぞれ推定し、前記仮想空間距離を利用して前記ユーザの室内位置を推定し、前記推定された室内位置を前記端末装置に伝送する位置推定部をさらに含む、請求項6に記載のサービスサーバー。
【請求項8】
端末装置が撮影部を通じて獲得されたイメージで第1および第2客体を認識し、前記第1および第2客体の仮想空間位置をそれぞれ推定する段階;
前記端末装置が前記第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して前記第1および第2客体それぞれと前記ユーザ間の仮想空間距離をそれぞれ推定する段階;および
前記端末装置が前記仮想空間距離を利用して前記ユーザの室内位置を推定する段階を含み、
前記ユーザの室内位置を推定する段階は、
前記端末装置が前記第1客体の仮想空間位置とユーザの仮想空間位置間の第1ユークリッド距離を算出し、前記第2客体の仮想空間位置と前記ユーザの仮想空間位置間の第2ユークリッド距離を算出する段階;
前記端末装置が
予め設定された客体別座標値がマッチングされた室内地図から前記第1および第2客体の室内座標をそれぞれ獲得し、前記第1および第2ユークリッド距離、前記第1および第2客体の室内座標を利用して前記ユーザの第1室内予測位置および第2室内予測位置を推定する段階;
前記端末装置が前記ユーザの仮想空間位置を基準として前記第1および第2客体の仮想空間位置までのベクトルである第1仮想ベクトルと第2仮想ベクトルの外積である仮想空間の外積を求める段階;
前記端末装置が前記第1室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第1室内外積および前記第2室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第2室内外積を求める段階;および
前記端末装置が前記第1および第2室内外積のうち前記仮想空間の外積と符号が一致する室内外積の室内予測位置を前記ユーザの室内位置と推定する段階を含むことを特徴とする、客体認識基盤室内側位サービス方法。
【請求項9】
前記第1および第2客体の仮想空間位置をそれぞれ推定する段階で、
前記端末装置は、ディープラーニングを利用して前記第1および第2客体を認識し、仮想空間上に生成されるポイントクラウドを利用して前記第1および第2客体の仮想空間位置をそれぞれ推定することを特徴とする、請求項8に記載の客体認識基盤室内側位サービス方法。
【請求項10】
前記仮想空間距離をそれぞれ推定する段階は、
前記端末装置がdead Reckoningアルゴリズムを利用して前記ユーザの仮想空間位置を推定する段階を含むことを特徴とする、請求項8に記載の客体認識基盤室内側位サービス方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は客体認識基盤室内側位のための端末装置、サービスサーバーおよびその方法に関し、より詳細には端末装置の撮影部を通じて撮影されるイメージで客体を認識し、認識された客体をベクトル化された座標を有する室内地図上にマッチングさせてユーザの位置を推定できる、客体認識基盤室内側位のための端末装置、サービスサーバーおよびその方法に関する。
【背景技術】
【0002】
多数のユーザに選択的データを所望する場所で提供する多くのサービス、すなわちユーザの現在位置に基づいて多様な位置基盤サービス(LBS:Location-Based Services)、例えばリアルタイムデータポップアップサービス、ユーザ位置による選択的データ伝送サービス、室内ナビゲーションサービスが提供されている。
【0003】
このようなサービスはユーザの位置を測定する技術を基盤とするが、位置基盤サービスはワイファイ(WIFI)、ビーコン(BEACON)等を利用してユーザの位置を測定して室内ナビゲーションなどのサービスを提供することができる。このような位置基盤サービスを適切に提供するためには、ユーザの位置を正確に把握することが重要である。ところが、ユーザの位置を把握するためにワイファイを使う場合、位置計算のために使われるワイファイ受信信号の大きさの変動が室内で非常に激しいため適切な位置基盤サービスの提供に困難があり、ビーコン送信機を利用する場合、ビーコン送信機の配置間隔によってユーザの位置測定が困難であり得る。例えば、ビーコンを利用してユーザの位置を測定するためにはビーコンとユーザとの距離が正確に測定されなければならないが、ビーコンとユーザの距離が遠くなるほど誤差が大きくなる。また、従来の室内位置推定技術は高価の装備やインフラを構築しなければならないという問題点がある。
【0004】
そこで、高価の装備やインフラを構築せずとも室内位置を推定できる技術開発が要求されている。
【0005】
本発明に関連した先行技術としては大韓民国公開特許第2011-0025025号がある。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は前記のような問題点を改善するために案出されたもので、本発明の目的は、端末装置の撮影部を通じて撮影されたイメージで客体を認識し、その客体を利用してユーザの位置を推定できる客体認識基盤室内側位のための端末装置、サービスサーバーおよびその方法を提供することである。
【0007】
本発明が解決しようとする課題は以上で言及した課題(ら)に制限されず、言及されていないさらに他の課題(ら)は下記の記載から当業者に明確に理解され得るであろう。
【課題を解決するための手段】
【0008】
本発明の一側面に係る端末装置は、予め設定された客体別座標値がマッチングされた室内地図が保存された保存部、撮影部、前記撮影部を通じて獲得されたイメージで第1および第2客体を認識し、前記第1および第2客体の仮想空間位置をそれぞれ推定し、前記第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して前記第1および第2客体それぞれと前記ユーザ間の仮想空間距離をそれぞれ推定し、前記仮想空間距離を利用して前記ユーザの室内位置を推定する制御部を含む。
【0009】
本発明において表示部をさらに含み、前記制御部は、前記ユーザの位置を前記室内地図に表示して前記撮影部を通じて獲得されたイメージとともに前記表示部を通じてディスプレイさせることができる。
【0010】
本発明において前記制御部は、ディープラーニングを利用して前記第1および第2客体を認識し、仮想空間上に生成されるポイントクラウドを利用して前記第1および第2客体の仮想空間位置をそれぞれ推定することができる。
【0011】
本発明において前記制御部は、Dead Reckoningアルゴリズムを利用して前記ユーザの仮想空間位置を推定することができる。
【0012】
本発明において前記制御部は、前記第1客体の仮想空間位置とユーザの仮想空間位置間の第1ユークリッド距離を算出し、前記第2客体の仮想空間位置と前記ユーザの仮想空間位置間の第2ユークリッド距離を算出することができる。
【0013】
本発明において前記制御部は、前記室内地図から前記第1および第2客体の室内座標をそれぞれ獲得し、前記第1および第2ユークリッド距離、前記第1および第2客体の室内座標を利用して前記ユーザの第1室内予測位置および第2室内予測位置を推定し、前記ユーザの仮想空間位置を基準として前記第1および第2客体の仮想空間位置までのベクトルである第1仮想ベクトルと第2仮想ベクトルの外積である仮想空間の外積を求め、前記第1室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第1室内外積および前記第2室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第2室内外積を求め、前記第1および第2室内外積のうち前記仮想空間の外積と符号が一致する室内外積の室内予測位置を前記ユーザの室内位置と推定することができる。
【0014】
本発明において通信網を通じてサービスサーバーと通信を遂行する通信部をさらに含み、前記制御部は、前記保存部に保存されたイメージ収集アプリケーションが実行された場合、前記撮影部を通じて予め選定された客体を撮影し、前記撮影された各客体のイメージを保存し、前記保存された各客体の撮影イメージを前記通信部を通じて前記サービスサーバーに伝送することができる。
【0015】
本発明の他の側面に係るサービスサーバーは、室内地図に設定された各客体の撮影イメージを受信する通信部、前記通信部を通じて受信した各客体での撮影イメージを学習し、前記学習された各客体の撮影イメージを通じて客体およびその客体の座標をマッチングして客体認識のための客体認識モデルを生成する客体認識モデル生成部を含む。
【0016】
本発明において、サービスサーバーは前記通信部を通じて端末装置から撮影イメージを含む位置推定要請信号が受信されると、前記撮影イメージを前記客体認識モデルに入力して第1および第2客体を認識し、前記第1および第2客体の仮想空間位置をそれぞれ推定し、前記第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して前記第1および第2客体それぞれと前記ユーザ間の仮想空間距離をそれぞれ推定し、前記仮想空間距離を利用して前記ユーザの室内位置を推定し、前記推定された室内位置を前記端末装置に伝送する位置推定部をさらに含むことができる。
【0017】
本発明のさらに他の側面に係る客体認識基盤室内側位サービス方法は、端末装置が撮影部を通じて獲得されたイメージで第1および第2客体を認識し、前記第1および第2客体の仮想空間位置をそれぞれ推定する段階、前記端末装置が前記第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して前記第1および第2客体それぞれと前記ユーザ間の仮想空間距離をそれぞれ推定する段階、前記端末装置が前記仮想空間距離を利用して前記ユーザの室内位置を推定する段階を含む。
【0018】
本発明は前記第1および第2客体の仮想空間位置をそれぞれ推定する段階で、前記端末装置は、ディープラーニングを利用して前記第1および第2客体を認識し、仮想空間上に生成されるポイントクラウドを利用して前記第1および第2客体の仮想空間位置をそれぞれ推定することができる。
【0019】
本発明において前記仮想空間距離をそれぞれ推定する段階は、前記端末装置がdead Reckoningアルゴリズムを利用して前記ユーザの仮想空間位置を推定する段階、前記端末装置が前記第1客体の仮想空間位置とユーザの仮想空間位置間の第1ユークリッド距離を算出し、前記第2客体の仮想空間位置と前記ユーザの仮想空間位置間の第2ユークリッド距離を算出する段階を含むことができる。
【0020】
本発明において前記ユーザの室内位置を推定する段階は、前記端末装置が前記室内地図から前記第1および第2客体の室内座標をそれぞれ獲得し、前記第1および第2ユークリッド距離、前記第1および第2客体の室内座標を利用して前記ユーザの第1室内予測位置および第2室内予測位置を推定する段階、前記端末装置が前記ユーザの仮想空間位置を基準として前記第1および第2客体の仮想空間位置までのベクトルである第1仮想ベクトルと第2仮想ベクトルの外積である仮想空間の外積を求める段階、前記端末装置が前記第1室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第1室内外積および前記第2室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第2室内外積を求める段階、前記端末装置が前記第1および第2室内外積のうち前記仮想空間の外積と符号が一致する室内外積の室内予測位置を前記ユーザの室内位置と推定する段階を含むことができる。
【発明の効果】
【0021】
本発明によると、室内環境でユーザ端末装置のカメラで撮影されたイメージを利用してユーザの位置を推定することによって、高価の装備やインフラを構築せずとも室内位置を正確に推定することができる。
【0022】
一方、本発明の効果は以上で言及した効果に制限されず、以下で説明する内容から通常の技術者に自明な範囲内で多様な効果が含まれ得る。
【図面の簡単な説明】
【0023】
【
図1】本発明の一実施例に係る客体認識基盤室内側位を説明するための概念図である。
【
図2】本発明の一実施例に係る客体認識基盤室内側位システムを説明するための図面である。
【
図3】本発明の一実施例に係る端末装置の構成を示したブロック図である。
【
図4】本発明の一実施例に係る位置推定画面を説明するための例示図である。
【
図5】本発明の一実施例に係る外積を利用してユーザの室内位置を推定する方法を説明するための例示図である。
【
図6】本発明の一実施例に係るサービスサーバーの構成を示したブロック図である。
【
図7】本発明の一実施例に係る客体認識基盤室内側位方法を説明するためのフローチャートである。
【
図8】本発明の一実施例に係る外積を利用してユーザの位置を推定する方法を示したフローチャートである。
【発明を実施するための形態】
【0024】
以下、添付された図面を参照して本発明の一実施例に係る客体認識基盤室内側位のための端末装置、サービスサーバーおよびその方法を説明する。この過程で、図面に図示された線の厚さや構成要素の大きさなどは、説明の明瞭性と便宜上誇張して図示されていることもある。
【0025】
また、後述される用語は本発明での機能を考慮して定義された用語であり、これはユーザ、運用者の意図または慣例により変わり得る。したがって、このような用語に対する定義は、本明細書の全般にわたる内容に基づいて下されるべきである。
【0026】
また、本明細書で説明された具現は、例えば、方法またはプロセス、装置、ソフトウェアプログラム、データストリームまたは信号で具現され得る。単一形態の具現の脈絡でのみ議論(例えば、方法としてのみ議論)されたとしても、議論された特徴の具現は他の形態(例えば、装置またはプログラム)によっても具現され得る。装置は適切なハードウェア、ソフトウェアおよびファームウェアなどで具現され得る。方法は、例えば、コンピュータ、マイクロプロセッサ、集積回路またはプログラミング可能なロジックデバイスなどを含むプロセッシングデバイスを一般的に指称するプロセッサなどのような装置で具現され得る。プロセッサはまた、最終-ユーザの間で情報の通信を容易にするコンピュータ、セルフォン、携帯用/個人用情報端末機(personal digital assistant:「PDA」)および他のデバイスなどのような通信デバイスを含む。
【0027】
図1は、本発明の一実施例に係る客体認識基盤室内側位を説明するための概念図である。
【0028】
図1を参照すると、ユーザは端末装置100の撮影部を通じてイメージを獲得し、獲得されたイメージで予め選定された第1および第2客体を認識する。その後、端末装置100は認識された第1および第2客体をベクトル化された室内地図上にマッチングさせてユーザの室内位置を推定する。
【0029】
このような客体認識を通じてユーザの室内位置を推定するシステムについて、
図2を参照して説明することにする。
【0030】
図2は、本発明の一実施例に係る客体認識基盤室内側位システムを説明するための図面である。
【0031】
図2を参照すると、本発明の一実施例に係る客体認識基盤室内側位システムは、管理者端末100a、サービスサーバー200およびユーザ端末100bを含む。この時、管理者端末100a、サービスサーバー200およびユーザ端末100bはWifi、3G、LTEなどの多様な形態の無線通信網に連結され得る。
【0032】
管理者端末100aはユーザ位置推定に使うために選定された客体を室内地図にマッピングさせる。すなわち、管理者はユーザ位置推定に使う客体を選定することができる。この時、客体は静的客体(例えば、売り場の看板、表示板、消火栓など)の中から選択され、室内で唯一の特性を有する客体を中心に選択され得る。その後、管理者は選定された客体を事前に製作された室内地図にマッピングさせる。すなわち、選定された客体別に室内地図上での座標値を保存する。ここで、室内地図はCAD図面、Point Cloud Map、Lidar Map、イメージマップなどを活用して製作されたデジタル化(ベクトル化)された地図であり、デジタル化された地図は管理者端末100aおよびユーザ端末100bで使用できる地図であり得る。また、室内地図は該当室内の主要情報を含むことができる。例えば、ショッピングモールの場合、室内地図は売り場を区分する境界線、売り場の名称などを含むことができる。
【0033】
また、管理者端末100aはイメージ収集アプリケーションが保存され、客体認識のためのディープラーニングネットワーク学習のために、イメージ収集アプリケーションを通じて撮影された客体のイメージを保存し、保存された客体別撮影イメージをサービスサーバー200に伝送する。この時、撮影イメージは客体を含む多様な方向から撮影されたイメージであり得る。
【0034】
前述した通り、管理者端末100aは予め選定された客体を含むイメージを多様な方向から撮影し、客体別撮影イメージを客体認識のための学習データとして利用するようにサービスサーバー200に提供する。
【0035】
サービスサーバー200は管理者端末100aから室内地図に設定された各客体の撮影イメージを収集し、収集された客体別撮影イメージを学習して客体認識モデルを生成する。この時、サービスサーバー200はディープラーニングを利用して客体認識モデルを生成することができる。具体的には、サービスサーバー200は客体別撮影イメージが受信されると、該当客体を含む最も小さい四角形(以下では、「バウンディングボックス」と称する)の4つの頂点のイメージピクセル上座標値と客体名を共に保存するディープラーニングネットワークを学習することになる。この時、ディープラーニングネットワークは客体認識イシューに関連した多様なモデルで設計され得、例えば、YOLO networkを利用することができる。
【0036】
また、サービスサーバー200はユーザ端末100bから撮影イメージを含む位置推定要請信号が受信されると、撮影イメージを位置推定モデルに入力してユーザ端末100bの位置を推定する。
【0037】
このようなサービスサーバー200に対する詳細な説明は、
図6を参照することにする。
【0038】
ユーザ端末100bは位置推定アプリケーションが保存され、位置推定アプリケーションを通じて周辺の環境を撮影すると、撮影イメージで客体(例えば、看板、消火栓、額縁、ドアなど)を認識し、認識された客体の位置座標と距離推定値を利用してユーザの位置を推定する。
【0039】
一方、本実施例では管理者端末100aとユーザ端末100bを分離して説明したが、管理者端末100aとユーザ端末100bは同一の端末であってもよい。したがって、以下では説明の便宜のために、管理者端末100aとユーザ端末100bを端末装置100と称して説明することにする。
【0040】
図3は本発明の一実施例に係る端末装置の構成を示したブロック図であり、
図4は本発明の一実施例に係る位置推定画面を説明するための例示図であり、
図5は本発明の一実施例に係る外積を利用してユーザの室内位置を推定する方法を説明するための例示図である。
【0041】
図3を参照すると、本発明の一実施例に係る端末装置100は通信部110、保存部120、撮影部130、表示部140、制御部150を含む。
【0042】
通信部110は通信網を通じてサービスサーバー200と通信するための構成であり、撮影部130を通じて獲得されたイメージなどの多様な情報を送受信することができる。この時、通信部110は近距離通信モジュール、無線通信モジュール、移動通信モジュール、有線通信モジュールなどの多様な形態で具現され得る。
【0043】
保存部120は端末装置100の動作に関連したデータを保存する構成である。ここで、保存部120は公知の保存媒体を利用することができ、例えば、ROM、PROM、EPROM、EEPROM、RAMなどのように公知の保存媒体のうちいずれか一つ以上を利用することができる。特に、保存部120には予め選定された客体別座標値がマッチングされた室内地図が保存され得る。また、保存部120には客体認識モデル生成のための学習データを収集するために、撮影部130を駆動させて予め選定された客体別撮影イメージを獲得できるイメージ収集アプリケーションが保存され得る。また、保存部120にはイメージを利用して現在位置を推定できるようにする位置推定アプリケーションが保存され得る。
【0044】
撮影部130はイメージ収集アプリケーションまたはイメージ推定アプリケーションが実行された場合、イメージを獲得し、獲得されたイメージを制御部150に伝送する。このような撮影部130は例えば、カメラであり得る。
【0045】
表示部140は端末装置100の動作に関連した多様な情報を表示する構成である。特に、表示部140はイメージ収集アプリケーションの実行時、イメージ収集画面をディスプレイすることができ、位置推定アプリケーション実行時に位置推定画面をディスプレイすることができる。このような表示部140はユーザから情報の入力を受けるための入力部としても動作することができる。
【0046】
制御部150は、保存部120に保存されたイメージ収集アプリケーションが実行されると撮影部130を駆動させ、撮影部130を通じて撮影された客体別イメージを保存し、保存された各客体の撮影イメージをサービスサーバー200に伝送する。すなわち、制御部150は予め選定された客体に対して多様な方向からのイメージ収集が完了すると、収集された客体と室内地図上の該当客体の座標をサービスサーバー200に伝送する。この時、室内地図上の客体数および撮影方向などは管理者により事前に設定され得る。
【0047】
また、制御部150は保存部120に保存された位置推定アプリケーションが実行されると、撮影部130を駆動させ、撮影部130を通じて撮影されたイメージで客体(例えば、看板、消火栓、額縁、ドアなど)を認識し、認識された客体の位置座標と距離推定値を活用してユーザの位置を推定する。
【0048】
すなわち、制御部150は撮影部130を通じて獲得されたイメージで第1客体および第2客体を認識し、第1および第2客体の仮想空間位置をそれぞれ推定し、第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して第1および第2客体それぞれとユーザ間の仮想空間距離をそれぞれ推定し、仮想空間距離を利用してユーザの室内位置を推定する。ここで、仮想空間は画面上に見える空間を意味し得る。
【0049】
以下、制御部150がユーザの室内位置を推定する方法について詳細に説明することにする。
【0050】
制御部150は位置推定アプリケーションの実行により撮影部130を通じて撮影されたイメージが獲得されると、そのイメージの空間(画面上に見える仮想の空間、以下「仮想空間」と称する)にポイントクラウド(Point cloud)を生成する。ポイントクラウドは仮想空間でそれぞれ座標を有する。したがって、ポイントクラウドマップが生成され始めた時点(すなわち、ユーザが移動し始めた時点)の座標は[0、0]に設定され得る。もし、ユーザが室内空間の全地域を歩き回れば、室内環境に対するポイントクラウドマップが生成されるであろうし、各ポイントは仮想空間の座標を有するであろう。
【0051】
制御部150は撮影部130を通じて獲得されたイメージで予め指定された第1および第2客体を認識し、仮想空間上に生成されるポイントクラウドを利用して第1および第2客体の仮想空間位置をそれぞれ推定する。
【0052】
すなわち、制御部150はディープラーニング技術を利用して第1客体および第2客体を認識して、第1客体を含む第1バウンディングボックスおよび第2客体を含む第2バウンディングボックスを出力する。この時、制御部150はYolo Networkを利用して第1客体および第2客体を認識することができ、第1および第2バウンディングボックスにはそれぞれ客体名、座標値、バウンディングボックスの長さのうち少なくとも一つが表示され得る。制御部150が第1および第2客体を認識することになると、
図4に図示された位置推定画面300の撮影イメージ310のような認識結果を出力することができる。
図4を参照すると、「サンバイザー」という客体を含むバウンディングボックス(A)が表示され、バウンディングボックスには座標[x、y]および[x1、y1]、両辺の長さdおよびhが表示され得る。
【0053】
前述した通り、制御部150は学習された客体を含むイメージがディープラーニングネットワークの入力に入ってくると、該当客体を含むバウンディングボックスのイメージピクセル基準4つの頂点の座標と客体名を出力する。
【0054】
その後、制御部150は第1バウンディングボックスおよび第2バウンディングボックス内の最も中心のポイントをそれぞれ選択して第1客体および第2客体の仮想空間位置と推定する。すなわち、制御部150はイメージ上に生成されたポイントクラウドのうち、第1および第2客体のバウンディングボックス内の最も中心のポイントを選択し、その選択されたポイント座標を仮想空間座標として推定することができる。
【0055】
前記のように、第1および第2客体の仮想空間位置が推定されると、制御部150は第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して第1および第2客体それぞれとユーザ間の仮想空間距離をそれぞれ推定する。
【0056】
すなわち、制御部150は仮想空間で[0、0]を始めとして、端末装置100内に搭載されたセンサ(例えば、ジャイロスコープ、アクセロメーター、地磁気センサなど)を通じてユーザの位置を継続的に追跡する。この時、制御部150はdead Reckoningアルゴリズムを利用してユーザの仮想空間位置を追跡することができる。Dead Reckoningアルゴリズムは、端末装置100に搭載されたセンサ(図示されず)に基づいてユーザの移動距離と方向を推定してユーザの移動を追跡するアルゴリズムであり得る。
【0057】
ユーザの仮想空間位置が推定されると、制御部150は第1客体の仮想空間位置とユーザの仮想空間位置間の第1ユークリッド距離を算出し、第2客体の仮想空間位置とユーザの仮想空間位置間の第2ユークリッド距離を算出する。この時、第1ユークリッド距離および第2ユークリッド距離はスカラー値であるため、仮想空間の距離値と室内地図上の距離値は同一であることができる。
【0058】
制御部150は第1および第2客体の仮想空間位置、ユーザの仮想空間位置、第1および第2客体の仮想空間位置とユーザの仮想空間位置間のユークリッド距離を利用して、室内地図上のユーザの実際の位置を推定することができる。この時、室内地図上の第1および第2客体の実際の位置は予め設定された座標値であり得る。
【0059】
したがって、制御部150は室内地図から第1および第2客体の室内座標(実際の位置)をそれぞれ獲得し、第1および第2ユークリッド距離、第1および第2客体の室内座標を利用してユーザの第1室内予測位置および第2室内予測位置を推定することができる。すなわち、仮想空間でユーザの位置と第1および第2客体の位置を分かるので、制御部150は三角状の図形を描き出すことができる。室内地図上では第1および第2客体の位置と第1および第2客体からユーザまでの二つの距離値が分かる。つまり、仮想空間の図形を室内空間上でマッチングさせれば、ユーザは室内地図で二つの地点にのみ位置することができる。二つの地点のうちユーザの位置を選択するためには、第1および第2客体がユーザを中心にどの方向にあるのかを分からなければならない。
【0060】
そこで、制御部150は外積(outer product、or vector product)の概念を利用することができる。仮想空間でユーザを中心に第1および第2客体までの二つのベクトルの外積は方向を有する。この方向は室内地図でも同一でなければならない。換言すると、仮想空間のユーザを中心に第1および第2客体までの二つのベクトルの外積の符号と室内地図のユーザを中心に第1および第2客体までの二つのベクトルの外積の符号が同一でなければならないのである。その結果、室内地図上でユーザが位置できる二つの地点のうち、外積の符号と仮想空間の外積の符号が同一の地点を最終的にユーザの位置と推定することができる。
【0061】
具体的には、制御部150はユーザの仮想空間位置を基準として、第1および第2客体の仮想空間位置までのベクトルである第1仮想ベクトルと第2仮想ベクトルの仮想空間の外積を求める。すなわち、制御部150はユーザの仮想空間位置から第1客体の仮想空間位置までの第1仮想ベクトルとユーザの仮想空間位置から第2客体の仮想空間位置までの第2仮想ベクトルの外積である仮想空間の外積を求めることができる。
【0062】
その後、制御部150は第1室内予測位置を基準として第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第1室内外積および第2室内予測位置を基準として第1および第2客体の室内座標までのベクトルである第1実ベクトルと第2実ベクトルの外積である第2室内外積を求める。すなわち、制御部150は第1室内予測位置から第1客体の室内座標までの第1実ベクトルと第1室内予測位置から第2客体の室内座標までの第2実ベクトルの外積である第1室内外積を求めることができる。また、制御部150は第2室内予測位置から第1客体の室内座標までの第1実ベクトルと第2室内予測位置から第2客体の室内座標までの第2実ベクトルの外積である第2室内外積を求めることができる。
【0063】
その後、制御部150は第1および第2室内外積のうち仮想空間の外積と符号が一致する室内外積の室内予測位置をユーザの室内位置と推定することができる。
【0064】
図5を参照すると、第1および第2客体の実際の座標をp1、p2とし、第1および第2客体の実際の座標からの距離をd1、d2と仮定して説明することにする。この場合、室内地図で可能なユーザの位置はa、bの二つの地点であり得、二つの地点のうち、ユーザの位置を求めなければならない。可能な二つの地点のうち、ユーザの位置を定めるために、仮想空間上に見える第1および第2客体の方向を考慮しなければならない。
【0065】
仮想空間でp2がp1に比べて右側にある場合、二つのベクトルの外積d2*d1は+符号を有することができ、仮想空間でp2がp1に比べて左側にある場合、二つのベクトルの外積d2*d1は-符号を有することができる。室内地図で可能なユーザの位置a、bに対して二つのベクトルの外積(d2*d1)を求め、仮想空間で求められた外積の符号が一致する室内地図のユーザ位置をユーザの最終位置と決定することができる。
【0066】
前述した通り、制御部150は撮影部130を通じて二つの客体を認識し、認識された二つの客体の位置座標と距離推定値を活用してユーザの位置を推定することができる。このように、本発明はユーザが端末装置100の撮影部130を通じて二つの客体をのみ認識しても正確に自身の位置を推定できるように、ベクトル化された室内地図を活用する。具体的には、事前にユーザの位置推定に活用する客体を室内地図上にマッピングさせておく。すなわち、室内地図上の客体の座標を保存させておく。以後、端末装置100の画面上に見える仮想空間で両客体を認識すると、室内地図上でユーザと二つの客体が描く幾何学的模様と仮想空間上でユーザと二つの客体が描く幾何学的模様をマッチングさせてユーザの位置を推定することができる。
【0067】
ユーザの室内位置が推定されると、制御部150は室内地図上にユーザの位置を表示して撮影イメージとともに表示部140を通じてディスプレイする。すなわち、位置推定アプリケーションを通じてユーザの位置が推定されると、制御部150は
図4のように、撮影されたイメージ310と室内地
図320上に自身の位置(B)が表示された位置推定画面300をディスプレイすることができる。
【0068】
このような制御部150は少なくとも一つの演算装置を含むことができるが、ここで前記演算装置は、汎用的な中央処理装置(CPU)、特定の目的に適合するように具現されたプログラマブルデバイス素子(CPLD、FPGA)、特定用途向け半導体演算装置(ASIC)またはマイクロコントローラチップであり得る。
【0069】
一方、前記のように構成された端末装置100は撮影部130を通じて周辺環境の撮影が可能であり、多様な有線・無線環境に適用され得る電子機器であり得る。例えば、端末装置100はPDA(Personal Digital Assistant)、スマートフォン、セルラーフォン、PCS(Personal Communication Service)フォン、GSM(Global System for Mobile)フォン、W-CDMA(Wideband CDMA)フォン、CDMA-2000フォン、MBS(Mobile Broadband System)フォンなどを含む。ここで、端末装置100は携帯用の小型の機器を指称し得るが、ビデオカメラまたはラップトップコンピュータなどを含む場合には移動通信端末機と指称され得るので、本発明の実施例ではこれに特に限定しはしない。
【0070】
図6は、本発明の一実施例に係るサービスサーバーの構成を示したブロック図である。
【0071】
図6を参照すると、本発明の一実施例に係るサービスサーバー200は通信部210、保存部220、客体認識モデル生成部230および制御部250を含む。
【0072】
通信部210は端末装置100から客体別撮影イメージを受信する。
【0073】
保存部220はサービスサーバー200の動作に関連したデータを保存する構成である。特に、保存部220には予め選定された客体別座標値が保存された室内地図が保存され得る。
【0074】
客体認識モデル生成部230は通信部210を通じて端末装置100から客体別撮影イメージを受信し、受信された各客体の撮影イメージを学習し、客体認識のための客体認識モデルを生成する。この時、客体認識モデル生成部230はディープラーニングを利用して客体認識モデルを生成することができる。客体認識モデルは客体別座標値がマッピングされた形態であり得る。したがって、客体認識モデルは位置が分からないイメージが入力されると、そのイメージで客体およびその客体の座標を出力値として計算することができる。
【0075】
一方、本発明に係るサービスサーバー200は、通信部210を通じて端末装置100から撮影イメージを含む位置推定要請信号が受信されると、撮影イメージを客体認識モデルに入力して第1および第2客体を認識し、第1および第2客体の仮想空間位置をそれぞれ推定し、第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して第1および第2客体それぞれとユーザ間の仮想空間距離をそれぞれ推定し、仮想空間距離を利用してユーザの室内位置を推定し、推定された室内位置を端末装置に伝送する位置推定部240をさらに含むことができる。位置推定部240は第1および第2客体が認識されると、認識された第1および第2客体が端末装置100の画面上に表示されるようにすることができる。
【0076】
一方、位置推定モデル生成部230および位置推定部240は、コンピューティング装置上でプログラムを実行するために必要なプロセッサなどによってそれぞれ具現され得る。このように位置推定モデル生成部230および位置推定部240は、物理的に独立したそれぞれの構成によって具現されてもよく、一つのプロセッサ内で機能的に区分される形態で具現されてもよい。
【0077】
制御部250は通信部210、保存部220、位置推定モデル生成部230および位置推定部240を含むサービスサーバー200の多様な構成部の動作を制御する構成であって、少なくとも一つの演算装置を含むことができるが、ここで前記演算装置は汎用的な中央処理装置(CPU)、特定の目的に適合するように具現されたプログラマブルデバイス素子(CPLD、FPGA)、特定用途向け半導体演算装置(ASIC)またはマイクロコントローラチップであり得る。
【0078】
図7は、本発明の一実施例に係る客体認識基盤室内側位方法を説明するためのフローチャートである。
【0079】
図7を参照すると、端末装置100は位置推定アプリケーションが実行されると撮影部130を駆動させてイメージを撮影し、撮影イメージで第1および第2客体を認識する(S510)。この時、端末装置100はディープラーニング技術を利用して第1客体および第2客体を認識することができる。
【0080】
段階S510が遂行されると、端末装置100は第1客体および第2客体の仮想空間位置をそれぞれ推定する(S520)。この時、端末装置100は仮想空間上に生成されるポイントクラウドを利用して第1および第2客体の仮想空間位置をそれぞれ推定することができる。
【0081】
段階S520が遂行されると、端末装置100は第1および第2客体の仮想空間位置とユーザの仮想空間位置を利用して第1および第2客体それぞれとユーザ間の仮想空間距離をそれぞれ推定する(S530)。この時、端末装置100はdead Reckoningアルゴリズムを利用してユーザの仮想空間位置を追跡することができる。ユーザの仮想空間位置が推定されると、端末装置100は第1客体の仮想空間位置とユーザの仮想空間位置間の第1ユークリッド距離を算出し、第2客体の仮想空間位置とユーザの仮想空間位置間の第2ユークリッド距離を算出することができる。
【0082】
段階S530が遂行されると、端末装置100は第1および第2客体の仮想空間位置、ユーザの仮想空間位置、第1および第2客体の仮想空間位置とユーザの仮想空間位置間のユークリッド距離を利用して、室内地図上のユーザの位置を推定する(S540)。端末装置100が室内地図上のユーザの位置を推定する方法に対する詳細な説明は
図8を参照することにする。
【0083】
図8は、本発明の一実施例に係る外積を利用してユーザの位置を推定する方法を示したフローチャートである。
【0084】
図8を参照すると、端末装置100は仮想空間上でユーザを中心に第1および第2客体までの二つのベクトルの外積を求める(S610)。すなわち、端末装置100はユーザの仮想空間位置から第1客体の仮想空間位置までの第1仮想ベクトルとユーザの仮想空間位置から第2客体の仮想空間位置までの第2仮想ベクトルの外積である仮想空間の外積を求めることができる。
【0085】
段階S610が遂行されると、端末装置100は室内地図のユーザを中心に第1および第2客体までの二つのベクトルの外積を求める(S620)。すなわち、端末装置100は第1室内予測位置を基準として第1および第2客体の室内座標までのベクトルである第1および第2実ベクトルの第1室内外積および第2室内予測位置を基準として前記第1および第2客体の室内座標までのベクトルである第1および第2実ベクトルの第2室内外積を求めることができる。
【0086】
段階S620が遂行されると、端末装置100は室内地図上でユーザが位置できる二つの地点のうち、仮想空間の外積の符号が同一の地点をユーザの位置と推定する(S630)。すなわち、端末装置100は第1および第2室内外積のうち。仮想空間の外積と符号が一致する室内外積の室内予測位置をユーザの室内位置と推定することができる。
【0087】
前述した通り、本発明の一実施例に係る客体認識基盤室内側位のための端末装置、サービスサーバーおよびその方法は、室内環境でユーザ端末装置のカメラで撮影されたイメージを利用してユーザの位置を推定することによって、高価の装備やインフラを構築せずとも室内位置を正確に推定することができる。
【0088】
本発明は図面に図示された実施例を参照して説明されたが、これは例示的なものに過ぎず、当該技術が属する分野で通常の知識を有する者であればこれから多様な変形および均等な他の実施例が可能であることが理解できるであろう。
【0089】
したがって、本発明の真の技術的保護範囲は下記の特許請求の範囲によって定められるべきである。