Sie sind auf Seite 1von 21

H A N D B O OK OF

Computer Vision
Algorithms in
Image Algebra
second edition
H A N D B O OK OF

Computer Vision
Algorithms in
Image Algebra
second edition

Gerhard X. Ritter
Joseph N. Wilson

CRC Press
Boca Raton London New York Washington, D.C.
disclaimer Page 1 Monday, August 21, 2000 2:37 PM

Library of Congress Cataloging-in-Publication Data

Ritter, G. X.
Handbook of computer vision algorithms in image algebra / Gerhard X. Ritter, Joseph
N. Wilson.--2nd ed.
p. cm.
Includes bibliographical references and index.
ISBN 0-8493-0075-4 (alk. paper)
1. Computer vision--Mathematics. 2. Image processing--Mathematics. 3. Computer
algorithms. I. Wilson, Joseph N. II. Title.

TA1634 .R58 2000


006.4′2--dc21 00-062122

This book contains information obtained from authentic and highly regarded sources. Reprinted material is quoted with
permission, and sources are indicated. A wide variety of references are listed. Reasonable efforts have been made to publish
reliable data and information, but the author and the publisher cannot assume responsibility for the validity of all materials
or for the consequences of their use.

Neither this book nor any part may be reproduced or transmitted in any form or by any means, electronic or mechanical,
including photocopying, microfilming, and recording, or by any information storage or retrieval system, without prior
permission in writing from the publisher.

The consent of CRC Press LLC does not extend to copying for general distribution, for promotion, for creating new works,
or for resale. Specific permission must be obtained in writing from CRC Press LLC for such copying.

Direct all inquiries to CRC Press LLC, 2000 N.W. Corporate Blvd., Boca Raton, Florida 33431.

Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for
identification and explanation, without intent to infringe.

© 2001 by CRC Press LLC

No claim to original U.S. Government works


International Standard Book Number 0-8493-0075-4
Library of Congress Card Number 00-062122
Printed in the United States of America 1 2 3 4 5 6 7 8 9 0
Printed on acid-free paper
Preface
The present edition differs from the first in several significant aspects. Typo-
graphical errors as well as several mathematical errors have been removed. In a number
of places the text has been revised to enhance clarity. Several additional algorithms have
been included as well as an entire new chapter on geometric image transformations. By
popular demand, and in order to provide a better understanding of image algebra, numerous
exercises have been added at the end of each chapter. Starred exercises at the end of a
chapter depend on knowledge of material from subsequent chapters.
As with the first edition, the principal aim of this book is to acquaint engineers,
scientists, and students with the basic concepts of image algebra and its use in the concise
representation of computer vision algorithms. In order to achieve this goal we provide a
brief survey of commonly used computer vision algorithms that we believe represents a
core of knowledge that all computer vision practitioners should have. This survey is not
meant to be an encyclopedic summary of computer vision techniques as it is impossible to
do justice to the scope and depth of the rapidly expanding field of computer vision.
The arrangement of the book is such that it can serve as a reference for computer
vision algorithm developers in general as well as for algorithm developers using the image
algebra C++ object library, iac++.1 The techniques and algorithms presented in a given
chapter follow a progression of increasing abstractness. Each technique is introduced
by way of a brief discussion of its purpose and methodology. Since the intent of this
text is to train the practitioner in formulating his algorithms and ideas in the succinct
mathematical language provided by image algebra, an effort has been made to provide the
precise mathematical formulation of each methodology. Thus, we suspect that practicing
engineers and scientists will find this presentation somewhat more practical and perhaps a
bit less esoteric than those found in research publications or various textbooks paraphrasing
these publications.
Chapter 1 provides a short introduction to the field of image algebra. Chapters
2–12 are devoted to particular techniques commonly used in computer vision algorithm
development, ranging from early processing techniques to such higher level topics as image
descriptors and artificial neural networks. Although the chapters on techniques are most
naturally studied in succession, they are not tightly interdependent and can be studied
according to the reader’s particular interest. In the Appendix we present iac++ computer
programs of some of the techniques surveyed in this book. These programs reflect the
image algebra pseudocode presented in the chapters and serve as examples of how image
algebra pseudocode can be converted into efficient computer programs.

1 The iac++ library supports the use of image algebra in the C++ programming language and is available
via anonymous ftp from ftp://ftp.cise.ufl.edu/pub/src/ia/.

© 2001 by CRC Press LLC


Acknowledgments
We wish to take this opportunity to express our thanks to our current and former
students who have, in various ways, assisted in the preparation of this text. In particular,
we wish to extend our appreciation to Dr. Paul Gader, Dr. Jennifer Davidson, Dr. Hongchi
Shi, Ms. Brigitte Pracht, Dr. Mark Schmalz, Mr. Venugopal Subramaniam, Mr. Mike
Rowlee, Dr. Dong Li, Dr. Huixia Zhu, Ms. Chuanxue Wang, Dr. Jaime Zapata, and
Mr. Liang-Ming Chen. We are most deeply indebted to Dr. David Patching who assisted
in the preparation of the text and contributed to the material by developing examples that
enhanced the algorithmic exposition. Special thanks are due to Mr. Ralph Jackson, who
skillfully implemented many of the algorithms herein, and to Mr. Robert Forsman, the
primary implementor of the iac++ library. We also wish to thank Mr. Jeffrey Palm for
preparing the fractal and iterated function system images.
We wish to express our gratitude to those at Wright Laboratory for their encour-
agement and continuous support of image algebra research and development. This book
would not have been written without the vision and support provided by numerous scientists
at the Wright Laboratory at Eglin Air Force Base in Florida. These supporters include Dr.
Lawrence Ankeney who started it all, Dr. Sam Lambert who championed the image algebra
project since its inception, Mr. Neil Urquhart our first program manager, Ms. Karen Norris,
and most especially Dr. Patrick Coffield who persuaded us to turn a technical report on
computer vision algorithms in image algebra into this book.
Last but not least we would like to thank Dr. Robert Lyjack of ERIM and Dr.
Jasper Lupo of DARPA for their friendship and enthusiastic support during the formative
stages of Image Algebra.

