opencv 如何使用python获取特定大小的图像?

t3psigkw  于 2022-11-15  发布在  Python
关注(0)|答案(1)|浏览(130)

我试图从我的相机使用打开的CV我正在使用此代码来访问相机和保存在一个文件夹中的图像图片。

import cv2
i = 0
#i = int(input(" "))
cap = cv2.VideoCapture(0)
while True:
    ret,frame = cap.read()
    frame = cv2.cvtColor(frame,0)
    cv2.imshow("frame",frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        cv2.imwrite(r"C:\Users\naman.sharma\Desktop\Image_dataset\nm_result_{}.png".format(i), frame)
        break
cap.release()
cv2.destroyAllWindows()

这段代码运行良好,但我得到的图像大小(600,480),这是非常大的项目,我正在做的。
有没有特定的方法来捕捉图像与一定的大小。我试图捕捉图片(250,200)。
提前感谢你的帮助。

5lhxktic

5lhxktic1#

某些设备支持各种捕获大小,但您的设备不太可能支持250x200帧大小。
您可以使用**cv2.resize调整捕获帧的大小,而不是更改捕获大小。
最后一个参数
interpolation**控制重采样方法。此处列出了可用的选项。
用法示例(使用双三次插值):

ret,frame = cap.read()
resized_frame = cv2.resize(frame, (250,200), interpolation=cv2.INTER_CUBIC)

相关问题