JP5930551B2 - Residence point extraction method, residence point extraction device, and residence point extraction program - Google Patents
Residence point extraction method, residence point extraction device, and residence point extraction program Download PDFInfo
- Publication number
- JP5930551B2 JP5930551B2 JP2014047201A JP2014047201A JP5930551B2 JP 5930551 B2 JP5930551 B2 JP 5930551B2 JP 2014047201 A JP2014047201 A JP 2014047201A JP 2014047201 A JP2014047201 A JP 2014047201A JP 5930551 B2 JP5930551 B2 JP 5930551B2
- Authority
- JP
- Japan
- Prior art keywords
- positioning
- cluster
- data
- positioning data
- point
- 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
Links
Images
Description
本発明は、ユーザ端末の位置情報を用いてユーザの滞留点を求める技術に関する。 The present invention relates to a technique for obtaining a user's stay point using position information of a user terminal.
フィーチャーフォンやスマートフォンなどから、GPSや無線基地局、Wi−Fiなどを用いて取得された位置情報を測位データとして収集し、ユーザの地理的行動を分析することが行われている。そして、収集した測位データからユーザがどこへ訪問したかを理解するために、その測位データを用いてユーザが長時間留まった地点を滞留点として抽出する技術が存在する。具体的には、測位データに含まれる測位点、すなわち、測位された時刻における経度・緯度が示す地点が密である場所を滞留点として抽出する、カーネル密度ベースのクラスタリング手法であるMean−Shift技術(非特許文献1)が用いられている。 Location information acquired from a feature phone, a smartphone, or the like using GPS, a wireless base station, Wi-Fi, or the like is collected as positioning data, and the geographical behavior of the user is analyzed. And in order to understand where the user visited from the collected positioning data, there is a technique for extracting a point where the user stayed for a long time as a staying point using the positioning data. Specifically, the Mean-Shift technology, which is a kernel density-based clustering technique, extracts positioning points included in the positioning data, that is, locations where the points indicated by the longitude and latitude at the positioning time are dense as dwell points. (Non-Patent Document 1) is used.
しかしながら、滞留点に測位点が集中していることを前提としているため、フィーチャーフォンなどの電池消費削減の観点から移動のない時に測位回数を抑制するなどして測位取得間隔が変化する場合、滞留点付近の測位点の数が減少してしまうという課題がある。また、GPSなどによる測位は、屋内や屋外、電波状況などの環境要因によって変化する。そのため、全ての測位点を等しく扱う従来技術では、測定誤差の大きい測位点に引き寄せられることにより滞留点がずれてしまうという課題もある。これら2つの課題より、滞留点の抽出精度が低下するおそれがあった。 However, since it is assumed that the positioning points are concentrated at the staying point, if the positioning acquisition interval changes due to, for example, suppressing the number of positionings when there is no movement from the viewpoint of reducing battery consumption such as feature phones, the staying point There is a problem that the number of positioning points near the point is reduced. In addition, positioning by GPS or the like varies depending on environmental factors such as indoors, outdoors, and radio wave conditions. Therefore, in the prior art that treats all the positioning points equally, there is a problem that the staying points are shifted by being drawn to the positioning points having a large measurement error. Due to these two problems, there is a possibility that the extraction accuracy of the staying point is lowered.
本発明は、上記事情を鑑みてなされたものであり、ユーザが留まった滞留点の抽出精度を改善することを目的とする。 This invention is made | formed in view of the said situation, and it aims at improving the extraction accuracy of the staying point where the user stayed.
上記課題を解決するため、請求項1の滞留点抽出方法は、コンピュータにより、ユーザ端末から収集した位置情報を測位データとして記憶手段に記憶する第1のステップと、前記記憶手段から各測位データを読み出して、前記各測位データにそれぞれ含まれる測位誤差データを用いて各測位データの測位精度をそれぞれ算出する第2のステップと、前記各測位データにおける各測位点をそれぞれクラスタとし、それぞれのクラスタから一定領域内かつ測位時刻の間隔が一定時間内に含まれる複数の測位点をそれぞれ取得する第3のステップと、前記複数の測位点の測位精度および測位データを用いて測位精度を重みとする重み付き重心を算出し、前記それぞれのクラスタの中心点とする第4のステップと、各クラスタの中心点間の距離が一定距離以下であるクラスタを併合する第5のステップと、併合されたクラスタに含まれる各クラスタの測位点を測位時刻の順番に並べ、隣り合う2つの測位点の測位時刻の時間間隔が一定時間以上の場合、前記併合されたクラスタを分離する第6のステップと、併合されたクラスタ及び併合後に分離されたクラスタの中心点をユーザの滞留点として抽出する第5のステップと、を有することを要旨とする。
In order to solve the above-mentioned problem, a dwell point extraction method according to
本発明によれば、各測位データにそれぞれ含まれる測位誤差データを用いて各測位データの測位精度をそれぞれ算出し、各測位データにおける各測位点をそれぞれクラスタとし、任意のクラスタから一定領域内かつ測位時刻の間隔が一定時間内に含まれる複数の測位点を取得し、それら複数の測位点の測位精度および測位データを用いて測位精度を重みとする重み付き重心を算出し、その重み付き重心を任意のクラスタの中心点とし、その中心点をユーザの滞留点として抽出するため、環境要因によって測位精度が変化する場合でも、精度の悪い測位点による影響で滞留点の場所がずれてしまうことを抑制できることから、ユーザが留まった滞留点を精度よく抽出することができる。 According to the present invention, the positioning accuracy of each positioning data is calculated using positioning error data included in each positioning data, each positioning point in each positioning data is set as a cluster, and any given cluster within a certain region and Obtains multiple positioning points whose positioning time intervals are included within a certain time, calculates the weighted centroid using the positioning accuracy and positioning data of the multiple positioning points as weights, and the weighted centroid Is the center point of any cluster, and the center point is extracted as the user's stay point, so even if the positioning accuracy changes due to environmental factors, the location of the stay point will be shifted due to the influence of the positioning point with poor accuracy. Therefore, the staying point where the user stayed can be extracted with high accuracy.
請求項2の滞留点抽出方法は、請求項1に記載の滞留点抽出方法において、前記第2のステップと前記第3のステップとの間に、測位時刻の間隔が一定時間より大きく、かつ、測位点間が一定距離より小さい測位データ間に新たな測位データを追加するステップを更に有することを要旨とする。
The stay point extracting method according to claim 2 is the stay point extracting method according to
本発明によれば、測位時刻の間隔が一定時間より大きく、かつ、測位点間が一定距離より小さい測位データ間に新たな測位データを追加するため、測位データの測位取得間隔が変化する場合でも、滞留の可能性が高い地点に多くの測位データを補間できることから、ユーザが留まった滞留点を更に精度よく抽出することができる。 According to the present invention, since the new positioning data is added between the positioning data whose positioning time interval is larger than a certain time and between the positioning points is smaller than the certain distance, even when the positioning acquisition interval of the positioning data changes. Since a lot of positioning data can be interpolated at a point where the possibility of staying is high, the staying point where the user stayed can be extracted more accurately.
請求項3の滞留点抽出装置は、ユーザ端末から収集した位置情報を測位データとして記憶する記憶手段と、前記記憶手段から各測位データを読み出して、前記各測位データにそれぞれ含まれる測位誤差データを用いて各測位データの測位精度をそれぞれ算出する算出手段と、前記各測位データにおける各測位点をそれぞれクラスタとし、それぞれのクラスタから一定領域内かつ測位時刻の間隔が一定時間内に含まれる複数の測位点をそれぞれ取得する取得手段と、前記複数の測位点の測位精度および測位データを用いて測位精度を重みとする重み付き重心を算出し、前記それぞれのクラスタの中心点とする算出手段と、各クラスタの中心点間の距離が一定距離以下であるクラスタを併合する併合手段と、併合されたクラスタに含まれる各クラスタの測位点を測位時刻の順番に並べ、隣り合う2つの測位点の測位時刻の時間間隔が一定時間以上の場合、前記併合されたクラスタを分離する分離手段と、併合されたクラスタ及び併合後に分離されたクラスタの中心点をユーザの滞留点として抽出する抽出手段と、を有することを要旨とする。 The stay point extraction apparatus according to claim 3 stores a storage unit that stores position information collected from a user terminal as positioning data, reads out each positioning data from the storage unit, and outputs positioning error data included in each positioning data. A plurality of calculation means for calculating the positioning accuracy of each positioning data, and each positioning point in each positioning data as a cluster, and within a certain area from each cluster and a positioning time interval within a certain time Obtaining means for obtaining each positioning point; and calculating means for calculating a weighted centroid weighted by positioning accuracy using the positioning accuracy and positioning data of the plurality of positioning points, and calculating the center point of each cluster; Merging means for merging clusters whose distance between the center points of each cluster is a certain distance or less, and each cluster included in the merged cluster. If the positioning points of the data are arranged in the order of the positioning times and the time interval between the positioning times of two adjacent positioning points is a certain time or more, the separating means for separating the merged cluster, the merged cluster, and after the merge The gist of the present invention is to include an extraction unit that extracts a center point of the separated cluster as a staying point of the user.
請求項4の滞留点抽出装置は、請求項3に記載の滞留点抽出装置において、測位時刻の間隔が一定時間より大きく、かつ、測位点間が一定距離より小さい測位データ間に新たな測位データを追加する補間手段を更に有することを要旨とする。 The stay point extracting apparatus according to claim 4 is the stay point extracting apparatus according to claim 3, wherein new positioning data is obtained between positioning data in which the interval between positioning times is larger than a certain time and the distance between positioning points is smaller than a certain distance. The gist of the present invention is to further include an interpolation means for adding.
請求項5の滞留点抽出プログラムは、請求項1又は2に記載の滞留点抽出方法をコンピュータに実行させることを要旨とする。
A summary of the stay point extraction program according to claim 5 is to cause a computer to execute the stay point extraction method according to
本発明によれば、ユーザが留まった滞留点の抽出精度を高めることができる。 ADVANTAGE OF THE INVENTION According to this invention, the extraction precision of the stay point where the user stayed can be improved.
以下、本発明を実施する一実施の形態について図面を用いて説明する。 Hereinafter, an embodiment for carrying out the present invention will be described with reference to the drawings.
図1は、本実施の形態に係る滞留点抽出装置1の機能ブロック構成を示す図である。この滞留点抽出装置1は、測位データDB11と、測位データ抽出部12と、測位データ補間部13と、滞留点抽出部14と、滞留点DB15と、を備えて構成される。以下、それら各部の機能について詳述する。
FIG. 1 is a diagram showing a functional block configuration of a stay
測位データDB11は、フィーチャーフォンやスマートフォンなどのユーザ端末から、GPSや携帯の無線基地局、Wi−Fiなどを利用して取得できる位置情報を測位データとして収集し、保存する機能部である。
The
測位データDB11の構成例を図2に示す。測位データは、ユーザID(uid)、測位時間(time)、経度(longitude)、緯度(latitude)、測位方法(method)、測位誤差(accuracy)などにより構成される。測位誤差とは、GPSなどで計測された測位の不正確度であり、収集した位置情報に既に含まれているパラメータ値である。図2の構成例では、メートルを単位としている。なお、高度や加速度など、その他の情報が測位データに含まれていても構わない。
A configuration example of the
測位データ抽出部12は、入力された対象ユーザIDリストに記載されたユーザIDに該当する測位データを測位データDB11から抽出する。このとき、後述する図3の手続きにしたがって、測位誤差から測位精度を算出し、抽出した測位データに付与した上で出力する。
The positioning
測位データ補間部13は、測位データ抽出部12から出力された測位データを入力とし、後述する図4の手続きにしたがって、測位時間の間隔が一定時間より大きく、かつ、測位点間が一定距離より小さい測位データ間に新たな測位データを線形補間し、もとの測位データに加えた上で出力する。なお、測位点とは、測位された時間における経度・緯度が示す地点という。
The positioning
滞留点抽出部14は、測位データ補間部13から出力された測位データを入力とし、後述する図6の手続きにしたがって、測位精度に応じて測位点に重みをつけたカーネル密度ベースのクラスタリング手法を用いて滞留点を抽出する。抽出した滞留点は、滞留点DB15に出力し、保存する。
The stay
次に、測位データ抽出部12、測位データ補間部13、滞留点抽出部14の各動作を詳述する。最初に、測位データ抽出部12について説明する。図3は、測位データ抽出部12の処理フローを示す図である。
Next, each operation | movement of the positioning
まず、ステップS101において、事前に与えられた対象ユーザIDリストに含まれるユーザIDを入力とし、未処理のユーザIDに該当する全ての測位データを測位データDB11から取得する。以降のステップS102は、ユーザIDごとに実行される。
First, in step S101, the user ID included in the target user ID list given in advance is input, and all the positioning data corresponding to the unprocessed user ID is acquired from the
次に、ステップS102において、ステップS101で取得した各測位データにそれぞれ含まれる各測位誤差aを用いて、各測位データの測位精度A(a)を式(1)よりそれぞれ算出する。 Next, in step S102, the positioning accuracy A (a) of each positioning data is calculated from equation (1) using each positioning error a included in each positioning data acquired in step S101.
なお、測位誤差が大きるなるほど測位精度が小さくなるような関数であり、負の値をとることがなければ、式(1)以外の関数を用いても構わない。また、GPS、無線基地局、Wi−Fiなどの測位方法に応じて測位精度A0や減衰定数λの値を変えるなど、測位誤差a以外の情報を考慮した関数を用いても構わない。 Note that the function is such that the positioning accuracy decreases as the positioning error increases, and a function other than Expression (1) may be used as long as it does not take a negative value. Also, a function that takes into account information other than the positioning error a, such as changing the positioning accuracy A0 or the value of the attenuation constant λ according to a positioning method such as GPS, a wireless base station, or Wi-Fi, may be used.
そして、このようにして算出した測位精度を、ステップS101で取得した測位データに付与し、新たな測位データとして測位データ補間部13に出力する。
Then, the positioning accuracy calculated in this way is added to the positioning data acquired in step S101, and is output to the positioning
その後、ステップS103において、未処理のユーザIDがあるか否かを判定し、未処理のユーザIDがある場合は、ステップS101に戻り、全てのユーザIDについてステップS101,S102を行う。一方、未処理のユーザIDがない場合は、処理を終了する。 Thereafter, in step S103, it is determined whether or not there is an unprocessed user ID. If there is an unprocessed user ID, the process returns to step S101, and steps S101 and S102 are performed for all user IDs. On the other hand, if there is no unprocessed user ID, the process ends.
続いて、測位データ補間部13の動作について説明する。図4は、測位データ補間部13の処理フローを示す図である。
Next, the operation of the positioning
まず、ステップS201において、測位データ抽出部12から出力された測位データを入力とし、未処理のユーザIDに該当する全ての測位データを取得する。以降のステップS202〜S205は、ユーザIDごとに実行される。
First, in step S201, the positioning data output from the positioning
次に、ステップS202において、未処理の隣接測位データを取得する。具体的には、ステップS201で取得した各測位データから、測位点と当該測位点に時間的に隣接している測位点とを隣接測位データとして取得する。ここでは、測位データdの集合Dが{d0,d1,…,dnー1|n>2,n∈N}のように測位時間昇順に構成されているものとし、隣接測位データを含む集合D’を{(d0,d1),(d1,d2),…,(dnー2,dnー1)|n>2,n∈N}と表現する。なお、nは、現在処理中のユーザIDに該当する測位データの総数である。以降、この隣接測位データを用いて測位時間昇順で順に処理する。 Next, in step S202, unprocessed adjacent positioning data is acquired. Specifically, a positioning point and a positioning point that is temporally adjacent to the positioning point are acquired as adjacent positioning data from each positioning data acquired in step S201. Here, it is assumed that the set D of positioning data d is configured in ascending order of positioning time as {d 0 , d 1 ,..., D n−1 | n> 2, n∈N}. A set D ′ including the above is expressed as {(d 0 , d 1 ), (d 1 , d 2 ),..., (D n−2 , d n−1 ) | n> 2, n∈N}. Note that n is the total number of positioning data corresponding to the user ID currently being processed. Thereafter, the adjacent positioning data is used to perform processing in order of ascending positioning time.
次に、ステップS203において、事前に人手によって定められた測位時間間隔閾値Tlerpおよび測位距離間隔閾値Llerpを用いて、隣接測位データdi,di+1(0≦i<n−1;i∈Z)にそれぞれ含まれる測位時間ti,ti+1と測位点li,li+1が式(2)の条件を満たしているか否かを判定する。 Next, in step S203, the adjacent positioning data d i , d i + 1 (0 ≦ i <n−1; i∈ ) using the positioning time interval threshold value T lerr and the positioning distance interval threshold value L lerrp determined in advance by hand. It is determined whether or not the positioning times t i and t i + 1 and the positioning points l i and l i + 1 included in Z) satisfy the condition of equation (2).
そして、式(2)の条件を満たす場合、前述したように測定回数の抑制処理が働いていることが考えられるため、ステップS204へ進み、隣接測位データdi,di+1における2つの測位データ間に対して新たな測位データを追加する。一方、式(2)の条件を満たさない場合は、ステップS204を行うことなくステップS205へ進む。 If the condition of the expression (2) is satisfied, it is considered that the measurement number suppression process is working as described above. Therefore, the process proceeds to step S204, and between the two positioning data in the adjacent positioning data d i and d i + 1 . Add new positioning data to. On the other hand, if the condition of formula (2) is not satisfied, the process proceeds to step S205 without performing step S204.
次に、ステップS204において、新たな測位データを補間間隔閾値Slerpの間隔で線形補間する。具体的には、隣接測位データdi,di+1間を線形補間する場合、式(3)より算出した補間測位データDi,i+1を新たな測位データとして追加する。 Next, in step S204, new positioning data is linearly interpolated at intervals of the interpolation interval threshold value S lerrp . Specifically, when linear interpolation is performed between the adjacent positioning data d i and d i + 1 , the interpolation positioning data D i, i + 1 calculated from the equation (3) is added as new positioning data.
次に、ステップS205において、未処理の隣接測位データがあるか否かを判定し、未処理の隣接測位データがある場合は、ステップS202へ戻り、全ての未処理の隣接測位データについてステップS202〜S204を行う。一方、未処理の隣接測位データがない場合は、ステップS206へ進む。 Next, in step S205, it is determined whether there is unprocessed adjacent positioning data. If there is unprocessed adjacent positioning data, the process returns to step S202, and steps S202 to S202 are performed for all unprocessed adjacent positioning data. S204 is performed. On the other hand, if there is no unprocessed adjacent positioning data, the process proceeds to step S206.
次に、ステップS206において、未処理のユーザIDがあるか否かを判定し、未処理のユーザIDがある場合は、ステップS201へ戻り、全てのユーザIDについてステップS201〜S205を行う。一方、未処理のユーザIDがない場合、ステップS207へ進む。 Next, in step S206, it is determined whether or not there is an unprocessed user ID. If there is an unprocessed user ID, the process returns to step S201, and steps S201 to S205 are performed for all user IDs. On the other hand, if there is no unprocessed user ID, the process proceeds to step S207.
最後に、ステップS207において、これまでの処理によって線形補間が行われた測位データ、又は線形補間を行う必要がなかったそのままの測位データを滞留点抽出部14に出力する。
Finally, in step S207, the positioning data that has been subjected to the linear interpolation by the processing so far, or the positioning data that has not been subjected to the linear interpolation is output to the stay
続いて、滞留点抽出部14の動作について説明する。図6は、滞留点抽出部14の処理フローを示す図である。
Next, the operation of the stay
まず、ステップS301において、測位データ補間部13から出力された測位データを入力とし、未処理のユーザIDに該当する全ての測位データを処理する。以降のステップS302〜S311は、ユーザIDごとに実行される。
First, in step S301, the positioning data output from the positioning
次に、ステップS302において、ステップS301で取得した測位データdに含まれる全ての各測位点lをそれぞれクラスタとして初期化し、ループ回数をゼロに設定する。なお、ここでいう初期化とは、各クラスタの中心点di cを測位点liそのものの値にそれぞれ設定することをいう。すなわち、i番目のクラスタの中心点di cの初期値は測位データdiとなる。 Next, in step S302, all the positioning points l included in the positioning data d acquired in step S301 are initialized as clusters, and the number of loops is set to zero. Here, the initialization means that the center point d i c of each cluster is set to the value of the positioning point l i itself. That is, the initial value of the center point d i c of the i-th cluster is the positioning data d i .
なお、クラスタとは、ユーザが所定の位置に留まっていたと考えられる範囲の最小単位である。ステップS302〜S308では、各測位点をそれぞれクラスタとし、その後、ステップS309,S310において、クラスタを併合又は併合後のクラスタを分割することにより、一定時間ごとに留まったユーザの滞留点を抽出する。 Note that a cluster is a minimum unit of a range in which the user is considered to have stayed at a predetermined position. In Steps S302 to S308, each positioning point is set as a cluster, and then in Steps S309 and S310, the clustering of the clusters or the cluster after the merging is performed to extract the staying points of the users who remain at regular intervals.
次に、ステップS303において、未処理のクラスタ(以降、対象クラスタ)の中心から、事前に人手によって定められた半径R(単位はメートル)以内かつ時間T以内(単位は秒)に含まれる複数の測位点を取得する。具体的には、半径Rかつ時間T以内に含まれる測位点のインデックスの集合Kを式(4)より算出する。 Next, in step S303, a plurality of pieces included within a radius R (unit: meters) and time T (unit: seconds) determined in advance by hand from the center of an unprocessed cluster (hereinafter, target cluster). Get a positioning point. Specifically, a set K of positioning point indexes included within a radius R and within a time T is calculated from Equation (4).
次に、ステップS304において、ステップS303で取得した複数の測位点lkの測位精度A(ak)および測位データdkを用いて、測位精度を重みとする重み付き重心d’i cを式(5)より算出する。 Next, in step S304, by using the positioning accuracy A (a k) and positioning data d k of the plurality of positioning points l k obtained in step S303, the weighted centroid d 'i c to weight the positioning accuracy formula Calculate from (5).
d1={2014/1/1 00:00,[140,40],0.5}
d2={2014/1/1 00:10,[141,41],0.3}
d3={2014/1/1 00:20,[142,42],0.2}
これらの測位データd1〜d3を用いて、測位時間,経度,緯度,測位精度の各重み付き重心をそれぞれ算出し、算出し終えた全てを対象クラスタの重み付き重心とする。例えば、測位時間tであれば、t=(0.5×[2014/1/1 00:00]+0.3×[2014/1/1 00:10]+0.2×[2014/1/1 00:20])÷(0.5+0.3+0.2)=[2014/1/1 00:07]が重み付き測位時間となる。
d 1 = {2014/1/1 00:00:00, [140, 40], 0.5}
d 2 = {2014/1/1 00:10, [141, 41], 0.3}
d 3 = {2014/1/1 00:20, [142, 42], 0.2}
Using these positioning data d 1 to d 3 , weighted centroids for positioning time, longitude, latitude, and positioning accuracy are calculated, respectively, and all the calculated centroids are set as weighted centroids for the target cluster. For example, if the positioning time is t, t = (0.5 × [2014/1/1 00: 0] + 0.3 × [2014/1/1 00:10] + 0.2 × [2014/1/1. 00:20]) ÷ (0.5 + 0.3 + 0.2) = [2014/1/1 00:07] is the weighted positioning time.
同様に、経度lon,緯度latであれば、[lon,lat]=(0.5×[140,40]+0.3×[141,41]+0.2×[142,42])÷(0.5+0.3+0.2)=[140.7,40.7]が重み付き経度,緯度となる。 Similarly, in the case of longitude lon and latitude lat, [lon, lat] = (0.5 × [140, 40] + 0.3 × [141, 41] + 0.2 × [142, 42]) / (0 .5 + 0.3 + 0.2) = [140.7, 40.7] is the weighted longitude and latitude.
このように、測位精度および測位データを式(5)に代入して計算することにより、測位データに含まれる経度・緯度や時間など、多次元情報の重み付き重心が算出される。なお、高度など、経度・緯度や時間以外の情報が測位データに含まれていてもよく、その場合にはその重心を更に追加してもよい。 In this way, the weighted centroid of multidimensional information such as longitude, latitude, and time included in the positioning data is calculated by substituting and calculating the positioning accuracy and the positioning data into Expression (5). In addition, information other than longitude / latitude and time, such as altitude, may be included in the positioning data, and in that case, the center of gravity may be further added.
次に、ステップS305において、対象クラスタの中心点di cを、ステップS304で算出した重み付き重心d’i cに移動する。ここでいう移動とは、対象クラスタの中心点di cを重み付き重心d’i cに変更することをいう。これにより、対象クラスタの中心が測位精度に応じた位置に移動することになる。 Next, in step S305, the center point d i c of the target cluster is moved to the weighted center of gravity d ′ i c calculated in step S304. Here, the movement means changing the center point d i c of the target cluster to the weighted center of gravity d ′ i c . As a result, the center of the target cluster moves to a position corresponding to the positioning accuracy.
次に、ステップS306において、未処理のクラスタがあるか否かを判定し、未処理のクラスタがある場合は、ステップS303へ戻り、全てのクラスタについてステップS303〜S305を行う。一方、未処理のクラスタがない場合は、ステップS307へ進む。 Next, in step S306, it is determined whether or not there is an unprocessed cluster. If there is an unprocessed cluster, the process returns to step S303, and steps S303 to S305 are performed for all clusters. On the other hand, if there is no unprocessed cluster, the process proceeds to step S307.
次に、ステップS307において、全てのクラスタについて、各クラスタの中心di cを重み付き重心d’i cに変更する処理を1回行ったので、ループ回数をインクリメントし、再度、全てのクラスタを未処理とする。 Next, in step S307, for all the clusters, the process of changing the center d i c of each cluster to the weighted centroid d ′ i c is performed once, so the loop count is incremented and all the clusters are again registered. Unprocessed.
次に、ステップS308において、現時点のループ回数が、事前に人手によって設定されたループ限界数閾値Iの回数に到達しているか否かを判定し、ループ限界数閾値Iに到達していない場合は、ステップS303へ戻り、今度は、ステップS305で移動した移動後の中心点を基準にしてステップS303〜S305を行う。 Next, in step S308, it is determined whether or not the current loop count has reached the number of loop limit threshold I set in advance by hand, and if the loop limit threshold I has not been reached, Returning to step S303, this time, steps S303 to S305 are performed based on the moved center point moved in step S305.
ここまでの処理において、例えば100個の測位データがある場合、ステップS302により、100個のクラスタが初期に生成され、ステップS303〜S305により、各クラスタの中心点が測位精度に応じた位置に移動するので、100個のクラスタが測位データの密な場所に集合することになる。一方、ループ限界数閾値Iに到達した場合は、ステップS309へ進む。 In the processing so far, for example, when there are 100 positioning data, 100 clusters are initially generated in step S302, and the center point of each cluster is moved to a position corresponding to the positioning accuracy in steps S303 to S305. Therefore, 100 clusters are gathered in a dense location of positioning data. On the other hand, if the loop limit number threshold I has been reached, the process proceeds to step S309.
次に、ステップS309において、集合したクラスタを併合することにより、測位データが密になっている場所の数だけクラスタを残す。具体的には、クラスタの中心点間の距離が、事前に人手によって設定されたクラスタ中心点間距離閾値C以下であるクラスタを併合する。なお、クラスタの中心点間距離は関数distを用いて計算する。また、併合した新しいクラスタの中心点は、式(5)に基づき重み付き重心により算出する。その際、インデックスの集合Kの要素は、併合対象となるクラスタに含まれる測位点の和集合を用いる。 Next, in step S309, the clusters are merged to leave clusters as many as the number of places where the positioning data is dense. Specifically, clusters having a distance between cluster center points equal to or less than the cluster center point distance threshold C set in advance by hand are merged. Note that the distance between the center points of the cluster is calculated using the function dist. Further, the center point of the merged new cluster is calculated from the weighted centroid based on the equation (5). At that time, the union set of positioning points included in the cluster to be merged is used as an element of the index set K.
次に、ステップS310において、クラスタ内の測位データ集合が、事前に人手によって設定された時間間隔閾値Sより大きい場合は、該当するクラスタを分割する。つまり、クラスタ内の測位点を時間昇順で順番に確認したとき、時間hと時間h+1とにおける時間間隔が時間間隔閾値Sより大きい場合には、時間hまでの測位データで構成されるクラスタと、時間h+1以降の測位データで構成されるクラスタとに分離する。その際、分離した2つの各クラスタの中心点の位置は、いずれも元のクラスタの中心点の位置を設定する。この処理により、ステップS309で距離的観点から併合されてしまった、行きと帰りで同じ場所となるようなクラスタを、時間的観点から区別することができる。
Next, in step S310, if the positioning data set in the cluster is larger than the time interval threshold S set in advance by hand, the corresponding cluster is divided. That is, when the positioning points in the cluster are confirmed in order in ascending order of time, if the time interval between the time h and the time h + 1 is larger than the time interval threshold S, a cluster composed of positioning data up to the time h, Separated into clusters composed of positioning data after
次に、ステップS311において、残存する各クラスタの中心点をユーザの滞留点としてそれぞれ出力し、滞留点DB15に保存する。滞留点DB15の構成例を図7に示す。図7の構成例では、あるユーザが1つの地点に滞留した場合を例示している。滞留点における滞留開始時間(begin_time)および滞留終了時間(end_time)は、それぞれ、クラスタに含まれる測位点の最小時間および最大時間で定義される。また、滞留時間(stay_time)は、滞留終了時間(end_time)から滞留開始時間(begin_time)を引くことで求められる。経度(longitude)および緯度(latitude)は、クラスタの中心点、すなわちユーザの滞留点である。
Next, in step S311, the center point of each remaining cluster is output as the user's stay point and stored in the
そして、ステップS312において、未処理のユーザIDがあるか否かを判定し、未処理のユーザIDがある場合は、ステップS301へ戻り、全てのユーザIDについてステップS301〜S311を行う。一方、未処理のユーザIDがない場合は、処理を終了する。 In step S312, it is determined whether there is an unprocessed user ID. If there is an unprocessed user ID, the process returns to step S301, and steps S301 to S311 are performed for all user IDs. On the other hand, if there is no unprocessed user ID, the process ends.
以上より、本実施の形態によれば、測位データ抽出部12により、各測位データにそれぞれ含まれる測位誤差を用いて各測位データの測位精度をそれぞれ算出し、滞留点抽出部14により、各測位データにおける各測位点をそれぞれクラスタとし、対象クラスタから半径R以内かつ時間T以内に含まれる複数の測位点を取得し、それら複数の測位点の測位精度および測位データを用いて測位精度を重みとする重み付き重心を算出し、その重み付き重心を対象クラスタの中心点とし、その中心点をユーザの滞留点として抽出するので、環境要因によって測位精度が変化する場合でも、精度の悪い測位点による影響で滞留点の場所がずれてしまうことを抑制できる。
As described above, according to the present embodiment, the positioning
また、本実施の形態によれば、測位データ補間部13により、測位時間間隔が測位時間間隔閾値より大きく、かつ、測位点間が測位距離間隔閾値より小さい測位データ間に新たな測位データを追加するので、測位データの測位取得間隔が変化する場合でも、滞留の可能性が高い地点に多くの測位データを補間できる。
Further, according to the present embodiment, the positioning
以上説明した大きく2つの処理を行うことにより、図8に示すように、ユーザが留まった滞留点を精度よく抽出することができる。 By performing the two processes described above, the staying point where the user stayed can be extracted with high accuracy as shown in FIG.
最後に、本実施の形態で説明した滞留点抽出装置1は、メモリやCPUを備えたコンピュータにより実現できる。また、滞留点抽出装置1の各動作をプログラムとして構築し、コンピュータにインストールして実行させることや、通信ネットワークを介して流通させることも可能である。
Finally, the stay
1…滞留点抽出装置
11…測位データDB
12…測位データ抽出部
13…測位データ補間部
14…滞留点抽出部
15…滞留点DB
S101〜S103、S201〜S207、S301〜S312…ステップ
1 ... Residence
DESCRIPTION OF
S101 to S103, S201 to S207, S301 to S312 ... step
Claims (5)
ユーザ端末から収集した位置情報を測位データとして記憶手段に記憶する第1のステップと、
前記記憶手段から各測位データを読み出して、前記各測位データにそれぞれ含まれる測位誤差データを用いて各測位データの測位精度をそれぞれ算出する第2のステップと、
前記各測位データにおける各測位点をそれぞれクラスタとし、それぞれのクラスタから一定領域内かつ測位時刻の間隔が一定時間内に含まれる複数の測位点をそれぞれ取得する第3のステップと、
前記複数の測位点の測位精度および測位データを用いて測位精度を重みとする重み付き重心を算出し、前記それぞれのクラスタの中心点とする第4のステップと、
各クラスタの中心点間の距離が一定距離以下であるクラスタを併合する第5のステップと、
併合されたクラスタに含まれる各クラスタの測位点を測位時刻の順番に並べ、隣り合う2つの測位点の測位時刻の時間間隔が一定時間以上の場合、前記併合されたクラスタを分離する第6のステップと、
併合されたクラスタ及び併合後に分離されたクラスタの中心点をユーザの滞留点として抽出する第7のステップと、
を有することを特徴とする滞留点抽出方法。 By computer
A first step of storing position information collected from a user terminal in a storage means as positioning data;
A second step of reading each positioning data from the storage means and calculating positioning accuracy of each positioning data using positioning error data included in each positioning data;
Wherein each positioning points in each measurement data and each cluster, a third step of spacing constant region and positioning time from each cluster to obtain a plurality of positioning points included within a predetermined time,
A fourth step of calculating a weighted centroid having a positioning accuracy as a weight using the positioning accuracy and positioning data of the plurality of positioning points, and setting it as a center point of each of the clusters;
A fifth step of merging clusters whose distance between the center points of each cluster is less than or equal to a certain distance;
A positioning point of each cluster included in the merged cluster is arranged in the order of the positioning time, and when the time interval between the positioning times of two adjacent positioning points is equal to or longer than a predetermined time, the sixth cluster is separated. Steps,
A seventh step of extracting the central point of the merged cluster and the cluster separated after the merge as a user residence point;
A method for extracting staying points, comprising:
前記記憶手段から各測位データを読み出して、前記各測位データにそれぞれ含まれる測位誤差データを用いて各測位データの測位精度をそれぞれ算出する算出手段と、
前記各測位データにおける各測位点をそれぞれクラスタとし、それぞれのクラスタから一定領域内かつ測位時刻の間隔が一定時間内に含まれる複数の測位点をそれぞれ取得する取得手段と、
前記複数の測位点の測位精度および測位データを用いて測位精度を重みとする重み付き重心を算出し、前記それぞれのクラスタの中心点とする算出手段と、
各クラスタの中心点間の距離が一定距離以下であるクラスタを併合する併合手段と、
併合されたクラスタに含まれる各クラスタの測位点を測位時刻の順番に並べ、隣り合う2つの測位点の測位時刻の時間間隔が一定時間以上の場合、前記併合されたクラスタを分離する分離手段と、
併合されたクラスタ及び併合後に分離されたクラスタの中心点をユーザの滞留点として抽出する抽出手段と、
を有することを特徴とする滞留点抽出装置。 Storage means for storing position information collected from the user terminal as positioning data;
Calculation means for reading each positioning data from the storage means and calculating positioning accuracy of each positioning data using positioning error data included in each positioning data;
Each positioning point in each positioning data as a cluster, respectively , an acquisition means for respectively acquiring a plurality of positioning points that are included in a certain area and within a certain time interval between positioning times from each cluster;
Calculating a weighted centroid with a positioning accuracy as a weight using the positioning accuracy and positioning data of the plurality of positioning points, and calculating means as a center point of each of the clusters;
A merging means for merging clusters whose distance between the center points of each cluster is equal to or less than a certain distance;
Separating means that separates the merged clusters when the positioning points of the clusters included in the merged cluster are arranged in the order of the positioning time, and the time interval between the positioning times of two adjacent positioning points is equal to or greater than a certain time. ,
An extraction means for extracting the central point of the merged cluster and the cluster separated after the merge as a staying point of the user;
A dwell point extraction device characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014047201A JP5930551B2 (en) | 2014-03-11 | 2014-03-11 | Residence point extraction method, residence point extraction device, and residence point extraction program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014047201A JP5930551B2 (en) | 2014-03-11 | 2014-03-11 | Residence point extraction method, residence point extraction device, and residence point extraction program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015170338A JP2015170338A (en) | 2015-09-28 |
JP5930551B2 true JP5930551B2 (en) | 2016-06-08 |
Family
ID=54202959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014047201A Active JP5930551B2 (en) | 2014-03-11 | 2014-03-11 | Residence point extraction method, residence point extraction device, and residence point extraction program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5930551B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020052243A1 (en) * | 2018-09-13 | 2020-03-19 | Huawei Technologies Co., Ltd. | Multimodal location sensing on a mobile phone |
CN111046895B (en) * | 2018-10-15 | 2023-11-07 | 北京京东振世信息技术有限公司 | Method and device for determining target area |
CN110705480B (en) * | 2019-09-30 | 2022-12-02 | 重庆紫光华山智安科技有限公司 | Target object stop point positioning method and related device |
CN110990455B (en) * | 2019-11-29 | 2023-10-17 | 杭州数梦工场科技有限公司 | Method and system for recognizing house property by big data |
CN116070035B (en) * | 2022-08-31 | 2023-10-20 | 荣耀终端有限公司 | Data processing method and electronic equipment |
CN115422480B (en) * | 2022-10-31 | 2023-03-24 | 荣耀终端有限公司 | Method, apparatus and storage medium for determining region of event venue |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5049745B2 (en) * | 2007-11-05 | 2012-10-17 | 株式会社エヌ・ティ・ティ・ドコモ | POSITION INFORMATION ANALYSIS DEVICE, INFORMATION DISTRIBUTION SYSTEM, AND POSITION INFORMATION ANALYSIS METHOD |
US9052204B2 (en) * | 2009-10-14 | 2015-06-09 | Nec Corporation | Behavior pattern extraction system, apparatus, method and recording medium storing program |
JP2012150648A (en) * | 2011-01-19 | 2012-08-09 | Nec Corp | Position estimation device, system, position estimation method, and program for position estimation |
-
2014
- 2014-03-11 JP JP2014047201A patent/JP5930551B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015170338A (en) | 2015-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5930551B2 (en) | Residence point extraction method, residence point extraction device, and residence point extraction program | |
JP6225257B2 (en) | Interest point clustering method and related apparatus | |
EP3085121B1 (en) | Identifying an entity associated with wireless network access point | |
KR101530304B1 (en) | Method and server for searching for nearby user in social network | |
US20160371394A1 (en) | Indoor localization using crowdsourced data | |
US20140193077A1 (en) | Image retrieval apparatus, image retrieval method, query image providing apparatus, query image providing method, and program | |
CN105409306A (en) | Method and apparatus for predicting location of mobile terminal | |
CN111757464B (en) | Region contour extraction method and device | |
US9846736B2 (en) | Data processing method, data processing device, data collecting method and information providing method | |
WO2014110204A1 (en) | Positioning and mapping based on virtual landmarks | |
CN108834077B (en) | Tracking area division method and device based on user movement characteristics and electronic equipment | |
JP6049186B2 (en) | Apparatus, program, and method for estimating staying place of user having portable terminal | |
US20170343638A1 (en) | Determining a location of a wireless device using fingerprinting | |
CN111611992B (en) | Method, device and computer equipment for determining interest surface | |
KR102304466B1 (en) | Method and system for building indoor positioning database and positioning indoor with indoor positioning database | |
CN112214677A (en) | Interest point recommendation method and device, electronic equipment and storage medium | |
Chen et al. | A wifi indoor localization method based on dilated cnn and support vector regression | |
JP2014160420A (en) | Activity condition processing device and activity condition processing method | |
EP3195629A1 (en) | Handling sensor information | |
JP2016149099A (en) | Anonymity processing method, anonymity processing program and anonymity processing device | |
US11006238B1 (en) | Method for profiling based on foothold and terminal using the same | |
JP5328714B2 (en) | Search and allocation device | |
JP6374843B2 (en) | Stagnant site extraction apparatus, method, and program | |
JP6009317B2 (en) | Skill evaluation method and apparatus | |
JP5484368B2 (en) | Target area display method and system based on position information from mobile terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150929 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151127 |
|
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: 20160421 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160425 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Ref document number: 5930551 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |