python - 如何在Python OpenCV中缩小图像的物理尺寸

标签 python opencv

如何按实际尺寸缩小图像?

例如,我需要一个640 * 480的图像,大小为200KB,必须缩小到75KB,才能保留相同的640 * 480。

尝试使用cv2.resize和cv2.PyrDown。这两种方法主要关注分辨率。随着分辨率减小,尺寸也减小。使用这些方法按比例缩小然后按比例缩小会缩小尺寸,但会丢失图像质量。

还有其他缩小图像尺寸的方法吗?

这是基本问题MTCNN_face_detection_alignment lagging in IP camera, Convention behind opencv cv2 videocapture frame matrix

最佳答案

请参见下面的代码。

# store image shape
(h, w) = img.shape

scale_percent = 40 # percent of original size
width = int(img.shape[1] * scale_percent / 100) 
height = int(img.shape[0] * scale_percent / 100) 
dim = (width, height) 

resized = cv2.resize(img, dim, interpolation = cv2.INTER_AREA) 

cv2.imshow('resized image', resized)


希望这可以帮助。

关于python - 如何在Python OpenCV中缩小图像的物理尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57852160/

相关文章:

opencv - 在 OpenCV 中加载捕获

python - 如何在Python中单独更新 turtle

Python 正则表达式命名捕获组

python - 从 pandas DataFrame 中删除少于 K 个连续的 NaN

c++ - 计算二维平面上单应性的精度

c++ - Opencv + boost : Undefined references

python - 如何向模型添加新列,该模型通过 django 中的外键引用其他模型

python - Django 理智测试显示 404 不是 404

c++ - 使用 cuda 从 RGBA 图像中分离 channel (无法显示完整图像)

c++ - std::bind 问题与 cv::face::FN_FaceDetector