原创 halcon+大恆水星相機圖像採集

大恆水星相機自帶開發包,安裝好相機的驅動後就可以打開vs查看裏面的源碼了。不過爲了方便開發,打算直接使用halcon的接口進行圖像的採集。 開始採用了halcon10+VS2010+win10的系統配置,但是安裝相機驅動後能夠檢測到相機,

原创 matlab機器人工具箱學習

選了機器人的課,作業需要用matlab機器人工具箱robotic toolbox。作業要求是搭建一個機械臂,然後在工作空間某個平面內寫一個字,涉及到機器人的軌跡規劃,求逆解。步驟: 1. 搭建四軸scara機器人: DH模型 i α a

原创 Win10安裝Win7雙系統過程

最近需要做與雙目視覺相關的項目,選擇了大恆的水星相機,但是安裝了相機的驅動無法打開相機,換了一臺win7系統的相機就能裝了,猜想估計是win10系統的原因或者是本身系統夾雜了很多未知的文件導致的,由於win10的系統裏面有很多需要使用的軟

原创 空間直線最小二乘擬合

空間直線標準方程: 轉化爲射影式方程: 可以對兩個方程分別進行擬合。 令: 其中 求出a,b,c,d即可。 代碼如下: data = load('data.txt'); data = data'; L=length(data(1

原创 Opencv學習——圖像及視頻讀取

Opencv的圖像讀取有C和C++接口的,由於C接口涉及到指針操作,需要對指針進行管理。而C++接口就比較簡單了,本文也主要以C++接口來進行圖像操作。Opencv2.0版本後新增了Mat操作,相比之前的版本簡單了很多。讀取一張圖片的函數

原创 軌跡平滑方法

本文主要處理三維空間序列點,對於二維序列點也同樣適用。主要介紹一下幾種平滑方式,並針對三維軌跡進行平滑處理: 1. 滑動平均平滑(Moving average): 鄰域內的數據點做平均代替鄰域的中心點值,除了一般滑動平均,還有加權滑動平

原创 光條中心線提取-Steger算法(基於Hessian矩陣)

採用結構光進行掃描檢測時,需要提取激光條紋的中心線,本文采用經典的Steger算法提取光條中心。 Steger算法原理 Steger算法基於Hessian矩陣,能夠實現光條中心亞像素精度定位:首先通過Hessian矩陣能夠得到光條的法線方

原创 圖像清晰度評價

圖像清晰度是衡量圖像質量的一個重要指標,對於相機來說,其一般工作在無參考圖像的模式下,所以在拍照時需要進行對焦的控制。對焦不準確,圖像就會變得比較模糊不清晰。相機對焦時通過一些清晰度評判指標,控制鏡頭與CCD的距離,使圖像成像清晰。一般對

原创 數字圖像處理之灰度變換

灰度變換是圖像處理技術中的最簡單的技術。 圖像增強常用的三類基本函數: 1. 線性函數(反轉和恆等變換) 2. 對數函數(對數和反對數變換) 3. 冪律函數(n次冪和n次根變換) 基本灰度變換函數如圖: 對數變換可以將輸入中

原创 Opencv學習——LSD直線檢測

OpenCV3版本之後加入了LSD直線檢測功能,相比Hough直線檢測,LSD能夠獲得更加理想的效果,具體可以參考文獻的主頁,包括了文獻、代碼和演示效果。 http://www.ipol.im/pub/art/2012/gjmr-lsd

原创 數字圖像處理之圖像直方圖

圖像直方圖反映了圖像像素分佈的統計特性,是圖像處理中簡單有效的工具。本文主要包括圖像直方圖計算,直方圖均衡和直方圖規定化三個部分。 圖像直方圖計算 圖像灰度直方圖: P(r)=nr/(M∗N) 上式表示每一個灰度級像素的個數與圖像總像

原创 圖像採集及處理多線程編程

本文介紹MFC中圖像採集及圖像處理的多線程編方法。創建了三個線程,分別爲圖像採集、圖像處理及圖像顯示線程。線程之間的共享數據有保存的圖像鏈表和圖像處理結果存儲結構。 圖像鏈表:list<Hobject> imgList; 存儲結構體:

原创 簡單的opencv GUI庫

對圖像進行處理時通常需要調整函數的參數,特別是像邊緣檢測或者是圖像亮度調節等操作,常常需要經過多次調節才能得到滿意的結果。而每次要重新設置參數都需要重新更改程序中的代碼,opencv也有自帶的gui,不過一直覺得很不好用,今天發現了一個非

原创 Socket編程

本文主要介紹項目使用的TCP/IP通信。 TCP/IP協議族,四個抽象層 應用層:TFTP,HTTP,SNMP,FTP,SMIP,DNS,Telnet等; 傳輸層:TCP,UDP; 網絡層:IP,ICMP,OSPF,EIGRP,IG

原创 Opencv學習——圖像融合

Opencv相關函數: C++: void seamlessClone(InputArray src, InputArray dst, InputArray mask, Point p, OutputArray blend, int fl