Skip to content

ECE-558 Digital Imaging Systems course project 2: This project involved Laplacian and Gaussian Image Pyramids and using these pyramids to blend two images together.

Notifications You must be signed in to change notification settings

Derik-F-M-S/Image-Blending

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

ExampleImage

Image-Blending

ECE-558 Digital Imaging Systems course project 2: This project involved Laplacian and Gaussian Image Pyramids and using these pyramids to blend two images together using a binary mask. A GUI is used to select the region of the foreground image to blend with the background image.

This repo contains the code as well as the outputs for the for the Second project from the ECE-558 Digital Imaging Systems course at NC State University.

The task for this project included:

  • Creating Gaussian and Laplacian Pyramids
  • Creating GUI to Select the ROI for the Mask
  • Image Blending using the image pyramids and the mask

Dependencies

This project requires Python 3 along with the following python modules:

  • Numpy
  • CV2
  • scipy
  • tkinter

Structure

The code for this project is contained in a sigle directory with the following files:

  • pd.py contains the padding function
  • q1.py contains the convolution function as well as the driver functions to test the convolution.
  • pyramid.py contains functions for the Gaussian and Laplacian Pyramids
  • roiSelect.py contains functions for the selection of the mask region for the foreground image
  • textbox.py contains helper functions for displaying the instructions for the ROI selection GUI

Outputs

Examples of the blended images as well as the background and foreground images can be seen in the PDF report as well as the mask image in the root directory of the project

Runing the code

The code for the padding and convolution was designed to be run on a Linux system as a python file using the python3 interpreter with command line arguments used to determine what files to run the blending on.

Example run : python3 pyramid.py --image2=./marslandscape.jpg --image1=./penguin.jpg -o=./penguin3.png -om penguinMask3.png

Running python3 pyramid.py -h should give a list of the valid command line arguments

  • -i1 or --image1: Path to the foreground image
  • -i2 or --image2: Path to the background image
  • -o or --output: Path for the output image
  • -om or --outputmask: Path for the mask output image

About

ECE-558 Digital Imaging Systems course project 2: This project involved Laplacian and Gaussian Image Pyramids and using these pyramids to blend two images together.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages