1. 程式人生 > >VLFeat工具包Sift相關函式的學習與使用

VLFeat工具包Sift相關函式的學習與使用

論文:ImageClassification with Fisher Vector: Theory and Practice

資料集:Calthch256

主要查看了VLFeat主頁上關於SIFT和DENSESIFT的Tutorials。

運行了VLFeat中的demo,對於Calthch256中001.ak47類的第一張圖片001_0001.jpg(圖片大小499×278)使用vl_sift函式對整張圖片提取特徵,得到421個特徵點,而對於vl_dsift函式,通過調整patch size和step size可以控制得到的特徵點的座標和個數。對同一張圖片001_0001.jpg,當patch size是24×24,step size取為4時,結果得到了7865個特徵點。對於其他影象,也是如此,得到的特徵點數大大提高。

從vl_sift函式說明中,可以知道檢測到的所有特徵點以F表示(4×numkeypoints),每個特徵點被分配了座標位置x、y,尺度s和方向th。F中的每一列代表了一個特徵點,而每一個descriptor都是128維的,因為:

在高斯尺度影象上,以特徵點為中心,將附近鄰域劃分為 d×d 個子區域(Lowe取d = 4),每個子區域都是一個正方形;

用直方圖統計鄰域畫素的梯度方向,每π/2設定為一個方向,共有8個方向;

在每個子區域上計算8個方向的梯度方向直方圖,這樣就可以對每個特徵點形成一個4*4*8=128維的描述符。

所有特徵點的描述符構成D(128×numkeypoints)。

對於vl_dsift函式來說,需要確定的主要引數為binSize(bin size)、step(sampling step)、bounds(bounding box)。各引數的含義如下圖所示:

                               

根據論文中所提:extract 10K descriptors per image from 24×24 patches on a regulargrid every 4 pixels at 5 scale。引數的設定如下:

binSize= 24/4 =6 (patch size = 24×24);

step= 4;

bounds為輸入影象的大小。

相關推薦

VLFeat工具Sift相關函式學習使用

論文:ImageClassification with Fisher Vector: Theory and Practice 資料集:Calthch256 主要查看了VLFeat主頁上關於SIFT和DENSESIFT的Tutorials。 運行了VLFeat中的dem

VLFeat工具在matlab使用方法

最近要提一個數據集的feature,想先用HOG特徵做一個baseline,聽師兄說VLFeat 是一個不錯的工具包,就下載了試試,剛剛配置成功,網上各種搜尋教程啊 但是都不行,最後還是硬著頭皮看官網教程,才搞定,呵呵呵。。。廢話少說,下面說說我是怎麼做的:首先,從官網下載vlfeat軟體包,連結:http:

【theano-windows】學習筆記十一——theano中神經網路相關函式

前言 經過softmax和MLP的學習, 我們發現thenao.tensor中除了之前的部落格【theano-windows】學習筆記五——theano中張量部分函式提到的張量的定義和基本運算外, 還有一個方法稱為nnet, 如果自己實現過前面兩篇部落格中的程

go語言中os/exec學習使用

