JP2018181197A - Information processing unit, information processing method, and program - Google Patents
Information processing unit, information processing method, and program Download PDFInfo
- Publication number
- JP2018181197A JP2018181197A JP2017083754A JP2017083754A JP2018181197A JP 2018181197 A JP2018181197 A JP 2018181197A JP 2017083754 A JP2017083754 A JP 2017083754A JP 2017083754 A JP2017083754 A JP 2017083754A JP 2018181197 A JP2018181197 A JP 2018181197A
- Authority
- JP
- Japan
- Prior art keywords
- polyline
- vertex
- point
- state
- information processing
- 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.)
- Withdrawn
Links
Images
Landscapes
- Working Measures On Existing Buildindgs (AREA)
- Image Analysis (AREA)
Abstract
Description
本発明は、対象画像に対して変状に係る情報を入力する技術に関する。 The present invention relates to a technique for inputting information relating to a deformation to a target image.
従来から、構造物の外観を撮影した画像に対して、検査員がマウスなどを用いて、ひび割れ等の変状の形状をポリラインとして入力することで、構造物の維持管理が実施されている。しかし、マウスなどを用いて、ひび割れ等の変状の形状をポリラインとして入力する作業に多くの工数を要している。 2. Description of the Related Art Conventionally, maintenance and management of a structure has been carried out by an inspector using a mouse or the like to input an irregular shape such as a crack as a polyline to an image obtained by photographing the appearance of the structure. However, using a mouse or the like, it takes a lot of man-hours to input a deformed shape such as a crack as a polyline.
特許文献1には、変状の中でもひびの自動検出をする方法が開示されている。この方法では、ひび計測の対象となる構造物が撮影された画像データの画像領域のうち、特定されたひび探査領域を高めの閾値で2値化処理し、白画素と黒画素に分類し黒画素をひびとする。さらに、未検出のひびが存在する可能性のある画像領域を2値化された画素の占有比率に基づいて特定する。そして、その特定された領域を上記の閾値よりも低い閾値で2値化処理し、白画素と黒画素に分類し黒画素をひび割れとする。
しかしながら、特許文献1の技術は、閾値処理でひび割れを検出しているが、構造物の状態によっては、検出漏れや未検出のひび割れが発生してしまう。また、検査員がマウスなどを用いて手動でひび割れを入力する際にも、本来入力されるべきひび割れを見過ごして、検出漏れのひび割れが発生することもある。そして、このような検出漏れ、未検出のひび(変状)は、人手によって追加しなければならず、その入力に工数を要してしまうという課題があった。
However, although the technology of
本発明は上記の課題に鑑みてなされたものであり、変状の入力に要する工数を低減することを目的とする。 The present invention has been made in view of the above problems, and has as its object to reduce the number of man-hours required for inputting an abnormal condition.
上記課題を解決するために、本発明は、対象画像に含まれる複数の変状に対応する複数のポリラインそれぞれを構成する複数の線分に対して、第1の状態または第2の状態のいずれかを示す情報を保持する保持手段と、前記対象画像に対してユーザが指示した第1の点および第2の点を入力する入力手段と、前記入力された第1の点および第2の点が、前記保持手段に保持されている複数のポリラインのうちの1つのポリラインに含まれる複数の頂点のうちの2つの頂点を指示しているか否かを判定する判定手段と、前記判定手段により指示していると判定された場合に、前記1つのポリラインにおける前記2つの頂点の間の線分を第2の状態として決定する決定手段と、を有することを特徴とする。 In order to solve the above problems, according to the present invention, any one of the first state and the second state is applied to a plurality of line segments constituting each of a plurality of polylines corresponding to a plurality of deformations included in a target image. , And input means for inputting a first point and a second point designated by the user with respect to the target image, and the input first and second points Determining means for determining whether or not two or more of the plurality of vertices included in one polyline of the plurality of polylines held in the holding means are indicated; And determining means for determining, as a second state, a line segment between the two vertices in the one polyline, when it is determined that the user is determined to be.
本発明によれば、変状の入力に要する工数を低減することが可能になる。 According to the present invention, it is possible to reduce the number of man-hours required for the input of abnormal state.
[第1の実施形態]
以下、本発明の第1の実施形態の詳細について図面を参照しつつ説明する。まず、図6を用いて本実施形態に係る情報処理装置100を含む情報処理システム600について説明する。解析対象画像入力部601は、画像を入力する。本実施形態では入力する画像の種類に限定されないが、例えばインフラ構造物(トンネル、橋など)の表面の画像を入力する。解析対象画像入力部601は入力された画像を画像解析部602へ出力する。画像解析部602は画像を解析し解析結果からポリラインを検出する。検出する対象は、例えば、インフラ構造物の表面に存在するひび割れである。画像解析部602は、インフラ構造物の表面に存在するひび割れを検出し、ポリラインに近似してポリラインの情報として情報処理装置100へ出力する。ただし、画像解析部602から出力したポリラインには誤検出されたポリラインも含まれている可能性が高い。情報処理装置100では、解析対象画像入力部601から入力した画像をユーザが参照しつつ、画像解析部602で検出したポリラインを編集する。
First Embodiment
Hereinafter, the details of the first embodiment of the present invention will be described with reference to the drawings. First, an
なお、解析対象画像入力部601および画像解析部602は、図6のように情報処理装置100とは異なる装置に構成されていてもよいし、本実施形態の情報処理装置100と一体化され構成されていてもよい。また、本実施形態では、変状の中でもひび割れの例について説明するが、変状(インフラ構造物に現れる損傷、劣化等の異常全般)に対して適用可能なものである。また、本実施形態に係る情報処理装置100は、画像解析部602によってひび割れが自動で検出された対象画像に対して、未検出、検出漏れとなったひび割れを追加で入力するものである。しかし、入力される対象画像におけるひび割れがどのように検出されているかはこれに限定されない。すなわち、検査員等の人手によってひび割れが検出された対象画像に対して、検出漏れとなったひび割れを追加で入力するものであってもよい。
The analysis target
図1は、本実施形態に係る情報処理装置100のハードウェア構成を示すブロック図ある。情報処理装置100は、CPU101、RAM102、ROM103、補助記憶装置104、入出力インタフェース105、通信インタフェース106、表示装置107、バス108、入力コントローラ109、入力装置110を有している。
FIG. 1 is a block diagram showing the hardware configuration of the
CPU101は、情報処理装置100が備える各機能を実行、制御する。RAM102は、外部装置などから供給されるプログラムやデータを一時記憶する。ROM103は、変更を必要としないプログラムや各種パラメータを格納する。表示装置107はCPU101で描画されたグラフィックスを表示する。補助記憶装置104は、各種情報を記憶する。入出力インタフェース105は、外部の機器とデータの送受信を行う。通信インタフェース106は、ネットワークに接続するための装置であり、ネットワークを介して外部の機器とデータの送受信を行う。バス108は、システムバスであり、CPU101、RAM102、ROM103、補助記憶装置104、入出力インタフェース105、通信インタフェース106、表示装置107、入力コントローラ109を接続する。109は、後述する入力装置110からの入力信号を制御するコントローラである。110は、ユーザからの操作指示を受け付けるための外部入力装置であり、例えば、キーボード、マウスなどである。なお、後述する情報装置100の機能や処理は、CPU101がROM103等に格納されているプログラムを読み出し、このプログラムを実行することにより実現する。
The
次に、図2を用いて、本実施形態に係る情報処理装置100の機能構成について説明する。ポリライン保持部201は、後述するテーブル形式のポリラインの情報を保持する。以下、このテーブルはpolyline_tableと記す。指示点入力部202は、ユーザが指示した点の座標を取得しポリライン編集確定部203へ出力する。ユーザが指示した点の座標の取得は、入力装置110を用いて入力コントローラ109に入力されることで実現され、例えば入力装置110がマウスであれば、マウスのクリックにより指示点が入力されることにより取得できる。ポリライン編集確定部203は、指示点入力部202から入力された指示点の座標に基づき、判定部205、経路探索部206の機能を利用して確定状態とすべき線分を決定する。なお、確定状態とは変状として確定すべきものとしてユーザが決定した状態のことであり、必ずしも変状として確定されているわけではない。そのため、確定状態と指定されても、キャンセルして未確定状態に戻すことも可能である。また、確定状態とした線分を新たなポリラインとして追加するなど、ポリライン保持部201で保持しているpolyline_tableを適宜書き換える。表示部204は、画像入力部207から入力した画像と、polyline_tableから読み出したポリラインとを、表示装置107に重畳して表示する。より具体的には、表示部204は、polyline_tableから、各ポリラインの確定状態にある線分を実線などにより表示する。なお、未確定状態の線分については表示しないか、もしくは確定状態の線分とは区別可能なように破線で表示するなど、確定状態の線分と未確定状態の線分とが区別できるようにpolyline_tableから読み出したポリラインを表示する。
Next, the functional configuration of the
判定部205は、polyline_tableと、指示点入力部202から入力した指示点に基づいて、座標上の点がpolyline_tableに存在するポリラインの頂点を指示しているか否か判定する。そして、判定結果をポリライン編集確定部203へ出力する。経路探索部206は、polyline_tableと、指示点入力部202により取得した2点の指示点の座標とから、polyline_tableに存在するポリラインの線分を通る経路が存在するか探索する。そして経路が存在すれば、経路の有無と、経路に含まれる頂点の情報をポリライン編集確定部203へ出力する。画像入力部207は、解析対象画像入力部601から画像を入力する。ポリライン入力部208は、画像解析部602からポリラインの情報を入力し、polyline_tableにそのポリラインの情報を書き込む。
The
以下、図3から図5を参照しつつ、本実施形態に係るポリライン編集の処理の詳細について説明する。まず、ポリライン保持部201の詳細について説明する。図3は、各実施形態においてポリライン保持部201が保持するテーブル形式のポリライン情報(polyline_table)を示す図であり、図3(a)が本実施形態のpolyline_tableである。図4は、ポリライン保持部201で保持しているポリラインの情報を2次元空間上に表示した図である。
The details of the polyline editing process according to the present embodiment will be described below with reference to FIGS. 3 to 5. First, details of the
図3(a)において、polyline_tableのカラムは、ID302、頂点リスト303、状態リスト304である。また、polyline_tableの1つのレコードはポリライン1本に対応している。ここで、図3(a)のpolyline_tableは、2本のポリラインの情報305、306を有しており、ポリラインの情報305、306はそれぞれ、図4のポリライン402、410に対応している。
In FIG. 3A, columns of polyline_table are an
ID302のカラムにはpolyline_tableで保持しているポリラインを一意に識別可能な数値を設定する。頂点リスト303のカラムは、ポリラインを構成する頂点の座標を保持している。頂点リスト303について、polyline_tableのポリラインの情報305を例に説明すると、ポリラインの情報305の頂点リスト303は、図4のポリライン402が有している複数の頂点に対応している。ポリラインの情報305の頂点リスト303のカラムに記載されている括弧内は、座標系401におけるXY座標の値を示している。例えば、(16、25)であれば、X座標16、Y座標25の位置に頂点が配置されているということである。図3(a)では、ポリラインの情報305の頂点リスト303に4点の座標が保持されており、それぞれ図4の頂点403、404、405、406に対応している。
In the column of
また、頂点403、404、405、406の間は、線分407、408、409で結ばれる。線分は2種類の何れかの状態を有しおり、2種類の状態とは、未確定の状態(第1の状態)と確定の状態(第2の状態)である。図3(a)において、ポリラインの情報305の状態リスト304の括弧内において、コンマで区切られた状態は、それぞれ線分407、408、409に対応している。つまり、ここでは、線分407、408、409はすべて未確定状態であるということである。図4では、未確定状態の線分を一点鎖線で表現している。一方、ポリラインの情報306は、ポリライン410に対応しており、ポリライン410を構成する線分411、412の状態は確定状態である。図4では、確定状態の線分を実線で表現している。
The
次に、ポリライン編集確定部203の詳細について説明する。ポリライン編集確定部203は、ポリライン編集のための内部データとして頂点保持リスト501を保持している。以下、頂点保持リスト501をvertex_listと記す。
Next, the details of the polyline
図5は、本実施形態における頂点保持リスト501を示している。図5において、vertex_listに記載されている括弧内は、座標系401におけるXY座標の値を示している。vertex_listの保持形式は、polyline_tableの頂点リスト303と同様の形式であるため、説明を省略する。ポリライン編集確定部203は、トレース終了命令を入力する。トレース終了命令とは、ユーザが指示点の入力を完了したと判断したときに発する命令である。トレース終了命令を入力したときのポリライン編集確定部203の動作については後述する。入力装置110がマウスであれば、例えばマウスの右クリックにより命令を発生させることで、ポリライン編集確定部203はトレース終了命令を入力する。
FIG. 5 shows a
次に、判定部205の詳細について説明する。判定部205は、座標上の点がポリラインの頂点を指示しているか否か判定する。この処理について、図4を用いて説明する。頂点403には、対応する領域、具体的には、頂点403から所定距離内の領域である判定領域413が設けられている。ここで、座標上の点414は、判定領域413内の点であるため、この点414をユーザがクリックなどで指示しても、それは頂点403を指示していると判定する。また、座標上の点415は、判定領域413の外の点であるため、この場合には頂点403を指示していないと判定する。なお、判定領域413のサイズ(範囲)は、ユーザの指示(例えば、表示装置107に表示されるスライドバーを操作すること)によって変更可能に構成されていてもよい。
Next, details of the
次に、図7のフローチャートを用いて、本実施形態に係る情報処理装置100による処理の流れを説明する。ここでは、図3、図5、および図10を参照しつつ、処理の詳細について説明する。図10は、ユーザが1002、1003、1004の順番で指示点を入力した様子を示す図である。図10では、図5のvertex_listの情報が、頂点1001、404、405、406を繋いだ破線で重畳表示されている。また、頂点1001、404、405、406はそれぞれ、図5の頂点の情報502〜505に対応している。
Next, the flow of processing by the
図7のフローチャートにおいて、まずS701で、表示部204は、画像入力部207から入力した画像を表示装置107に表示する。さらに、CPU101は、vertex_listを初期化する。ここで、初期化とは、図5のvertex_listにデータが無い状態にするということであり、また、データが無い状態とは頂点の情報502〜505が追加されていない状態である。
In the flowchart of FIG. 7, the
S702において、ポリライン編集確定部203は、トレース終了命令があるか否かを判断する。ポリライン編集確定部203は、トレース終了命令があると判断すれば処理をS711へ進める。一方、トレース終了命令がなければ、処理をS703へ進める。次に、S703において、指示点入力部202は、指示点の入力があるか否かを判断し、指示点の入力があれば、処理をS704へ進める。一方、指示点の入力がなければ、処理をS702へ戻す。
In S702, the polyline
S704において、ポリライン編集確定部203は、ポリライン保持部201から読み出したpolyline_tableと、指示点入力部202が入力した指示点の情報を、判定部205へ出力する。そして、判定部205は、ポリライン編集確定部203から入力した指示点に対応する頂点を持つポリラインがpolyline_table内に存在するか否か判定する。判定部205は、ポリライン編集確定部203から入力した指示点に対応する頂点を持つポリラインがpolyline_table内に存在すると判断すれば、処理をS705へ進める。一方、polyline_table内になければ、処理をS708へ進める。また、判定部205は、判定結果をポリライン編集確定部203へ出力する。
In step S704, the
図10の例では、指示点1002には、この指示点に対応する頂点を持つポリラインがpolyline_table内に存在しない。この場合、指示点1002が入力されたときには、処理はS708へ進む。その後、指示点1003、1004が入力されるが、指示点1003、1004にはそれぞれ、これら頂点を持つポリライン402がpolyline_tableに存在する。そのため、指示点1003、および指示点1004が入力されたときには、処理はS705へ進む。
In the example of FIG. 10, a polyline having a vertex corresponding to the designated point does not exist in polyline_table at the designated
S705において、ポリライン編集確定部203は、vertex_listに頂点の情報が存在するか否かを判定する。vertex_listに頂点の情報があれば、処理はS706へ進む。また、vertex_listに頂点の情報がなければ、処理はS708へ進む。図7のフローチャートの1回目のループでは、vertex_listはS701で初期化されているので、処理は必ずS708へ進むことになる。
In S705, the
S706において、ポリライン編集確定部203は、指示点入力部202から入力された指示点と、vertex_listに存在する最も新しくvertex_listに登録された頂点の情報を経路探索部206へ出力する。同時に、ポリライン編集確定部203は、polyline_tableを経路探索部206へ出力する。ここで、図5を用いて、vertex_listに存在する最も新しくvertex_listに登録された頂点の情報について説明する。図5の頂点の情報が502、503、504、505の順番で保存された場合、頂点の情報505がvertex_listに存在する最も新しくvertex_listに登録された頂点の情報となる。
In step S706, the
経路探索部206は、ポリライン編集確定部203から入力したpolyline_tableと座標系401上の2点とから、polyline_tableに存在するポリラインを用いた経路が存在するか探索する。そして、経路探索部206は、経路の有無をポリライン編集確定部203へ出力するとともに、経路が有る場合は経路に含まれる頂点の情報もポリライン編集確定部203へ出力する。その後、処理はS707へ進む。ここで座標系401上の2点とは、前述した、指示点入力部202から入力された指示点と、vertex_listに存在する最も新しくvertex_listに登録された頂点の情報のことである。
The
図10の例を用いて、S706の処理について説明する。まず、指示点入力部202が指示点1003を入力したときの処理について説明する。ここで、polyline_tableは、図3(a)の状態であるとする。図3(a)のpolyline_tableには、ポリラインの情報305、306が登録されており、図10の例では、それぞれポリライン402、410に対応する。指示点入力部202が指示点1003を入力したとき、vertex_listに存在する最も新しくvertex_listに登録された頂点の情報は図5の502であり、図10では頂点1001となる。
The process of S706 will be described using the example of FIG. First, processing when the designated
経路探索部206は、頂点1001と指示点1003に対応する頂点404との間にpolyline_tableに存在するポリラインを用いた経路が存在するか探索する。ここで、経路探索は、頂点1001と指示点1003に対応する頂点404とが同一のポリライン上の頂点であるか否かを判定することで経路探索する。同一のポリライン上の頂点2点であれば、経路は存在すると判断できる。また、経路探索にはダイクストラ法をはじめとして、種々の公知の手法を採用することができ、本実施形態は、特定の経路探索の手法に限定されるものではない。このとき、polyline_tableは図3(a)の状態なので、ユーザにより指示された2つの指示点それぞれが、ある1つのポリラインの頂点のいずれかに対応はしていない。つまり、頂点1001と指示点1003に対応する頂点404との間にpolyline_tableに存在するポリラインを用いた経路は存在しない。そのため、経路探索部206は、経路が存在しないという結果をポリライン編集確定部203へ出力し、処理をS707へ進める。
The
次に、指示点入力部202が指示点1004を入力したときの処理について説明する。ここでも、polyline_tableは図3(a)の状態であるとする。指示点入力部202が指示点1004を入力したとき、vertex_listに存在する最も新しくvertex_listに登録された頂点の情報は、図5の503であり、図10では頂点404となる。経路探索部206は、頂点404と指示点1004に対応する頂点406との間にpolyline_tableに存在するポリラインを用いた経路が存在するか探索する。polyline_tableは図3(a)の状態なので、頂点404と指示点1004に対応する頂点406との間には、polyline_tableにおけるポリライン402の線分408、409を利用した経路が存在する。そのため、経路探索部206は、経路が存在するという結果と、頂点404と指示点1004に対応する頂点406との間の経路に存在する頂点をポリライン編集確定部203へ出力し、処理をS707へ進める。ここでは、頂点404と指示点1004に対応する頂点406との間の経路に存在する頂点で、且つ既にvertex_listに存在している頂点404を除く頂点を、頂点405および指示点1004に対応する頂点406として出力する。
Next, processing when the designated
S707において、経路探索部206がポリライン編集確定部203へ経路が存在しないという結果を出力した場合、処理はS708へ進む。経路探索部206がポリライン編集確定部203へ経路が存在するという結果を出力した場合は、処理はS710へ進む。
If the
S708において、ポリライン編集確定部203は、vertex_listの末尾に指示点入力部202から入力された指示点の情報を追加し、処理をS709へ進める。例えば、指示点1002が指示点入力部202から入力された場合、ポリライン編集確定部203は、図5のvertex_listに頂点の情報502を追加する。
In S708, the
S709において、表示部204はポリライン編集確定部203が保持しているvertex_listの内容を参照し表示する。vertex_listの内容を表示することでユーザは、入力中のポリラインの位置関係を確認することができる。
In step S709, the
S710において、ポリライン編集確定部203は、経路探索部206から入力した頂点をvertex_listの末尾に追加し、工程をS709へ進める。ここで、図10の指示点1004が指示点入力部202に入力された場合、上述のようにS706において経路探索部206から出力される頂点405および406の情報がvertex_listの末尾に追加される。これは、指示点1004の1回の入力で、頂点405、頂点406の2つの頂点の情報を入力可能であることを示しており、入力の効率が向上するという効果がある。
In S710, the
S711において、ポリライン編集確定部203は、vertex_listに登録されている全ての頂点の情報を1つのポリラインの情報として、polyline_tableの末尾に追加する。例えば図5のvertex_listを図3(a)のpolyline_tableに追加した場合、図3(a)のpolyline_tableにポリラインの情報307が追加され、図3(b)の状態になる。また、ポリラインの情報307の頂点間の線分の状態は確定状態で追加される。
In S711, the
S712において、表示部204はポリライン保持部201が保持しているpolyline_tableの内容を参照し表示する。polyline_tableの内容を表示することでユーザは、入力が完了したポリラインを確認することができる。また、S711においてpolyline_tableに追加されたポリラインの情報307は確定状態であるため実線で表示される。
In S712, the
上述の説明の通り、本実施形態では、ユーザにより入力された2つの指示点が、polyline_tableに保持されている1つのポリラインに含まれる2つの頂点に対応している場合には、その対応する2つの頂点の間の線分を確定状態とする。図10の例では、指示点1003と1004は、ポリライン402の頂点404、406に対応し、この場合には、頂点404と406との間の線分が確定状態と決定する。
As described above, in the present embodiment, when two designated points input by the user correspond to two vertices included in one polyline held in polyline_table, the corresponding two Let a line segment between two vertices be in a definite state. In the example of FIG. 10, the designated
更に、ユーザにより入力された2つの指示点のうち1つが、polyline_tableに保持されている1つのポリラインに含まれるある頂点に対応し、もう一方の指示点がそのポリラインのどの頂点にも対応しない場合には、次のように制御される。すなわち、指示点に対応するポリラインの頂点と頂点に対応しない指示点との間の線分を確定状態とする。図10の例では、ポリラインのどの頂点とも対応しない指示点1002を新たな頂点1001とし、この頂点1001と、指示点1003に対応するポリラインの頂点404と、の間の線分が確定状態と決定する。
Furthermore, when one of the two designated points input by the user corresponds to a vertex included in one polyline held in polyline_table, and the other designated point does not correspond to any vertex of the polyline. Is controlled as follows. That is, the line segment between the vertex of the polyline corresponding to the designated point and the designated point not corresponding to the vertex is set as the determined state. In the example of FIG. 10, a designated
また、上述の処理により、確定状態として決定した線分を単一のポリラインとし、その情報をpolyline_tableに追加する。 Moreover, the line segment determined as the definite state is made into a single polyline by the above-mentioned processing, and the information is added to polyline_table.
以上、本実施形態の情報処理装置100は、ユーザが指示点を入力することに対応して、ユーザがひび割れであると判断したひび割れに対応するポリラインの線分の状態を確定状態に変更する。この構成により、対象画像に対してひび割れの入力を行うときに要する工数を低減できる。 [第2の実施形態]
以下、本発明の第2の実施形態について説明する。本実施形態において、経路探索部206は、polyline_tableと指示点および最も新しくvertex_listに登録された頂点の位置関係に基づいて評価値を導出する。そして、前記評価値に基づいて指示点と最も新しくvertex_listに登録された頂点との間の経路の有無を判定するものである。なお、第1の実施形態で既に説明した構成については同一の符号を付し、その説明は省略する。
As described above, in response to the user inputting the designated point, the
Hereinafter, a second embodiment of the present invention will be described. In the present embodiment, the
本実施形態の情報処理装置100の処理の流れは、第1の実施形態と比較すると、S706の処理内容のみが異なる。図8は本実施形態に係る経路探索の処理の流れを示すフローチャートであり、図8のサブルーチンを参照しつつ本実施形態のS706の処理の詳細を説明する。
The processing flow of the
図8のS801において、ポリライン編集確定部203は、指示点入力部202が入力した指示点と、vertex_listに存在する最も新しくvertex_listに登録された頂点の情報を経路探索部206へ出力する。同時にポリライン編集確定部203は、polyline_tableを経路探索部206へ出力する。そして、経路探索部206は、最も新しくvertex_listに登録された頂点と、指示点入力部202から入力された指示点の間の経路を評価し評価値を算出する。
In S801 of FIG. 8, the
図11は本実施形態における経路の評価方法を説明する図であり、この図を用いてS801の処理について説明する。図11において、指示点1102、1103は、1102、1103の順番に指示点入力部202に入力されたとする。よって、指示点1103が入力された際、指示点1102に対応する頂点1101は、最も新しくvertex_listに登録された頂点である。また、指示点1103に対応する頂点406はポリライン402上の頂点である。
FIG. 11 is a diagram for explaining the route evaluation method in the present embodiment, and the process of S801 will be described using this diagram. In FIG. 11, it is assumed that designated
ここで、頂点1101から頂点406が属している頂点406以外のポリラインの各頂点に対して仮想的に線分で繋ぎ、各線分に対応する評価値を導出する。図11の例では、線分1104〜1106に対して評価値を算出する。評価値の算出は、下記の数式1を用いる。
Here, a line segment is virtually connected from the
v=α・L+β・(180−D) …(数式1)
Vは評価値であり、評価値が低いほど良い評価になる。Lは線分の長さであり、ここでの線分の長さは線分1104〜1106の座標系401上での長さである。また、Dは、線分1104〜1106につながる頂点とその頂点に繋がる線分の内、頂点406に近い線分とがなす角度である。例えば、線分1104であれば、角度1107である。線分1105であれば、角度1108である。線分1106であれば、角度1109である。また、Dの角度はdegreeで表す。またα、βは係数であり、線分の長さLと角度Dのどちらを重視するかα、βの係数で決定する。もちろんα、βのどちらかを0に設定し、一方を評価しないようにしてもよい。
v = α · L + β · (180-D) ... (Equation 1)
V is an evaluation value, and the lower the evaluation value, the better the evaluation. L is the length of the line segment, and the length of the line segment here is the length on the coordinate
ここで、線分1104〜1106を例に評価値を算出する。座標系401上で線分1104の長さは13、線分1105の長さは15、線分1106の長さは17である。また、角度1107は87度、角度1108は153度、角度1109は、123度である。また、係数αが4であり係数βが1である。線分1104に対応する評価値は、4・13+1・(180−87)=145になる。線分1105に対応する評価値は、4・15+1・(180−153)=87になる。線分1106に対応する評価値は、4・17+1・(180−123)=125になる。
Here, evaluation values are calculated using
S802において、経路探索部206は、S801で算出したそれぞれの線分に対応する評価値の中で最も低い評価値の線分を選択し、閾値以下であるか判定する。閾値以下であれば、処理はS803へ進む。閾値以下でなければ、処理はS804へ進む。本実施形態において、閾値は100である。図11の例において、最も低い評価値は、線分1105に対応する87である。よって、この例の場合、最も低い評価値が閾値以下であるため、処理はS803へ進む。
In step S802, the
S803において、経路探索部206は、経路が有るという情報と、経路に含まれる頂点の情報をポリライン編集確定部203へ出力し、処理は図8のサブルーチン処理を抜けてS707へ進む。図11の例では、経路探索部206は、線分1105を含む頂点1101から頂点406までの最短経路に含まれる頂点の情報をポリライン編集確定部203へ出力する。具体的には、既にvertex_listに存在する頂点1101を除く、頂点404、405、406の情報がポリライン編集確定部203へ出力され、S710でvertex_listに追加される。これは、指示点1103の1回の入力で、頂点404、405、頂点406の3つの頂点の情報が入力されるということである。
In step S803, the
S804において、経路探索部206は、経路が無いという情報をポリライン編集確定部203へ出力し、処理はサブルーチン処理を抜けてS707へ進む。
In step S804, the
上述の説明のとおり、本実施形態は、2つの指示点のうち1つがpolyline_tableに保持されている1つのポリラインに含まれる頂点に対応し、他方の指示点がそのポリラインのどの頂点にも対応しない場合の処理に特徴を有するものである。つまり、このようなケースにおいて、第1の実施形態では、ユーザが入力した指示点とポリライン上の頂点とを直接結ぶ線分を確定状態としている。そのため、例えば図11のように、ユーザによって指示点1002および1003が入力されたとき、第1の実施形態では、指示点1002(頂点1001)と指示点1003に対応する頂点406とを結ぶ線分が確定状態として決定された。そのため、頂点1001、404,405,406を一連のポリラインとして追加するには、第1の実施形態の場合、頂点1001、404,406の3か所を指示、入力する必要がある。
As described above, in the present embodiment, one of two designated points corresponds to a vertex included in one polyline held in polyline_table, and the other designated point does not correspond to any vertex of that polyline. It is characterized by the processing of the case. That is, in such a case, in the first embodiment, a line segment directly connecting the designated point input by the user and the vertex on the polyline is in the determined state. Therefore, for example, as shown in FIG. 11, when the designated
これに対して、本実施形態では、上述のケースの場合に、ポリラインのどの頂点にも対応しない指示点と、指示点に対応する頂点を含むポリラインとの位置関係とに基づいて、どの線分を確定状態とするか決定するものである。より具体的には、ポリラインの各頂点を候補点とし、ポリラインのどの頂点にも対応しない指示点と候補点との距離を算出する。また、ポリラインのどの頂点にも対応しない指示点と候補点とによる線分と、その候補点を一方の端点としてポリラインに含まれる線分と、の角度を算出する。そして、この距離と角度とに基づいて、候補点の中から、ポリラインのどの頂点にも対応しない指示点と結ぶべき頂点を決定し、確定状態とする線分を決定するものである。このように、距離と角度とに基づいて確定状態とする線分を決定することにより、各頂点を都度指示、入力しなくとも、ひび割れに尤もらしい線分が確定状態として決定される。 On the other hand, in the present embodiment, in the case described above, which line segment is based on the designated point not corresponding to any vertex of the polyline and the positional relationship between the polyline including the vertex corresponding to the designated point. It is determined whether or not to be determined. More specifically, with each vertex of the polyline as a candidate point, the distance between the designated point and the candidate point which does not correspond to any vertex of the polyline is calculated. Further, the angle between the line segment by the designated point and the candidate point not corresponding to any vertex of the polyline and the line segment included in the polyline with the candidate point as one end point is calculated. Then, based on the distance and the angle, among the candidate points, the vertex to be connected to the designated point which does not correspond to any vertex of the polyline is determined, and the line segment to be in the determined state is determined. As described above, by determining the line segments to be in the definite state based on the distance and the angle, the line segments that are likely to be cracked are determined as the definite state without instructing each vertex each time and inputting.
以上、本実施形態の情報処理装置100は、ユーザが指示点を入力することに対応して、ユーザがひび割れであると判断したひび割れに対応するポリラインの線分の状態を確定状態にする。この構成により、対象画像に対してひび割れの入力を行うときに要する工数を低減できる。さらに、本実施形態では、ポリラインを構成する線分と線分がなす角度に基づいて、ユーザがひび割れであると判断したひび割れに対応するポリラインの線分の状態を確定状態にする。これによって、ひび割れらしいポリラインの線分が選ばれて、確定状態になるため、ユーザによる指示点の入力する回数が減少するので頂点の入力効率を向上することができる。
As described above, in response to the user inputting the designated point, the
[第3の実施形態]
以下、本発明の第3の実施形態について説明する。本実施形態では、ポリライン保持部201が、保持しているポリラインを構成する線分と略同一の位置に新規のポリラインを構成する線分が確定状態として追加された場合に、保持しているポリラインを構成する線分をポリライン保持部201から削除する。なお、第1、第2の実施形態で既に説明した構成については同一の符号を付し、その説明は省略する。
Third Embodiment
Hereinafter, a third embodiment of the present invention will be described. In this embodiment, the
本実施形態の情報処理装置100の処理の流れは、第1の実施形態と比較すると、S711の処理内容のみが異なる。図9は本実施形態に係るpolyline tableの登録処理の流れを示すフローチャートであり、図9のサブルーチンを参照しつつ本実施形態のS711の処理の詳細を説明する。
The processing flow of the
S901において、ポリライン編集確定部203は、vertex_listに登録されている全ての頂点の情報を1つのポリラインの情報としてpolyline_tableの末尾に追加する。例えば、上述した図10の例では、vertex_listに登録されている頂点1001、404、405、406で構成されるポリラインをpolyline_tableの末尾に追加する。追加後のpolyline_tableは、図3(b)のようになる。ここで、追加されたポリラインの情報は307である。
In step S901, the
S902において、ポリライン保持部201は、polyline_tableに追加された、確定状態の線分と略同一の位置にある線分を削除する。ここでは、確定状態であっても未確定状態であっても削除する。図3(b)において、polyline_tableに追加された確定状態の線分はポリラインの情報307である。図10において、ポリラインの情報307が有する線分と略同一の位置にある線分は、線分408、409である。線分408、409を構成する頂点の始点と終点の座標は、それぞれ(20,18)、(22,17)と、(22,17)、(26,10)である。よって、線分の頂点の始点と終点の座標が(20,18)、(22,17)と、(22,17)、(26,10)と略同一の位置にある線分を削除する。すなわち、ポリラインの情報305の線分の頂点の始点と終点の座標(20,18)、(22,17)と、(22,17)、(26,10)を削除する。結果、図3(c)のようにポリラインの情報305からpolyline_tableに追加された、確定状態の線分と略同一の位置にある線分を削除された状態になる。
In step S902, the
本実施形態において、略同一とは始点と終点のXY座標がそれぞれ10%異なったとしても同一の線分とみなせることである。図10の例では、polyline_tableに追加された確定状態の線分と、削除された線分の座標は完全に同一であった。しかし、ユーザの操作感を向上させるために、ユーザが入力する指示点の精度に基づいて、線分と略同一であれば線分を削除する。なお、略同一の座標とみなせる距離に関しては、予め定められた所定の距離(10%)を用いてもよいし、ユーザの指示(例えば、表示装置107に表示されるスライドバーを操作すること)によってそれを変更できるように構成されていてもよい。 In the present embodiment, “substantially identical” means that even if the XY coordinates of the start point and the end point differ by 10%, they can be regarded as the same line segment. In the example of FIG. 10, the coordinates of the line segment in the definite state added to polyline_table and the line segment deleted are completely identical. However, in order to improve the sense of operation of the user, the line segment is deleted if it is substantially identical to the line segment based on the accuracy of the designated point input by the user. Note that a predetermined predetermined distance (10%) may be used for a distance that can be regarded as substantially the same coordinates, or a user instruction (for example, operating a slide bar displayed on the display device 107) It may be configured to be able to change it.
以上、本実施形態の情報処理装置100は、ユーザが指示点を入力することに対応して、ユーザがひび割れであると判断したひび割れに対応するポリラインの線分の状態を確定状態にする。この構成により、対象画像に対してひび割れの入力を行うときに要する工数を低減できる。さらに、本実施形態では、重複した線分の削除に要する工数を低減できるという効果もある。
As described above, in response to the user inputting the designated point, the
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Other Embodiments
The present invention supplies a program that implements one or more functions of the above-described embodiments to a system or apparatus via a network or storage medium, and one or more processors in a computer of the system or apparatus read and execute the program. Processing is also feasible. It can also be implemented by a circuit (eg, an ASIC) that implements one or more functions.
100 情報処理装置
201 ポリライン保持部
202 指示点入力部
203 ポリライン編集確定部
204 表示部
205 判定部
206 経路探索部
207 画像入力部
208 ポリライン入力部
Claims (15)
前記対象画像に対してユーザが指示した第1の点および第2の点を入力する入力手段と、
前記入力された第1の点および第2の点が、前記保持手段に保持されている複数のポリラインのうちの1つのポリラインに含まれる複数の頂点のうちの2つの頂点を指示しているか否かを判定する判定手段と、
前記判定手段により指示していると判定された場合に、前記1つのポリラインにおける前記2つの頂点の間の線分を第2の状態として決定する決定手段と、
を有することを特徴とする情報処理装置。 Holding means for holding information indicating either the first state or the second state for a plurality of line segments constituting each of a plurality of polylines corresponding to a plurality of deformations included in the target image;
Input means for inputting a first point and a second point specified by the user with respect to the target image;
Whether the input first point and second point indicate two vertices of the plurality of vertices included in one polyline of the plurality of polylines held in the holding means Determining means for determining
A determination unit configured to determine a line segment between the two vertices in the one polyline as a second state, when it is determined that the instruction is made by the determination unit;
An information processing apparatus comprising:
前記決定手段は、前記1の点が指示すると判定された頂点と、前記第2の点との間の線分を第2の状態として決定することを特徴とする請求項1に記載の情報処理装置。 The determination means determines that the input first point indicates any vertex included in the one polyline, and the input second point is included in the one polyline If it is determined that neither vertex is pointing
The information processing according to claim 1, wherein the determination unit determines, as a second state, a line segment between a vertex determined to be indicated by the one point and the second point. apparatus.
前記決定手段は、前記1の点が指示すると判定された頂点と前記1つのポリラインとの位置関係とに基づいて、第2の状態とする線分を決定することを特徴とする請求項1に記載の情報処理装置。 The determination means determines that the input first point indicates any vertex included in the one polyline, and the input second point is included in the one polyline If it is determined that neither vertex is pointing
2. The apparatus according to claim 1, wherein said determination means determines a line segment to be in a second state based on a positional relationship between a vertex determined to be indicated by said one point and said one polyline. Information processor as described.
前記対象画像に対してユーザが指示した第1の点および第2の点を入力する入力ステップと、
前記入力された第1の点および第2の点が、前記保持手段に保持されている複数のポリラインのうちの1つのポリラインに含まれる複数の頂点のうちの2つの頂点を指示しているか否かを判定する判定ステップと、
前記判定ステップにおいて指示していると判定された場合に、前記1つのポリラインにおける前記2つの頂点の間の線分を第2の状態として決定する決定ステップと、
を有することを特徴とする情報処理方法。 Information having holding means for holding information indicating either a first state or a second state for a plurality of line segments constituting each of a plurality of polylines corresponding to a plurality of deformations included in the target image An information processing method in the processing device,
An input step of inputting a first point and a second point designated by the user with respect to the target image;
Whether the input first point and second point indicate two vertices of the plurality of vertices included in one polyline of the plurality of polylines held in the holding means A determination step of determining
A determination step of determining a line segment between the two vertexes in the one polyline as a second state, when it is determined in the determination step that the instruction is given;
An information processing method characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017083754A JP2018181197A (en) | 2017-04-20 | 2017-04-20 | Information processing unit, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017083754A JP2018181197A (en) | 2017-04-20 | 2017-04-20 | Information processing unit, information processing method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018181197A true JP2018181197A (en) | 2018-11-15 |
JP2018181197A5 JP2018181197A5 (en) | 2020-05-14 |
Family
ID=64275588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017083754A Withdrawn JP2018181197A (en) | 2017-04-20 | 2017-04-20 | Information processing unit, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018181197A (en) |
-
2017
- 2017-04-20 JP JP2017083754A patent/JP2018181197A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10942130B2 (en) | Damage information processing device and damage information processing method | |
JP5248806B2 (en) | Information processing apparatus and information processing method | |
JP6716996B2 (en) | Image processing program, image processing apparatus, and image processing method | |
US20200033109A1 (en) | Workpiece measurement device, workpiece measurement method and non-transitory computer readable medium recording a program | |
US20230260216A1 (en) | Point cloud annotation device, method, and program | |
JP2019114103A (en) | Object recognition processing device, object recognition processing method and program | |
JP2021196705A (en) | Image processing system, image processing method and program | |
JPWO2017002209A1 (en) | Display control apparatus, display control method, and display control program | |
WO2015182654A1 (en) | Interference check system | |
US20210319602A1 (en) | Map generation system, map generation method, and computer readable medium | |
US10600202B2 (en) | Information processing device and method, and program | |
CN114818065A (en) | Three-dimensional roadway model building method and device, electronic equipment and storage medium | |
JP7003617B2 (en) | Estimator, estimation method, and estimation program | |
JP6786015B1 (en) | Motion analysis system and motion analysis program | |
JP2017133838A (en) | Facility management data extracting device, and facility management data extracting method | |
JP2018181197A (en) | Information processing unit, information processing method, and program | |
JP2005070373A (en) | Program and device for map coordinate conversion | |
JP5620741B2 (en) | Information processing apparatus, information processing method, and program | |
JP4833749B2 (en) | Pipe length measurement system | |
JP2009086956A (en) | Road map data production device | |
JP2006172099A (en) | Changed region recognition device and change recognition system | |
JP6757242B2 (en) | Fibrous tissue extractor, fibrous tissue extraction method and fibrous tissue extraction program | |
JP3447716B2 (en) | Image processing device | |
JP6293293B2 (en) | How to establish routines for multi-sensor measurement equipment | |
JP7399065B2 (en) | Structure information providing system, structure information providing method, and structure information providing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200402 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200402 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20200714 |