Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以删除opencv或scikit图像中的骨架小分支?_Opencv_Image Processing_Mathematical Morphology_Scikit Image - Fatal编程技术网

是否可以删除opencv或scikit图像中的骨架小分支?

是否可以删除opencv或scikit图像中的骨架小分支?,opencv,image-processing,mathematical-morphology,scikit-image,Opencv,Image Processing,Mathematical Morphology,Scikit Image,是否可以在骨架过程中删除小分支 如图所示: 只有O字母是完美的,但不是所有其他字母 有没有办法在过程中或之后删除这个小分支? 我使用PythonOpenCV,但使用pymorph或scikit image的解决方案也不错。 下面是我用于骨骼化的代码: 原始图像:以下是以下结果: Scikit图像具有骨架化和薄化功能,这可能有助于实现您的目标 lee版本的skeletonize有效地细化了边缘骨架特征,而不仅仅是骨架 Thin使您能够对图像进行部分骨架化。你可以先做一个局部瘦身,然后做一个扩张

是否可以在骨架过程中删除小分支

如图所示:

只有O字母是完美的,但不是所有其他字母

有没有办法在过程中或之后删除这个小分支? 我使用PythonOpenCV,但使用pymorph或scikit image的解决方案也不错。 下面是我用于骨骼化的代码:

原始图像:

以下是以下结果:


Scikit图像具有骨架化和薄化功能,这可能有助于实现您的目标

lee版本的skeletonize有效地细化了边缘骨架特征,而不仅仅是骨架

Thin使您能够对图像进行部分骨架化。你可以先做一个局部瘦身,然后做一个扩张或开放手术,以得到接近形态修剪的东西()

这里有scikit骨架工具的示例:


你确定吗?我只有一个完全黑色的形象!我尝试了两种图像;未skeletonized和skeletonized。Skeletonize返回一个包含0和1的图像,但数据类型可能应该是bool或float,而不是int(我打开了一个票证:)。同时,只使用<代码> out=out。Atpype(浮点)< />代码。在C++中有没有实现,而不是用Python实现?
from skimage import io
from skimage import morphology

image = io.imread('opencv.png')
out = morphology.skeletonize(image > 0)
from skimage.morphology import skeletonize
from skimage import data
import matplotlib.pyplot as plt
from skimage.util import invert

# Invert the horse image
image = invert(data.horse())

# perform skeletonization
skeleton = skeletonize(image)
skeleton_lee = skeletonize(image, method='lee')

# display results
fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(8, 4),
                         sharex=True, sharey=True)

ax = axes.ravel()

ax[0].imshow(image, cmap=plt.cm.gray)
ax[0].axis('off')
ax[0].set_title('original', fontsize=20)

ax[1].imshow(skeleton, cmap=plt.cm.gray)
ax[1].axis('off')
ax[1].set_title('skeleton', fontsize=20)

ax[2].imshow(skeleton_lee, cmap=plt.cm.gray)
ax[2].axis('off')
ax[2].set_title('skeleton lee', fontsize=20)

fig.tight_layout()
plt.show()