JP5349804B2 - 移動ロボットシステム及びその制御方法 - Google Patents

移動ロボットシステム及びその制御方法 Download PDF

Info

Publication number
JP5349804B2
JP5349804B2 JP2008002716A JP2008002716A JP5349804B2 JP 5349804 B2 JP5349804 B2 JP 5349804B2 JP 2008002716 A JP2008002716 A JP 2008002716A JP 2008002716 A JP2008002716 A JP 2008002716A JP 5349804 B2 JP5349804 B2 JP 5349804B2
Authority
JP
Japan
Prior art keywords
map
partial map
mobile robot
partial
robot system
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.)
Active
Application number
JP2008002716A
Other languages
English (en)
Other versions
JP2009163156A (ja
Inventor
俊夫 守屋
高斉 松本
良三 正木
修一 槙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Industrial Equipment Systems Co Ltd
Original Assignee
Hitachi Industrial Equipment Systems Co Ltd
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 Hitachi Industrial Equipment Systems Co Ltd filed Critical Hitachi Industrial Equipment Systems Co Ltd
Priority to JP2008002716A priority Critical patent/JP5349804B2/ja
Publication of JP2009163156A publication Critical patent/JP2009163156A/ja
Application granted granted Critical
Publication of JP5349804B2 publication Critical patent/JP5349804B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Instructional Devices (AREA)
  • Navigation (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

本発明は、目的地まで人の操作なしに自動的に到達することができる自律移動型移動ロボットに関する。より詳しくは、移動ロボットに搭載された距離センサで測定されたセンシングデータと環境の幾何状況を示した二次元の環境地図とを用いて自己の位置姿勢を推定し、その結果に基づいて自律移動制御を行うロボットシステムに関する。
まず、距離センサと二次元の環境地図を用いて移動ロボットの位置姿勢を推定する方法について説明する。
ここで距離センサとは、距離センサの周辺の複数の方向について、障害物までの距離を計測できるものである。具体的な仕様としてさまざまなものが考えられるが、ここでは図2に示すように、ある高さの水平面上を距離センサ210の正面に対して-90°から+90°の方向に、1°毎の合計181通りの異なる方向について、障害物230までの距離データが瞬時に計測できるものを想定する。また、この距離センサ210は、移動ロボット220に搭載されているものとする。
図3に、この距離センサ210を用いて測定されたセンシングデータの例を示す。各センシングデータは、角度φと距離dの組み合わせとして(d00),(d11),...,(d180180)としてあらわされる。ここで各変数の数字の添え字iはデータ番号で、φiはi番目の測定方向、またdiはφi方向における障害物までの距離をを示す。測定方向は時計回りを正方向とし、距離センサの主方向となす角度を示すものとし、主方向とのなす角度が小さい順にデータ番号が割り当てられる。すなわちφ0=-90°,φ1=-89°,...,φ180=+90.0°を示す。
なお、ここでは距離センサの測定能力を考慮し、測定可能距離を0.0mより大きく16.0m以下と想定し、diの値の範囲を、0.0m<di≦16.0mに制限することとする。また、この181個の距離データを1まとまりとして、1フレーム分のセンシングデータ300と呼ぶこととする。
一方、二次元の環境地図とは、距離センサ210による測定高さ断面での障害物の存在を、図4に示すようなディジタル画像としてあらわしたものである。ここでは図4に示すように、障害物が存在しない場所410を白を示す画素値、障害物が存在する場所420を黒を示す画素値としてあらわすことにする。
移動ロボット220は、平らな地面上を移動するものと仮定する。よってその移動によって変化する位置姿勢に関する自由度は、位置について(x,y)の2パラメータ、姿勢については移動ロボットが向く方向角度に関するθの1パラメータの、合計3パラメータである。なお、これらのパラメータをあらわす座標系は、図4に示すような環境地図510をあらわす座標系と一致させるものとする。
移動ロボットの位置姿勢を推定することとは、任意の位置姿勢にある移動ロボットのセンシングデータから、上記(x,y,θ)の3パラメータを求めることを意味する。よって、本発明が対象とする機能は、任意の位置姿勢にある移動ロボットの位置姿勢パラメータ(x,y,θ)を、移動ロボットに搭載された距離センサによるセンシングデータと、あらかじめ用意された環境地図を用いて求めることとなる。
本機能を実現する手段として、いくつかの方法が考えられるが、ここではその最も基本的な方法となるマッチング処理による方法を説明する。
マッチング処理による方法とは、あるフレームにおいて計測されたセンシングデータ全体の位置および姿勢(方向)を変えながら、当該センシングデータを環境地図に重ね合わせ、センシングデータと環境地図とが最もマッチする位置および姿勢を探し出し、これをもって移動ロボットの位置姿勢パラメータの推定値とするというものである。その原理は、移動ロボットがその位置および姿勢にあるときに、計測されたデータと同じデータが最も高い確率で得られるであろうという考え方に基づいている。
このようなマッチング処理による方法は、具体的には以下に述べるような処理によって実施される。
(1)あるフレームにおけるすべてのセンシングデータ(前述した距離センサの例では181個)に対して、これを地図上でθだけ回転させ、(x,y)だけ平行移動させた位置を求める。
(2)それらの位置の環境地図上の画素値を参照し、障害物があるものの数を数え、これをそのパラメータ (x,y,θ)における評価値とする。
(3)上記(1)および(2)の処理を、考えられうるすべての値をもつ(x,y,θ)の組み合わせについて、評価値が最も大きい(x,y,θ)を解とする。
図5に、この考え方に基づくマッチング処理の概要を示す。環境地図510と、センシングデータ300とが与えられたときに、この方法によって最もマッチすると判断された状況が図5右に示した状況であり、このときの平行移動成分(x,y)と回転成分θが、移動ロボットの位置姿勢推定値となる。
移動ロボット220は、このようにして逐次自分の位置姿勢を求め、その値と自分がすすむべき経路とを比較することで移動方向や移動速度などを決定し、これに基づき移動ロボット220の移動機構部を制御することで目的の移動が実現される。なおここで移動を正確に行うためには移動制御をなるべく短い周期で行う必要があるため、位置姿勢推定処理も高速に行うことが要求される。具体的には数10msecから100msec程度、すなわち1秒間に数10回程度の処理が逐次行えるような高速性が望まれる。
上記位置姿勢推定処理は、CPUに代表される中央演算装置と、メモリに代表される主記憶装置、ならびにハードディスクに代表される補助記憶装置の組み合わせで実現されることが一般に考えられる。ここで位置姿勢推定処理を高速に行うためには、そこで頻繁にアクセスするデータ、すなわち環境地図510を、メモリ等の主記憶上に記憶しておく必要がある。しかしながらここで用いる環境地図について、これが実環境の長さ1cmの距離を1pixelであらわしたものと仮定すると、例えば300m×300mの領域で 900MBのデータサイズとなるなど、実環境の対象とする領域が大きくなると現在一般的に用いられているメモリには記憶しきれない大きなサイズとなってしまう可能性がある。またこれをハードディスク等の補助記憶装置に記憶する場合も、その読み書きの処理時間やこれを複数管理する場合などを考慮すると、できるだけサイズを削減して記憶することが望まれる。
そこで、環境地図を圧縮して補助記憶に記憶しておき、位置姿勢推定時にはそこで必要な領域のみ主記憶に伸長、展開して利用する方法を適用することが考えられる。なおここで伸長、展開のための処理時間が新たに必要となるが、上に述べたように位置姿勢推定の全体処理を数10msecから100msec程度で行おうとするとこの処理は数msecから長くても20msec程度で行う必要がある。
一方、主記憶に読み込むべきデータの量は、例えばセンサのセンシング可能範囲が16mであることから、位置推定に必要な地図領域は(16m×2)×(16m×2)程度の大きさとなり、これは非圧縮のデータとして10MB程度のサイズとなる。現在の一般的なCPU等の性能を考慮すると、伸長後にこの程度の大きさになる圧縮データに対し、外部記憶装置からの読み込み、伸長処理、主記憶装置への書き込み等のすべての処理を上記時間内で行うことは極めて困難であり、仮に可能だとしても他の処理に計算資源を割り当てる目的からこの処理は少なけれ少ないほど望ましい。
そこで本発明では、補助記憶装置と主記憶装置を併用して地図の管理を行う際に、位置姿勢推定時に必要となる処理量を少なくする方法を提供する。
上記課題に関連する公知技術として、「特開2006-39486 地図情報処理装置」では、ユーザの経路に沿って形成される地図画像を小地図として簡易に抜き出し、ユーザ経路に沿い且つ途切れることがなくユーザが携帯する携帯機器に表示させることができる地図情報処理装置を提示している。しかしながら、本方法は地図データを画面上に表示することを目的としており、単一のメモリ上に効率的に展開する機能を提示しているわけではない。
「特開平9-160482 ナビゲーション装置」では、地面を鳥瞰撮影した画像を分割圧縮し、車両の現在位置に基づき適切な領域の画像を伸長して表示する。この方法において、画像を分割圧縮し、車両の位置移動にともなって、この分割圧縮された画像から適切なものを選び、バッファメモリに効率的に蓄え、表示する方法を提示している。しかしながらこの方法では、バッファメモリが連続したものではないため、これを地図として連続としたものとして表示するためには、バッファメモリから表示メモリに適切な順番になるように転送する別の処理が新たに必要となり、ここで処理時間が余計にかかってしまう問題が発生する。すなわち、このようなキャッシュメモリやバッファメモリを用いる方法では、地図として空間上連続する領域が、メモリ空間上では必ずしも連続したものとはならないため、本発明が述べるような位置姿勢推定を目的とした場合、推定時に大量に行われるメモリアクセスのためのアドレス計算が複雑になり、結果として処理時間が長くなる問題がある。
すなわち本発明では、記憶装置が記憶すべき容量を削減し、さらにマッチングに基づく位置姿勢推定処理を行う際の地図データへの高速なアクセスを可能とし、さらに補助記憶装置と主記憶装置を併用した地図データ処理を高速に行うことを同時に実現しなければならないという課題を解決する。
特開2006-39486号 特開平9-160482号
周囲の状況を距離センサで計測したセンシングデータと、地図との照合により、自己の位置姿勢を認識し、その認識結果に基づく移動制御によって移動する移動ロボットシステムにおいて、上記課題を解決するため本発明では、全体地図を管理する全体地図記憶手段と、位置姿勢推定に必要な地図領域を部分地図として連続的に管理する部分地図記憶手段と、全体地図管理手段から地図データを選択的に読み込み、これを用いて部分地図記憶手段の内容を更新する部分地図更新手段を備える。
地図を主記憶と補助記憶に分けて管理することで、地図が拡大しても、限られた容量の主記憶だけを用いて高速な位置姿勢推定処理を行うことができる。補助記憶には全体地図を圧縮して保存することで、記憶すべきデータ量ならびにその読み込み処理時間を削減することができる。また補助記憶には全体地図を複数のブロックに分割して記憶し、必要となるブロックのみを選択的に伸長して主記憶上に書き込むことで、主記憶上のデータを高速に準備することができる。
以下、本発明の実施の形態について説明する。
図1は、本発明の一実施形態に係る移動ロボットシステムの全体構成を示す機能ブロック構成図である。
移動ロボットシステムは、車輪などによって平らな床を持つ実環境を任意の方向に移動可能な移動機構部130、経路やロボットの位置姿勢パラメータから移動すべき方向や距離、速度などを算出し、その結果に基づき移動機構130の制御を行う移動制御部120、ロボット周辺の環境幾何状況を計測する距離センサ210、ロボットが現在いる位置と方向を、背景技術の項で説明した地図とセンサデータのマッチングによって求める位置姿勢推定部110、その位置姿勢推定を行う際に利用する部分地図190を記憶する部分地図記憶部170、環境の全体地図180を複数のブロックに分割し、なおかつそれぞれを圧縮して記憶する全体地図記憶部160、全体地図180の中から、部分地図190を構成するのに必要なブロック領域を選択して読み込み、部分地図190の内容を更新する部分地図更新部150から構成される。なおこの部分地図更新部150は、読み込むべきブロックを選択指示する読み込みブロック選択指示部152と、選択されて読み込まれた圧縮ブロック地図183を伸長しこれを更新用ブロック地図186として部分地図記憶部170に書き込む部分地図データ伸長部154から構成される。
また、上記の全体地図記憶部160、膨大な量のデータを管理するという観点からハードディスク等の外部記憶装置によって実装されることを想定し、また上記の部分地図記憶部170は、位置姿勢推定の演算時にデータへのアクセスを高速化させる目的からメモリ等の主記憶装置によって実装されることを想定する。また、上述の選択的な読み込み処理や伸長処理、位置姿勢推定処理等の各処理は、CPU等の中央演算装置を動作させるプログラムによって行われることを想定する。
以上のシステム構成において、全体地図ならびに部分地図を管理する方法について説明する。ここでは説明をわかりやすくするため、以下1例となる具体的な数値を用いて説明をすすめることにする。ただしこの数値は本発明の適用をこの値に限定するものではない。
まず全体地図180に関して説明する。ここではこれを400cm×400cmの矩形領域を1ブロック画像とし、このブロック画像の集合として全体をあらわすものとする。なお実環境における1cmを画像上では1pixelであらわすものとする。これらのブロック画像ごとに圧縮がかけられ、ハードディスク上に記憶されるものとする。ここでの圧縮方法は、圧縮・伸長を繰り返しても内容がかわらない可逆圧縮方法を用いる。その具体的方法としてはランレングス法をはじめとして様々な方法が考えられるが、その方法の内容に関しては本発明の本質とは無関係なのでここでの詳細説明は省き、現在一般的に利用可能な圧縮プログラムを利用するものと仮定する。またこの圧縮方法に対する伸長プログラムも本システム内で利用可能であるものと仮定する。これらのブロック画像は、それぞれ異なるファイルとして保存するなどの方法によって、プログラムが任意に指定するブロック画像に対するランダムなアクセスを可能にしておく。
次に部分地図190に関して説明する。位置姿勢推定におけるマッチング処理では、メモリ上にある非圧縮の地図データにアクセスする。このメモリ上に展開されている地図データが、本発明における部分地図190である。この部分地図190はロボットが位置姿勢の推定を行うのに必要な範囲分だけあればよく上記の全体地図180をすべて含んでいる必要は無い。すなわち上記全体地図の一部分であることから、部分地図という名称をつけている。
この部分地図190が、全体地図180のどの部分をあらわしたものであるかを図6を用いて説明するのにあたって、必要部分地図620という考え方を導入することにする。移動ロボット220に搭載された距離センサ210が計測できる領域は、移動ロボットが現在存在しているであろう候補位置610を中心として、ある一定の領域内に限られる。すなわち、この領域の地図があれば移動ロボットの位置姿勢推定には十分であり、逆にいうとそれ以上の範囲の地図データがあっても無駄になってしまうことになる。
この領域を決定するにあたって、まず移動ロボット220の存在可能範囲を考える。移動ロボットの移動速度を例えば7.2km/hとし、前述の位置姿勢推定のフレーム周期を100msごととすると、周期ごとに移動する距離は 720000cm/60/60/1000*100 = 20cm である。よって、前回のフレームの移動ロボット220の位置に対して、現在のフレームの移動ロボット220の位置は縦横ともに±20cmの範囲におさまっている。そこで、前回のフレームの位置としてそのフレームの位置推定値を用い、またその推定値の誤差を最大で5cm程度あるものと仮定し、現在のフレームの移動ロボット220の位置はその±25cmの範囲に収まっているものと仮定する。これから、移動ロボット220の存在可能範囲は、前回のフレームの位置推定値に対し、±25cmの矩形の範囲にあるものと定義する。なお、前回のフレームの位置推定値を、図6における移動ロボット220の候補位置610と呼ぶことにする。なおこの値を決める方法としては、この前フレームの位置推定値を用いることに限られるものではなく、ロボットの移動速度からこれを計算・予測する方法、車輪の回転情報からこれを推定する方法なども考えられる。
必要部分地図620の領域を決定するにあたって、次に距離センサ210の測定可能距離を考える。距離センサ210が測定可能な距離の最大値が1600cmなので、位置姿勢推定に用いることができる地図の領域は、移動ロボット220の位置に対して±1600cmの範囲に限られる。
以上述べたように、移動ロボット220の存在可能範囲、ならびに距離センサ210の測定可能距離によって、位置姿勢推定に用いる地図の領域が限定されるが、この2つの要素を合わせると、移動ロボットの候補位置610を中心に、(1600cm×2 + 25cm × 2) × (1600cm×2 + 25cm × 2) = 3300cm×3300cmの範囲の地図があれば、位置姿勢推定に十分であることがわかる。
以上を考慮し、図6に示すように、本実施の形態では移動ロボットの候補位置610を含むブロックを中心とし、その左右上下にそれぞれ4ブロックの幅を持つ領域を必要部分地図620と定義することにする。具体的には9×9のブロックとなり、ここで1ブロックの大きさが400cm×400cmなので全体として3600cm×3600cmの領域となるものである。上で説明した 3300cm×3300cmの大きさにたいして若干余裕をもたせた値になっているが、これについては適宜調整可能である。この必要部分地図620が準備されていれば、移動ロボット220がどの方向を向こうとも、位置推定に必要な地図の領域は必ず含んでいることになる。
以上述べた、必要部分地図620の考え方を用い、まず図1における部分地図190が、上記必要部分地図620と同じものとして構成される場合において、部分地図190を準備する方法を図6、図7、図8を用いて説明する。このときの基本的な考え方は、部分地図190に必要部分地図620が過不足なく常に書き込まれるようにするということである。すなわち図6における必要部分地図620の領域の地図のデータが、非圧縮データとして図1あるいは図7における部分地図190としてメモリ上に記憶されている状態にする。
この処理は、図1における部分地図更新部150によって行われるが、その処理内容を図8を用いて説明する。なおここで点線の枠で囲まれた部分860の処理が、部分地図更新部150で行う処理である。
まず、移動ロボットの候補位置610を、前フレームの位置推定値として設定する(820)。最初の動き始めで前フレームの推定値が無いときには、これを人が指定したり、あらかじめ決められた場所から動き始めるといった条件を設けることにより、これが一意に決められるものとする。
次に、この候補位置610から必要部分地図620の領域を算出する(825)。その算出方法は、上に述べた必要部分地図の定義で説明したとおりである。
次に、部分地図記憶部170すなわちメモリ上の部分地図190に書き込まれている内容と、必要部分地図620の示す領域が等しいものとなるように、全体地図記憶部160すなわちハードディスクに記憶されている全体地図180から足りない領域のブロックを選択する(830)。
以上の処理を行うのが、部分地図更新部150における読み込みブロック選択指示部152である。
次に、選択されたブロックのデータを読み込み(835)、その伸長処理を行ない(840)、部分地図190にこれを書き込む(845)。この際に、部分地図を記憶する実体となるメモリ上のどの部分に書き込むかが問題となるが、これについては後述することにする。
以上の処理を行うのが、部分地図更新部150における読み込みデータ伸長部154である。
この書き込みが終わると、図1において位置姿勢推定部110が位置姿勢推定を行うのに必要となる部分地図190がメモリ上に準備されたことになるので、これを用いた位置姿勢処理や移動ロボット220の移動制御などが行われる(850)。
これら一連の処理を1周期の処理(1フレームの処理)とし、これを繰り返すことで移動ロボット220の移動制御が行われる。
すなわち、部分地図更新手段は、ロボットの位置姿勢推定初期値に基づき、ロボットの位置姿勢推定に必要となる地図領域の中で、まだ部分地図記憶手段上に書き込まれていないブロックのみを選択して伸長し、空間上連続する領域がメモリ上でも連続する領域となるように記憶されている内容を更新する。これによって位置姿勢推定処理を行う際の必要な地図データへのアクセスが高速に行われる。次に、移動ロボット220の移動にともない、全体地図180のどの領域が、部分地図190としてメモリ上に展開されていくかを、図9を用いて説明する。
まず移動ロボット220の候補位置610が図9に示した位置のとき、全体地図180の中で必要部分地図620としてメモリ上に読み込まれる領域は、図9上図に示したとおりである。この領域が上述の必要部分地図の定義に従ったものとなっていることが確認される。ロボットの移動にともない、このロボットの候補位置610が移動したとしても、それが図におけるブロック900の内部にある限りにおいては、この必要部分地図の領域は変わらず、よってメモリ上に展開されている部分地図も変えなくてよいことになる。しかし図9に示すように、ロボットの移動にともない、このロボットの候補位置610がブロックをまたいでブロック903の内部の点611に移動したときは、必要部分地図620の領域が図9下図に示すものに変化する。このときには、図9下図で斜線で示した領域980がメモリ上から不要になり、斜線で示した領域970が、新たにメモリ上に必要となるので、領域980が領域970に置き換わるようにメモリの内容が更新されることになる。
以上述べてきたように必要部分地図620の内容と同じになるように部分地図190の内容を更新していくことにより、限られた大きさのメモリだけを用いて位置姿勢推定処理が行えるようになる。
しかしながらこの方法だと、ロボットがブロックの境い目付近を動く場合、次のような問題が発生する。それは、ロボットがブロックをまたいで移動する頻度が多くなったとき、そのたびことに必要部分地図620の領域が変わり、部分地図190の内容を更新してメモリの書き換え処理が頻繁に発生し、全体地図の読み込み、データの圧縮展開、およびメモリへの書き込みの処理量が多くなってしまう、という問題である。
そこで本発明では、上記部分地図190は、必要部分地図620の示す領域のみから構成されるのではなく、これに拡張領域と呼ばれる付属的な領域を含んだ形で構成されるようにする。これを拡張領域を含む手法と呼ぶことにし、これについて図10を用いて詳述する。
拡張領域を含む手法では、図10に示すように、全体地図180における点線で囲んだ部分770を、図11に示すような部分地図190としてメモリ上に展開する。このときの内容は、図6で説明した必要部分地図620に加えて、縦1列、横1列のブロック分の領域767を加えたものであり、メモリはこの領域分のデータが保存されるサイズを準備しておく。
このときに、図11に示す部分地図190には、必要部分地図620の領域が不足なく常に書き込まれるようにする。これは、図1における部分地図更新部150によって行われるが、その処理内容は、基本的に図8で説明したものと同等である。
しかしながら、拡張領域を含む手法ではこの拡張領域767が付加されたことによって、ロボットがブロックをまたいで移動する頻度が多くなった場合でも、部分地図190の内容を更新する頻度は増えず、結果として全体地図の読み込みやデータの圧縮展開およびメモリへの書き込みの処理量が多くなってしまう問題を解決することができる。その原理を図12を用いて説明する。
まず移動ロボット220の候補位置610が図12に示した位置のとき、全体地図180の中で必要部分地図620に拡張領域767を加えた部分地図メモリ上に読み込まれる領域は、図12上図に点線で示した領域770のとおりである。移動ロボット220の移動にともない、図12下図に示すように、このロボットの候補位置610がブロックをまたいで点611に移動したときは、必要部分地図620の領域が図12下図に示すものに変化する。このときには、図12下図で斜線で示した領域912がメモリ上から不要になり、斜線で示した領域915が、新たにメモリ上に必要となるので、領域915が領域912に置き換わるようにメモリの内容が更新されることになる。ここでの処理は、図6、図7で説明した方法とほぼ同等である。
しかしその後に図13で示すように、移動ロボット220の移動にともない、ロボットの候補位置611が、ブロックをまたいだ位置612に変化したときに、この拡張領域を加えた手法が効果をあらわす。この移動により、必要部分地図620の領域は、図13の上図に示したものから、図13の下図に示したものに変化する。しかしながら、拡張領域767が存在していることにより、変化した後の必要部分地図620の領域は、すべて点線部分770すなわち部分地図190としてメモリ上にすでに書き込まれている。すなわち、部分地図を更新する必要は一切ない、ということになる。これが、体地図の読み込みやデータの圧縮展開およびメモリへの書き込みの処理量が多くなってしまう問題を解決することになっている。この効果は、図13の数に示した位置611を含むブロックと、位置612を含むブロックの間を繰り返し移動ロボット220が行き来してもあらわれることは明白である。なお以上述べた効果は、図13で説明した2つのブロック間を上下にまたいだときだけでなく、左右にまたいだときにも全くおなじようにあらわれることも容易に理解される。
次に、上で説明した部分地図190を、メモリ上でどのように管理するかについて詳しく述べることする。メモリはそのアドレス番号と、そのアドレスに書き込まれるデータの組み合わせで管理されるものとする。
メモリは、10×10ブロック分のピクセル数、すなわち(40×10)×(40×10) = 4000×4000ピクセル分の記憶容量を持つ連続メモリとして準備する。メモリ番号は、左上を始点とし右にむかって番号が増えていき、右端に到達したら次にその1つ下の行の左端からまた右にむかって番号が増えていき、これを繰り返すことで右下を終点とする画像データの一般的なもち方と同様である。
すなわち、部分地図記憶手段は、メモリ等の主記憶装置によって実現され、このメモリは(M×W)×(N×H)ピクセルあるいは((M+1)×W)×((N+1)×H)ピクセルの画素データを格納できるサイズをもち、部分地図はそのメモリ上において、矩形領域の右端が左端に連続するように、また下端が上端に連続するように割り当てられるようにする。これによって移動ロボットが必要となるブロックを変更する境目付近を移動し、この境目を連続して行き来する場合にも、主記憶の内容の更新は繰り返し行う必要が無くなり、推定に利用する地図準備のための処理量を大幅に削減することができる。
図14は上で述べた拡張領域を含む手法における部分地図190である。図15は、この部分地図が示す各ブロックのデータが、上で述べたメモリ776上のどの位置に書き込まれるかを対応づけて示したものである。その原則は、もとの部分地図190の左右上下方向のブロックの並びの連続性が、メモリ776上の並びにおいても、右端が左端に連続し、下端が上端に連続するとの条件のもと、保たれるようにすることである。
また移動ロボット220の移動にともない、部分地図190の内容を図14に示すものから図16に示すものに変更する必要が生じた場合は、なくなった行(あるいは列)に、あらたに加わった行(あるいは列)の内容が上書きされるものとする。この様子を示したものが図17である。
このようなルールにもとづき部分地図190の内容をメモリ上に書き込むことで、部分地図190の左上のブロックの内容が書き込まれたメモリ番号から、右方向に走査していき、右端に到達したら、左端から再び走査すること、またさらに下方向に走査していき、下端に到達したら、上端から再び走査することで、部分地図190の任意の点にアクセスできることになる。
次に、以上述べた方法により部分地図190をメモリ上で管理することの効果を説明する。
まず第1に、地図上の位置とメモリ番地を対応づける対応表を準備する必要が無くなるということがあげられる。一般的なバッファメモリの考え方に基づき内容の更新を行うと、同じメモリ番地上にさまざまな位置の地図の内容が書き込まれるため、これをすべて管理しておく必要があるが、本手法によれば上に述べたルールに基づき地図上の位置とメモリ番地が対応付けられるのでその必要が無くなる。これによって、位置姿勢推定時にメモリ上の地図データにアクセスする際に、対応表を参照する処理が必要なくなることを意味し、結果として位置姿勢推定処理の高速化を図ることができる。
第2の効果として、地図上で連続する位置の地図データが、メモリ上でも連続して記録されるということが上げられる。背景技術の項で説明した位置姿勢推定のためのマッチング処理では、移動ロボットが候補位置にいたときにそのセンサデータが示す位置を中心として、その周辺の地図の値を参照する。すなわち、アクセスする地図上のデータは空間上連続していることが多いため、メモリ上でもこれが連続する番地に書き込まれていれば、ランダムアクセスに比べてメモリアクセスのための時間を短縮することが可能となる。
しかしながら一方、上に述べたようなメモリ配列によると、右端に到達したときに左端に戻るための、右端に到達したかどうかを確認する処理、ならびに、下端に到達したときに上端に戻るための、下端に到達したかどうかを確認する処理が、地図上の1点にアクセスするたびに必要となる。これを説明するのが図18である。図の1500の領域にアクセスする場合はすべてを連続しているメモリとして扱うことができるが、図の1600の領域にアクセスする場合は、全体領域の右端を超えるかどうかをその都度確認し、そのときには左端の領域1630をアクセスする必要が生じている。これは具体的に言うと、プログラムにおいて、メモリ番地が図の右端を越えるかどうかを確認するためのif文に相当する確認分岐処理が必要となる。一般にこの処理は単体としては無視できるほど極めて短時間におこなわれるものであるが、背景技術の項で説明した位置姿勢推定のためのマッチング処理では、評価関数を算出するために最も多く繰り返し行われ、なおかつここで同様に最も多く繰り返し行われるその他の処理はもともと非常に単純なものであるため、この確認分岐処理を行うか行わないかが全体処理時間に与える影響は結果として無視できない大きなものになる。例えば、マッチング処理で最も多く行われる処理ループの最内部分の演算がもともと3の処理量であり、この確認分岐の処理量が単体として1の処理量であったときに、全体の処理量は理論上は4/3程度に増加されることになる。
この問題を解決するため、上で述べた部分地図190のメモリ上での管理方法を、以下のように改良することもできる。これを部分地図のメモリ管理に関する改良方法と呼ぶことにし、これについて詳しく述べる。
部分地図のメモリ管理に関する改良方法では、図19に示すように、メモリは、11×11ブロック分のピクセル数、すなわち(40×11)×(40×11) = 4400×4400ピクセル分の記憶容量を持つ連続メモリとして準備する。メモリ番号のつけかたは、図15を用いて述べた方法と同じである。この改良方法では、メモリ領域の最上1列および最左1列に新たな領域1300を設けている。ここで最上1列には、メモリ領域の最下1列の内容と同等の内容が書き込まれ、最左1列には、メモリ領域の最右1列同等の内容が書き込まれるようにする。このような領域を設け、図20に示すようにエリア1600およびエリア1620の内容を参照するかわりにエリア1670を参照することで、同じ内容を連続するメモリ領域として参照することが可能となる。これによりマッチング処理を行う際に、ある限定された領域の連続メモリの参照時に、メモリの端に到達したかどうかの確認処理を行う必要が無くなり、マッチング処理で最も多く行われる処理ループの最内部分の演算量を削減するができ、結果としてマッチング全体処理量を削減することができる。例えば上で述べた理論上の値によれば、処理量を3/4に削減することが可能となる。
なお、上の説明では、新たな領域1430の幅が地図のブロックのサイズの幅と等しいものとしたが、この領域の幅はマッチング時にアクセスする領域の幅と等しいように決定するのが合理的でありこのように設定することもできる。
また、以上の説明では移動ロボット220の回転方向の制約は考慮しなかったが、実際には上で述べた1周期の間に回転できる角度は限定されるので、この角度に含まれない部分は必要部分地図620の領域外とすることで、部分地図190の記憶に必要なメモリの大きさを削減したり、その更新に必要となるデータの読み書きの量を削減することもできる。
図21は、いままで説明した本発明の機能を実現するハードウェア構成の1例を示すハードウェア構成図である。CPU20、メモリ30、ハードディスク40、距離センサ用インタフェース(IF)50、移動機構用インタフェース(IF)60、ネットワークインタフェース(IF)70からなるコンピュータ95、および距離センサ80、移動機構90を備える。
CPU20は、ハードディスク40あるいはメモリ30に記憶されたプログラムに基づいて動作し、各部の制御を行う。ハードディスク40は、CPU20によって実行されるプログラムを記憶し、また全体地図を記憶する。メモリ30は、CPU20によって実行されるプログラムを記憶し、また部分地図を格納する。距離センサ用IF50は、CPU20による制御に基づき距離センサ210を動作させ、センシングデータを入力する。移動機構用IF60は、CPU20による制御に基づき移動機構90を動作させる。ネットワークIF70は無線あるいは有線の通信回線とのインタフェースを行い、プログラムの入出力、データの入出力、外部コマンドの入出力などを行う。
これらの機器と図1の各ブロックとの対応を説明する。全体地図記憶部160を実現すものがハードディスク40である。なおこのハードディスクは、コンパクトフラッシュ(登録商標)のようなメモリ型外部記憶媒体や、ネットワークを介して接続される外部のコンピュータやサーバシステムなどに置き換えることも可能である。部分地図更新部150を実現するものはCPU20で動作するプログラムである。部分地図記憶部170を実現するものはメモリ30である。位置姿勢推定部110を実現するものはCPU20で動作するプログラムと距離センサ用IF50である。移動制御部120を実現するものはCPU20で動作するプログラムと移動機構用IF60である。移動機構部130は移動機構90によって実現される。
本発明の一実施形態に係る移動ロボットシステムの全体構成を示す機能ブロック構成図である。 本発明の一実施形態に係る移動ロボットシステムにおけるセンシング方法を説明する図である。 距離センサで計測したセンシングデータの一例を説明する図である。 位置姿勢推定に用いる地図の一例である。 地図とセンシングデータのマッチングにより位置姿勢を推定するしくみを説明する図である。 全体地図と移動ロボットの候補位置ならびに必要部分地図の関係を説明する図である。 部分地図と移動ロボットの候補位置との関係を説明する図である。 部分地図更新部によって行われる処理の流れを説明するフローチャートである。 移動ロボットの候補位置がブロックをまたがって移動したときに、必要部分地図の領域が変化する様子を説明する図である。 拡張領域を含む手法において、部分地図の領域を説明する図である。 拡張領域を含む手法において、部分地図と移動ロボットの候補位置との関係を説明する図である。 拡張領域を含む手法において、移動ロボットの候補位置がブロックをまたがって移動したときに、部分地図の領域が変化する様子を説明する図である。 拡張領域を含む手法において、移動ロボットの候補位置がブロックをまたがって移動したときに、部分地図の内容を更新する必要がないことを説明する図である。 部分地図のブロックの並びを説明する図である。 図14の部分地図のブロックとメモリ上の位置との関係を説明する図である。 部分地図の領域が変化したときに、部分地図のブロックの並びを説明する図である。 図16の部分地図のブロックとメモリ上の位置との関係を説明する図である。 マッチング処理時に2つのセンサデータの値に基づいてそれぞれがアクセスするメモリの領域を説明する図である。 部分地図のメモリ管理に関する改良方法における、メモリ上のブロックの並びかたを説明する図である。 部分地図のメモリ管理に関する改良方法における、マッチング処理時にあるセンサデータの値に基づいてアクセスするメモリの領域を説明する図である。 本発明の一実施の形態におけるハードウェア構成を説明する図である。
符号の説明
181 読み込みブロック選択指示部によって選択された圧縮ブロック地図、186 部分地図記憶部の更新用ブロック地図

Claims (16)

  1. 周囲の状況を距離センサで計測したセンシングデータと、地図との照合により、自己の位置姿勢を認識し、その認識結果に基づく移動制御によって移動する、移動ロボットシステムにおいて、
    該移動ロボットシステムは、
    全体地図を、複数に分割したブロック地図として管理する全体地図記憶部と、
    位置姿勢推定に必要な必要部分地図とその周辺部分の地図からなる拡張部分地図とから構成される部分地図を、連続する領域で管理する部分地図記憶部と、
    該部分地図と該センシングデータから該位置姿勢を求める位置姿勢推定部と、
    該全体地図管理手段から該ブロック地図を選択して読み込み、該読み込んだブロック地図を用いて該部分地図記憶部の内容を更新する部分地図更新部とを備えることを特徴とする移動ロボットシステム。
  2. 請求項1記載の移動ロボットシステムにおいて、
    該部分地図として管理すべき領域を、ロボットの位置姿勢推定初期値に基づき決定することを特徴とする移動ロボットシステム。
  3. 請求項1または2記載の移動ロボットシステムにおいて、
    該全体地図記憶部は該ブロック地図を圧縮データとして記憶し、
    該部分地図更新部は読み込んだ圧縮データを伸長する手段を備えることを特徴とする移動ロボットシステム。
  4. 請求項1から3記載のいずれかの移動ロボットシステムにおいて、
    該全体地図は、W×Hピクセルの矩形領域となる複数のブロック領域から構成され、
    該必要部分地図は、M×N個の該ブロック領域から構成される矩形領域であり、
    該必要部分地図と該拡張部分地図をあわせた該部分地図は、(M+1)×(N+1)個の該ブロック領域から構成される矩形領域であり、
    ロボットが移動しロボットの位置姿勢推定初期値が変化したときは、該部分地図に必要部分地図が必ず含まれるようにするために足りないブロック領域を該全体地図から読み込み、該部分地図を更新することを特徴とする移動ロボットシステム。
  5. 請求項1から3記載のいずれかの移動ロボットシステムにおいて、
    該部分地図記憶領域は連続する物理メモリから構成され、
    該物理メモリは、該全体地図を構成するW×Hピクセルの矩形領域と、該必要部分地図を構成するM×N個のブロック領域を示す、(M×W)×(N×H)ピクセルの画素データを格納できるサイズをもち、
    該部分地図記憶領域は、該物理メモリ上において、矩形領域の右端が左端に連続するように、また下端が上端に連続するように割り当てられることを特徴とする移動ロボットシステム。
  6. 請求項4記載の移動ロボットシステムにおいて、
    該部分地図記憶領域は連続する物理メモリから構成され、
    該物理メモリは、該全体地図を構成するW×Hピクセルの矩形領域と、該必要部分地図を構成するM×N個のブロック領域を示す、((M+1)×W)×((N+1)×H)ピクセルの画素データを格納できるサイズをもち、
    該部分地図記憶領域は、該物理メモリ上において、矩形領域の右端が左端に連続するように、また下端が上端に連続するように割り当てられることを特徴とする移動ロボットシステム。
  7. 請求項1から3記載のいずれかの移動ロボットシステムにおいて、
    該部分地図記憶領域は連続する物理メモリから構成され、
    該物理メモリは、あらかじめ定められた幅パラメータUを用いて、該全体地図を構成するW×Hピクセルの矩形領域と、該必要部分地図を構成するM×N個のブロック領域を示す ((U+M)×W)×((U+N)×H)ピクセルの画素データを格納できるサイズをもち、
    該部分地図記憶領域は、該物理メモリ上において、矩形領域の右端が左端に連続するように、また下端が上端に連続するように割り当てられ、
    該物理メモリの左端の幅Uの部分には右端の幅Uの内容が複写され、また上端の幅Uの部分には下端の幅Uの内容が複写されることを特徴とする移動ロボットシステム。
  8. 請求項4記載の移動ロボットシステムにおいて、
    該部分地図記憶領域は連続する物理メモリから構成され、
    該物理メモリは、あらかじめ定められた幅パラメータUを用いて、該全体地図を構成するW×Hピクセルの矩形領域と、該必要部分地図を構成するM×N個のブロック領域を示す、(U+(M+1)×W)×(U+(N+1)×H)ピクセルの画素データを格納できるサイズをもち、
    該部分地図記憶領域は、該物理メモリ上において、矩形領域の右端が左端に連続するように、また下端が上端に連続するように割り当てられ、
    該物理メモリの左端の幅Uの部分には右端の幅Uの内容が複写され、また上端の幅Uの部分には下端の幅Uの内容が複写されることを特徴とする移動ロボットシステム。
  9. 移動ロボットシステムの周囲の状況を計測し、センシングデータを生成する距離センサと、複数のブロック地図を記憶する全体地図記憶部と、
    前記全体地図記憶部に記憶された複数のブロック地図のうちいくつかを伸張した部分地図を管理する部分地図管理部と、
    前記部分地図管理部が管理する部分地図に含まれる前記ブロック地図を全体地図記憶部が記憶する前記ブロック地図から選択するとともに、該選択したブロック地図を伸張して前記部分地図管理部の管理する部分地図を更新する部分地図更新部と、
    前記センシングデータと前記部分地図とを照合して前記移動ロボットシステムの位置姿勢を求める位置姿勢推定部と、
    求めた前記位置姿勢に応じて、前記移動ロボットシステムを移動させる移動機構部を制御する移動制御部とを備え、
    該部分地図は、位置姿勢推定に必要な必要部分地図と、その周辺部分の地図からなる拡張部分地図から構成され、
    前記部分地図更新部は、前記位置姿勢に基づいて必要部分地図の範囲を算出し、当該必要部分地図の全体を含むように前記部分地図管理部が管理する部分地図が有するブロック地図を選択することを特徴とする移動ロボットシステム。
  10. 請求項9に記載の移動ロボットシステムにおいて、
    前記全体地図記憶部は、前記ブロック地図を圧縮して記憶していることを特徴とする移動ロボットシステム。
  11. 請求項9に記載の移動ロボットシステムにおいて、
    前記必要部分地図は、前記位置姿勢から求めた前記移動ロボットシステムの位置に対応するブロック地図が中心となるように選択させることを特徴とする移動ロボットシステム。
  12. 請求項9に記載の移動ロボットシステムにおいて、
    前記部分地図は、前記必要部分地図よりも多くの前記ブロック地図を有し、
    前記必要部分地図の範囲は、前記位置姿勢から求めた前記移動ロボットシステムの位置の変化に応じて変更され、
    当該必要部分地図の範囲が前記部分地図に含まれないブロック地図を含むように変更されたときに、前記部分地図更新部は前記全体記憶地図記憶部から当該ブロック地図を伸張して前記部分地図管理部の管理する部分地図に加えることを特徴とする移動ロボットシステム。
  13. 請求項12に記載の移動ロボットシステムにおいて、
    前記ブロック地図を前記部分地図に加えたときに、前記必要部分地図に含まれないブロック地図を前記部分地図管理部から削除することを特徴とする移動ロボットシステム。
  14. 請求項13に記載の移動ロボットシステムにおいて、
    前記部分地図に加えるブロック地図は、前記削除されるブロック地図を記憶している前記部分地図管理部の記憶領域に記憶されることを特徴とする移動ロボットシステム。
  15. 周囲の状況を距離センサで計測したセンシングデータと、地図との照合により、自己の位置姿勢を認識し、その認識結果に基づく移動制御によって移動する、移動ロボットシステムの制御方法において、
    前記移動ロボットシステムは、
    全体地図を、複数に分割したブロック地図として管理する全体地図記憶部と、
    位置姿勢推定に必要な地図領域を、部分地図として連続する領域で管理する部分地図記憶部とを備え、
    該部分地図は、位置姿勢推定に必要な必要部分地図と、その周辺部分の地図からなる拡張部分地図から構成され、
    移動ロボットシステムの位置姿勢推定部が、該部分地図と該センシングデータから該位置姿勢を求める位置姿勢推定ステップと、
    移動ロボットシステムの部分地図更新部が、該全体地図管理手段から該ブロック地図を選択して読み込み、該読み込んだブロック地図を用いて該部分地図記憶部の内容を更新するステップとを備えることを特徴とする移動ロボットシステムの制御方法。
  16. 距離センサが、移動ロボットシステムの周囲の状況を計測し、センシングデータを生成する距離計測ステップと、
    部分地図更新部が、複数のブロック地図を記憶する全体地図記憶部から前記部分地図管理部が管理する部分地図に含まれる前記ブロック地図から選択するブロック地図選択ステップと、
    前記部分地図更新部が、前記選択したブロック地図を伸張して前記部分地図管理部の管理する部分地図を更新する部分地図更新ステップと、
    位置姿勢推定部が、前記センシングデータと前記部分地図とを照合して前記移動ロボットシステムの位置姿勢を求める位置姿勢推定ステップと、
    移動制御部が、前記求めた位置姿勢に応じて、前記移動ロボットシステムを移動させる移動機構部を制御する移動ステップとを備え、
    該部分地図は、位置姿勢推定に必要な必要部分地図と、その周辺部分の地図からなる拡張部分地図から構成され、
    前記地図選択ステップでは、前記部分地図更新部が、前記位置姿勢に基づいて必要部分地図の範囲を算出し、当該必要部分地図の全体を含むように前記部分地図管理部が管理する部分地図が有するブロック地図を選択することを特徴とする移動ロボットシステムの制御方法。
JP2008002716A 2008-01-10 2008-01-10 移動ロボットシステム及びその制御方法 Active JP5349804B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008002716A JP5349804B2 (ja) 2008-01-10 2008-01-10 移動ロボットシステム及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008002716A JP5349804B2 (ja) 2008-01-10 2008-01-10 移動ロボットシステム及びその制御方法

Publications (2)

Publication Number Publication Date
JP2009163156A JP2009163156A (ja) 2009-07-23
JP5349804B2 true JP5349804B2 (ja) 2013-11-20

Family

ID=40965802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008002716A Active JP5349804B2 (ja) 2008-01-10 2008-01-10 移動ロボットシステム及びその制御方法

Country Status (1)

Country Link
JP (1) JP5349804B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016052099A1 (ja) * 2014-10-02 2016-04-07 株式会社日立産機システム 地図情報生成装置及び地図情報生成方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6136543B2 (ja) * 2013-05-01 2017-05-31 村田機械株式会社 自律移動体
JP6486024B2 (ja) * 2014-07-02 2019-03-20 三菱重工業株式会社 構造物の屋内監視システム及び方法
JP6786366B2 (ja) * 2016-12-06 2020-11-18 東日本旅客鉄道株式会社 鉄道線路用の保守車両
DE112019000515T5 (de) 2018-01-24 2020-10-08 Sony Corporation Steuervorrichtung, steuerverfahren, programm, und mobiles objekt
JP2020042726A (ja) * 2018-09-13 2020-03-19 株式会社東芝 Ogm圧縮回路、ogm圧縮伸長システム、および移動体システム
JP7041047B2 (ja) * 2018-12-07 2022-03-23 株式会社日立産機システム 移動体の制御システム、及び、その制御方法
CN110319832B (zh) * 2019-07-05 2024-05-17 京东科技信息技术有限公司 机器人定位方法、装置、电子设备及介质
KR102292733B1 (ko) * 2020-06-08 2021-08-20 롯데정보통신 주식회사 복수의 이동 로봇의 자율 주행을 위한 비동기 분산 방식의 인공지능 모델 할당 시스템 및 그 방법
JP7336430B2 (ja) * 2020-12-17 2023-08-31 株式会社日立産機システム 移動体の位置検出装置及び位置検出方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0650727Y2 (ja) * 1985-05-17 1994-12-21 株式会社カンセイ 車両用走行誘導装置
JPS63213005A (ja) * 1987-03-02 1988-09-05 Hitachi Ltd 移動体誘導方法
JPH05296776A (ja) * 1992-04-24 1993-11-09 Fujitsu Ten Ltd 経路誘導装置
JPH09160482A (ja) * 1995-12-01 1997-06-20 Aqueous Res:Kk ナビゲーション装置
KR0168189B1 (ko) * 1995-12-01 1999-02-01 김광호 로보트의 환경인식장치 및 그 제어방법
JP4672175B2 (ja) * 2000-05-26 2011-04-20 本田技研工業株式会社 位置検出装置、位置検出方法、及び位置検出プログラム
JP4318537B2 (ja) * 2003-11-19 2009-08-26 パナソニック株式会社 マップマッチング方法とそれを実施する装置
JP4533659B2 (ja) * 2004-05-12 2010-09-01 株式会社日立製作所 レーザー計測により地図画像を生成する装置及び方法
JP2006039486A (ja) * 2004-07-30 2006-02-09 Victor Co Of Japan Ltd 地図情報処理装置
JP5069439B2 (ja) * 2006-09-21 2012-11-07 パナソニック株式会社 自己位置認識システム
JP2008250906A (ja) * 2007-03-30 2008-10-16 Sogo Keibi Hosho Co Ltd 移動ロボット、自己位置補正方法および自己位置補正プログラム
JP2009093308A (ja) * 2007-10-05 2009-04-30 Hitachi Industrial Equipment Systems Co Ltd ロボットシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016052099A1 (ja) * 2014-10-02 2016-04-07 株式会社日立産機システム 地図情報生成装置及び地図情報生成方法

Also Published As

Publication number Publication date
JP2009163156A (ja) 2009-07-23

Similar Documents

Publication Publication Date Title
JP5349804B2 (ja) 移動ロボットシステム及びその制御方法
US10593110B2 (en) Method and device for computing a path in a game scene
US6873329B2 (en) System and method for caching and rendering images
US20120268465A1 (en) Image file generation device, image processing device, image file generation method, image processing method, and data structure for image files
EP1624443A2 (en) Method and apparatus using a two-dimensional circular data buffer for scrollable image display
JP6223976B2 (ja) 表示制御プログラム、表示制御方法及び表示制御装置
KR20130040773A (ko) 3차원 지도 묘화 시스템
KR101956098B1 (ko) 2.5차원 이미지를 활용한 가상 전시 공간 시스템 및 제공 방법
CN108492243B (zh) 一种基于块处理的图像旋转装置、系统和方法
CN113313794B (zh) 动画迁移方法和装置、设备及存储介质
TW201828068A (zh) 在邏輯位址和物理位址之間執行散列式轉譯的儲存裝置
US8903804B2 (en) Data existence judging device and data existence judging method
KR101953133B1 (ko) 렌더링 장치 및 그 방법
EP3996042A1 (en) Three-dimensional model texture obtaining method and related device
ES2297449T3 (es) Representacion de triangulo utilizando una evaluacion directa.
US20150199825A1 (en) Method and system for expediting bilinear filtering
JP2013186624A (ja) 画像処理装置、および画像処理装置の動作方法
CN112419430A (zh) 动画播放方法、装置及计算机设备
CN115761119A (zh) 邻域体素存储方法、装置、计算机设备和存储介质
JP6012207B2 (ja) データ転送装置
CN112529984B (zh) 绘制多边形的方法、装置、电子设备及存储介质
CN113786616A (zh) 一种间接光照实现方法、装置、存储介质及计算设备
KR102387264B1 (ko) 웹 벡터 지도 표시 시스템 및 방법
WO2021075317A1 (ja) Arシステム及び端末
WO2023241210A1 (zh) 虚拟场景的渲染方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130703

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: 20130723

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130821

R150 Certificate of patent or registration of utility model

Ref document number: 5349804

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150