使用 Scipy 进行图像腐蚀和膨胀

2024-01-06

我正在尝试使用 scipy 来做erosion http://docs.scipy.org/doc/scipy/reference/generated/scipy.ndimage.morphology.binary_erosion.html and dilation http://docs.scipy.org/doc/scipy/reference/generated/scipy.ndimage.morphology.binary_dilation.html图像的。使用 scipy 似乎非常简单 ->binary_erosion / dialation。然而,输出根本不是预期的。

这是我的基本代码:

import scipy
from scipy import ndimage
import matplotlib.pyplot as plt
import numpy as np
import Image

#im = Image.open('flower.png')
im = ndimage.imread('flower.png')
im = ndimage.binary_erosion(im).astype(np.float32)
scipy.misc.imsave('erosion.png', im)


im2 = Image.open('flower.png')
im2 = ndimage.binary_dilation(im2)
scipy.misc.imsave('dilation.png', im2)

这是输出:

膨胀的输出只是原始“flower.png”的全白图像

我相信我必须指定一个更好的内核或掩码,但我不太确定为什么我会得到绿色的侵蚀输出和完全白色的膨胀输出。


我使用的是二元侵蚀而不是灰色侵蚀 http://docs.scipy.org/doc/scipy/reference/generated/scipy.ndimage.morphology.grey_erosion.html#scipy.ndimage.morphology.grey_erosion大批。我使用以下方法将原始图像转换为灰度图像flatten=true像这样:

im = scipy.misc.imread('flower.png', flatten=True).astype(np.uint8)

然后打电话:

im1 = ndimage.grey_erosion(im, size=(15,15))

并得到了一张很好的侵蚀图片,尽管它是灰度的。

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

