I am trying to capture image with each function call
import imageio as iio
camera = iio.get_reader("<video0>")
screenshot = camera.get_data(0)
plt.imsave(filename, screenshot)
camera.close()
I am able to save the image but the image size is varying sometime it is of the size of 960540 and sometime 1280720.
I went through the documentation of imageio but did not find any attribute to set its shape. I want a fix shape of image all the time.
I have tried OpenCV, it has its own limitation w.r.t my requirements.
So please suggest something in this package only.
Could anyone please help.
Your comment made clear you want to keep the resolution consistent for the duration of the whole video. As imageio does not provide a resize operation I suggest you to use skimage to handle that part.
import imageio as iio
import matplotlib.pyplot as plt
from skimage.transform import resize
camera = iio.get_reader("<video0>")
filename = "experiment_"
# randomly set to 30 frames for this example
for i in range(0, 30):
screenshot = camera.get_data(i)
# skimage resize function here
screenshot = resize(screenshot, (1280, 720))
final_filename = str(i) + ".jpg"
plt.imsave(filename+final_filename, screenshot)
camera.close()