问题标签 [image-segmentation]

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 投票
3 回答
71844 浏览

opencv - 如何在 OpenCV 中定义分水岭的标记?

我正在使用 OpenCV 为 Android 写作。我正在使用标记控制的分水岭分割类似于下面的图像,而无需用户手动标记图像。我打算使用区域最大值作为标记。

minMaxLoc()会给我价值,但我怎样才能将它限制在我感兴趣的斑点上?我可以利用来自findContours()或 cvBlob blobs 的结果来限制 ROI 并将最大值应用于每个 blob 吗?

输入图像

0 投票
2 回答
292 浏览

image-processing - 存在噪声背景下的图像分割

附件是图像,其中绿色附近的亮白色轮廓是感兴趣的轮廓。绿色的是近似自动初始化。在自动初始化轮廓附近的区域几乎不存在梯度。因此,活动轮廓和其他基于梯度的方法一动不动就失败了。

沿着初始化轮廓的法线,我搜索了最大强度(并且还合理地关闭了初始化轮廓)。删除异常值并对检测到的曲线进行平滑处理,最终检测到平滑曲线。但这有一些问题。如果有人可以提出不同的建议,那将非常有用。

在此处输入图像描述

0 投票
1 回答
3428 浏览

opencv - 分割和合并分割

除了以下包(难以定制)之外,有谁知道拆分和合并分段的任何实现? http://userpages.uni-koblenz.de/~lb/lb_downloads/

0 投票
2 回答
20303 浏览

opencv - OpenCV 均值/SD 滤波器

我把它扔在那里,希望有人以前尝试过这种荒谬的事情。我的目标是接收输入图像,并根据每个像素周围的小窗口的标准偏差对其进行分割。基本上,这在数学上应该类似于高斯或箱形滤波器,因为它将应用于编译时(甚至运行时)用户指定的每个像素周围的窗口大小,并且目标数组将包含每个像素的 SD 信息,在与原始大小相同的图像中。

这个想法是在 HSV 空间中的图像上执行此操作,以便我可以轻松找到颜色均匀的区域(即在 Hue 和 Sat 平面中具有小的局部 SD 的区域)并从图像中提取它们以进行更深入的处理。

所以问题是,以前有没有人构建过这样的自定义过滤器?我不知道如何在一个简单的盒型过滤器内核中进行 SD,例如用于高斯和模糊的过滤器内核,所以我猜我将不得不使用 FilterEngine 构造。另外,我忘了提到我是用 C++ 做的。

非常感谢您的建议和思考。

0 投票
0 回答
179 浏览

python - 在 Python 中组合不同不透明度的图像?

我想编写一个 Python 程序来预测用户正在输入的状态并在地图上突出显示预测的城市。例如,如果用户键入“New”并点击预测按钮,程序应该突出显示以下城市:纽约、新墨西哥、新泽西和新罕布什尔。应该通过改变不透明度来突出城市。

我的想法是为每个状态创建一个图像,然后通过更改 Alpha 通道并将结果显示给用户,将它们以不同的不透明度组合在一起。

以下代码是我迄今为止为混合具有不同不透明度的图像所做的,但我认为这不是一个好的解决方案,并且必须有更好的方法来做到这一点(或者可能没有)。

有没有办法分割地图并分别更改每个段的不透明度?如果没有,什么可能是更好的解决方案?你能给我示例代码吗?

0 投票
1 回答
2418 浏览

algorithm - 如何有效地分割图像?

我搜索了一种在不同部分分割图像的解决方案(特别是显着性图(见图))。我知道一些解决方案,例如Pedro F. Felzenszwalb的基于图形的分割,但是对于大图像,我的实现非常慢。还有其他解决方案吗? 地图

问候,命运

0 投票
2 回答
2242 浏览

matlab - 图像降噪OCR

您好,我在分割下面的图片时遇到问题。它是需要识别的彩色字符。我正在使用锐化、维纳去模糊和维纳平滑。之后,我用fuzzy-c 对图片进行分割意味着聚类(3 类)。但是在字母 E 的情况下,我得到的最好的结果是没有锐化、去模糊和平滑,只使用阈值 fcm 分割。然而,我应该得到比这更好的结果,我可以将这两个部分组合为一个整体(不仅仅是上部白色部分和另一半黑色部分)。

我怎样才能解决这个问题,使其更健壮,并与其他图像一起工作,例如图片中的 5?5 的结果是在 fcm 聚类之上进行锐化、去模糊和平滑。我怎样才能让它更连接呢?

我真的很感谢我能得到的任何帮助,哦,我正在 matlab 中做这个......所以很高兴从那里得到任何帮助,谢谢!

这是字母 E,我想把一个元素作为一个整体

第二张图片是5号,应该更流畅和连接,行之间没有任何空格

编辑:

我的以下代码是这样的: function [bw,level]=fcmthresh(IM,sw) if (nargin<1) error('You must provide an image.'); elseif (nargin==1) sw=0; elseif (sw~=0 && sw~=1) error('sw 必须为 0 或 1。'); 结尾

这就是所有的代码,加上我只使用 fcmthres 来表示字母 E,因为它工作得最好。我阅读了有关形态学图像处理(膨胀,腐蚀)的信息,因此也许可以解决问题。

有没有更好的图像对比和去噪技术?

0 投票
1 回答
1442 浏览

opencv - cvPyrSegmentation 的替代品

我试过 cyPyrSegmentation 将图像分割成不同的部分。

输出的分割非常好。因此,在我继续进行的过程中,我想处理不同细分市场的位置。但现在我注意到cvPyrSegmentation只保存矩形坐标而不是段中的整个像素:/。但是矩形太不精确了。

有人有想法吗?

问候

0 投票
3 回答
2564 浏览

opencv - OpenCV:突然光线变化下的背景减法

我正在研究突然的光线变化下的背景减法。在 OpenCV 或 IPP 中是否有任何示例代码或方法可以有效地做到这一点?我正在阅读视频帧,所以运行时间应该非常快。提前致谢。

0 投票
1 回答
1843 浏览

python - 调整扫描线填充以检测离散对象

我正在尝试在 Python 中检测颜色足够接近的连续区域。我独立地偶然发现了 8 路递归洪水填充算法(当找到的和所需的 RGB 颜色之间的欧几里得距离超过阈值时终止),它在小规模上效果很好,但会导致 2 兆像素图像的堆栈溢出。

Stack Overflow 和 Wikipedia 将扫描线填充作为答案,但我发现的每一个解释都是用 C++ 或关于用已知顶点填充多边形的。有人可以为类似于递归洪水填充的情况指出一个很好的伪代码解释吗?

由于缺乏形式数学(我在高中),我在研究图像分割方面遇到了困难。如果有对 K-Means 或类似内容的简单英语解释,那也很棒。OpenCV 看起来很有希望,但似乎我得到的只是一个颜色扁平化的图像;我只关心对象中 x,y 处的像素列表。