Halcon應用:相機標定

提示:若沒有查找的算子,可以評論區留言,會盡快更新

Halcon應用:相機標定

  • 前言
  • 一、Halcon應用?
  • 二、應用實戰
    • 1、圖像理解
      • 1.1、開始標定

前言

本篇博文主要用于記錄學習Halcon中算子的應用場景,及其使用代碼和圖像展示。只講通俗易懂使用方法,不講原理,不講原理,不講原理,重要的事情說三遍。

相機標定:在圖像測量過程以及機器視覺應用中為確定空間物體表面某點的三維幾何位置與其在圖像中對應點之間的相互關系,必須建立相機成像的幾何模型,這些幾何模型參數就是相機參數。在大多數條件下這些參數必須通過實驗與計算才能得到,這個求解參數的過程就稱之為相機標定。
大白話就是看到圖像中的點位知道真實世界的點位
然而為了準確獲得點位,就需要對相機進行標定,不然因為相機存在的誤差會導致點位不準確


提示:以下是本篇文章正文內容,下面案例可供參考,注意參數坐標的使用,能幫助你理解算子

一、Halcon應用?

Halcon 是一個強大的圖像處理工具,該工具是為了解決機器視覺項目任務而創建的。

二、應用實戰

1、圖像理解

圖像發生扭曲,為了準確獲得點位就需要無失真的圖像,標定相機就是為了讓失真圖變為無失真
在這里插入圖片描述
如下安裝,安裝過程中或多或少都會導致安裝不準,以及相機生產中的工藝問題,都會導致問題出現,即使是標定板上的圓,也有可能實際拍攝出來變成橢圓。
在這里插入圖片描述
我們標定的目的獲得相機:

  1. 內參(焦距,像素大小等)
  2. 外參(位置,旋轉方向等)
  3. 畸變參數

我們可以采用標準標定吧進行標定:圓形標定板和棋盤格標定板
在這里插入圖片描述
我們使用halcon生成一個標定板,并打印出來:

gen_caltab (7, 7, 0.0125, 0.5, 'caltab.descr', 'caltab.ps')
*.ps 文件可以用ps打開1. 7 7 代表 7*7標定2. 0.0125,代表兩圓心距離,單位m3. 0.5 代指圓直徑與圓心距離的比值,上面參數表示圓直徑6.2mm左右

在這里插入圖片描述

1.1、開始標定

下面我們用標定助手來進行標定
步驟1、打開標定助手的calibration
2處填入上文算子生成的描述文件
3處填入官方給出的相機參數
在這里插入圖片描述
步驟2、 拍攝標定圖像
可以提前拍好也可以使用采集助手拍攝
圖片數量約15-20張
標定板位置占據圖像視野約0.3-0.5
從各個角度開始拍攝
移動位置相機視野要能夠看到標定板
相機視野的各個位置并有一定的傾斜
在這里插入圖片描述
拍攝例圖:

在這里插入圖片描述
選擇一張平面不傾斜的圖作為參考位姿即可,進行下一步的計算
如果標定助手說圖有問題,按照要求更改即可
檢查沒有問題,直接標定即可
在這里插入圖片描述
在結果里就可以得到
內參1
外參2
并可以將參數保存,供后面使用
大家可以點擊代碼生成自己看下代碼的結果是啥,并和此圖做對比
參數標定至此結束!


如有問題,歡迎大家指出,謝謝!!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/80168.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/80168.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/80168.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Arduino示例代碼講解:Project 08 - Digital Hourglass 數字沙漏

Arduino示例代碼講解:Project 08 - Digital Hourglass 數字沙漏 Project 08 - Digital Hourglass 數字沙漏程序功能概述功能:硬件要求:輸出:代碼結構全局變量`setup()` 函數`loop()` 函數計時和點亮LED:讀取傾斜開關狀態:重置LED和計時器:運行過程注意事項Project 08 - …

《計算機視覺度量:從特征描述到深度學習》—深度學習圖像特征工程

傳統算法的圖像特征分析和描述,一直貫穿圖像算法的發展。2017年深度學習的出現,很多開發人員和技術人員認為,圖像特征分析這個概念可以被深度學習完全取代。很長一段時間以深度學習為主的視覺方案成為主流,逐漸淡化了傳統視覺的特…

零部件三維激光掃描檢測

制造業競爭激烈,零部件的精準檢測與三維數據的高效獲取,已成為企業確保產品質量、提升生產效率的核心要素。傳統檢測手段,往往因效率低下、精度不足,難以滿足復雜零部件的檢測需求。 傳統零部件檢測,檢測人員通常是手…

KafkaSpark

Kafka Kafka基本概念 卡夫卡是一個分布式、分布訂閱的消息系統,作為消息中間件使用。 設計上是一個分布式的、分區的和可復制的提交日志服務。 Kafka的優勢 分布式系統,易于擴展。 高吞吐量,支持發布和訂閱模式。 支持多地復制&#xff…

圖文結合 - 光伏系統產品設計PRD文檔 -(慧哥)慧知開源充電樁平臺

光伏系統產品設計PRD文檔 ?版本號?:1.0 ?修訂日期?:2023年10月 ?作者?: 一、文檔概述 1.1 背景與目標 ?行業背景?:全球光伏裝機量年增長20%,數字化運維需求迫切?用戶痛點?:現有系統存在數據延…

Eyecare-100K:首個覆蓋多模態、多任務的高質量眼科視覺指令數據集

2025-04-18 , 由浙江大學、哈爾濱工業大學、郴州市第一人民醫院、新加坡國立大學等機構合作創建了 Eyecare-100K數據集,這是首個涵蓋多種模態、任務和疾病的高質量眼科視覺指令數據集,為眼科智能診斷領域提供了關鍵資源,推動了醫學視覺語言模…

