Memahami Proses Perhitungan Fitur SURF

9

Jadi, saya membaca makalah tentang SURF (Bay, Ess, Tuytelaars, Van Gool: Fitur Kuat yang Dipercepat (SURF) ) dan saya tidak dapat memahami paragraf ini di bawah ini:

Karena penggunaan filter kotak dan gambar integral, kami tidak perlu menerapkan filter yang sama secara berulang pada output dari lapisan yang sebelumnya difilter, tetapi sebaliknya dapat menerapkan filter kotak dengan ukuran apa pun dengan kecepatan yang persis sama langsung pada gambar asli dan bahkan secara paralel (meskipun yang terakhir tidak dieksploitasi di sini). Oleh karena itu, ruang skala dianalisis dengan meningkatkan skala ukuran filter daripada secara iteratif mengurangi ukuran gambar, gambar 4.

This is figure 4 in question.

Gambar 4

PS: Makalah ini memiliki penjelasan tentang gambar integral, namun seluruh isi makalah ini didasarkan pada paragraf tertentu di atas. Jika ada yang membaca makalah ini, bisakah Anda menyebutkan secara singkat apa yang sedang terjadi di sini. Penjelasan matematika keseluruhan cukup rumit untuk memiliki pemahaman yang baik pertama, jadi saya butuh bantuan. Terima kasih.

Edit, beberapa masalah:

1.

Setiap oktaf dibagi lagi menjadi jumlah skala skala yang konstan. Karena sifat diskrit dari gambar integral, perbedaan skala minimum antara 2 skala berikutnya tergantung pada panjang lob positif atau negatif dari turunan urutan kedua parsial dalam arah derivasi (x atau y), yang diatur ke sepertiga dari panjang ukuran filter. Untuk filter 9x9, panjang lo ini adalah 3. Untuk dua level berturut-turut, kita harus meningkatkan ukuran ini dengan minimum 2 piksel (satu piksel di setiap sisi) untuk menjaga ukurannya tidak rata dan dengan demikian memastikan keberadaan piksel pusat . Ini menghasilkan peningkatan total ukuran topeng sebesar 6 piksel (lihat gambar 5).

Figure 5

Gambar 5

Saya tidak bisa memahami garis-garis dalam konteks yang diberikan.

Untuk dua tingkat berturut-turut, kita harus meningkatkan ukuran ini dengan minimum 2 piksel (satu piksel di setiap sisi) untuk menjaga ukurannya tidak rata dan dengan demikian memastikan keberadaan piksel pusat.

Saya tahu mereka mencoba melakukan sesuatu dengan panjang gambar, jika bahkan mereka mencoba membuatnya aneh, sehingga ada piksel pusat yang akan memungkinkan mereka untuk menghitung maksimum atau minimum dari gradien piksel. Saya agak ragu tentang makna kontekstualnya.

2.

Untuk menghitung deskriptor wavelet Haar digunakan.

Haar Wavelet

 dx |dx|

3.

Yang lainnya

Apa perlunya memiliki filter perkiraan?

4. Saya tidak memiliki masalah dengan cara mereka mengetahui ukuran filter. Mereka "melakukan" sesuatu secara empiris. Namun, saya memiliki masalah yang mengganggu dengan bagian ini

Output dari filter 9x9, diperkenalkan pada bagian sebelumnya, dianggap sebagai lapisan skala awal, yang akan kita sebut skala s = 1.2 (mendekati turunan Gaussian dengan σ = 1.2).

Bagaimana mereka mengetahui tentang nilai σ. Apalagi bagaimana perhitungan penskalaan yang dilakukan ditunjukkan pada gambar di bawah ini. Alasan saya menyatakan tentang gambar ini adalah bahwa nilai s=1.2terus berulang, tanpa dengan jelas menyatakan tentang asal-usulnya. Skala Gambar

5. Matriks Hessian diwakili dalam hal Lyang merupakan konvolusi gradien urutan kedua dari filter Gausssian dan gambar.

Namun determinan "diperkirakan" dikatakan hanya berisi istilah yang melibatkan filter Gaussian orde kedua.

Nilai wadalah:

