最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++?opencv利用grabCut算法實現(xiàn)摳圖示例

 更新時間:2022年05月12日 16:46:48   作者:淺念念52  
這篇文章主要為大家介紹了C++?opencv利用grabCut算法實現(xiàn)摳圖的代碼示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

前言

grabCut算法利用了圖像中的紋理(顏色)信息和邊界(反差)信息,只用少量的用戶交互操作,即可得到比較好的分割結(jié)果,和分水嶺順豐比較相似,但是計算速度比較慢,得到的結(jié)果比較精確

用法:輸入一幅圖片并對一些像素做屬于背景或?qū)儆谇熬暗臉擞?,算法會根?jù)這個局部標記計算出整個圖像中前景和背景的分割線。

一、grabCut函數(shù)

void grabCut(InputArray img, InputOutputArray mask, Rect rect,
		InputOutputArray bgdModel, InputOutputArray fgdModel,
		int iterCount, int mode = GC_EVAL);
	img 輸入圖像
	mask 輸出掩碼
	rect 用戶選擇的前景矩形區(qū)域
	bgdModel 輸出背景圖像
	fgdModel 輸出前景圖像
	iterCount 迭代次數(shù)
	mode 用于指示函數(shù)執(zhí)行什么操作

二、compare函數(shù)

compare函數(shù)主要用于兩個圖像之間進行逐像素的比較

void compare(InputArray src1, InputArray src2, OutputArray dst, int cmpop);
	src1 原始圖像1
	src2原始圖像2
	dst 結(jié)果圖像
	cmpop 操作類型

三、代碼

#include<iostream>
#include<opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
	Mat img1;
	img1 = imread("test2.jpg");
	imshow("原圖", img1);
	Rect rect(84, 84, 406, 318);
	Mat img2, bg, fg;
	grabCut(img1, img2, rect, bg, fg,1,GC_INIT_WITH_RECT);
	compare(img2, GC_PR_FGD, img2, CMP_EQ);
	imshow("img2", img2);
	Mat img3(img1.size(), CV_8UC3, Scalar(255, 255, 255));
	img1.copyTo(img3, img2);
	imshow("img3", img3);
	waitKey(0);
}

效果圖:

以上就是C++ opencv利用grabCut算法實現(xiàn)摳圖示例的詳細內(nèi)容,更多關(guān)于C++ opencv grabCut算法摳圖的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C++小游戲tankwar之界面繪制的詳細過程

    C++小游戲tankwar之界面繪制的詳細過程

    最近沒有項目做,空閑了下來,于是寫了個c++小游戲來打發(fā)時間,下面通過本文基于圖文并茂的形式給大家介紹C++小游戲tankwar之界面繪制的詳細過程,感興趣的朋友一起看看吧
    2021-05-05
  • C語言中條件編譯詳解

    C語言中條件編譯詳解

    預(yù)處理程序提供了條件編譯的功能??梢园床煌臈l件去編譯不同的程序部分,因而產(chǎn)生不同的目標代碼文件。這對于程序的移植和調(diào)試是很有用的。條件編譯有三種形式,下面分別介紹。
    2017-05-05
  • 解析Linux下的時間函數(shù):設(shè)置以及獲取時間的方法

    解析Linux下的時間函數(shù):設(shè)置以及獲取時間的方法

    本篇文章是對Linux下的時間函數(shù):設(shè)置以及獲取時間的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言單鏈表實現(xiàn)多項式相加

    C語言單鏈表實現(xiàn)多項式相加

    這篇文章主要為大家詳細介紹了C語言單鏈表實現(xiàn)多項式相加,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Opencv基于CamShift算法實現(xiàn)目標跟蹤

    Opencv基于CamShift算法實現(xiàn)目標跟蹤

    這篇文章主要為大家詳細介紹了Opencv基于CamShift算法實現(xiàn)目標跟蹤,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • OpenCV實現(xiàn)物體的凸包檢測的示例代碼

    OpenCV實現(xiàn)物體的凸包檢測的示例代碼

    給定二維平面上的點集,凸包就是將最外層的點連接起來構(gòu)成的凸邊形,它是包含點集中所有的點。本文將利用OpenCV實現(xiàn)物體的凸包檢測,感興趣的可以了解一下
    2022-08-08
  • C++求所有頂點之間的最短路徑(用Dijkstra算法)

    C++求所有頂點之間的最短路徑(用Dijkstra算法)

    這篇文章主要為大家詳細介紹了C++用Dijkstra算法求所有頂點之間的最短路徑,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • C++11?constexpr使用詳解

    C++11?constexpr使用詳解

    constexpr是一種比const?更嚴格的束縛,?它修飾的表達式本身在編譯期間可知,?并且編譯器會盡可能的?evaluate?at?compile?time,本文重點給大家介紹C++11?constexpr使用,需要的朋友可以參考下
    2021-12-12
  • C/C++中的靜態(tài)變量注意事項

    C/C++中的靜態(tài)變量注意事項

    本文主要介紹了C/C++中的靜態(tài)變量注意事項,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • C++實現(xiàn)棧的操作(push和pop)

    C++實現(xiàn)棧的操作(push和pop)

    這篇文章主要介紹了C++實現(xiàn)棧的操作(push和pop),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07

最新評論

游戏| 日照市| 鹤壁市| 陆丰市| 涞水县| 江津市| 连云港市| 晋中市| 阳信县| 土默特左旗| 眉山市| 桦甸市| 清丰县| 安岳县| 遂平县| 郎溪县| 微山县| 肇州县| 襄汾县| 湟中县| 长武县| 北流市| 古田县| 砀山县| 霸州市| 泸州市| 鄱阳县| 新闻| 获嘉县| 河北省| 南城县| 班玛县| 九龙坡区| 分宜县| 思茅市| 德江县| 宁德市| 台中县| 青田县| 汶川县| 万宁市|