# Features, Matching, and RANSAC

## Features

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-Vsri0-5sTruQ8xJ0%2FScreenshot%20from%202020-07-24%2014-09-18.png?alt=media\&token=8601c3c7-3d67-4931-96b2-8fd2bf83e12a)

## How to Panorama

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-W3kAiOabIcLzTWtr%2FScreenshot%20from%202020-07-24%2014-10-11.png?alt=media\&token=e4ddde10-f14b-4add-a0fa-71ca9c070935)

### How close are two patches

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-XRaSr3rx3hByQ8J4%2FScreenshot%20from%202020-07-24%2014-16-06.png?alt=media\&token=2b3c3de4-1b5d-4d20-93ab-0e8873a36ccb)

### Unique Patches

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-XXyYG5J3vLzbRg0C%2FScreenshot%20from%202020-07-24%2014-16-35.png?alt=media\&token=11fecb5c-4c88-4f67-a08e-1d405128b300)

### Self Difference

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-Xtf3ZW1HEotMxUto%2FScreenshot%20from%202020-07-24%2014-17-58.png?alt=media\&token=fd92016a-506e-4648-a36a-25bde39c18fa)

{% hint style="danger" %}
Self difference is still expensive
{% endhint %}

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-YCSiH72eFz4uQGM3%2FScreenshot%20from%202020-07-24%2014-19-30.png?alt=media\&token=634adcdc-4a3c-426b-a11f-2fb210439c84)

{% hint style="success" %}
Approximate-self difference is going to help us to reduce the performance penalties
{% endhint %}

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-ZHpS7JnZsPk-xPr6%2FScreenshot%20from%202020-07-24%2014-24-17.png?alt=media\&token=ad28c06c-b5c7-4aa9-a4c8-9c228b1768ff)

### Approximate self-difference

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-_5GiqOWQRoAUVckU%2FScreenshot%20from%202020-07-24%2014-27-09.png?alt=media\&token=98456460-3c8f-40d4-a0d3-917e31559cb9)

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-_6RBEdJWxCSWowE5%2FScreenshot%20from%202020-07-24%2014-27-17.png?alt=media\&token=f9595f00-465d-4907-89fb-0d7f8c62675a)

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-_7jsjtmReiiWwL48%2FScreenshot%20from%202020-07-24%2014-27-24.png?alt=media\&token=13143b38-1a80-409b-99b0-c8fe896a600c)

### Harris Corner Detector

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-pYnWIA-z-JBUGj_4%2FScreenshot%20from%202020-07-24%2015-39-42.png?alt=media\&token=b8d8ca62-6d24-4e9c-8633-175268567b43)

### We clearly found the corners, now what?

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-qRetMl5d1DXAjUYQ%2FScreenshot%20from%202020-07-24%2015-41-11.png?alt=media\&token=c9d30142-07e4-4805-9d2f-0800eed10534)

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-qUaQCWPUzmfQdRL2%2FScreenshot%20from%202020-07-24%2015-41-22.png?alt=media\&token=5e13bfee-0651-460b-8bc4-9dc9c142f7ad)

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-qVtTn3vyW6mQmRTW%2FScreenshot%20from%202020-07-24%2015-41-37.png?alt=media\&token=2fd1f77a-de33-4c9a-9bde-ab84ab277343)

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-qWeFRguDkitRitDg%2FScreenshot%20from%202020-07-24%2015-42-33.png?alt=media\&token=d39cfcb7-5f2d-490d-8183-cc59db615d90)

### How can we transform images?

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-qmIvkyeZnCvGK1w0%2FScreenshot%20from%202020-07-24%2015-45-02.png?alt=media\&token=234cbb09-2a66-41f2-b6bc-5651cbdbd666)

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-qwrGZPGjjH0zMj2I%2FScreenshot%20from%202020-07-24%2015-45-39.png?alt=media\&token=53d49d02-963e-421b-97d6-5679c26a5690)

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-qzDWCSC_bCDpWREK%2FScreenshot%20from%202020-07-24%2015-45-44.png?alt=media\&token=0a114041-e0e4-42d4-9d96-5d16325323aa)

### Transform

1. Translation
2. Rotation
3. Euclidean
4. Similarity: scale, translate, rotate
5. Affine: combinations of transforms
6. Projective Transform

![](https://2797135393-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M99TkJnCKaTvw9u9gQJ%2F-MD-Lqww_jCqhD89vhuC%2F-MD-rhiWehivs26fquWy%2FScreenshot%20from%202020-07-24%2015-49-08.png?alt=media\&token=5d94524f-388e-4727-8611-35cfe5371481)
