?

一種工程量拔量軟件在工程項目的應用

2023-12-02 09:24李旭葶
石油化工建設 2023年7期
關鍵詞:電子版表格文檔

李旭葶

中國化學工程第四建設有限公司 湖南岳陽 414000

目前石油化工工廠的總體布局呈現大型化、區域化、集中化趨勢,裝置的電子版圖紙作為現場施工依據之一,識讀及匯總材料量是一項重要工作。根據圖紙提供的材料數量,將其中的信息轉換到Excel 表格中進行分類匯總、數值計算,可實現更加直觀的數據處理。傳統的拔量工作需要人工識讀圖紙,再錄入到電腦中,效率低,準確性差。通過編程運行數行代碼批量提取電子版圖紙中的數據,將表格內容提取出來,對于節省人力、降低成本有一定的幫助,從而提高經濟效益。

1 項目及技術簡介

中國化學工程第四建設有限公司承建的某大型化工裝置的工藝管道生產流程復雜,工藝連續性強,具有高溫、高壓、低溫、易燃、易爆和腐蝕等特點,對管道材料檢驗、焊接、安裝、壓力試驗等要求較高。施工圖紙材料量大,材料種類多,其中僅管廊區一個區就有901 張圖紙,全裝置有近萬張圖紙。而且材料描述全部為英文,識讀有一定的難度。圖紙的形式以PDF 版和CAD 版為主,無法直接進行統計匯總。如果能從電子版圖紙中提取出電子版材料表,匯總出材料清單,將有利于前期編制材料采購計劃,對工程項目后續的領料工作、進度款申報及結算工作也有很大幫助。傳統采用的人工拔量方式耗時久、準確率低,急需開發一種新型拔量方式。

PDF 是一種可移植文檔,其與操作系統平臺無關,也就是說,其在Windows、Unix 和Mac OS 操作系統中都是通用的。這一特征使它成為設計院出圖的主要格式,CAD 格式也能輕易轉換成PDF 格式。因此,新型的拔量方式針對PDF 文檔格式而開發,具有較好的兼容性。該項目電子版圖紙皆為PDF 格式,施工圖紙中圖片和文字交疊在一起,無法對圖紙上的材料表直接操作。在PDF 右側的區域有序排列著材料代碼、規格及其他參數,但該PDF文檔格式中并不存在表格內部分隔線,只有一個代表材料區域的的外框線。市面上的表格提取工具主要基于表格內部框線劃分區域,對該項目的圖紙完全無法識別提取表格。這種表格被稱為“文字流”表格,而對于它的識別稱為“基于文字流的表格識別”[1]。綜合以上因素,對基于PDF文字流的無圖像線表格識別技術進行了研究,設計并實現了一套表格批量提取方法。

2 設計思路

傳統拔量方法是人工識讀圖紙,手動錄入材料名稱和參數到電子表格,效率低下。繼產生要研究新拔量方法的想法后,嘗試逐文本塊復制粘貼錄入,整行復制錄入乃至整列復制錄入。雖然提高了一定的效率,人工參與的比例還是很大。在嘗試了多種方式,不斷吸取經驗之后,逐漸梳理總結出了最終的功能實現流程。選擇以按鍵精靈為平臺開發拔量軟件,優點在于不需要配置環境變量、構建工程、聲明變量及數據比較時的類型轉換,適合缺少編程經驗的人使用,本質是基于VBA 編程語言對施工圖紙進行拔量。首先獲取整個圖紙右側材料表內容,繼而轉到Word 文檔分析其排列規律以編寫文本處理的功能代碼。經分析,每一項材料都占據1—3 行的高度,各項內容都通過空格分割,首列序號數值都在一定范圍內,每項材料的第2 行及以后只保留材料描述。根據這一規律結合編程語言的各種函數,將原始數據分割排序,在適當的位置插入制表格、換行符,通過剪切板中轉數據,最后在excel 表格中以粘貼的方式輸出最終結果。以上便是此次施工圖紙表格的提取的思路,技術要點是使用編程方法對原始數據的整理及不同情況的分類討論。功能實現的流程示意圖見圖1。

圖1 功能流程示意圖

3 技術要點

軟件實質是將人工重復性的動作讓程序代為執行,比如排序換位,將對應內容插入制表位放到相應的單元格中和換行等操作。只需要把施工圖紙的純文本內容復制后導入到按鍵精靈,在按鍵精靈中經由編程方法完成識別、排版這一系列重復工作,再輸入到Excel 表格中。

3.1 圖紙預處理