© 2001 by CRC Press LLC


Notation
The tables presented here provide a brief explantation of the notation used
throughout this document. The reader is referred to Ritter [1] for a comprehensive treatise
covering the mathematics of image algebra.

Sets Theoretic Notation and Operations

Symbol Explanation
 Uppercase characters represent arbitrary sets.
 
 Lowercase characters represent elements of an arbitrary set.

 Bold, uppercase characters are used to represent point sets.
  Bold, lowercase characters are used to represent points, i.e.,
elements of point sets.
 The set
     !"!#! $ .
%  %'&  %)( The set of integers, positive integers, and negative integers,
respectively.
%+* The set
%* ,  - ""!#!!#.0/1"$ .
%'*& The set
%'*& ,    "!#!!#.+$ .
%)2 * The set
%'2 * 3  /4.6578#!"!"!
/98  #8#!!#!:.;/<=$ .
>  >?&  >@(  >BADC The set of real numbers, positive real numbers, negative real
numbers, and positive real numbers including 0, respectively.
E The set of complex numbers.
F An arbitrary set of values.
F?G The set
F H $ .
unioned with
F(G F
The set unioned with
/ H $.
F?2 G F
The set unioned with
/ H H $.
I The empty set (the set that has no elements).
=J The power set of (the set of all subsets of ).
K "is an element of."
KL "is not an element of."
M "is a subset of."

© 2001 by CRC Press LLC


Symbol Explanation
NPORQ Union
NTSUQPV3WX6YX6Z[N]\^X6Z[Q0_ .
O N W N _
`8a-b ` Let c . O ` N ` `8a-V3b Wbed[Y8a d[family
Z[N `fofe \^?sets g-m
hB\n k4byopZ anc indexing
g-hjilk"indexed _. set
`8a-b
Oq N r qO N r VwN u SUN0x?Sy#y"y S0N
q.
rts)u rvs)u
Oz N r Oz N r V3W#d{YdUZ[N r+e \^|m\}0k4~|Z{'€@_ .
rts)u rvs)u
NPRQ
NT‚UQPV3WX6YX6Z[Nƒg-n…„0X†Z{Q0_ .
Intersection

 N W N _
`8a-b ` Let c .  ` N ` `8a-V3b Wbed[Y8a d[family
Z[N ` ofe \^sets opZ c _ . by an indexing set
g=ili indexed
`8a-b
q N r q N VwN ‚UN x ‚y#y"y ‚0N
rts)u rvs)u r u q.
z N r z N r V3W#d{YdUZ[N r e \^?g=ili ~‡Zˆ'€?_ .
rts)u rvs)u
NŠ‰[Q
N‹‰[QPVW8Œd)Ž:8‘YdUZ{N{Ž6Z[Q0_ .
Cartesian product

’q N r ’ q N r V3W-Œ“d u Žd…x=Ž#y"y#yŽ:d q ‘Yd r Z”N r _ .


rts)u rvs)u
’z N r ’ z N r V3W-Œ“d u Žd…x=Ž:d–•—y"y"y @Yd r Z{N r _ .
rts)u rvs)u
˜q ˜ ˜ qšV ’ q ˜ .
The Cartesian product of ™ copies of , i.e., rts)u
Nœ›@Q Set difference
N Q
Let NT›@QPand YdZ[ž Q0of_ . some universal set  ,
V3WdUZ[beNŠsubsets
N{Ÿ
N”Ÿ'V  ›@N
Complement
, where  is the universal set that contains
N .
  ¡–¢-£ ¤Œ N{ The cardinality of the set
N .
  ¥§¦ ~  #¨ Œ¤N{ A function that randomly selects an element from the set
N .

Point and Point Set Operations

Symbol Explanation
©«ªR¬ If © Ž ¬ pZ ­‡q , then ©0ª®¬ ,
V Œd u ª  u Ž)y#y"y§Ž d q ª  q  .
©[¯¬ If © ¬
Ž pZ ­‡q , then ©U¯¬ , V Œd u ¯  u Ž)y#y"y§Ž d q ¯  q  .
© 2001 by CRC Press LLC
Symbol Explanation
°{±² If °?³²´pµ‡¶ , then °[± ²{·3¸¹+º¼»8º-³'½"½#½§³…¹ ¶ » ¶…¾ .
°À¿=² If °?³²´pµ‡¶ , then °À¿=²{·,¸¹'º ¿»8º#³)½#½"½§³ ¹ ¶ ¿8» ¶ ¾ .
°«ÁU² If °?³²´pµ‡¶ , then °0ÁU²ˆ·¸
¹+º+Á[»8º-³'½#½"½'³ ¹ ¶ ÁU» ¶…¾ .
°«ÂU² If °?³²´pµ‡¶ , then °0ÂU²ˆ·¸
¹ º Â[» º ³'½#½"½'³ ¹ ¶ ÂU» ¶ ¾ .
°'à ² In general, if °?³²´ˆµ|¶ , and Ã{ĵ®Å{µˆÆǵ , then
°'à ²È·3¸¹ º Å» º ³'½"½"½…³§¹ ¶ Å» ¶ ¾ .
É Ãj° É ´ˆµ °´{µ|¶ Ã{Ä8µÊÅ[µÆǵ , then
If É Ã °ˆ·3¸ ,É Ã§¹ º ³'½#½",½§and ³ É Ã…¹ ¶ ¾ .
°À˲ If °?³²´pµ‡¶ , then °À˲{·¹'º »8ºÍÌʹ§Î"»-Î?̃±"±#±'Ìʹ ¶ » ¶ .
°ÅU² If °?³²´pµ‡¶ , then
°Å«²ˆ·3¸¹ Î »"ϑÐʹjÏ#» Î ³ ¹jÏ-» º Ðȹ º »"ϖ³ ¹ º » Πй Î » º ¾ .
° Ñ ² If °´{µ|¶ and ²´pµ‡Ò , then
°:Ñ ²ˆ·,¸¹'º"³À½"½#½§³ ¹ ¶ ³ »8º³'½"½#½'³ » ÒÓ¾ .
Б° If °´{µ|¶ , then Б°p·Ô¸:Ð4¹ º ³À½"½"½…³§Ð4¹ ¶ ¾ .
Õ ° Ö Õ
If °´{µ|¶ , then ° ÖÓ·3¸ ¹'º¤Öj³À½"½#½§³ ¹ ¶ Ö ¾ .
Õ Õ
× ° Ø ×
If °´{µ|¶ , then ° ØÓ·3¸ ¹ º Øj³À½"½#½§³ ¹ ¶ Ø ¾ .
× ×
Ù °§Ú Ù
If °´{µ|¶ , then °§ÚD·3¸ ¹ º Ú
³'½#½"½§³ ¹ ¶ Ú ¾ .
Ù Ù
ÛjÜ ¸Ý° ¾ If °{·¸
¹ º ³¹ Î ³"½"½#½³:¹ ¶ ¾ ´pµ‡¶ , then ÛjÜ ¸Ý° ¾ ·1¹ Ü .
Þ° Þ
If °´{µ|¶ , then °”·¹'º|Ìʹ§Î?̃±"±#±'Ìʹ ¶ .
ß° ß
If °´{µ|¶ , then °[·7¹+º¼¹§Î6±#±"±–¹ ¶ .
Á|° If °´{µ|¶ , then Á|°”·¹+º+Á[¹§Î?Áà±#±"±…Á¹ ¶ .
Â|° If °´{µ|¶ , then Â|°”·¹ º Â[¹ Î Âà±#±"±…¹ ¶ .
á° áÎ á á Î Î
If °´{µ|¶ , then ° Î ·àâ ¹ º Ìã±#±"±…Ìä¹ ¶ .
ᰠẠá á
If °´{µ|¶ , then ° º ·æå ¹'ºåÌ7å ¹§Îå ̃±"±"±DÌãå ¹ ¶ å .
á ° á#ç If °´{µ|¶ , then °
á á#ç ·æå ¹+º=åÁå ¹…Î8å Áà±#±"±…Áæå ¹ ¶ å .
è–éÝê ¸° ¾ If °´{µ|¶ , then
è–é¤ê ¸¤° ¾ ·ë .
ì Ìí ì
If ³
íïîðµ|¶ , then Ìíñ·3ò#°0Ì®²óÄô°õ´
ì ìœö ë è ²´”í÷ .
ì Јí ì
If ³
íïîðµ|¶ , then Ð{íñ·3ò#°UвóÄô°õ´
ì ìœö ë è ²´”í÷ .
ì Ìø If
ì î1µ|¶ and Û ´{µ|¶ , then ì Ìøˆ·3ò#°0Ì®øœÄô°{´ ì ÷ .
© 2001 by CRC Press LLC
Symbol Explanation
ùûúˆü If
ù]ý1þ|ÿ and  þ|ÿ , then ùæú [úü
ˆ ü   ù .
ù If
ùïý ðþ|ÿ , then ù   ù
   .
ù! If
ùïý ðþ|ÿ , then ù!"#$   ù"%'&)(   *  .
ù!+, ùïý ðþ|ÿ
ù-+.#$/ , then ù.%'&)(   * ù0 .
If

ù21, If
ùïý ðþ|ÿ , then ù1.#4356798!   ù
%:&)(;7   .
ú‘ù If
ù]ý1þ|ÿ , then ú‘"ù 8ú<=   ù> .
ù? If
ù]ý1þ|ÿ , then ù" ? #  þA@,%'&)( !* ù
  .
BC 3Ý-ù 8 ù]ý1þ|ÿ B$C 3Ý-ù 86 supremum of ù . If
ù"ED$F9, G4then
If
HHHIF ÿ 4 then the B$C 3Ý-ù 86JEDLK9G6KH$HHMK, ÿ .
N ù ù order O ,
LP< ù
QR O with
For a N point set
  ù
9PSUTVtotal 9P .
W5&)X)ù!3 8 ù]ý1þ|ÿ WY&)XZù-3 86 ù
If
ù" D F , G then H$HHF ÿ , thentheWY&)XZùinfimum
-3 86J ofDL[  .G\If[ H$HH [  ÿ .
] ù ù total order O ,
 P  ù
QR)^ Owith
For a ] point set
_ UTV  ù P .
`a  W $` b 3¤!ù 8 ù]ý1þ|ÿ , then
If
`a W `b 3-ù 8  ùc3d%'&)(:efhg `a  Bb & b f b e b &ZiI8 .
` %'¤ù(j!3 8 ù]ý1þ|ÿ , then ` %'¤ù(j-3 8Eki aVb` %'('WY&)%'fhWlUùiIgmX . In
If
particular, if
ù
 D nnn ÿ , then ` %'¤ù(j!3 8Eo& .

Morphology

In the following table, p q,Mr and s denote subsets of


þ‡ÿ .
Symbol Explanation

pt The reflection of p u # 3wvjIvj$HHHMv8  þ‡ÿ .


across the origin

pyx The complement of p ; i.e., p x   þ|! ÿ /* p .


pyz pyz ${}|~€ {
 p .
p 1-q
p 1 q#${m|~€ {  p F~  qy (Section 7.2).
Minkowski addition is defined as

p‚ q Minkowski subtraction is defined as p,‚


qƒ3 pyx 1 q t 8 x
(Section 7.2).

© 2001 by CRC Press LLC


Symbol Explanation
„ƒ…<† „ † is denoted „…<† and is defined by
„…<†ƒ‡ˆd„,‰4†‹ŠŒ-by† (Section
The opening of
7.3).
„ƒŽ<† „ † is denoted „Ž<† and is defined by
„Ž<†ƒ
The ‡ˆd„ofŒ†‹Šby‰S† (Section
closing
7.3).
„ƒ/‘ ’
‘ #
‡ w
ˆ 
“ 
”
• Š
Let
„ is given by
be an ordered pair of structuring elements.
„J‘’‡#–—/˜4“™!transform
The hit-and-miss š›„œžVŸof• the
™,šset„¡5¢ (Section 7.5).

Functions and Scalar Operations

Symbol Explanation
£ ˜ ¤¥§¦ £ is a function from
¤ into
¦<¨
©'ª«,¬'­d® ˆ £ Š The domain of the function
£ ˜ ¤¥§¦ is the set ¤ ¨
¯ ¬'®±°:² ˆ £ Š £ ˜¤¥§¦ is the set
£– ˆU³±range
The
Š˜:³´!¤µ¢ .
of the function

A£ ¶A· The inverse of the function .


£
¦‹¸ ¤ ¦ £ ´-¦‹¸ , then
£ ˜¹¤.set¥§of¦all¨ functions from into , i.e., if
The

£6º » £ ˜S¤.¥§¦ and a subset ¼ š›¤ , the


Given a function £ to ¼ ¬ ,
£Lº » ˜ ¥§¦ , is defined by
£Lº » ˆ ¬ ŠE‡ £ ofˆ ¬ Š for
restriction
´ ¼ .¼
£Eº ½ £ ˜ ¼ ¥§¦ and ° ˜4¾¥§¦ , the extension of £ to ° is
£Eº ½ ˆ³±ŠE‡=¿ °£ ˆwˆ³±³VŠÄ ŠÁÀÃÂ\³´ ¼
Given
defined by ÀÃÂ\³´¾/Å ¼ ¨
° …£ £ ˜¤Æ¥§¦ and ° ˜4¦¥RÇ , the
Given two functions ° … £ 
˜ 
¤ ¥RÇ is defined by
ˆ ° … £ ŠÈˆw³±ŠE‡ ° ˆ £ ˆ³VŠFŠ , for every
composition
³´ ¤ .
£‹É ° £ °
Let ° and be real or° complex-valued functions, then
ˆ £‹É ŠMˆ³±ŠL‡ £ ˆU³±Š É ˆ³VŠ .
£Ê ° £ ° be real or complex-valued functions, then
Let
ˆ £Ê ° ŠMand ˆd³VŠE‡ £ ˆ³±Š Ê ° ˆd³VŠ .
Ë Ê$£ £
Let be a real or complex-valued
or complex number, then
‡ Ë Ì Ê beˆ £ ˆa³±Šreal
ˆ Ë Ê£ ŠÐˆd³VŠEand
£ ´ÍÏÎ , function, Š.
º £Eº º £Eº ˆw³±Š6‡ º £ ˆw³±Š º , where £ is a real (or complex)-valued
function, and £
º £ ˆw³±Š º denotes the absolute value (or
magnitude) of
ˆ³VŠ .
© 2001 by CRC Press LLC
Symbol Explanation
ÑÐÒ The identity function
Ñ ÒÓÔÆÕÖÔ is given by Ñ Òm×ØÚÙ6ÛØ .
ÜSÝ Ó!àhß áAÞ â Ô à Õ§Ô Ý d
× Ø Ø functionØ Ü4ÙL Ý onto the ã th coordinate is defined
ÛØ Ý .
4
Ü Ý 
â 
ä
The projection
by 
å $
å M
å ä Ý 
ä $
å 
å M
å ä Þ
æç'èé ×YÔ Ù The cardinality of the set .
Ô
æê±ëì5æ$í ×YÔ Ù Ô
A function which randomly selects an element from the set
.
Ømî!ï For
Ø ä mï ðñ , Ø î!ï is the maximum of Ø and ï .
Ømò!ï For ä
Ø ïmðñ , Ø ò!ï is the minimun of Ø and ï .
ó Øô Øð ñ the ceiling function ó ØSô returns the smallest
For
integer that is greater than or equal to .
Ø
õ Øö Øð ñ the floor function õ ØSö returns the largest integer
For
that is less than or equal to .
Ø
÷ Øùø For
Øð ñ the round function returns the nearest integer to Ø .
If there are two such integers it yields the integer with
greater magnitude.
Øú ëé ï Ø ä mï ðû , Øú ëé ïmÛ è if there exists ü ä è ð û
For
mè ý ï such that ØÛï üÿþ è . with

 ×dØVÙ  
Ñ Øð 
 ×UرÙEÛ 
The characteristic function
  
is defined by

Images and Image Operations

Symbol Explanation
 ä <
 ä Bold, lowercase characters are used to represent images.
Image variables will usually be chosen from the beginning of
the alphabet.
ð !#
 " !
The image  is an -valued image on $ . The set
!
is called
the value set of  and $ the spatial domain of  .
ð !#
% ! Ñ %
Let be a set with unit . Then
whose pixel values are .
Ñ denotes an image, all of

ð !#
& ! &

Let be a set with zero . Then denotes an image, all of
whose pixel values are .
' (  ð"!#
Û
The domain restriction of × ! Ù .! () of
to a subset ð $ is
defined by ' ( +* )-, . Thus, ' ( .

© 2001 by CRC Press LLC


Symbol Explanation
/1032 The range restriction of /54.687 to the subset 9;: 6 is
defined by /80 2=< /?>A@CBED 9GF . The double-bar notation is
used to focus attention on the fact that the restriction is
applied to the second coordinate of / : BHDI6 . Thus if
J <LKM 4IBHN/O@ M 4
F 9QP , then /10R254 9S .
/T UWVYX 2[Z If /A4"67 , \]: B , and 9^: 6 , then the restriction of / to \
and 9 is defined as /T UWVYX 2[Z < /+>_@ \ D 9GF . Thus if
J <LK` 4 N/a@ ` 4
\ F 9bP , /T UcVdX 2Z 4 98S .
/T e Let B and f be subsets of the same topological space. The
extension of / 4.67 to g 4.61h is defined by
5
/T eO@ M F <ji @ @ M M Fkml MM 4I
O
/
4
B
g Fnkml fpo B.q
@r/T gsFut @v/OwxT /y[TuzRz3zT /{ F Row concatenation of images / and g , respectively the row
concatenation of images / w t / y tu|R|3|t / { .
}~ / € ‚
Column concatenation of images / and g .
ƒ
g
„ C@ / „ „ C@ / 4.‡‰7
F If /A4"67 „‹and
Š /
Nx6†…ˆ‡ , then the image F is
„
given by
@C/ F L
, i.e., „
< K @ M tŒ @ M FF N Œ @ M F < @C/O@ M FFut M 4IB P .
/ ŠŽ„ „
If N f …B and /A4"67 , the induced image /
ŠŽ„ 4"6h
Ž
Š „ „ is
defined by / <K @v‘ t /O@ @C‘ FF F N’‘.4 f“P .
/Ž” g If ”
is a binary operation on 6 , then an induced operation on
67 can be defined. Let / t g 4.68• ; the induced operation is
given by /Ž” g <LK @ M tŒ @ M FF N Œ @—– F < /a@ M F ” g @ M Ft M 4IB P .
˜ ”‰/ ˜
Let 4"6 , /A4 67 , and ” be a binary operation on 6 . An
˜ ”™/ <šK scalar
induced
@ M tŒ @ M FF N Œ @ M F < ˜ ”™/O@ M F3t M 4IB P .
operation on images is defined by

UŸ
/e
Let / t g 4"›7 ; /œe <ž @ M t Œ @ M F F N Œ @ M F < /O@ M F e Z t M 4AB.  .
¡W¢’£ / / g 4†@ ›¤ F 7 ;
e
¡W¢3£ / t <j
Let
¥ @ M tŒ @ M FF N Œ @ M F < ¡c¢3£ e UŸ Z /O@ – Ft M 4AB§¦ .
e
/©¨ If /A4"67 and 6 has a conjugation operation *, then the
pointwise conjugate of image / , /d¨@ M F < @r/O@ M F F .
¨
ª / ª /
ª Nx6denotes reduction by a generic reduce operation
7-…ˆ6 (Section 1.4).
The following four items are specific examples of the global reduce operation. Each
assumes /A4"›7 and B <K3M w t M y t3|R|3|t M { P .

© 2001 by CRC Press LLC


Symbol Explanation
«­¬ «E¬¯®°¬O±v²³´Oµ^¬O±v²1¶3´Oµš·R·3·µ^¬O±r²O¸©´
.
¹ ¬ ¹ ¬¯®°¬O±v²³´Q·¬O±C²1¶3´·x·3·R·3·¬a±v²O¸©´
.
º ¬ º ¬¯®»¬O±C²³¼´O½5¬O±r²1¶R´O½†·3·R·½5¬O±r²O¸©´
.
¾ ¬ ¾ ¬¯®»¬O±C² ³ ´O¿5¬O±r² ¶ ´O¿†·3·R·¿5¬O±r² ¸ ´
.

¬?ÀbÁ ¬+ÀbÁ.®Ã‰±r¬=·ÁQ´®Ä« ±v¬a±È²1´·uÁb±v²1´ ´


Dot product,
ÅÆÇ .
¬É ¬
Complementation of a set-valued image .
¬©Ê ¬
Complementation of a Boolean image .
¬Ë ¬
Transpose of image .

Templates and Template Operations

Symbol Explanation
ÌÎÍ ÏÍCÐ Bold, lowercase characters are used to represent templates.
Usually characters from the middle of the alphabet are used
as template variables.

ÏÒÑÔÓCÕ ÇbÖR× A template is an image whose pixel values are images. In


particular, an Õ -valued template from Ø to Ù is a function
Ï+Ú ØEÛ Õ Ç . Thus, ÏÒÑ Ó Õ Ç Ö × and Ï is an Õ Ç -valued
image on Ø .
Ï3Ü Ï Ñ Ó Õ Ç Ö × . For each Ý Ñ Ø , Ï Ü ® Ï ± Ý ´ . The image
Ò
Ï3ܯÑ"Õ Ç is given by ÏRÜ ®Þαv² ÍÏRÜ v± ²1´´ Ú ² Ñ †
Let
Ù ß.
à ± ÏRÜ ´ Þá Í â ÏÒÑ Ó Õ Ç Ö × , then the support of Ï is
If Õ;Ñ à ß ± Ï and
´Ü
à ± Ï Ü ´Q®LbyÞ² Ñ
denoted and±r²1is´Òdefined
®Ã
ã ä by
Ù ÚÏ Ü ß.
à8å ± Ï Ü ´ á Çå Ö × àOå ± Ï Ü ´Q®LÞ² Ñ ±r²1´Ò®Ã ã æ
If ÏÒÑ Ó , then Ù ÚÏ Ü ß.
àsç å ± Ï Ü ´ á Çç å Ö × à ç å ± ÏRÜ ´Q®LÞ² Ñ ±v²1´è®ã é™æ
If ÏÒÑ Ó , then ٠ڒÏRÜ ß .
à8ê å ± 3Ï Ü ´ á Çê å ÖR× à ê å ± Ï Ü ´Q®LÞ² Ñ ±v²1´è®Ãã ëÒæ
If ÏÒÑ-Ó , then Ù Ú’Ï Ü ß .

© 2001 by CRC Press LLC


Symbol Explanation
ìÎíïîdð A parameterized ñ -valued template from ò to ó with
parameters in ô is a function of the form
ì+õ ôšöø÷CñùŽúRû .
ì3ü ìÒý ÷ ñsù ú û . ì3üOý ÷ ñ ú ù
Let
ì3ü þdívÿ°ìð The transpose û is defined as
 í 1 ð .

Image-Template Operations


In the table below, ó is a finite subset of .

Symbol Explanation
 ì

í ð ý ì+ý
Let ñ be a semiring and  ñù , ÷Èñsì ùŽúRû , then
the generic right convolution product of  with is defined
ìsívÿ í1 ð ì  í1 ð 
as   írÿððŽõÿ†ý ò  írÿ
ð
 
ì  ìÒý
With the conditions above, except that now
ì ÷ ñ û ú ù , the

generic left convolution product of with is defined as
ì  !
írÿ " íWÿð ðbõÿ;ý ò  rí ÿ#
ð í%1 ð ì þ ívÿð 
$ 
' & ì *  ý ý +.- 0/
Let ò)( , ñù , and ìÒý ÷ ñsù ú û , where ñ , .
The right linear convolution product is defined as
' & ì21
èívÿ 3 íWÿð ðbõÿ“ý ò  ívÿ465
ð
þ87  í%1 EDð ì  í%1 Fð G
ì &  ù:98ìÒ;=ý <?>A@CB
With the conditions above, except that ÷Cñ û ú ù , the left
linear convolution product is defined as
ì &  )HIJ rí ÿ "  íWÿð ðŽõ’ÿ.ý ò $ íWÿð 5  í%1 EDð ì þ írÿELð M
þ87 í ð N
ù:98; >K@
PQ
O R R
For S
TVUWXY and T[ZUWXY]\^ , the right morphological
max convolution product is defined by

S` _ RbadcfeAgh"i:egkjlj:mng Tpo hiqe%gj4s8a t r S e%}kj~RC€e%}kjCƒ‚


W:u8v8w8x y?zA{.|
R `_ S R
For S
TVUWXY and T Z U ^XY \ W , the left morphological max
convolution product is defined by
R ` _ S a…† ‡„ e%gqh3iqeˆg4j"j mCg Tpo hi:eˆgja r eA}kj~GR s eg4j=Š ‹ ‚
s8t e S j Œ
W:u8v wnx z‰{
SP`  R R
For S'TVUWXY and T[ZUŽWXkY]\$^ , the right morphological min
convolution product is defined by

S`  Rba c eAg:h"iqeˆg4j"j:mng To hiqeˆgjs8a t  S eA}kj~f“R  eA}kj  ‚


Wqu’‘ x y?z { |
© 2001 by CRC Press LLC
Symbol Explanation
” –
• — —
˜V™š›œ ” ˜[™ž›œ]Ÿ š
For and , the left morphological min
convolution product is defined by
• —’¢…¤ ¥€£ ¦%§q¨A©q¦%§4ª"ª «C§ ˜ ¬ ¨$©:¦ˆ§ª ¢ ­ — ¦¶kªk·f¸ ” ® ¦§ª=¹ º
” –¡
¦%³3´ ª »G¼
®8¯
š °8±=² µ
—'¾ ½ ” ž
For
—
˜  ™0¿ÁÀœ Ÿ š and ” ˜#  ™q¿Àœ Ÿ š à , the right
multiplicative max convolution product is defined by
— ¾ ½ ” ¢dÄ ¦%§q¨3©q¦ˆ§ª3ª «C§ ˜f¬ ¨l©q¦§4ª Æ¢ Å ³ — ¦%¶kªÊÉ ”$Ë ¦%¶kª$Ì
®8¯ šq°’±8Ç µCÈ ¼
” ¾½ —
For
—'˜ÍA™qœ…¿ÁÀ Ÿ š and ” ˜  A™q¿À œÎž Ÿ à š , the left multiplicative
max convolution product is defined by
” ¾ ½ —’¢…¤ ¥€£ ¦%§q¨3©q¦ˆ§ª3ª «C§ ˜f¬ ¨©q¦%§4ª ¢ Å ³ — ¦%¶kª É ” ® ¦§4ªE¹ º
¦ ´ª »Ï¼
®8¯ š:°8± µ
— •¾ ” ž
For
—
˜  ™q¿Àœ Ÿ š and ” ˜#  ™q¿Àœ Ÿ š à , the right
multiplicative min convolution product is defined by
— •¾ ” ¢dÄ ¦%§q¨3©q¦ˆ§4ª"ª «C§ ˜p¬ ¨l©q¦%§ª ¢ ­ ³ — ¦%¶kªqɸ ”Ë ¦A¶kªÌ
®8¯ :
š °8± ² Ç µCÈ ¼
” •¾ — š
For
—'˜  ™q¿ÁÀœ Ÿ š and ” ˜   ™q¿Àœ Ÿ ž à , the left multiplicative
min convolution product is defined by
” •¾ —=¢…¤ ¥€£ ¦§:¨"©:¦ˆ§ª3ª «n§ ˜p¬ ¨©q¦%§ª ¢ ­ %¦ ³ — ¦Aª ¶kªqÉ4¸ ” ® ¦§4ªE¹ º
´ »Ï¼
®8¯ š:°8± ² µ

Neighborhoods and Neighborhood Operations

Symbol Explanation
Ð ¨lÑ
Italic uppercase characters are used to denote neighborhoods.
Ñ ˜[Ònš Ÿ ž
A neighborhood is an image whose pixel values are sets of
¬
points. InÑÔ « ¬ÖÕ×ÒCš a neighborhood from to Ó is a
particular,
function .
Ñ,¦?ØÙª ¬
A parameterized neighborhood Ñ) « Ó with parameters
 ÒCš Ÿ ž .
from to
in Ú is a function of the form Ú Õ
Ñ ¸ Ñ ˜  ÒCš Ÿ ž Ñ'¸ ˜  ÒCž Ÿ š
Ñ'¸¦¶kª
Let §
¢…Û ˜¬ C
«
, the¶ Ü
Ñ %
¦
transpose
˜ 4
§ Þ
ª Ý is defined as
¶ ˜ Ñ,¦%§ª€ßáà'§ ˜ãâ ¸¦%¶kª , that is,
.
Ñ¡äå¾ · Ñdæ Ñ]ä Ñdæ
Ñ,¦§4dilation
The ª ¢ ç of by is defined by
è ¯=éê3ë?ì=íEî3ï]ð$î%ñòó[îAô'õñ4ò3ò .
© 2001 by CRC Press LLC
Image-Neighborhood Operations

In the table below, ö is a finite subset of ÷ø .

Symbol Explanation
ùúÊû ü ú ù ú
 
  þ ùú  þ  .
If þ
ýÿ , then
"!# ý  ùú þ  ú   , and reduce operation
$% ù&ú
' ù ,, ýÆ
Given þ

defined as (
 !#  $ 
  ,

-
 
  $.0/ ,

1
 of  with ý is

 
"!# ý 4 ( 56 ý*(  )+)7( )  )  þ8 6 (  ) $ 
 ( 23. ) . Thus,
the generic right reduction

!#  ú 
ý
 except that now ýÖþ 
9
With the conditions above, , the

A( ý
generic !#  ) (  !# ý;:<) .
left reduction of with is defined as

>=# 
Given 
þã' ÷  , and the image average function
ý
? ÷  ÷ , the right reduction of with ý yields the
( @=# ý*)+(  ) ? 
,0  .
neighborhood averaging operation,

%# A Given 
C
 
ý
B  ÷  þã' ÷ ÷ , ,and the image median function
the right reduction of with ý yields the

(  # A ý)D(  ) B 
,-  .
neighborhood median filtered image,

Matrix and Vector Operations

In the table below, E and F represent matrices.

Symbol Explanation

EHG The conjugate of matrix E .

EI: The transpose of matrix E .

E JF , EHF
K The matrix product of matrices E and F .

E LMF The tensor product of matrices E and F .

E>#PN O F The p-product of matrices E and F .

E># N O: F E F
E># N O: F F&:3# N O EQ:  :
The dual p-product of matrices and , defined by
.

References
[1] G. Ritter, “Image algebra.” Unpublished manuscript, available via anonymous ftp from
ftp://ftp.cise.ufl.edu/pub/src/ia/documents, 1994.

© 2001 by CRC Press LLC


To our brothers,
Friedrich Karl and
Scott Winfield

© 2001 by CRC Press LLC


Contents

1. IMAGE ALGEBRA
1.1. Introduction
1.2. Point Sets
1.3. Value Sets
1.4. Images
1.5. Templates
1.6. Recursive Templates
1.7. Neighborhoods
1.8. The p-Product
1.9. Exercises
1.10. References

2. IMAGE ENHANCEMENT TECHNIQUES


2.1. Introduction
2.2. Averaging of Multiple Images
2.3. Local Averaging
2.4. Variable Local Averaging
2.5. Iterative Conditional Local Averaging
2.6. Gaussian Smoothing
2.7. Max-Min Sharpening Transform
2.8. Smoothing Binary Images by Association
2.9. Median Filter
2.10. Unsharp Masking
2.11. Local Area Contrast Enhancement
2.12. Histogram Equalization
2.13. Histogram Modification
2.14. Lowpass Filtering
2.15. Highpass Filtering
2.16. Exercises
2.17. References

3. EDGE DETECTION AND BOUNDARY FINDING


TECHNIQUES
3.1. Introduction
3.2. Binary Image Boundaries
3.3. Edge Enhancement by Discrete Differencing
3.4. Roberts Edge Detector
3.5. Prewitt Edge Detector
3.6. Sobel Edge Detector
3.7. Wallis Logarithmic Edge Detection
3.8. Frei-Chen Edge and Line Detection
© 2001 by CRC Press LLC
3.9. Kirsch Edge Detector
3.10. Directional Edge Detection
3.11. Product of the Difference of Averages
3.12. Canny Edge Detection
3.13. Crack Edge Detection
3.14. Marr-Hildreth Edge Detection
3.15. Local Edge Detection in Three-Dimensional Images
3.16. Hierarchical Edge Detection
3.17. Edge Detection Using K-Forms
3.18. Hueckel Edge Operator
3.19. Divide-and-Conquer Boundary Detection
3.20. Edge Following as Dynamic Programming
3.21. Exercises
3.22. References

4. THRESHOLDING TECHNIQUES
4.1. Introduction
4.2. Global Thresholding
4.3. Semithresholding
4.4. Multilevel Thresholding
4.5. Variable Thresholding
4.6. Threshold Selection Using Mean and Standard Deviation
4.7. Threshold Selection by Maximizing Between-Class Variance
4.8. Threshold Selection Using a Simple Image Statistic
4.9. Exercises
4.10. References

5. THINNING AND SKELETONIZING


5.1. Introduction
5.2. Pavlidis Thinning Algorithm
5.3. Medial Axis Transform (MAT)
5.4. Distance Transforms
5.5. Zhang-Suen Skeletonizing
5.6. Zhang-Suen Transform — Modified to Preserve Homotopy
5.7. Thinning Edge Magnitude Images
5.8. Exercises
5.9. References

6. CONNECTED COMPONENT ALGORITHMS


6.1. Introduction
6.2. Component Labeling for Binary Images
6.3. Labeling Components with Sequential Labels
6.4. Counting Connected Components by Shrinking
© 2001 by CRC Press LLC
6.5. Pruning of Connected Components
6.6. Hole Filling
6.7. Exercises
6.8. References

7. MORPHOLOGICAL TRANSFORMS AND TECHNIQUES


7.1. Introduction
7.2. Basic Morphological Operations: Boolean Dilations and Erosions
7.3. Opening and Closing
7.4. Salt and Pepper Noise Removal
7.5. The Hit-and-Miss Transform
7.6. Gray Value Dilations, Erosions, Openings, and Closings
7.7. The Rolling Ball Algorithm
7.8. Exercises
7.9. References

8. LINEAR IMAGE TRANSFORMS


8.1. Introduction
8.2. Fourier Transform
8.3. Centering the Fourier Transform
8.4. Fast Fourier Transform
8.5. Discrete Cosine Transform
8.6. Walsh Transform
8.7. The Haar Wavelet Transform
8.8. Daubechies Wavelet Transforms
8.9. Exercises
8.10. References

9. PATTERN MATCHING AND SHAPE DETECTION


9.1. Introduction
9.2. Pattern Matching Using Correlation
9.3. Pattern Matching in the Frequency Domain
9.4. Rotation Invariant Pattern Matching
9.5. Rotation and Scale Invariant Pattern Matching
9.6. Line Detection Using the Hough Transform
9.7. Detecting Ellipses Using the Hough Transform
9.8. Generalized Hough Algorithm for Shape Detection
9.9. Exercises
9.10. References

10. IMAGE FEATURES AND DESCRIPTORS


10.1. Introduction
10.2. Area and Perimeter
© 2001 by CRC Press LLC
10.3. Euler Number
10.4. Chain Code Extraction and Correlation
10.5. Region Adjacency
10.6. Inclusion Relation
10.7. Quadtree Extraction
10.8. Position, Orientation, and Symmetry
10.9. Region Description Using Moments
10.10. Histogram
10.11. Cumulative Histogram
10.12. Texture Descriptors: Spatial Gray Level Dependence Statistics
10.13. Exercises
10.14. References

11. GEOMETRIC IMAGE TRANSFORMATIONS


11.1. Introduction
11.2. Image Reflection and Magnification
11.3. Nearest Neighbor Image Rotation
11.4. Image Rotation using Bilinear Interpolation
11.5. Application of Image Rotation to the Computation of Directional Edge
Templates
11.6. General Affine Transforms
11.7. Fractal Constructs
11.8. Iterated Function Systems
11.9. Exercises
11.10. References

12. NEURAL NETWORKS AND CELLULAR AUTOMATA


12.1. Introduction
12.2. Hopfield Neural Network
12.3. Bidirectional Associative Memory (BAM)
12.4. Hamming Net
12.5. Single-Layer Perceptron (SLP)
12.6. Multilayer Perceptron (MLP)
12.7. Cellular Automata and Life
12.8. Solving Mazes Using Cellular Automata
12.9. Exercises
12.10. References

APPENDIX. THE IMAGE ALGEBRA C++ LIBRARY

© 2001 by CRC Press LLC

Das könnte Ihnen auch gefallen