自動選中了和種子點相連的區域,接著將該區域替換成指定的顏色,這是個非常有用的功能,經常用來標記或者分離影像的一部分進行處理或分析.漫水填充也可以用來從輸入影像獲取掩碼區域,掩碼會加速處理程序,或者只處理掩碼指定的像素點,
函式
int floodFill(InputOutputArray image, Point seedPoint, Scalar newVal, Rect* rect=0, Scalar loDiff=Scalar(), Scalar upDiff=Scalar(), int flags=4 )
floodFill(src, Point(10, 10), Scalar(255, 255, 0), &ccomp, Scalar(10, 10, 10), Scalar(10, 10, 10));
// 起始點 顏色 最小邊界矩形 負差最大值 正差最大值
代碼
//漫水填充
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
Mat src;
//影像初始化
void Image_Init()
{
src = imread("Resource/test.jpg"); //讀取
if (src.empty())
{
printf("could not load the picture...");
}
}
int main()
{
Image_Init(); //影像初始化
imshow("原圖", src);
Rect ccomp;
floodFill(src, Point(10, 10), Scalar(255, 255, 0), &ccomp, Scalar(10, 10, 10), Scalar(10, 10, 10));
// 起始點 顏色 最小邊界矩形 負差最大值 正差最大值
imshow("填充圖", src);
waitKey(0);
return 0;
}
效果

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/293832.html
標籤:其他
上一篇:OpenCV(十三)影像金字塔(高斯金字塔(向下采樣)、拉普拉斯金字塔(向上采樣))
下一篇:OpenCV(十四)影像閾值
