在 Python 中从图像中提取连接的对象

2024-03-11

我有一个graysacle png 图像,我想从图像中提取所有连接的组件。 有些组件具有相同的强度,但我想为每个对象分配一个唯一的标签。 这是我的图片

我尝试了这段代码:

img = imread(images + 'soccer_cif' + str(i).zfill(6) + '_GT_index.png')
labeled, nr_objects = label(img)
print "Number of objects is %d " % nr_objects

但我用这个只得到了三个对象。 请告诉我如何获取每个对象。


J.F.塞巴斯蒂安展示了一种方法 https://stackoverflow.com/a/5304140/190597识别图像中的对象。然而,它需要手动选择高斯模糊半径和阈值:

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

fname='index.png'
blur_radius = 1.0
threshold = 50

img = Image.open(fname).convert('L')
img = np.asarray(img)
print(img.shape)
# (160, 240)

# smooth the image (to remove small objects)
imgf = ndimage.gaussian_filter(img, blur_radius)
threshold = 50

# find connected components
labeled, nr_objects = ndimage.label(imgf > threshold) 
print("Number of objects is {}".format(nr_objects))
# Number of objects is 4 

plt.imsave('/tmp/out.png', labeled)
plt.imshow(labeled)

plt.show()

With blur_radius = 1.0,这找到了 4 个对象。 和blur_radius = 0.5,找到 5 个对象:

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

在 Python 中从图像中提取连接的对象 的相关文章

  • 导入错误:无法导入名称“PandasError”

    我对在 Mac 上运行的 Python 3x 非常陌生 当前使用 python 金融的 senddex 教程 尝试运行以下脚本 import datetime as dt import matplotlib pyplot as plt fr
  • 二进制数据的Python字符串表示

    我试图理解 Python 显示表示二进制数据的字符串的方式 这是一个使用的示例乌兰多姆操作系统 http docs python org library os html os urandom In 1 random bytes os ura
  • 使用记事本打开文本文件作为python中的帮助文件?

    我想为我的简单程序的用户提供打开帮助文件的机会 以指导他们如何充分利用我的程序 理想情况下 我希望在 GUI 上有一个蓝色的小帮助链接 可以随时单击该链接 从而在本机文本编辑器 例如记事本 中打开 txt 文件 有没有一种简单的方法可以做到
  • 每个刻度标签都有不同的颜色

    我正在尝试使用 matplotlib python 3 5 创建一个散点图 其中 x 轴上的每个刻度都有不同的颜色 这怎么可能 例如 假设 x 刻度为 Mo Tu We Th Fr Sa Su 现在我希望 Mo 是绿色的 Tu 是蓝色的 等
  • 通过 rpy 将 SPSS 文件(.sav)导入 pandas 时如何保留标签?

    我正在寻找使用 SPSS 文件 sav pandas 在没有 SPSS 程序的情况下 典型文件转换为 csv 后的样子如下 在调查前两行的含义时 我不知道 SPSS 似乎第一行包含Labels 而第二行包含VarNames 当我将文件带入
  • 可以memmap pandas系列。数据框怎么样?

    看来我可以通过创建 mmap d ndarray 并使用它来初始化系列来对 python 系列的底层数据进行内存映射 def assert readonly iloc try iloc 0 999 Should be non editabl
  • 从另一个文件覆盖函数中的变量

    一 总结 我不知道如何从另一个文件覆盖函数中的变量 2 示例 2 1 配置 I use logbook http logbook pocoo org and pyfancy https github com ilovecode1 Pyfan
  • argparse 更改参数的定义

    我按如下方式设置参数解析器 parser argparse ArgumentParser parser add argument point help enter a point e g 2 3 4 parser parse args po
  • 带有redirect_uri的social-auth-app-django Facebook后端状态

    我知道我的问题听起来像是重复的 但我到处寻找但没有找到任何解决方案 我正在努力为我的 django web 应用程序实现社交登录 到目前为止 谷歌 推特和雅虎登录均按预期工作 但facebook总是给出以下错误 URL 被阻止 此重定向失败
  • Django - 该进程无法访问该文件,因为该文件正在被另一个进程使用

    我正在尝试在 Windows 10 上运行 Django 我是 Django 的新手 我正在使用 Compressor Toolkit 我的问题是 我可以运行 manage py 但本地主机说 base html 第 9 行出错该进程无法访
  • 如何在 iPython 中获取最后分配的变量的值?

    我是一个完全的 iPython 新手 但我想知道是否有办法获取最后分配的变量的值 In 1 long variable name 333 In 2
  • Pandas如何将多个函数应用于数据框

    有没有办法像 DataFrameGroupBy agg 函数那样将函数列表应用于 DataFrame 中的每一列 我发现了一个丑陋的方法来做到这一点 df pd DataFrame dict one np random uniform 0
  • 如何在Python中获取套接字的外部IP?

    当我打电话时socket getsockname 在套接字对象上 它返回我的机器的内部 IP 和端口的元组 但是 我想找回我的外部IP 最便宜 最有效的方式是什么 如果没有外部服务器的配合 这是不可能的 因为您和另一台计算机之间可能存在任意
  • Python 用静态图像将 mp3 转换为 mp4

    我有x文件包含一个列表mp3我想转换的文件mp3文件至mp4文件带有static png photo 似乎这里唯一的方法是使用ffmpeg但我不知道如何实现它 我编写了脚本来接受输入mp3文件夹和一个 png photo 然后它将创建新文件
  • 使用条件在 pandas 数据框中生成新列

    我有一个 pandas 数据框 如下所示 portion used 0 1 1 0 1 2 0 3 2 3 0 0 3 4 0 8 我想根据以下内容创建一个新专栏used列 以便df看起来像这样 portion used alert 0 1
  • 为什么我可以使用 tsql 连接到 Azure MS SQL,但不能使用 pymssql?

    我今天在哪里 TDSVER 7 3 tsql H example database windows net U me D ExampleDB p 1433 P notreallymypassword 这不会 gt gt gt import
  • 使用 pyspark 计算所有可能的单词对

    我有一个文本文档 我需要找到整个文档中重复单词对的可能数量 例如 我有下面的word文档 该文档有两行 每行用 分隔 文档 My name is Sam My name is Sam My name is Sam My name is Sa
  • *Python 内的 Kaggle API 文档?

    我想写一个python从 Kaggle com 下载公共数据集的脚本 Kaggle API 是用 python 编写的 但是我能找到的几乎所有文档和资源都是关于如何在命令行中使用该 API 的 而关于如何使用kaggle图书馆内python
  • matplotlib imshow() 和像素强度

    我试图了解矩阵的值是如何输入到 matplotlib 的imshow 函数确定灰度模式下像素的强度 考虑示例代码 import random import matplotlib pyplot as plt import matplotlib
  • 捕获 SQLAlchemy 异常

    我可以使用什么捕获 SQLAlechmy 异常的上层异常 gt gt gt from sqlalchemy import exc gt gt gt dir exc ArgumentError CircularDependencyError

