Mat image = Imgcodecs.imread("2023.jpg");
Mat mask = new Mat();
// 创建前景和背景模型
Mat bgModel = new Mat();
Mat fgModel = new Mat();
// 指定前景的矩形区域
Rect rect = new Rect(new Point(1500, 1000), new Point(2400, 1800));
// Mat imageROI = new Mat(image, rect);
// 运行GrabCut算法
Imgproc.grabCut(image, mask, rect, bgModel, fgModel, 3, Imgproc.GC_INIT_WITH_RECT);
// 生成最终的前景和背景掩模
Core.compare(mask, new Scalar(Imgproc.GC_PR_FGD), mask, Core.CMP_EQ);
Mat dst = new Mat();
image.copyTo(dst, mask); // 保留前景
// Core.compare(mask, new Scalar(Imgproc.GC_PR_BGD), mask, Core.CMP_EQ);
// image.copyTo(image, mask); // 保留背景
// 保存结果图像
Imgcodecs.imwrite("output-bg12.jpg", dst);
分享到:
相关推荐
针对GrabCut基于像素建立图模型并进行迭代求解耗时的特点,提出了一种新的基于SLICO改进的GrabCut分割新算法。首先用户在图像目标区域手动划定一个矩形框,然后在CIELab颜色模型下利用SLICO算法将图像预处理成内部...
使用sift特征提取目标物与目标图片的特征点,进行匹配,从而找出目标物在图片中的范围,将该范围作为矩形区域传入grabcut函数,同时将匹配特征点作为前景点传入grabcut函数,进行图像分割。实验结果显示出不错的图像...
然后对采样图像进行背景差分实现目标区域的自动框选,取代GrabCut算法的交互窗口,进行目标分割,再对分割出的目标轮廓进行三次样条升采样插值恢复原目标轮廓;最后定义了行方差差异函数,以主流图像处理软件Photo...
首先用上下文感知得到待分割图像的显著图,然后由二值化的显著图确定GrabCut算法的初始化区域,再通过迭代使能量函数最小化分割出目标,算法应用于骨髓细胞图像分割上.实验结果表明,此算法能避免以往细胞分割算法...
因此, 可以利用半交互式的GrabCut 的图像分割方式对图像前景区域与背景区域进行有效的分割, 通过建立前景和背景所对应的高斯混合模型(GMM), 结合最大流最小割的图像分割方式实现全局优化, 并利用前景和背景的KL ...
GrabCut工具 使用OpenCVgrabCut进行二进制分割的注释工具。 要求 OpenCV 3.4.2或更高版本 枕头6.1.0或更高版本 用法 示例执行方法如下。启动后,请按照以下流程进行操作。 使用n键(到上一张图像)和p键(到下一张...
这是一种半自动分割 Grabcut 算法的实现,用于在视频序列或单个图像中注释对象分割。算法。允许播种初始矩形以加快注释速度。 对于视频序列的注释,有一种预测机制,可以将分割从前一帧传播到连续帧,以将人类干预...
最后对每个前景区域再利用Grabcut算法来分割出更加完整的目标前景.实验结果表明,与传统的背景建模方法相比,本算法在有效时间内可以更加完整地分割出运动目标前景,对与背景颜色类似的目标前景也有很好的检测效果...
该算法首先求出连续两帧图像之间的差分,利用帧间变化信息可以得到视频对象的运动区域,根据差分图像的中值(MED)和中值绝对差(MAD)及原始图像均值确定阈值并滤除噪声,用数学形态学方法进行后处理,最终得到精确...
该程序是交互式图像分割,用于修改证件照背景,提取目标区域,该程序为初始版本,欢迎大家使用,报告错误和需要增加的功能,内有说明文档。
基于matlab环境的对象区域截取。可先用鼠标选择圈定对象区域中的一个部分作为样本,并对其进行像素阈值分析。之后以此阈值对全图进行扫描选择,以选定目标区域
由于肺癌PET成像质量较低且待分割...实验结果表明,该算法有效提升肺癌PET图像的分割效率、提升分割精度,取消GrabCut算法、Snake算法的用户操作,实现图像分割自动化,具有较高的可靠性、执行效率、以及实际应用价值。
本篇文章主要基于python语言和OpenCV库(cv2)进行车牌区域识别和字符分割,开篇之前针对在python中安装opencv的环境这里不做介绍,可以自行安装配置!...这里我采用cv2.grabCut方法,可将图像分割成前景与背景。分割
针对传统GrabCut在GMM迭代估计阶段仅单纯地考虑像素点的RGB彩色信息,当前景细节区域与它的周围区域颜色差异较大时容易发生分割错误,以及基于像素的运算导致分割效率不高的问题,提出一种结合权值优化与CS-LBP纹理...
基本图像分割一些基本的图像分割算法,包括均值偏移、基于图、SLIC、SEEDS、GrabCut、OneCut 等。用法将您需要的算法写入文件“config.ini” 使用命令“BasicImageSegmentation [ImageName]”,或直接将图像拖到exe...
数字图像处理GUI,基于Opencv3和Qt5做的,里面包含了图像预处理、形态学操作、图像滤波、图像分割等四大功能模块。 ... "⑤基于图论的Grabcut分割.\n" "⑥基于活动轮廓模型的Leverset分割.\n";
7.4 图割Grabcut 279 7.5 实例实例 282 7.5.1 奇异区域检测 282 7.5.2 肤色检测.. 285 7.6 小结. 288 第8 章高级篇——特征分析.. 289 8.1 尺度空间 290 8.1.1 尺度与旋转不变性. 290 8.1.2 特征点尺度变换.. 290 ...
提出了一种基于Grabcut准确提取图像目标的算法,该方法根据用户指定前景物的基本形态获取初始的前景、未知的背景区域,并用mincut/maxflow对分割能量函数进行了优化,利用大量图像对本文方法进行了实验分析,结果表明了...
用户可以输入图像并在该区域周围绘制一个矩形进行分割。 它使用 Grab-Cut 算法(Graph Cut 算法的变体)。 指示 在 Matlab 或 Octave 中运行 SegTool.m 文件。 确保您已将图像存储在 InputImages 文件夹中。 在工具...
图像前景分割利用opencv中的grabcut方法对人脸周围区域进行分割,将人头和衣服等前景分离出来.3.证件照规范化按照规格进行图片处理:分辨率:361×381,分辨率96dpi,位深度24,大小30k左右.4.背景替换根据图片的背景...