999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

機器視覺檢測中的矢量圖操作模塊的設計與開發

2016-06-17 09:48:15丁偉丁松秦懷宇
電子設計工程 2016年7期
關鍵詞:跨平臺機器視覺

丁偉,丁松,秦懷宇

(1.江蘇科技大學張家港校區電氣與信息工程學院,江蘇張家港215600;2.張家港三利密封合金材料有限公司江蘇張家港215600)

?

機器視覺檢測中的矢量圖操作模塊的設計與開發

丁偉1,丁松2,秦懷宇1

(1.江蘇科技大學張家港校區電氣與信息工程學院,江蘇張家港215600;2.張家港三利密封合金材料有限公司江蘇張家港215600)

摘要:為解決矢量化的機器視覺檢測平臺開發中矢量圖的跨平臺操作問題,以Qt和Vjsua1 Stdjo 2012為開發平臺,設計并開發了可讀取DXF格式矢量圖的軟件工具模塊。實現矢量圖的讀取、繪制、放大、縮小、選中以及存儲功能;并以開放的庫形式提供給其它開發平臺對視覺檢測平臺功能進行進一步開發,具有較強的擴展性和可維護性。為機器視覺檢測中的矢量圖操作提供了新的途徑。

關鍵詞:Qt;矢量圖;DXF;跨平臺;機器視覺

在工業生產中,由于生產設備、人工及各種外部因素造成的產品誤差不可避免。為避免不合格流入市場,需要在產品出廠前進行檢測。其中對檢測產品的尺寸、表面缺陷的外觀檢測是重要的檢測環節[1]。近年來,由于經濟發展、產業升級和人工成本上升等因素,機器視覺檢測已經代替人工檢測成為外觀檢測的主流。在機器視覺檢測中,柵格圖像的最小組成單元為像素,像素的大小會影響對產品檢測的準確性[2-3]。圖像的矢量化可以使圖像與分辨率無關,盡可能地還原圖像的幾何參數和相應的位置、尺寸、形狀信息,非常適用于對檢測參數敏感的精密零部件檢測[4-5]。

現在有多種把圖像矢量化并輸出標準數據接口文件DXF格式矢量圖的算法[6]。但是在機器視覺檢測平臺上打開和操作DXF格式矢量圖,需要特別安裝專業的制圖軟件,如AutoCad,Core1DRAW等,增加成本的同時這些專業軟件都有跨平臺的問題,不利于在專業的檢測平臺上安裝,且對檢測平臺后續針對性開發并實現自動檢測造成困難[7]。針對以上不足,文中以Qt和Vjsua1 Stdjo 2012(VS 2012)為開發平臺,設計并開發一款具備跨平臺功能的可讀取和操作DXF格式矢量圖的模塊,可在Wjndows系列,Ljnux,UNIX等幾乎所有主流系統使用。并可以庫的形式提供給其它開發平臺,方便后續開發和維護。

1 開發平臺的搭建

文中以VS 2012為開發平臺,并以Qt為界面設計平臺,實現對dxf圖形的操作軟件的開發。通過CMake構建整個程序的架構,使得軟件具備的跨平臺的功能,在不同操作系統中可生成可執行的文件。

VS2012是經典的Wjndows操作系統下軟件開發平臺。Qt是一個跨平臺的C++圖形用戶界面應用程序開發軟件。易于擴展,并且允許組件編程,具有極大開發便利性。利用Qt提供的C++應用程序開發框架就可實現一次編寫,隨處編譯。即Qt程序具有很強的可移植性,可運行于wjndows98、vjsta、wjndowXP、wjndows 7、Ljnux、UNIX等操作系統平臺。CMake是一個跨平臺的安裝(編譯)工具,可以用簡單的語句來描述所有平臺的安裝(編譯過程),能夠輸出各種各樣的makefj1e或者project文件,能測試編譯器所支持的C++特性,類似UNIX下的automake。只是CMake的組態檔取名為CmakeLjsts.txt。Cmake并不直接建構出最終的軟件,而是產生標準的建構檔(如Unjx的Makefj1e或Wjndows Vjsua1 C++的projects/ workspaces),然后再依一般的建構方式使用。這使得熟悉某個集成開發環境(IDE)的開發者可以用標準的方式建構他的軟件,這種可以使用各平臺的原生建構系統的能力是CMake和SCons等其他類似系統的區別之處。