Pertanyaan saya mengapa determinan dihitung seperti itu di atas, dan apa hubungan antara matriks Hessian dan Hessian perkiraan.

motiur
sumber
Hei! Saya menambahkan nama penulis dan judul artikel di pertanyaan Anda, saya harap Anda tidak keberatan. Pertama, itu membuat artikel dicari bahkan jika tautannya mati. Kedua, sebagai seseorang yang melakukan penelitian, saya pikir mengkredit penulis dengan nama dan nama publikasi mereka adalah yang paling bisa kita lakukan untuk mengakui pekerjaan mereka :)
penelope
@penelope: Saya setengah takut orang-orang akan memilih saya untuk dilupakan.
motiur
Saya pikir ini pertanyaan yang sangat bagus, salah satu yang lebih menarik baru-baru ini. Saya sendiri tidak pernah masuk ke SURF, tetapi saya mungkin akan mencoba dan melihat besok dan melihat apakah saya dapat berkontribusi, pertanyaan itu benar-benar membuat saya tertarik :) dan PS: jika Anda melakukan ini sebagai bagian dari proyek Uni "resmi" , Saya yakin atasan Anda akan dengan senang hati membantu Anda (terutama jika Anda berada di tingkat Master). Bagian dari pekerjaan mereka adalah mengajarkan Anda cara membaca literatur ilmiah.
penelope
PPS: Anda mungkin ingin mengedit pertanyaan Anda untuk menambahkan penjelasan singkat tentang istilah integral gambar dan filter kotak : memahami apa yang Anda pahami mungkin akan membantu kami memahami apa yang tidak Anda mengerti;)
penelope
@penelope: Anda adalah seorang gadis / pria yang cukup baik, apa pun. Dan tidak, saya harus memiliki tinjauan literatur dari makalah ini, saya membaca yang ditulis oleh David Lowe baik 2004 dan 1999. Itu cukup dimengerti, ditambah ada kuliah youtube yang bagus tentang itu. Masalahnya adalah ada banyak istilah matematika yang digunakan dalam tulisan ini, yang dengan SURF. Jika Anda tidak memiliki model matematika di kepala Anda, sulit untuk melihat ide utamanya.
motiur

Jawaban:

10

Apa itu SURF?

Untuk memahami dengan benar apa yang sedang terjadi, Anda juga harus terbiasa dengan SIFT : SURF pada dasarnya adalah perkiraan SIFT. Sekarang, pertanyaan sesungguhnya menjadi: apa SIFT? .

SIFT adalah detektor keypoint dan deskriptor keypoint . Di bagian detektor, SIFT pada dasarnya adalah varian multi-skala dari detektor sudut klasik seperti sudut Harris, dan yang memiliki kemampuan untuk menyetel skala secara otomatis. Kemudian, mengingat lokasi dan ukuran tambalan (berasal dari skala), ia dapat menghitung bagian deskriptor.

SIFT sangat bagus dalam mencocokkan potongan gambar affine lokal, tetapi memiliki satu kelemahan: itu mahal (yaitu, lama) untuk dihitung. Sejumlah besar waktu dihabiskan untuk menghitung ruang skala Gaussian (di bagian detektor), kemudian dalam menghitung histogram dari arah gradien (untuk bagian deskriptor).

Baik SIFT dan SURF dapat dilihat sebagai perbedaan Gaussians dengan pemilihan skala otomatis (yaitu ukuran Gaussian). Ini, Anda membangun ruang skala di mana gambar input difilter pada skala yang berbeda. Skala-ruang dapat dilihat sebagai piramida, di mana dua gambar berturut-turut terkait dengan perubahan skala (yaitu, ukuran low-pass fiert Gaussian telah berubah), dan skala kemudian dikelompokkan berdasarkan oktaf (yaitu, perubahan besar dalam ukuran filter Gaussian).

  • Dalam SIFT, ini dilakukan dengan memfilter input berulang kali dengan Gaussian dengan lebar tetap hingga skala oktaf berikutnya tercapai.
  • Di SURF, Anda tidak mengalami penalti runtime dari ukuran filter Gaussian berkat penggunaan trik gambar integral. Dengan demikian, Anda menghitung secara langsung gambar yang difilter pada setiap skala (tanpa menggunakan hasil pada skala sebelumnya).

