PINK image processing library

Similar documents
Centre de Morphologie Mathématique (CMM) Mines ParisTech

EE 584 MACHINE VISION

An automatic correction of Ma s thinning algorithm based on P-simple points

Weighted fusion graphs: merging properties and watersheds

Isthmus-Based Parallel and Asymmetric 3D Thinning Algorithms

Mathematical Morphology a non exhaustive overview. Adrien Bousseau

C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S. Image Operations II

Albert M. Vossepoel. Center for Image Processing

Biomedical Image Analysis. Mathematical Morphology

Introduction to grayscale image processing by mathematical morphology

Topology-preserving transformations of discrete images in the cubic grid. Recent results and open problems.

Introduction. Computer Vision & Digital Image Processing. Preview. Basic Concepts from Set Theory

Topic 6 Representation and Description

Lecture 7: Morphological Image Processing

A Comparison of Some Morphological Filters for Improving OCR Performance

Morphological Image Processing

EECS490: Digital Image Processing. Lecture #17

Well-composed images and rigid transformations

Binary Shape Characterization using Morphological Boundary Class Distribution Functions

A Visual Programming Environment for Machine Vision Engineers. Paul F Whelan

Image Processing, Analysis and Machine Vision

Computer and Machine Vision

transformation must be reversed if vector is the final data type required. Unfortunately, precision and information are lost during the two transforma

REGARDING THE WATERSHED...

Mathematical morphology in polar(-logarithmic) coordinates for the analysis of round-objects. Shape analysis and segmentation.

Morphological Image Processing

ECEN 447 Digital Image Processing

09/11/2017. Morphological image processing. Morphological image processing. Morphological image processing. Morphological image processing (binary)

Playing with Kruskal: algorithms for morphological trees in edge-weighted graphs

Feature description. IE PŁ M. Strzelecki, P. Strumiłło

Mathematical morphology... M.1 Introduction... M.1 Dilation... M.3 Erosion... M.3 Closing... M.4 Opening... M.5 Summary... M.6

Digital Image Processing Fundamentals

Asymmetric Parallel 3D Thinning Scheme and Algorithms Based on Isthmuses

1 Background and Introduction 2. 2 Assessment 2

Component tree: an efficient representation of grayscale connected components

Programming for Image Analysis/Processing

Morphology-form and structure. Who am I? structuring element (SE) Today s lecture. Morphological Transformation. Mathematical Morphology

11/10/2011 small set, B, to probe the image under study for each SE, define origo & pixels in SE

morphology on binary images

COMPUTER AND ROBOT VISION

Morphological Compound Operations-Opening and CLosing

Shape-based analysis on component-graphs for multivalued image processing

Elaborazione delle Immagini Informazione multimediale - Immagini. Raffaella Lanzarotti

Discrete Bisector Function and Euclidean Skeleton

The Geometric Primitive MatOrus Francisco A. Madera 1, Jorge Madera-Valdez 2

CoE4TN4 Image Processing

Mathematical Morphology and Distance Transforms. Robin Strand

Review for the Final

MORPHOLOGICAL IMAGE INTERPOLATION A study and a proposal

Fundamentals of Digital Image Processing

Raghuraman Gopalan Center for Automation Research University of Maryland, College Park

Morphological Image Processing

Visualisation : Lecture 1. So what is visualisation? Visualisation

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

Digital Image Processing

The. Handbook ijthbdition. John C. Russ. North Carolina State University Materials Science and Engineering Department Raleigh, North Carolina

Image Processing: Final Exam November 10, :30 10:30

Automatic Mesh Generation from 3D Internal Sketch and Topological Constraints

Fusion graphs: merging properties and watersheds

E0005E - Industrial Image Analysis

Development of an Automated Fingerprint Verification System

CS443: Digital Imaging and Multimedia Binary Image Analysis. Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University

Maximum A Posteriori Selection with Homotopic Constraint

Morphological Image Processing

News and Development Process

Computer-aided detection of clustered microcalcifications in digital mammograms.

STIC AmSud Project. Graph cut based segmentation of cardiac ventricles in MRI: a shape-prior based approach

An Image Curvature Microscope

G-SRT Congruent and Similar

Digital image processing

Chapter 9 Morphological Image Processing

IRIS SEGMENTATION OF NON-IDEAL IMAGES

What will we learn? What is mathematical morphology? What is mathematical morphology? Fundamental concepts and operations

Structural 3D Characterization of Silica Monoliths: Extraction of Rod Networks

Indexing by Shape of Image Databases Based on Extended Grid Files

IMAGE ANALYSIS DEDICATED TO POLYMER INJECTION MOLDING

GEODESIC RECONSTRUCTION, SADDLE ZONES & HIERARCHICAL SEGMENTATION

Binary Image Analysis. Binary Image Analysis. What kinds of operations? Results of analysis. Useful Operations. Example: red blood cell image

VALLIAMMAI ENGINEERING COLLEGE

ISTHMUS BASED ORDER INDEPENDENT SEQUENTIAL THINNING

arxiv: v1 [cs.cv] 30 Apr 2014

Evaluation of combinations of watershed hierarchies

An Image Curvature Microscope