随机推荐

  • 访问控制允许来源-本地主机

    我在通过ajax接收json时遇到问题 错误如下 根据我迄今为止发现的有关该错误的信息 这似乎是某种跨域问题 但我不知道这意味着什么以及如何解决它 响应头可能有问题 我自己创建了 API 之前没有经验 但是如果直接在浏览器中访问 url 则
  • 如何使用 PowerShell 命令从 terraform Variables.tf 文件中提取变量值

    我有一个变量 tf 文件 其中包含所有项目变量 我尝试使用 PowerShell 获取变量值 变量 tf variable products default Product 1 Product 2 Product 3 Product 4 v
  • 忽略和有什么缺点

    不使用有什么缺点吗 and 在用 HTML 和 PHP 编写的网页上 我的意思是 无论有没有它 一切都可以正常工作 那么为什么要使用它呢 它们在规范中是明确可选的 因此文档仍然有效 自从原始规格 https www w3 org MarkU
  • 拒绝在框架中显示“url”,因为它将“X-Frame-Options”设置为“sameorigin”。 JavaScript 代码有问题

    我正在开发一个网站 当您搜索该网站时 该网站会隐藏您的历史记录 function code url var win window open win document body style margin 0 win document body
  • Java Dom 解析器报告子节点数量错误

    我有以下 xml 文件
  • 如何在 capnproto C++ 生成的代码中设置列表的字符串项?

    我有这样的 capnproto 定义 struct School name 0 Text address 1 Address foundation 2 Date emailAddresses 3 List Text 我想在构建器中使用与此类
  • JSLint:在定义错误之前使用函数

    我使用 JSLint 来验证我的大部分外部 Javascript 文件 但我得到的最大数量的错误来自于定义之前使用的函数 这真的是我应该担心的问题吗 看来 Firefox IE7 和 Chrome 并不关心 功能与流行的一样init 我经常
  • 时间延迟 Tkinter

    我想在 PyDev Eclipse python 2 75 中制作一个图形窗口 我做了一些事情 但我想做一个 入口 眨眼 它测试用户输入 如果它是一个整数 它应该闪烁绿色一秒钟 然后变成白色 但如果它是一串其他东西 它应该闪烁红色 然后变成
  • 如何制作分割文本输入占位符?

    我想要做的事情也许最好用图像来解释 我将在下面添加 但本质上它是文本inputHTML 字段一半是预先存在的值 另一半是可替换的 我尝试添加两个value and a placeholder场 然后通过将它们分开padding left在
  • python SyntaxError 与 dict(1=...), 但 {1:...} 有效

    Python 似乎在接受字典类型的键方面不一致 或者 换句话说 它允许以一种定义字典的方式使用某些类型的键 但不允许以其他方式使用 gt gt gt d 1 one 2 2 gt gt gt d 1 one gt gt gt e dict
  • UIHostingController 是否必须位于视图控制器层次结构中?

    我想在我的基于 UIKit 的 UI 中嵌入一些 SwiftUI 不幸的是 Apple 不提供UIHostingView only UIHostingController 我可以或多或少地忽略该控制器并只使用它的视图 还是我真的需要将它添加
  • Clojure 中 definterface 和 defprotocol 的区别

    除了缺少文档之外 还有什么区别definterface and defprotocol在 Clojure 中 根据Clojure 的乐趣 使用的优点definterface over defprotocol受到限制 完全是因为前者允许原始类
  • 在 Libgdx 中使用屏幕时重用代码

    根据我在阅读其他人关于如何制作不同屏幕的代码时的理解 您执行一个主处理程序类 然后为每个屏幕创建一个新类 让我困惑的是 每当你创建一个新屏幕时 你都必须重新定义将要渲染的所有内容 例如 SpriteBatch 精灵 字体等 有没有办法在所有
  • Scala:包导入冲突

    我正在导入一个隐式 scala concurrent ExecutionContext Implicits global 在此之前 我import global Analytics xyzMethod 其中 global 是我的包中的一个目
  • 如何将大型 xml 文件的一部分反序列化为 C# 类?

    我已经阅读了一些关于如何反序列化 xml 的帖子和文章 但仍然没有弄清楚应该如何编写代码来满足我的需求 所以 我为另一个关于反序列化 xml 的问题道歉 我有一个大 50 MB 的 xml 文件 需要反序列化 我使用 xsd exe 获取文
  • 如何将 Blender 3D 动画导入 iPhone OpenGL ES?

    我正在尝试使用 OpenGL ES 在 iPhone 上制作动画 我能够在 Blender 3D 软件中制作动画 我可以将 Blender 导出为 obj 文件到 OpenGL 并且它可以在 iPhone 上运行 但我无法将我的动画作品从
  • 辅助功能:仅使用带有 href="#" 的 javascript 链接

    我有一个 React SPA 其中有一些链接可以导航到其他页面或同一页面上的其他位置 这些导航要么以编程方式决定 要么依赖 javascript 转到同一页面上的另一个位置 我可能不知道链接href当显示链接时 所以我将其渲染为href a
  • 我们需要用 自己实现双缓冲吗?

    我开始使用 Canvas 带有 GWT 我们需要自己实现双缓冲吗 想知道浏览器是否已经以某种方式为我们实现了这一点 Thanks 您绝对不需要自己实现双缓冲 这样做会浪费时间和性能 对我们来说幸运的是 每个画布实现都会在幕后为您实现它 这是
  • 如何检查 Firebase 数据库值是否存在?

    我正在将实时数据库与 Google 的 Firebase 结合使用 并且尝试检查子项是否存在 我的数据库结构如下 root users james jake rooms room1 room 1 properties room2 room
  • 在 Python 中从图像中提取连接的对象

    我有一个graysacle png 图像 我想从图像中提取所有连接的组件 有些组件具有相同的强度 但我想为每个对象分配一个唯一的标签 这是我的图片 我尝试了这段代码 img imread images soccer cif str i zf