JP6514145B2 - 埋め込みグラフ単純化方法、埋め込みグラフ単純化装置及びコンピュータプログラム - Google Patents

埋め込みグラフ単純化方法、埋め込みグラフ単純化装置及びコンピュータプログラム Download PDF

Info

Publication number
JP6514145B2
JP6514145B2 JP2016102513A JP2016102513A JP6514145B2 JP 6514145 B2 JP6514145 B2 JP 6514145B2 JP 2016102513 A JP2016102513 A JP 2016102513A JP 2016102513 A JP2016102513 A JP 2016102513A JP 6514145 B2 JP6514145 B2 JP 6514145B2
Authority
JP
Japan
Prior art keywords
vertex
embedded graph
embedded
computer
processing step
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
JP2016102513A
Other languages
English (en)
Other versions
JP2017211706A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016102513A priority Critical patent/JP6514145B2/ja
Publication of JP2017211706A publication Critical patent/JP2017211706A/ja
Application granted granted Critical
Publication of JP6514145B2 publication Critical patent/JP6514145B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Description

本発明は、埋め込みグラフ単純化方法に関する。
ネットワークや地理情報学、画像工学などの諸分野において、埋め込みグラフというデータ構造が存在する。埋め込みグラフとは、複数の頂点とその頂点同士を結ぶ辺の集合であるグラフと、その頂点位置を合わせて定義したものである。例えばネットワークでは、ネットワークノードを頂点、ネットワークリンクを辺に対応させてグラフを構成できる。このとき、ネットワークノードの物理的な位置や、ネットワークを可視化する際のノード座標を頂点位置に対応させると、埋め込みグラフを見出すことができる。また、地理情報学であれば、国境や県境、海岸線、湖岸線等の境界線データは一般に、埋め込みグラフとしてデータが保持されている。境界線上に密に頂点をプロットして辺を結ぶことで、境界線を表現している。また、画像工学分野であれば、形状や領域に関するデータの保持に埋め込みグラフが使用される。例えばベクター画像におけるオブジェクト形状、深度マップにおける深度境界線、自然画像の被写体形状やテクスチャ領域形状等のデータは、埋め込みグラフとして表現される。形状や領域の境界上に頂点をプロットすることで、境界線を辺により表現している。
以上で例示した埋め込みグラフにおいては、埋め込みグラフの形状をできるだけ保ちつつ、頂点数や辺数を可能な限り削減して単純化すること(以下、埋め込みグラフの単純化、あるいは単に単純化と呼ぶ)に大きなメリットがある。
ネットワークにおいては、頂点数、辺数が多いほど詳細なデータを表現できる一方で、一見してネットワーク構成の概要を掴むことが困難になり、加えてデータ量が膨大になるため描画に大きな負荷がかかる。このネットワークについての埋め込みグラフを単純化できれば、ネットワーク構成を視覚的に分かりやすく提示でき、頂点数、辺数を減らしてデータ圧縮し、描画の負荷を低減することが可能になる。地理情報学においては、境界線上に密に頂点をプロットすることで正確に境界線を表現するが、データ量は膨大になってしまう。境界線データを単純化することで、データ量を削減して伝送や蓄積が可能な他、境界を簡略した視覚的に分かりやすい地理情報を生成することができる。また画像工学においては、頂点数、辺数が多いほど形状や領域のデータを詳細に保持して正確に表現可能である一方で、データ量が膨大になり、伝送や蓄積に要する符号量が増えてしまう。この形状や領域を単純化できれば、表現の正確性を可能な限り保ちながら、頂点数、辺数を削減して符号量を削減できる。
折れ線グラフや多角形等、非常に簡単な埋め込みグラフを単純化する有効な手法として、Ramer−Douglas−Peucker法(非特許文献1以下RDP法)がある。以下、折れ線分にRDP法を適用する場合のアルゴリズムを説明する。この手法では、(1)まず折れ線分の両端頂点を結んだ線分を初期の折れ線分とする。(2)現在の折れ線分と最も距離の離れた頂点を現在の折れ線分に順次加える。(3)最も離れた頂点との距離が予め定めた許容誤差ε(>0)よりも小さくなった時点で処理を終了する。
図9は、RDP法の動作例を示している。図9において、白丸及び破線は入力した埋め込みグラフの折れ線成分を示し、黒丸及び実線は単純化した埋め込みグラフの折れ線成分を示す。図9(A)は初期状態(状態ST0)である。初期状態では、折れ線分の端点を繋いだ線分を初期の折れ線分E1とする。次のステップで加える頂点は、折れ線分E1からもっとも離れた頂点V1である。図9(B)に示すように、状態ST1では、頂点V1を折れ線成分E1に加えて、新しい折れ線成分E2とする。次のステップで加える頂点は、折れ線分E2からもっとも離れた頂点V2である。図9(C)に示すように、状態ST2では、頂点V2を折れ線成分E2に加えて、新しい折れ線成分E3とする。次のステップで加える頂点は、折れ線分E3からもっとも離れた頂点V3である。図9(D)に示すように、状態ST3では、頂点V3を折れ線成分E3に加えて、新しい折れ線成分E4とする。状態ST3では、全ての頂点が折れ線分E4から許容誤差以内の距離となり、ここで、単純化処理は終了となる。
多角形の場合は両端点の代わりに、多角形頂点から適切に2点を選んで初期の折れ線分と設定することで、折れ線分のRDP法を適用可能である。さらにRDP法では、使用者が指定した特定の頂点を、入力埋め込みグラフと同じ頂点位置で、必ず含むように単純化を行うことも可能である。初期の折れ線分作成時に指定頂点を加え、処理を開始すれば良い。
RDP法は形状近似の精度の高さ、実装の容易さなどから最もよく使用される方法である。例えばコンピュータビジョン向けのコンピュータプログラムライブラリであるOpenCVでは、被写体形状の単純化や輪郭の近似処理としてRDP法が採用されている。
上述したRDP法では以下の2つの問題が生じる。(1)折れ線分や多角形を除く、複雑な埋め込みグラフへの適用が困難である。(2)単純化した埋め込みグラフの頂点位置は、元の埋め込みグラフの頂点位置を厳密に守るため、頂点位置を微小に変位させてより良い単純化を算出することができない。
上述の(1)の問題について説明する。上述したネットワークや地図・交通解析、画像・映像符号化の例でも見られるように、一般に埋め込みグラフは分岐、複数のループ、非結合グラフ等を持ち、折れ線分や多角形よりも複雑な構造を持つ。RDP法はこのような複雑なグラフを単純化することができない。あるいは折れ線や多角形に分解する前処理と分解したグラフを結合する後処理を行えば、複雑なグラフについてもRDP法を適用できる。しかし分岐数が多い複雑なグラフでは分解数が増えて端点が増えるため、複雑なグラフほど頂点や辺の削減が困難になる。
上述の(2)の問題について説明する。RDP法では元の埋め込みグラフの頂点を選択して新しい埋め込みグラフを構成するため、新しい埋め込みグラフの頂点位置は元の埋め込みグラフと同じ頂点位置に必ず限定される。一般に、頂点位置が微小に変位することを許容すればより良い単純化をすることができるが、RDP法ではこれを算出できない。また同じ理由で、使用者が特定頂点に課す制約についても、入力と同じ頂点位置であることしか指定できない。
上記事情に鑑み、本発明は、複雑な埋め込みグラフにおいても頂点や辺を削減可能で、頂点位置が元の埋め込みグラフの頂点位置に限定されない、埋め込みグラフ単純化方法を提供することを目的としている。
本発明の一態様は、頂点の位置情報を有する埋め込みグラフを単純化する埋め込みグラフ単純化方法であって、各頂点に接続する辺の成す角度が小さくなるように頂点位置を直線整列する埋め込みグラフ直線整列処理ステップと、前記直線整列された埋め込みグラフから、接続する辺の成す角度が小さい頂点を選定し、前記接続する辺の成す角度が小さい頂点を取り除いて単純化された埋め込みグラフを生成する不要頂点除去処理ステップと、を有する埋め込みグラフ単純化方法である。
本発明の一態様は、上記の埋め込みグラフ単純化方法であって、前記埋め込みグラフ直線整列処理ステップは、直線整列のための凸最適化問題を立式して出力する凸最適化問題立式処理ステップと、前記凸最適化問題立式処理ステップで出力された直線整列のための凸最適化問題を求解して、直線整列された頂点位置を求める凸最適化問題求解処理ステップと、前記凸最適化問題求解処理ステップで求められた頂点位置に頂点を置き換える頂点情報置換処理ステップとを有し、前記凸最適化問題立式処理ステップは、直線整列された埋め込みグラフの頂点位置を変数としたときに、前記変数が元の頂点位置とどれだけ乖離しているかを評価する頂点位置変化損失関数と、前記変数を用いた埋め込みグラフが直線整列されている度合いを評価する直線整列正則化関数とを線形結合して目的関数として立式するとともに、前記変数の可動範囲を制約条件として立式して、前記直線整列のための凸最適化問題として出力する、埋め込みグラフ単純化方法である。
本発明の一態様は、上記の埋め込みグラフ単純化方法であって、前記不要頂点除去処理ステップは、各頂点に接続する辺の角度の大きさを評価し、前記各頂点に接続する辺の角度の大きさが閾値を下回る頂点を選定して除去する、埋め込みグラフ単純化方法である。
本発明の一態様は、上記の埋め込みグラフ単純化方法であって、前記凸最適化問題立式処理ステップは、直線整列された埋め込みグラフの頂点位置を変数としたときに、前記変数が元の頂点位置とどれだけ乖離しているかを評価する頂点位置変化損失関数を生成する頂点位置変化損失関数立式処理ステップと、前記変数を用いた埋め込みグラフが直線整列されている度合いを評価する直線整列正則化関数を生成する直線整列正則化関数立式処理ステップと、前記直線整列正則化関数にトレードオフパラメータを乗算する乗算処理ステップと、前記頂点位置変化損失関数と、前記トレードオフパラメータが乗算された直線整列正則化関数とを線形結合して目的関数を生成する加算処理ステップと、前記頂点位置の範囲に関する制約条件を生成する制約条件立式処理ステップと、前記目的関数と前記制約条件とを合わせて凸最適化問題を生成する凸最適化問題生成処理ステップと、を有する埋め込みグラフ単純化方法である。
本発明の一態様は、上記の埋め込みグラフ単純化方法であって、前記頂点位置変化損失関数立式処理ステップは、前記直線整列された埋め込みグラフの頂点位置を示す変数と元の頂点位置との絶対値残差又は二乗残差を評価して頂点位置変化損失関数を生成し、前記直線整列正則化関数立式処理ステップは、各頂点に接続する辺の成す角度を評価して前記直線整列正則化関数を生成する、埋め込みグラフ単純化方法である。
本発明の一態様は、上記の埋め込みグラフ単純化方法であって、前記直線整列正則化関数立式処理ステップは、各頂点に接続する辺の大きさと向きを表す辺ベクトルを生成する辺ベクトル生成線形写像と、前記辺ベクトルの成す角度を核ノルムで評価する辺ベクトル角評価関数との合成により、直線整列正則化関数を生成する、埋め込みグラフ単純化方法である。
本発明の一態様は、頂点の位置情報を有する埋め込みグラフを単純化する埋め込みグラフ単純化装置であって、各頂点に接続する辺の成す角度が小さくなるように頂点位置を直線整列する埋め込みグラフ直線整列処理部と、前記直線整列された埋め込みグラフから、接続する辺の成す角度が小さい頂点を選定し、前記接続する辺の成す角度が小さい頂点を取り除いて単純化された埋め込みグラフを生成する不要頂点除去処理部と、を備える埋め込みグラフ単純化装置である。
本発明の一態様は、上記の埋め込みグラフ単純化方法を、コンピュータに実行させるためのコンピュータプログラムである。
本発明によれば、複雑な埋め込みグラフにおいても頂点や辺を削減可能で、頂点位置が元の埋め込みグラフの頂点位置に限定されず、埋め込みグラフ単純化が可能となる。
本発明の一実施形態による埋め込みグラフ単純化装置の構成を示すブロック図である。 本発明の一実施形態による埋め込みグラフ直線整列部のブロック図である。 本発明の一実施形態による直線整列のための凸最適化問題立式部のブロック図である。 本発明の一実施形態による埋め込みグラフ単純化処理のフローチャートである。 本発明の一実施形態による埋め込みグラフ直線整列処理のフローチャートである。 本発明の一実施形態による直線整列のための凸最適化問題立式処理のフローチャートである。 本発明の一実施形態による埋め込みグラフ単純化装置における入力とする埋め込みグラフの例を示す図である。 本発明の一実施形態による埋め込みグラフ単純化装置における直線整列された埋め込みグラフの例を示す図である。 埋め込みグラフ単純化方法であるRDP法の概略を示す図である。
以下、本発明の実施の形態について図面を参照しながら説明する。図1は、本発明の一実施形態による埋め込みグラフ単純化装置1の構成を示すブロック図である。埋め込みグラフ単純化装置1は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、プログラムを実行する。埋め込みグラフ単純化装置1は、プログラムの実行によって埋め込みグラフ直線整列部11及び不要頂点除去部12を備える装置として機能する。なお、埋め込みグラフ単純化装置1の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
図1において、埋め込みグラフ単純化装置1は、元の埋め込みグラフG=(V,E)とトレードオフパラメータλとを入力して、単純化された埋め込みグラフG=(V,E)を出力する。
ここで、Vは元の埋め込みグラフGの頂点情報で、各頂点の頂点ID及び頂点の位置の情報を持つ。データ構造の例としてD次元座標空間上に分布するN個の頂点を考えると、各頂点に「1」から「N」の整数の頂点IDを任意に付与して、各頂点の座標値を頂点IDの順に並べたN行D列行列をVとすれば、上記頂点情報の要件を満たす。本実施形態では、この例に倣って、元の頂点情報VをN行D列行列として記述するが、等価に変換可能な別のデータ構造を用いても良い。Eは元の埋め込みグラフGの辺情報で、どの頂点を接続して各辺を成しているかという情報を持つ。辺情報Eのデータ構造の例としては、隣接リスト、隣接行列、接続行列、ラプラシアン行列、Tutte行列等があるが、互いに等価に変換できることから、いずれを用いても良い。
は単純化された埋め込みグラフGの頂点情報であり、Eは単純化された埋め込みグラフGの辺情報である。単純化された埋め込みグラフGの頂点情報V及び辺情報Eは、上述の元の埋め込みグラフGの頂点情報V及び辺情報Eと同様のデータ構造を持つが、頂点数や辺数は減少しているものとする。
トレードオフパラメータλは正の実数値であり、大きいほど単純化の度合いを強くし、埋め込みグラフの頂点数が減少するよう調整することができる。
図1に示すように、埋め込みグラフ単純化装置1は、埋め込みグラフ直線整列部11と、不要頂点除去部12とを備える。
埋め込みグラフ直線整列部11は、元の埋め込みグラフG=(V,E)と、トレードオフパラメータλとを入力して、直線整列された埋め込みグラフG’=(V’,E)を出力する。
埋め込みグラフG’の辺情報Eは、元の埋め込みグラフGの辺情報Eと同一である。頂点情報V’は、元の頂点情報Vと同一のデータ構造、同一の頂点IDを持つが、頂点位置のみが異なる。埋め込みグラフ直線整列部11により、埋め込みグラフG’は元の埋め込みグラフGよりも直線整列するように変形され、トレードオフパラメータλが大きいほど直線整列の度合いを強くすることができる。
不要頂点除去部12は、直線整列された埋め込みグラフG’=(V’,E)を入力して、単純化された埋め込みグラフG=(V,E)を出力する。直線整列された埋め込みグラフG’の多くの頂点では、接続する辺の成す角度が小さくなっているため、この角度が予め定めた閾値以下の頂点を選定して取り除くことで、単純化された埋め込みグラフG=(V,E)を生成することが可能である。
図2は、図1に示す埋め込みグラフ直線整列部11の詳細な構成を示すブロック図である。図2に示すように、埋め込みグラフ直線整列部11は、直線整列のための凸最適化問題立式部111と、凸最適化問題求解部112と、頂点情報置換部113とを備える。
直線整列のための凸最適化問題立式部111は、元の埋め込みグラフG=(V,E)と、トレードオフパラメータλとを入力して、直線整列のための凸最適化問題を出力する。出力する凸最適化問題は、目的関数と制約条件を記述した数式であり、式(1)の構造をとる。
Figure 0006514145
この式(1)は、これから求めたい直線整列された埋め込みグラフの頂点情報を示す変数をUとして、「subject toの右側の制約を満たす変数Uの中で、minimizeの右側の目的関数値を最小にするN行D列の行列Uを求めよ」という最適化問題を表現している。
目的関数は二つの項の線形結合で構成されている。第一項は、直線整列された埋め込みグラフの頂点情報を変数Uとしたときに、元の埋め込みグラフの頂点情報Vと変数Uとがどれだけ乖離しているかを評価するコストである。第二項は、直線整列された埋め込みグラフの頂点情報を変数Uとしたときに、埋め込みグラフ(U,E)が直線整列されている度合いを評価するコストである。
制約条件は、直線整列された埋め込みグラフの頂点情報を示す変数Uの可動範囲を表している。この凸最適化問題は、後続の凸最適化問題求解部112により解を求めることで、直線整列された頂点情報V’が生成されるよう設計している。
式(1)において、fは頂点位置変化損失関数であり、gは辺ベクトル角評価関数である。頂点位置変化損失関数f及び辺ベクトル角評価関数gは微分可能であるか近接写像計算可能な関数である。Lは辺ベクトル生成線形写像である。Cは制約集合である。制約集合Cは射影が計算可能な凸集合である。それぞれの詳細については後に図3を用いて説明する。
凸最適化問題求解部112は、凸最適化問題を入力として、その解を求め、直線整列された頂点情報V’を出力する。解を求めるためのアルゴリズムは任意に選択することができる。例えばPDS法(Primal Dual Splitting Method)では、頂点位置変化損失関数fの勾配計算あるいは近接写像、辺ベクトル角評価関数gの勾配計算あるいは近接写像、辺ベクトル生成線形写像Lとその共役写像L (m=1,…,M)、制約集合Cへの射影、四則演算を組み合わせた反復で、凸最適化問題を求解可能である。なお、PDS法については、以下の文献に記載されている。
Condat, “A Generic Proximal Algorithm for Convex Optimization -Application to Total Variation Minimization,” Signal Process IEEE, vol. 21, no. 8, pp. 985-989, 2014.
頂点情報置換部113は、直線整列された頂点情報V’と、元の埋め込みグラフG=(V,E)とを入力して、元の頂点情報Vを直線整列された頂点情報V’に置き換え、直線整列された埋め込みグラフG’=(V’,E)を出力する。
図3は、図2に示した直線整列のための凸最適化問題立式部111の詳細な構成を示すブロック図である。図3に示すように、直線整列のための凸最適化問題立式部111は、頂点辺情報分解部1111と、頂点位置変化損失関数立式部1112と、直線整列正則化関数立式部1113と、乗算器1114と、加算器1115と、制約条件立式部1116と、凸最適化問題生成部1117とを備える。
頂点辺情報分解部1111は、元の埋め込みグラフG=(V,E)を入力し、元の頂点情報Vと元の辺情報Eに分解して出力する。
頂点位置変化損失関数立式部1112は、元の頂点情報Vを入力して、頂点位置変化損失関数fを出力する。頂点位置変化損失関数fは、直線整列された埋め込みグラフの頂点情報を変数Uとしたときに、元の頂点情報Vと変数Uとがどれだけ乖離しているかを評価するコストである。頂点位置変化損失関数fは、変数Uと元の頂点情報Vとの絶対値残差や二乗残差を評価する。頂点位置変化損失関数fとしては、式(2)〜(4)に例示するような凸関数を用いることができる。
Figure 0006514145
ここで、vn,d及びun,dは、それぞれ、頂点情報Vの行列や変数Uの行列のn行d列成分であり、頂点IDがnである頂点情報の第d軸成分の値を表す。
直線整列正則化関数立式部1113は、辺情報Eを入力して、各頂点に接続する辺の成す角度を評価する直線整列正則化関数を出力する。直線整列正則化関数は、式(5)に例示するようなものを用いることができる。
Figure 0006514145
この関数は、直線整列された埋め込みグラフの頂点情報を変数Uとしたときに、変数Uを用いた埋め込みグラフ(U,E)が直線整列されている度合いを評価するコストである。このコストは、辺ベクトル生成線形写像L(m=1,…,M)と、辺ベクトル角評価関数gと、累積演算Σとで構成される。辺ベクトル生成線形写像L(m=1,…,M)は、直線整列された埋め込みグラフの頂点情報を示す変数Uから、次数(接続する辺の数)が2の頂点毎に接続する辺の大きさと向きを表すベクトル(辺ベクトル)を生成する操作を行う。辺ベクトル角評価関数gは、抽出した辺ベクトルの成す角度を核ノルムで評価する。累積演算Σは、これらの評価値を足し合わせる。以下に、この算出法を説明する。
まず、整数Mは、埋め込みグラフGの頂点のうち、次数が2である頂点の個数であり、辺情報Eより算出する。そして、M個ある次数2の頂点に(m=1,…,M)の番号を付与し、その頂点IDをcurr_id(m)、隣接する2つの頂点の頂点IDをそれぞれprev_id(m)、next_id(m)とする。
辺ベクトル生成線形写像L(m=1,…,M)は、(curr_id(m),prev_id(m))の辺ベクトルと、(curr_id(m),next_id(m))の辺ベクトルとを算出し、算出されたこれらの辺ベクトルを2行D列の行列に並べて格納する操作である。この2行D列の行列を辺ベクトル行列Pと呼ぶことにする。
式で記述すると、辺ベクトル生成線形写像Lは、直線整列された埋め込みグラフの頂点情報を示す変数Uを入力して、式(6)により、辺ベクトル行列P=LUを出力する。
Figure 0006514145
この辺ベクトル生成線形写像Lは、式(7)で示す2行N列の疎行列を変数Uの左から掛ける操作とも等しいため、辺ベクトル生成線形写像Lと式(7)の行列は同一のものであるとみなせる。
Figure 0006514145
辺ベクトル角評価関数gは、2行D列の辺ベクトル行列Pに対し、各辺ベクトルの成す角の大きさを評価する。辺ベクトル角評価関数gには、式(8)や式(9)で例示するような凸関数を用いることができる。
Figure 0006514145
ここで、σ(P)とσ(P)は、辺ベクトル行列Pの2つの特異値を表す。この関数は、2つの辺ベクトルの成す角度が小さいほど関数値が小さくなり、角度が大きいほど関数値が大きくなる。
乗算器1114は、式(5)の直線整列正則化関数とトレードオフパラメータλを乗算した関数を出力する。
加算器1115は、頂点位置変化損失関数fと乗算器1114が出力した関数を線形結合して、式(1)のminimizeの右側の目的関数を出力する。
制約条件立式部1116は、元の埋め込みグラフG=(V,E)を入力し、式(1)のsubject toの右側の制約条件式を出力する。制約条件式は、使用者が予め定めた凸制約であり、式(10)のように幾つかの頂点情報を限定する制約や、式(11)や式(12)のように頂点情報の可動範囲を限定する制約などを課することができる。
Figure 0006514145
ここで、ε(n)は、使用者が予め定めた、頂点IDがnである頂点に対する可動範囲の最大値である。あるいは、これらの制約条件式(10)〜(12)のいくつかを組み合わせて制約条件式とすることもできる。あるいは、制約条件を全く課さないという制約条件式を定めることもできる。
凸最適化問題生成部1117は、目的関数と制約条件式を入力して、直線整列のための凸最適化問題を生成する。すなわち、凸最適化問題生成部1117は、加算器1115から出力された目的関数の左側に最小化を表す「minimize」を加え、制約条件立式部1116から出力された制約条件式の左側に制約を表す「subject to」を加えて、(1)式に示した凸最適化問題を出力する。
次に、図4、図5及び図6を用いて、本実施形態の埋め込みグラフ単純化装置1による単純化処理を説明する。
図4は、埋め込みグラフ単純化装置1による埋め込みグラフ単純化処理のフローチャートである。埋め込みグラフ直線整列部11は、元の埋め込みグラフG=(V,E)と、トレードオフパラメータλとを入力して、直線整列された埋め込みグラフG’=(V’,E)を出力する(ステップS11)。不要頂点除去部12は、直線整列された埋め込みグラフG’=(V’,E)を入力して、単純化された埋め込みグラフG=(V,E)を出力する(ステップS12)。
図5は、埋め込みグラフ直線整列部11による埋め込みグラフ直線整列処理のフローチャートである。直線整列のための凸最適化問題立式部111は、元の埋め込みグラフG=(V,E)と、トレードオフパラメータλとを入力して、直線整列のための凸最適化問題を出力する(ステップS111)。凸最適化問題求解部112は、直線性列のための凸最適化問題を入力として、直線整列された頂点情報V’を出力する(ステップS112)。頂点情報置換部113は、直線整列された頂点情報V’と元の埋め込みグラフG=(V,E)を入力して、直線整列された埋め込みグラフG’=(V’,E)を出力する(ステップS113)。
図6は、直線整列のための凸最適化問題立式部111による直線整列のための凸最適化問題立式処理のフローチャートである。頂点辺情報分解部1111は、元の埋め込みグラフG=(V,E)を入力して、頂点情報Vと辺情報Eに分解して出力する(ステップS1111)。頂点位置変化損失関数立式部1112は、頂点情報Vを入力して、頂点位置変化損失関数fを出力する(ステップS1112)。直線整列正則化関数立式部1113は、辺情報Eを入力して、直線整列正則化関数を出力する(ステップS1113)。乗算器1114は、直線性列正則化関数とトレードオフパラメータλとを入力し、これら2つを乗算した関数を出力する(ステップS1114)。加算器1115は、頂点位置変化損失関数fと乗算器1114が出力した関数を線形結合して、目的関数を出力する(ステップS1115)。制約条件立式部1116は、元の埋め込みグラフG=(V,E)を入力し、制約条件式を出力する(ステップS1116)。凸最適化問題生成部1117は、目的関数と制約条件式を入力して、直線整列のための凸最適化問題を生成する。
次に具体例を挙げて、図1に示す埋め込みグラフ単純化装置1、図2に示す埋め込みグラフ直線整列部11、及び図3に示す直線整列のための凸最適化問題立式部111が、図4、図5及び図6に示す処理を行うときの動作を説明する。
ここでは、画像領域の符号化のための埋め込みグラフ単純化を考え、埋め込みグラフは2次元平面上に埋め込まれたグラフ、頂点位置変化損失関数fは式(4)のコスト、辺ベクトル角評価関数gは式(8)のコスト、制約条件は画像縁に位置する頂点を式(10)の形で制約するものとする。凸最適化問題求解部のアルゴリズムにはPDS法を用いるものとする。
埋め込みグラフ単純化装置1の入力である、元の埋め込みグラフG=(V,E)は、図7に示す2次元平面上に埋め込まれたグラフとする。図7における丸の記号は埋め込みグラフの各頂点の位置を表し、丸の記号の右下の数字が頂点IDを表している。また頂点位置は、図7における下方向を第1座標軸方向、右方向を第2座標軸方向とする直交座標系で記述する。例えば図7で最も左上にある頂点は頂点IDが「2」で、その座標は(1,0)である。頂点情報VはN行2列行列とし、行番号が頂点ID、列番号が座標軸番号を示す。例えば頂点IDが「2」の頂点についての情報は、頂点情報Vを示す行列の2行目に格納されており、(v2,1=1)であり、(v2,2=0)である。
頂点と頂点を結ぶ実線は、埋め込みグラフの各辺を表している。例えばIDが「ID=2」の頂点と「ID=3」の頂点の間には、この2頂点を結ぶ辺が存在する。辺情報Eは隣接リストとして格納されている。埋め込みグラフ単純化装置1の入力である、トレードオフパラメータλは、1.5などの任意の実数値を選ぶことができる。
埋め込みグラフ直線整列部11が行う処理ステップS11では、直線整列された埋め込みグラフG’=(V’,E)を出力する。この例では、直線整列された埋め込みグラフG’=(V’,E)として、図8のような埋め込みグラフを出力する。図8における丸の記号は、図7と同様に、埋め込みグラフの各頂点の位置を表し、丸の記号の右下の数字が頂点IDを表している。図7と図8とを比較すれば分かるように、埋め込みグラフ直線整列部11が行う処理ステップS11により、各頂点の間の辺情報は維持され、埋め込みグラフが直線整列するように、頂点の位置が変動している。また、頂点IDが(ID=1,2,42、…,141)の頂点については、制約条件により、変動位置が制約されている。
不要頂点除去部12が行う処理ステップS12では、埋め込みグラフG’の頂点のうち、接続する辺の成す角度が小さくなっている頂点を予め定めた閾値(例えばπ/100ラジアン)で選定し、この頂点を取り除いて単純化された埋め込みグラフG=(V,E)を生成する。
埋め込みグラフ直線整列部11が行う処理ステップS11の詳細な動作について述べる。直線整列のための凸最適化問題立式部111が行う処理ステップS111では、例えば式(13)の凸最適化問題を生成する。
Figure 0006514145
ここでは、頂点位置変化損失関数fは、式(4)のコストを用い、辺ベクトル角評価関数gは式(8)のコストを用いている。また、制約条件は、画像外縁に位置する頂点はその外縁上の移動しかできない事とし、式(10)の形式で頂点IDが(ID=1,2,42、…,141)の頂点について制約している。
凸最適化問題求解部112が行う処理ステップS112では、式(13)の凸最適化問題をPDS法で解き、頂点情報Vを生成する。
式(13)に対するPDS法では、式(4)の頂点位置変化損失関数fの近接写像、式(8)の辺ベクトル角評価関数gの近接写像、辺ベクトル生成線形写像Lとその共役写像L (m=1,…,132)、制約集合Cの制約条件を表す凸集合への射影を計算する必要がある。これらが計算可能であれば反復演算により解を求めることができる。
式(4)の頂点位置変化損失関数fの近接写像は、ある任意のステップサイズμ(>0)に対して、式(14)により計算できる。
Figure 0006514145
ここで関数signは、入力した行列の各要素の符号を抽出して−1,0,+1に対応させ、入力と同じサイズの行列に格納して出力する関数である。また、丸で示す演算子はアダマール積で、左右の行列の要素同士を掛けあわせて同じサイズの行列に格納して出力する演算である。また、関数maxは、入力した2つの実数の値を比較して、大きい方を出力する関数である。
式(8)の辺ベクトル角評価関数gの近接写像は、ある任意のステップサイズμに対して、式(15)により計算できる。
Figure 0006514145
ここで関数diagは、入力したベクトルを対角要素に並べた対角行列を出力する関数である。またS(P),T(P),σ(P)は行列Pの特異値分解であり、式(16)が成立する。
Figure 0006514145
辺ベクトル生成線形写像Lとその共役写像L (m=1,…,132)は、式(7)の行列やその転置行列を左から掛ける操作により計算可能である。
制約集合Cの制約条件を表す凸集合は式(17)である。
Figure 0006514145
よって、Cへの射影は、式(18)により計算できる。
Figure 0006514145
頂点情報置換部113が行う処理ステップS113では直線整列された頂点情報V’と元の埋め込みグラフG=(V,E)を入力して、直線整列された埋め込みグラフG’=(V’,E)を出力する。すなわち、頂点情報置換部113が行う処理ステップS113は、元の埋め込みグラフGの頂点情報Vを直線整列された頂点情報V’に置き換え、直線整列された埋め込みグラフG’を生成する。
直線整列のための凸最適化問題立式部111が行う処理ステップS111の詳細な動作について述べる。頂点辺情報分解部1111が行う処理ステップS1111では、元の埋め込みグラフG=(V,E)を入力して、頂点情報Vと辺情報Eに分解して出力する。
頂点位置変化損失関数立式部1112が行う処理ステップS1112では、元の頂点情報Vを入力して、頂点位置変化損失関数fを出力する。頂点位置変化損失関数fとしては、例えば式(4)のコストを使用する。
直線整列正則化関数立式部1113が行う処理ステップS1113では、元の辺情報Eを入力して、式(5)の直線整列正則化関数を出力する。辺ベクトル生成線形写像L(m=1,…,M)は、辺情報Eから各次数2の頂点の隣接頂点IDを得ることで、式(7)の行列として生成することができる。また、辺ベクトル角評価関数gとしては、例えば式(8)のコストを使用する。
乗算器1114が行う処理ステップS1114では、式(5)の直線性列正則化関数とトレードオフパラメータλを乗算した関数を出力する。
加算器1115が行う処理ステップS1115では、頂点位置変化損失関数fと乗算器1114が出力した関数を線形結合して、式(13)のminimizeの右側の目的関数を出力する。
制約条件立式部1116が行う処理ステップS1116では、元の埋め込みグラフG=(V,E)を入力し、式(13)のsubject toの右側の制約条件式を出力する。
凸最適化問題生成部1117が行う処理ステップS1117は、目的関数と制約条件式を入力して、直線整列のための凸最適化問題を生成する。すなわち、凸最適化問題生成部1117が行う処理ステップS1117は、目的関数と制約条件式それぞれの左側に、最小化を表す「minimize」と、制約を表す「subject to」を加えて出力する。
このように図6で示した処理手順に従って直線整列のための凸最適化問題を生成し、図5で示した処理手順に従って埋め込みグラフの直線整列を行い、図4で示した処理手順に従って埋め込みグラフを単純化することができる。
なお、埋め込みグラフ単純化装置1の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
1…埋め込みグラフ単純化装置、11…埋め込みグラフ直線整列部、12…不要頂点除去部、111…直線整列のための凸最適化問題立式部、112…凸最適化問題求解部、113…頂点情報置換部、1111…頂点辺情報分解部、1112…頂点位置変化損失関数立式部、1113…直線整列正則化関数立式部、1114…乗算器、1115…加算器、1116…制約条件立式部、1117…凸最適化問題生成部

