OpenCV學習筆記

2021-08-11 18:25:22 字數 1517 閱讀 2735

初次學習計算機視覺,接觸到了opencv這個開源的計算機視覺庫,現在開始逐漸整理學習過程中自己遇到的最基本東西,因為自己比較笨,所以便把自己在學習中遇到的各種奇葩簡單問題都一一記錄下來,希望對初學的你有所幫助。大佬就忽略我的存在吧。

1.什麼是命名空間? using namespace cv;在寫**的時候會經常用到這個,這是表示使用cv這個庫的命名規則,如果定義了,後面就可以直接定義mat型別的變數了,如果沒有定義,就需要在mat前面加上cv::mat的字首。

2.輸入輸出流。因為opencv的編寫是c和c++基礎上的,所以,而在現在的opencv3.0版本以上大都是在c++程式下來完成的,所以c++的輸入cin 和 輸出cout就會使用頻繁,那麼基本的格式如下:

輸入 cin >>變數1>>變數2>>…..>>變數n。 例如:video >>frame。就是指把video的內容流給frame。

輸出cout《表示式1《表示式2<<…..《表示式n。 cout << 「顯示的內容」 << endl;

3.讀入和顯示。要先定義mat型別 讀入 mat img = imread(「1.jpg」); 需要注意的是。img是自己定義的變數名,可以隨便定義,而1.jpg。要注意是jpg格式,檔名為1的,剛開始在學的時候不知道,就把的名字改為1.jpg。因此搞了好久才發現這個錯誤。

顯示 imshow(「顯示的」,img); 顯示的是視窗的名字,img是要顯示的變數名。

`#include //引用opencv2的標頭檔案

using

namespace cv; //使用命名空間

int main()

return

0; }

5.cvtcolor()函式cvtcolor 函式是opencv裡面的顏色空間轉化函式,可以實現rgb顏色轉向hsv,hsi等顏色空間的轉換,也可以轉換為gray灰度影象。基本格式是 cvtcolor( src, dst, cv_rgb2gray). 把 rbg彩色的影象轉換為gray灰度影象。 cvtcolor( src, dst, cv_rgb2hsv). 把rgb彩色影象轉換為hsv影象。 其中的src 是要處理的影象變數名,而dst 是處理後的影象變數名。 這裡補充一下什麼是hsv顏色模型,要說到hsv就要和rgb對比來說,會有更直觀的理解。

hsv(hue,saturation,value)是根據顏色的直觀特性 色調(h)、飽和度(s)、明度(v)。

rgb (red, green, blue) 是三種色光原色。 這在opencv 中是三通道的顏色,取值範圍是0~255 取值越高,顏色越明亮。r、g、b都為0時是黑色,都為255是白色。

rgb是電腦設計中最直接的色彩表示方法。通過三種的不同組合可以達到想要的各種顏色。但是rgb數值和色彩的三屬性並沒有直接的聯絡,不能直接的揭示色彩之間的關係。所以在進行配色設計時,rgb模型就不是那麼合適了。rgb是面向硬體的,而hsv是面向使用者的。hsv本質上和rgb模式沒有區別,只是產生顏色的方式不同。

opencv學習筆記

總的來說,我們學習影象處理的就是從vs和opencv開始的。而在之前的學習中,我們使用了前人的通過或攝像頭的人臉識別 並順利執行了程式。順理成章地,接下來的階段就是將這些 給 吃透 理解並吸收,掌握其中的知識。下面就是今天對於 中幾個重要組成部分的學習心得總結。一 命名空間 using namesp...

openCV學習筆記

1 imread函式 mat imread const string filename,intflags 1 mat image0 imread dota.jpg cv load image anydepth cv load image anycolor 載入最真實的影象 ge1 imread do...

Opencv學習筆記

1 矩陣翻轉,cv flip inputarray src,outputarray dst,int flipcode 引數 src,輸入矩陣 dst,翻轉後矩陣,型別與src一致 flipcode,翻轉模式,flipcode 0垂直翻轉 沿x軸翻轉 flipcode 0水平翻轉 沿y軸翻轉 flip...