学习opencv(1)
目錄
- CV_8UC3
- Scalar--顏色賦值
- using namespace cv找不到命名空間
- waitKey()
- getTickCount()
- 引用
CV_8UC3
a) 存放單通道圖像中像素:Scalar(255)
b) 存放三通道圖像中像素:Scalar(255,255,255);
Scalar--顏色賦值
預(yù)定義類型的結(jié)構(gòu):
CV_(S|U|F)C
(1) bit_depth---比特?cái)?shù)---代表8bite\16bite\32bite\64bite
eg:8表示你所創(chuàng)建的儲存圖片的Mat對象中,每個像素點(diǎn)在內(nèi)存空間所占的空間大小8bite。
(2) S|U|F
S: signed int,即有符號整型;
U: unsigned int,即無符號整型;
F: float,單精度浮點(diǎn)型。
(3) C:所存儲的圖片的通道數(shù)。
eg 1---grayImg灰度圖像---是---單通道圖像
2---RGB彩色圖像---是---3通道圖像
3---帶Alpha通道的RGB彩色圖像---是---4通道圖像
using namespace cv找不到命名空間
# include "pch.h"要放到最前面
waitKey()
waitKey()函數(shù)詳解
1--waitKey()--這個函數(shù)是在一個給定的時間內(nèi)(單位ms)等待用戶按鍵觸發(fā);如果用戶沒有按下 鍵,則接續(xù)等待(循環(huán))
2--如下所示: while(1){ if(waitKey(100)==27)break; } 在這個程序中,我們告訴OpenCv等待用戶觸發(fā)事件,等待時間為100ms,如果在這個時間段內(nèi), 用戶按下ESC(ASCII碼為27),則跳出循環(huán),否則,則跳出循環(huán)
3--如果設(shè)置waitKey(0),則表示程序會無限制的等待用戶的按鍵事件
getTickCount()
在OpenCV編程中,可能會遇到比較不同算法之間的運(yùn)算復(fù)雜度及時耗的問題,下面給出一個統(tǒng)計(jì)代碼運(yùn)行時間的demo,里面用到getTickCount函數(shù),使用時需要添加頭文件#include "opencv2/imgproc/imgproc.hpp"。
#include<iostream> #include <opencv2/opencv.hpp> #include "opencv2/imgproc/imgproc.hpp"using namespace cv; using namespace std;int main(){double t = (double)getTickCount();//開始時間for (int i = 0; i <= 1000; i++){}//可替換成其他代碼t = (double)getTickCount() - t;//代碼運(yùn)行時間=結(jié)束時間-開始時間printf("execution time = %gms\n", t*1000. / getTickFrequency());//轉(zhuǎn)換時間單位并輸出代碼運(yùn)行時間system("pause");//讓dos界面停留return 0; }引用
1
2
轉(zhuǎn)載于:https://www.cnblogs.com/zzc2018/p/10931276.html
總結(jié)
以上是生活随笔為你收集整理的学习opencv(1)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 九、SpringBoot集成Thymel
- 下一篇: Scratch第四十九讲:完美的下落和反