Claims (8)

  1. 頂点の位置情報を有する埋め込みグラフを単純化する埋め込みグラフ単純化方法であって、
    コンピュータが、各頂点に接続する辺の成す角度が小さくなるように頂点位置を直線整列する埋め込みグラフ直線整列処理ステップと、
    コンピュータが、前記直線整列された埋め込みグラフから、接続する辺の成す角度が小さい頂点を選定し、前記接続する辺の成す角度が小さい頂点を取り除いて単純化された埋め込みグラフを生成する不要頂点除去処理ステップと、
    を有する埋め込みグラフ単純化方法。
  2. 前記埋め込みグラフ直線整列処理ステップは、
    コンピュータが、直線整列のための凸最適化問題を立式して出力する凸最適化問題立式処理ステップと、
    コンピュータが、前記凸最適化問題立式処理ステップで出力された直線整列のための凸最適化問題を求解して、直線整列された頂点位置を求める凸最適化問題求解処理ステップと、
    コンピュータが、前記凸最適化問題求解処理ステップで求められた頂点位置に頂点を置き換える頂点情報置換処理ステップとを有し、
    前記凸最適化問題立式処理ステップにおいて、前記コンピュータは、直線整列された埋め込みグラフの頂点位置を変数としたときに、前記変数が元の頂点位置とどれだけ乖離しているかを評価する頂点位置変化損失関数と、前記変数を用いた埋め込みグラフが直線整列されている度合いを評価する直線整列正則化関数とを線形結合して目的関数として立式するとともに、前記変数の可動範囲を制約条件として立式して、前記直線整列のための凸最適化問題として出力する、
    請求項1に記載の埋め込みグラフ単純化方法。
  3. 前記不要頂点除去処理ステップにおいて、前記コンピュータは、各頂点に接続する辺の角度の大きさを評価し、前記各頂点に接続する辺の角度の大きさが閾値を下回る頂点を選定して除去する、
    請求項1に記載の埋め込みグラフ単純化方法。
  4. 前記凸最適化問題立式処理ステップは、
    コンピュータが、直線整列された埋め込みグラフの頂点位置を変数としたときに、前記変数が元の頂点位置とどれだけ乖離しているかを評価する頂点位置変化損失関数を生成する頂点位置変化損失関数立式処理ステップと、
    コンピュータが、前記変数を用いた埋め込みグラフが直線整列されている度合いを評価する直線整列正則化関数を生成する直線整列正則化関数立式処理ステップと、
    コンピュータが、前記直線整列正則化関数にトレードオフパラメータを乗算する乗算処理ステップと、
    コンピュータが、前記頂点位置変化損失関数と、前記トレードオフパラメータが乗算された直線整列正則化関数とを線形結合して目的関数を生成する加算処理ステップと、
    コンピュータが、前記頂点位置の範囲に関する制約条件を生成する制約条件立式処理ステップと、
    コンピュータが、前記目的関数と前記制約条件とを合わせて凸最適化問題を生成する凸最適化問題生成処理ステップと、
    を有する請求項2に記載の埋め込みグラフ単純化方法。
  5. 前記頂点位置変化損失関数立式処理ステップにおいて、前記コンピュータは、前記直線整列された埋め込みグラフの頂点位置を示す変数と元の頂点位置との絶対値残差又は二乗残差を評価して頂点位置変化損失関数を生成し、
    前記直線整列正則化関数立式処理ステップにおいて、前記コンピュータは、各頂点に接続する辺の成す角度を評価して前記直線整列正則化関数を生成する、
    請求項4に記載の埋め込みグラフ単純化方法。
  6. 前記直線整列正則化関数立式処理ステップにおいて、前記コンピュータは、各頂点に接続する辺の大きさと向きを表す辺ベクトルを生成する辺ベクトル生成線形写像と、前記辺ベクトルの成す角度を核ノルムで評価する辺ベクトル角評価関数との合成により、直線整列正則化関数を生成する、
    請求項5に記載の埋め込みグラフ単純化方法。
  7. 頂点の位置情報を有する埋め込みグラフを単純化する埋め込みグラフ単純化装置であって、
    各頂点に接続する辺の成す角度が小さくなるように頂点位置を直線整列する埋め込みグラフ直線整列処理部と、
    前記直線整列された埋め込みグラフから、接続する辺の成す角度が小さい頂点を選定し、前記接続する辺の成す角度が小さい頂点を取り除いて単純化された埋め込みグラフを生成する不要頂点除去処理部と、
    を備える埋め込みグラフ単純化装置。
  8. 請求項1から6のいずれか一項に記載の埋め込みグラフ単純化方法を、コンピュータに実行させるためのコンピュータプログラム。
