1. 程式人生 > >openCV學習筆記(五) —— 函式執行時間

openCV學習筆記(五) —— 函式執行時間

  1. 所用函式

getTickCount():這個函式返回特定事件後的節拍數(例如,當機器開啟時)。它可以用來初始化RNG或通過讀取函式呼叫前後的滴答計數來測量一個函式執行時間。

getTickFrequency():返回CPU一秒中所走的時鐘週期數。所以可以以秒為單位對某運算時間計時。

也可用函式cvGetTickCount()和cvGetTickFrequency()。但注意,此時得到的單位是us級的統計時間

使用方法:

double t = (double)getTickCount();

// do something ...

2. 示例程式

#include <iostream>
#include "opencv2/opencv.hpp"

using namespace std;
using namespace cv;


int main()
{
	Mat img = imread("test.jpg");
	Mat dst = img.clone();
	
	double start, end;
	double start1, end1;

	imshow("in", img);

	int rowNumber = img.rows;	//獲取行數
	int colNumber = img.cols;	//獲取列數

	start = (double)cvGetTickCount();
	start1 = (double)getTickCount();

	for (int i = 0; i < rowNumber; i++)
	{
		for (int j = 0; j < colNumber; j++)
		{
			dst.at<Vec3b>(i, j)[0] = 255;	//藍色通道
			dst.at<Vec3b>(i, j)[1] = 0;		//綠色通道
			dst.at<Vec3b>(i, j)[2] = 0;		//紅色通道
			//dst.at<uchar>(i, j) = 255;		//灰度影象
		}
	}

	end = (cvGetTickCount() - start) / cvGetTickFrequency();
	end1 = (getTickCount() - start1) / getTickFrequency();

	printf("duration = %fus\n", end);
	printf("duration = %fs\n", end1);

	imshow("dst", dst);
	waitKey(0);

	destroyAllWindows();

	return 0;
}

相關推薦

openCV學習筆記 —— 函式執行時間

所用函式 getTickCount():這個函式返回特定事件後的節拍數(例如,當機器開啟時)。它可以用來初始化RNG或通過讀取函式呼叫前後的滴答計數來測量一個函式執行時間。 getTickFrequency():返回CPU一秒中所走的時鐘週期數。所以可以以秒為單位對某運算時

Go語言學習筆記 函式

函式定義 函式構成程式碼執行的邏輯結構。在Go語言中,函式的基本組成為:關鍵字func、函式名、引數列表、返回值、函式體和返回語句。 func (p mytype) funcname(q int) (r, s int) { return 0, 0 }   func:

Python + OpenCV 學習筆記>>> 畫素運算

1. 算數運算 注意:兩幅影象的畫素大小要一致 進行影象畫素之間的算術運算,首先要匯入影象,讀取其中資訊: m1 = cv.imread("/home/pi/Desktop/m1.jpg") m2 = cv.imread("/home/pi/Desktop/m2.jpg")

Opencv學習筆記1---------Codeblocks執行按鈕變灰

水母魚要學opencv了,決定把自己遇到的一些問題記錄下來,就當做一個勉勵吧,也幫大家少走一點彎路。 一遇見問題 今天水母魚就遇見了一個問題,發現有時候Codeblocks執行之後因為錯誤卡住了,生成和執行按鈕全部灰掉, 點執行會顯示編譯器還在執行中,直接關閉codeb

OpenCv學習筆記-數學形態學2灰度級膨脹和腐蝕及c語言實現

一 基本概念 所謂的灰度級膨脹和腐蝕即將而知影象的二值形態學運算推廣到灰度影象上。對於一幅影象的腐蝕(膨脹)運算定義為對每個畫素賦值為某個領域內輸入影象灰度級的最小(或最大值)。在二值變換中的結構元素只代表一個領域,而在灰度級變化中,結構元素是一個二元函式,它規定了希

OpenCV學習筆記:計算影象直方圖

畫素值在影象中的分佈情況是這幅影象的一個重要特徵。直方圖是一個簡單的表,它給出了衣服影象或一組影象中擁有給定數值的畫素數量。在OpenCV中計算直方圖可以通過使用cv::clacHist()函式。這是一

Opencv學習筆記Harris角點檢測

文章目錄: 一、Harris角點檢測基本理論 二、opencv程式碼實現 三、改進的Harris角點檢測 四、FAST角點檢測 五、參考文獻 六、附錄(資料和原始碼) 一、Harris角點檢測基本理論(要講清楚東西太多,附錄提供文件詳細說明) 1.1 簡略表達:

