问题标签 [scikit-image]

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.

0 投票
0 回答
1972 浏览

python - 如何在 scikit-image 中提取图像区域的边界曲线?

如何提取由枚举的图像区域的边界曲线measure.regionprops

通过边界曲线,我的意思是区域的边界像素列表,例如,围绕区域周界的顺时针方向,例如,我可以用多边形表示区域。请注意,我想要所有边框像素的精确坐标,而不是凸包近似值。

我已经阅读了文档并在谷歌上搜索过,我的印象是它在引擎盖下的某个地方完成了,但我就是找不到这个功能。

0 投票
4 回答
41753 浏览

matplotlib - 内嵌图像质量低

我正在加载一个带有 scikit-image 的 TIF 文件,并在 ipython 笔记本(版本 2.2.0)中内联显示它。这可行,但是,图像在第一次显示时非常小,当我使用图像右下角的可拖动手柄调整它的大小时,它只是在保持原始分辨率的同时重新缩放图像,所以放大时非常模糊. 基本上就好像 ipython 正在将我的图像动态转换为缩略图。

我也尝试过使用 matplotlib plt.imshow(),其结果完全相同。我开始用ipython notebook --pylab inline.

0 投票
2 回答
1605 浏览

canopy - 如何在 Canopy-64bit 上安装 scikit-image 包?

我在 Window 7 上运行,我想在我的 Canopy 64 位上安装 Scikit-image 包。我在 Canopy 的包管理器中查找了可用包,并且包含了 scikit-image,但我唯一的选择是单击订阅。如果我点击那个 ENTHOUGHT 网页会弹出让我下载 Canopy-express(唯一免费的)但是(我猜)我已经有了。有没有办法只下载我需要的包?提前致谢

0 投票
3 回答
4756 浏览

python - Python字符串作为Skimage imread中的文件

我正在 Kaggle 上进行 CIFAR 挑战。

他们提供了一个 .7z 文件,其中包含 50k 张图片作为训练。我花了 1 个小时解压缩它,然后又花了 40 分钟来读取所有文件并将其放入内存中。

尝试不创建 50k 文件,因为这是瓶颈,我已经安装了 pylzma 和其他库,但它们都会告诉我文件无效。

来自 bash 的 7z,可以正确读取文件,并列出文件。所以我使用Popenbash 7z 程序解压缩所有文件并将其放入内存中的字符串中

我设法通过查看每个文件的大小然后从字符串中获取适当的字节来单独获取每个文件

我现在想要的是欺骗 Python 认为 F1 文件指针,以便我可以调用 skimage.io.imread 并将其转换为适当的结构。或者也许只是将内存值传递给 skimage ,它会为我转换它。

0 投票
1 回答
1603 浏览

python - 为什么 Python 的 Hog 输出(scikit-image)与 MATLAB 的 Hog(vlfeat)不同?

我有一段 MATLAB 代码,它从图像中获取 91x91 的像素块,然后用苹果 HOG 提取其特征向量。我想用 Python 重写这个函数。我一直在努力寻找如何在 Python 中获得与在 MATLAB 中相同的 HOG 返回值,但未能做到。如果您能提供任何帮助,我将不胜感激。

VLFeat 库(http://www.vlfeat.org/overview/hog.html)用于 MATLAB 代码,我在 Python 中使用 scikit-image(http://scikit-image.org/docs/dev/ api/skimage.feature.html?highlight=peak_local_max#skimage.feature.hog)。

在 Matlab 中,输入 'im2single(patch)' 是一个 91*91 的数组,而 Hog 的返回数据类型是 4*4*16 single。HoG 使用的单元格大小为 23,方向数为 4。

返回数据为4*4*16单条,可以显示为:

然后手动将结果展平为 256*1 的特征向量。综上所述,在一个 91*91 的像素块中,提取了一个 256*1 的特征向量。现在我想在 Python 中得到相同的结果。

在我的 Python 代码中,我尝试应用具有相同单元大小和方向数的 HOG。块大小设置为 (1,1)

我将补丁的大小附加到 92*92,因此补丁大小是单元格大小的整数倍。输入数组现在称为“repatch”。但是,输出 'tc' 是一个 64*1 数组(梯度直方图被展平为特征向量)

然后我查看了 Skimage 源代码,

这里的 n_cellsx 是:x 中的细胞数,n_cellsy 是:y 中的细胞数。似乎 Hog 的输出与orientation_histogram 的维度高度相关。

HoG 返回值的实际维度取决于:

其中 n_blocksy、n_blocksy 的计算公式为:

n_cellsx为:x中的单元格数,这里取值为4,n_cellsy也是;bx,by为cells_per_block,即(1,1);在这种情况下,方向是 4。

返回值(normalised_blocks)的大小似乎是由 4*4*1*1*4 (n_blocksy * n_blocksx * by * bx *orientations) 计算的

我试图改变块大小,但仍然无法得到我所期望的......(当块大小为(2,2)时,返回值是一个 144*1 数组)

谁能帮忙...我怎样才能获得与 Matlab 中相同的 Hog 输出?非常感谢。

0 投票
4 回答
1416 浏览

opencv - 如何从图像中过滤纹理以进行 OCR

我正在尝试对某些具有以下纹理的表单进行 OCR:

原始图像

此纹理导致 OCR 程序忽略它,将其标记为图像区域。

我考虑过使用形态学。带有星号的关闭操作最终如下:

关闭操作

这个结果对于 OCR 来说仍然不够好。

当我手动擦除“胡椒”并对图像进行自适应阈值处理时,如下在 OCR 上给出了良好的结果:

编辑和阈值

你对这个问题还有其他想法吗?

谢谢

0 投票
2 回答
8273 浏览

python - python: skimage.transform.AffineTransform rotation center

0 投票
1 回答
2579 浏览

python - 形态学骨架 - scikit-image、pymorph、OpenCV-Python 之间的区别?

我注意到各种面向科学图形的 Python 软件包之间的骨架几何形状存在显着差异。

使用 OpenCV-Python 的骨架:

使用 OpenCV-Python 的骨架

使用 pymorph 的骨架:

使用 pymorph 的骨架

使用 scikit-image 的骨架:

使用 scikit-image 的骨架

正如人们可以观察到的那样,OpenCV-Python 和 pymorph 会产生相同的骨架,但 scikit-image 不会。骨骼差异的原因是什么?哪一个是合适的骨架?

0 投票
1 回答
933 浏览

python - 渐变适用于一张照片,但不适用于其他照片

我正在尝试使用 Scipy 指南进行图像分析并搞乱一些事情,但是当我更改图像时,很多都不起作用。例如,

当我运行它时,它可以工作,但是当我使用时,data.coffee()或者data.chelsea()我得到了大量的错误。每当我使用该convolve功能时,也会发生这种情况。知道为什么吗?

0 投票
1 回答
1813 浏览

image-processing - 带有 skimage 或 numpy 的灰度渐变

我必须创建一个线性灰度渐变,顶部有黑色阴影,底部有白色阴影。我必须使用 skimage 和 numpy。

我在 scikit 上找到了水平方向而不是垂直方向的颜色线性渐变的代码:http: //scikit-image.org/docs/dev/auto_examples/plot_tinting_grayscale_images.html

我想要对这段代码的解释和一些关于如何把所有东西都放在灰度和垂直而不是彩色和水平的提示。谢谢!