【问题标题】:Reduce Image resolution降低图像分辨率
【发布时间】:2020-08-26 00:54:26
【问题描述】:

我有一个图像,我需要降低它的分辨率,而不是调整大小。我试图更改 DPI,但显然我的图像没有 DPI(我不知道这是否可能)。我希望我的图像具有低分辨率的对象检测代码。此外,我尝试使用诸如“GuassianBlur”之类的过滤器和其他图像处理方法来进行更好的检测,但是,我想要一个降低图像分辨率的解决方案。

im = Image.open("car.png")
im.save("Dpi_test.png", dpi=(10, 10))

这是我用于 dpi 的代码,当我尝试使用此功能打印 dpi 时,它给了我 KeyError:

print(im.info['dpi'])

有关更多信息,这些是我希望的结果:

点击here查看示例图片。

任何关于如何降低图像分辨率的帮助都非常棒!谢谢

更新!

关于我的问题的经过编辑的澄清:在一位评论者的帮助下,他建议模糊和删除我的图像,有没有人有办法做到这一点?我想这与下采样有关!你不确定!

更新 2 !! 用 2 种方法回答了问题,非常感谢!

【问题讨论】:

  • 低分辨率不会给你准确的解决方案,而是相反的不准确的解决方案。低分辨率只会提高速度。
  • @PythonCoder100 欢迎来到 Stack Overflow!请使用tour 并阅读How to Ask。请edit 发布您自己的努力来解决这个问题。后者最好在代码中,这称为minimal reproducible example
  • @YunusTemurlenk 是的!我怎么能降低分辨率呢?有什么帮助吗?
  • @BelalHomaidan 谢谢你的建议
  • 究竟什么是图像分辨率?

标签: python opencv image-processing computer-vision


【解决方案1】:

使用 PIL,我将图像缩小为缩略图,然后将其转换回原始大小:

from PIL import Image
im = Image.open("1jP94.png")
orig_size = im.size
print(orig_size)
display(im)

==> (142, 155)

im.thumbnail([32, 32])
display(im)

im = im.transform(orig_size, Image.EXTENT, (0,0, 32, 32))
display(im)

【讨论】:

    【解决方案2】:

    对于那些想要在 OpenCV 上实现它的人:

    使用 PIL 将图像缩小为缩略图,然后将其转换回上面回答的原始大小,除了将 PIL 图像转换为 OpenCV 图像之外,这与上面的代码相同:

    from PIL import Image
    import numpy
    import cv2
    
    im = Image.open("image.png")
    orig_size = im.size
    print(orig_size)
    open_cv_image = numpy.array(im)
    open_cv_image = open_cv_image[:, :, ::-1].copy()
    cv2.imshow("original", open_cv_image)
    im.thumbnail([32, 32])
    open_cv_image = numpy.array(im)
    open_cv_image = open_cv_image[:, :, ::-1].copy()
    cv2.imshow("thumbnail", open_cv_image)
    im = im.transform(orig_size, Image.EXTENT, (0,0, 32, 32))
    open_cv_image = numpy.array(im)
    open_cv_image = open_cv_image[:, :, ::-1].copy()
    cv2.imshow("result", open_cv_image)
    cv2.waitKey(0)
    

    【讨论】:

    • 请注意这是我昨天在 cmets 中提出的建议 ?
    • @MarkSetchell 哦谢谢你:我想我不明白你的意思,直到有人做了进一步的解释!
    猜你喜欢
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-23
    • 2014-11-20
    相关资源
    最近更新 更多