2 架構設計

軟件總體架構如圖1所示。GUI系統模塊主要實現界面顯示功能,即生成文件顯示窗口,并在界面中實現編輯項目選項欄;Aoj-vjew模塊主要實現對解析后的圖片顯示,并對DXF圖區域的形狀進行管理和與用戶之間的交互等功能;Doc-manage模塊和DXF-IO模塊負責實現DXF圖形管理,其中DXF-IO主要實現對DXF文件內容的解析,包括圖形的點、線、圓等的方位、大小等信息的解析,當涉及到具體DXF圖庫的時候便根據需要調用Core和DXF1jb內的文件庫實現圖形的解析與恢復。架構中每個模塊都留有擴展接口方便后續對系統功能的擴展。

圖1 系統架構

3 軟件開發

3.1建立工程

采用命令行的方式建立工程,實現對建立文件的歸類,便于其它人員使用或后續開發。

建立VS工程。在建立majn.cpp文件之前,首先要在指定位置的工程文件夾里建立CMakeLjsts.txt的文件,再建立majn.cpp的文件。CMakeLjsts.txt文件實現將建立的VS工程與Qt相互關聯的作用,換言之,即通過CMake生成一個makefj1e的可執行文件或工程。在編譯程序時,根據CMakeLjsts.txt中的指令分別到相應的工程里面執行工程里的內容,同樣,也調用Qt界面程序。

3.2GUI模塊設計

GUI模塊中共包含主窗口界面設計、打開標準檔對話框、保存標準檔對話框等,其包含4個小模塊:Majn-wjndow,Choose-doc-dja1og,Doc-1jst-vjew,Doc-1jst-wjdget其相應的結構圖如圖2所示。

圖2 GUI結構圖

1)Majn-wjndow模塊主要是負責維護主窗口的交互界面,其中包括標題欄,工具欄,主區域等。標題欄主要是放大縮小關閉等按鈕的系統菜單,用于維護主要的系統事件;工具欄是一些自定義的事件,主要包括打開DXF文件、打開標準當文件、和保存標準當文件等;主區域是用戶鼠標鍵盤操作的主要區域,由AOIVIEW構成,用于獲取用戶的鼠標輸入等動作。其主要生成界面如圖3所示。

圖3 軟件初始界面

2)Choose-doc-dja1og是主窗口Open槽函數彈出的對話框,其中Choose-doc-dja1og類主要是負責對話框界面的組織,窗口如圖4所示。具體操作工作由DocLjstVjew和DocLjstWjdget完成,DocLjstVjew是左邊的標準當名字選擇列表,右邊的DocLjstWjdget是標準當的詳細信息。

圖4 Open對話框

3.3Aol-vlew模塊設計

Aoj-vjew模塊用于顯示形狀信息以及用戶的部分交互工作,具體結構圖如圖5所示。

圖5 AojVjew模塊結構圖

AojVjew的核心模塊由Cad-vjew、Cad-jtem和Cad-mode組成,其中Cad-vjew用于從用戶獲取輸入信息,Cad-jtem負責單個形狀信息的保存和繪制,Cad-mode用于控制用戶的操作流程。工作流程主要是:Cad-vjew獲取到用戶鼠標鍵盤事件->Cad-vjew判斷當前處在的Cad-mode狀態->傳遞給相應的Cad-mode處理->Cad-mode根據之前的狀態決定下一步狀態是退出還是繼續處于該狀態->退出用戶事件并等待下一次事件。

Cad-vjew、Cad-jtem和Cad-mode的交互形成AojVjew模塊的基礎。如后續用戶需要實現新的操作方式,根據面向對象的多態操作方式,只需用戶繼承并更新Cad-mode可以實現新的操作方式。所以AojVjew的架構方式非常有利于后續的功能擴展。

3.4DXF-I0模塊

DXF-IO模塊主要是封裝上層對下層DXF文件的訪問,通過一個繼承至DL-CreatjonAdapter的類DXF-IO實現相應的DXF文件的讀取和解析工作。實現的原理:子類通過繼承父類的虛函數的方式實現回調,完成基類對子類的控制,最終實現上層函數。

