I am training various CNNs (AlexNet, InceptionV3 and ResNet). The dataset consists of screen captures of a game and an array of 4 classes representing the input for that given capture as [w,a,s,d].
To reduce the data I need to gather, I've looked into mirroring captures with classes that appear less frequently. If I was mirroring a left-turning capture, for example, I would also change the labels so [0,1,0,0] would become [0,0,0,1]. I'm unsure if mirroring will work as the minimap in the bottom-left corner of original images contains a GPS route.
I haven't trained any models yet.
I am mirroring the images and adjusting the labels via opencv:
if choice[1]:
new_choice[1] = 0
new_choice[3] = 1
if choice[3]:
new_choice[1] = 1
new_choice[3] = 0
if new_choice != choice:
cv2.imshow('capture', img)
print("capture:", choice)
flip = cv2.flip(img, 1)
cv2.imshow('flipped', flip)
print("flipped:", new_choice)
What impact on the CNN will a mirrored training dataset cause?
I.e. Will it fail to see the minimap in the bottom-left corner as it was only there in half of the training examples?