ROS和Halcon機器視覺軟體隨手記

2021-08-29 08:06:51 字數 1808 閱讀 7081

學院有halcon機器視覺實驗室,先進自動化生產線也是使用halcon進行視覺處理。

1. asr halcon bridge: 

2. asr ros: 

----機器翻譯----

軟體包包含乙個庫,用於在ros和halcon特定資料結構之間轉換點雲和影象。

庫的結構主要基於cv_bridge -package,更多資訊,請檢視相關文件。

包本身對外部ros包沒有任何依賴性(除了ros的核心安裝附帶的預設包)。

為了能夠構建此包並在專案中使用它,需要安裝乙個版本的halcon影象處理庫。到目前為止,它僅使用版本11進行了測試,但理論上它應該適用於更高版本以及資料型別的基本結構沒有改變。

需要正確設定環境變數halconroot和halconarch,否則cmake將無法找到halcon安裝。如果遵循halcon的安裝指南,通常應該是這種情況。

需要擁有halcon安裝的有效許可證; 如果因為這個原因獲得了usb-dongle,則需要在執行時插入它,否則將收到異常。

由於此軟體包僅包含庫,因此應該看教程中有關如何使用它的更多資訊。

沒有訂閱/發布的主題或服務,也沒有配置引數。

要使用此庫提供的函式,需要首先將此包設定為專案的依賴項,然後在**中包含halcon_image.h或halcon_pointcloud.h,具體取決於要轉換的內容。

轉換:

要將sensor_msgs :: image轉換為halconcpp :: himage,請呼叫以下函式之一:

halconimageptr tohalconcopy(const sensor_msgs :: imageconstptr&source)

halconimageptr tohalconcopy(const sensor_msgs :: image&source);

返回值是halconimageptr物件,它包含halconcpp :: himage -pointer作為名為image的成員。

要將halconimage再次轉換為ros,請呼叫以下成員函式之一:

sensor_msgs :: imageptr toimagemsg()const;

void toimagemsg(sensor_msgs :: image&ros_image)const;

轉換點雲:此步驟類似於影象轉換。重要的功能是

halconpointcloudptr tohalconcopy(const sensor_msgs :: pointcloud2constptr&source);

halconpointcloudptr tohalconcopy(const sensor_msgs :: pointcloud2&source);

將sensor_msgs :: pointcloud2轉換為halconcpp :: hobjectmodel3d(返回的halconpointcloud中的成員稱為模型)。

要將其轉換回ros呼叫:

sensor_msgs :: pointcloud2ptr topointcloudmsg()const;

void topointcloudmsg(sensor_msgs :: pointcloud2&ros_pointcloud)const;

Halcon 機器視覺中常用運算元

在機器視覺中,影象處理是必不可少的步驟。一般而言,呼叫第三方影象處理函式庫是視覺軟體方便快捷開發的一種手段。而在這其中,德國付費軟體halcon是行業內使用較多的一款影象處理函式庫。本人現在接觸學習使用的是halcon12.0版本,通過本文,將一些常見的,開發中使用的halcon運算元簡單解析,總結...

Halcon 機器視覺 發展前景

無意中看到了 halcon c 混合程式設計,奈何我不懂咋回事,只有先了解 halcon是什麼。想要學習 halcon機器視覺,當然幫你找了資源 論壇 視覺imax 感興趣的自行了解 用halcon五年回答一下 1.機器視覺好找也不好找工作,在北京 上海 深圳 尤其深圳人才奇缺。如果是一些二線城市崗...

HALCON機器視覺軟體怎麼學習?

halcon是德國mvtec公司開發的一套完善的標準的機器視覺演算法包,擁有應用廣泛的機器視覺整合開發環境。它節約了產品成本,縮短了軟體開發周期 halcon靈活的架構便於機器視覺,醫學影象和影象分析應用的快速開發。在歐洲以及日本的工業界已經是公認具有最佳效能的machine vision軟體。ha...