Vectorize images for Levenshtein Distance.

This commit is contained in:
Oleksii Trekhleb 2018-09-20 16:25:46 +03:00
parent 40e48ddfb2
commit 45fb2a24be

View File

@ -62,7 +62,7 @@ is being calculated based on three previously possible transformations.
To explain this further lets draw the following matrix: To explain this further lets draw the following matrix:
![Levenshtein Matrix](https://cdn-images-1.medium.com/max/1600/1*2d46ug_PL5LfeqztckoYGw.jpeg) ![Levenshtein Matrix](https://cdn-images-1.medium.com/max/1600/1*aTunSUoy0BJyYBVn4tWGrA.png)
- Cell `(0:1)` contains red number 1. It means that we need 1 operation to - Cell `(0:1)` contains red number 1. It means that we need 1 operation to
transform `M` to an empty string. And it is by deleting `M`. This is why this number is red. transform `M` to an empty string. And it is by deleting `M`. This is why this number is red.
@ -89,11 +89,11 @@ letters in `i`'s row and `j`'s column.
You may clearly see the recursive nature of the problem. You may clearly see the recursive nature of the problem.
![Levenshtein Matrix](https://cdn-images-1.medium.com/max/2000/1*JdHQ5TeKiDlE-iKK1s_2vw.jpeg) ![Levenshtein Matrix](https://cdn-images-1.medium.com/max/1600/1*w8UB4DSvBnAK6mBXRGQDjw.png)
Let's draw a decision graph for this problem. Let's draw a decision graph for this problem.
![Minimum Edit Distance Decision Graph](https://cdn-images-1.medium.com/max/1600/1*SGwYUpXH9H1xUeTvJk0e7Q.jpeg) ![Minimum Edit Distance Decision Graph](https://cdn-images-1.medium.com/max/1600/1*8jD0qvr5B9PwRFM_9z7q9A.png)
You may see a number of overlapping sub-problems on the picture that are marked You may see a number of overlapping sub-problems on the picture that are marked
with red. Also there is no way to reduce the number of operations and make it with red. Also there is no way to reduce the number of operations and make it
@ -106,7 +106,7 @@ bottom-up direction) is being applied here.
Applying this principle further we may solve more complicated cases like Applying this principle further we may solve more complicated cases like
with `Saturday → Sunday` transformation. with `Saturday → Sunday` transformation.
![Levenshtein distance](https://cdn-images-1.medium.com/max/1600/1*fPEHiImYLKxSTUhrGbYq3g.jpeg) ![Levenshtein distance](https://cdn-images-1.medium.com/max/1600/1*geMdmZcdU1bZbHIoh6KO3Q.png)
## References ## References