Skip to content

About

๐Ÿ• This project implements the Seam Carving algorithm for content-aware image resizing. It removes the least important paths in an image to reduce its size while preserving key features.

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

ย 

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Seam Carving Algorithm Implementation

Seam Carving

Overview

This project implements the Seam Carving algorithm for content-aware image resizing. It removes the least important paths in an image to reduce its size while preserving key features.

Features

  • Convert images to grayscale
  • Apply Gaussian Blur
  • Detect edges using Sobel Filter
  • Construct Energy Map
  • Find and remove low-energy seams
  • Parallel implementation using CUDA

Algorithm Versions

  1. Basic parallel implementation
  2. Optimized using shared memory (SMEM)
  3. Parallelized dynamic programming step

Installation

git clone https://github.com/yourusername/seam-carving.git
cd seam-carving
make

Usage

./seam_carving input_image.jpg output_image.jpg num_seams

Performance Analysis

Performance Graph

Our parallel implementations show significant speedup compared to the sequential version, especially for large images and high seam counts.

Future Development

  • Implement two-end BFS for further optimization
  • Explore Forward Energy method
  • Optimize for maximum seam removal in practical applications

Contributing

Contributions are welcome! Please read the CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Acknowledgments

About

๐Ÿ• This project implements the Seam Carving algorithm for content-aware image resizing. It removes the least important paths in an image to reduce its size while preserving key features.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages