• Stars
    star
    187
  • Rank 206,464 (Top 5 %)
  • Language
    C++
  • Created over 9 years ago
  • Updated almost 9 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Learn OpenCV, ORB/SIFT descriptors match by ratio test to find similarity.

Learning OpenCV !!


1. Feature Detecting Methods Compare

=> feature_methods_compare.cxx : Compare the speed of feature detecting method(just detecting, it is easy to include the descriptors computing into it.)

Test Results

2.To See How Ratio impact the ORB Descriptors Matching.

=> ORB_match0.cpp : detect features, compute descriptors, then broute force match them ,but the result is bad, even not similar images also mathces too many!

=> ORB_match.cpp : After the ratio test and symmetric test, the result is good, but with ORB the Jaccard similarity is low.(Q)

ratio image1 keypoints size image2 keypoints size Good matches1 Good matches2 Better matches
0.9 500 487 287 263 176
0.85 500 487 237 218 157
0.8 500 487 209 192 144
0.75 500 487 170 160 120
0.65 500 487 113 106 76

So, You can see the trend!

3.Combine Them Together to Implement Image Retrieval by similarity.

=> image-search

=> Test Results

  1. 500 features with ratio 0.9

  2. 1000 features with ratio 0.8

4. How the Query Image size impact the retrieval score.

test result

5. Dump the Descriptors to file for using next time, make it faster to process large dataset. There are two mehtods:1)You can define your own serialization format, such as my demo, 2) Using OpenCV built in component FileStorage. Here I Choose the second method for its easy use.

==> write ORB descriptors to file batchly ==> write SIFT descriptors to file batchly

6.1 This time I get train images' ORB descriptors from file to do the image retrieval!

test result

查询图片也从orb特征向量文件中获取 2015.8.23

**问题:**从图片得到的descriptos.cols可能为0,所以在匹配的时候就会出现类型不匹配的错误!

6.2 As above, get train images' SIFT descriptors from files, and then do image retrieval.

Source Code

使用SIFT特征向量进行相似图片查找 Source

7. Match descriptors of SIFT,ORB,FAST,etc ,and show how two images matched...

==>match

8.Image resize by scale factor and dump them to specified folders.

==>resize

8.Other easy demo on the road.

==>demo

9. My Blog is Here vonzhou.

More Repositories

1

CSAPP

CSAPP,《深入理解计算机系统结构》2nd ,阅读与实践!
C
1,308
star
2

SpringInAction3

Code of Spring In Action 3rd, Spring学习笔记
Java
170
star
3

learning-java

Java编程之路
Java
58
star
4

SpringMVCTutorial

<Spring MVC: a Tutorial Series>(Spring MVC学习指南)
Java
49
star
5

HowTomcatWorks

《深入剖析Tomcat》阅读与实践 How Tomcat Works
Java
36
star
6

JavaConcurrencyInPractice

阅读《Java并发编程实践》
Java
35
star
7

Blog

My Blog
HTML
25
star
8

Coding

All My Linux C Programming Code!
Batchfile
23
star
9

LearnYouHaskellForGreatGood

《Learn You a Haskell for Great Good》, 《Haskell趣学指南》,Coding with reading!
Haskell
18
star
10

SwordOffer

<剑指offer> Java 实践!
Java
17
star
11

UNPv2

Unix Network Programming Volume 2:IPC
C
13
star
12

netty3.9-note

Java
8
star
13

Thinking-In-Java

Thinking In Java
Java
8
star
14

ProgrammingInScala

Programming In Scala 3rd Examples.《Scala编程》第三版代码
Scala
7
star
15

java-examples

Usefule Java Examples Including Java SE and Java Web.
Java
6
star
16

readings

三更灯火五更鸡,正是男儿读书时。
4
star
17

UNPv1

C
3
star
18

JavaPersistenceWithMyBatis3

Reading Book <Java Persistence with MyBatis 3>
Java
3
star
19

learning-scala

Scala编程之路👍❤️
3
star
20

storm-examples

学习Storm的示例, Examples To Learn Storm
Java
3
star
21

OpencvAPP

Android Applications using OpenCV for Adnroid sdk, feature detection,
Makefile
3
star
22

dockerbook_code

第一本docker书,实践
JavaScript
3
star
23

learning-spring

Java
2
star
24

Notes

Some Notes In CS.
Java
2
star
25

Core-Python-Programming

Python核心编程(Core-Python-Programming)
Python
2
star
26

hadoop-examples

Learning Hadoop, hadoop examples.
Java
2
star
27

BeerV1

Head First Servlet & JSP , source code!
Java
2
star
28

ScalaImpatient

Scala for the Impatient 《快学Scala》第一版习题代码
Scala
2
star
29

Algorithm4e

Java
2
star
30

MvnPractice

阅读《Maven实践》一书
Java
2
star
31

hashtable-worker

Hash table in multiple processes environment, a hash table worker process.
C
2
star
32

udp-file-server

C
1
star
33

webserver

Java
1
star
34

jvm-concourse

Java
1
star
35

python-scripts

Python
1
star
36

headfirstdp

Learning <Head First Design Patterns>.
Java
1
star
37

rule-engine-study

A study of rule engines 规则引擎调研
1
star
38

udp-file-client

C
1
star
39

openjdk7-note

openjdk7 source code reading
Java
1
star
40

express-count

lxml+requests html parse
Python
1
star
41

go-learn

Go
1
star
42

ProgrammingInLua

Lua程序设计 2nd 代码
Lua
1
star
43

SICP

Structure and Interpretation of Computer Programs 计算机程序的构造和解释
Scheme
1
star