Halcon是一款優秀的商業版圖像處理軟件,但其在可視化方面有比較差的體驗;而Qt在可視化和界面開發方面擁有很強大的功能和便捷性。自己之前做一些軟件開發工作,現在又在利用Halcon進行圖像處理算法開發,把兩者結合使用,豈不是一件非常有趣的事情!
於是乎,從網上查了一下Qt+Halcon聯合開發,發現很多寫的不清楚或者就是說的比較復雜。其實Halcon自帶的官方例程中已經給出了一個Qt+Halcon聯合開發的案例,有興趣的網友可以自己查看。
位置(根據自己Halcon安裝位子):
鬼扯了那么多,什么博文,文筆還這么差,看着就吐吐吐……
言歸正傳
一.問題
Qt下配置Halcon的開發環境
二.解決方案
在此,主要介紹2中Qt下配置Halcon開發環境:
方法1:
同Qt下配置OpenCV的開發環境一樣,通過添加庫實現。具體步驟“上圖”:
懶得自己添加的,可以直接復制,之后將相關路徑改為自己Halcon安裝路徑就OK
1 # *******************************Qt下配置Halcon*****************************
2 INCLUDEPATH += D:/Software/MVTec/HALCON-17.12-Progress/include\ 3 D:/Software/MVTec/HALCON-17.12-Progress/include/halconcpp 4
5 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhalcon 6 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhalconc 7 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhalconcpp 8 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhalconcppxl 9 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhalconcxl 10 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhalconxl 11 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhdevenginecpp 12 LIBS += -L$$PWD/../../../../Software/MVTec/HALCON-17.12-Progress/lib/x64-win64/ -lhdevenginecppxl
方法2:
該方法也不算是方法了,但卻最簡單實用。
因為在安裝Halcon的時候已經將Halcon的相關路徑添加到系統環境變量中了,所以不需要像方法1一樣一個個添加庫文件。只需要將下面的內容Ctrl+C到.pro文件中就OK了。
1 # *************************Qt配置Halcon*****************************
2 # MacOS specific settings. Note that while dyld will search under 3 # /Library/Frameworks by default, the preprocessor/compiler/linker will not 4 # and need to be told explicitly. 5 macx { 6 QMAKE_CXXFLAGS += -F/Library/Frameworks 7 QMAKE_LFLAGS += -F/Library/Frameworks 8 LIBS += -framework HALCONCpp 9 } 10 else { 11 #defines 12 win32:DEFINES += WIN32 13
14 #includes 15 INCLUDEPATH += "$$(HALCONROOT)/include"
16 INCLUDEPATH += "$$(HALCONROOT)/include/halconcpp"
17
18 #libs 19 QMAKE_LIBDIR += "$$(HALCONROOT)/lib/$$(HALCONARCH)"
20 unix:LIBS += -lhalconcpp -lhalcon -lXext -lX11 -ldl -lpthread 21 win32:LIBS += "$$(HALCONROOT)/lib/$$(HALCONARCH)/halconcpp.lib" \ 22 "$$(HALCONROOT)/lib/$$(HALCONARCH)/halcon.lib"
23 }
該配置針對各操作系統都可用。
三.參考
- Halcon官方例程
- 網上各位分享的網友,分享至上