1.環境說明與應用說明
vs2015+opencv3.4,實際應用在mfc環境中!主要是用來做定位,利用平面靶標給機械人的工具快換提供定位資訊
2.實際呼叫
cv_exports_w bool solvepnp(inputarray objectpoints, inputarray imagepoints,
inputarray cameramatrix, inputarray distcoeffs,
outputarray rvec, outputarray tvec,
bool useextrinsicguess = false, int flags = solvepnp_iterative);
引數說明
引數變數名
型別說明
objectpointsstd::vector
特徵點物理座標
imagepointsstd::vector
特徵點影象座標
cameramatrixcv::mat(3, 3, cv_32fc1)
相機內參:3*3的float矩陣
distcoeffscv::mat(1, 5, cv_32fc1)
相機畸變引數
rvec
輸出的旋轉向量
tvec
輸出的平移向量
useextrinsicguess0
flags
計算方法
其中重點flags引數選擇選擇如下所示:
enum ;
本文的應用主要是基於同一平面上的標準特徵點,所以採用solvepnp_iterative方法。
結果直接上圖:
切記,雖然opencv的引數偏愛float型別,但是solvepnp中除了相機內參和畸變引數矩陣是用float型別
外,其餘的矩陣都是double型別,不然出出現計算結果不正確的情況。
spark調優 shuffle調優
基於spark1.6 引數可以通過 new sparkcontext set 來設定,也可以通過命令的引數設定 conf spark.shuffle.file.buffer 預設值 32k 引數說明 該引數用於設定shuffle write task的bufferedoutputstream的buf...
Spark Spark調優 資源調優
spark在乙個executor的記憶體分為三塊,1.一塊是execution記憶體 2.一塊是storge 記憶體 3.一塊是其他記憶體 執行記憶體是執行記憶體,加入,聚合都是在這部分記憶體中執行.shuffle的資料也會先快取在這個記憶體中,滿了再寫入磁碟,能減少io,其實地圖過程也是在這個記憶...
尾調遞迴 ,尾調優化
尾調優化 title head body p pre 尾調優化,值得是函式最後一步呼叫了另乙個函式,函式呼叫會在內部形成乙個 呼叫記錄 儲存呼叫位置,內部變數等,a函式呼叫b函式,形成乙個 a到b的呼叫幀,直到結果返回,幀消失,b呼叫c函式,這樣,就形成了 呼叫棧,pre p h4 pre 尾調,不...