首页 文章

实现图像轮廓绘制的基本思路

提问于
浏览
0

我一直在使用 matplotlib.pyplot.contour 绘制图像轮廓,我想知道如何实现轮廓绘图,但我发现 pyplot.contour 的代码很难理解 . 我有这样的想法,对于灰度图像,每个像素都有一个强度值,为了绘制其轮廓,我可能会选择一组强度值,比如将范围 [min-intensity-value, max-intensity-value] 划分为10个段 [min-intensity-value, val0, val1,..., val8, max-intensity-value] ,然后为每个段的边界强度值(像 val0, val1,...,val8 ),找出所有那些具有相同强度值的像素,我认为这些像素将形成一条轮廓线 .

我的想法是正确的方法吗?希望任何人都可以给我一个关于如何实现它的基本想法 . 谢谢 .

1 回答

  • 1

    您使用相同颜色连接所有值的想法将无效,因为无法保证这些值已连接 . 另外,考虑例如两个相同颜色的像素在角落处接触的情况:没有办法说明这些像素是否已连接或例如另一条对角线 .

    我相信问题基本上就是你想要实现的目标 . 如果您只想对图像进行矢量化,则可以使用现有的工具,例如POtrace . 如果您需要特殊的东西或有特殊的输入数据,那么当您告诉人们这一点时,您将获得更好的结果 . 在这种情况下,我还需要一两个小时从他们的网站上查找POtrace算法的非常好的描述,也许你可以从中借用一些好的想法?

相关问题