MMRotate는 Pytorch를 기반으로 하는 회전된 객체 감지(Rotated Object Detection)의 통합 구현, 평가를 위한 프레임워크입니다.
객체 감지(Object Detection)는 이미지에서 특정 클래스의 객체를 감지하는 컴퓨터 비전 기술 입니다.  
    이미지에서 감지된 객체 주위에 경계상자(bounding box)를 그려 해당 객체가 어디서 위치에 있는지 찾을 수 있습니다. 객체 카운팅, 얼굴 인식, 이상 감지, 자율 주행 등에서  사용됩니다. 
    회전된 객체 감지(Rotated Object Detection)은 각도가 포함된 회전된 경계상자로 물체를 감지합니다. 
    회전된 객체 감지를 사용하면 보다 정확하게 객체의 위치와 윤곽을 설명할 수 있습니다. 경계상자에 배경이 덜 포함되고 다른 물체가 겹치는 것을 방지할수 있습니다.    
MMRotate는 dataset, models, core, api 4가지 주요 부분으로 구성됩니다.
MMRoate 모듈 디자인
회전된 상자의 정의가 다르기 때문에 다음 사항에 유의해야 합니다.회전된 개체 감지와 일반 감지 간의 가장 눈에 띄는 차이점은 수평 상자 주석이 회전된 상자 주석으로 대체된다는 것입니다. 객체 감지의 경계상자를 HBB(Horizontal Bounding Box), 회전된 객체 감지에서 경계상자를 OBB(Oriented Bounding Box)라고 합니다.
회전된 상자는 중심점을 기준으로 수평 상자를 시계 방향 또는 시계 반대 방향으로 회전하여 얻을 수 있습니다. 회전 방향은 좌표계의 선택과 밀접한 관련이 있습니다. 오른손 좌표계는 (y, x)를 채택합니다 . 여기서 y는 up->down이고 x는 left->right입니다. 회전에는 두 가지 반대 방향이 있습니다.
시계방향(CW)
1 2 3 4 5 6 7 8  | 0-------------------> x (0 rad) |  A-------------B |  |             | |  |     box     h |  |   angle=0   | |  D------w------C v y (pi/2 rad)  | cs | 
반시계방향(CCW)
1 2 3 4 5 6 7 8 9  | 0-------------------> x (0 rad) |  A-------------B |  |             | |  |     box     h |  |   angle=0   | |  D------w------C v y (-pi/2 rad)  | cs | 
    (a) RBox in a SAR image           (b) xml annotation details.