水漫填充

水漫填充:floodFill()函数

int floodFill( InputOutputArray image, InputOutputArray mask,
                            Point seedPoint, Scalar newVal, CV_OUT Rect* rect=0,
                            Scalar loDiff = Scalar(), Scalar upDiff = Scalar(),
                            int flags = 4 );
int floodFill( InputOutputArray image,
                          Point seedPoint, Scalar newVal, CV_OUT Rect* rect = 0,
                          Scalar loDiff = Scalar(), Scalar upDiff = Scalar(),
                          int flags = 4 );

 1 #include<opencv2/opencv.hpp>
 2 #include<iostream>
 3
 4 using namespace cv;
 5 using namespace std;
 6
 7 int main(int argc, char** argv) {
 8     Mat img = imread("C:\\Users\\Nelsoner\\Desktop\\Camera Roll\\05.jpg", 1);
 9     Rect ccomp;
10     imshow("【原图】", img);
11     floodFill(img, Point(50, 300), Scalar(155, 255, 55), &ccomp, Scalar(20, 20, 20), Scalar(20, 20, 20));
12     imshow("【效果图】", img);
13
14     waitKey(0);
15
16     return 0;
17 }

时间: 2024-08-24 16:18:34

水漫填充的相关文章

Android -- 贝塞尔实现水波纹动画(划重点!!)

1,昨天看到了一个挺好的ui效果,是使用贝塞尔曲线实现的,就和大家来分享分享,还有,在写博客的时候我经常会把自己在做某种效果时的一些问题给写出来,而不是像很多文章直接就给出了解决方法,这里给大家解释一下,这里写出我遇到的一些问题不是为了凑整片文章的字数,而是希望大家能从根源下知道它是怎么解决的,而不是你直接百度搜索这个问题解决的代码,好了,说了这么多,只是想告诉大家,我后面会在过程中提很多问题(邪恶脸,嘿嘿嘿),好吧,来看看今天的效果: 2,what is the fuck?,这就是你说的很好看

PADS功能使用技巧(2)-最全面

七.Flood与Hatch有什么区别? 我们先看看PADS Layout Help 文档是怎么说的,如下图所示: 从检索到的帮助信息,我们可以得到Hatch与Pour的区别,原文如下: Flooding recalculates the pour areaand recreates all clearances for the current obstacles within the pour outline,observing clearance rules. Hatchingrefills

图像分割之分水岭算法

理论 任何灰度图像都可以看作是一个地形表面,其中高强度表示山峰和丘陵,而低强度表示山谷.用不同颜色的水(标签)填充每个孤立的山谷(局部极小值).当水上升时,根据附近的峰(梯度),不同山谷不同的颜色的水,显然会开始融合.为了避免这种情况,你在水就要融合的地方及时增加屏障(增高水坝).你继续填满水,建造屏障,直到所有的山峰都被淹没.然后,您创建的屏障会给出分割结果.这就是分水岭背后的“哲学”.你可以访问分水岭的CMM网页,里面有动画帮助理解. 但是这种方法会由于图像中的噪声或其他不规则性因素而导致过

TPO3-2 Depletion of Ogallala Aquifer

Estimates indicate that the aquifer contains enough water to fill Lake Huron, but unfortunately, under the semiarid climatic conditions that presently exist in the region, rates of addition to the aquifer are minimal,amounting to about half a centime

漫水填充

漫水填充:将与种子点相连的像素相近的连通域替换成指定颜色.如果存在mask,不会填充mask的非零像素.比如边缘检测输出图像可作为mask图 作用:1.标记或分离目标区域: 2.获取掩码区域,只处理掩码指定的像素点,加速处理过程. [第一个版本] floodFill(InputOutputArray image,1/3通道8位或浮点图像 Point seedPoint,种子点,起始点 Scalar newVal,指定颜色 Rect* rect=0,设定重绘区域的最小边界矩形 Scalar loD

Opencv图像识别从零到精通(24)------漫水填充,种子填充,区域生长、孔洞填充

可以说从这篇文章开始,就结束了图像识别的入门基础,来到了第二阶段的学习.在平时处理二值图像的时候,除了要进行形态学的一些操作,还有有上一节讲到的轮廓连通区域的面积周长标记等,还有一个最常见的就是孔洞的填充,opencv这里成为漫水填充,其实也可以叫种子填充,或者区域生长,基本的原理是一样的,但是应用的时候需要注意一下,种子填充用递归的办法,回溯算法,漫水填充使用堆栈,提高效率,同时还提供了一种方式是扫描行.经常用来填充孔洞,现在来具体看看. 漫水填充:也就是用一定颜色填充联通区域,通过设置可连通

Opencv3编程入门笔记(4)腐蚀、膨胀、开闭运算、漫水填充、金字塔、阈值化、霍夫变换

19      腐蚀erode.膨胀dilate 腐蚀和膨胀是针对图像中的白色部分(高亮部分)而言的,不是黑色的.除了输入输出图像外,还需传入模板算子element,opencv中有三种可以选择:矩形MORPH_RECT,交叉形MORPH_CROSS,椭圆形MORPH_ELLIPSE.Matlab中会有更多一点的模板. 例如: Mat element = getStructuringElement(MORPH_RECT,Size(15,15)); erode(srcImage,dstImage,

【练习5.6】漫水填充法、阈值化、cvSaveImage保存格式

提纲 题目要求 程序代码 结果图片 题目要求: 从噪声图像中创建一个清晰的掩码.完成练习5后,保留图形中最大的图形区域.在图像的左上角设置一个指针,然后让他遍历图像.当你发现像素值为255的时候,存储其位置,然后对其漫水填充,新颜色值为100,.读出漫水填充法返回的连续区域,记录下其面积.如果图像中有另一个较大的区域,那么用0值对这个相对较小的区域进行颜色填充,然后删除已记录的面积.如果新的区域大于之前的区域,那么以0值填充之前的区域并删除他的位置.最后以颜色值255填充剩余的最大区域,显示结果

floodfill 漫水填充 查找相近的像素点

核心函数:cvFloodFill 程序: 代码: #include "cv.h" #include "cxcore.h" #include "highgui.h" #include <iostream> int floodfill(int argc,char** argv) { IplImage* src=cvLoadImage("e:\\picture\\xibao.jpg"); cvNamedWindow(&q