YOLO_v3_tutorial_from_scratch
YOLO_v3_tutorial_from_scratch copied to clipboard
Why do we reverse the final dim of the image in "prep_image"?
In this tutorial, there is a function preparing the image as below: `def prep_image(img, inp_dim): """ Prepare image for inputting to the neural network.
Returns a Variable
"""
img = cv2.resize(img, (inp_dim, inp_dim))
img = img[:,:,::-1].transpose((2,0,1)).copy()
img = torch.from_numpy(img).float().div(255.0).unsqueeze(0)
return img`
We use this line to reverse the final dim of img and transpose it:
img = img[:,:,::-1].transpose((2,0,1)).copy()
I know that we transpose it because we want the channels in order of RGB. But why should we reverse it first?
opencv read in image format is BGR, so reverse the final dim convert to RGB format.