Python 3.x 如何将图像上相同类型的所有笔划组合在一起? 问题序言

Python 3.x 如何将图像上相同类型的所有笔划组合在一起? 问题序言,python-3.x,image-processing,Python 3.x,Image Processing,我想将低于空间阈值的所有笔划组合在一起。我想这样做是为了使用熵来区分手绘图表中的形状和文本。例如,使用以下图像: 在这里,手绘图表用红色箭头表示,红色箭头不是文档的一部分。给定文章的作者也使用了 该项目的全部要点是使用python通过熵对图像区域进行分类,以便能够仅选择绘制了这些图像的段落 我的尝试 灵感来源于我想到的: 进行精明的边缘检测,选择接近黑色或灰色的像素 关注一个能最大限度减少误报的感兴趣区域。这个感兴趣区域基本上是字母或形状,没有任何黑色胶带覆盖其一侧 正如您可以想象的那样,不感

我想将低于空间阈值的所有笔划组合在一起。我想这样做是为了使用熵来区分手绘图表中的形状和文本。例如,使用以下图像:

在这里,手绘图表用红色箭头表示,红色箭头不是文档的一部分。给定文章的作者也使用了

该项目的全部要点是使用python通过熵对图像区域进行分类,以便能够仅选择绘制了这些图像的段落

我的尝试 灵感来源于我想到的:

  • 进行精明的边缘检测,选择接近黑色或灰色的像素
  • 关注一个能最大限度减少误报的感兴趣区域。这个感兴趣区域基本上是字母或形状,没有任何黑色胶带覆盖其一侧
  • 正如您可以想象的那样,不感兴趣的数组将产生一些问题

  • 找到所有不同的轮廓,这些轮廓与其他轮廓非常接近
  • 不幸的是,我已经停留在第一步:精明的边缘检测似乎对文本没有用处:

    以下是相关代码:

    img = cv2.imread('out4.jpg',0)
    edges = cv2.Canny(img,100,200,True)
    
    plt.subplot(121),plt.imshow(img,cmap = 'gray')
    plt.title('Original Image'), plt.xticks([]), plt.yticks([])
    plt.subplot(122),plt.imshow(edges,cmap = 'gray')
    plt.title('Edge Image'), plt.xticks([]), plt.yticks([])
    
    plt.show()
    
    因此,我尝试只选择灰色像素,但出现了一个
    ValueError:不支持从RGB到RGB的转换