IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特許7227475映像検索プログラム、映像検索方法、及び映像検索装置
<>
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図1
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図2
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図3
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図4
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図5
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図6
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図7
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図8
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図9
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図10
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図11
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図12
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図13
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図14
  • 特許-映像検索プログラム、映像検索方法、及び映像検索装置 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-14
(45)【発行日】2023-02-22
(54)【発明の名称】映像検索プログラム、映像検索方法、及び映像検索装置
(51)【国際特許分類】
   G06F 16/787 20190101AFI20230215BHJP
   H04N 5/76 20060101ALI20230215BHJP
【FI】
G06F16/787
H04N5/76
【請求項の数】 4
(21)【出願番号】P 2019032904
(22)【出願日】2019-02-26
(65)【公開番号】P2020135835
(43)【公開日】2020-08-31
【審査請求日】2021-11-09
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100094525
【弁理士】
【氏名又は名称】土井 健二
(74)【代理人】
【識別番号】100094514
【弁理士】
【氏名又は名称】林 恒徳
(72)【発明者】
【氏名】松井 陽太郎
(72)【発明者】
【氏名】川田 匡邦
【審査官】松尾 真人
(56)【参考文献】
【文献】特開2014-143661(JP,A)
【文献】特開2007-164796(JP,A)
【文献】特開2013-134228(JP,A)
【文献】国際公開第2017/208370(WO,A1)
【文献】特開2010-160733(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
H04N 5/76
G09B 29/02
(57)【特許請求の範囲】
【請求項1】
位置情報と前記位置情報により表された位置において取得された映像データとが記録されたメモリを有する映像検索装置のコンピュータで実行される映像検索プログラムであって、
第1時刻に撮影された検索開始位置の位置情報と、前記第1時刻より後の時刻である第2時刻に撮影された特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの映像データを、前記検索開始位置における前記映像データから時刻を進めてスキップさせ、
次に、スキップさせた後の映像データが取得された取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、前記取得位置における前記映像データから時刻を進めてスキップさせ、これを(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返し、
前記特定位置における位置情報に基づいて、前記n次メッシュまでスキップさせた後の映像データから時刻を進めながら前記特定位置における映像データまでを前記メモリから検索し、前記特定位置における前記映像データを出力する
処理をコンピュータに実行させることを特徴とする映像検索プログラム。
【請求項2】
前記検索開始位置の位置情報と前記特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの第1の最短距離を算出し、前記第1の最短距離に応じた時間分の前記映像データを、前記検索開始位置における前記映像データからスキップさせ、
次に、前記取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む(n-1)次メッシュまでの第(n-1)の最短距離を算出し、前記第(n-1)の最短距離に応じた時間分の前記映像データを、前記取得位置における前記映像データからスキップさせ、これをn次メッシュまで繰り返す
ことを特徴とする請求項1記載の映像検索プログラム。
【請求項3】
位置情報と前記位置情報により表された位置において取得された映像データとが記録されたメモリを有する映像検索装置における映像検索方法であって、
第1時刻に撮影された検索開始位置の位置情報と、前記第1時刻より後の時刻である第2時刻に撮影された特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの映像データを、前記検索開始位置における前記映像データから時刻を進めてスキップさせ、
次に、スキップさせた後の映像データが取得された取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、前記取得位置における前記映像データから時刻を進めてスキップさせ、これを(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返し、
前記特定位置における位置情報に基づいて、前記n次メッシュまでスキップさせた後の映像データから時刻を進めながら前記特定位置における映像データまでを前記メモリから検索し、前記特定位置における前記映像データを出力する
ことを特徴とする映像検索方法。
【請求項4】
位置情報と前記位置情報により表された位置において取得された映像データとが記録されたメモリと、
映像検索部とを備え、
前記映像検索部は、
第1時刻に撮影された検索開始位置の位置情報と、前記第1時刻より後の時刻である第2時刻に撮影された特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの映像データを、前記検索開始位置における前記映像データから時刻を進めてスキップさせ、
次に、スキップさせた後の映像データが取得された取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、前記取得位置における前記映像データから時刻を進めてスキップさせ、これを(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返し、
前記特定位置における位置情報に基づいて、前記n次メッシュまでスキップさせた後の映像データから時刻を進めながら前記特定位置における映像データまでを前記メモリから検索し、前記特定位置における前記映像データを出力する
ことを特徴とする映像検索装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像検索プログラム、映像検索方法、及び映像検索装置に関する。
【背景技術】
【0002】
昨今、ドライブレコーダを搭載した車両が増加してきている。例えば、事故などのイベントが発生した際の映像がドライブレコーダに記録され、その映像を表示させることで、イベント発生の確認やその証明に用いたりすることが可能となる。
【0003】
ドライブレコーダには、例えば、カメラで撮影した映像の映像データとともに、GPS(Global Positioning System)を利用して取得した位置情報も記録される場合がある。そして、ドライブレコーダでは、例えば、位置情報を検索キーにして、その位置情報と一致する位置で撮影された映像を検索することも行われる。
【0004】
例えば、以下のような技術がある。すなわち、地理的範囲を示す検索条件に基づいて、画像データの公開位置情報の範囲が地理的範囲に含まれる画像データを検索結果に含め、画像データの出力を制限する必要があると判定された場合、該当する画像データの出力を制限するサーバ装置がある。
【0005】
この技術によれば、位置情報を隠蔽した画像の撮影地点が、類似画像に付加されている位置情報から特定されるのを回避することができる、とされる。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2015-49762号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ドライブレコーダは、例えば、1分ごとなど、短い時間間隔で、映像データを1つのファイル形式にしてメモリに記録し、数百個のファイルを記録することで、数時間分の映像データをメモリに記録する場合がある。
【0008】
そのため、ドライブレコーダにおいて所望の映像を検索する際、最も古い映像から順に検索すると、数百個のファイルを検索するため、検索に時間がかかる場合がある。
【0009】
上述した画像データの出力を制限する技術では、とくに、検索時間を考慮することなく、画像データを検索している。そのため、上述した技術では、画像データの検索に時間がかかる場合がある。
【0010】
そこで、一開示は、検索処理の高速化を図るようにした映像検索プログラム、映像検索方法、及び映像検索装置を提供することにある。
【課題を解決するための手段】
【0011】
一開示は、位置情報と前記位置情報により表された位置において取得された映像データとが記録されたメモリを有する映像検索装置のコンピュータで実行される映像検索プログラムであって、検索開始位置の位置情報と特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの映像データを、前記検索開始位置における前記映像データからスキップさせ、次に、スキップさせた後の映像データが取得された取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、前記取得位置における前記映像データからスキップさせ、これを(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返し、前記特定位置における位置情報に基づいて、前記n次メッシュまでスキップさせた後の映像データから前記特定位置における映像データまでを前記メモリから検索し、前記特定位置における前記映像データを出力する処理をコンピュータに実行させる映像検索プログラムにある。
【発明の効果】
【0012】
一開示によれば、検索処理の高速化を図ることが可能である。
【図面の簡単な説明】
【0013】
図1図1は通信システムの構成例を表す図である。
図2図2は映像検索装置の構成例を表す図である。
図3図3(A)はメッシュの大きさ、図3(B)はメッシュ間の関係例を夫々表す図である。
図4図4は1次メッシュの例を表す図である。
図5図5(A)は2次メッシュ、図5(B)は3次メッシュの例を夫々表す図である。
図6図6は動作例を表すフローチャートである。
図7図7は1次メッシュの例を表す図である。
図8図8は1次メッシュの例を表す図である。
図9図9は1次メッシュの例を表す図である。
図10図10は1次メッシュの例を表す図である。
図11図11は1次メッシュの例を表す図である。
図12図12はファイルデータの例を表す図である。
図13図13は1次メッシュの例を表す図である。
図14図14は1次メッシュの例を表す図である。
図15図15(A)は2次メッシュ、図15(B)は3次メッシュの例を夫々表す図である。
【発明を実施するための形態】
【0014】
以下、本発明を実施するための形態について説明する。なお、以下の実施例は開示の技術を限定するものではない。そして、各実施の形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0015】
[第1の実施の形態]
<通信システムの構成例>
図1は通信システム10の構成例を表す図である。
【0016】
通信システム10は、映像検索装置100-1~100-4と、基地局装置(以下、「基地局」と称する場合がある。)300、及びセンター400を備える。
【0017】
各映像検索装置100-1~100-4は、各車両200-1~200-4にそれぞれ搭載されている。映像検索装置100-1~100-4は、例えば、ドライブレコーダであって、車両200-1~200-4に搭載可能な車載装置である。映像検索装置100-1~100-4は、基地局300を介してセンター400から送信された位置情報を受信し、受信した位置情報と一致する位置情報を有する映像データを、内部のメモリに記録した映像データの中から検索する。そして、映像検索装置100-1~100-4は、検索した映像データを、検索結果として、基地局300を介してセンター400へ送信する。映像検索装置100-1~100-4は、車両200-1~200-4が移動しているときには、周囲の映像の映像データをメモリに記録している。映像検索装置100-1~100-4は、例えば、映像記録装置でもある。
【0018】
なお、映像検索装置100-1~100-4は、例えば、映像検索装置100-1~100-4を搭載した車両200-1~200-4が急ブレーキをかけたりするなどイベントが発生すると、そのときの映像の映像データを、センター400へ送信することも可能である。
【0019】
基地局300は、例えば、センター400から送信された有線信号を無線信号に変換して映像検索装置100-1~100-4へ送信し、映像検索装置100-1~100-4から送信された無線信号を有線信号に変換してセンター400へ送信する通信装置である。基地局300は、センター400と映像検索装置100-1~100-4との間で、例えば、有線信号と無線信号の変換に関するインタフェースの役割を果たす。
【0020】
センター400は、例えば、パーソナルコンピュータやサーバ装置などであって、位置情報を管理する管理装置でもある。例えば、道路上に落下物があった場合、その落下物がいつから存在したのか、どのような経緯で道路に落下したのかを調べるため、センター400は、落下物の位置を表す位置情報を、基地局300を介して各映像検索装置100-1~100-4へ送信する。センター400は、送信した位置情報に対応する映像の映像データを、各映像検索装置100-1~100-4から受信し、その映像を調査者が確認することで、その原因を調べることが可能となる。
【0021】
また、センター400は、例えば、車両200-1~200-4においてイベントが発生したときにも、各映像検索装置100-1~100-4からそのときの映像の映像データを受信し、調査者がその映像を確認することも可能である。
【0022】
なお、図1の例では、4台の映像検索装置100-1~100-4の例を表しているが、映像検索装置は1台でもよいし、2~3台、5台以上であってもよい。以下では、とくに断らない限り、映像検索装置100-1~100-4を、映像検索装置100と称する場合がある。また、車両200-1~200-4も、車両200と称する場合がある。
【0023】
<映像検索装置の構成例>
図2は映像検索装置100の構成例を表す図である。
【0024】
映像検索装置100は、カメラ101とセンサ102、GPS受信部103、記録部104、メモリ105、映像検索部106、及び無線部107を備える。
【0025】
カメラ101は、車両200周囲の映像を撮像して、映像データを取得し、映像データを記録部104へ出力する。そのため、カメラ101は、内部に撮像素子を備え、光の強さに応じた電気信号へ変換することで、例えば、RGB(Red Green Blue)の映像データを取得することが可能である。カメラ101は、1秒間でF映像フレーム枚(例えば、F=14fps(frame per second))のフレームレートで、映像データを取得することが可能である。
【0026】
センサ102は、例えば、速度センサや加速度センサ、ジャイロセンサなどである。センサ102は、例えば、映像検索装置100を搭載した車両200の速度情報や加速度情報、角速度情報などを検出し、検出した情報を記録部104へ出力する。また、センサ102には、例えば、タイマーも含まれてよい。この場合、センサ102は、タイマーで検出された時間情報を記録部104へ出力する。
【0027】
GPS受信部103は、人工衛星から送信されたGPS信号を受信し、受信したGPS信号に基づいて、車両200(又は映像検索装置100)の位置を表す位置情報を取得する。GPS受信部103は、取得した位置情報を記録部104へ出力する。本第1の実施の形態では、位置情報は、緯度と経度で表され、いずれも10進数で表される。位置情報の例としては、(緯度,経度)=(35.673033,139.633546)などがある。
【0028】
記録部104は、映像データと位置情報、時間情報、車両200の速度情報などをメモリ105へ記録(又は記憶)する。記録部104は、カメラ101で映像を撮影したときの位置情報をGPS受信部103から取得し、カメラ101で映像を撮影したときの時間情報と車両200の速度情報などをセンサ102から取得する。そして、記録部104は、取得した映像データ、位置情報、時間情報、速度情報などを、メモリ105へ記録する。例えば、記録部104は、1映像フレームごとに、位置情報をメモリ105へ記憶する。
【0029】
この際、記録部104は、映像データと位置情報などを、ある時間単位(例えば1分など)に1つのファイル形式のデータ(以下、「ファイル」と称する場合がある。)にまとめて、メモリ105へ記録する。そして、記録部104は、数十から数百のファイルをメモリ105に記録することで、1時間や2時間など、所定時間分の映像データなどを、メモリ105へ記録することが可能である。
【0030】
図12は、メモリ105に記録されたファイルの例を表す図である。詳細は動作例で説明するが、図12に示すように、所定時間分のファイルがメモリ105に記録可能である。
【0031】
図2に戻り、メモリ105は、例えば、HDD(Hard Disk Drive)や半導体メモリなどの記憶媒体である。メモリ105は、映像データと位置情報、時間情報、車両200の速度情報などを記憶する。
【0032】
映像検索部106は、無線部107などを介してセンター400から送信された特定位置の位置情報と一致する位置情報を有する映像データを、メモリ105から検索する。その際、映像検索部106は、メッシュを利用して映像データを検索する。メッシュは、例えば、緯度と経度とに基づいて、地図上のある地域を区分けした矩形領域のことである。メッシュは、例えば、1次メッシュから3次メッシュまであり、1次メッシュが最も大きく、3次メッシュが最も小さい。メッシュは、総務省により区分けされ、各種統計に利用される場合がある。メッシュと映像検索部106における処理の詳細は後述する。
【0033】
映像検索部106は、例えば、検索した映像データ(又は映像データを含むファイル)を無線部107へ出力する。
【0034】
無線部107は、基地局300から送信された無線信号を受信し、受信した無線信号に対して周波数変換処理や復調処理などを施して、センター400から送信された位置情報などを抽出する。無線部107は、抽出した位置情報を映像検索部106へ出力する。また、無線部107は、映像検索部106から出力された映像データなどに対して、変調処理や周波数変換処理などを施して、無線信号へ変換し、変換後の無線信号を基地局300へ送信する。
【0035】
なお、図2に示すように、記録部104と映像検索部106は、例えば、CPU(Central Processing Unit)110であってもよい。CPU110は、メモリ105からプログラムを読み出して、読み出したプログラムを実行することで、記録部104と映像検索部106の機能を実現することが可能となる。この場合、このような処理を実行するプログラムは、センター400から送信(又はダウンロード)されて、基地局300と無線部107を介して、CPU110によりメモリ105に記憶させることも可能である。CPUに代えて、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)やFPGA(Field-Programmable Gate Array)などのプロセッサやコントローラであってもよい。
【0036】
<メッシュについて>
図3(A)は1次メッシュから3次メッシュまでの大きさの例を表す図である。この大きさも、例えば、総務省で決められた大きさとなっている。
【0037】
第1次メッシュ(又は1次メッシュ。以下、「1次メッシュ」)は、緯度方向では1つのメッシュの大きさが「40分」、経度方向では1つのメッシュの大きさが「1度」である。緯度方向で1秒の長さを「30.8m」、経度方向で1秒の長さを「25.2m」とすると、1次メッシュの大きさは、緯度方向では、約73.9km、経度方向では、約90.7kmとなり、図3(A)に示すように一辺の長さは約80kmとなる。
【0038】
第2次メッシュ(又は2次メッシュ。以下、「2次メッシュ」)は、1つのメッシュの大きさが緯度方向で「5分」(=約9.2km)、経度方向で「7分30秒」(=約11.3km)であり、1辺の長さは約10kmとなる。
【0039】
第3次メッシュ(又は3次メッシュ。以下、「3次メッシュ」)は、1つのメッシュの大きさが緯度方向で「30秒」(=約0.92km)、経度方向で「45秒」(=約1.13km)であり、一辺の長さは約1kmとなる。
【0040】
図3(B)は、1次メッシュから3次メッシュまでのメッシュ間の関係例を表す図である。図3(B)に示すように、1次メッシュ内に2次メッシュが含まれ、2次メッシュ内に3次メッシュが含まれる関係となっている。
【0041】
このようなメッシュは、例えば、総務省によって、日本の地図上で予め決められた位置にはりめぐらされている。
【0042】
図4は1次メッシュの例、図5(A)は2次メッシュ、図5(B)は3次メッシュの例をそれぞれ表している。
【0043】
そして、1次メッシュから3次メッシュまでの各メッシュは、他のメッシュと識別可能なように固有のメッシュコードが割り当てられている。ある位置のメッシュコードは、その位置の緯度と経度を用いて算出可能である。算出式は動作例で説明する。
【0044】
本第1の実施の形態では、映像検索部106では、このようなメッシュを利用して映像を検索する。
【0045】
<動作例>
図6は、本第1の実施の形態における動作例を表すフローチャートである。本第1の実施の形態では、最初に、1次メッシュを利用して処理を行い、次に、2次メッシュを利用して処理を行い、最後に、3次メッシュを利用して処理を行う。メッシュの次数の変更はS21で行われる。以下、順番に説明することにする。
【0046】
<1.1次メッシュを利用した処理>
映像検索部106は、処理を開始すると(S10)、検索位置Pxを記録済映像の最古データ位置とする(S11)。
【0047】
図7は、メモリ105に記録された映像データが地図上でどこからどこまで記録されているかを表現したものである。図7における四角の枠は、1次メッシュにおける1つのメッシュを表している。上述したように、メモリ105に記憶された映像データには位置情報も記録されており、図7は、その位置情報を地図上で表現したものでもある。図7では、沼津市近辺の位置P1から、新宿パークタワーまでの映像データが、記録済映像の映像データとしてメモリ105に記録されている例を表している。
【0048】
この場合、メモリ105に記録された映像の中で、最も古いのは位置P1の映像データである。よって、映像検索部106は、検索位置Pxとして、位置P1を最古データ位置とする。以下では、位置P1を検索位置(又は検索開始位置)P1と称する場合がある。また、映像検索部106は、xを「1」に設定する。以後、検索位置PxはP1から順番に変更することになるが、その場合、例えば、P1が検索開始位置となり、それ以降のPxが検索位置としてもよい。
【0049】
なお、映像検索装置100は、本処理を行う前に、特定位置P0の位置情報も、センター400から受信しているものとする。図7には、地図上で表した特定位置P0の例も表している。本第1の実施の形態では、PO=(緯度,経度)=(35.673033,139.6333546)とする。
【0050】
図12は、メモリ105に記録されたファイルデータ(以下では、「ファイル」と称する場合がある。)の例を表す図である。例えば、各ファイルには、映像データとともに時間情報(t1~t0)が記録されている。そのため、映像検索部106は、メモリ105に記録された時間情報の中で最も古い時間情報を含むファイル内の位置情報(例えば、位置情報#1=P1)を、メモリ105から読み出して、その位置情報を検索位置P1としてもよい。
【0051】
ファイル内に含まれる位置情報は、上述したように、カメラ101で映像を撮影したときの、GPS受信部103で取得した位置情報であって、緯度と経度とがともに10進数で表されている。
【0052】
なお、映像検索部106は、メッシュの次数を「1」に設定し、設定した次数「1」をメモリ105に記憶する。
【0053】
図6に戻り、次に、映像検索部106は、特定位置P0における地域メッシュコード(以下、「メッシュコード」と称する場合がある。)M0を算出する。
【0054】
映像検索部106は、例えば、特定位置(緯度Y、経度X)P0における1次メッシュのメッシュコード(以下、「1次メッシュコード」と称する場合がある。)を以下の式を用いて算出する。
【0055】
[数1]
1次メッシュコード=M1y×100+M1y ・・・(1)
[数2]
M1y=INT(Y×(60.0÷40.0)) ・・・(2)
[数3]
M1x=INT(X-100) ・・・(3)
【0056】
INT()は、例えば、()内の数値を超えない最大の整数を返す関数を表す。
【0057】
例えば、P0=(緯度,経度)=(Y,X)=(35.673033,139.6333546)の場合、式(2)と式(3)を用いると、M1y=53、M1x=39となり、特定位置P0における1次メッシュコードは「5339」となる。
【0058】
例えば、映像検索部106は、メモリ105に記憶された式(1)から式(3)を読み出して、センター400から受信した特定位置POの緯度と経度とを式(2)と式(3)に代入し、その結果を式(1)に代入することで、特定位置P0の1次メッシュコードを算出する。
【0059】
図8は、特定位置P0を含む1次メッシュコードM0(=5339)の例を表す図である。
【0060】
図6に戻り、次に、映像検索部106は、xを「1」に設定し、検索位置P1における1次メッシュコードM1を算出する(S13)。P1=(Y,X)=(35.107108,138.866221)とすると、映像検索部106は、S12と同様に式(1)から式(3)を用いて、「5238」を算出する。検索位置P1における1次メッシュコードM1は、「5238」となる。図8は、検索位置P1における1次メッシュコードM1の例を表している。
【0061】
図6に戻り、次に、映像検索部106は、M0=M1か否かを判定する(S14)。そして、映像検索部106は、M0=M1でないとき(S14でNo)、検索位置P1から、特定位置P0を含む1次メッシュまでの距離S1を算出する(S18)。
【0062】
S14では、映像検索部106は、例えば、特定位置P0と同一の1次メッシュ内に検索位置P1が含まれるか否かを判定している。図8の例では、MO=5339、M1=5238であるため、映像検索部106は、S14でNoと判定する。そのため、図8の例では、映像検索部106は、検索位置P1から、1次メッシュコードM0の1次メッシュまでの距離S1を算出することになる。
【0063】
図9は、距離S1の例を表す図である。例えば、映像検索部106は、以下の処理により、距離S1を算出する。
【0064】
すなわち、映像検索部106は、最初に、特定位置P0における1次メッシュの頂点位置M01~M04の各緯度と経度をメモリ105から読み出す。そして、映像検索部106は、検索位置P1から、各頂点位置M01~M04までの各距離を、P1,M01~M04の各経度と緯度とに基づいて計算し、その中で最も短い距離をS1として算出する。図9の例では、検索位置P1からは、頂点位置M03までの距離が最も短いので、映像検索部106は、その距離をS1として算出する。
【0065】
上述した距離S1の算出は、一例である。例えば、映像検索部106は、1次メッシュコードM0から、1次メッシュコードM0の緯度と経度とを算出し、検索位置P1の緯度と経度と、算出した緯度と経度とに基づいて、その距離S1を算出してもよい。
【0066】
いずれの場合も、距離の計算に際して、映像検索部106では、緯度と経度とを用いている。例えば、検索位置P1の10進表示の緯度と経度を(YP1,XP1)、頂点位置M03の10進表示の緯度と経度を(YM03,XM03)とすると、映像検索部106は、以下の式(4)により、距離S1を計算することが可能である。
【0067】
[数4]
距離S1=√{(YM03-YP1)×(30.8/3600)}+{(XM03-XP1)×(25.2/3600)} ・・・(4)
【0068】
例えば、映像検索部106は、メモリ105に記憶された式(4)を読み出して、検索位置P1の緯度と経度、頂点位置M03の緯度と経度とを式(4)に代入することで、距離S1を算出することが可能である。頂点位置M03以外の他の頂点位置についても、式(4)において、頂点位置M03に代えて、他の頂点位置の緯度と経度とを代入することで、距離S1を得ることが可能となる。
【0069】
図6に戻り、次に、映像検索部106は、距離S1の移動にかかる所要時間T1を算出する(S19)。例えば、車両200の速度をVmax(例えば、180km/hなど)とし、映像検索部106は、メモリ105に記憶されたVmaxをメモリ105から読み出して、S18で算出した距離S1を速度Vmaxで除算することで、所要時間T1を算出する。
【0070】
図10は、検索位置P1から出発した車両200が、図10に示す道路を速度Vmaxで走行すると仮定した場合、所要時間T1経過後の車両200の位置を表す。図10において、T1における丸印の位置に車両200が位置する。
【0071】
図6に戻り、次に、映像検索部106は、記録済映像を、所要時間T1分スキップした映像データの位置にPxを変更する(S20)。例えば、図10の例では、メモリ105に記憶された映像データを、検索位置P1における映像データから所要時間T1経過後の位置(T1の丸印)における映像データまで、スキップさせる。
【0072】
図12は、メモリ105に記憶された映像データのファイルの例を表す図である。図12に示す例では、映像検索部106は、検索位置P1における最古の映像データ#1を含むファイル#1から、所要時間T1分の映像データ(映像データ#1から映像データ#(m1-1)までの映像データ)をスキップさせる。スキップ後は、映像検索部106は、メモリ105において、映像データ#m1を含むファイル#m1へとアクセスすることになる。このファイル#m1に含まれる位置情報#m1により表される地図上の位置が、図10におけるT1の丸印の位置となる。
【0073】
図11は、地図上におけるスキップの例を表す図である。図11に示すように、図10ではT1の丸印で表された位置が、新たな検索位置P2として変更される。例えば、映像検索部106は、図12に示すように、所要時間T1経過後のファイル#m1から位置情報#m1を抽出し、抽出した位置情報#m1を、xをインクリメントして、検索位置P2に変更する。
【0074】
図6に戻り、そして、処理はS20からS13へ移行して、映像検索部106は、上述した処理を繰り返す。図11の例では、例えば、映像検索部106は、以下の処理を行う。
【0075】
すなわち、映像検索部106は、検索位置P2に対して、検索位置P2の1次メッシュコードM2を算出する(S13)。この場合、映像検索部106は、メモリ105から読み出した検索位置P2の位置情報#m1(緯度と経度)を、式(1)から式(3)に代入するなどして、検索位置P2の1次メッシュコード「5239」を算出する。映像検索部106は、検索位置P2を含む1次メッシュのメッシュコード「5239」と特定位置P0の1次メッシュコード「5339」とが一致しないため(S14でNo)、検索位置P2から特定位置P0までの距離S2を算出する。
【0076】
図13は、距離S2の例を表す図である。この場合、映像検索部106は、検索位置P2の緯度と経度と、1次メッシュコードM0のメッシュの頂点位置M03の緯度と経度とに基づいて、距離S2を算出する。そして、映像検索部106は、距離S2を車両200の速度Vmaxで除算した所要時間T2を算出し(S19)、検索位置P2の映像データから、所要時間T2分の映像データをスキップさせる(S20)。図13の例では、映像検索部106は、距離S2にかかる所要時間T2を算出し、その時間分、映像データをスキップすることになる。図12の例では、映像データ#m1から、所要時間T2分の映像データをスキップし、時間tm2における映像データ#m2(を含むファイルデータ#m2)へスキップする。
【0077】
図14は、検索位置P2から所要時間T2経過した後の、車両200の位置P3の例を表す図である。映像検索部106は、図12に示すように、ファイル#m1から所要時間T2経過後のファイル#m2へスキップし、ファイル#m2から位置情報#m2を抽出することで、検索位置P2の位置情報(緯度と経度)を取得する。そして、映像検索部106は、xをインクリメントして、検索位置P2をP3へ変更する。
【0078】
図6に戻り、次に、映像検索部106は、検索位置P3の1次メッシュコードM3を、式(1)から式(3)に、位置情報#m2を代入して算出する(S13)。この場合、映像検索部106は、検索位置P3の1次メッシュコードM3として、「5339」を算出したものとする。
【0079】
次に、映像検索部106は、特定位置P0を含む1次メッシュコードM0と、検索位置Pxを含む1次メッシュのメッシュコードMxとが一致するか否かを判定し(S14)、一致するとき(S14でYes)、地域メッシュ(以下、「メッシュ」と称する場合がある。)の次数が「3」より小さいか否かを判定する(S15)。
【0080】
図14の例では、M0=M3となっているため、映像検索部106は、S14でYesと判定し、メッシュの次数は「1」のため、S15でNoと判定する。例えば、映像検索部106は、メモリ105に記憶されたメッシュの次数に基づいて、S15を判定する。
【0081】
図6に戻り、映像検索部106は、メッシュの次数が「3」より小さいとき(S15でYes)、メッシュの次数をインクリメントして変更する(S21)。図14の例では、映像検索部106は、メッシュの次数を「1」から「2」へ変更する。例えば、映像検索部106は、メモリ105に記憶されたメッシュの次数を「1」から「2」へ変更し、「2」をメモリ105に記憶する。本処理以降は、2次メッシュを利用した処理となる。
【0082】
<2.2次メッシュを利用した処理>
図6に戻り、処理は、再びS12へ移行し、映像検索部106は、特定位置P0を含む2次メッシュのメッシュコード(以下、「2次メッシュコード」と称する場合がある。)M0を算出する(S12)。映像検索部106は、例えば、以下の式(5)から(7)を用いて、特定位置P0(緯度Y,経度X)を含む2次メッシュコードを算出する。
【0083】
[数5]
2次メッシュコード=1次メッシュコード×100+M2y+M2x ・・・(5)
[数6]
M2y=INT(((Y×60.0)-(M1y×40.0))÷5.0) ・・・(6)
[数7]
M2x=INT(((X-100)-M1x)×(60.0÷7.5)) ・・・(7)
【0084】
例えば、映像検索部106は、特定位置P0の2次メッシュコードとして、「533945」を算出する。
【0085】
次に、映像検索部106は、検索位置P3の2次メッシュコードを算出する(S13)。例えば、映像検索部106は、式(5)から式(7)を用いて、検索位置P3の2次メッシュコードを算出し、「533920」を得る。
【0086】
次に、映像検索部106は、特定位置P0のメッシュコードと検索位置P3のメッシュコードが一致するか否かを判定する(S14)。例えば、映像検索部106は、特定位置P0の2次メッシュコード「533945」と検索位置P3の2次メッシュコード「533920」とは一致しない。そのため、映像検索部106は、一致しないと判定し(S14でNo)、S18からS19までの処理を行う。
【0087】
すなわち、映像検索部106は、検索位置P3から特定位置P0の3次メッシュまでの距離S3を算出し、距離S3の移動にかかる所要時間T3を算出し、所要時間T3分の映像データをスキップする(S18~S19)。
【0088】
図15(A)は、車両200が検索位置P3における映像データから、T3分の映像データがスキップされて、検索位置P4へと変更された場合の例を表している。
【0089】
この場合も、映像検索部106は、例えば、以下の処理を行う。すなわち、映像検索部106は、検索位置P3から特定位置P0の3次メッシュの各頂点位置までの距離のうち、最小距離となる距離をS3とし、速度Vmaxをメモリ105から読み出して、距離S3を速度Vmaxで除算する。映像検索部106は、メモリ105にアクセスして、検索位置P3のファイル(又は映像データ)#m2から、所要時間T3分のファイル(又は映像データ)をスキップし、ファイル#m3へスキップする。映像検索部106は、所要時間T3経過後のファイル#m3から位置情報#m3を抽出することで、変更後の検索位置P4の位置情報(緯度と経度)を取得する(S20)。
【0090】
そして、映像検索部106は、検索位置P4を含むメッシュコードを算出する(S13)。例えば、映像検索部106は、S20で取得した検索位置P4の緯度と経度とを、メモリ105から読み出した、式(5)から式(7)に代入するなどすることで、検索位置P4の2次メッシュコード「533945」を算出する。
【0091】
次に、映像検索部106は、特定位置P0の2次メッシュコードと検索位置P4の2次メッシュコードとを比較すると(S14)、一致するため、S14でYesと判定し、メッシュの次数は「2」であるため、S15でYesと判定する。
【0092】
そして、映像検索部106は、メッシュの次数をインクリメントして、「2」から「3」へ変更する(S21)。例えば、映像検索部106は、変更後のメッシュの次数「3」をメモリ105に記憶する。
【0093】
図15(A)に示すように、検索位置P4が特定位置P0の2次メッシュ内に位置するため、以降では、映像検索部106は、3次メッシュを利用した処理を行うことになる。
【0094】
<3.3次メッシュを利用した処理>
図6に戻り、処理は再びS12へ移行し、映像検索部106は、特定位置P0の3次メッシュのメッシュコード(以下、「3次メッシュコード」と称する場合がある。)M0を算出する。映像検索部106は、例えば、以下の式(8)から式(10)を用いて、特定位置P0=(緯度,経度)=(Y,X)に対する3次メッシュコードを算出する。
【0095】
[数8]
3次メッシュコード=2次メッシュコード×100+M3y×10+M3x ・・・(8)
[数9]
M3y=INT((((Y×60.0)-(M1y×40.0))-(M2y×5.0))×(60.0/30.0)) ・・・(9)
[数10]
M3x=INT((((X-100)-M1x)×60.0)-(M2x×7.5))×(60.0/45.0)) ・・・(10)
【0096】
特定位置PO=(35.673033,139.6333546)の3次メッシュコードは、「53394510」となる。
【0097】
式(8)から式(9)も、例えば、メモリ105に記憶されており、映像検索部106は、本処理の際にメモリ105から式(8)から式(10)を読み出して、特定位置P0の緯度と経度などを代入することで、特定位置P0における3次メッシュコードを算出する。
【0098】
次に、映像検索部106は、検索位置P4の3次メッシュコードM4を算出する(S13)。例えば、映像検索部106は、検索位置P4の3次メッシュコードM4として、「53394541」を算出する。
【0099】
そして、映像検索部106は、特定位置P0の3次メッシュコードと検索位置P4の3次メッシュコードとが異なるため(S14でNo)、検索位置P4から特定位置P0までの距離S4を算出する(S18)。この場合も、例えば、映像検索部106は、特定位置P0の3次メッシュの4つの各頂点と、検索位置P4までの各距離のうち最短距離を計算することで、距離S4を算出する。
【0100】
映像検索部106は、距離S4の移動にかかる所要時間T4(=S4/Vmax)を算出し、記録済映像の検索位置P4における映像データを、所要時間T4分後の位置Pxまでスキップさせる(S19,S20)。図15(B)は、検索位置P4から所要時間T4分スキップさせた後の車両200の位置P5の例を表す図である。映像検索部106は、この位置P5を、変更後の検索位置Pxとして、以降の処理を行う。
【0101】
図12は、所要時間T4スキップ後のファイルの例を表している。映像検索部106は、所要時間T4分のファイル(又は映像データ)をスキップして、ファイル#m4へアクセスする。
【0102】
図6に戻り、次に、映像検索部106は、検索位置P5の3次メッシュコードを算出する(S13)。例えば、映像検索部106は、検索位置P5の3次メッシュコードとして、「53394510」を算出する。
【0103】
映像検索部106は、特定位置P0の3次メッシュコードと検索位置P5の3次メッシュコードが一致するため(S14でYes)、メッシュの次数が「3」より小さいか否かを判定する(S15)。この場合、メッシュの次数は「3」であるため、映像検索部106は、S15でNoと判定する。
【0104】
S15でNoと判定すると、映像検索部106は、検索位置P5から線形検索を実施する(S16)。図15(B)の例では、映像検索部106は、検索位置P5からは、ファイルを順次検索し、特定位置P0の位置情報を有するファイルを検索することになる。
【0105】
図12は、所要時間T4分スキップ後、検索位置P5の位置情報を有するファイル#m4から順次線形検索が行われる例を表している。図12に示すように、映像検索部106は、ファイル#m4から、特定位置P0のファイル#0までを、スキップすることなく、順番に検索していくことになる。
【0106】
映像検索部106は、例えば、線形検索を行って特定位置P0のファイルを検索すると、特定位置P0のファイルを、無線部107へ出力する。或いは、映像検索部106は、特定位置P0のファイルから映像データを抽出し、抽出した映像データを、無線部107へ出力する。これにより、検索結果として、特定位置P0の映像データが映像検索装置100からセンター400へ送信され、センター400では、指定した特定位置P0の映像データを、取得することが可能となる。
【0107】
そして、映像検索部106は、一連の処理を終了する(S17)。
【0108】
このように、映像検索装置100は、検索開始位置P1の位置情報と特定位置P0の位置情報とに基づいて、検索開始位置P1から特定位置P0を含む1次メッシュまでの映像データを、検索開始位置P1における映像データからスキップさせる。そして、映像検索装置100は、スキップさせた後の映像データが取得された取得位置(又は検索位置)Pxの位置情報と特定位置P0の位置情報とに基づいて、映像データをスキップさせる処理を繰り返し行う。すなわち、映像検索装置100は、取得位置Pxから、特定位置P0を含む1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、取得位置Pxにおける映像データからスキップさせ、これを、(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返す。
【0109】
上述した動作例では、n=3として、3次メッシュまで繰り返す処理を行ったが、n=4として、3次メッシュより大きさが小さい4次メッシュまで繰り返してもよい。この場合、S15におけるメッシュの次数については、「3」を「4」に変更し、「4」より小さいか否かにより判定すればよい。さらに、5次メッシュ、6次メッシュ、…など、5次より大きい次数のメッシュ(次数が大きくなるほど、メッシュの大きさは小さくなる)まで繰り返してもよく、この場合、S14の「3」を「n」(nは5以上の整数)とすればよい。あるいは、n=2として、映像検索装置100は、2次メッシュまで繰り返すようにして、3次メッシュの処理を行わないようにしてもよい。
【0110】
そして、映像検索装置100は、特定位置P0における位置情報に基づいて、スキップさせた後の映像データから特定位置P0における映像データまでを、メモリ105から検索し、特定位置P0における映像データをメモリ105から読み出して、出力する。
【0111】
これにより、例えば、図12に示すように、本映像検索装置100は、ファイル#1からファイル#m4までスキップして、ファイル#m4から順番にファイル#0まで検索することが可能となる。従って、ファイル#1から順番にファイル#0までを検索する場合と比較して、本映像検索装置100では、ファイル(又は映像データ)をスキップしているため、検索処理の高速化を図ることが可能となる。
【0112】
以上まとめると、付記のようになる。
【0113】
(付記1)
位置情報と前記位置情報により表された位置において取得された映像データとが記録されたメモリを有する映像検索装置のコンピュータで実行される映像検索プログラムであって、
検索開始位置の位置情報と特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの映像データを、前記検索開始位置における前記映像データからスキップさせ、
次に、スキップさせた後の映像データが取得された取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、前記取得位置における前記映像データからスキップさせ、これを(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返し、
前記特定位置における位置情報に基づいて、前記n次メッシュまでスキップさせた後の映像データから前記特定位置における映像データまでを前記メモリから検索し、前記特定位置における前記映像データを出力する
処理をコンピュータに実行させることを特徴とする映像検索プログラム。
【0114】
(付記2)
前記検索開始位置の位置情報と前記特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの第1の最短距離を算出し、前記第1の最短距離に応じた時間分の前記映像データを、前記検索開始位置における前記映像データからスキップさせ、
次に、前記取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む(n-1)次メッシュまでの第(n-1)の最短距離を算出し、前記第(n-1)の最短距離に応じた時間分の前記映像データを、前記取得位置における前記映像データからスキップさせ、これをn次メッシュまで繰り返す
ことを特徴とする付記1記載の映像検索プログラム。
【0115】
(付記3)
前記検索開始位置における前記映像データからスキップさせた後の映像データが取得された第1の検索位置を含む1次メッシュと、前記特定位置を含む1次メッシュとが一致しないとき、前記第1の検索位置の位置情報と前記特定位置の位置情報とに基づいて、前記第1の検索位置から前記映像データをスキップさせ、スキップ後の前記映像データが取得された検索位置を含む1次メッシュと、前記特定位置を含む1次メッシュとが一致するまでスキップを繰り返し、
前記検索位置を含む1次メッシュと前記特定位置を含む1次メッシュとが一致するとき、前記検索位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)次メッシュまでの映像データを、前記検索位置における前記映像データからスキップさせる
ことを特徴とする付記1記載の映像検索プログラム。
【0116】
(付記4)
前記取得位置における前記映像データからスキップさせた後の映像データが取得された第2の検索位置を含む(n-1)次メッシュと、前記特定位置を含む(n-1)次メッシュとが一致しないとき、前記第2の検索位置の位置情報と前記特定位置の位置情報とに基づいて、前記第2の検索位置から前記映像データをスキップさせ、スキップ後の前記映像データが取得された検索位置を含む(n-1)次メッシュと、前記特定位置を含む(n-1)次メッシュとが一致するまでスキップを繰り返し、
前記検索位置を含む(n-1)次メッシュと、前記特定位置を含む(n-1)次メッシュとが一致するとき、前記検索位置から前記特定位置を含む前記n次メッシュまでの映像データを、前記検索位置における前記映像データからスキップさせる
ことを特徴とする付記1記載の映像検索プログラム。
【0117】
(付記5)
前記検索位置からスキップさせた後の映像データが取得された第3の検索位置を含むn次メッシュと、前記特定位置を含むn次メッシュとが一致しないとき、前記第3の検索位置の位置情報と前記特定位置の位置情報とに基づいて、前記第3の検索位置から前記映像データをスキップさせ、スキップ後の映像データが取得された検索位置を含むn次メッシュと、前記特定位置を含むn次メッシュとが一致するまでスキップを繰り返し、
前記検索位置を含むn次メッシュと、前記特定位置を含むn次メッシュとが一致するとき、前記n次メッシュまでスキップさせた後の前記映像データから前記特定位置における映像データまでを前記メモリから検索することを特徴とする付記1記載の映像検索プログラム。
【0118】
(付記6)
前記第1の検索位置を含む1次メッシュのメッシュコードと、前記特定位置を含む1次メッシュのメッシュコードとに基づいて、前記第1の検索位置を含む1次メッシュと、前記特定位置を含む1次メッシュとが一致するか否かを判定する
ことを特徴とする付記3記載の映像検索プログラム。
【0119】
(付記7)
前記第2の検索位置を含む(n-1)次メッシュのメッシュコードと、前記特定位置を含む(n-1)次メッシュのメッシュコードとが一致するか否かを判定する
ことを特徴とする付記4記載の映像検索プログラム。
【0120】
(付記8)
前記位置情報と前記映像データとを含むファイル形式のデータが所定時間ごとに前記メモリに記憶されることを特徴とする付記1記載の映像検索プログラム。
【0121】
(付記9)
前記ファイル形式のデータに含まれる時間情報に基づいて、前記映像データをスキップすることを特徴とする付記8記載の映像検索プログラム。
【0122】
(付記10)
位置情報と前記位置情報により表された位置において取得された映像データとが記録されたメモリを有する映像検索装置における映像検索方法であって、
検索開始位置の位置情報と特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの映像データを、前記検索開始位置における前記映像データからスキップさせ、
次に、スキップさせた後の映像データが取得された取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、前記取得位置における前記映像データからスキップさせ、これを(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返し、
前記特定位置における位置情報に基づいて、前記n次メッシュまでスキップさせた後の映像データから前記特定位置における映像データまでを前記メモリから検索し、前記特定位置における前記映像データを出力する
ことを特徴とする映像検索方法。
【0123】
(付記11)
位置情報と前記位置情報により表された位置において取得された映像データとが記録されたメモリと、
映像検索部とを備え、
前記映像検索部は、
検索開始位置の位置情報と特定位置の位置情報とに基づいて、前記検索開始位置から前記特定位置を含む1次メッシュまでの映像データを、前記検索開始位置における前記映像データからスキップさせ、
次に、スキップさせた後の映像データが取得された取得位置の位置情報と前記特定位置の位置情報とに基づいて、前記取得位置から前記特定位置を含む前記1次メッシュより小さいサイズの(n-1)(nはn≧2を満たす整数)次メッシュまでの映像データを、前記取得位置における前記映像データからスキップさせ、これを(n-1)次メッシュより小さいサイズのn次メッシュまで繰り返し、
前記特定位置における位置情報に基づいて、前記n次メッシュまでスキップさせた後の映像データから前記特定位置における映像データまでを前記メモリから検索し、前記特定位置における前記映像データを出力する
ことを特徴とする映像検索装置。
【符号の説明】
【0124】
10:通信システム 100(100-1~100-4):映像検索装置
101:カメラ 103:GPS受信部
104:記録部 105:メモリ
106:映像検索部 107:無線部
200(200-1~200-4):車両
300:基地局装置 400:センター
P0:特定位置 P1:検索位置(検索開始位置)
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15