opencv實(shí)現(xiàn)顏色檢測(cè)
本文實(shí)例為大家分享了opencv實(shí)現(xiàn)顏色檢測(cè)的具體代碼,供大家參考,具體內(nèi)容如下
若要在OPencv 中實(shí)現(xiàn)顏色檢測(cè),首先要將待檢測(cè)圖像轉(zhuǎn)換到HSV顏色空間中,但因?yàn)轭伾且粋€(gè)特定的取值范圍,并且在我們不知情的情況下,只能通過(guò)TrackBar 來(lái)控制顏色閾值,用以探究各顏色的取值范圍。
程序:
#include <iostream> #include <opencv2/highgui.hpp> // 說(shuō)是說(shuō)gui 具體什么gui 不清楚 #include <opencv2/imgcodecs.hpp> // 圖像頭文件 #include <opencv2/imgproc.hpp> // 圖像處理頭文件 using namespace std; using namespace cv; /// Color Detection /// Mat imgHSV, mask; int hmin = 0, smin = 0, vmin = 0; int hmax = 179, smax = 255, vmax = 255; int main() { string path = "resources/shapes.png"; // 導(dǎo)入圖形的時(shí)候,先要在右邊點(diǎn)擊顯示所有文件!??! Mat img = imread(path); // 在opencv 中所有的圖像信息都使用Mat // 顏色空間操作一般使用HSV 即 HSV 顏色空間 cvtColor(img, imgHSV, COLOR_BGR2HSV); // 將 img 圖像轉(zhuǎn)換到 HSV 空間中 namedWindow("trackBar",(640,200)); // 創(chuàng)建一個(gè) 名為 trackBar 的窗口 createTrackbar("Hue Min", "trackBar", &hmin, 179); // hmin 即反應(yīng)了當(dāng)前顏色的值 createTrackbar("Hue Max", "trackBar", &hmax, 179); createTrackbar("Sat Min", "trackBar", &smin, 255); createTrackbar("Sat Max", "trackBar", &smax, 255); createTrackbar("Val Min", "trackBar", &vmin, 255); createTrackbar("Val Max", "trackBar", &vmax, 255); // 若要使用 trackBar 則必須使用 while 循環(huán) while (true) { // inRange 函數(shù)用來(lái)收集顏色 // 因?yàn)樵谡G闆r下某特定顏色并不是一個(gè)單調(diào)的值,而是一個(gè)取值范圍 // Scalar lower(hmin, smin, vmin); Scalar upper(hmax, smax, vmax); inRange(imgHSV, lower, upper, mask); // inRange 可以搜索范圍在lower 及 upper 之間的顏色 imshow("Image HSV", imgHSV); imshow("Image", img); imshow("Image Mask ", mask); waitKey(1); // 此時(shí)延時(shí)為1 即1ms 換一幀 } return 0; }
運(yùn)行結(jié)果:
如該運(yùn)行結(jié)果即檢測(cè)淺藍(lán)色圖案。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C++下如何將TensorFlow模型封裝成DLL供C#調(diào)用
這篇文章主要介紹了C++下如何將TensorFlow模型封裝成DLL供C#調(diào)用問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11win10系統(tǒng)下?VS2019點(diǎn)云庫(kù)PCL1.12.0的安裝與配置教程
點(diǎn)云庫(kù)全稱是Point?Cloud?Library(PCL),是一個(gè)獨(dú)立的、大規(guī)模的、開放的2D/3D圖像和點(diǎn)云處理項(xiàng)目,這篇文章主要介紹了win10系統(tǒng)下?VS2019點(diǎn)云庫(kù)PCL1.12.0的安裝與配置,需要的朋友可以參考下2022-07-07在Visual Studio中用C++語(yǔ)言創(chuàng)建DLL動(dòng)態(tài)鏈接庫(kù)圖文教程
這篇文章主要介紹了在Visual Studio中用C++語(yǔ)言創(chuàng)建DLL動(dòng)態(tài)鏈接庫(kù)圖文教程,本文詳細(xì)講解了DLL庫(kù)的創(chuàng)建過(guò)程,并給出了代碼示例,需要的朋友可以參考下2014-09-09