3.5Core模塊

Core模塊主要是負責界面與底層之間的通信以及維護一些標準信息,模塊設計主要內容包括:DjskInfo子模塊,實現標準數據結構信息以及基本的IO操作[8];IntArray子模塊,封裝一個可變整數型的數組,實現整數緩沖區的管理;Object子模塊,是所有點、線、圓等幾何圖形的基類;Shape子模塊,主要實現一些特定的形狀和復雜的形狀如構成圖形的基本元素的點、線、圓、弧等[9]。

3.6Doc-manage模塊

Doc-manage模塊主要實現標準文檔的管理,其中包括預覽、維護、新建、保存和刪除標準檔信息[10]。

4 軟件的矢量圖解析

用CMake完成軟件的編譯生成可執行文件[11]。運用可執行文件,實現矢量圖的解析,如圖6、7所示。圖6是對某金屬密封件矢量圖的讀取顯示,圖7是對矢量圖的操作演示。

圖6 解析結果

圖7 矢量圖的放大和選擇

5 結論

本文以Qt和VS 2012為開發平臺,設計了一種對矢量圖進行操作的新方法,并開發一款具備跨平臺功能的可讀取和操作DXF格式矢量圖的軟件模塊,并以庫的形式提供給其它開發平臺,后續開發和維護。對以矢量圖方法為基礎的機器視覺檢測平臺提供了新的矢量圖操作途徑。軟件模塊已在實際檢測中應用,取得了良好的效果,說明本文的設計和開發方法具有很好的推廣前景。

參考文獻:

[1]Basa1amah S.Hjstogram based cjrc1e detectjon[J].Internatjona1 Journa1 of Computer Scjence and Network Securjty,2012,12(8):40-43.

[2]Forsyth D A,Jean P.Computer vjsjon[M].Inc:Prentjce Ha11,2003.

[3]趙磊,雷鳴,高俊釵.基于機器視覺的密封件表面缺陷檢測研究[J].電子設計工程,2011,19(24):72-74,77.

[4]劉春,利新琴,魯昌華,等.密封橡膠圈凸點缺陷檢測的研究[J].電子測量與儀器學報,2008(23):178-181.

[5]黎明,馬聰,楊小芹.機械加工零件表面紋理缺陷檢測[J].中國圖象圖形學報,2004,9(3):318-322.

[6]王艷麗.計算機中的位圖和矢量圖[J].信息與電腦(理論版),2011(9):191,193.

[7]呂志亮,嚴殊,李駒光.基于Qt/Embedded的DXF文件操作軟件的研究與實現[J].軟件導刊,2012,11(9):81-83.

[8]蔣國峰,丁潔.基于PC-104和虛擬儀器的某機載電臺檢測控制器[J].電子設計工程,2013(10):1-3.

[9]邢開宇,曹曉曼,方火能.基于FPGA和NAND F1ash的存儲器ECC設計與實現[J].電子科技,2015(2):38-40.

[10]李紅剛,楊林楠,張麗蓮.基于FPGA的高速多通道數據采集系統的設計[J].計算機測量與控制,2006(10):1407-1409.

[11]王德勝,康令州.基于FPGA的實時圖像采集與預處理[J].電視技術,2011(3):32-35.

Deslgn and develoPment of vector dlagram oPeratlon module ln machlne vlslon detectlon

DING Wej1,DING Song2,QIN Huaj-yu1
(1.College of Electrical andJiangsu University of Science and Technology(Zhangjiagang),Information Engineering,Zhangjiagang 215600,China;2.Zhangjiagang Sanli Sealing Alloy Material Co.,Ltd,Zhangjiagang 215600,China)

Abstract:Thjs paper uses Qt and Vjsua1 Stdjo 2012 as deve1opment p1atform to desjgn and jmp1ement a software too1s modu1e whjch can read the DXF format vector djagram,to so1ve the prob1em about vector cross p1atform's operatjona1 prob1ems. Through thjs too1 we can achjeve to jmport,draw,en1arge,reduce or save the vector djagram,and jn the form of open 1jbrary provjded to other programs as secondary deve1opment usjng. It a1so can generate dynamjc 1jbrarjes for other p1atform. It js convenjent for the fo11ow-up deve1opment. And jt provjdes a new way for vector operatjon jn machjne vjsjon detectjon.

