在本章中,我們將嘗試理解什麼是特徵,為什麼拐角重要等等
你們大多數人都會玩拼圖遊戲。你會得到很多小影象,需要正確組裝它們以形成大的真實影象。問題是,你怎麼做?將相同的理論投影到電腦程式上,以便計算機可以玩拼圖遊戲呢?如果計算機可以玩拼圖遊戲,為什麼我們不能給計算機提供很多自然風光的真實影象,並告訴計算機將所有這些影象拼接成乙個大影象呢?如果計算機可以將多個自然影象縫合在一起,那麼如何給建築物或任何結構提供大量並告訴計算機從中建立3d模型呢?
好了,問題和想象力還在繼續。但這全都取決於最基本的問題:你如何玩拼圖遊戲?你如何將許多被擾的影象片段排列成乙個大的單張影象?你如何將許多自然影象拼接到一張影象上?
因此,我們的乙個基本問題擴充套件到更多,但變得更加具體。這些特徵是什麼?(答案對於計算機也應該是可以理解的。)
影象非常簡單。在影象的頂部,給出了六個小影象塊。你的問題是在原始影象中找到這些補丁的確切位置。你可以找到多少正確的結果?
a和b是平坦的表面,它們散布在很多區域上。很難找到這些補丁的確切位置。
c和d更簡單。它們是建築物的邊緣。你可以找到乙個大概的位置,但是準確的位置仍然很困難。這是因為沿著邊緣的每個地方的圖案都是相同的。但是,在邊緣,情況有所不同。因此,與平坦區域相比,邊緣是更好的特徵,但不夠好(在拼圖遊戲中比較邊緣的連續性很好)。
最後,e和f是建築物的某些角落。而且很容易找到它們。因為在拐角處,無論將此修補程式移動到何處,它的外觀都將有所不同。因此,它們可以被視為很好的特徵。因此,現在我們進入更簡單(且被廣泛使用的影象)以更好地理解。
就像上面一樣,藍色補丁是平坦區域,很難找到和跟蹤。無論你將藍色補丁移到何處,它看起來都一樣。黑色補丁有乙個邊緣。如果你沿垂直方向(即沿漸變)移動它,則它會發生變化。沿著邊緣(平行於邊緣)移動,看起來相同。對於紅色補丁,這是乙個角落。無論你將補丁移動到何處,它看起來都不同,這意味著它是唯一的。因此,基本上,拐點被認為是影象中的良好特徵。(不僅是角落,在某些情況下,斑點也被認為是不錯的功能)。
因此,現在我們回答了我們的問題,「這些特徵是什麼?」。但是出現了下乙個問題。我們如何找到它們?還是我們如何找到角落?我們以一種直觀的方式回答了這一問題,即尋找影象中在其周圍所有區域中移動(少量)變化最大的區域。在接下來的章節中,這將被投影到計算機語言中。因此,找到這些影象特徵稱為特徵檢測。
我們在影象中找到了特徵。找到它之後,你應該能夠在其他影象中找到相同的影象。怎麼做?我們圍繞該特徵採取乙個區域,我們用自己的語言解釋它,例如「上部是藍天,下部是建築物的區域,在建築物上有玻璃等」,而你在另乙個建築物中搜尋相同的區域。基本上,你是在描述特徵。同樣,計算機還應該描述特徵周圍的區域,以便可以在其他影象中找到它。所謂的描述稱為特徵描述。獲得特徵及其描述後,你可以在所有影象中找到相同的功能並將它們對齊,縫合在一起或進行所需的操作。
因此,在此模組中,我們正在尋找opencv中的不同演算法來查詢功能,對其進行描述,進行匹配等。
opencv中文官方文件:
opencv python筆記 畫素理解
長 height 寬 weight 通道數 channel 所以計算機中是乙個三維的矩陣 1 美術三原色 美術教科書講的是繪畫顏料的使用,色彩調色是紅 黃 藍為三原色。2 色光三原色 人的眼睛是根據所看見的光的波長來識別顏色的。可見光譜中的大部分顏色可以由三種基本色光按不同的比例混合而成,這三種基本...
OpenCV Python 理解特徵 三十六
在本章中,我們將嘗試理解什麼是特徵,為什麼拐角重要等等 你們大多數人都會玩拼圖遊戲。你會得到很多小影象,需要正確組裝它們以形成大的真實影象。問題是,你怎麼做?將相同的理論投影到電腦程式上,以便計算機可以玩拼圖遊戲呢?如果計算機可以玩拼圖遊戲,為什麼我們不能給計算機提供很多自然風光的真實影象,並告訴計...
OpenCV Python模糊處理
import cv2 as cv import numpy as np 均值模糊 defblur demo img dst cv.blur img,5 5 cv.imshow blur image dst import cv2 as cv import numpy as np 中值模糊 defmed...