CoT-Drive:利用 LLM 和思維鏈提示實現自動駕駛的高效運動預測

25年3月來自澳門大學和 MIT 的論文“CoT-Drive: Efficient Motion Forecasting for Autonomous Driving with LLMs and Chain-of-Thought Prompting”。 準確的運動預測對于安全的自動駕駛 (AD) 至關重要。本研究提出 CoT-Drive,這是一種利用大語言模型 (LLM) 和思…

[FPGA基礎] RAM篇

Xilinx FPGA RAM 使用指南 1. 引言 隨機存取存儲器(RAM)是 Xilinx FPGA 設計中用于存儲和快速訪問數據的重要資源。Xilinx FPGA 提供多種 RAM 類型,包括塊 RAM(Block RAM)和分布式 RAM(Distributed RAM&a…

Elasticsearch內核探秘:從Shard分配到網絡通信的深度實踐指南

#作者:孫德新 文章目錄 一、底層模塊深入解析之shard allocation1、shard allocation的介紹2、cluster level shard allocation介紹3、disk-based shard allocation介紹4、shard allocation awareness5、shard allocation filtering6、node下線時的shard延遲分配7、…

SQL Server 2022 常見問題解答:從安裝到優化的全場景指南

SQL Server 2022 作為微軟最新的數據庫管理系統,在性能、安全性和云集成方面帶來了多項革新。然而,用戶在實際使用中仍可能遇到各類問題。本文將圍繞安裝配置、性能優化、備份恢復、安全設置、高可用性方案、兼容性問題及錯誤代碼解析等核心場景&#xf…

57、Spring Boot 最佳實踐

Spring Boot 最佳實踐 一. 開發規范與代碼風格 編寫高質量的代碼不僅需要功能的實現,還需要遵循一定的規范和代碼風格,以提高代碼的可讀性、可維護性和協作效率。以下是 Spring Boot 開發中的一些關鍵規范和代碼風格建議。 1. 代碼命名規范 在編寫代碼時,命名是非常重要的…

??OSPF核心機制精要:選路、防環與設計原理?

一、OSPF選路規則解析 OSPF作為經典的鏈路狀態路由協議,其選路規則采用層次化優先級機制,不同路由類型遵循嚴格比較順序: 1. 路由類型優先級 優先級路由類型描述1域內路由通過1類、2類LSA生成2域間路由通過3類LSA生成3域外路由通過5類/7類…

1.1軟考系統架構設計師:系統架構的定義與作用 - 超簡記憶要點、知識體系全解、考點深度解析、真題訓練附答案及解析

超簡記憶要點 定義:結構決策 | 抽象概念 | 多視圖模型(邏輯/物理/動態)作用:解耦復雜需求 | 集成擴展 | 指導開發(藍圖)要素:構件(原子/復合) | 連接件(API/…

網絡socks 代理

在系統/終端中設了這樣的環境變量,而沒有在代碼中覆蓋,HTTPX 就會啟用該 socks 代理。 env | grep proxy https_proxyhttps://proxyhk.zte.com.cn:80 http_proxyhttp://proxyhk.zte.com.cn:80 no_proxylocalhost,127.0.0.0/8,::1,zte.com.cn,zte.intra,…

PCB規則

PCB封裝 原理圖繪制完成需要檢查 DRC 菜單欄——>設計——>檢查 DRC 底部側邊欄——>DRC——>檢查 DRC 常見問題: 1)某個導線/網絡標簽是一個單網絡 網絡標簽名稱不一樣 網絡標簽只有一個 引腳沒有使用,但是放置了導線 2&#xf…

圖像預處理-圖像邊緣檢測(流程)

一.高斯濾波 因為圖像邊緣檢測就是把像素值有差異的地方提取出來,所以噪聲會有很大影響,因此需要對圖像進行平滑處理,高斯濾波是流程中常用的方法。 二.計算圖像的梯度與方向 過程中通常使用sobel算子進行梯度計算,在OpenCV中&am…

ChatBEV:一種理解 BEV 地圖的可視化語言模型

25年3月來自上海交大、上海AI實驗室、同濟大學和MAGIC的論文“ChatBEV: A Visual Language Model that Understands BEV Maps”。 交通場景理解對于智能交通系統和自動駕駛至關重要,可確保車輛安全高效地運行。雖然 VLM 的最新進展已顯示出整體場景理解的前景&…

武裝Burp Suite工具:xia SQL自動化測試_插件

武裝Burp Suite工具:xia SQL自動化測試_插件 插件作者介紹:本插件僅只插入單引號,沒有其他盲注啥的,且返回的結果需要人工介入去判斷是否存在注入,如果需要所有注入都測試,請把burp的流量轉發到xray。 目錄…

線段樹講解(小進階)

目錄 前言 一、線段樹知識回顧 線段樹區間加減 區間修改維護: 區間修改的操作: 區間修改update: 線段樹的區間查詢 區間查詢: 區間查詢的操作: 遞歸查詢過程: 區間查詢query: 代碼&…

neo4j中節點內的名稱顯示不全解決辦法(如何讓label在節點上自動換行)

因為節點過多而且想讓節點中所有文字都顯示出來而放大節點尺寸 從neo4j中導出png,再轉成PDF來查看時,要看清節點里面的文字就得放大5倍才行 在網上看了很多讓里面文字換行的辦法都不行 然后找到一個比較靠譜的辦法是在要顯示的標簽內加換行符 但是我的節點上顯示的是…