JP2016102513A 2016-05-23 2016-05-23 埋め込みグラフ単純化方法、埋め込みグラフ単純化装置及びコンピュータプログラム Active JP6514145B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016102513A JP6514145B2 (ja) 2016-05-23 2016-05-23 埋め込みグラフ単純化方法、埋め込みグラフ単純化装置及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016102513A JP6514145B2 (ja) 2016-05-23 2016-05-23 埋め込みグラフ単純化方法、埋め込みグラフ単純化装置及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2017211706A JP2017211706A (ja) 2017-11-30
JP6514145B2 true JP6514145B2 (ja) 2019-05-15

Family

ID=60475487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016102513A Active JP6514145B2 (ja) 2016-05-23 2016-05-23 埋め込みグラフ単純化方法、埋め込みグラフ単純化装置及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6514145B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003263103A (ja) * 1996-06-24 2003-09-19 Matsushita Electric Ind Co Ltd 地図情報提供システム

Also Published As

Publication number Publication date
JP2017211706A (ja) 2017-11-30

Similar Documents

Publication Publication Date Title
Yu et al. A unified learning framework for single image super-resolution
CN117597703B (zh) 用于图像分析的多尺度变换器
CN112990228B (zh) 图像特征匹配方法和相关装置、设备及存储介质
Suk et al. Decomposition of binary images—A survey and comparison
JP4981798B2 (ja) ランク−1格子による画像合成
CN114219890A (zh) 一种三维重建方法、装置、设备及计算机存储介质
Wang et al. Super-resolution of multi-observed RGB-D images based on nonlocal regression and total variation
JP2016509805A (ja) 画像ストリームの高フレームレート化
CN112435193A (zh) 一种点云数据去噪的方法、装置、存储介质和电子设备
JP6663372B2 (ja) 埋め込みグラフ単純化装置、埋め込みグラフ単純化方法、及びコンピュータプログラム
Xie et al. Fourier series expansion based filter parametrization for equivariant convolutions
KR20170100718A (ko) 점군 정합 장치 및 방법
Celebi et al. Colour quantisation using the adaptive distributing units algorithm
Jobst et al. Efficient MPS representations and quantum circuits from the Fourier modes of classical image data
CN117894038A (zh) 一种图像中对象姿态生成方法和装置
JP6514145B2 (ja) 埋め込みグラフ単純化方法、埋め込みグラフ単純化装置及びコンピュータプログラム
CN112184884A (zh) 三维模型构建方法、装置、计算机设备及存储介质
KR102624154B1 (ko) 이미지 복원 방법 및 장치
CN115393241A (zh) 医学图像增强方法、装置、电子设备及可读存储介质
Wu et al. SMSIR: Spherical measure based spherical image representation
CN112686996B (zh) 游戏山脉地形创建方法、模型训练方法及相关装置
Rodriguez-Laguna et al. Qubism: self-similar visualization of many-body wavefunctions
Ilyichev Numerical implementation of Poincaré recurrence theory using Arnold mappings
CN110689513B (zh) 彩色图像融合方法、装置和终端设备
JP6361195B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180622

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190219

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190326

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190411

R150 Certificate of patent or registration of utility model

Ref document number: 6514145

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150