如果你學習過圖形學,就會對這個裁剪演算法有深入的了解,比如sutherland–cohen演算法大體的意思如下:
第一步,判定:
1) 完全在視窗內的直線段,稱為完全可見的線段,如ab。保留著
2) 完全在視窗外的線段,稱為完全不可見線段,如cd。拋棄掉
第二步,處理不能斷定為完全可見或完全不可見的線段,如ij、kl
*這時需要計算出直線段和視窗邊界的乙個交點,這個交點把直線分成兩段,其中一條為完全不可見的線段,被拋棄。
*對餘下部分再作第一步的判斷,重複上述過程,直到直線段餘下的部分可用第一步的判斷得出肯定的結論為止。
像這樣的演算法有很多種
在OpenCV裡用kNN實現手寫數字識別
本文裡將要學習用knn來構造乙個ocr應用,實現手寫數字的識別。為了實現這個需求,我們需要一些訓練資料和測試資料,在opencv裡有乙個手寫數字的digits.png,這個裡包含有5000個手寫字型的數字,每個數字有500個,每個數字大小為20x20個畫素。如下圖所示 因此,首先就是把5000個數字...
在OpenCV裡實現開運算
前面學習腐蝕和膨脹演算法,並且深刻地認識到它們的特性以及作用。如果由這兩種組合出來的運算又有什麼樣的不同呢?比如乙個影象先腐蝕後膨脹的操作,會有什麼結果呢?因為腐蝕是把白色變小,膨脹又是把白色變大,是否會保持原圖不變呢?帶著這些問題來研究一下先腐蝕後膨脹的演算法,我們把這樣的演算法叫做開運算,在數學...
在OpenCV裡實現傅利葉變換
要學習傅利葉變換,大家要先回去看一下數學書,因為它畢竟是數學的概念,這樣才會更好地理解。首先來看一張圖,就基本理解傅利葉變換 在這張裡,就可以看到同一組訊號在兩個不同方向上的成像,在時域裡看到的是方波,在頻域裡看到是不同頻率的幅度高度。其實這兩個影象都是表示相同的東西,只是看的角度不一樣。傅利葉變換...