【问题标题】:Post-processing the heatmap in python or ImageMagick在 python 或 ImageMagick 中对热图进行后处理
【发布时间】:2017-07-07 14:45:24
【问题描述】:

我怎样才能使这个热图看起来更清晰没有模糊效果。我怎样才能锐化它 Python(或 ImageMagick)?另外,我怎样才能在背景上获得像素网格

这是我用来获取当前图像的内容:

maxsize = (1030, 2056)
for i in range(1,334,1):
    img = Image.open('C:Desktop/Img/image'+'_'+ str(i)+'.png')
    img = img.resize(maxsize, Image.BICUBIC)
    img.save('C:/Desktop/Res/img'+'_'+ str(i)+'.png', dpi = (7040,7040))

我也尝试过 ImageMagick(但这并没有太大帮助,至少在视觉上看起来):

magick img_244.png -sharpen 0x3 out.png

非常感谢您,

【问题讨论】:

    标签: python python-2.7 imagemagick heatmap


    【解决方案1】:

    在 ImageMagick(以及 OpenCV/python)中,您可以使用 kmeans 来处理您的图像。我有一个用于 ImageMagick 的 bash unix shell 脚本。

    kmeans -n 7 -m 5 g4Zwf.png result7.png
    

    其中 n 是颜色数,m 是最大迭代次数。

    那你就可以用我的脚本grid来画线了(或者直接用ImageMagick)来画线。使用我的脚本,间距为 100 像素的网格给出:

    grid -s 100,100 -c white result7.png result7g100.png
    

    我的脚本在http://www.fmwconcepts.com/imagemagick/index.html

    对于 OpenCV/Python,请参阅 http://docs.opencv.org/3.0-beta/doc/py_tutorials/py_ml/py_kmeans/py_kmeans_opencv/py_kmeans_opencv.htmlHow to write lines and grid on image in Python?

    OpenCV/Python 还具有期望最大化,它在颜色处理上的表现可能比 kmeans 更好。见https://en.wikipedia.org/wiki/Expectation–maximization_algorithmMaximum likelihood pixel classification in python opencv

    【讨论】:

      【解决方案2】:

      您导入的模块是Image?您需要的是最近邻插值,而不是双三次 interpolation。大概是这样的

      img = img.resize(maxsize, Image.INTER_NEAREST)
      

      【讨论】:

      • 我使用了 PIL(导入图像)。我认为最近邻插值太大了,像素的大小(如果我能说的话)太大了。结果,无法获得我们想要看到的平滑度。会有替代方案吗?我用这个网站作为参考:daniweb.com/programming/software-development/code/216637/…
      • 您的原始图像不包含比您在最近邻“插值”中看到的更多信息。恐怕我只能参考不同的interpolation methods in PIL 来帮助您。也许其中之一会导致接近您想要的外观的东西。您可以更改颜色图,请参阅 here 了解如何将 matplotlib 颜色图与 PIL 一起使用。
      • 我同意 LUB。如果您有一个非常小的原始数据集并且正在尝试扩展,那么通过使用 -resize,由于像素插值,您会对其进行模糊处理。我上面所做的只是尝试将它分成独特的颜色。如果你想放大,你应该在 ImageMagick 中使用 -scale 或尝试 -filter carton -resize,这可能会给你带来更清晰的结果,具体取决于你有多少放大。但是LUB是正确的。使用 -scale 从像素复制中获得的信息并不多。
      猜你喜欢
      • 2010-10-17
      • 2019-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-04
      • 1970-01-01
      • 2018-05-18
      • 2017-08-21
      相关资源
      最近更新 更多