Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for the GIMP By: Cathy Irwin Supervisors:

Slides:



Advertisements
Similar presentations
Applications of one-class classification
Advertisements

Filling Algorithms Pixelwise MRFsChaos Mosaics Patch segments are pasted, overlapping, across the image. Then either: Ambiguities are removed by smoothing.
Object Removal by Exemplar-Based Inpainting Ye Hong CS766 Fall 2004.
Image Segmentation Image segmentation (segmentace obrazu) –division or separation of the image into segments (connected regions) of similar properties.
Exchanging Faces in Images SIGGRAPH ’04 Blanz V., Scherbaum K., Vetter T., Seidel HP. Speaker: Alvin Date: 21 July 2004.
Picture manipulation with photoshop. Free alternatives Gimp Versions for GNU/Linux, Windows, Mac, FreeBSD –Bit.
Maryia Kazakevich “Texture Synthesis by Patch-Based Sampling” Texture Synthesis by Patch-Based Sampling Real-Time Texture Synthesis By Patch-Based Sampling,
Image Quilting for Texture Synthesis and Transfer Alexei A. Efros1,2 William T. Freeman2.
Fractal Image Compression
??? Eyes Brain (Inside) Conclusion: Ideally Suited for Image Processing.
Prénom Nom Document Analysis: Data Analysis and Clustering Prof. Rolf Ingold, University of Fribourg Master course, spring semester 2008.
Fragment-Based Image Completion Iddo Drori and Daniel Cohen-Or and Hezy Yeshurun School of Computer Science Tel Aviv University SIGGRAPH 2003.
Detecting Image Region Duplication Using SIFT Features March 16, ICASSP 2010 Dallas, TX Xunyu Pan and Siwei Lyu Computer Science Department University.
Simultaneous Structure and Texture Image Inpainting by: Bertalmio, Sapiro, Vese, Osher Presented by: Shane Brennan June 7, 2007 EE 264 – Spring 2007.
Texture Reading: Chapter 9 (skip 9.4) Key issue: How do we represent texture? Topics: –Texture segmentation –Texture-based matching –Texture synthesis.
Region Filling and Object Removal by Exemplar-Based Image Inpainting
Image Enhancement.
Project IST_1999_ ARTISTE – An Integrated Art Analysis and Navigation Environment Review Meeting N.1: Paris, C2RMF, November 28, 2000 Workpackage.
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
Background Estimation Mehdi Ghayoumi, MD Iftakharul Islam, Muslem Al-Saidi Department of Computer Science Kent State University, Kent, OH
Image Segmentation by Clustering using Moments by, Dhiraj Sakumalla.
Ergonomics Is the study of how the human form moves at work and at play. Ergonomics must be taken into account when products are being designed, because.
Chapter 10 Enhancing Specific Selections. Chapter Lessons Create an alpha channel Isolate an object Erase areas in an image to enhance appearance Use.
Prakash Chockalingam Clemson University Non-Rigid Multi-Modal Object Tracking Using Gaussian Mixture Models Committee Members Dr Stan Birchfield (chair)
Efficient Editing of Aged Object Textures By: Olivier Clément Jocelyn Benoit Eric Paquette Multimedia Lab.
Graph-based Segmentation. Main Ideas Convert image into a graph Vertices for the pixels Vertices for the pixels Edges between the pixels Edges between.
Vector vs. Bitmap
Introduction to Visible Watermarking IPR Course: TA Lecture 2002/12/18 NTU CSIE R105.
Multiscale Moment-Based Painterly Rendering Diego Nehab and Luiz Velho
Multimedia Elements: Sound, Animation, and Video.
Intelligent Scissors for Image Composition Anthony Dotterer 01/17/2006.
© 2011 Delmar, Cengage Learning Chapter 10 Enhancing Specific Selections.
Quantum Computer Simulation Alex Bush Matt Cole James Hancox Richard Inskip Jan Zaucha.
Evolutionary Art with Multiple Expression Programming By Quentin Freeman.
Digital Image Processing Lecture 10: Image Restoration March 28, 2005 Prof. Charlene Tsai.
LP Narrowing: A New Strategy for Finding All Solutions of Nonlinear Equations Kiyotaka Yamamura Naoya Tamura Koki Suda Chuo University, Tokyo, Japan.
Non-Photorealistic Rendering and Content- Based Image Retrieval Yuan-Hao Lai Pacific Graphics (2003)
Author: Vera Kukić Supervisors: Shaun Bangay Adele Lobb George Wells
GIMP IMAGE PLUGINS FOR GIMP By: Vera Kukić Supervisors: Shaun Bangay and Adele Lobb.
Digital Image Processing Lecture 10: Image Restoration
Synthesizing Natural Textures Michael Ashikhmin University of Utah.
Towards Real-Time Texture Synthesis With the Jump Map Steve Zelinka Michael Garland University of Illinois at Urbana-Champaign Thirteenth Eurographics.
Intelligent Vision Systems ENT 496 Image Filtering and Enhancement Hema C.R. Lecture 4.
2D Texture Synthesis Instructor: Yizhou Yu. Texture synthesis Goal: increase texture resolution yet keep local texture variation.
L10 – Map labeling algorithms NGEN06(TEK230) – Algorithms in Geographical Information Systems L10- Map labeling algorithms by: Sadegh Jamali (source: Lecture.
Multimedia Programming 14: Matting Departments of Digital Contents Sang Il Park.
Yizhou Yu Texture-Mapping Real Scenes from Photographs Yizhou Yu Computer Science Division University of California at Berkeley Yizhou Yu Computer Science.
October 1, 2013Computer Vision Lecture 9: From Edges to Contours 1 Canny Edge Detector However, usually there will still be noise in the array E[i, j],
Geometry Synthesis Ares Lagae Olivier Dumont Philip Dutré Department of Computer Science Katholieke Universiteit Leuven 10 August, 2004.
Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for GIMP By: Cathy Irwin Supervisors:
 Lecture 4. Image Resolution  The resolution of an image is the number of pixels per unit length (pixels/inch or pixels/cm).  You must change either.
Student: Chih-Wei Fang ( 方志偉 ) Adviser: Jenn-Jier James Lien ( 連震杰 ) Robotics Laboratory, Department of Computer Science and Information Engineering, National.
Comparison of Image Registration Methods David Grimm Joseph Handfield Mahnaz Mohammadi Yushan Zhu March 18, 2004.
Implementing the By: Matthew Marsh Supervisors: Prof Shaun Bangay Mrs Adele Lobb segmentation technique as a plugin for the GIMP.
Computer Graphics Imaging Lecture 13 and 14 UV Mapping.
Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for GIMP By: Cathy Irwin Supervisors:
Quantum Computer Simulation Alex Bush Matt Cole James Hancox Richard Inskip Jan Zaucha.
Processing Images and Video for An Impressionist Effect Automatic production of “painterly” animations from video clips. Extending existing algorithms.
Technological Uncanny K. S'hell, C Kurtz, N. Vincent et E. André et M. Beugnet 1.
Content Based Coding of Face Images
Graph-based Segmentation
- photometric aspects of image formation gray level images
CS 4501: Introduction to Computer Vision Sparse Feature Detectors: Harris Corner, Difference of Gaussian Connelly Barnes Slides from Jason Lawrence, Fei.
Project Progress and Future Plans By: Matthew Marsh
DIGITAL SIGNAL PROCESSING
Gimp Guide Mr Hall.
Analysis and classification of images based on focus
IMAGE MOSAICING MALNAD COLLEGE OF ENGINEERING
Patric Perez, Michel Gangnet, and Andrew Black
VISUAL COMMUNICATION USING ADOBE PHOTOSHOP CREATIVE SUITE 5
Presentation transcript:

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for the GIMP By: Cathy Irwin Supervisors: Shaun Bangay and Adele Lobb

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Project Aims Automatic image completion plug-in for GIMP (GNU Image Manipulation Package) Tutorial for general plug-in development

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Image Completion Remove scratches, defects, writing & objects, reconstruct damaged images - Manual techniques are painstaking Automate process – user only selects region to be removed Plug-in: realistically fill in background regions by analysing known regions

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Related Work Texture synthesis Image inpainting Efros & Freeman (2001) Bertalmio, Sapiro, Caselles & Ballester (2000)

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Image Completion Plug-in ‘Fragment-Based Image Completion’ – Drori, Cohen-Or & Yeshurun (2003)

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 My Approach Re-implementing proven technique BUT Incorporating it into the GIMP Inevitable differences – due to language, environment, coding style Verify authors’ results Scenarios Textured regions Smooth regions Geometric shapes

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Fragment-Based Image Completion Algorithm Fast Approximation Confidence Map Candidate Position Map Search Composite Fragments

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Implementation in the GIMP GIMP 2.0 Use ‘empty’ plug-in templates as basis for implementation The implementation language: C Gimp and GTK libraries manipulate the GIMP-specific elements: images, drawables, channels and layers

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Fast Approximation X

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Fast Approximation Each step is added as a new layer to the original image Manipulate and view independently of one another

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Confidence Map Certainty with which the colour value of each pixel is known Gaussian falloff value used to decreases the confidence level towards the center of the unknown region

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Candidate Position Map Takes confidence map as input Pixel with the maximum value in the candidate map is concluded to be the next most appropriate target pixel to be used in the search and composite phases

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Search Phase Iterates through each pixel in a 20 x 20 pixel block around the target to find an appropriate source pixel Average value of the pixels around each potential source it is taken to determine the best possible match with the neighbourhood surrounding the target pixel Size of this neighbourhood region determined by the user at run time but is usually about 8 pixels wide The search formula finds the pixels which have a higher confidence in the source than in the target regions and correspond well in terms of colour

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Compositing Fragments Superimpose that source fragment over the target fragment so that the detail from the source merges seamlessly with the region around the target. Transparent edges - blend in convincingly Use existing GIMP functions: – Selections – Copy – Paste

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004

Results Suited to: Stochastic (random) texture that occurs often in the surrounding region Effective at making the reconstructed area blend into the known regions

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Results cont… 3D structure not taken into account Complete image according to the direction the line was taking at the edge of the gap and not according to mathematical principles

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Results cont… Parameter values depend on the size of the gap and the type of texture in the picture 160 x 120 pixel image: between 12 minutes and an hour to process Smaller gaps need a smaller blur radius and smaller neighbourhood search region. Larger, smooth or stochastic regions can be accurately completed using a larger neighbourhood region that also decreases the processing time

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Results cont…

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 On-line Plug-in Tutorial General tutorial for writing plug-ins for the GIMP in C Tutorial PageTutorial Page Provide a starting point for beginners, not a definitive guide on every aspect of plug-in development Areas covered: – areas that I found problematic during the development of the plug-in – features that were discovered to be particularly useful – references to where more specific information can be found

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 Conclusion Plug-in development aided by availability of templates and documentation regarding GIMP specific functions Some common image manipulation operations complex to implement Not possible to re-implement the original paper exactly within the GIMP environment due to the tool and function constraints and the extra processing required for certain operations A plausibly similar implementation has been achieved - takes advantage of GIMP functions to approximate the intentions of the original paper

Plug-in and tutorial development for GIMP- Cathy Irwin, 2004