Z moich eksperymentów kąt zwracany przez zmienną kątową RotateRect wynosi od -90 do 0 stopni, co nie jest wystarczające do określenia, czy obiekt jest pochylony w lewo czy w prawo.Kąt obrotu RotatedRect OpenCV nie zapewnia wystarczających informacji
Na przykład, jeśli kąt wynosi -45 stopni, nie możemy powiedzieć, czy musimy obrócić o 45 lub 45 stopni, aby go usunąć.
Fragment kodu używam:
RotatedRect rotated_rect = minAreaRect(contour);
float blob_angle_deg = rotated_rect.angle;
Mat mapMatrix = getRotationMatrix2D(center, blob_angle_deg, 1.0);
Krzywa obiekt w jednym kierunku dostaję kątów od 0 do -90 stopni, podczas gdy opierając się obiekt w innym kierunku dostaję kątów od - 90 do 0 stopni.
Jak znaleźć kąt, o który należy obrócić obraz, aby go wyprostować?