【文献】
伊藤正彦,ソーシャルメディア時系列解析のための3次元情報可視化,[online],2016年 4月,URL,http://www.tkl.iis.u-tokyo.ac.jp/new/uploads/publication_file/file/763/VSJ36.pdf
【文献】
伊藤正彦,外2名,マイクロブログストリーム中の位置参照表現に着目した実世界イベントの時空間可視化,[online],2016年 3月 2日,https://db-event.jpn.org/deim2016/papers/327.pdf,URL,https://db-event.jpn.org/deim2016/papers/327.pdf
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0016】
本発明の実施の形態の一つを以下に示す。
【0017】
図1は本実施の形態における可視化装置 101の構成を示す。可視化装置 101は以下の機能を具備する。すなわち、画面 102、入力装置 103、3D表示部 104、地図生成部 110、ヒートマップ生成部A 111、ヒートマップ生成部B 112、ヒートマップ生成部K 113、入力制御部 114、不透明度計算部 115を具備し、さらに、地
図DB 120、マスタDB-A 121、マスタDB-B甲 122、マスタDB-B乙 123、角度変数記憶部 124のデータおよび変数を具備する。
【0018】
画面102は、ディスプレイ等の出力装置である。入力装置 103は、マウスやタッチパッド、キーボード、ボタンなどであってよく、三次元表示の視点、とりわけ、画面 102に表示される対象を眺める角度(視点角度)を変更する指示を入力する装置である。入力された角度は、角度変数記憶部 124が保持する。
【0019】
3D表示部 104は、地図生成部 110、ヒートマップ生成部A 111、ヒートマップ生成部B 112およびヒートマップ生成部K 113からのAPI(Application Programming Interface)指示で、入力された角度から見た三次元画像を生成して画面 102に表示する機能を有する。3D表示部 104は、例えばHTML5、WebGL、three.js、openlayers.jsなどの公開されているソフトウェア・公開されている技術を用いて実現することができる。
【0020】
地
図DB 120は、最下層となる可視化対象が示されたベース画像を生成するためのデータを保持する。ここでは、地
図DB 120は、可視化対象の表示領域での地図を保持する。
【0021】
マスタDB-A 121は、地
図DB 120に対応する表示領域における、ある種類のデータのヒートマップ画像(個別ヒートマップ画像)を生成するためのデータを保持する。ここでは、マスタDB-A 121は、地
図DB 120に対応する表示領域における、道路舗装損傷に関する点検結果の舗装損傷データを保持する。
【0022】
マスタDB-B甲 122およびマスタDB-B乙 123は、地
図DB 120に対応する表示領域における、他の種類のデータのヒートマップ画像(個別ヒートマップ画像)を生成するためのデータを保持する。ここでは、マスタDB-B甲 122は、地
図DB 120に対応する表示領域における、道路舗装の設計の際に予測した交通量データを保持する。マスタDB-B乙 123は、地
図DB 120に対応する表示領域における、道路舗装の施工からの経過年数データを保持する。
【0023】
入力制御部114(制御部)は、角度(視点角度)の入力を受け付け、角度変数記憶部124に記憶する。地図生成部110(ベース画像生成部)は、最下層となる可視化対象が示されたベース画像(ここでは、地図画像)を生成する。
【0024】
ヒートマップ生成部A 111およびヒートマップ生成部B 112(個別画像生成部)は、 データの種類毎に、当該種類のデータの個別ヒートマップ画像を生成する。ヒートマップ生成部K 113(重ね合わせ画像生成部)は、複数の種類の個別ヒートマップ画像のうち、少なくとも2種類の個別ヒートマップ画像を重ね合わせた重ね合わせヒートマップ画像を生成する。
【0025】
不透明度計算部 115は、入力された角度を用いて、少なくとも2種類の個別ヒートマップ画像および重ね合わせヒートマップ画像のそれぞれの不透明度を算出する。3D表示部 104は、ベース画像と、種類毎の個別ヒートマップ画像とを多層化し、入力された角度で眺めた3次元画像を生成する。また、3D表示部 104(表示部)は、少なくとも2種類の個別ヒートマップ画像および重ね合わせヒートマップ画像を対応する不透明度を用いて調整し、3次元画像を生成する。
【0026】
地図生成部 110、ヒートマップ生成部A 111、ヒートマップ生成部B 112、ヒートマップ生成部K 113、入力制御部 114、不透明度計算部 115についての動作は、以下で詳述する。
【0027】
図2は画面102に表示される画面表示の内容を示す。本実施の形態では、全4層で三次元的に画面表示を行う。ベースとなる最下層の層(201)には地図(ベース画像)を表示する。ここでは、データとしてN=2(種類)のデータを表示することとする。
【0028】
層A(202)には実測面、すなわち、マスタDB-A 121の点検結果の舗装損傷データをヒートマップとして表示する。層B(204)には設計予測面、すなわち、マスタDB-B甲 122の交通量と、マスタDB-B乙 123の経過年数との積で表される値を表示対象のデータとし、ヒートマップとして表示する。さらに、層K(203)は重ね合わせヒートマップ、すなわち、層Aのデータと層Bのデータの重なりを表示する。図示する例では、下から、ベース層(201)、層B(204)、層K(203)、層A(202)の順に配置した多層構造としている。
【0029】
図2は画面表示の一例を示したものにすぎず、実際にこのような画面を描画する処理は、可視化装置 101内の各機能が、以下に詳述する動作を行うことによってなされるものである。
【0030】
図3はフローチャートを示す。まず、可視化装置 101が処理を開始すると(手順300)、地図生成部 110が、地
図DB 120を読み取ってベースとなる層(201)に表示する画像を生成する(手順301)。
【0031】
次に、ヒートマップ生成部A 111が、マスタDB-A 121から道路舗装損傷に関する点検結果の舗装損傷データを読み取って、
図2に示す層A(202)の表示領域の各点の舗装損傷に関するデータ値を1〜10の10段階に当てはめた上でヒートマップ画像を生成し、層A(202)に表示する画像として設定する。また、ヒートマップ生成部A 111は、10段階に当てはめた各点の値をヒートマップ生成部K 113に受け渡す(手順302)。
【0032】
ヒートマップ画像の生成は前述のopenlayers.jsが基本機能として有している。ヒートマップ生成部A 111は、APIを呼び出すプログラムを記述することでopenlayers.jsを用いてヒートマップ画像の生成を実現できる。その際、ヒートマップ生成部A 111は、損傷度合いの小さい段階は白色で、損傷度合いの大きい段階は黄色(第1の色調)で、段階的に色分けするようにAPIパラメータを指定してヒートマップ画像の生成を行うこととする。
【0033】
なお、上記10段階への当てはめは、例えば一定以上破損の大きい状況を段階10とし、それ以下の値については正比例で配分するなどの計算を行ってもよい。
【0034】
次に、ヒートマップ生成部B 112が、マスタDB-B甲 122から道路舗装の設計の際に予測した交通量データを読み取り、マスタDB-B乙 123から道路舗装の施工からの経過年数データを読み取り、
図2に示す層B(204)の表示領域の各点のそれぞれの地点についてこれら2つのデータの値の積(掛け算)を計算することで、各点における設計予測に関する計算値(設計予測値)を求めて、当該計算値を1〜10の10段階に当てはめた上でヒートマップ画像を生成し、層B(204)に表示する画像として設定する。また、ヒートマップ生成部B 112は、10段階に当てはめた各点の値をヒートマップ生成部K 113に受け渡す(手順303)。
【0035】
その際、ヒートマップ生成部B 112は、上記の計算値すなわち設計予測値が小さい段階は白色で、大きい段階は緑色(第2の色調)で、段階的に色分けするようにAPIパラメータを指定してヒートマップ画像の生成を行うこととする。ヒートマップ生成部B 112は、ヒートマップ生成部A 111が指定した色調(黄色)とは異なる色調(緑色)で指定する。
【0036】
なお、上記10段階への当てはめは、例えば各点の上記計算値の対数を取って対数値を算出する。また、予め、一定年数経過×一定交通量の対数を取って算出した対数値を基準値として定めておく。そして、前記計算値の対数値が前記基準値と同じか上回る場合を段階10とし、それ以下の計算値の対数値については正比例で段階を配分するなどの計算を行ってもよい。
【0037】
次に、ヒートマップ生成部K 113が、前記手順302および手順303で受け渡された、表示領域の各点の2種類のデータの値に基づき、以下に示す彩色方針に基づいて、層K(203)に表示するヒートマップ画像を生成する(手順304)。
【0038】
図4は表示対象となる二種類のデータの関係を示す。ヒートマップ生成部K 113は、ヒートマップ上の各点について、重ね合わせの元となる二種類のデータの値から、重ね合わせ後の点の色合いを求める彩色処理を行うが、本図はその各点における彩色処理の考え方を示すものである。
【0039】
すなわち、ヒートマップ生成部K 113は、層K(203)に表示するヒートマップ画像の各点を、各段階に当てはめた設計予測データと舗装損傷の実測データとを縦横の2軸で表される色彩平面上に当てはめ、当該色彩平面の4つの象限のそれぞれに異なる色調を割り当て、原点からの距離に応じて当該色調の濃度を変化させる。
【0040】
具体的には、縦軸405は層A(202)で表されるデータの値すなわち実測面の値を示し、横軸406は層B(204)で表されるデータの値すなわち設計予測面の値を示す。ヒートマップ画像上の各点は、
図4で示される二次元平面上のいずれか一点に対応することとなる。
【0041】
ここで例えば、「交通量×経過年数」が小さいにも関わらず「点検結果の舗装損傷」が大きい地点は、施工不良や地盤沈下など深刻な問題が生じている恐れがあり、緊急の調査などが必要であると推定されるため、重ね合わせヒートマップ画像において赤色で彩色することで注意喚起を促すこととする。すなわち、象限402は赤色を基調とし、実測面の値が破損大の異常値すなわち上になるほど濃い赤となるように彩色する。
【0042】
すなわち、重ね合わせヒートマップ画像において、設計予測データが所定の閾値以上に良好で、実測データが所定の閾値より不良である箇所を、所定の色彩で着色または点滅させることで、注意喚起を促す。
【0043】
その他の象限については以下のようにする。象限403は白一色とする。象限401は黄色を基調とし、実測面の値が破損大すなわち上になるほど濃い黄となるように彩色する。象限404は緑色を基調とし、設計予測面の値が予測大すなわち右になるほど濃い緑となるように彩色する。
【0044】
上記示したように、それぞれの象限ごとに色調は固定し、色の濃さのみを変化させることによって、微妙な色合いを人間が判別することが困難であるという課題を解決し読み取りを容易にしつつ、かつ、特に注意喚起すべき象限には色の混合法則に頼ることなく目立つ色調を配することができ注意喚起性が向上するという利点が、本実施の形態によって得られる。
【0045】
なお配色の法則や彩色の際の濃度の設定方針などは上記は一例であり、その他の実施も可能である。例えばデータの種類や応用分野によっては、象限401がもっとも深刻な状況であるケースも考えられるため、象限401と象限402の配色を入れ替えて象限401に赤色を配してもよい。
【0046】
また、色相・明度・彩度などで色を表した際に、明度や彩度を単独で変更したり、あるいは両方同時に変更させるなどの彩色を行ってもよい。
【0047】
あるいは、象限401の彩色は、上になるほど濃くなる法則ではなく、右になるほど濃くなる法則を採用してもよい。
【0048】
さらには、X,Y二つの変数を入力とする任意の計算式によって濃度を定めてもよい。例えば、任意に定めた測定方法に基づく原点からの距離に応じて当該色調の濃度を変化させてもよく、具体的には以下の算出方法を用いてもよい。例えば象限401上の点について算出する例を示す。各象限に、予め基準線410を設けておく。基準線410はY=Xで表される直線であってもよいし、傾きが1以外の直線であってもよい。基準線410の上に乗っている点(例えば、点411)については、原点からの距離412を、色の濃さ(濃度)として用いてよい。
【0049】
あるいは、基準線410の上に載っていない点(例えば、点413)については、基準線410に垂線414を下ろし、垂線414と基準線410と交点から原点までの距離415と、垂線414の長さ416とを用いて、これら二つの値を用いた計算式、例えば(距離415)÷(1+垂線の長さ416×定数c)のようにして色の濃さを求めてもよい。上記色の濃さは、明度や彩度に反映させてよい。
【0050】
以上説明した
図4の彩色処理を行うことで、2種類のデータの組み合わせが有する意味を強調表示することができる。例えば上記例においては、「交通量×経過年数」が大きく、かつ、「点検結果の舗装損傷」も大きい地点は、損傷自体は大きいものの予定通りであり、緊急の対応を必要としない。一方で、「交通量×経過年数」が小さいにも関わらず「点検結果の舗装損傷」が大きい地点は、施工不良や地盤沈下など深刻な問題が生じている恐れがあり、緊急の調査などが必要であると推定される。
【0051】
このような2種類のデータをヒートマップとして重ね合わせ表示しようとする場合、本実施形態では深刻な問題と思われる箇所ほど目立つ色(例えば赤)で表示して、人間への注意を促すことができる。これにより、本実施形態では、従来の単純な色の混合でヒートマップを表示する場合と比較して、複数の種類のデータの組み合わせから導出される要着目点に対して視覚的な強調を行うことで、各種類のデータを容易に視認することができる。
【0052】
次に、不透明度計算部 115は、角度変数記憶部 124に記憶された角度に基づいて、層A(202)、層B(204)、および層K(203)のそれぞれの不透明度を算出して、算出した各不透明度を3D表示部 104に受け渡す(手順310)。不透明度は、透けて見える度合いを示すものであり、不透明度が 0 %の場合は当該層が完全に透明になって見えなくなり、不透明度が 100 %の場合は当該層が不透明になるため、下位の層が見えなくなる。
【0053】
不透明度の基本的な算出方針は、角度変数が90度の場合、すなわち真上から見た際にはベースとなる層(201)の上に層K(203)のみが重なって見えることとし、角度が水平に近づくにつれて徐々に層K(203)が透き通って見える代わりに層A(202)および層B(203)の不透明度が上がってはっきりと目視できるように、角度に応じて描画の際の不透明度を変更させる。
【0055】
層K(203)の不透明度(%)=角度変数÷90×50
層A(202)の不透明度(%)=層B(204)の不透明度(%)=(1−角度変数÷90)×50
なお、ベースとなる層(201)の不透明度は常に100%とする。また、層K(203)、層A(202)および層B(204)の不透明度の最大値を50%とするのは、ベースとなる層(201)が透けて見えるようにするためである。
【0056】
図5は不透明度計算の例を示す。上記の計算式例を図示すると、
図5(a)のグラフ501のようになる。関数502は層K(203)の不透明度を表し、関数503は層A(202)および層B(204)の不透明度を表し、いずれも上述の式をグラフにプロットしたものである。
【0057】
なお本発明の範囲はこれに限るものではなく、角度に応じて非線形に不透明度を変化させてもよいし、あるいは、非連続的に不透明度を変化させてもよい。
【0058】
図5(b)のグラフ511は非連続的に不透明度を変化させる例である。関数512は層K(203)の不透明度を表し、関数513は層A(202)および層B(204)の不透明度を表し、閾値t (514)を境として不透明度の値が0%→50%あるいは50%→0%のように非連続的に入れ替わる関数として、本例では定義されている。本例は、換言すると、ある角度の閾値tを超えた際には層K(203)のみが表示され、逆にそれを下回る際には層A(202)および層B(204)のみが表示されるという実装を行った場合に相当している。
【0059】
次に3D表示部 104は、手順302、303および304で生成(描画)された層A(202)、層B(204)、層K(203)を、それぞれに対して指定された不透明度で調整し、ベースとなる層(201)と重ね合わせて、角度変数記憶部 124に記憶された角度変数の方向から眺める視点で多層化し、描画して3次元画像を生成し、画面 102に表示する(手順311)。
【0060】
その後、入力装置 103から眺める角度を変更する入力指示を受け付けると(手順320)、入力制御部 114は入力された角度で角度変数記憶部 124の角度変数を更新し(手順321)、再び手順310から以降の手順を繰り返すことで画面102に表示される描画内容の更新を行う(制御322)。
【0061】
以上に述べた可視化装置 101を用いれば、複数種類のデータを単一の画面に三次元ヒートマップ(多層ヒートマップの重ね合わせ)によって表示しつつ、表示角度を変更することによって、複数種類のデータを重ね合わせた結果を視認することも可能であるし、かつ、それぞれ個々の種類のデータ値についての視認も容易に行うことができるという利点が得られる。
【0062】
さらに、複数データの組み合わせから導出される要着目点に対して、異常状態を示す色彩などによって視覚的強調を行いながらデータを重ね合わせ表示できるという利点が得られる。
【0063】
また、本実施形態では、1つの種類のヒートマップ画像は、可視化対象の設計時に予測される設計予測データのヒートマップ画像であり、もう1つの種類のヒートマップ画像は、可視化対象の現状を示す実測データのヒートマップ画像であり、重ね合わせヒートマップ画像において、設計予測データが所定の閾値以上に良好で、実測データが所定の閾値より不良である箇所を、所定の色彩で着色または点滅させる。
【0064】
具体的には、前記設計予測データは、道路舗装の劣化を予測するデータであり、前記実測データは、道路舗装の現状を示すデータである。
【0065】
このように、道路舗装の劣化や損傷をヒートマップ画像で表示することで、損傷が激しい区間や地域が色の濃い領域として地図上に表示されることとなるため、例えば自治体による道路保守が行き届いていない地域や、震災等により舗装に大きな損傷被害が広がる地域などが、従来のアイコン等による表示に比べて格段に分かりやすく表示できるという利点が得られる。
【0066】
また、道路舗装の損傷に関しては、施工後の年数が経過するほど損傷が進むことはもちろんであるが、トラックなどの大重量車両の交通量が多いほど急速に損傷が進むことも併せて知られている。このため舗装の設計時には、交通量を予め予測し、それに見合った舗装の施工を行ったり補修計画に反映させる運用がなされている。このような補修計画に反するような区間や地域は、施工不良や地盤沈下など深刻な問題が生じている恐れがあり、本実施形態ではそのような区間や地域を容易に視認することができる。
【0067】
なお、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
【0068】
例えば、本実施の形態では、画面 102 が表示する3次元画像は、
図2に示すように、ベースとなる層(201)と、層B(204)および層A(202)(個別ヒートマップ画像)と、層K(203)とを多層化したものである。本発明の範囲はこれに限るものではなく、ベースとなる層(201)と、層B(204)および層A(202)(個別ヒートマップ画像)のみを多層化したものであってもよい。この場合においても、複数種類のデータを単一の画面にヒートマップによって表示しつつ、それぞれの種類のデータを容易に視認させることができる。
【0069】
本実施の形態においては、地図上の位置を動かすことはできず、眺める角度を変更する機能のみを示した。本発明の範囲はこれに限るものではなく、一般的な地図ソフトの使い勝手と同様に、マウスやホイールの操作等によって地図の位置をスクロールしたり、地図のズームインやズームアウトができることとしてもよい。その実現に際しては、
図3の手順320で入力操作があった場合に、入力制御部 114は角度の変更指示か、上記地図の移動を伴う操作(スクロール、ズームイン、ズームアウト)かを判定し、地図の移動を伴う操作の場合には制御330のように手順301に戻り、各層の画像の生成処理を再び実行することで、当該機能を実現可能である。
【0070】
本実施の形態においては、表示するデータをN=2(種類)とした。本発明の範囲はこれに限るものではなく、3種類(3層)以上のヒートマップを重ね合わせて表示してもよい。例えば、交通量データ×経過年数データを計算して層Bにまとめて表示するのではなく、前者を層Bに表示し後者を層Cに表示する実装としてもよい。その際には、重ね合わせヒートマップ層Kの計算の際に、層Aから層Cまでの3つのデータに基づいて計算を行ってもよい。
【0071】
本実施の形態においては、表示する各層は静止画でなくてよく、動画あるいはアニメーション処理を組み込んでもよい。特に、重ね合わせヒートマップ層Kにおいて「特に注意喚起すべき」領域には、点滅などの動きを取り入れて視認性を向上させる表示としてもよい。3D表示部 104の実施に用いるとした上記ソフトウェア群は、このような動きのある層(レイヤ)の三次元重ね合わせを基本機能として有しており、これらの表示形態は実現可能である。
【0072】
本実施の形態においては、三次元表示を基本とし、視点を真上に設定した場合(角度変数が90度の場合)には重ね合わせヒートマップ層Kのみが表示される実施とした。本発明の範囲はこれに限るものではなく、視点を常に真上に固定した形態としてもよい。すなわち、重ね合わせヒートマップ層Kの表示機能のみを有する実施としてもよい。この場合においても、複数種類のデータを単一の画面にヒートマップによって表示しつつ、それぞれの種類のデータを容易に視認させることができる。
【0073】
また、重ね合わせヒートマップ層Kが見えている状態で、画面上でマウスオーバーの操作を行うとマウスカーソル周辺だけが層Aあるいは層Bのような特定層のデータ表示に切り替わってもよい。その際、どのデータ表示に切り替えるかをアイコン選択によってユーザが指定できてもよい。あるいは、表示形式切り替えボタンの押下あるいはスワイプ操作によって、重ね合わせ表示のビューから、層Aだけが見えているビューや層Bだけが見えているビューに切り替わってもよい。あるいは、ユーザが無操作の場合に、視点が空中で回転したり次々切り替わるなどして動的な視覚効果が得られる実施としてもよい。これらの副次的なビューを採り入れることで、個々のデータ値の視認性がさらに向上するという利点を得ることができる。
【0074】
上記説明した、可視化装置 101には、例えば、CPU(Central Processing Unit、プロセッサ)と、メモリと、ストレージ(HDD:Hard Disk Drive、SSD:Solid State Drive)と、通信装置と、入力装置と、出力装置とを備える汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPUがメモリ上にロードされた所定のプログラムを実行することにより、可視化装置 101の各機能が実現される。また、可視化装置 101用のプログラムは、HDD、SSD、USBメモリ、CD-ROM、DVD-ROM、MOなどのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。