OpenCV c++滑動(dòng)條的創(chuàng)建和使用代碼
什么是滑動(dòng)條
滑動(dòng)條是 OpenCV 動(dòng)態(tài)調(diào)節(jié)參數(shù)特別好用的工具,它依附于窗口而存在。
創(chuàng)建滑動(dòng)條
在 OpenCV 中,可以使用createTrackbar
函數(shù)來(lái)創(chuàng)建一個(gè)可以調(diào)整數(shù)值的滑動(dòng)條,并將滑動(dòng)條附加到指定的窗口上。
參考代碼
int createTrackbar(const string & trackbarname, const string & winname, int * value, int count, TrackbarCallback onChange = 0, void * userdata = 0)
其中,trackbarname
表示我們創(chuàng)建的滑動(dòng)條的名字。winname
表示這個(gè)滑動(dòng)條吸附在的窗口的名字。value
表示滑塊的位置,在創(chuàng)建時(shí),滑塊的初始位置就是該變量的值。count
表示滑塊可以到達(dá)的最大值,最小值始終為 0。onChange
表示指向回調(diào)函數(shù)的指針,每次滑塊位置改變時(shí),這個(gè)函數(shù)都會(huì)進(jìn)行回調(diào)?;卣{(diào)的類型為void xx(int, void*)
,其中第一個(gè)參數(shù)表示軌跡條的位置,第二個(gè)參數(shù)表示用戶數(shù)據(jù)userdata
。userdate
表示傳給回調(diào)函數(shù)的用戶數(shù)據(jù)。
#include<opencv2/core/core.hpp> #include<opencv2/highgui/highgui.hpp> #include<opencv2/imgproc/imgproc_c.h> #include <opencv2/imgproc/types_c.h> #include<opencv2/imgproc.hpp> #include<iostream> using namespace std; using namespace cv; Mat image, srcImage; int thresholds = 50; void threshold_track(int, void*) { Mat result; threshold(srcImage, result, thresholds, 255, THRESH_BINARY); //Canny(srcImage, result, thresholds, thresholds * 3, 3); imshow("邊緣檢測(cè)", result); } int main() { image = cv::imread("...cc.png"); if (!image.data) return 1; cvtColor(image, srcImage, COLOR_BGR2GRAY); namedWindow("邊緣檢測(cè)", WINDOW_AUTOSIZE); createTrackbar("閾值", "邊緣檢測(cè)", &thresholds, 300, threshold_track); waitKey(0); return 0; }
獲取當(dāng)前滑動(dòng)條位置
在 OpenCV 中,可以使用getTrackbarPos()
函數(shù)來(lái)獲取當(dāng)前滑動(dòng)條的位置。
參考代碼
int getTrackbarPos(const string& trackbarname, const string& winname);
其中第一個(gè)參數(shù)表示滑動(dòng)條的名字,第二個(gè)參數(shù)表示軌跡條的父窗口的名稱。
總結(jié)
到此這篇關(guān)于OpenCV c++滑動(dòng)條的創(chuàng)建和使用代碼的文章就介紹到這了,更多相關(guān)OpenCV c++滑動(dòng)條創(chuàng)建使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單酒店管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單酒店管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03C語(yǔ)言實(shí)現(xiàn)車輛出租管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)車輛出租管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01C++獲取文件哈希值(hash)和獲取torrent(bt種子)磁力鏈接哈希值
這二個(gè)代碼一個(gè)是獲取文件哈希值的,另外一個(gè)是獲取torrent文件磁力鏈接的哈希值2013-11-11深入了解C語(yǔ)言中的字符串和內(nèi)存函數(shù)
本文主要帶大家來(lái)學(xué)習(xí)一些常用的庫(kù)函數(shù)。有了這些庫(kù)函數(shù),我們可以更加方便地操作字符串和內(nèi)存,從而提升我們的編碼效率。話不多說(shuō),我們開(kāi)始吧2022-11-11