Matlab 图像预处理和连接组件

Matlab 图像预处理和连接组件,matlab,image-processing,matlab-cvst,Matlab,Image Processing,Matlab Cvst,我有一个漫画图像,我想从中提取面板和文本气球。 为此,我正在使用连接组件算法,“bwconncomp”。 知道“bwconcomp”需要一个二进制图像作为参数,我正在使用“im2bw”对图像进行二值化,然后进行一些形态学过滤 Ibw = im2bw(I,graythresh(I)); % also tried the default threshold along with all values in the % range [0 1] Imr = bwmorph(Ibw,'skel'

我有一个漫画图像,我想从中提取面板和文本气球。 为此,我正在使用连接组件算法,“
bwconncomp
”。 知道“
bwconcomp
”需要一个二进制图像作为参数,我正在使用“
im2bw
”对图像进行二值化,然后进行一些形态学过滤

Ibw = im2bw(I,graythresh(I)); % also tried the default threshold along with all values in the      % range [0 1]
Imr = bwmorph(Ibw,'skel'); % also tried 'close' and 'clean' 

Icc = bwareaopen(Imr,100); 
问题是,当我改变二值化阈值和形态学操作时,检测到的连接组件的数量会发生剧烈变化。我尝试过的组合中没有一个给了我图像中所有可用的主要对象,总是缺少一些


有人能给我介绍一下吗?

你可以尝试检测文本,而不是简单地对图像进行二值化。如果你有一个最新版本的MATLAB和计算机视觉系统工具箱,你可以试试这个。

这是一个大问题。这是不可能为你想要的结果创建阈值方法的,尤其是当你在处理漫画时,我猜图像会从一个正方形到另一个正方形变化很多。我的建议是首先找到“正方形”并将每个面板分开。然后用一个高阈值(我假设气球是白色的)三个球,或者试着一起找到圆形物体和白色物体。另一个选择是实现OCR和查找文本所在的白色区域。。。你的问题可以是一个谷歌软件,如果它编码正确,不容易回答,除非你把问题分解成小问题,然后一个一个地解决。你将能够在SO中获得更好的结果和更好的答案。请发布一张你试图分割的图像示例。这可能有助于我们为您提供解决方案我需要10个声誉才能发布图像。。如果你有其他的方式来分享,我不介意