问题标签 [ndimage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何获得具有边界条件的图像区域?
许多函数scipy.ndimage
接受一个可选mode=nearest|wrap|reflect|constant
参数,该参数确定如何处理函数需要来自图像区域之外的一些数据(填充)的情况。填充由本机代码中的NI_ExtendLine()内部处理。
我不想在填充数据上运行 ndimage 函数,而是只想使用与 ndimage 使用的填充模式相同的填充模式来获取填充数据。
这是一个示例(仅适用于 mode=nearest,假设为 2d 图像):
这是正确的,但速度很慢,因为它一次迭代一个像素。
最好(最快、最清晰、最 Pythonic)的方法是什么?
python - Scipy 标签和测量每个标签中的最大像素
所以我想使用 scipy 测量每个标签(在多个数组中)中的最大像素和像素的平均值。例如
(img,other 是一个打开的 tif 的 numpy 数组)
因此,对于每个标签,我想找到像素的最小值、像素的最大值以及 img 和合并的强度平均值(我可以计算的每个标签的面积)。我希望能够用每个标签的这些计数(img 中的连接区域)制作直方图。(一旦我有了 np 数组或列表,我就知道如何制作直方图)
我正在考虑为每个标签制作一个循环,然后仅使用该标签制作一个二进制结构并测量值。是否有任何快速的 scipy/numpy 方法可以在不通过循环的情况下执行此操作?
谢谢!
python - 在 Python 中旋转图像 - 提高质量 - Scipy
正如标题所说,我正在尝试使用 Scipy 包在 Python 中旋转图像。我收到一个具有特定尺寸的图像作为输入,例如 512 x 512,我必须对其进行一些旋转并裁剪它的一部分。所以,这是我到目前为止的代码:
这是我的原始图像(256x256):
这些是我得到的一些输出(128x128):
如您所见,边缘非常糟糕,这对于我必须做的事情是不可接受的。我想知道为什么会发生这种情况以及是否有办法摆脱它。
先感谢您。
python - 如何在python中删除一些连接的组件?
考虑一个二值化图像,我scipy.ndimage.label()
在它上面使用,然后find_objects()
在结果上应用。
现在我有一个由 N 个元组组成的元组列表,每个元组都是两个切片,例如:
它描述了由于连通分量而产生的 xy 边界坐标。
以索引为 0 的元组为例:
slice(0, 21, None)
表示行号从 0~21 和
slice(0, 12, None)
表示列号为 0~12。
所以我们会知道这个 cc 的面积是21 * 12 = 252
。
现在我想删除那些面积小于 300 的连接组件。
我已经知道要对所有这些进行迭代。我想以更有效的方式做到这一点;有人知道怎么做吗?
python - ndimage map_coordinates with masked arrays
I am using ndimage to interpolate as follows:
Now, the problem is that I do not have valid measurements over my whole input data. So, I have a masked array which tells me which data points are valid. So, when doing the interpolation, I would like to only use pixels which are valid and also adjust the weightings accordingly (to ensure that the weights sum to 1).
However, I see that there is no easy way to do this. I was wondering if someone knows of a good way to do this or can point me to some library or code that I can use. I am coming from a C++ background, so still finding my way around python.
python-2.7 - 如何使用 scipy.ndimage.filters.gereric_filter?
我正在尝试使用 scipy.ndimage.filters.generic_filter 来计算邻域的加权和。社区在某些时候会发生变化,但现在 3x3 是我正在努力的方向。到目前为止,这是我所在的位置:
我从 ndimage 收到一个错误,说“TypeError:需要浮点数”,但我不知道它指的是什么参数,它看起来与我见过的其他示例基本相同。
python - 显微镜图像分割:用 python 进行细菌分割
我正在尝试分割一些显示一些大肠杆菌的显微镜明场图像。我正在使用的图片类似于这张(即使这张是通过相位对比获得的):
我的问题是,在运行我的分割功能(下面的 OtsuMask)后,我无法区分分裂的细菌(您可以在示例图像上尝试我的代码)。这意味着我得到了两个细菌的一个标记区域,它们的末端连接在一起,而不是两个不同的标记图像。两个分裂细菌之间的边界太窄,无法通过我在阈值图像上执行的形态学操作来突出显示,但我想一定有一种方法可以实现我的目标。
有什么想法/建议吗?
OtsuMask 中代码的第一部分由平面拟合和减法组成。
python - Python 2.6 64 位 - scipy.ndimage 导入错误
使用 python 2.6 的 64 位版本,我从http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy安装了非官方的 64 位 scipy 模块。我尝试运行一个专门使用 scipy.ndimage 模块的脚本,这会导致此错误:
我根本无法使用这些包导入 scipy.ndimage 。这是软件包问题还是我的安装/配置问题?
我可以提供任何其他相关信息。
python - scipy.ndimage.generic_filter 返回类型错误
我正在使用scipy.ndimage.generic_filter
来计算数组的局部模态值。我正在比较两种方法,看看哪种方法更快(因为第一种方法很慢)。我的第一种方法是;
我的第二种方法是;
但是通过第二种方法,我得到了这个:
当我运行这个:
它返回True
为什么generic_filter
使用方法时会抛出类型错误numpy.bincount
而不是stats.mode
返回值相同时的方法?
我在 Windows 7 上使用 Python 2.7.3、Numpy 1.6.1 和 Scipy 0.14.0(我坚持使用这个版本的 Numpy 和 Python,因为这是 ESRI ArcGIS 附带的)。我尝试安装 scikit-image 来计算模态过滤器,但我在安装时遇到了其他错误,并认为解决这个问题更简单!
python - scipy.ndimage.filters.maximum_filter 中的足迹问题
我正在使用 scipy.ndimage.filters.maximum_filter 来找出局部最大值,代码如下:
但是,当我在 python 中运行时出现错误:“序列参数的长度必须等于输入等级”。你能帮我解决这个错误吗?我是 scipy 的新手。
非常感谢。
亲切的问候,
莲花