C++使用opencv處理兩張圖片的幀差
更新時間:2020年03月20日 17:08:34 作者:世界i
這篇文章主要為大家詳細介紹了C++使用opencv處理兩張圖片的幀差,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文為大家分享了使用opencv處理兩張圖片幀差的具體代碼,供大家參考,具體內(nèi)容如下
這個程序是兩張圖片做幀差,用C++實現(xiàn)的,把不同的地方用框框起來,仔細讀一下程序,應該還是蠻簡單的哈哈,opencv處理圖片的基礎(chǔ)。
opencv配置不用我說了吧,源碼cmake編譯,然后導入vs即可。
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat currentframe, previousframe;
Mat img1, img2, img3;
img1 = imread("D:/1129/20006/1123120.jpg");
img2 = imread("D:/1129/20006/1128120.jpg");
img3 = imread("D:/1129/20006/1128120.jpg");
cvtColor(img1, previousframe, CV_BGR2GRAY);
cvtColor(img2, currentframe, CV_BGR2GRAY); //轉(zhuǎn)化為單通道灰度圖
absdiff(currentframe, previousframe, currentframe);//做差求絕對值
threshold(currentframe, currentframe, 130, 255.0, CV_THRESH_BINARY);
dilate(currentframe, currentframe, Mat());//膨脹
erode(currentframe, currentframe, Mat());//腐蝕
imshow("moving area", currentframe); //顯示圖像
vector<vector<Point> > v;
vector<Vec4i> hierarchy;
Mat result;
Rect rect;
findContours(currentframe, v, hierarchy, RETR_EXTERNAL, CV_CHAIN_APPROX_NONE);
for (int i = 0; i < hierarchy.size(); i++)
{
rect = boundingRect(v.at(i));
//rect.width *= 1.5;
rect.height *= 1.5;
// 畫最小的圓,貼著黑色
//drawContours(currentframe, v, i, Scalar(0, 0, 255), 1, 8, hierarchy);
// 畫矩形包圍圓
rectangle(img3, rect, Scalar(0, 255, 0), 2);
}
imwrite("E:/res1.jpg", img3);
imshow("moving area1", img3);
//把當前幀保存作為下一次處理的前一幀
//cvtColor(tempframe, previousframe, CV_BGR2GRAY);
waitKey(33);
system("pause");
return 0;
}
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
c語言數(shù)據(jù)結(jié)構(gòu)之棧和隊列詳解(Stack&Queue)
這篇文章主要介紹了c語言數(shù)據(jù)結(jié)構(gòu)之棧和隊列詳解(Stack&Queue),文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08
Qt5+QMediaPlayer實現(xiàn)音樂播放器的示例代碼
這篇文章主要為大家詳細介紹了如何利用Qt5和QMediaPlayer實現(xiàn)簡易的音樂播放器,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以參考一下2022-12-12
關(guān)于C++函數(shù)模版的實現(xiàn)講解
今天小編就為大家分享一篇關(guān)于關(guān)于C++函數(shù)模版的實現(xiàn)講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12
C++中靜態(tài)初始化數(shù)組與動態(tài)初始化數(shù)組詳解
今天小編就為大家分享一篇C++中靜態(tài)初始化數(shù)組與動態(tài)初始化數(shù)組詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07