ES6學習筆記--函式與物件

函式 引數的預設值 基本用法 function log(x, y = 'World') { console.log(x, y); } log('Hello') // Hello World log('Hello', 'China') //

OpenCV學習筆記31KAZE 演算法原理與原始碼分析KAZE的原始碼優化及與SIFT的比較

  KAZE系列筆記: 1.  OpenCV學習筆記(27)KAZE 演算法原理與原始碼分析(一)非線性擴散濾波 2.  OpenCV學習筆記(28)KAZE 演算法原理與原始碼分析(二)非線性尺度空間構建 3.  Op

python3語言學習筆記函式

使用者自定義函式定義規則: 函式程式碼塊以 def 關鍵詞開頭,後接函式識別符號名稱和圓括號 ()。 任何傳入引數和自變數必須放在圓括號中間,圓括號之間可以用於定義引數。 函式的第一行語句可以選擇性地使用文件字串—用於存放函式說明。 函式內容以冒號起始,並且縮排。

北京大學MOOC C++學習筆記虛擬函式和多型

虛擬函式: 在類的定義中,前面有 virtual 關鍵字的成員函式就是虛擬函式。 class base { virtual int get() ; }; int base::get() { } virtual 關鍵字只用在類定義裡的函式宣告中,寫函式體時不用。 多型的表現

OpenCV學習筆記十八——讀《Master OpenCV》初感

好久沒更新這個系列了。去年12月初的時候就知道出了一本OpenCV的新書《Master OpenCV with Practical Computer Vision Projects》,一直沒來得及看,春節前也不想做什麼任務,就把這書讀一讀吧。大概看了一下,和OpenCV的其

OpenCV學習筆記十一——imge stitching影象拼接stitching

stitching是OpenCV2.4.0一個新模組,功能是實現影象拼接,所有的相關函式都被封裝在Stitcher類當中。這個類當中我們可能用到的成員函式有createDefault、estimateTransform、composePanorama、stitch。其內部實

OpenCV學習筆記——用OpenCV做人臉識別和性別識別contrib

人臉識別的故事說也說不完,調研的事還是交給大家吧。這裡說的是用OpenCV做人臉識別。 因為是真正的人臉識別,不是搞笑娛樂的東西,所以資料庫一定要強大的,推薦個網站http://www.face-rec.org/databases/。這裡有最全的人臉庫的概述,希望大家能找到

OpenCV學習筆記十九——marker檢測識別"Master OpenCV"chp.2

第二章原本是講如何將基於標定的增強現實在ios平臺實現,包括以下4個方面: 1、在ios平臺建立opencv工程 2、Marker檢測識別 3、攝像機標定及Marker姿態估計 4、在Marker基礎上渲染一個3維虛擬物體 這裡面第一部分是IOS平臺的開發,我不是太關注,略

python基礎學習筆記裝飾器,高階函式

多程序程式設計import multiprocessing def process1(): return 1 def process2(): return 2 p1=multiprocessing.Process(target=process1) p2=m

Java 多執行學習筆記synchronized 鎖重入

關鍵字synchronized 擁有鎖重入的功能,也就是使用synchronized時,當一個執行緒得到一個物件鎖後,再次請求此物件鎖時是可以再次得到該物件的鎖的。這也就證明在一個synchroniz

STM32學習筆記LCD函式

//x,y :起點座標  //len :小數點後的位數//size:字型大小,此處省略,預設1608字型//color:顏色,此處僅保留前景色,可自行修改//num:數值(0~4294967295); void LCD_ShowNum(u16 x,u16 y,float nu

神經網路學習筆記 徑向基函式神經網路

徑向基函式神經網路 首先介紹一下網路結構: 1.輸入層為向量,維度為m,樣本個數為n,線性函式為傳輸函式。 2.隱藏層與輸入層全連線,層內無連線,隱藏層神經元個數與樣本個數相等,也就是n,傳輸函式為徑向基函式。 3.輸出層為線性輸出。 理論

模式識別Pattern Recognition學習筆記——概率密度函式pdf的引數估計

       回顧下貝葉斯決策,它的終極目標是要獲取後驗概率,而後驗概率又可以由先驗概率和類條件概率密度兩個量估計得到。先驗概率的估計相對來說比較簡單,一般有兩種方法,其一可以用訓練資料中各類出現的頻