Extraction of feature lines on triangulated surfaces using morphological operators

BIOMEDICAL USAGE OF 3D WATERSHED IN DODECAHEDRAL TOPOLOGY

Research Article Image Segmentation Using Gray-Scale Morphology and Marker-Controlled Watershed Transformation

JAVA DIP - OPEN SOURCE LIBRARIES

Ice-Floe Simulation Viewer Tool

Modelling of Overlapping Circular Objects Based on Level Set Approach

Gesture based PTZ camera control

Shape-based analysis on component-graphs for multivalued image processing

Renyan Ge and David A. Clausi

SALOME Maintenance Procedure. Frédéric Pons (Open Cascade) Roman Nikolaev (Open Cascade)

TEXT SEGMENTATION ON PHOTOREALISTIC IMAGES

Edge detection by combination of morphological operators with different edge detection operators

User s Manual ❹ Tools

G-SRT Similar triangles

Segmentation tools and workflows in PerGeos

EE795: Computer Vision and Intelligent Systems

Processing of binary images

Transcription:

PINK image processing library M. Couprie Université Paris-Est - LIGM-A3SI - ESIEE, France 27/06/2012 M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 1 / 21

History Started as a personnal project (15 years ago) Inspired by Khoros/Cantata (Pink Is Not Khoros!) Demand-driven development M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 2 / 21

Users/public ESIEE students PhD students Researchers in LIGM/ESIEE Academic partners (INSERM, Hôpital Henri Mondor, ICMCB, CSIRO...) Industrial partners (CEA, SANOFI, Saint Gobain, EDF, Lafarge SA...) M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 3 / 21

Goals Fast/easy development Easy handling for students Up-to-date algorithms in our expertise field Supporting our applicative/collaborative projects M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 4 / 21

Authors Many contributors, including ESIEE students and PhD students, the main developpers are: Michel Couprie Jean Cousty Laszlo Marak Laurent Najman Hugues Talbot M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 5 / 21

Distribution, license, support CeCILL license web site: pinkhq.com source code available from Mercurial repository Linux distributions OSX Microsoft Windows Doxygen generated documentation, mailing list, bug tracker M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 6 / 21

Web site (created and maintained by L. Marak) M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 7 / 21

Implementation Core library in standard C language C++ for some operators and wrappers Scripts in bash, TCL Python front end Python-TK GUI Python-VTK for 3D visualization M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 8 / 21

Content > 200 operators - main modules: Mathematical morphology (45) Digital connectivity (41) Digital topology, binary (48) Digital topology, grayscale (33) Orders topology (27) Geometrical operators (68) M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 9 / 21

Content Mathematical morphology Basics: erode, dilate, open, close... Binary and grayscale, 2D and 3D Arbitrary structuring elements Higher level operators (alternate sequential filter...) Distance maps, medial axis, morphological skeletons M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 10 / 21

Content Digital connectivity Component labelling, geodesic operators Watershed transformations (2D, 3D, 4D) Connective filtering, component tree building/manipulation M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 11 / 21

Content Digital topology Topology-preserving thinning (2D, 3D) Proven topology-related properties (Gilles Bertrand) Constrained/guided topological transformations Sequential, parallel transformations Detection of local topological features Controlled modifications of topology (3D hole closing...) M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 12 / 21

Content Grayscale digital topology Binary digital topology is generalized to grayscale images by considering the level sets of the image: Functions F and G are homotopic if F k and G k are homotopic (in the binary sense), for all k Grayscale thinning, skeletons Topological filtering Crest restoration... M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 13 / 21

Content Orders topology Cubical(/simplicial) complexes (points, edges, squares, cubes...) Sound and rich framework for topology in discrete spaces Models and extends digital topology Easier handling of some topogical notions (dimension...) New results, algorithms, properties... M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 14 / 21

Content Geometrical operators Shape analysis (measurements, moments...) Discrete/continuous conversions (splines...) Geometric primitives detection (lines/planes, circles, ellipses...) M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 15 / 21

Illustrations Python script for a segmentation scheme def FindTheWires(image, threshold): binary = pink.threshold(image, threshold, 0, 255) inv = pink.inverse(binary) eros = pink.erosball(inv, 2) filtered = pink.geodilat(eros, inv, 8) filled = fill the holes(filtered) open = pink.openball(filled, 6) joints = pink.geodilat(open, filled, 8, 1) result = filled - joints return result M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 16 / 21

Illustrations Python script for interactive manipulation of parameter Im = pink.cpp.readimage( circuit2.pgm ) def binarise(value) global Im return pink.threshold(im, value) pink.manipulate(binarise, 0, 255) M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 17 / 21

Illustrations 3D visualisation with Python-VTK M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 18 / 21

Examples of projects Analysis of biomedical images - computer aided diagnosis Collaboration with INSERM M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 19 / 21

Examples of projects Analysis of fibrous material from 3D microtomography images Collaboration with Lafarge SA, ICMCB and ITASCA M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 20 / 21

Examples of projects 4D segmentation of the beating heart Collaboration with Henri Mondor Hospital M. Couprie (UPE, LIGM, ESIEE) Présentation IPOL 2012 27/06/2012 21 / 21