使用 Scipy 进行图像腐蚀和膨胀 的相关文章

  • 加快 pandas groupby 中的滚动总和计算

    我想按组计算大量组的滚动总和 但我很难快速地完成它 Pandas 内置了滚动和展开计算器的方法 这是一个例子 import pandas as pd import numpy as np obs per g 20 g 10000 obs g
  • PHP imagettftext 返回的边界框与渲染的边界框不同

    我正在使用 imagettftext 渲染 PNG 文件 对 imagettftext 的调用返回渲染文本的边界框 但仔细检查后发现 文本的渲染稍微超出了它自己的边界框 边界框是正确的 我检查了图像的像素坐标 但文本位置不正确 它输出这个
  • 将 Python 脚本导入另一个脚本?

    我正在阅读 Zed Shaw 的 艰难学习 Python 正在学习第 26 课 在本课中 我们必须修复一些代码 这些代码从另一个脚本调用函数 他说我们不必导入它们来通过测试 但我很好奇我们将如何做到这一点 课程链接 http learnpy
  • 如何在 PyCharm 社区版中运行 Django 项目的调试服务器?

    有人在 PyCharm 社区版中为 Django 项目设置调试配置时遇到问题吗 IDE 的社区版缺少项目设置中的项目类型选项 然后当我设置 调试 或 运行配置 时 它会要求我提供应该运行的脚本 Django 需要什么脚本 manage py
  • 我怎样才能用Python中的语音识别来检测一个单词

    我知道如何用 Python 检测语音 但这个问题更具体 如何让 Python 只监听一个单词 然后如果 Python 可以识别该单词则返回 True 我知道 我可以让 Python 一直监听 然后做出类似的东西 伪代码 while True
  • Panda如何将行分组到不同的时间桶中?

    我有一个带有名为时间戳的日期时间类型列的数据帧 我想根据时间部分的时间戳将数据帧拆分为多个数据帧 每个数据帧包含按其值模 x 分钟进行值的行 其中 x 是变量 请注意e and f不按原来的顺序 以 10 分钟为模 我希望所有时间都以3在一
  • 允许 help() 对部分函数对象起作用

    我正在努力确保跑步help 在 Python 2 7 REPL 显示 doc 对于一个被包装的函数functools partial 目前正在运行help on a functools partial 功能 显示 doc of the fu
  • 忽略 NaN 的列表理解

    我正在尝试构建一个列表理解 其条件是不导入 nan 值 但运气不佳 以下是当前代码以及结果输出 什么条件会将 nan 从列表中删除 def generate labels filtered df columnName return labe
  • lxml 属性需要完整的命名空间

    下面的代码使用 lxml python 3 3 从 Excel 2003 XML 工作簿中读取表格 该代码工作正常 但是为了通过 get 方法访问 Data 元素的 Type 属性 我需要使用键 urn schemas microsoft
  • 动态组装 Python 模块,动态导入

    我正在努力让自己熟悉importlib钩子 我想实现直接导入用其他语言编写的非Python文件并维护源映射的能力 因此提高SyntaxError带有行号的 s 仍然会给出有意义的堆栈跟踪 我加载外部文件的方法是组装 Pythonic 源代码
  • 保持 WebSocket 连接处于活动状态

    我正在研究 WebSocket 协议 并尝试在后端使用 Python 实现一个简单的 ECHO 服务 它似乎工作正常 但连接建立后立即断开 这是我的客户
  • 使用 Keras 时,验证集中未见的类别会出现错误

    我有由数值变量和分类变量组成的数据 分类变量有很多类别 因此我使用嵌入来表示这些类别 我的模型是一个简单的神经网络 我知道当你定义嵌入层时你需要通过input dim number of categories 1为了解释训练中看不见的类别
  • 如何为 matplotlib 中已绘制的线设置标签?

    在我的代码中我已经执行了 ax plot x y b 并且需要能够在事后设置相应行的标签 以达到与我相同的效果 ax plot x y b label lbl 有没有办法在 Matplotlib 中做到这一点 如果你抓住了line2D创建对
  • 合法 .xlsx 文件上的 openpyxl load_workbook() 会导致 zipfile.BadZipFile 错误

    我试图做的是将数据帧数据附加到现有的合法 Excel 文件中 我使用了 openpyxl 中的 load workbook 函数 但它系统地返回错误 这是一些在我的机器上崩溃的代码 from openpyxl import load wor
  • 将人员分配到床位 - 自动化方法[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我每年都会帮助举办青年营 将与会者分配到卧室是一项艰巨的任务 有 92 个卧室 活动持续一周 与会者停留的时间长短不一 而且床需要重复
  • Discord-py Rewrite - Cog 中的基本 aiohttp Web 服务器

    我正在尝试将基本的 aiohttp 网络服务器集成到 Cog 中 使用 discord py 重写 我对齿轮使用以下代码 from aiohttp import web import discord from discord ext imp
  • 以编程方式在 iPhone 上使用彩信发送图像?

    搜遍全网都没有解决这个问题 我想用 iPhone 相机拍照 然后能够通过彩信 电子邮件发送出去 这不一定发生在我的应用程序中 但至少我希望能够调用彩信 电子邮件应用程序并使其选择拍摄 和存储 的图片 当我使用内置相册应用程序时 每张照片的左
  • Pytorch RuntimeError:张量 a (4) 的大小必须与非单维 0 处张量 b (3) 的大小匹配

    我使用的代码来自here https www learnopencv com image classification using transfer learning in pytorch 训练模型来预测印刷样式编号0 to 9 idx t
  • Django ALLOWED_HOSTS 与 CORS(django-cors-headers)

    ALLOWED HOSTS 和 CORS 之间有什么区别 如果我定义了 ALLOWED HOSTS 我还需要定义 CORS 吗 我没有使用 django 模板 我也有可能动态定义这两个吗 我认为没有 我使用 django 作为后端 并在不同
  • PHP 中的 imagecolortransparent 不起作用

    我想改变图像中的白色 http www arso gov si vreme napovedi 20in 20podatki radar gif http www arso gov si vreme napovedi 20in 20podat

随机推荐

  • F# 中没有构造函数的类

    我不确定为什么 F 似乎允许定义没有任何构造函数的类 我的意思是 实例化该类的对象是不可能的 语言规范不应该将其视为非法行为吗 例如 我可以定义类 type myClass class member this x 0 end myClass
  • 在 Swiper.js 最后一张幻灯片之后继续滚动

    我需要一些有关 Swiper js 的帮助 我有一个正在开发的网站https www paradev co uk ee live home alt https www paradev co uk ee live home alt 我想要发生
  • 结构参数的默认值

    假设我有以下结构 struct myStruct int x int y int z int w 我想在调用以下函数时将此结构初始化为默认值 如果有帮助 我正在寻找一个简单的零初始化 void myFunc myStruct param 0
  • 我怎样才能把日期和时间选择器放在android的对话框中

    我是 Android 新手 正在努力解决如何添加这两个date picker and time picker在一个单一的dialog box请指导我该怎么做我创建了一个dialog box并使用一个函数setview给它充气 但我得到了例外
  • CQ 工作流程,“Handler Advance”的目的?

    我正在 Adob e CQ 5 4 中使用一些自定义 WorkflowProcess 类 当我将工作流程步骤配置为工作流程模型的一部分时 有一个标题为 处理程序前进 检查您的处理程序是否将前进到下一步 的复选框 我的 Java 类实际上确实
  • Node.js + MySQL - 处理事务

    我正在使用express和node mysql驱动程序在node js上构建一个应用程序 当我需要进行一系列数据库插入 更新时 我的应用程序中有几种情况 我希望它们在一个事务中 这样如果第二个或第三个失败 以前的插入将完全回滚 目前 我这样
  • 如何旋转形状 (n,) 或 (n,1) 的 numpy 数组中的数字?

    假设我有一个 numpy 数组 gt gt gt a array 0 1 2 3 4 我想 旋转 它以获得 gt gt gt b array 4 0 1 2 3 什么是最好的方法 我一直在转换为双端队列并返回 见下文 但是有更好的方法吗 b
  • 使用 Angular ui-router 设置 URL 查询参数而不更改状态

    我应该如何使用 AngularJS 的 ui router 通过更改查询参数来更新地址栏 URL 以在刷新页面时保持状态 目前 我正在使用 state transitionTo search q updated search term 每当
  • MySQL单字段斜率(趋势)(最佳拟合线)

    我有一个名为 LOGENTRY 的简单表 其中包含名为 DATE 和 COST 的字段 例子 DATE COST MAY 1 2013 0 8 SEP 1 2013 0 4 NOV 1 2013 0 6 DEC 1 2013 0 2 我想找
  • HTTP/2 请求和以冒号开头的标头

    你好 亲爱的 SO 社区 我有一个问题折磨了我好几个月却没有解决办法 我正在尝试在 HTTP 2 端点上发出请求 该端点使用一些以冒号开头的标头 例子 method POST 我尝试过 python hyper requests php g
  • 如何在 AngularJS 网页中滚动后修复元素

    我最近用 AngularJs 做了一个网站 我还处于学习阶段 我希望在页面上的某个元素到达顶部后对其进行修复 我尝试过各种 Javascript 和 Jquery 函数 然而 他们似乎并没有工作 我也尝试使用 Angular UI 的 ui
  • 如何在 Linux 上的 Bash 中一次删除多个文件?

    我在 Linux 服务器上有以下文件列表 abc log 2012 03 14 abc log 2012 03 27 abc log 2012 03 28 abc log 2012 03 29 abc log 2012 03 30 abc
  • onsubmit 方法与提交事件监听器

    我一直在为一门课程做一个邮件程序 我遇到了与通过 return false 阻止表单提交有关的行为 我不明白 情况 1 未正确阻止表单提交 重新加载 DOM 并出现 200 错误 document querySelector compose
  • IDEA 中的 Spring 支持与 Lombok:是否支持“导航到自动装配依赖项”?

    Lombok 支持生成构造函数 Inject注释 RequiredArgsConstructor onConstructor Inject 所以 而不是 Service public class FooService private fin
  • Node.js 支持“let”语句吗?

    Node js 是否支持 let 语句 例如MDN 上有描述吗 https developer mozilla org en JavaScript Reference Statements let var x 8 y 12 let x 5
  • opencv 使用 waitKey() 函数处理箭头键

    我想处理箭头键 但是当我打印出 waitKey 函数的输入值时 它是 0 我不知道为什么 我尝试从 int 更改为 char 但它不起作用 我怎么解决这个问题 int pos 100 imshow image image onChange
  • 页面加载时的 jQuery .fadeIn() ?

    我正在尝试设置一些代码 以便我有一个首先隐藏但在页面加载后淡入的代码 我有以下 HTML 代码 div class hidden p This is some text p div 然后我还有这个 CSS 代码 它隐藏了 div div h
  • 如何从war文件中获取java源代码?

    我没有最新的源代码 但在服务器上部署了 war 最新 文件 请建议最好的方法1 从war ear获取源代码2 将可用源代码与 war ear 中存在但可用源代码中缺失的代码进行比较并合并 更新 我正在使用 ECLIPSE IDE 提前致谢
  • 如何在 Mac 上与图层支持的视图交互

    我正在设计一个包含多个标签和文本字段的用户界面 我想像这样设计用户界面 为我的内容视图设置背景图案NSWindow 在左上角背景添加自定义图标 我通过将内容视图设置为层支持视图如中所述Apple 的文档NSView http develop
  • 使用 Scipy 进行图像腐蚀和膨胀

    我正在尝试使用 scipy 来做erosion http docs scipy org doc scipy reference generated scipy ndimage morphology binary erosion html a