https://github.com/aaparella/carve
Go implementation of Seam Carving algorithm.
https://github.com/aaparella/carve
go image-processing seam-carving
Last synced: 3 months ago
JSON representation
Go implementation of Seam Carving algorithm.
- Host: GitHub
- URL: https://github.com/aaparella/carve
- Owner: aaparella
- License: mit
- Created: 2016-06-28T23:17:49.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2017-03-26T00:07:20.000Z (about 9 years ago)
- Last Synced: 2025-04-15T01:39:04.924Z (about 1 year ago)
- Topics: go, image-processing, seam-carving
- Language: Go
- Size: 7.81 KB
- Stars: 289
- Watchers: 9
- Forks: 20
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# carve
Go implementation of Seam Carving algorithm. Seam carving allows for an image to be resized without simply cropping or scaling the original image. Detailed walk through of the algorithm and code can be found on [my website](http://parellagram.com/posts/carving). Algorithm is also detailed on [Wikipedia](https://en.wikipedia.org/wiki/Seam_carving), the [original paper](http://graphics.cs.cmu.edu/courses/15-463/2007_fall/hw/proj2/imret.pdf).
# Installation
```shell
$ go get https://github.com/aaparella/carve
```
# Usage
```go
resized, err := carve.ReduceHeight(img, 50)
if err != nil {
log.Fatal(err)
}
```
# Todo
* Improve performance
- Reduce heap allocations
- Caching?