Back to customer stories

Customer Story

Facilities Planning Practice

25,000エンティティのDXFファイルから36室のカフェテリアスケジュールを energent.ai で抽出した施設計画チームの事例

図面には25,000のエンティティがあり、スケジュールは片隅に散らばったテキストにすぎませんでした。エージェントは表を見つけ、先頭の3室の欠落を検出し、黄色のヘッダー行付きで検証済みのExcelを渡してくれました。
建築家兼プロジェクトリード at Facilities Planning Practice
Industry
建築・施設計画
Use case
CAD室スケジュール抽出
Facilities Planning Practice

顧客プロフィール

このチームは、公共機関や企業向けの給食関連プロジェクト、つまりカフェテリア、ダイニングホール、業務用厨房を手がける小規模な建築・施設計画事務所です。代表者とプロジェクトマネージャーは、AutoCADでの設計作業と、その後の引き渡し業務の両方を担当しています。具体的には、面積表、室名表、仕様書などをExcelやWordにまとめ、顧客レビュー、概算見積、許認可申請に回す必要があります。

この事例のプロジェクトは208人収容のダイニング施設で、20を超える機能ゾーンがありました。ホットおよびコールドの厨房生産エリア、魚・野菜・果物・ベーカリーの下ごしらえスペース、乾燥・冷蔵保管、冷蔵室、スタッフ更衣室、シャワー室、ロッカー室、事務室、配電盤スペース、換気室などです。引き渡し時には室名表の正確性が重要です。面積の誤りは、その後の工事見積、法規適合レビュー、内装工事入札へと連鎖していきます。面積欄の小数点が1つずれるだけで、誰も気づく前にコスト計画全体へ波及しかねません。

課題

当面の作業は紙の上では単純でした。施設のDXF図面の右下に埋め込まれた室名表をExcelファイルに書き出し、顧客へ納品することです。しかし実際のソースファイルには、いくつもの問題が重なっていました。

DXFには25,123個のエンティティが含まれており、LINE、INSERT、ARC、LWPOLYLINE、HATCH、TEXT、MTEXT、DIMENSIONが混在していました。室名表は、構造化されたデータベースオブジェクトや専用の表レイヤーではなく、図面キャンバス上に散らばったテキスト図形としてしか存在していませんでした。室番号欄には信頼できる列見出しがなく、番号は表の本文にはあるものの、抽出したテキスト領域には対応するヘッダーラベルがありません。そのため、単純なラベリングではなく、座標ベースの推定で再構成する必要がありました。

手作業は遅く、ミスも起こりやすいものでした。25,000エンティティのファイルをAutoCADで開き、36行の表をExcelへコピー&ペーストするには相応の時間がかかり、転記リスクも伴います。数字の読み違い、行の見落とし、小数点区切りの欠落です。ソース図面の面積値は書式が不統一で、あるセルは「17,5m²」、別のセルは「17,50m²」となっていました。つまり、慎重に手作業で書き出しても、SUM関数が黙って無視してしまう非数値テキストが列に残ってしまうのです。

3室(101〜103)は表領域の上端にあり、通常の空間フィルタでは切り落とされる位置でした。101ではなく104から始まるような、わずかに不完全な引き渡しは、顧客や積算担当者が欠落に気づくまで見過ごされる可能性がありました。

なぜ今か

施設の引き渡しは、設計フェーズの終盤になるほどタイトになります。カフェテリア案件が基本設計から実施設計へ進むと、施主とゼネコンの双方が、室名表、面積表、仕上げ仕様を迅速に必要とします。36行のCAD表を誰かが手で転記している間の1日ですら、きれいなExcel引き渡しが遅れると、外部期限が固定された積算や許認可のマイルストーンにボトルネック圧力が生じます。

小規模事務所では、この抽出作業を受け持つ専任のBIMコーディネーターやCADオペレーターもいません。図面を描いた建築家やプロジェクトマネージャーが、そのまま室名表の書き出しも担当することが多いのです。転記に費やす時間は、設計や顧客対応に使えない時間です。たとえ1枚の図面でも抽出を自動化すれば、プロジェクトごとのオーバーヘッドを削減でき、それは同様の書類要件を持つ給食関連案件のポートフォリオ全体で積み上がっていきます。

なぜ energent.ai か

チームが必要としていたのは、DXFファイルを直接受け取り、テキストエンティティのレイアウトを空間的に推論し、クリーンなExcel出力を生成できるツールでした。カスタムスクリプトやBIMプラグインのライセンス、あるいは案件ごとに作り直すスプレッドシートマクロは不要です。

代替手段には、予想どおりの弱点がありました。AutoCADの標準データ抽出ウィザードは、スケジュールデータが構造化されたブロック属性として存在する場合にはうまく機能しますが、単なるテキスト図形として描かれた表には対応できません。スプレッドシートベースのOCRツールは、AutoCADから書き出したPDFを処理できますが、追加の書き出し工程が必要で、図形がテキストに重なると精度が落ちます。CADオペレーターに表を手で転記してもらうのが既定路線でしたが、本来は決定論的で検証可能であるべき作業に、コストとリードタイムが上乗せされていました。

