You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Wolfram Mathematica中计算上图标记点间的像素距离?

在Wolfram Mathematica中计算图像标记点的像素距离

嘿,我来教你怎么搞定这个问题,步骤很直观,跟着做就行:

  • 第一步:导入目标图像
    先把你的图片导入Mathematica里,用Import函数就行,替换成你的图片实际路径:

    img = Import["你的图片文件路径"];
    
  • 第二步:获取标记点的坐标
    有两种实用方式获取点的坐标:

    1. 手动点选:如果你需要自己精准选图里的标记点,可以用这段代码创建一个交互式工具——点击"添加点"后在图像上点选标记点,坐标会自动存在points变量里:
      points = {};
      Manipulate[
       Show[img, Graphics[{Red, PointSize[0.02], Point[#] & /@ points}]],
       Button["添加点", AppendTo[points, MousePosition["Graphics"]]],
       Button["清除点", points = {}]
      ]
      
    2. 自动检测:如果图里的标记点是明显的色块(比如你图里的红色点),可以用BlobDetect自动识别这些点的坐标,省得手动一个个点:
      detectedPoints = BlobDetect[img, MinBlobSize -> 5];
      
  • 第三步:计算像素距离
    拿到两个点的坐标后,用Norm函数计算欧氏距离,结果就是它们之间的像素距离啦:
    比如手动选点后,计算前两个点的距离:

    Norm[points[[2]] - points[[1]]]
    

    如果是自动检测的点,把变量替换成detectedPoints就行。

内容的提问来源于stack exchange,提问作者yasin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:42:52