pipe 設置 int 管道 baidu 標準輸出 byte Go語言 println package main; import ( "os/exec" "fmt" "io/ioutil" "bytes" ) func main() {

機器學習AI相關的資料

get pos 機器 post 機器學習 notes .com www .cn 機器學習與AI相關的資料: 1、 http://www.fast.ai/ 基礎學習 2、http://geek.ai100.com.cn/ 中文 3、http://geek.ai100.

原創圖書:黑客攻防:實戰加密解密工具下載地址

ont ike ack 百度 密碼 style 工具包 下載 href 說明:百度每一年都會對分享的進行清理,所以原來的工具包地址失效,請自行下載。黑客攻防:實戰加密與解密工具包下載地址https://pan.baidu.com/s/1mjoGYso 密碼:ezwthttp

FTP協議的粗淺學習--利用wireshark抓分析相關tcp連接

sha ftp命令 動向 c中 細胞 nsf ref 後退 圖片 一、為什麽寫這個 昨天遇到個ftp相關的問題,關於ftp匿名訪問的。花費了大量的腦細胞後,終於搞定了服務端的配置,現在客戶端可以像下圖一樣,直接在瀏覽器輸入url,即可直接訪問。 期間不會彈出輸入用戶名密

Python學習--函式呼叫宣告問題

發現一個奇怪的問題: Python在函式裡面呼叫另一個函式時,被呼叫函式是不用事先定義的,例如現在這個例子是可以正確執行的: def test1(): test() def test(): print('test') test1() 這個例子中,函式test1()呼叫了函

C++學習筆記3_類.和相關函式

1. 類*在C++中,struct和class沒有明顯差別,不同C#,class一定要new(手動開闢記憶體)出來struct Hero{ char name[64]; int sex;}void print(struct Hero &h){ ...}class AdvHero{ public: ch

深度學習基礎--loss啟用函式--sigmiodsoftmax;對數損失函式交叉熵代價函式

sigmiod與softmax   sigmiod就是邏輯迴歸(解決二分類問題);softmax是多分類問題的邏輯迴歸   雖然邏輯迴歸能夠用於分類,不過其本質還是線性迴歸。它僅線上性迴歸的基礎上,在特徵到結果的對映中加入了一層sigmoid函式(非線性)對映,即先把特徵線性求和,然後使

Jboot學習筆記--Http工具

以下http工具來自jboot原始碼 共五個類: HttpUtil.java HttpRequest.java HttpResponse.java StringUtils.java ArrayUtils.java import java.io.DataOutputSt

【資料結構】棧佇列 Part1:棧的建立相關函式

First.棧(Stack) 定義:後進先出的線性表 操作: #include<stack> 標頭檔案 stack<int> s;      建立int型別的棧s s.push(x);         &n

Atitit spring原理 反射 ioc 註解api 目錄 1. 反射的使用 1 1.1. 使用jdk原生反射api 1 1.2. 使用apache 工具 commons-beanutil

Atitit spring原理 反射 ioc 與註解api   目錄 1. 反射的使用 1 1.1. 使用jdk原生反射api 1 1.2. 使用apache 工具包  commons-beanutils-1.7.0.jar 1 2. 註解的使用 2

《Oracle PL/SQL開發指南》學習筆記30——原始碼除錯——錯誤管理(第四部分,utl_call_stack中的函式

utl_call_stack包中的函式整理如下: Package Function Description backtrace_depth Returns the number of backtrace items in

opencv學習筆記二十九:SIFT特徵點檢測匹配

SIFT(Scale-invariant feature transform)是一種檢測區域性特徵的演算法,該演算法通過求一幅圖中的特徵點(interest points,or corner points)及其有關scale 和 orientation 的描述子得到特徵並進行

續(利用tensorflow實現簡單的卷積神經網路-對程式碼中相關函式介紹)——遷移學習小記(三)

  上篇文章對cnn進行了一些介紹,附了完整小例子程式碼,介紹了一部分函式概念,但是對我這樣的新手來說,程式碼中涉及的部分函式還是無法一下子全部理解。於是在本文中將對程式碼中使用的函式繼續進行一一介紹。 具體程式碼見上一篇(二) 一、 #定義輸入的placehoder,x是特徵

【機器學習】使用Python的自然語言工具(NLTK)對Reddit新聞標題進行情感分析

讓我們使用Reddit API獲取新聞標題並執行情感分析 在我上一篇文章中,使用Python進行K-Means聚類,我們只是抓取了一些預編譯資料,但是對於這篇文章,我想更深入地瞭解一些實時資料。 使用Reddit API,我們可以從各種新聞subreddit獲得成千上萬的

linux學習-訊號相關函式

未決:在訊號產生和遞送之間的時間間隔內,我們稱訊號是未決的。 阻塞訊號遞送:如果為程序產生了一個阻塞訊號,而且對該訊號的動作是預設動作或捕捉該訊號,則為該程序將此訊號保持為未決的,直到程序對此訊號解除阻塞,或者對此訊號的動作更改為忽略。 訊號遮蔽字:每個程序都有

FTP協議的粗淺學習--利用wireshark抓分析相關tcp連線

一、為什麼寫這個 昨天遇到個ftp相關的問題,關於ftp匿名訪問的。花費了大量的腦細胞後,終於搞定了服務端的配置,現在客戶端可以像下圖一樣,直接在瀏覽器輸入url,即可直接訪問。 期間不會彈出輸入使用者名稱密碼來登入的視窗。 今天我主要是有點好奇,在此過程中,究竟是否是用匿名賬戶“anonymo

機器學習深度學習系列連載: 第二部分 深度學習(八)可以自己學習的啟用函式(Maxout)

可以自己學習的啟用函式(Maxout) 在深度學習中啟用函式有sigma, tanh, relu,還有以後會將到的selu,但是有沒有一個啟用函式不是人為設定的,是機器學出來的呢?對抗網路(GAN)之父Goodfellow,給我們一個肯定的答案。Learnabl