原创 3-25指針與字符串

創建與輸出 char str[10] = "Hellow "; cout<< str <<endl; 創建一個指向字符串的指針(C++11並不建議這樣使用) char *p_str[10] = "Hellow "; co

原创 3-31數組模板使用基礎(C++11)

vector動態分配內存空間,比較佔用資源,所以C++提供了數組模板 使用數組模板需要引用“array”頭文件 數組模板在定義上與數組定義有點差別,其他都差不多 #include<iostream> #includ

原创 4-1for循環

格式: statement1 for(init_expr;test_expr;update_expr) statement2; statement; 舉例: cout<<"before for"<<endl; for(

原创 3-27使用new動態創建結構體

定義一個結構體 struct Mystruct { int code; char *name; double price; }; 創建一個結構體指針並分配內存 Mystruct *p = new Myst

原创 3-28使用new動態創建共用體

創建一個共用體 union Myunion { int code1; long code2; }; 創建一個共用體指針,給code1賦值並輸出 Myunion *p = new Myunion(); p->c

原创 4-3.集合與指針

#include<iostream> #include<array> #include<vector> using namespace std; int main(int argc, char* argv[]) { //集合與指

原创 3-30vector模板類基礎

將vector模板類看作動態數組作爲數組或棧來使用 使用vetor模板類時需要引用“vector”這個頭文件 vector<int> value; //動態添加三個元素,使用push_back添加到末尾 valu

原创 5-5.條件語句switch

switch的基本語法和規則 一般採用switch語句用來簡化if語句 格式: switch (expression) { case constant: statemens

原创 4-2用for-in循環枚舉集合中的元素

for-in循環和for循環的區別 for - 循環代碼塊一定的次數 for/in - 遍歷數組或者對象的屬性(對數組或者對象的屬性進行循環操作) #include<iostream> #include<array>

原创 4-5. do...while循環

do…while與while循環最明顯的區別 do…while:先執行後判斷條件 while:先判斷條件後執行 #include<iostream> using namespace std; int main(int

原创 19.Laplance算子

1. 主要內容 laplance算子理論——二階導數獲得圖像邊緣 API講解 2. laplance算子理論 (1) 基本理論 解釋:在二階導數的時候,最大變化處的值爲0即邊緣值是0,通過二階導數計算,依據理論我們可以計算

原创 29.輪廓發現

1.輪廓發現(find contour in your image) 輪廓發現(find contour) 代碼演示 2.介紹 輪廓發現是基於圖像邊緣提取的基礎尋找對象輪廓的方法,所以邊緣提取的閾值選定會影響最終輪廓發現結果

原创 27.直方圖反向投影(Back Projection)

1.主要內容 反向投影 相關步驟和相關API 代碼演示 2.什麼叫反向投影(此處注意理解圖像的數據特徵) 反向投影是反映直方圖模型在目標圖像中的分佈情況 簡單的講,就是用直方圖模型去目標圖像中尋找是否有相似的對象。通常用HS

原创 30.凸包(Convex Hull)

1.主要內容 概念介紹 API說明 代碼演示 2.概念介紹 什麼是凸包(Convex Hull),在一個多變形邊緣或者內部任意兩個點的連線都包含在多邊形邊界或者內部。 正式定義:包含點集合S中所有點的最小凸多邊形稱爲凸包

原创 5-3. 處理字符的函數集:cctype

首先我們需要引用ccttype的頭文件 #include<cctype> 頭文件中的函數 isalnum() 如果參數是字母數字,即字母或數字,該函數返回true isalpha() 如果參數是字母,該函數返回true