Skip to content

Perform image seam algorithm with high time and space efficency

License

Notifications You must be signed in to change notification settings

JerryLingjieMei/Image_Seam

Repository files navigation

Image Seam

This is an implementation of the seam carving algorithm. The seam carving algorithm removes the most insignificnat pixles from an image without disturbing the general theme of the picture.

Example

Here we have an image of the Stata Center, MIT:

Stata

We then shrink it to around half in width:

Shrinked_Stata

Notice that the overall structure of the building hasn't been changed.

Efficiency

The implementation provided in the following code has a higher time and space efficiency than any previous implementations. Compared to previous implementaions by other users (See vendor/), this implementaion has achieved at least 6 times speed up and a lot less memory. The strategy used in this implementaion is that data and space are reused in multiple iterations. We also use various parsers accelerate the computation.

Installation

All the codes provided are written in Julia and displayed in jupyter notebook. You may clone this directory and enter the following code in Julia:

using IJulia
notebook()

Then you can find the location of this notebook Image_Seam.ipynb and run it.

##Acknowledgement

This project is inspired by MIT professor Alan Edelman (Github) during the winter break, 2018. Professor Edelman also kindly offered some Julia implementations of the seam carving algorithm.

I should also thank Jessica Tang for helping me with getting used to the Github environment. This is the first project that I have ever made onto Github.

About

Perform image seam algorithm with high time and space efficency

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published