Data Augmentation

RandomRotation

RandomRotation — Torchvision main documentation
torchvision.transforms 모듈의 클래스를 통해 임의로 이미지를 회전시키기

매개변수

ColorJitter

매개변수

Bounding box

vertices: 텍스트 영역을 감싸는 점들. <numpy.ndarray, (8,)>
theta : 회전 각도 [radian]
-> output: rotated vertices <numpy.ndarray, (8,)>

  1. 주어진 점들인 vertices를 (2, 4) 형태로 변환해 회전 중심을 anchor로 지정하여 회전시키는 방법
    v생성: 형태 변환
    # vertices를 (2, 4) 형태로 변환하여 v에 할당 
    v = vertices.reshape(4, 2).T
    
2. 회전 변환 적용
   - anchor 원점으로 이동
    `v_centered = v - anchor`
   - 회전행렬을 사용해 회전
    `v_rotated = rotate_mat @ v_centered`
   - 회전 후 원래 위치로 이동
    `res = v_rotated + anchor`