(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための最良の形態】
【0014】
以下、本発明の実施形態について図面を用いて詳細に説明する。ただし、本発明は多くの異なる形態による実施が可能であり、以下に示す実施形態の記載の例にのみ限定されるわけではない。
【0015】
図1は、本実施形態に係る作図支援システム(以下「本システム」という。)1の概略を示す図である。本図で示すように、要素識別情報が付された複数の要素部品2と、複数の要素部品2の配置に基づき作図データを作成する作図データ作成装置3と、作成された作図データに基づき複数の要素領域データ、及び、前記複数の要素領域データ同士の接続情報データを作成する作図支援装置4と、複数の要素部品2を作成するための要素作成装置5と、を有する。本システムにおいて、作図データ作成装置3と、作図支援装置4、要素作成装置5は互いに接続可能であり、データのやり取りを行なうことができる構成となっている。
【0016】
本システムにおいて、複数の要素部品2は、上記のとおり、各々要素識別情報が付されたもの、具体的には、識別情報が印字されたものとなっている。また要素部品2は、要素毎に複数設けられている。本システムにおいて複数の要素部品2は、一定の面積を有する平面(作図領域)を有する作図部材に貼り付けられる。作図部材の例としては、一定の平面を有するものである限りにおいて限定されるわけではなく、ホワイトボードであることは好ましい一例であるが、場合によっては建物の壁や、机等様々なものが利用できる。また、要素部品2を貼り付ける方法としては特に限定されず、作図部材の作図領域が金属等であればマグネットによって貼り付けてもよいし、要素部品2の裏面にマグネットが直接付されているものであっても良い。また、壁等であれば画鋲やテープ等で貼り付けてもよく、机等であれば、そのまま留めることなく置くだけでも良い。
図2に、識別情報が付された要素部品を使って作図する場合の例を示しておく。この例は、作図部材がホワイトボードの例を示している。また、要素部品2は、例えばいわゆるコンピュータ等の情報処理装置に接続されたプロジェクタから投影されたものであってもよい。情報処理装置を操作することによってこの要素部品を移動等することが可能となる。
【0017】
要素部品2に付された要素識別情報は、他の要素部品と区別するために必要な情報である。後述の記載からも明らかなように、要素識別情報は後述の作図データに含まれることとなり、作図支援装置4に取り込まれた後、要素部品2が配置されている領域が要素領域として認識される。要素識別情報は、上記要素部品2を区別することができる限りにおいて限定されるわけではないが、例えば複数の線が並べて配置される一次元バーコードであってもよく、二次元バーコードであっても良い。また要素を識別することができる情報である限りにおいて限定されず、例えば図形や文字であっても良い。本図の例は一次元バーコードの例を示しておく。
【0018】
要素部品2は、作図における要素を意味するものである限りにおいて様々な分野に適用が可能である。例えば電子回路図においては、例えばCPU、メモリ、周辺機器等の各デバイスやバス等の仮想的なデバイスを表現することができ、フローチャートの場合は、例えば端子、処理、分岐条件等の各手順を表現することができる。
【0019】
なお、要素部品2は、作図の接続関係における接続点を規定するものであるが、要素部品2に情報を記入することも可能である。例えば、フローチャートにおいては、条件分岐の記号を用いる場合、要素識別情報を付するとともに、分岐のための条件をこのフローの中に記入することで、この記入した条件を後の手順によってテキストの分岐条件データとして取得することが可能となる。なおフローチャートの場合のイメージ図を
図3に示しておく。
【0020】
次に、本図で示すように、使用者は、複数の要素部品2を作図部材上に配置し、複数の要素部品2の間を線で接続していく。接続の方法としては、接続されていることが認識できる限りにおいて特に限定されるわけではないが、例えば作図部材がホワイトボードである場合、マジックペン等を用いることができ、ペン等で書くことができない場合は、例えば作図部材の色と異なる色の糸等を用いてもよい。
【0021】
そして使用者は、上記のように、複数の要素部品2を作図部材上に配置し、そのそれぞれを線で接続した後、この作図した領域全体を、作図データ作成装置3を用い、作図データとして作成する。つまり、本実施形態において、作図データ作成装置3は、使用者が作成した作図を、画像データ(電子データ)として作成、記録することのできる装置である。作図データ作成装置3の例としては、上記の限りにおいて限定されるわけではないが、いわゆるデジタルカメラやスキャナー等を採用することができるがこれに限定されない。
【0022】
次に使用者は、上記作図データ作成装置3によって作成した作図データを作図支援装置4に移し、作図作業を行う。すなわち、本実施形態において、作図支援装置4は、使用者による作図を支援するための装置である。
【0023】
より具体的に説明すると、本実施形態に係る作図支援装置4は、(1)作図データに含まれる要素識別情報に基づき複数の要素領域を抽出し、(2)その複数の要素領域間の接続情報を抽出し、(3)読み取った後の読取図データを作成し、更に(4)この読取図データを表示装置に表示させることができる。この手順のフローを
図4に示しておく。なお、本図には、この手順のフローの他、上記要素部品配置等の手順についても記載しておく。
【0024】
本実施形態に係る作図支援装置4(以下「本作図支援装置」という。)は、上記の機能を有する限りにおいて限定されるわけではないが、液晶ディスプレイ等の表示装置に接続された情報処理装置、いわゆるコンピュータを用いることができる。コンピュータの場合、限定されるわけではないが、例えば中央処理装置(CPU)と、作成したデータやプログラムを記録するハードディスク等の記録装置、更には一時的に上記プログラムやデータを一時的に記録して中央処理装置がデータの読み書きを行なうメモリ等を備えていることが好ましく、作図支援プログラムや取り込んだ作図データを上記ハードディスク等に記録しておき、作図支援プログラムを実行することで、上記各処理を行うことができるようになる。本実施例では、作図支援プログラムで実行した場合の例で説明する。つまり、作図支援プログラムは、(1)作図データに含まれる要素識別情報に基づき複数の要素領域を抽出する手順、(2)複数の要素領域間の接続情報を抽出する手順、(3)読み取った後の読取図データを作成する手順、更に(4)この読取図データを表示装置に表示させる手順、をコンピュータに実行させる。
【0025】
まず、本作図支援装置4は、(1)作図データに含まれる要素識別情報に基づき複数の要素領域を抽出する手順を実行する。作図データから要素識別情報を抽出する方法としては特に限定されるわけではないが、テンプレートマッチング等の公知の画像認識方法を採用することができる。
【0026】
本手順において、要素識別情報を抽出した場合、この情報は要素識別情報データとして取り込まれる。要素識別情報データは取り込まれた後、予め格納されている要素蓄積情報データベースと照らし合わされ、その要素識別情報データがどの要素部品に該当するものであるのかを特定する。要素蓄積情報データベースは複数の要素蓄積情報データからなり、その要素蓄積情報データは、例えば要素識別情報データ及びこのデータに対応する要素部品種類データ、接続点数データ、入出力属性データ、ビット幅データ、割り込み属性データ、レジスタ属性データ、プロトコルデータ等を備えている。
【0027】
ここで要素部品種類データとは、要素部品の種類に関するデータであり、特に限定されるわけではないが、例えばCPU、メモリ、周辺機器、バス等の各デバイス等の区別を行なう。これにより、要素部品の区別、特定が可能となるとともに、他のソフトウェアで作図する場合における互換性を確保することができるようになる。なお、要素部品種類データには要素部品名を含ませても良い。
【0028】
ここで接続点数データとは、要素部品が他の要素部品と接続可能な本数の数のデータであり、1、2、3…等の整数の値で表されるのが一般的であるが、場合によっては設定せず、要素領域間の接続情報の抽出結果に応じて変えることができるようにしても良い。
【0029】
ここで入出力属性データとは、入力の方向や特定のバス、SystemCのTLMで規定される仮想的な入出力としてのソケット等を意味するデータである。
【0030】
ここでビット幅データとは、入出力に用いられるデータ幅を指し示すデータであり、各デバイスで固定、又は可変の数値やマクロ等を例示することができる。
【0031】
ここで割り込み属性データとは、各デバイスが緊急に事象を通知するための手段としての割り込みに関する属性のデータであり、割り込みの方法や優先順位などを例示することができる。
【0032】
ここでレジスタ属性データとは、各デバイスがもつ機能をメモリ上に展開する際の情報に関するデータであり、レジスタの各機能やサイズ等を例示することができる。
【0033】
ここでプロトコルデータとは、各デバイスが通信をする際の規則を表したデータであり、状態遷移図を含むデータである。
【0034】
またこの要素蓄積情報データについては、予め記録されていることが好ましいが、使用者が必要に応じて作成、修正することができるようになっていることも好ましい。必要に応じて作成、修正することができるようになっていることで様々な要素部品を作成することができ、多様な作図が可能となる。
【0035】
また本手順では、要素識別情報データが抽出された位置に関する位置データを抽出することが好ましい。このようにすることで、作図データ中のどの位置にこの要素識別情報データが存在していたのかについて特定することができる。この位置データは、要素識別情報データが存在する面積の範囲を規定するデータであっても良く、また、要素識別情報データの特定の位置(例えば隅の一つ)の座標データであってもよい。
【0036】
なお上記の手順の結果、要素識別情報データから、要素部品の位置データ、部品種類等が特定された要素部品データが作成され、記録されることになる。
【0037】
以上のとおり、本手順により、作図データに含まれる要素識別情報に基づき複数の要素領域を抽出することができる。
【0038】
次に、本作図支援装置4は、(2)複数の要素領域間の接続情報を抽出する手順を行なう。具体的には、上記の複数の要素部品の接続関係を特定する。
【0039】
作図に際し、使用者が要素部品間を線で接続しているため、この作成した線を認識する。線の認識方法としては、特に限定されず、例えば2値化した画像からエッジを抽出しハフ変換を行なうことにより直線などを抽出することによって実現できる。
【0040】
また本手順においては、間違って記入してしまった線を削除する手順も含むことが好ましい。ホワイトボード等に消すことの容易なマジックペン等で記載した場合は線を消すことは容易であるが、消すことが容易でない方法で記載した場合、このような手順が有用である。このような手順を実現する方法としては、作図の際、予め線上に線として認識してほしくないことを示すマークを記入しておき、本手順においてこのマークを読み取ることで線として認識しないよう処理することができる。このマークとしては、限定されるわけではないが、例えば×マーク等を例示することができる。
【0041】
また本手順においては、交差する線同士の判断を行う手順も含むことが好ましい。複数の要素部品間を線で接続する場合、複数の線が交差する場合がある。このような場合、複数の線において交差する部分をご認識してしまうと結果として誤って接続されてしまうといったことになる。このため、交差する線同士の判断、具体的には交差する線同士の分離判断処理を行うことが好ましい。この方法としては、分離することができる限りにおいて限定されるわけではないが、例えば線の色を異ならせ、この線の色データを抽出し、線の色が同じ場合は複数の線が接続されていると認識し、異なる場合は単なる交差であると認識する処理、線の交点に交点マークを付してある場合は複数の線の接続点であると認識し、交点マークが付されていない場合は単なる交差であると認識する処理、線の交点が線を跨ぐ書式で記載されている場合は単なる交差であると認識し、線の交点が線を跨ぐ書式で記載されていない場合は線の接続点であると認識する処理、等を挙げることができる。この場合の例示について
図5に示しておく。
【0042】
本手順において線を認識した後、本装置4では、これら線の各々と要素部品との接続関係を確認する。なお線は、線データとして認識されるものであり、少なくとも、例えば始点の位置データと、終点の位置データを含んでいることが好ましく、線の形状によっては折曲点の位置データや、線の位置全ての位置データを含んでいても良い。
【0043】
線を抽出した場合、その線の先端(始点の位置データ、終点の位置データ)に近い位置にある要素部品を抽出し、接続関係にあると認識することが有用である。一方で、作図中、必ずしも要素部品に接続されていない線も存在するため、これらの線を他の要素部品と接続関係にあると誤認識してしまうことも防止する必要がある。よって、一定の距離以上、要素部品と離れた線については、接続に用いられた線ではないと認識することが好ましい。
【0044】
ただし上記の場合においても、作図データの作図領域の大きさによって要素識別情報データの大きさも変わるため、要素識別情報データの大きさが作図データに比して比較的大きな場合(作図領域が小さい場合)と要素識別情報データの大きさが作図データに比して比較的小さな場合(作図領域が小さい場合)において絶対的な長さ基準を設けると誤認識等の不都合が生じる場合も否定できない。
【0045】
したがって、このような場合の誤認識を避けるための一手法として、例えば、要素識別情報データの大きさに関するデータ(例えば上記した要素識別情報データが存在する面積の範囲を規定するデータ)を取得しておき、この大きさを基準にして、線先端と要素識別情報の位置とがこの大きさの所定の倍率の範囲内にある場合は接続関係にあり、所定の倍率の範囲外にある場合は接続関係にないと判断することも好ましい。この倍率範囲としては、限定されるわけではないが、1倍以上3倍以内であることが好ましい。この例について例えば
図6に示しておく。
【0046】
また、上記他の一手法として、例えば、要素部品の要素識別情報の周囲を丸や四角等の枠で囲うことも好ましく、この枠に線が接している場合は接続関係にあるものと判断し、接していない場合は接続関係にないと判断することも好ましい。このようにしておくことで、作図データそのものを表示装置に表示させた場合であっても、要素部品の境界が明確になるといった利点がある。
【0047】
以上、本手順によって(2)複数の要素領域間の接続情報を抽出することができる。具体的には、どの要素部品が他のどの要素部品と接続されているのか、を抽出することができる。
【0048】
次に、本作図支援装置4は、読み取った後の読取図データを作成する手順を行なう。具体的には、上記(1)、(2)の手順に基づき取得した各データを含む読取図データを作成する。なお読取図データにおいては、上記各要素部品データの配置調整や、曲がった線の直線近似等、線データの再作成を行なうことが好ましい。
【0049】
なお、本手順においては、本処理により作成された読取図データを他の作図ソフト用データに変換するための変換処理を行うことが好ましい。一般に作図ソフトや回路図エディタは、部品配列場所(XY座標等)、部品インターフェース、部品機能、部品接続データ等を含むものであるため、読取図データもこれらデータを含ませておくことが好ましい。
【0050】
そして、本作図支援装置4は、(4)この読取図データを表示装置に表示させる手順を実行する。これにより、表示装置に読取図データを表示させることができる。
【0051】
また本システム1は、複数の要素部品2を作成するための要素作成装置5も備えている。要素作成装置5は上記のとおり複数の要素部品2を作成するための装置であり、例えば、いわゆるプリンタを例示することができる。
このようにすることで、使用者は必要に応じて必要な種類、接続点数の要素部品を作成することができ、より多様な作図を行なうことが可能となる。なお、要素作成装置5は必ずしも必須の構成ではなく、予め必要とされる全ての要素部品が備えられているのであればなくても問題はない。
【0052】
本システム1における要素作成装置5は、上記のとおり要素部品2を作成するものであり、具体的には、要素識別情報が付された要素部品2を印刷、作成することができる。要素識別情報は、上記作図支援装置の(1)の手順において予め格納されたものであってもよいが、当該手順における追加機能として使用者自身で作成したものであってもよい。
【0053】
以上、本作図支援システムにより、作図において各要素及びそれらの接続関係を容易に認識することのできる作図支援プログラム、作図支援装置及び作図支援方法を提供することができる。具体的には、使用者は、ホワイトボード等の平面に複数の要素部品を配置し、この配置をデジタルカメラ等の作図データ作成装置で作図データとして取り込み、作図支援装置で処理することでこの作図データから要素部品の持つ意味を認識し、これらの接続情報等を含むデータを作成し、表示、加工できるようにすることができる。