energent.ai は生のDXFを受け取り、前処理なしで読み込み、座標ベースの推論を使って25,000エンティティの図面の中から右下のスケジュール領域を切り出しました。Pythonベースの抽出ロジックをDXFジオメトリに直接適用し、空間位置から行ごとに表を再構成し、データ構造に基づいて欠落していた「Number」ヘッダーを推定し、整形済みのExcelブックを生成しました。しかも、すべて1回のセッションで完了しています。その後、独立した監査サブエージェントが最初からスケジュールを再抽出し、最終納品前に出力を検証しました。

ワークフロー

ステップ1 — ファイル取り込み。 建築家がDXFファイルを直接 energent.ai にアップロードしました。エージェントは即座にファイルを検証しました。AutoCAD R2018形式(内部バージョン AC1032)、2つのレイアウト(「Model」と透かしレイアウト)、LINE、TEXT、MTEXT、INSERT、HATCH、ARC、LWPOLYLINE、DIMENSION の各ジオメトリタイプにまたがる25,123個のmodelspaceエンティティを検出しました。

ステップ2 — 図面コンテキストの評価。 焦点を絞る前に、エージェントは図面全体を俯瞰しました。208人収容のダイニング施設であることを特定し、厨房生産、保管、スタッフエリアにまたがる20以上の名称付き機能ゾーンを整理し、室名表が構造化されたブロックや表オブジェクトではなく、右下のテキスト図形として埋め込まれていることを確認しました。

ステップ3 — 領域の分離とテキスト抽出。 エージェントは座標付きのすべてのテキストエンティティを抽出し、そこから室名表を含む右下のクラスターに絞り込みました。室番号、室名、面積値を相対座標で対応付けながら、CADレイヤー名やオブジェクトタイプに頼らず、空間位置から行ごとに表を再構成しました。

ステップ4 — ヘッダーの復元。 エージェントは図面テキスト内から「Room」と「Area, m²」の列見出しを見つけました。室番号欄には明示的なヘッダー文字がなかったため、列の内容と位置に基づいてExcelのヘッダーとして「Number」を適用しました。後続の監査により、これは表の構造に照らして適切であることが確認されました。

ステップ5 — 完全性チェックと2回目のパス。 初回の抽出領域フィルタでは、表の上部にある101〜103室が切り落とされていました。エージェントはその欠落を検出し、垂直方向の抽出境界を広げ、ユーザーの介入なしにワークブックを再生成しました。最終ファイルには、101から136までの全36行が含まれていました。

ステップ6 — Excel出力。 エージェントは「Room Table」というシート名のワークブックを生成し、3列すべてに黄色で強調されたヘッダー行を付け、図面順に36行のデータを配置しました。面積値はソースのまま「17,5m²」「17,50m²」として保持され、後続計算のためにどのように正規化するかは建築家が判断できるようにしました。エージェントがソースの書式を黙って上書きすることはありませんでした。

ステップ7 — 独立監査。 サブエージェントが、主エージェントのロジックに依存せず、ソースDXFから室名表を独立して再抽出し、各行をExcelファイルと照合しました。判定はPASS。36件すべてについて、欠落行なし、余分な行なし、重複なし、順序の問題なしでした。

Cafeteria room schedule walkthrough

結果

チームに残っていた唯一の作業は、面積値の正規化でした。元図面では書式が混在しているため、値を数値に変換するまではExcel上で面積列を直接合計できません。Energent.aiはこれを明示的に指摘し、後続ステップとして正規化済みの数値列を追加する提案も行いました。これは、少数点区切りの表記や単位の扱いについて、建築家側がコントロールを維持できる、きれいな引き渡しポイントです。

証拠

「図面には25,000個のエンティティがあり、スケジュールは片隅に散らばったテキストにすぎませんでした。きれいに書き出せるレイヤーはありませんでした。エージェントは表を見つけ、上部で欠けていた3室を検出し、黄色いヘッダー行付きの検証済みExcelを渡してくれました。決め手になったのは監査結果でした。エージェントが正しいと言い張るだけでなく、DXFに対して各部屋番号と面積を独立に照合する2回目の確認があったのです。」

— ダイニング施設の引き渡しを担当した建築家兼プロジェクトリード

納品されたワークブックには、"Room Table" というシート名で36室分のスケジュール全体が含まれており、列は "Number"、"Room"、"Area, m²" です。部屋101から部屋136まで、図面順に並んでいます。独立監査の確認結果 — PASS、欠落・追加・重複・順序違いの行はなし — はセッション記録の一部として保存されており、プロジェクト文書にも利用できます。

注意事項

Excel出力の面積値は数値ではなくテキスト文字列です。これは、元のDXFで書式が統一されておらず、エージェントがそれを黙って正規化せずに保持したためです。"Area, m²" 列をSUM関数や面積合計計算に使う前に、値を数値へ変換し、少数点区切りの表記がプロジェクトのロケール(カンマかピリオドか)と一致していることを確認してください。"Number" 列ヘッダーは、図面内の明示的なラベルから抽出したのではなく、列構成から推定されたものです。このファイルには適切ですが、クライアント提出前、または許認可図書を管轄する当局に提出する前には、プロジェクトの部屋表記標準と照合する価値があります。

Back to customer storiesBook a Demo