通過Acrobat PDF 編輯器提取出PDF 文檔右側的材料表,編輯器自帶有批量裁剪全部頁面功能。需要注意的是,在單頁閱讀模式下全選只能選中一頁內容,然后用Ctrl+A 全選復制出PDF 文檔文本層的內容。材料表中的文字屬性,如圖片和文字顏色、字號大小等在編程處理中屬于無用參考,會降低程序運行效率,并可能對最后結果造成未知影響。因此,需要一些方法剔除這些無用屬性,只保留純文本部分,比如使用word 的僅粘貼數值格式,或者使用txt 文檔中轉也能達到一樣的效果。

3.2 數據導入處理

本軟件沒有制作復雜的數據導入界面,在算法中調用系統剪切板作為數據中轉站,因此數據的導出導入通過快捷鍵Ctrl+C、Ctrl+V 實現,數據保存在剪切板中等待下一步處理。當剪切板數據就緒,運行搭載了本算法的按鍵精靈,根據數據大小,就可以在一定時間內將數據整理為標準的excel 表格數據,最終結果保存在剪切板,之前導入的原始數據將被覆蓋。施工圖紙中的原始材料數據經過本算法的處理,在其中插入了換行、分列、占位符號,調整順序使之與材料表的單元格一一對應,最后使用Ctrl+V 能完成幾百張圖紙的拔量工作。

4 局限性及優點

程序最初由于圖紙樣本少,只有一套裝置的圖紙,運行后生成的材料表存在少量問題。通過比對分析原始施工圖紙和材料表的差異,發現是原本存放材料表的區域與軸測圖重疊導致的??梢酝ㄟ^人工篩選得出工程量表中明顯的異常,針對性地增加分類討論,修改程序并調試驗證。對于個性錯誤只能比對原圖紙進行修改,并且這些個性錯誤都是PDF 源文檔自身存在的錯誤,對拔量軟件的改進幫助不大。隨著樣本規模的增加,拔量軟件有了更好的適應性。目前拔量軟件還存在不足,對于不同排列格式的PDF 圖紙,只有數據傳輸框架可以繼續使用,程序原始數據處理模塊的就需要全部或者部分重新編程。初始考慮到開發難度和開發時效使用了按鍵精靈作為開發平臺,存在程序執行效率低、體量大的缺點。未來會將算法移植到Python 平臺上或主流的Java 平臺,具有簡單易懂的優點,程序的體積也可以減小很多。

該算法適用于PDF 文檔格式無結構化信息的表格識別,創新之處在于識別過程不依賴任何表格框線信息。通過對文字的排列布局信息的分析,重新排列拼接原始數據,調整數據為可以粘貼到材料表的格式。軟件如實完整地保存PDF 圖紙的原始內容,具有較高的準確性。最重要的一點是解決了傳統圖紙拔量速度慢的問題,使拔量速度有了極大的提高。該拔量軟件只要運行幾分鐘就可以把一份1000 頁的圖紙數據轉換出來,加上裁剪文檔,程序調試修改,不到30min 就可以完成平時人工拔量將近3d 的工作量。除了PDF 文檔自身極少的錯誤,需要人為的干預修改,整個過程需要很少的操作,只要將圖紙文本內容執行一次裁剪復制,然后交由拔量軟件完成整理工作。相對于OCR 識別模糊查找的方法,這種直接對PDF 的原始數據進行編輯的方法,可以盡可能地減少最終結果的錯誤。

5 程序拓展

拔量軟件的思想還可以應用到項目工作的其他方面,例如管道焊接無損檢測需要重復地從焊接數據庫復制數據到委托單中,可以編寫自動化程序減輕個人負擔?!爸Z必達焊接管理系統”就是一個很好的平臺,它集成了各種有關管道焊接工作的自動化程序,很多功能簡單幾步操作就可以完成,是以后學習參考很好的例子。另外,像試壓包的編制、交工資料的編制這種規模較大、重復性高的工作,都可以通過編程來完成,從而極大地提高工作效率。

6 結語

通過編程來實現辦公自動化可以大大提高工作效率,尤其是現在普遍采用計算機辦公的時代,合理利用編程這項技術處理日常工作中的一些問題,可以達到事半功倍的效果。同時,要有認真負責的態度,對輸出結果進行適當檢查,萬不可一勞永逸。

猜你喜歡
電子版表格文檔
Investigation of Co-doped Mn oxide catalyst for NH3-SCR activity and SO2/H2O resistance
《現代臨床醫學》來稿表格要求
新型冠狀病毒肺炎防護宣教繪本(電子版)
新型冠狀病毒肺炎防護宣教繪本(電子版)
淺談Matlab與Word文檔的應用接口
新型冠狀病毒肺炎防護宣教繪本(電子版)
《現代臨床醫學》來稿表格要求
有人一聲不吭向你扔了個文檔
統計表格的要求
基于RI碼計算的Word復制文檔鑒別
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合