(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-07
(45)【発行日】2024-06-17
(54)【発明の名称】図面データ処理装置、図面データ処理方法、及びプログラム
(51)【国際特許分類】
G06F 30/10 20200101AFI20240610BHJP
G06F 30/12 20200101ALI20240610BHJP
G06F 30/27 20200101ALI20240610BHJP
G06T 1/00 20060101ALI20240610BHJP
【FI】
G06F30/10 100
G06F30/12
G06F30/27
G06T1/00 A
(21)【出願番号】P 2021034171
(22)【出願日】2021-03-04
【審査請求日】2023-02-17
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】浅野 三恵子
(72)【発明者】
【氏名】野田 玲子
(72)【発明者】
【氏名】登内 洋次郎
【審査官】松浦 功
(56)【参考文献】
【文献】国際公開第2018/003206(WO,A1)
【文献】特開平11-039366(JP,A)
【文献】特開2020-194352(JP,A)
【文献】特開2011-122985(JP,A)
【文献】特開2021-022330(JP,A)
【文献】特開2011-028307(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00 -30/398
G06T 1/00
G06T 7/00 - 7/90
G06V 10/00 -20/90
(57)【特許請求の範囲】
【請求項1】
入力図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを取得するデータ取得部と、
前記複数のオブジェクトデータから前記複数のオブジェクトに関する属性情報を取得する属性情報取得部と、
前記取得された属性情報と、
図面を利用する目的を示す複数のデータ活用目的に関連付けられた
、データ活用目的に必要な要素を構成するオブジェクトを検出するための複数のフィルタリング条件を含む辞書と、
ユーザにより入力される前記入力図面を利用する目的を示す入力データ活用目的と、に基づいて、前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成するフィルタリング部と、
前記フィルタリング結果を出力する出力部と、
を備える図面データ処理装置。
【請求項2】
前記データ取得部は、画像データを受け取り、前記画像データをラスタベクタ変換することにより、前記複数のオブジェクトデータを取得する、
請求項1に記載の図面データ処理装置。
【請求項3】
前記フィルタリング部は、前記複数のオブジェクトデータを画像データに変換し、前記フィルタリング結果を生成するために前記画像データに対してフィルタリングを行う、
請求項1又は2に記載の図面データ処理装置。
【請求項4】
図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを取得するデータ取得部と、
前記複数のオブジェクトデータから前記複数のオブジェクトに関する属性情報を取得する属性情報取得部と、
前記取得された属性情報と、複数のデータ活用目的に関連付けられた複数のフィルタリング条件を含む辞書と、入力データ活用目的と、に基づいて、前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成するフィルタリング部と、
前記フィルタリング結果を出力する出力部と、
を備え、
前記フィルタリング部は、前記複数のオブジェクトデータを画像データに変換し、前記フィルタリング結果を生成するために前記画像データに対してフィルタリングを行う
、図面データ処理装置。
【請求項5】
前記フィルタリング部は、前記取得された属性情報から特定されるオブジェクトの位置、形状、若しくは色、又はレイヤの表示状態に基づいて、前記複数のオブジェクトデータのうちの少なくとも1つを選択し、前記選択された少なくとも1つのオブジェクトデータから前記画像データを生成する、
請求項
3又は4に記載の図面データ処理装置。
【請求項6】
前記辞書は、前記画像データを入力したときに、前記画像データに含まれる画素ごとに、画素が前記入力データ活用目的に関連付けられたフィルタリング条件により指定される種類のオブジェクトに属するか否かを示すラベルを含むデータを出力するように構成される、
請求項3
乃至5のいずれか1項に記載の図面データ処理装置。
【請求項7】
前記フィルタリング部は、前記複数のオブジェクトごとに、前記ラベルに基づいて、オブジェクトが前記入力データ活用目的に関連付けられたフィルタリング条件により指定される種類のオブジェクトである確からしさを示す確信度を算出し、前記算出された確信度に基づいて前記複数のオブジェクトデータから前記入力データ活用目的に適合するオブジェクトデータを抽出し、前記抽出されたオブジェクトデータを含む前記フィルタリング結果を生成する、
請求項
6に記載の図面データ処理装置。
【請求項8】
前記フィルタリング部は、前記複数のオブジェクトごとに、前記ラベルに基づいて、オブジェクトが前記入力データ活用目的に関連付けられたフィルタリング条件により指定される種類のオブジェクトである確からしさを示す確信度を算出し、前記算出された確信度を含む前記フィルタリング結果を生成する、
請求項
6に記載の図面データ処理装置。
【請求項9】
前記辞書は、前記複数のフィルタリング条件の各々により指定される形状のオブジェクトを検出するためのルールを含む、
請求項1乃至
5のいずれか1項に記載の図面データ処理装置。
【請求項10】
前記辞書は、前記複数のフィルタリング条件の各々により指定される形状のオブジェクトを検出するように構成されるモデルを含む、
請求項1乃至
5のいずれか1項に記載の図面データ処理装置。
【請求項11】
前記フィルタリング部は、前記複数のオブジェクトデータを、必要及び不要を含む3以上のクラスに分類する、
請求項1乃至
10のいずれか1項に記載の図面データ処理装置。
【請求項12】
前記辞書は、前記複数のデータ活用目的に関連付けられた複数の辞書を含み、
前記フィルタリング部は、前記複数の辞書の中から前記入力データ活用目的に関連付けられた辞書を選択し、前記選択された辞書を用いて前記複数のオブジェクトデータをフィルタリングする、
請求項1乃至
11のいずれか1項に記載の図面データ処理装置。
【請求項13】
コンピュータが実行する図面データ処理方法であって、
入力図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを取得することと、
前記複数のオブジェクトデータから前記複数のオブジェクトに関する属性情報を取得することと、
前記取得された属性情報と、
図面を利用する目的を示す複数のデータ活用目的に関連付けられた
、データ活用目的に必要な要素を構成するオブジェクトを検出するための複数のフィルタリング条件を含む辞書と、
ユーザにより入力される前記入力図面を利用する目的を示す入力データ活用目的と、に基づいて、前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成することと、
前記フィルタリング結果を出力することと、
を備える図面データ処理方法。
【請求項14】
コンピュータが実行する図面データ処理方法であって、
図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを取得することと、
前記複数のオブジェクトデータから前記複数のオブジェクトに関する属性情報を取得することと、
前記取得された属性情報と、複数のデータ活用目的に関連付けられた複数のフィルタリング条件を含む辞書と、入力データ活用目的と、に基づいて、前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成することと、
前記フィルタリング結果を出力することと、
を備え、
前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成することは、前記複数のオブジェクトデータを画像データに変換し、前記フィルタリング結果を生成するために前記画像データに対してフィルタリングを行うことを含む、図面データ処理方法。
【請求項15】
入力図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを取得する手段、
前記複数のオブジェクトデータから前記複数のオブジェクトに関する属性情報を取得する手段、
前記取得された属性情報と、
図面を利用する目的を示す複数のデータ活用目的に関連付けられた
、データ活用目的に必要な要素を構成するオブジェクトを検出するための複数のフィルタリング条件を含む辞書と、
ユーザにより入力される前記入力図面を利用する目的を示す入力データ活用目的と、に基づいて、前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成する手段、及び
前記フィルタリング結果を出力する手段としてコンピュータを機能させるためのプログラム。
【請求項16】
図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを取得する手段、
前記複数のオブジェクトデータから前記複数のオブジェクトに関する属性情報を取得する手段、
前記取得された属性情報と、複数のデータ活用目的に関連付けられた複数のフィルタリング条件を含む辞書と、入力データ活用目的と、に基づいて、前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成する手段、及び
前記フィルタリング結果を出力する手段としてコンピュータを機能させ
、
前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成する手段は、前記複数のオブジェクトデータを画像データに変換し、前記フィルタリング結果を生成するために前記画像データに対してフィルタリングを行う、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、図面データ処理装置、図面データ処理方法、及びプログラムに関する。
【背景技術】
【0002】
CAD(Computer-Aided Design)データなどの図面データを作成するときは、ユーザは目的をもって作図を行うため、図面を構成する個々のオブジェクトには、例えば、線幅、線色、線種、レイヤ名称などが付与される。図面データにおいては、視認性をよくするために、レイヤ分けして情報を管理することが多い。しかし、ユーザが他のユーザが作成した図面データを活用しようとする場合、他のユーザによるレイヤ分類及び属性の付与内容では不十分なことが多い。
【0003】
ユーザが他のユーザが図面データを作成した目的とは異なる目的で図面データを活用する場合、図面データには不要なオブジェクトデータが含まれることがある。このため、ユーザは、必要なオブジェクトデータと不要なオブジェクトデータとを人手で取捨選択する必要があり、作業効率が低くなる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2005-85077号公報
【文献】特開2008-33875号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明が解決しようとする課題は、ユーザが図面データを活用する際の作業効率を向上できる技術を提供することである。
【課題を解決するための手段】
【0006】
一実施形態に係る図面データ処理装置は、データ取得部、属性情報取得部、フィルタリング部、及び出力部を備える。データ取得部は、図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを取得する。属性情報取得部は、前記複数のオブジェクトデータから前記複数のオブジェクトに関する属性情報を取得する。フィルタリング部は、前記取得された属性情報と、複数のデータ活用目的に関連付けられた複数のフィルタリング条件を含む辞書と、入力データ活用目的と、に基づいて、前記複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成する。出力部は、前記フィルタリング結果を出力する。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態に係る図面データ処理装置を示すブロック図である。
【
図2】
図2は、
図1に示した図面データ処理装置の利用例を説明する図である。
【
図3】
図3は、
図1に示したフィルタリング部により実行されるフィルタリングの一例を示すフローチャートである。
【
図4】
図4は、
図1に示したフィルタリング部により実行されるフィルタリングの他の例を示すフローチャートである。
【
図5】
図5は、実施形態に係るコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら実施形態を説明する。
【0009】
図1は、一実施形態に係る図面データ処理装置10を概略的に示している。
図1に示すように、図面データ処理装置10は、データ取得部11、属性情報取得部12、フィルタリング部13、及び出力部14を備える。
【0010】
データ取得部11は、図面を構成する複数のオブジェクトのそれぞれに関する複数のオブジェクトデータを含む図面データを取得する。各オブジェクトデータは、オブジェクトに関連する情報であるオブジェクト情報を数値又は文字列で表現するデータである。オブジェクト情報は、例えば、形状、レイヤ名称、位置(座標値)、線幅、線色、線種などを示す情報を含んでよい。オブジェクトがレイヤで分類される図面データは、レイヤの表示状態(表示/非表示)を示す表示状態情報を含んでよい。表示状態は図面データを作成したユーザにより設定されてよい。
【0011】
データ取得部11が取得する図面データは、例えばAutoCADの中間ファイル形式であるdxf形式のデータやSVG形式のデータのようなベクタデータ(ベクトルデータとも称される)であり得る。この場合、オブジェクトデータは、ベクタ形式でオブジェクトの特徴を記述したデータである。画像データ(ラスタデータ)が図面データ処理装置10に入力される場合、データ取得部11は、画像データを受け取り、画像データをラスタベクタ変換することにより、図面データを取得してよい。図面データは、図形及び文字列をオブジェクトとして扱える形式であればよい。
【0012】
属性情報取得部12は、データ取得部11により取得された図面データに含まれる複数のオブジェクトデータから複数のオブジェクトに関する属性情報を取得する。属性情報は、オブジェクトのそれぞれの属性を示す情報であり、例えば、各オブジェクトの形状、レイヤ名称、位置、線幅、線色、線種を示す情報を含む。オブジェクト同士(例えば線分同士又は図形同士)に接続関係がある場合には、属性情報取得部12は、オブジェクト間の接続関係を示す接続情報を属性情報としてさらに取得してよい。オブジェクトデータがオブジェクトの生成又は編集を行った時間などオブジェクトに特有の情報を含む場合、属性情報取得部12は、オブジェクトに特有の情報を属性情報としてさらに取得してよい。すなわち、属性情報取得部12は、オブジェクトごとに取得できる情報をすべてオブジェクトの属性情報として取得することができる。属性情報はレイヤの表示状態を示す情報をさらに含んでよい。
【0013】
フィルタリング部13は、属性情報取得部12により取得された属性情報と、複数のデータ活用目的のそれぞれに関連付けられた複数のフィルタリング条件を含む辞書と、入力データ活用目的と、に基づいて、データ取得部11により取得された図面データに含まれるオブジェクトデータをフィルタリングしてフィルタリング結果を生成する。入力データ活用目的は、図面データを利用しようとするユーザにより入力されたデータ活用目的である。データ活用目的は、図面データを利用する目的を示す。一例では、各フィルタリング条件は、データ活用目的に必要なオブジェクトの特徴を指定する情報を含んでよい。特徴の例は、形状、種類などを含む。辞書は、各フィルタリング条件により指定される特徴を有するオブジェクトに関するオブジェクトデータを抽出するように構成されてよい。フィルタリング部13は、入力データ活用目的に一致するデータ活用目的に関連付けられたフィルタリング条件により指定される特徴を有するオブジェクトに関するオブジェクトデータを抽出するために、辞書を使用する。各データ活用目的に必要なオブジェクトの特徴は、人手で定められてもよく、機械学習により定められてもよい。辞書は、図面データ処理装置10に専用に作成されたものであってもよく、他の用途のために作成されたものであってもよい。フィルタリング条件は、上記の例に限定されない。フィルタリング結果は、例えば、フィルタリング部13により抽出された、入力データ活用目的に適合する1又は複数のオブジェクトデータを含む。
【0014】
出力部14は、フィルタリング部13により生成されたフィルタリング結果を出力する。出力部14は、フィルタリング部13により抽出されたオブジェクトデータをdxf形式又はsvg形式の中間ファイルとして出力してもよい。出力部14は、フィルタリング部13により抽出されたオブジェクトデータを画面上に描画してもよい。出力部14は、フィルタリング部13により抽出されたオブジェクトデータを画像データに変換して画像データを出力してもよい。出力部14は、データ取得部11により取得された図面データに新たなレイヤを追加し、追加したレイヤにフィルタリング部13により抽出されたオブジェクトデータを複製又は移動させてもよい。
【0015】
上記構成を有する図面データ処理装置10は、複数のオブジェクトデータからユーザのデータ活用目的に必要なオブジェクトデータを抽出する。これにより、ユーザ自身でオブジェクトデータの取捨選択を行わなくてよくなる。その結果、ユーザの作業効率が大幅に向上する。
【0016】
図2を参照して、図面データが複数レイヤで管理されている工場内の図面から新規空調設備の設置エリア及びサイズを計算する事例について説明する。
【0017】
図2に示すように、データ取得部11は、図面データとしてのCADデータ21を取得する。CADデータ21は、工場内図、電気配線図、設備図、寸法図を含む複数のレイヤで管理されている。各レイヤには複数のオブジェクトが属し得る。属性情報取得部12は、CADデータ21から、図面に含まれるオブジェクトに関する属性情報を取得する。
【0018】
CADデータ21には、工場内の配置及び配線を示す情報は含まれているが、空調設備を設置すべき空間を示す空間情報は含まれているわけではない。空調設備を設置すべき空間の検出は、例えば、部屋を構成する窓、壁、ドア、設備などに基づいて行われるが、CADデータ21には、そのような属性を示す情報は含まれていない。部屋を検出するためには、CADデータ21から部屋の構成要素に対応するオブジェクトに関するオブジェクトデータを抽出する必要がある。
【0019】
フィルタリング部13は、図面に含まれるオブジェクトの中から部屋の構成要素であるオブジェクトを選択し、選択したオブジェクトに関するオブジェクトデータを抽出する。出力部14は、フィルタリング部13により抽出されたオブジェクトデータをデータ処理部(図示せず)に出力する。
【0020】
データ処理部は、フィルタリング部13により抽出されたオブジェクトデータに基づいて、空調設備を設置するための空間を検出する空間検出22を行う。さらに、データ処理部は、検出した空間のサイズに合わせて空調設備の仕様を計算する空間設備計算23を行う。
【0021】
図3は、フィルタリング部13により実行されるフィルタリングの一例を概略的に示している。ここでは、入力データ活用目的が部屋(空間)検出である場合を例に挙げて説明する。
【0022】
まず、フィルタリング部13は、データ取得部11により取得された複数のオブジェクトデータを画像データに変換する(
図3のステップS31)。フィルタリング部13は、属性情報取得部12により取得された属性情報に基づいて複数のオブジェクトデータのうちの少なくとも1つを選択し、選択した少なくとも1つのオブジェクトデータをベクタラスタ変換することにより、画像データを生成してよい。例えば、フィルタリング部13は、属性情報取得部12により取得された属性情報から特定されるオブジェクトの位置とオブジェクトの形状とオブジェクトの色とレイヤの表示状態とのうちの少なくとも1つに基づいて、オブジェクトデータの選択を行ってよい。例えば、フィルタリング部13は、表示状態が表示に設定されているレイヤに属するオブジェクトデータを選択し、表示状態が非表示に設定されているレイヤに属するオブジェクトデータを選択しない。例えば、フィルタリング部13は、所定の形状又は線色を有するオブジェクトに関するオブジェクトデータを選択しない。
【0023】
フィルタリング部13は、画像データに対してセグメンテーションを行う(ステップS32)。具体的には、フィルタリング部13は、画像内の各画素が部屋構成要素に属するか否かを判定する。判定は、事前に作成された辞書を用いて実行されてよい。部屋構成要素は、入力データ活用目的に一致するデータ活用目的に関連付けられたフィルタリング条件により指定される種類のオブジェクトに相当する。言い換えると、部屋検出というデータ活用目的は、部屋構成要素に関するオブジェクトデータを抽出するというフィルタリング条件に関連付けられている。
【0024】
辞書は、画像データを入力したときに、画像データに含まれる画素ごとに、画素が部屋構成要素に属するか否かを示すラベル(以下、評価値と称する)を含むデータを出力するように構成されてよい。評価値の定義は任意に定めてよい。例えば、評価値は、値“0”が画素が部屋構成要素に属することを示し、値“1”が画素が部屋構成要素に属さないことを示すものとして、二値で定義されてよい。代替として、評価値は、画素が部屋構成要素に属する確からしさを示すものであってよい。例えば、評価値は、0から1までの範囲内の値をとり、確からしさが高いほど値が大きくなる(1に近くなる)ように、定義されてよい。
【0025】
辞書は、機械学習により得られるモデル、例えばCNN(Convolutional Neural Network)を用いて実現してもよい。入力画像の各画素が所定のカテゴリに属するか否かを判定するCNNの例として、セマンティックセグメンテーションがある。辞書は、セマンティックセグメンテーションを用いて作成されてよい。画素のカテゴリ判定を行う手法は、セマンティックセグメンテーションに限らず、他の手法であってもよい。入力画像から所定の物体の領域を検出するCNNの例として、シングルショットディテクタ(SSD;Single Shot Detector)がある。辞書は、シングルショットディテクタを用いて作成されてもよい。シングルショットディテクタを用いる場合、辞書は、画像において所定の物体に対応する領域を検出し、検出結果に基づいて画像内の各画素にラベルを付与する。例えば、所定の物体に対応する領域内の各画素には、1に近い評価値を付与し、それ以外の領域内の各画素には、0に近い評価値を付与する。画像から物体を検出する手法は、シングルショットディテクタに限らず、他の手法であってもよい。
【0026】
フィルタリング部13は、画像内の画素とオブジェクトとの対応付けを行い(ステップS33)、オブジェクトが部屋構成要素である確からしさを示す信頼度を算出する(ステップS34)。具体的には、フィルタリング部13は、オブジェクトに対応する複数画素の評価値に基づいてそのオブジェクトの信頼度を算出してよい。例えば、フィルタリング部13は、オブジェクトに対応する画素の評価値の平均値を信頼度として算出してもよい。代替として、フィルタリング部13は、オブジェクトに対応する画素の評価値のうちの最大値を信頼度として採用してもよい。フィルタリング部13は、あるオブジェクトに接続又は近接するオブジェクトに対応する画素の評価値を用いてあるオブジェクトの信頼度を算出してもよい。
【0027】
フィルタリング部13は、算出した信頼度を閾値処理することによりオブジェクトを選択し、選択したオブジェクトに関するオブジェクトデータを含むフィルタリング結果を生成する(ステップS35)。例えば、フィルタリング部13は、信頼度が閾値を超えたオブジェクトを選択する。閾値は、固定値であってもよく、ユーザにより設定されてもよい。出力部14がフィルタリング結果に基づく画像を画面上に表示する場合において、画面上に信頼度に関する閾値を変更するスライドバーが設けられてよい。ユーザがスライドバーを操作して閾値を変更すると、フィルタリング結果が変化する。例えば、閾値を小さくすると、信頼度が変更後の閾値を超えるオブジェクトデータがフィルタリング結果に追加される。出力部14は、閾値の変更前後での表示内容を比較するために、閾値変更後に新たに表示されるオブジェクトの色を変更するようにしてもよい。
【0028】
上述した例では、フィルタリング結果は、フィルタリング部13により抽出された、入力データ活用目的に適合する1又は複数のオブジェクトデータを含む。言い換えると、フィルタリング部13は、不要なオブジェクトデータを除去し、必要なオブジェクトデータを選択的に含むフィルタリング結果を生成する。代替として、フィルタリング部13は、データ取得部11により取得された複数のオブジェクトデータとステップS34で算出された信頼度とを関連付けて含むフィルタリング結果を生成してもよい。
【0029】
上述した例では、フィルタリング部13は、オブジェクトデータを必要及び不要という2つのクラスに分類する。具体的には、フィルタリング部13は、オブジェクトを部屋構成要素及び他の要素という2つのクラスに分類する。代替として、フィルタリング部13は、オブジェクトデータを3つ以上のクラスに分類してもよい。一例では、閾値処理において複数の閾値を使用してよい。例えば、フィルタリング部13は、確信度が第1閾値を下回るオブジェクトに関するオブジェクトデータを不要と判定し、確信度が第2閾値を超えるオブジェクトに関するオブジェクトデータを必要と判定し、確信度が第1閾値と第2閾値との間に含まれるオブジェクトに関するオブジェクトデータを要検討と判定する。フィルタリング結果は、必要と判定されたオブジェクトデータと、要検討と判定されたオブジェクトデータと、を含んでよい。要検討と判定されたオブジェクトデータが必要か不要かをユーザが判断してよい。他の例では、フィルタリング部13は、オブジェクトデータを、オブジェクトが例えば部屋構成要素、廊下、他の要素という3つのクラスのいずれであるかを示すラベルとともに含むフィルタリング結果を生成してもよい。
【0030】
上述した例では、フィルタリング部13はオブジェクトデータを画像化してからセグメンテーションを行う。代替として、フィルタリング部13はオブジェクトデータのままセグメンテーションを行ってもよい。入力データが画像データであり、データ取得部11が画像データをベクトル化してオブジェクトデータを得た場合において、フィルタリング部13は、オブジェクトデータを画像化してもよい。
【0031】
フィルタリング部13は、複数のデータ活用目的に関連付けられた複数の辞書を備えてよい。この場合、フィルタリング部13は、複数の辞書の中から、入力データ活用目的に一致するデータ活用目的に関連付けられた辞書を選択し、選択した辞書を用いてフィルタリングを行う。
【0032】
図4は、フィルタリング部13により実行されるフィルタリングの別の例を概略的に示している。
図4に示す処理は、フィルタリング部13が、複数のフィルタリング条件の各々により指定される形状のオブジェクトを検出するためのルールを含むルールベース辞書を用いてフィルタリングを行う処理の一例である。
【0033】
フィルタリング部13は、画像データに対して形状検出を行う(ステップS41)。例えば、フィルタリング部13は、画像においてドア及び窓を示す形状を検出する。フィルタリング部13は、垂直に交差する2つの線分と線分の端を結ぶ円弧とで形成される形状をドア形状として検出してよい。ドアの幅を事前に規定しておくことでドア形状の検出精度を高めることができる。窓の幅を事前に規格しておくことにより、フィルタリング部13は窓形状を検出することができる。
【0034】
フィルタリング部13は接続判定を行う(ステップS42)。例えば、フィルタリング部13は、ステップS41で検出されたドア及び窓と接続している線分を検出する。
【0035】
フィルタリング部13は閉ループ検出を行う(ステップS43)。例えば、フィルタリング部13は、ステップS41で検出されたドアの端点を起点としてステップS41で検出されたドア及び窓とステップS42で検出された線分とをトレースすることで閉ループを検出する。フィルタリング部13は、検出した閉ループを構成するオブジェクトに関するオブジェクトデータを入力データ活用目的に適合するオブジェクトデータとして抽出する。フィルタリング部13はステップS41~S43に示す処理を繰り返す。最終的に抽出されなかったオブジェクトデータは不要なオブジェクトデータとして判断される。
【0036】
出力部14は、フィルタリング部13により抽出されたオブジェクトデータを含むフィルタリング結果を生成する(ステップS44)。
【0037】
なお、フィルタリングのさらなる例では、辞書は、グラフネットワークを使用した学習により得られる、各フィルタリング条件により指定される形状のオブジェクトを検出するように構成されるモデルを含む。フィルタリング部13は、このモデルを用いて各オブジェクトが構成要素であるか否かを判定してよい。例えば、オブジェクトの必要な要素と不要な要素を2つ異なったクラスのノードとしてグラフを定義し、ノード分類をしてもよい。
【0038】
以上のように、図面データ処理装置10は、図面を構成する複数のオブジェクトに関する複数のオブジェクトデータを含む図面データを取得し、複数のオブジェクトデータから複数のオブジェクトに関する属性情報を取得し、取得された属性情報と複数のデータ活用目的に関連付けられた複数のフィルタリング条件を含む辞書と入力データ活用目的とに基づいて、複数のオブジェクトデータをフィルタリングしてフィルタリング結果を生成し、フィルタリング結果を出力する。当該構成によれば、複数のオブジェクトデータから入力データ活用目的に必要なオブジェクトデータを抽出することが可能となる。これにより、ユーザが必要なオブジェクトデータと不要なオブジェクトデータとを取捨選択する手間が軽減される又はなくなる。その結果、ユーザが図面データを活用する際の作業効率が向上する。
【0039】
図面データ処理装置10について上述した処理は、CPU(Central Processing Unit)などの汎用回路によりプログラムを実行することにより実現することができる。
【0040】
図5は、一実施形態に係るコンピュータ50のハードウェア構成例を概略的に示している。
図5に示すように、コンピュータ50は、プロセッサ51、RAM(Random Access Memory)52、プログラムメモリ53、ストレージデバイス54、及び入出力インタフェース55を備える。プロセッサ51は、バスを介してRAM52、プログラムメモリ53、ストレージデバイス54、及び入出力インタフェース55と信号をやり取りする。
【0041】
プロセッサ51は例えばCPUを含む。RAM52はワーキングメモリとしてプロセッサ51により使用される。RAM52はSDRAM(Synchronous Dynamic Random Access Memory)などの揮発性メモリを含む。プログラムメモリ53は、図面データ処理プログラムなど、プロセッサ51により実行されるプログラムを記憶する。プログラムはコンピュータ実行可能命令を含む。プログラムメモリ53として、例えば、ROM(Read-Only Memory)が使用される。
【0042】
プロセッサ51は、プログラムメモリ53に記憶されたプログラムをRAM52に展開し、プログラムを解釈及び実行する。図面データ処理プログラムは、プロセッサ51により実行されたときに、図面データ処理装置10について上述した処理をプロセッサ51に実行させる。言い換えると、プロセッサ51は、図面データ処理プログラムに従って、データ取得部11、属性情報取得部12、フィルタリング部13、及び出力部14として機能することができる。
【0043】
図面データ処理プログラムなどのプログラムは、コンピュータで読み取り可能な記憶媒体に記憶された状態でコンピュータ50に提供されてよい。この場合、例えば、コンピュータ50は、記憶媒体からデータを読み出すドライブを備え、記憶媒体からプログラムを取得してよい。記憶媒体の例は、磁気ディスク、光ディスク(CD-ROM、CD-R、DVD-ROM、DVD-Rなど)、光磁気ディスク(MOなど)、半導体メモリを含む。また、プログラムをネットワーク上のサーバに格納し、コンピュータ50がサーバからプログラムをダウンロードするようにしてもよい。
【0044】
ストレージデバイス54はデータを記憶する。ストレージデバイス54は、ハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)などの不揮発性メモリを含む。ストレージデバイス54の一部領域がプログラムメモリ53として使用されてもよい。
【0045】
入出力インタフェース55は、外部機器を接続するためのインタフェースである。入出力インタフェース55は、キーボードなどの入力装置及び/又はディスプレイ装置などの出力装置を接続するためのポートを備えてよい。入出力インタフェース55は、外部装置と通信するための通信モジュールを備えてよい。通信モジュールは、有線通信モジュールであってもよく、無線通信モジュールであってもよい。プロセッサ51は、入出力インタフェース55を介してユーザからデータ活用目的の入力を受け取る。プロセッサ51は、入出力インタフェース55を介して出力装置又は外部装置へフィルタリング結果を出力する。
【0046】
なお、図面データ処理装置10について上述した処理の少なくとも一部は、ASIC(Application Specific Integrated Circuit)又はFPGA(Field Programmable Gate Array)などの専用回路で実施されてもよい。処理回路は、汎用回路及び/又は専用回路を含む。
【0047】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0048】
10…図面データ処理装置、11…データ取得部、12…属性情報取得部、13…フィルタリング部、14…出力部、50…コンピュータ、51…プロセッサ、52…RAM、53…プログラムメモリ、54…ストレージデバイス、55…入出力インタフェース。