Key words:Qt;vector djagram;DXF;cross p1atform;machjne vjsjon

中圖分類號:TN914

文獻標識碼:A

文章編號:1674-6236(2016)07-0037-03

收稿日期:2015-06-02稿件編號:201506019

基金項目:江蘇科技大學校區青年教師科研項目(112110146)

作者簡介:丁偉(1985—),女,江蘇蘇州人,碩士研究生,講師。研究方向:數字圖像處理,計算機視覺。

猜你喜歡
跨平臺機器視覺
跨層級網絡、跨架構、跨平臺的數據共享交換關鍵技術研究與系統建設
一款游戲怎么掙到全平臺的錢?
電腦報(2021年11期)2021-07-01 08:10:05
跨平臺APEX接口組件的設計與實現
測控技術(2018年9期)2018-11-25 07:44:58
全自動模擬目標搜救系統的設計與實現
基于機器視覺的自動澆注機控制系統的研究
科技視界(2016年26期)2016-12-17 17:31:58
大場景三維激光掃描儀在研究生實踐教學培養中的應用
科教導刊(2016年25期)2016-11-15 17:53:37
基于機器視覺的工件鋸片缺陷檢測系統設計
軟件工程(2016年8期)2016-10-25 15:55:22
基于機器視覺技術的動態“白帶”常規檢測系統的開發
科技視界(2016年20期)2016-09-29 11:11:40
基于QT的跨平臺輸電鐵塔監控終端軟件設計與實現
基于OPC跨平臺通信的電機監測與診斷系統
主站蜘蛛池模板: 国产啪在线| 青青网在线国产| 国产黄色视频综合| 日韩在线欧美在线| 美女一级免费毛片| 五月天福利视频| 伊人久久综在合线亚洲91| 日韩欧美91| 五月六月伊人狠狠丁香网| 亚洲一区毛片| 国内精品久久久久久久久久影视| 欧美日本视频在线观看| 国产男人的天堂| 人妻精品久久久无码区色视| 在线观看亚洲国产| 欧美日韩精品一区二区在线线| 全裸无码专区| 激情乱人伦| 小蝌蚪亚洲精品国产| 国产一区亚洲一区| 国产自视频| 精品国产成人a在线观看| 成人免费网站在线观看| 日韩欧美国产成人| 日本免费a视频| 午夜国产大片免费观看| 国产成人精品三级| 亚洲熟妇AV日韩熟妇在线| 亚洲av片在线免费观看| 露脸真实国语乱在线观看| 国产性生大片免费观看性欧美| 久久无码高潮喷水| 天堂成人在线| 国产精彩视频在线观看| 欧美日韩资源| 国产精品黄色片| 一本色道久久88| 亚洲日本在线免费观看| 久久国产V一级毛多内射| 在线国产资源| 免费看久久精品99| 91视频区| 99尹人香蕉国产免费天天拍| 青青青视频蜜桃一区二区| 在线精品视频成人网| 毛片久久久| 国产尤物jk自慰制服喷水| 欧美色视频网站| 午夜视频免费试看| 久青草免费视频| 亚洲精品天堂在线观看| 国产一区成人| 经典三级久久| 中文字幕欧美成人免费| 中文字幕色站| 国产精品极品美女自在线| 国产精品久久自在自线观看| 亚洲婷婷在线视频| 亚瑟天堂久久一区二区影院| 国内精品小视频福利网址| 成人一区在线| 被公侵犯人妻少妇一区二区三区| 久草青青在线视频| 88av在线看| 真人高潮娇喘嗯啊在线观看| 欧美另类第一页| 免费在线a视频| 亚洲成人一区二区| 国产激爽大片高清在线观看| 在线精品亚洲国产| 99中文字幕亚洲一区二区| 国产9191精品免费观看| 国产性爱网站| 五月婷婷综合网| 国产免费羞羞视频| 亚洲人视频在线观看| 亚洲人成网站观看在线观看| 亚洲精品无码久久久久苍井空| 国产资源免费观看| 精品久久人人爽人人玩人人妻| 日本在线免费网站| 午夜一级做a爰片久久毛片|