OpenCV輪廓篇 旋轉矩形矯正

2021-10-05 08:21:54 字數 698 閱讀 2781

之前一直這裡很迷,現在做乙個整理測試,下圖搬運。

先看一下rotatedrect屬性定義:

class cv_exports rotatedrect

;

其中opencv奇葩的角度定義如下: 

其實觀點點就是我們定義的長和寬和opencv定義的輪廓長寬是不一樣的,所以需要轉化我認知的長於寬,傾斜角度也進行轉化。

//旋轉校正

float angle_rotation;

if ((box.size.width / box.size.height) < 1)

angle_rotation = 90 + box.angle;//正數,逆時針旋轉

else

angle_rotation = box.angle; //負數,順時針旋轉

double scale = 0.78;//縮放比例

mat rot_m = getrotationmatrix2d(box.center,angle_rotation,scale);//獲得旋轉矩陣

warpaffine(dstimg, dstimg, rot_m, dstimg.size());//仿射變換

opencv 旋轉矩形

構建乙個mat 200 200 mat image 200 200 cv 8uc3,scalar 0 設定乙個旋轉矩形3個引數分別為 質心 矩形中心 矩形長寬100 50 旋轉角度 30 clockwise rotatedrect 函式返回乙個旋轉矩形物件 rotatedrect rrect rot...

OpenCV 旋轉矩形(RotatedRect)

rotatedrect類是opencv的基礎類,用於建立旋轉矩形,下面是它的建構函式,包含旋轉中心點 尺寸大小和旋轉角度。建構函式1 rotatedrect const point2f center,const size2f size,float angle center 旋轉矩形的質心 size ...

旋轉(矩陣篇)

座標旋轉變換與幾何體旋轉 繞某個向量轉動 旋轉矩陣反求旋轉軸向量和旋轉角度 已知乙個物體運動前和運動後所有點的座標,求該物體運動的平移向量和旋轉矩陣 注 以下數學表示式,點座標是橫式書寫 r x 1000 cos sin 0 sin cos rx alpha left begin 1 0 0 0 c...