日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OPENCV-2 学习笔记

發(fā)布時(shí)間:2023/12/10 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OPENCV-2 学习笔记 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1、圖像顯示

#include<opencv2/opencv.hpp> using namespace cv; //使用命名空間 void main(){Mat srcImage = imread('1.jpg');//載入圖像imshow('圖像標(biāo)題',srcImage);//顯示圖像waitKey(0);//等待按鍵按下 }

2、圖像腐蝕

#include <opencv2/opencv.hpp> #include <opencv2/highgui/highgui.hpp> using namespace std; using namespace cv; int main() {Mat srcImage = imread("E:\\4.JPG");imshow("原圖--腐蝕操作", srcImage);Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));Mat dsImage;erode(srcImage, dsImage, element); //腐蝕函數(shù)imshow("效果圖", dsImage);waitKey(0);return 0; }

3、圖像模糊

#include <opencv2/opencv.hpp> #include <opencv2/highgui/highgui.hpp> using namespace std; using namespace cv;int main() {Mat srcImage = imread("E:\\4.JPG");imshow("原圖--腐蝕操作", srcImage);Mat dsImage;blur(srcImage, dsImage, Size(7, 7)); //進(jìn)行濾波操作imshow("效果圖", dsImage);waitKey(0);return 0; }

4、邊緣檢測(cè)

#include <opencv2/opencv.hpp> #include <opencv2/highgui/highgui.hpp> using namespace std; using namespace cv;int main() {Mat srcImage = imread("E:\\4.JPG");imshow("原圖--腐蝕操作", srcImage);Mat dsImage,grayImage,edge;//創(chuàng)建與原圖同類型和大小的矩陣dstdsImage.create(srcImage.size(), srcImage.type());//將原圖轉(zhuǎn)化為灰度圖像cvtColor(srcImage, grayImage, CV_BGR2GRAY);//使用3*3內(nèi)核降噪blur(grayImage, edge, Size(3, 3));//運(yùn)行canny算子Canny(edge,edge,3,9,3);imshow("效果圖", edge);waitKey(0);return 0; }

5、讀取視頻或調(diào)用攝像頭

int main() {//初始化VideoCapture capture("E://1.avi");//調(diào)用攝像頭//VideoCapture capture(0);//循環(huán)每一幀,相當(dāng)一張圖while (1) {Mat frame;capture >> frame;//存儲(chǔ)每一幀imshow("視頻", frame);waitKey(50);//50ms}return 0; }

6、寫視頻文件

int main() { IplImage *iplImg = cvLoadImage("/home/huanglei/wr.jpg", 1); IplImage *iplImgNew = cvCreateImage(cvSize(320,240),8,3) ; //改變圖片大小適應(yīng)視頻 cvResize(iplImg,iplImgNew,CV_INTER_LINEAR) ; CvVideoWriter* video = cvCreateVideoWriter("/home/huanglei/tree1.avi", CV_FOURCC('P', 'I', 'M', '1'), 20, cvSize(iplImgNew->width, iplImgNew->height), 1); /* * 逐幀讀取視頻,并保存到另外一個(gè)視頻文件中 */ CvCapture *cap; cap = cvCreateFileCapture("/home/huanglei/tree.avi"); IplImage *imgVideo ; int q ; while (imgVideo = cvQueryFrame(cap)) { q = cvWriteFrame(video, imgVideo); } /* * 在新的視頻文件的末尾插入圖片 */ int i; for (int x = 0; x < 50; x++) { i = cvWriteFrame(video, iplImgNew); } /* * 釋放指針 */ if (video) { cvReleaseVideoWriter(&video); cvReleaseImage(&imgVideo); cvReleaseImage(&imgVideo); cvReleaseImage(&iplImg); } return 0; }

總結(jié)

以上是生活随笔為你收集整理的OPENCV-2 学习笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。