原创 STL系列(2):Vector 向量容器

vector是一個線性順序結構,相當於數組,但其大小可以不預先指定,並且自動擴展。它可以像數組一樣被操作,由於它的特性我們完全可以將vector 看作動態數組。  在創建一個vector 後,它會自動在內存中分配一塊連續的內存空間進行數據

原创 對偶四元數表示空間旋轉和平移

常規四元數只能表示空間旋轉變換,它的數學形式爲q = [cos(θ/2) nxsin(θ/2) nysin(θ/2) nzsin(θ/2)],其中單位向量[nx ny nz]表示通過原點的旋轉軸,θ表示旋轉角度。對偶數的概念類似於複數,它

原创 cJSON_Print一定要顯式釋放內存

cJSON_Print會申請內存,使用完後一定要free掉。   char* pstr = cJSON_Print(json); ... free(pstr); pstr = NULL; 血的教訓。。。。。。

原创 STL系列(4):Deque 雙向隊列

deque是一種優化了的、對序列兩端元素進行添加和刪除操作的基本序列容器。它允許較爲快速地隨機訪問,但它不像vector 把所有的對象保存在一塊連續的內存塊,而是採用多個連續的存儲塊,並且在一個映射結構中保存對這些塊及其順序的跟蹤。向de

原创 STL系列(3):List 雙向鏈表

List是一個線性鏈表結構,它的數據由若干個節點構成,每一個節點都包括一個信息塊(即實際存儲的數據)、一個前驅指針和一個後驅指針。它無需分配指定的內存大小且可以任意伸縮,這是因爲它存儲在非連續的內存空間中,並且由指針將有序的元素鏈接起來。

原创 Halcon實現一維DBSCAN算法

procedure DBSCAN (: : Props, Epsilon, MinPoints: Classification) * init l := |Props| tuple_gen_const(l, 0,clusters) tup

原创 EPSON機器人固定下相機自動標定及下相機糾偏抓取程序

原文鏈接:https://blog.csdn.net/isS_MK_GmbH/article/details/88991545 Function VisionCalib_FIXEDUP '固定

原创 深度解析工業機器人主流離線編程軟件

轉自微信公衆號“工業機器人” 通常來講,機器人編程可分爲示教在線編程和離線編程。我們今天講解的重點是離線編程,通過示教在線編程在實際應用中主要存在的問題,來說說機器人離線編程軟件的優勢和主流編程軟件的功能、優缺點進行深度解析。   示教

原创 工業機器人在線示教編程和離線編程

工業機器人的應用極大地提高了工廠的生產效率,在幫助企業應對人工成本上漲、勞動力供給不足等方面提供了可供選擇的方式,贏得了企業的廣泛關注。目前,機器人廣泛應用於焊接、裝配、搬運、噴漆、打磨等領域。 目前常用的編程方式有兩種:一種是示教編程,

原创 顏色校正CCM

概要:1 CCM定義及出現的原因;2 CCM的算法設計;3 注意事項 1. CCM是什麼以及出現的原因 1.1 CCM是什麼 Color Correction Matrix (CCM)是一個由至少倆矩陣合在一起的矩陣。 如圖1所示一般的I

原创 halcon實現rpy轉換旋轉矢量函數

procedure rpy2rotvec (: : vec: rx, ry, rz)   tuple_cos (vec, Cos)   tuple_sin (vec, Sin)   create_matrix (3, 3, [Cos[2]

原创 ur機器人計算相對位姿

已知MInB0,PInB0, 計算PInM BInM0 = pose_inv(MInB0) PInM = pose_trans(BInM0,PInB0) 根據以上結果,已知MInB,計算PInB PInB = pose_trans(MIn

原创 halcon 腳本代碼實現簡單的一維kmeans算法

kmeans(:: Props, K, Num : Classification) N := |Props|-1 Seeds :=[] for i := 0 to K-1 by 1 tuple_rand(1,Rand)

原创 Halcon運算符

Halcon語言 輸入控制參數可以是表達式,但圖形參數、輸出參數均應爲變量; String類型變量由單引號’括起來;此外還有一些特殊字符; Boolean型變量包括 true ( = 1 )、 false ( = 0 ) ;不爲零的整數將

原创 halcon獲取窗口圖像

Write the window content to a file. dump_window( : : WindowHandle, Device, FileName : )  Write the window content in an