Bagian aproksimasi

Karena menghitung ruang skala Gaussian dan histogram arah gradiennya panjang, itu ide yang baik (dipilih oleh penulis SURF) untuk mengganti perhitungan ini dengan perkiraan cepat.

Para penulis berkomentar bahwa Gaussians kecil (seperti yang digunakan dalam SIFT) dapat didekati dengan baik oleh integral persegi (juga dikenal sebagai kotak blur ). Rata-rata persegi panjang ini memiliki properti bagus untuk menjadi sangat cepat untuk mendapatkan berkat trik gambar integral.

Selain itu, ruang skala Gaussian sebenarnya tidak digunakan per se , tetapi untuk memperkirakan Laplacian of Gaussians (Anda dapat menemukan ini di kertas SIFT). Dengan demikian, Anda tidak hanya membutuhkan gambar yang kabur-Gaussian, tetapi turunan dan perbedaannya. Jadi, Anda hanya perlu mendorong sedikit gagasan tentang mendekati Gaussian dengan sebuah kotak: pertama-tama, dapatkan Gaussian sebanyak yang diperlukan, lalu perkirakan setiap lobus dengan kotak dengan ukuran yang benar. Anda akhirnya akan berakhir dengan serangkaian fitur Haar.

Kenaikan 2

Ini hanya artefak implementasi, seperti yang sudah Anda duga. Tujuannya adalah memiliki piksel pusat. Deskriptor fitur dihitung sehubungan dengan pusat patch gambar yang akan dijelaskan.

Wilayah tengah

semua pix di kolomx=SEBUAHsemua pix di kolomx=-SEBUAHx

Angka ajaib

σ=1.2σ=1.2

sansuiso
sumber
Terima kasih atas penjelasannya, ini menjelaskan beberapa hal, biarkan saya melihat apakah ada orang yang memiliki pemahaman yang lebih rumit.
motiur
Saya telah mengedit jawaban sehubungan dengan pertanyaan baru Anda.
sansuiso
Oh ya terima kasih, lumayan. Kertasnya agak panjang, jadi banyak hal sekaligus.
motiur
Ingin melihat hasil edit terbaru saya?
motiur
1
Ini adalah campuran dari pengetahuan bersama (Gaussians kecil didekati dengan baik oleh kotak kabur), eksperimen (ukuran min / maks objek yang diminati dalam gambar dunia nyata) dan matematika (diberi ukuran tambalan awal, komputasi persegi panjang dan Gaussi yang cocok dengan) .
sansuiso
4

Untuk mengidentifikasi titik minat potensial, fungsi selisih Gaussian (DOG) sering digunakan untuk memproses gambar, sehingga membuatnya tidak berubah menurut skala dan orientasi.

Dalam SIFT, gambar piramida dibuat dengan memfilter setiap lapisan dengan DOG dengan sigmanilai yang meningkat dan mengambil perbedaan.

Di sisi lain, SURF menerapkan perkiraan yang jauh lebih cepat dari turunan parsial Gaussian orde dua dengan Laplacian of Gaussian (LoG) dan filter persegi dengan ukuran yang berbeda (9 * 9, 15 * 15, ...). Biaya komputasi tidak tergantung pada ukuran filter. Tidak ada down-sampling (perubahan sigma) untuk level yang lebih tinggi dalam piramida, tetapi hanya skala atas ukuran filter yang menghasilkan gambar dengan resolusi yang sama.

EDIT

Satu catatan tambahan: penulis dalam makalah Anda selanjutnya menyederhanakan turunan kedua Gaussian pada 4 orientasi (x, y, xy, yx) dengan kernel [1 -2 1],[1 -2 1]' , [1 -1;-1 1], dan [-1 1;1 -1]. Ketika ukuran filter meningkat, Anda hanya perlu memperluas wilayah kernel yang disederhanakan untuk mencapai yang lebih besar. Dan itu setara dengan DOG dengan skala yang berbeda (kurva LoG adalah bentuk yang sama dengan DOG, dan ukuran filter membuat lebarnya juga sama).

lennon310
sumber