guansanghai / CVX-Jigsaw

Solving jigsaw puzzles using Matlab and CVX toolbox (THU Convex Optimization Homework).
16 stars 3 forks source link
convex-optimization cvx jigsaw-puzzle jigsaw-solver matlab

CVX-Jigsaw

Solving jigsaw puzzles using Matlab and CVX toolbox (THU Convex Optimization Homework).

Contributors

关桑海(电子系),丁瑞金(自动化系).

Platform

Sample

LP Solve

A jigsaw puzzle with 3300 pieces

Jigsaw puzzle with 3300 pieces

The restored image (LP method + greedy filling)

Restored image

QP Solve

A jigsaw puzzle with 25 pieces

puzzle

After 1 iteration

lena-1

After 2 iterations

lena-2

After 3 iterations

lena-3

After 4 iterations

lena-4

After 5 iterations (the restored image)

lena-5

References

  1. R. Yu, C. Russell, L. Agapito, "Solving Jigsaw puzzles with linear programming" PDF

  2. F. A. Andalo, G. Taubin, S. Goldenstein, "PSQP: Puzzle solving by quadratic programming," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 39, no. 2, pp. 385-396, 2017. PDF

  3. A. C. Gallagher, "Jigsaw puzzles with pieces of unknown orientation," 2012 IEEE Conference on Computer Vision and Pattern Recognition, Providence, RI, 2012, pp. 382-389. PDF

  4. CVX: Matlab Software for Disciplined Convex Programming. Download

  5. Computational Jigsaw Puzzle Solving. Website Link