close

 

透過特徵點得到homography matrix

 

var data = homography.GetData();
var y = data.GetValue(0, 1);
var x = data.GetValue(0, 0);
var tx = data.GetValue(0, 2);
var ty = data.GetValue(1, 2);
Mat img12 = new Mat();
CvInvoke.WarpPerspective(imgSrc1, img12, homography, imgSrc2.Size);
CvInvoke.Imshow("imgOut", img12);
CvInvoke.Imshow("imgSrc2", imgSrc2);
CvInvoke.WaitKey(1);
var theta = -Math.Atan2((double)y, (double)x) * 180 / Math.PI;
Console.WriteLine($"x: {x:0.00} y: {y:0.00} theta: {theta:0.00} tx: {tx:0.00} ty: {ty:0.00}");

 

情境1

影像來源 1 (16度)        →       影像來源 2  (24度)

 

theta: 8.00 tx: 14.87 ty: -55.26

把來源1 順時針旋轉8度;  tx: 水平移動量, ty: 垂直移動量 可以得到和來源影像2相同影像

 

 

情境2

影像來源 1 (24度)        →       影像來源 2  (16度)

theta: -8.00 tx: -7.03 ty: 56.79

把來源1 逆時針旋轉8度

 

 

 

 

 

theta: -8.00 tx: -7.03 ty: 56.79

把來源1 逆時針旋轉8度; tx: 水平移動量, ty: 垂直移動量 可以得到和來源影像2相同影像

 

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 me1237guy 的頭像
    me1237guy

    天天向上

    me1237guy 發表在 痞客邦 留言(0) 人氣()