Giter VIP home page Giter VIP logo

cp11fall_project1's Introduction

project 1: Edge-Aware Filtering

Assigned: 2011/10/20
Due: 2011/11/09 11:59pm
Author: Shuen-Huei (Drake) Guan, D99944013
url: http://www.csie.ntu.edu.tw/~cyy/courses/comphoto/11fall/assignments/proj1/

Project description

In the class, we have introduced a bunch of edge-aware filtering: bilateral, WLS, Local extrema, Diffusion map, Domain transform, Local Laplacian, L0 minimization and Guided filter. In this assignment, you have three options. For the first option, you have to implement one of Local extrema or Diffusion map (which do not have their source codes released). You are free to use any language of your choice. For the second option, you can implement one of the following filters, bilateral, WLS, Guided filter, Domain transform, local Laplacian and L0 minimization (which have made their matlab codes publically available) with a language other than matlab. In the third option, you are asked to compare at least three of the following filters, bilateral, WLS, Guided filter, Domain transform, local Laplacian and L0 minimization (which have made their code publically available). Note that, since these options have different levels of difficulty, option #1 has the highest baseline grade, followed by option #2 and option #3 has the lowest. You are asked to use detail manipulation as the example to illustrate your filter or to compare filters. Other applications will be counted as bonus.

Project features

  • Option #1 is chose for this assignment, plus the option #3's testing.
  • Local Extrema filtering is implemented as matlab.
  • Other filters are from copied from authors' web page. See the last part of this document for further information.
  • The interpolation function in Colorization Using Optimization is used.
  • For some reason, I might not test all filtering algorithms.
  • There are around 8 testing images located in input_images.
  • The resulting images are located in result.
  • For each combination of one filter and one testing image, the resulting images are named as:

The whole testing process is in testSmooth.m. Just take a look at it and play with it.

Input Images

Those input/testing images are gathered from each research mentioned, including two images from this assignment webpage. They are already converted to JPEG with quality of 95 for lesser image size to fit GitHub. I don't own any of those images and they are just used as a research study and course assignment.

cave-flash

cave-noflash

flower

pflower

rock2

statue

toy

tulips

Smoothed & Edge Enhanced Results

cave-flash

cave-noflash

flower

pflower

rock2

statue

toy

tulips

Plotting of Input(I), Smoothed(M) and Detail(D)

For each filtering, the plotting of flower is demonstrated here. I just randomly pick one line from the image (actually, I pick the line with one-third height). The original input image is Blue, the smoothed one is Green, and the detail(the difference between input and smoothed one) is Red.

For more plotting, please go to result/plot.

Bilateral

Bilateral

WLS

WLS

Domain Transform

Domain Transform

Guided

Guided

L0 Minimization

L0 Minimization

Local Extrema

Local Extrema

Video(Image Sequence) Result

Here, I apply the Local Extrema Filter to an open source movie, Sintel, the Durian Open Movie Proejct. The first one is just the smoothed version, mimicing the NPR effect. The second one (if generated) is the edge-enhanced version.

Sintel Youtube: Sintel - Third Open Movie by Blender Foundation

Sintel by Local Extrema Youtube: Sintel by Local Extrema

Reference

  1. S. Paris and F. Durand, A Fast Approximation of the Bilateral Filter Using a Signal Processing Approach, IJCV 2009. (matlab code)
  2. Z. Farbman, R. Fattal, D. Lischinski, R. Szeliski, Edge-Preserving Decompositions for Multi-Scale Tone and Detail Manipulation, SIGGRAPH 2008. (matlab code)
  3. K. Subr, C. Soler, F. Durand, Edge-Preserving Multiscale Image Decomposition Based on Local Extrema, SIGGRAPH Asia 2009.
  4. Z. Farbman, R. Fattal, D. Lischinski, Diffusion Maps for Edge-Aware Image Editing, SIGGRAPH Asia 2010.
  5. E. Gastal, M. Oliveira, Domain Transform for Edge-Aware Image and Video Processing, SIGGRAPH 2011. (matlab code)
  6. S. Paris, S. Hasinoff, J. Kautz, Local Laplacian Filters: Edge-Aware Image Processing with a Laplacian Pyramid, SIGGRAPH 2011. (matlab code)
  7. L. Xu, C. Lu, Y. Xu, J. Jia, Image smoothing via L0 Gradient Minimization, SIGGRAPH Asia 2011. (matlab code)
  8. K. He, J. Sun, X. Tang, Guided Image Filtering, ECCV 2010. (matlab code)

cp11fall_project1's People

Contributors

drakeguan avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.