OPENCV-2 學習筆記

1、圖像顯示

#include<opencv2/opencv.hpp>
using namespace cv; //使用命名空間
void main(){Mat srcImage = imread('1.jpg');//載入圖像imshow('圖像標題',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);  //腐蝕函數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)); //進行濾波操作imshow("效果圖", dsImage);waitKey(0);return 0;
}

4、邊緣檢測

#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;//創建與原圖同類型和大小的矩陣dstdsImage.create(srcImage.size(), srcImage.type());//將原圖轉化為灰度圖像cvtColor(srcImage, grayImage, CV_BGR2GRAY);//使用3*3內核降噪blur(grayImage, edge, Size(3, 3));//運行canny算子Canny(edge,edge,3,9,3);imshow("效果圖", edge);waitKey(0);return 0;
}

5、讀取視頻或調用攝像頭

int main()
{//初始化VideoCapture capture("E://1.avi");//調用攝像頭//VideoCapture capture(0);//循環每一幀,相當一張圖while (1) {Mat frame;capture >> frame;//存儲每一幀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) ;  //改變圖片大小適應視頻  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);  /* * 逐幀讀取視頻,并保存到另外一個視頻文件中 */  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;  
}  

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/250753.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/250753.shtml
英文地址,請注明出處:http://en.pswp.cn/news/250753.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

javascript --- 對象的方式體驗鏈式調用

將功能相近的方法寫入同一個對象中,是一個很好的編程習慣,便于后期的維護和前期的開發. foo1 var fooObj {foo1: function() {console.log(foo1);return this;} } fooObj.foo1();此有一個對象: fooObj它有一個方法: foo1()foo1打印了一個字符串’foo1’,然后返回了當前的執行…

oracle 數據庫查詢多條數據的一列值

select sum(case when hc13 then JE else 0 end), sum(case when hc14 then JE else 0 end), sum(case when hc15 then JE else 0 end), sum(case when hc16 then JE else 0 end) from 表名轉載于:https://www.cnblogs.com/lkzp123456/p/8608080.html

OPENCV-3 學習筆記

OPENCV-3 學習筆記 imread()讀入圖&#xff0c;第一個參數&#xff0c;const string&類型的filename&#xff0c;填我們需要載入的圖片路徑名&#xff0c; 第二個參數&#xff0c;int類型的flags&#xff0c;為載入標識&#xff0c;它指定一個加載圖像的顏色類型。 named…

vue --- vue-router(項目模式的導入)

main.js // main.js // 1.1 導入路由的包 import VueRouter from vue-router// 1.2 安裝路由 Vue.use(VuerRouter)// 1.3 導入自己的router.js模塊 import router from ./router.js// 1.4 掛載router對象在vm實例上 const vm new Vue({el: #app,router })app.vue 原本的 a …

Innodb存儲引擎——非聚集索引

如果給表定義了主鍵&#xff0c;那么表在磁盤上的存儲結構就由整齊排列的結構轉變成了樹狀結構&#xff0c;也就是「平衡樹」結構&#xff0c;換句話說&#xff0c;就是整個表就變成了一個索引&#xff0c;這就是所謂的「聚集索引」。 這就是為什么一個表只能有一個主鍵&#x…

cd 切換目錄

1. 功能說明 cd是“change directory”中每個氮氣的首字母縮寫功能是重當前工作目錄切換到指定的工作目錄&#xff1b;cd是內建命令。 2. 語法格式 cd [option] [dir] cd 選項 目錄 3.使用范例 范例1&#xff1a; 切換到/home目錄 [rootlocalhost sysconfig]# pwd /etc/s…

OPENCV-4 學習筆記

OPENCV-4 學習筆記 ROI—設定感興趣的區域&#xff08;region of interest&#xff09; 定義&#xff1a; Mat imageROI; //方法一&#xff1a;通過Rect指定矩形區域 imageROIimage(Rect(500,250,logo.cols,logo.rows)) //方法二 指定感興趣行或列的范圍&#xff08;Ran…

vue --- mintUI中Swipe(輪播圖)的使用

引入 // main.js // 導入包 import { Swipe, SwipeItem } from mint-ui// 注冊 Vue.component(Swipe.name, Swipe); Vue.component(SwipeItem.name, SwipeItem);放在需要顯示的位置 // HomeContainer.vue(首頁 -> 組件) <template><div><!-- 輪播圖區域 --…

前端換行顯示,后端返回br

轉載于:https://www.cnblogs.com/lml-lml/p/9597547.html

MySql隨筆part3 表操作

一:什么是表 表(table): 表似一種結構化的文件,可用來存儲某種特定類型的數據.表中的一條記錄有對應的標題,標題稱之為表的字段 二:創建表 1 create table table_name( 2 字段名1 類型[(寬度) 約束條件], 3 字段名2 類型[(寬度) 約束條件], 4 字段名3 類型[(寬度) 約束條件] 5 …

OPENCV-5 學習筆記

OPENCV-5 學習筆記 線性濾波 方框濾波——boxblur函數均值濾波&#xff08;鄰域平均濾波&#xff09;——blur函數高斯濾波——GaussianBlur函數中值濾波——medianBlur函數雙邊濾波——bilateralFilter函數 關于濾波和模糊—–濾波可分低通濾波和高通濾波兩種。而高斯濾波是…

node --- 監聽文件變化(靜態、動態、子進程)

靜態版本:監聽的文件名寫死了 // watcher.js use strict const fs require(fs); fs.watch(target.txt, () > console.log(File changed!)); console.log(Now watching target.txt for changes...);命令行啟動 node watcher.js動態版本:在命令行輸入需要監聽的文件名. pr…

redis學習總結

一、redis工作流程 1、把redis安裝到Linux上 2、配置redis.conf文件 使之可以后臺運行 3、根據項目需求添加相應的jar包 4、調用相應的api實現項目需求 二、redis相關知識 1、redis是緩存數據庫&#xff0c;為了減少對關系型數據庫的訪問消耗&#xff0c;可以把常用的數據添加…

OPENCV-6 學習筆記

OPENCV-6 學習筆記 邊緣檢測 步驟&#xff1a; 濾波增強檢測 canny算子—Canny 的目標是找到一個最優的邊緣檢測算法 評價標準&#xff1a; 1.低錯誤率: 標識出盡可能多的實際邊緣&#xff0c;同時盡可能的減少噪聲產生的誤報。 2.高定位性: 標識出的邊緣要與圖像中的實…

es6 --- Promise封裝讀取文件操作

Promise: es6中為了解決回調地獄問題而產生的 Promise的參數 Promise的參數是一個函數.每個Promise在實例化時,都會立即執行參數里的函數 const p new Promise(()>{console.log(1); })// 解釋了上面的第2條Promise參數的參數 Promise的參數(函數),默認有2個參數(resol…

匿名函數

匿名函數&#xff1a;lambda 函數 語法&#xff1a; lambda 參數1, 參數2 : 表達式 表達式即為返回值 例&#xff1a; result &#xff08;lambda x, y: xy)(1.2) print(result) 例2&#xff1a; newFunc lambda x,y : xy print(newFunc(1,2) 例3&#xff1a; result sorted…

hdu-6165(tarjan+topusort)

題意&#xff1a;一個有向圖&#xff0c;無自環&#xff0c;無重邊&#xff0c;讓你判斷這個圖內的任意兩點是否有路&#xff1b; 解題思路&#xff1a;首先&#xff0c;判斷兩個點是否可達一般用出入度來判斷&#xff0c;如果在拓撲排序中同時有兩個及以上入度同時為零的點&am…

OPENCV-7 學習筆記

OPENCV-7 學習筆記 轉換圖像尺寸 resize函數。這是最直接的方式&#xff0c;yrUp( )、pyrDown( )函數。即圖像金字塔相關的兩個函數&#xff0c;對圖像進行向上采樣&#xff0c;向下采樣的操作。 圖像金字塔 類似于金字塔的形狀&#xff0c;將原始圖像以金字塔形狀的分辨率…

雜項:E-Learning

ylbtech-雜項&#xff1a;E-Learning1.返回頂部 1、E-Learning&#xff1a;英文全稱為&#xff08;Electronic Learning&#xff09;&#xff0c;中文譯作“數字&#xff08;化&#xff09;學習”、“電子&#xff08;化&#xff09;學習”、“網絡&#xff08;化&#xff09;學…

css --- flex布局的應用(between)

between 想把發布時間放在左邊,點擊放在右邊 頁面結構如下: 可以看到發布時間和點擊是在類 .mui-ellipsis 下.使用css3的 flex 布局中的: space-between .mui-ellipsis{display: flex;justify-content: space-between; }