중요하게 볼 점이 또하나 있는데, channel의 위치가 변경되었습니다.
이는 ToTensor() 함수를 실행하면 channel의 위치가 바뀝니다.
Normalize 함수는 ToTensor 함수에 의해서 변경된 channel (c, h, w) 위치를 사용해서 normalization을 합니다.
만약 Normalize 함수에 (h, w, c) 형태로 image가 제공시 에러가 납니다.
따라서 Normalize 함수를 호출전 반드시 ToTensor 함수를 호출해야 합니다.
Random Horizontal Flip
Random Vertical Flip
Random Affine
Random Crop
Random Resized Crop
Random Gray Scale
약하게 gray scale 되거나 그런게 아니라.. color 또는 gray 둘로 나뉜다
Random Perspective
약하게 gray scale 되거나 그런게 아니라.. color 또는 gray 둘로 나뉜다
Random Rotation
약하게 gray scale 되거나 그런게 아니라.. color 또는 gray 둘로 나뉜다
Random Rotation (expand=True)
Random Choice
Color Jitter (brightness)
램덤하게 brightness를 설정한다
float 값으로 줄수도 있지만 tuple로 (min, max)값을 설정할수도 있다
Color Jitter (contrast)
램덤하게 contrast를 설정한다
float 값으로 줄수도 있지만 tuple로 (min, max)값을 설정할수도 있다
Color Jitter (saturation)
램덤하게 saturation을 설정한다
float 값으로 줄수도 있지만 tuple로 (min, max)값을 설정할수도 있다
Color Jitter (hue)
램덤하게 hue을 설정한다
float 값으로 줄수도 있지만 tuple로 (min, max)값을 설정할수도 있다
hue의 경우는 -0.5 ~ 0.5 사이의 값을 해야 한다
Color Jitter (ALL)
Resize
augmented image 그림의 좌표를 보면 크게 늘어난것을 알 수 있습니다.
Channel Transpose
channel의 위치를 변화시키는 방법은 2가지가 있습니다.
permute: 한번에 여러 dimension의 순서를 변경시킬 수 있습니다.
transpose: 한번에 2개의 dimension의 순서를 변경시킵니다.
ToTensor() 함수 사용해도 됩니다.
ToTensor
ToTensor를 하면 channel의 위치가 바뀝니다.
물론 Pytorch Tensor로 변형도 됩니다.