如何使用 Mathematica 查找 Waldo?

2024-02-08

这周末困扰着我:有什么好方法来解决这些问题沃尔多在哪里? https://en.wikipedia.org/wiki/Where%27s_Wally%3F ['Wally'北美以外] 谜题,使用 Mathematica(图像处理和其他功能)?

这是我到目前为止所拥有的,一个通过调暗来稍微降低视觉复杂性的功能 一些非红色:

whereIsWaldo[url_] := Module[{waldo, waldo2, waldoMask},
    waldo = Import[url];
    waldo2 = Image[ImageData[
        waldo] /. {{r_, g_, b_} /;
          Not[r > .7 && g < .3 && b < .3] :> {0, 0,
          0}, {r_, g_, b_} /; (r > .7 && g < .3 && b < .3) :> {1, 1,
          1}}];
    waldoMask = Closing[waldo2, 4];
    ImageCompose[waldo, {waldoMask, .5}]
]

这是一个“有效”的 URL 示例:

whereIsWaldo["http://www.findwaldo.com/fankit/graphics/IntlManOfLiterature/Scenes/DepartmentStore.jpg"]

(沃尔多在收银台旁边):


我找到了沃尔多!

我是怎么做到的

首先,我过滤掉所有非红色的颜色

waldo = Import["http://www.findwaldo.com/fankit/graphics/IntlManOfLiterature/Scenes/DepartmentStore.jpg"];
red = Fold[ImageSubtract, #[[1]], Rest[#]] &@ColorSeparate[waldo];

接下来,我计算该图像与简单的黑白图案的相关性,以找到衬衫中的红色和白色过渡。

corr = ImageCorrelate[red, 
   Image@Join[ConstantArray[1, {2, 4}], ConstantArray[0, {2, 4}]], 
   NormalizedSquaredEuclideanDistance];

I use Binarize挑选图像中具有足够高相关性的像素,并在它们周围画白色圆圈以强调它们Dilation

pos = Dilation[ColorNegate[Binarize[corr, .12]], DiskMatrix[30]];

我必须稍微调整一下关卡。如果级别太高,则会挑选出太多误报。

最后我将这个结果与原始图像结合起来得到上面的结果

found = ImageMultiply[waldo, ImageAdd[ColorConvert[pos, "GrayLevel"], .5]]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Mathematica 查找 Waldo? 的相关文章

  • 避免重复调用 Interpolation

    我想在mathematica 中插入一个函数 该函数取决于参数a 实际上它是函数的反函数F这也取决于a 所以我建立我的近似值如下 approx Interpolation Table F 0 1 n a 0 1 n n 100 100 现在
  • 透视变形矩形的比例

    给定一张被透视扭曲的矩形的二维图片 我知道这个形状原本是一个矩形 但我不知道它原来的大小 如果我知道这张图片中角点的像素坐标 我如何计算原始比例 即矩形的商 宽度 高度 背景 目标是自动使矩形文档的照片不失真 边缘检测可能会通过霍夫变换完成
  • Python:处理图像并保存到文件流

    我需要使用 python 处理图像 应用过滤器和其他转换 然后使用 HTTP 将其提供给用户 现在 我正在使用 BaseHTTPServer 和 PIL 问题是 PIL 无法直接写入文件流 因此我必须写入临时文件 然后读取该文件 以便将其发
  • 去除图像背景并提取图像中的对象

    I know that there are many threads here about this issue but I m not able to solve my problem with those answers I tried
  • 运行时错误:大小不匹配,m1:[4 x 3136],m2:[64 x 5]位于c:\ a \ w \ 1 \ s \ tmp_conda_3.7_1

    我使用 python 3 当我插入变换随机裁剪大小 224 时 它会给出未匹配错误 这是我的代码 https github com kajasumanie medical plant classification blob master i
  • 图像分析-光纤识别

    我是图像分析新手 您知道如何以仅获取纤维的方式对该图像进行二值化吗 我尝试过不同的阈值技术等 但没有成功 我不介意应该使用什么工具 但我更喜欢 NET or Matlab PS 我不知道该把答案放在哪里 所以我把它放在StackOverfl
  • Mathematica:如何获取plot命令绘制的数据点?

    当使用 Plot 绘制函数时 我想获取由 Plot 命令绘制的数据点集 例如 如何获取以下简单示例中使用的点 t f Plot 的列表 f Sin t Plot f t 0 10 我尝试使用一种将值附加到列表的方法 如 Jerry B Ke
  • 如何使用PIL将灰度图转为伪彩色?

    我似乎不知道如何获取我的灰度函数并将其更改为给我假颜色 我知道我需要将每种颜色 R G B 分成范围 然后根据每种颜色的范围分配颜色 有谁知道这是如何运作的 def grayscale pic width height pic size f
  • 有没有办法检测图像是否模糊? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想知道是否有一种方法可以通过分析图像数据来确定图像是否模糊 估计图像清晰度的另一种非常简单的方法是使用拉普拉斯 或 LoG 滤波器并
  • OpenCV:使用 StereoCamera 系统对颜色标记进行 3D 姿态估计

    我有一个立体摄像系统并使用两者正确校准它 cv calibrateCamera and cv stereoCalibrate My reprojection error似乎没问题 凸轮0 0 401427 凸轮1 0 388200 立体声
  • 在 python lib 中导入和裁剪 jpeg 的快速方法

    我有一个 python 应用程序 可以导入 200k 图像 裁剪它们 并将裁剪后的图像呈现给 pyzbar 来解释条形码 裁剪很有帮助 因为图像上有多个条形码 并且当给定较小的图像时 pyzbar 可能会更快一些 目前我正在使用 Pillo
  • 如何获得垂直线穿过的完整内轴线?

    我有一个图像 我想获取穿过其中轴的像素 我尝试使用骨架化 and 中轴方法来获取它们 但这两种方法都返回比相应对象短的一维线 这是带有示例图像的代码 gt gt gt import skimage filter gt gt gt impor
  • 如何使用 python 测量骨架长度的想法

    After applying skeletonization http scikit image org docs dev auto examples plot skeleton html on an image 我想使用 python 测
  • 如何在 C# 中将位图图像转换为黑白图像? [复制]

    这个问题在这里已经有答案了 可能的重复 在 c 中将图像转换为黑白或棕褐色 https stackoverflow com questions 4624998 convert image to black white or sepia in
  • 图像的 EMGU/OpenCV FFT 未产生预期结果

    我正在尝试使用 EMGU 可视化图像的 FFT 这是我正在处理的图像 这是预期的结果 Here s what I get 这是我的代码 Image
  • .NETLink Graphics 生成 PNG 而不是 EMF

    下面的 C 代码应该生成 EMF 但查看输出 在 Vim 中 显示它是 PNG 也许有人在 S O 知道一个好的解决方法或解决方案 MathKernel k new MathKernel k CaptureGraphics true k G
  • Pytorch RuntimeError:张量 a (4) 的大小必须与非单维 0 处张量 b (3) 的大小匹配

    我使用的代码来自here https www learnopencv com image classification using transfer learning in pytorch 训练模型来预测印刷样式编号0 to 9 idx t
  • PyTorch 中的数据增强

    我对 PyTorch 中执行的数据增强有点困惑 现在 据我所知 当我们执行数据增强时 我们保留原始数据集 然后添加它的其他版本 翻转 裁剪 等 但 PyTorch 中似乎并没有发生这种情况 据我从参考文献中了解到 当我们使用data tra
  • 使用 openCV 对图像中的子图像进行通用检测

    免责声明 我是计算机视觉菜鸟 我看过很多关于如何在较大图像中查找特定子图像的堆栈溢出帖子 我的用例有点不同 因为我不希望它是具体的 而且我不确定如何做到这一点 如果可能的话 但我感觉应该如此 我有大量图像数据集 有时 其中一些图像是数据集的
  • 我需要什么库才能在 Java 中访问这个 com.sun.image.codec.jpeg?

    我正在用java创建一个图像水印程序 并导入了以下内容 import com sun image codec jpeg JPEGCodec import com sun image codec jpeg JPEGEncodeParam im

随机推荐

  • WPF - 将组合框项目前景绑定到其值

    我创建了一个组合框 列出了 System Windows Media Colors 预定义的颜色 使用此问题中所述的方法 如何使用 XAML 在 WPF 中列出颜色 https stackoverflow com questions 562
  • Jenkins:使用 Groovy 清理工作空间

    我的 Jenkins 设置没有节点 所有构建都在同一台机器上运行 我想设置一个 Groovy 脚本来清理旧工作区 所以我想使用 proj scm processWorkspaceBeforeDeletion Nonnull Job
  • HTTPS 与 NSURLConnection - NSURLErrorServerCertificateUntrusted

    我有一个可以通过 http 连接良好的应用程序 尝试 https 时 我收到错误消息 指出根证书不受信任 我找到了我的站点证书 其 CA 证书和 CA 根证书的 URL 并通过 Safari 将它们添加到手机中 现在 当我进入 首选项 gt
  • Visual Studio 中的单元测试 MVC Web 应用程序和 QTAgent 问题

    我一直在尝试在 Visual Studio 中为 MVC 应用程序运行单元测试 并不断收到以下错误 指定的 URL http localhost 21496 与 有效目录 配置为在 IIS 中的 ASP NET 中运行的测试需要 URL 存
  • Javascript的tabIndex属性是跨浏览器的吗?

    我遇到了一个问题 并且这个答案 https stackoverflow com a 16492878 1223693解决了它 它使用该属性tabIndex 这个属性是跨浏览器的吗 哪些浏览器支持 通常我会使用 Google 来完成此任务 但
  • 无法在 SOAPUI 中导入 WSDL 文件 - NT 身份验证弹出窗口(加载 WSDL 时出错)

    我以前从未遇到过类似的问题 我尝试过 SOAP 4 0 1 和 SOAP 5 1 2 我在 Windows 上尝试过 也在 Windows Server 2008 上尝试过 我尝试导入 WSDL 出现 NT 身份验证对话框 指定 NT 身份
  • 运行时错误 91 未设置对象变量或 With 块变量 - 使用公共变量

    我目前正在开展一个项目 该项目整合了许多工作簿中的信息 虽然应用程序的第一个版本使用Select and Activate从我在本网站上看到的信息来看 应该尽可能避免使用这些方法 因此 我目前正在重新修改代码以尽可能消除这些问题 我正在使用
  • 仅通过 CSS 定位 IE9 [重复]

    这个问题在这里已经有答案了 只是想知道我的技巧包里有这些 IE 黑客 9 for IE8 and below for IE7 and below for IE6 即例如 body border 2px solid blue border 2
  • 您可以从另一台服务器发送 HTTP 响应吗?

    也许是愚蠢的问题 我最近一直在玩 Node js 喜欢设置服务器和发出请求等是多么容易 我还没有尝试过 但想知道如何将数据从一个请求转发到另一台服务器 并有第二个服务器向客户端发送响应 这可能吗 i e 客户端 gt 服务器 A gt 服务
  • 无法撤消子元素的文本装饰

    假设你有这个 html a href This is underlined span This isn t span a 还有这个CSS a hover text decoration underline I know this is en
  • 如何从字符串列表创建多个变量? [复制]

    这个问题在这里已经有答案了 我有一个字符串列表 例如 names apple orange banana 我想为列表中的每个元素创建一个列表 该列表的名称与字符串完全相同 apple orange banana 我怎样才能在Python中做
  • 如何使用实验说明符分辨率=节点运行node.js cli?

    我们的团队构建了一个用于维护的小型 CLI package json 指定了一个路径bin财产 一切都运转良好 bin eddy dist src cli entry js 自动完成是通过使用实现的 email protected cdn
  • Mongoose,如何清空集合

    我有以下 hapi js 服务器 const Hapi require hapi const Mongoose require mongoose const Wreck require wreck const server new Hapi
  • 如何修复 SOAPUI 中不支持的主次版本 52.0

    我正在 SOAPUI 中使用 groovy 脚本测试步骤运行 selenium 脚本 但出现以下错误 如何解决这个问题 java lang UnsupportedClassVersionError org openqa selenium s
  • 显示grafana点悬停的详细信息

    我使用 Influxdb 作为 grafana 的来源 在每个数据点的时间序列上 我有几个值和标签 如何将鼠标悬停在折线图中的特定数据点上显示相关数据点 或者 我可以调用一些 API 传递一些值来填充悬停时出现的工具提示 截至撰写本文时 还
  • URL 编码——& 符号问题

    我在某些字符编码方面遇到了一些问题 导致我网站上的搜索表单出现了一些问题 可能的字段值之一包含一个 符号 选择此选项并提交搜索后 符号将编码为 2526 使用页面底部的分页链接并导航到结果列表中的第二页时 符号将被编码为 26 最后 在尝试
  • JavaScript:以整数形式读取 3 个字节缓冲区

    假设我有一个十六进制数据流 我想将其分为 3 字节块 我需要将其作为整数读取 例如 给定一个十六进制字符串01be638119704d4b9a我需要读取前三个字节01be63并将其读取为整数114275 这就是我得到的 var sample
  • xcode 5:代码签名身份列表不完整

    刚刚更新并使用 xcode 5 来升级我的应用程序的第二个版本 但现在的问题出在代码签名身份上 当我打开 xcdoe 4 5 中的旧文件时 我会看到我的身份的完整列表 但在这个新项目中 只列出了一个开发人员身份 其余的 开发者和发行版 身份
  • 链接链接静态库中符号的动态库:macOS 与 Linux

    我正在将一个 Linux 应用程序移植到 macOS 链接行为存在差异 我花了一些时间才发现它的差异 该项目使用基于 CMake 的两阶段构建过程 一个 CMake 树创建一个动态库 该动态库链接到稍后创建的第二个树中创建的静态库 创建动态
  • 如何使用 Mathematica 查找 Waldo?

    这周末困扰着我 有什么好方法来解决这些问题沃尔多在哪里 https en wikipedia org wiki Where 27s Wally 3F Wally 北美以外 谜题 使用 Mathematica 图像处理和其他功能 这是我到目前