So I was working with the the vgg16 model for dogs vs cats classification and I noticed that keras is not loading images in correct color format. The code is as follows:
import cv2
import matplotlib.pyplot as plt
import numpy as np
from PIL import Image
from keras.preprocessing import image
path='data/dogscats/sample/train/dogs/dog.1402.jpg'
imgkeras=image.load_img(path)
imgkeras=image.img_to_array(imgkeras)
plt.imshow(imgkeras)
plt.show()
The output of the following code is
Where as the original image is
Can someone explain why is this happening? , also when the image is loaded through opencv and fed into vgg16 the predicted label is more accurate for this particular image than when it is loaded through keras as above,is the improper color format affecting that?