• No results found

Computer Vision Algorithms in Image Algebra

N/A
N/A
Protected

Academic year: 2021

Share "Computer Vision Algorithms in Image Algebra"

Copied!
425
0
0

Loading.... (view fulltext now)

Full text

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

(2) 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..

(3) 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.

(4) Preface The present edition differs from the first in several significant aspects. Typographical 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.

(5) 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 encouragement 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.

(6) 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.    

(7)     . %  %'&  %)( %+* %'*& %)2 * >  >?&  >@(  >BADC E. 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.. %* ,  - ""!#!!#.0/1"$ . %'*& ,    "!#!!#.+$ . The set %'2 * 3   /4.6578#!"!"! /98  #8#!!#!:.;/<=$ . The set The set. The set of real numbers, positive real numbers, negative real numbers, and positive real numbers including 0, respectively.. F. The set of complex numbers.. F(G F?2 G. The set. =J K KL M. The empty set (the set that has no elements).. F?G I. © 2001 by CRC Press LLC. An arbitrary set of values.. F. H $ . F / H $. The set unioned with F / H H $. The set unioned with unioned with. The power set of. (the set of all subsets of. "is an element of." "is not an element of." "is a subset of.". )..

(8) Symbol. NPORQ. O N `8a-b ` Oq N r rts)u Oz N r rts)u NPRQ  N `8a-b ` q N r rts)u z N r rts)u NŠ‰[Q ’q N r rts)u ’z N r rts)u ˜q Nœ›@Q N{Ÿ   ¡–¢-£ ¤Œ N{   ¥§¦ ~  #¨ Œ¤N{. Explanation. NTSUQPV3WX6YX6Z[N]\^X6Z[Q0_ . W N _ Let set c . O ` N ` `8a-V3b Wbed[Y8a d[family Z[N `fofe \^?sets g-hjilk"indexed g-m hB\n k4byopZ anc indexing _. `8a-b qO N r VwN u SUN0x?Sy#y"y S0N q. rvs)u Oz N r V3W#d{YdUZ[N r+e \^|m\}0k4~|Z{'€@_ . rvs)u Intersection NT‚UQPV3WX6YX6Z[Nƒg-n „0X†Z{Q0_ . W N _ Let c .  ` N ` `8a-V3b Wbed[Y8a d[family Z[N ` ofe \^sets g=ili indexed opZ c _ . by an indexing set `8a-b q N VwN ‚UN x ‚y#y"y ‚0N q. rvs)u r u z N r V3W#d{YdUZ[N r e \^?g=ili ~‡Zˆ'€?_ . rvs)u Cartesian product N‹‰[QPVW8Œd)Ž:8‘YdUZ{N{Ž6Z[Q0_ . ’ q N r V3W-Œ“d u Žd x=Ž#y"y#yŽ:d q ‘Yd r Z”N r _ . rvs)u ’ z N r V3W-Œ“d u Žd x=Ž:d–•—y"y"y @Yd r Z{N r _ . rvs)u ˜ ˜ qšV ’ q ˜ . The Cartesian product of ™ copies of , i.e., rts)u Set difference N Q Let NT›@QPand V3WdUZ[beNŠsubsets YdZ[ž Q0of_ . some universal set  , Union. N”Ÿ'V  ›@N. Complement , where. . is the universal set that contains. N The cardinality of the set. .. A function that randomly selects an element from the set. Point and Point Set Operations Symbol. ©«ªR¬ ©[¯¬. © 2001 by CRC Press LLC. N. Explanation. V Œd u ª  u Ž)y#y"y§Ž d q ª  q  . © Ž ¬ pZ ­‡q , then ©0ª®¬ , Ž pZ ­‡q , then ©U¯¬ , V Œd u ¯  u Ž)y#y"y§Ž d q ¯  q  . If © ¬ If. N. .. ..

(9) Symbol. °{±² °À¿=² °«ÁU² °«ÂU² °'à ² É Ãj°. °À˲ °ÅU² ° Ñ ² Б° Õ ° Ö × ° Ø Ù °§Ú ÛjÜ ¸Ý° ¾ Þ° ß° Á|° Â|° á° áÎ á° áº á ° á#ç è–éÝê ¸° ¾ ì Ìí ì Јí ì Ìø © 2001 by CRC Press LLC. Explanation. °?³²´pµ‡¶ , then °[± ²{·3¸¹+º¼»8º-³'½"½#½§³ ¹ ¶ » ¶ ¾ . If °?³²´pµ‡¶ , then °À¿=²{·,¸¹'º ¿»8º#³)½#½"½§³ ¹ ¶ ¿8» ¶ ¾ . If °?³²´pµ‡¶ , then °0ÁU²ˆ·¸ ¹+º+Á[»8º-³'½#½"½'³ ¹ ¶ ÁU» ¶ ¾ . If °?³²´pµ‡¶ , then °0ÂU²ˆ·¸ ¹ º Â[» º ³'½#½"½'³ ¹ ¶ ÂU» ¶ ¾ . In general, if °?³²´ˆµ|¶ , and Ã{ĵ®Å{µˆÆǵ , then °'à ²È·3¸¹ º à » º ³'½"½"½ ³§¹ ¶ à » ¶ ¾ . É ´ˆµ °´{µ|¶ Ã{Ä8µÊÅ[µÆǵ , then If É Ã °ˆ·3¸ ,É Ã§¹ º ³'½#½",½§and ³ É Ã ¹ ¶ ¾ . If °?³²´pµ‡¶ , then °À˲{·¹'º »8ºÍÌʹ§Î"»-Î?̃±"±#±'Ìʹ ¶ » ¶ . 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¸ ¹ º Ú ³'½#½"½§³ ¹ ¶ Ú ¾ . If °{·¸ ¹ º ³¹ Î ³"½"½#½³:¹ ¶ ¾ ´pµ‡¶ , then ÛjÜ ¸Ý° ¾ ·1¹ Ü . Þ If °´{µ|¶ , then °”·¹'º|Ìʹ§Î?̃±"±#±'Ìʹ ¶ . ß If °´{µ|¶ , then °[·7¹+º¼¹§Î6±#±"±–¹ ¶ . If °´{µ|¶ , then Á|°”·¹+º+Á[¹§Î?Áà±#±"± Á¹ ¶ . If °´{µ|¶ , then Â|°”·¹ º Â[¹ Î Âà±#±"± ¹ ¶ . Î Î á á If °´{µ|¶ , then ° Î ·àâ ¹ º Ìã±#±"± Ìä¹ ¶ . á á If °´{µ|¶ , then ° º ·æå ¹'ºåÌ7å ¹§Îå ̃±"±"±DÌãå ¹ ¶ å . á á#ç ·æå ¹+º=åÁå ¹ Î8å Áà±#±"± Áæå ¹ ¶ å . If °´{µ|¶ , then ° è–é¤ê ¸¤° ¾ ·ë . If °´{µ|¶ , then ì ì ìœö ë è ²´”í÷ . If ³ íïîðµ|¶ , then Ìíñ·3ò#°0Ì®²óÄô°õ´ ì ì ìœö ë è ²´”í÷ . If ³ íïîðµ|¶ , then Ð{íñ·3ò#°UвóÄô°õ´ ì î1µ|¶ and Û ´{µ|¶ , then ì Ìøˆ·3ò#°0Ì®øœÄô°{´ ì ÷ . If If.

(10) Symbol. Explanation. ùûúˆü ù ù! ù!+,. ù]ý1þ|ÿ and  þ|ÿ , then ùæú [úü ˆ ü   ù

(11) . ùïý ðþ|ÿ , then ù   ù   

(12) . If ùïý ðþ|ÿ , then ù!"#$   ù"%'&)(   * 

(13) . If ùïý ðþ|ÿ If ù-+.#$/ , then ù.%'&)(   * ù0

(14) . ùïý ðþ|ÿ , then ù1.#4356798!   ù %:&)(;7  

(15) . If ù]ý1þ|ÿ , then ú‘"ù 8ú<=  If  ù>

(16) . ? #  þA@,%'&)( !* ù

(17) ù]ý1þ|ÿ , then ù" If   . ù]ý1þ|ÿ B$C 3Ý-ù 86 supremum of ù . If If ù"ED$F9, G4then HHHIF ÿ

(18) 4 then the B$C 3Ý-ù 86JEDLK9G6KH$HHMK, ÿ . ù For a N point set order O , LP< ù QR O with 9PSUTVtotal   ù 9P

(19) . ù]ý1þ|ÿ WY&)XZù-3 86 ù If ù" D F , G then H$HHF ÿ

(20) , thentheWY&)XZùinfimum -3 86J ofDL[  .G\If[ H$HH [  ÿ . ù For a ] point set total order O ,  P  ù QR)^ Owith _ UTV  ù P

(21) . ù]ý1þ|ÿ , then If `a W `b 3-ù 8  ùc3d%'&)(:efhg `a  Bb & b f b e b &ZiI8 . ù]ý1þ|ÿ , then ` %'¤ù(j-3 8Eki aVb` %'('WY&)%'fhWlUùiIgmX . In If ù  D nnn ÿ

(22) , then ` %'¤ù(j!3 8Eo& . particular, if If. ù21, ú‘ù ù? BC 3Ý-ù 8 N ù W5&)X)ù!3 8 ] ù `a  W $` b 3¤!ù 8 ` %'¤ù(j!3 8 Morphology. In the following table, Symbol. pt pyx pyz. p 1-q p‚ q. p q,Mr and s. Explanation. þ‡ÿ ..  3wvjIvj$HHHMv8  þ‡ÿ . u # p x   þ|! ÿ /* p

(23) . The complement of p ; i.e.,  pyz ${}|~€ {  p

(24) . Minkowski addition is defined as p 1 q#${m|~€ {  p F~  qy

(25) (Section 7.2). qƒ3 pyx 1 q t 8 x Minkowski subtraction is defined as p,‚ The reflection of. (Section 7.2). © 2001 by CRC Press LLC. denote subsets of. p. across the origin.

(26) Symbol. Explanation. „ƒ <†. „ † is denoted „ <† and is defined by „ <†ƒ‡ˆd„,‰4†‹ŠŒ-by† (Section 7.3). „ † is denoted „Ž<† and is defined by The closing „Ž<†ƒ ‡ˆd„ofŒ†‹Šby‰S† (Section 7.3). ’ ‘ # ‡ w ˆ  “  ”. • Š Let be an ordered pair of structuring elements. „ is given by The hit-and-miss „J‘’‡#–—/˜4“™!transform š›„œžVŸof• the ™,šset„¡5¢ (Section 7.5). The opening of. „ƒŽ<† „ƒ/‘. Functions and Scalar Operations. Symbol. £ ˜ ¤¥§¦ ©'ª«,¬'­d® ˆ £ Š ¯ ¬'®±°:² ˆ £ Š. A£ ¶A· ¦‹¸ £6º » £Eº ½ ° £ £‹É ° £Ê ° Ë Ê$£ º £Eº © 2001 by CRC Press LLC. £. is a function from. ¤. Explanation into. ¦<¨. £ ˜ ¤¥§¦ is the set ¤ ¨ £ ˜¤¥§¦ is the set The of the function £– ˆU³±range Š˜:³´!¤µ¢ . £ The inverse of the function . £ ´-¦‹¸ , then ¤ ¦ The £ ˜¹¤.set¥§of¦all¨ functions from into , i.e., if £ ˜S¤.¥§¦ and a subset ¼ š›¤ , the Given a function £ £Lº » ˜ ¥§¦ , is defined by to ¼ ¬ , restriction £Lº » ˆ ¬ ŠE‡ £ ofˆ ¬ Š for ´ ¼ .¼ £ ˜ ¼ ¥§¦ and ° ˜4¾¥§¦ , the extension of £ to ° is Given ŠÁÀÃÂ\³´ ¼ £Eº ½ ˆ³±ŠE‡=¿ °£ ˆwˆ³±³VŠÄ ÀÃÂ\³´¾/Å ¼ ¨ defined by £ ˜¤Æ¥§¦ and ° ˜4¦¥RÇ , the Given two functions ° £  ˜  ¤ ¥RÇ is defined by composition ˆ ° £ ŠÈˆw³±ŠE‡ ° ˆ £ ˆ³VŠFŠ , for every ³´ ¤ . £ ° 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 £ ´ÍÏÎ , function, ˆ Ë Ê£ ŠÐˆd³VŠEand ‡ Ë Ì Ê beˆ £ ˆa³±Šreal Š. or complex number, then º £Eº ˆw³±Š6‡ º £ ˆw³±Š º , where £ is a real (or complex)-valued º £ ˆw³±Š º denotes the absolute value (or function, and £ ˆ³VŠ . magnitude) of The domain of the function.

(27) Symbol. ÑÐÒ. Ñ ÒÓÔÆÕÖÔ is given by Ñ Òm×ØÚÙ6ÛØ . Ý onto the ã th coordinate is defined The projection functionØ Ü4ÙL d × Ø Ø ÛØ Ý . 4 Ü Ý Ý  â  ä  å $ å M å ä  ä $ å  å M å ä by Þ Ô The cardinality of the set . The identity function. ÜSÝ Ó!àhß áAÞ â Ô à Õ§Ô Ý æç'èé ×YÔ Ù æê±ëì5æ$í ×YÔ Ù Ømî!ï Ømò!ï ó Øô õ Øö ÷ Øùø Øú ëé ï . Explanation. ×dØVÙ. Ô. A function which randomly selects an element from the set .. Ø ä mï ðñ , Ø î!ï is the maximum of Ø and ï . Ø ïmðñ , Ø ò!ï is the minimun of Ø and ï . For ä Øð ñ 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 . Øð ñ the round function returns the nearest integer to Ø . For For. If there are two such integers it yields the integer with greater magnitude.. Ø ä mï ðû , Øú ëé ïmÛ è if there exists ü ä è ð û mè ý ï such that ØÛï üÿþ è .. For. Ñ Øð ×UرÙEÛ

(28)  . The characteristic function   . .  . . with. is defined by. Images and Image Operations Symbol.  ä <  ä. ð !#  " ð !# % ð !# & ' ( © 2001 by CRC Press LLC. 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 the value set of  and $ the spatial domain of  .. !. Ñ. Ñ. Let be a set with unit . Then whose pixel values are .. !.

(29). Let be a set with zero . Then

(30) whose pixel values are .. Û. ×. The domain restriction of +* )-, defined by ' (.  ð"!# ! Ù. %. !. is called. &. denotes an image, all of denotes an image, all of. to a subset .! () of . Thus, ' ( .. ð. $. is.

(31) 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 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 .. Let B and f extension of. /T e @r/T gsFut @v/OwxT /y[TuzRz3zT /{ F }~ / € ‚ g „ C@ / F. ƒ. / ŠŽ„ /Ž” g ˜ ”‰/ /e ¡W¢’£ / e /©¨ ª /. /. to. be subsets of the same topological space. The. / 4.67 to g 4.61h is defined by 5 O / B /T eO@ M F <ji @ @ M M Fkml MM 4I 4 g Fnkml fpo B.q 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 . „. Nx6† ˆ‡ , then the image If /A4"67 „‹and Š / given by , i.e., „ „. „ C@ / 4.‡‰7 F. is. @C/ F L < K @ M tŒ @ M FF N Œ @ M F < @C/O@ M FFut M 4IB P . „ ŠŽ„ 4"6h If N f B and /A4"67 , the induced image / Ž Š „ „ <K @v‘ t /O@ @C‘ FF F N’‘.4 f“P . defined by /. is. is a binary operation on 6 , then an induced operation on 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 . If. 67. ”. ˜. Let 4"6 , /A4 67 , and ” be a binary operation on induced operation on images is defined by ˜ ”™/ <šK scalar @ M tŒ @ M FF N Œ @ M F < ˜ ”™/O@ M F3t M 4IB P .. 6. . An. UŸ /œe <ž @ M t Œ @ M F F N Œ @ M F < /O@ M F e Z t M 4AB.  / g 4†@ ›¤ F 7 ; Let ¡W¢3£ / t <j ¥ @ 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 . ª / reduction by a generic reduce operation ª Nx6denotes 7- ˆ6 (Section 1.4). Let. / t g 4"›7. ;. 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. \. ..

(32) 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Á ¬É ¬©Ê ¬Ë. Dot product,. .. .. . .. ¬+ÀbÁ.®Ã‰±r¬=·ÁQ´®Ä« ±v¬a±È²1´·uÁb±v²1´ ´ . ÅÆÇ ¬. Complementation of a set-valued image .. ¬. Complementation of a Boolean image .. ¬. Transpose of image .. Templates and Template Operations. Symbol. ÌÎÍ ÏÍCÐ ÏÒÑÔÓCÕ ÇbÖR×. Ï3Ü à ± ÏRÜ ´ à8å ± Ï Ü ´ àsç å ± Ï Ü ´ à8ê å ± 3Ï Ü ´ © 2001 by CRC Press LLC. Explanation Bold, lowercase characters are used to represent templates. Usually characters from the middle of the alphabet are used as template variables. 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 Ø .. Ï Ñ Ó Õ Ç Ö × . For each Ý Ñ Ø , Ï Ü ® Ï ± Ý ´ . The image Ò Ï3ܯÑ"Õ Ç is given by ÏRÜ ®Þαv² ÍÏRÜ v± ²1´´ Ú ² Ñ † Ù ß. Þá Í â ÏÒÑ Ó Õ Ç Ö × , then the support of Ï is If Õ;Ñ ´Ü à ß ± Ï and denoted and±r²1is´Òdefined by ®Ã ã ä à ± Ï Ü ´Q®LbyÞ² Ñ Ù ÚÏ Ü ß. ±r²1´Ò®Ã ã æ á Çå Ö × àOå ± Ï Ü ´Q®LÞ² Ñ If ÏÒÑ Ó , then Ù ÚÏ Ü ß. ±v²1´è® ã é™æ á Çç å Ö × à ç å ± ÏRÜ ´Q®LÞ² Ñ If ÏÒÑ Ó , then ٠ڒÏRÜ ß ±v²1´è®Ã ã ëÒæ á Çê å ÖR× à ê å ± Ï Ü ´Q®LÞ² Ñ Ù Ú’Ï Ü ß If ÏÒÑ-Ó , then Let. . ..

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

(34)

(35) be a semiring and  the generic right convolution product of  with is defined ìsívÿ ð í1 ð ì  í1 ð 

(36)  írÿððŽõÿ†ý ò

(37)  írÿ as    ìÒý. ÷ ñ û ú ù , the With the conditions above, except that now ì  generic left convolution product of with is defined as ì  ! írÿ. ' & ì. ð í%1 ð ì þ ívÿð 

(38) " íWÿð ðbõÿ;ý ò

(39)  rí ÿ# $  *  ý ý +.-

(40) 0/ Let ò)( , ñù , and ìÒý ÷ ñsù ú û , where ñ ,. .. The right linear convolution product is defined as. èívÿ ' & ì21. ì & . ð  í%1 EDð ì  í%1 Fð G

(41) 3 íWÿð ðbõÿ“ý ò

(42)  ívÿ465 þ87 ù:98ìÒ;=ý <?>A@CB ÷Cñ û ú ù , the left With the conditions above, except that. linear convolution product is defined as. PQ O R. ì &  )HIJ rí ÿ "

(43)  íWÿð ðŽõ’ÿ.ý ò

(44) $ íWÿð 5  í%1 EDð ì þ írÿELð M þ87 í ð N ù:98; >K@ R For S TVUWXY and T[ZUWXY]\^ , the right morphological. max convolution product is defined by. R `_ S. SP`  R. S` _ RbadcfeAgh"i:egkjlj:mng Tpo hiqe%gj4s8a t R. r S e%}kj~RC€e%}kjCƒ‚ W:u8v8w8x y?zA{.|. 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=Š ‹ ‚ e S j Œ s8t W:u8v wnx z‰{ 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. © 2001 by CRC Press LLC.  S eA}kj~f“R  eA}kj  ‚ Wqu’‘ x y?z { |.

(45) 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±=² µ ž — ˜  ™0¿ÁÀœ Ÿ š and ” ˜#  ™q¿Àœ Ÿ š à , the right For. multiplicative max convolution product is defined by. ” ¾½ —. — ¾ ½ ” ¢dÄ ¦%§q¨3©q¦ˆ§ª3ª «C§ ˜f¬ ¨l©q¦§4ª Æ ¢ Å ³ — ¦%¶kªÊÉ ”$Ë ¦%¶kª$Ì ®8¯ šq°’±8Ç µCÈ ¼ —'˜ÍA™qœ ¿ÁÀ Ÿ š and ” ˜  A™q¿À œÎž Ÿ à š , the left multiplicative For. max convolution product is defined by. — •¾ ”. ” ¾ ½ —’¢ ¤ ¥€£ ¦%§q¨3©q¦ˆ§ª3ª «C§ ˜f¬ ¨©q¦%§4ª ¢ Å ³ — ¦%¶kª É ” ® ¦§4ªE¹ º ¦ ´ª »Ï¼ ®8¯ š:°8± µ ž — ˜  ™q¿Àœ Ÿ š and ” ˜#  ™q¿Àœ Ÿ š à , the right For. multiplicative min convolution product is defined by. ” •¾ —. — •¾ ” ¢dÄ ¦%§q¨3©q¦ˆ§4ª"ª «C§ ˜p¬ ¨l©q¦%§ª ¢ ­ ³ — ¦%¶kªqɸ ”Ë ¦A¶kªÌ ®8¯ : ¼ š °8± ² Ç µCÈ š —'˜  ™q¿ÁÀœ Ÿ š and ” ˜   ™q¿Àœ Ÿ ž à , the left multiplicative For. min convolution product is defined by. ” •¾ —=¢ ¤ ¥€£ ¦§:¨"©:¦ˆ§ª3ª «n§ ˜p¬ ¨©q¦%§ª ¢ ­ %¦ ³ — ¦Aª ¶kªqÉ4¸ ” ® ¦§4ªE¹ º ´ »Ï¼ ®8¯ š:°8± ² µ. Neighborhoods and Neighborhood Operations. Symbol. Ð ¨lÑ. Ñ ˜[Ònš Ÿ ž Ñ,¦?ØÙª Ñ ¸ Ñ¡äå¾ · Ñdæ. © 2001 by CRC Press LLC. Explanation Italic uppercase characters are used to denote neighborhoods. A neighborhood is an image whose pixel values are sets of ¬ points. InÑÔ particular, « ¬ÖÕ×ÒCš a neighborhood from to Ó is a function . A parameterized neighborhood Ñ) from « in Ú is a function of the form Ú. ¬ Õ. Ó with parameters  ÒCš Ÿ ž .. to. Ñ ˜  ÒCš Ÿ ž Ñ'¸ ˜  ÒCž Ÿ š , the transpose § C « ¶ Ü Ñ % ¦ 4 § Þ ª Ý ¢ Û ˜¬ ˜ , that is, ¶ ˜ Ñ,¦%§ª€ßáà'§ ˜ãâ ¸¦%¶kª . Ñ]ä Ñdæ The of by is defined by Ñ,¦§4dilation ª ¢ ç è ¯=éê3ë?ì=íEî3ï]ð$î%ñòó[îAô'õñ4ò3ò . Let Ñ'¸¦¶kª. is defined as.

(46) Image-Neighborhood Operations. ö. In the table below, Symbol. ý. !#  ý. >=# %# A. ý. ý. ú. ýÿ þ. If. , then. ù ú. .. Explanation.

(47)     þ ùú  þ  .  ùú þ  ú   , and reduce operation Given þ  $% ù&ú

(48) ' ù ,, ýÆ the generic right reduction of  with ý is !#  .   . $ ,.     ,. 1     $.0/ defined as ( "!# ý 4 ( 56 ý*(  )+)7( )  )  þ8 6 (  ) $   ( 23. ) . Thus, ú  With the conditions above, except that now ýÖþ  , the  with is defined as generic left reduction of 9 !#  ) (  !# ý;:<) . A( ý  Given  þã' ÷  , and the image average function ? ÷  ÷ , the right reduction of with ý yields the neighborhood averaging operation, ( @=# ý*)+(  ) ?  ,0  .   Given  C the image median function  B  ÷  þã' ÷ ÷ , ,and the right reduction of with ý yields the neighborhood median filtered image, (  # A ý)D(  ) B  ,-  .. ùúÊû ü. "!#. ÷ø. is a finite subset of. Matrix and Vector Operations In the table below,. E. and. F. represent matrices.. Symbol. EHG EI: E JF , EHF K E LMF E>#PN O F E># N O: F. Explanation The conjugate of matrix The transpose of matrix. E. E. . .. The matrix product of matrices The tensor product of matrices The p-product of matrices. E># N O: F F&:3# N O EQ:  :. E. E. E. and. The dual p-product of matrices .. E. F. and and . and. F. F. .. F. .. , 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.

(49) To our brothers, Friedrich Karl and Scott Winfield. © 2001 by CRC Press LLC.

(50) Contents 1.. IMAGE ALGEBRA 1.1. 1.2. 1.3. 1.4. 1.5. 1.6. 1.7. 1.8. 1.9. 1.10.. 2.. IMAGE ENHANCEMENT TECHNIQUES 2.1. 2.2. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8. 2.9. 2.10. 2.11. 2.12. 2.13. 2.14. 2.15. 2.16. 2.17.. 3.. Introduction Point Sets Value Sets Images Templates Recursive Templates Neighborhoods The p-Product Exercises References. Introduction Averaging of Multiple Images Local Averaging Variable Local Averaging Iterative Conditional Local Averaging Gaussian Smoothing Max-Min Sharpening Transform Smoothing Binary Images by Association Median Filter Unsharp Masking Local Area Contrast Enhancement Histogram Equalization Histogram Modification Lowpass Filtering Highpass Filtering Exercises References. EDGE DETECTION AND BOUNDARY FINDING TECHNIQUES 3.1. 3.2. 3.3. 3.4. 3.5. 3.6. 3.7. 3.8.. Introduction Binary Image Boundaries Edge Enhancement by Discrete Differencing Roberts Edge Detector Prewitt Edge Detector Sobel Edge Detector Wallis Logarithmic Edge Detection Frei-Chen Edge and Line Detection. © 2001 by CRC Press LLC.

(51) 3.9. 3.10. 3.11. 3.12. 3.13. 3.14. 3.15. 3.16. 3.17. 3.18. 3.19. 3.20. 3.21. 3.22.. 4.. THRESHOLDING TECHNIQUES 4.1. 4.2. 4.3. 4.4. 4.5. 4.6. 4.7. 4.8. 4.9. 4.10.. 5.. Introduction Global Thresholding Semithresholding Multilevel Thresholding Variable Thresholding Threshold Selection Using Mean and Standard Deviation Threshold Selection by Maximizing Between-Class Variance Threshold Selection Using a Simple Image Statistic Exercises References. THINNING AND SKELETONIZING 5.1. 5.2. 5.3. 5.4. 5.5. 5.6. 5.7. 5.8. 5.9.. 6.. Kirsch Edge Detector Directional Edge Detection Product of the Difference of Averages Canny Edge Detection Crack Edge Detection Marr-Hildreth Edge Detection Local Edge Detection in Three-Dimensional Images Hierarchical Edge Detection Edge Detection Using K-Forms Hueckel Edge Operator Divide-and-Conquer Boundary Detection Edge Following as Dynamic Programming Exercises References. Introduction Pavlidis Thinning Algorithm Medial Axis Transform (MAT) Distance Transforms Zhang-Suen Skeletonizing Zhang-Suen Transform — Modified to Preserve Homotopy Thinning Edge Magnitude Images Exercises References. CONNECTED COMPONENT ALGORITHMS 6.1. 6.2. 6.3. 6.4.. Introduction Component Labeling for Binary Images Labeling Components with Sequential Labels Counting Connected Components by Shrinking. © 2001 by CRC Press LLC.

(52) 6.5. 6.6. 6.7. 6.8.. 7.. MORPHOLOGICAL TRANSFORMS AND TECHNIQUES 7.1. 7.2. 7.3. 7.4. 7.5. 7.6. 7.7. 7.8. 7.9.. 8.. Introduction Basic Morphological Operations: Boolean Dilations and Erosions Opening and Closing Salt and Pepper Noise Removal The Hit-and-Miss Transform Gray Value Dilations, Erosions, Openings, and Closings The Rolling Ball Algorithm Exercises References. LINEAR IMAGE TRANSFORMS 8.1. 8.2. 8.3. 8.4. 8.5. 8.6. 8.7. 8.8. 8.9. 8.10.. 9.. Pruning of Connected Components Hole Filling Exercises References. Introduction Fourier Transform Centering the Fourier Transform Fast Fourier Transform Discrete Cosine Transform Walsh Transform The Haar Wavelet Transform Daubechies Wavelet Transforms Exercises References. PATTERN MATCHING AND SHAPE DETECTION 9.1. 9.2. 9.3. 9.4. 9.5. 9.6. 9.7. 9.8. 9.9. 9.10.. Introduction Pattern Matching Using Correlation Pattern Matching in the Frequency Domain Rotation Invariant Pattern Matching Rotation and Scale Invariant Pattern Matching Line Detection Using the Hough Transform Detecting Ellipses Using the Hough Transform Generalized Hough Algorithm for Shape Detection Exercises References. 10. IMAGE FEATURES AND DESCRIPTORS 10.1. 10.2.. Introduction Area and Perimeter. © 2001 by CRC Press LLC.

(53) 10.3. 10.4. 10.5. 10.6. 10.7. 10.8. 10.9. 10.10. 10.11. 10.12. 10.13. 10.14.. Euler Number Chain Code Extraction and Correlation Region Adjacency Inclusion Relation Quadtree Extraction Position, Orientation, and Symmetry Region Description Using Moments Histogram Cumulative Histogram Texture Descriptors: Spatial Gray Level Dependence Statistics Exercises References. 11. GEOMETRIC IMAGE TRANSFORMATIONS 11.1. 11.2. 11.3. 11.4. 11.5.. Introduction Image Reflection and Magnification Nearest Neighbor Image Rotation Image Rotation using Bilinear Interpolation 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. 12.2. 12.3. 12.4. 12.5. 12.6. 12.7. 12.8. 12.9. 12.10.. Introduction Hopfield Neural Network Bidirectional Associative Memory (BAM) Hamming Net Single-Layer Perceptron (SLP) Multilayer Perceptron (MLP) Cellular Automata and Life Solving Mazes Using Cellular Automata Exercises References. APPENDIX. THE IMAGE ALGEBRA C++ LIBRARY. © 2001 by CRC Press LLC.

(54) CHAPTER 1 IMAGE ALGEBRA. 1.1.. Introduction. Since the field of image algebra is a recent development it will be instructive to provide some background information. In the broad sense, image algebra is a mathematical theory concerned with the transformation and analysis of images. Although much emphasis is focused on the analysis and transformation of digital images, the main goal is the establishment of a comprehensive and unifying theory of image transformations, image analysis, and image understanding in the discrete as well as the continuous domain [1]. The idea of establishing a unifying theory for the various concepts and operations encountered in image and signal processing is not new. Over thirty years ago, Unger proposed that many algorithms for image processing and image analysis could be implemented in parallel using cellular array computers [2]. These cellular array computers were inspired by the work of von Neumann in the 1950s [3, 4]. Realization of von Neumann’s cellular array machines was made possible with the advent of VLSI technology. NASA’s massively parallel processor or MPP and the CLIP series of computers developed by Duff and his colleagues represent the classic embodiment of von Neumann’s original automaton [5, 6, 7, 8, 9]. A more general class of cellular array computers are pyramids and Thinking Machines Corporation’s Connection Machines [10, 11, 12]. In an abstract sense, the various versions of Connection Machines are universal cellular automatons with an additional mechanism added for nonlocal communication. Many operations performed by these cellular array machines can be expressed in terms of simple elementary operations. These elementary operations create a mathematical basis for the theoretical formalism capable of expressing a large number of algorithms for image processing and analysis. In fact, a common thread among designers of parallel image processing architectures is the belief that large classes of image transformations can be described by a small set of standard rules that induce these architectures. This belief led to the creation of mathematical formalisms that were used to aid in the design of special-purpose parallel architectures. Matheron and Serra’s Texture Analyzer [13], ERIM’s (Environmental Research Institute of Michigan) Cytocomputer [14, 15, 16], Martin Marietta’s GAPP [17, 18, 19], and Lockheed Martin’s PAL processor [20] are examples of this approach. The formalism associated with these cellular architectures is that of pixel neighborhood arithmetic and mathematical morphology. Mathematical morphology is the part of image processing concerned with image filtering and analysis by structuring elements. It grew out of the early work of Minkowski and Hadwiger [21, 22, 23], and entered the modern era through the work of Matheron and Serra of the Ecole des Mines in Fontainebleau, France [24, 25, 26, 27]. Matheron and Serra not only formulated the modern concepts of morphological image transformations, but also designed and built the Texture Analyzer System. Since those early days, morphological operations have been applied from lowlevel, to intermediate, to high-level vision problems. Among some recent research papers on morphological image processing are Crimmins and Brown [28], Haralick et al. [29, 30], Maragos and Schafer [31, 32, 33], Davidson [34, 35, 36], Dougherty [37, 38], Goutsias [39, 40], Koskinen and Astola [41], and Sivakumar and Goutsias [42].. © 2001 by CRC Press LLC.

(55) 2. CHAPTER 1.. IMAGE ALGEBRA. Serra and Sternberg were the first to unify morphological concepts and methods into a coherent algebraic theory specifically designed for image processing and image analysis. Sternberg was also the first to use the term “image algebra” [43, 44]. In the mid 1980s, Maragos introduced a new theory unifying a large class of linear and nonlinear systems under the theory of mathematical morphology [45]. More recently, Davidson completed the mathematical foundation of mathematical morphology by formulating its embedding into the lattice algebra known as Mini-Max algebra [46, 47, 48]. However, despite these profound accomplishments, morphological methods have some well-known limitations. For example, such fairly common image processing techniques as feature extraction based on convolution, Fourier-like transformations, chain coding, histogram equalization transforms, image rotation, and image registration and rectification are — with the exception of a few simple cases — either extremely difficult or impossible to express in terms of morphological operations. The failure of a morphologically based image algebra to express a fairly straightforward U.S. government-furnished FLIR (forward-looking infrared) algorithm was demonstrated by Miller of Perkin-Elmer [49]. The failure of an image algebra based solely on morphological operations to provide a universal image processing algebra is due to its set-theoretic formulation, which rests on the Minkowski addition and subtraction of sets [23]. These operations ignore the linear domain, transformations between different domains (spaces of different sizes and dimensionality), and transformations between different value sets (algebraic structures), e.g., sets consisting of real-, complex-, or vector-valued numbers. The image algebra discussed in this text includes these concepts and extends the morphological operations [1]. The development of image algebra grew out of a need, by the U.S. Air Force Systems Command, for a common image-processing language. Defense contractors do not use a standardized, mathematically rigorous and efficient structure that is specifically designed for image manipulation. Documentation by contractors of algorithms for image processing and rationale underlying algorithm design is often accomplished via word description or analogies that are extremely cumbersome and often ambiguous. The result of these ad hoc approaches has been a proliferation of nonstandard notation and increased research and development cost. In response to this chaotic situation, the Air Force Armament Laboratory (AFATL — now known as Wright Laboratory MNGA) of the Air Force Systems Command, in conjunction with the Defense Advanced Research Project Agency (DARPA), supported the early development of image algebra with the intent that the fully developed structure would subsequently form the basis of a common imageprocessing language. The goal of AFATL was the development of a complete, unified algebraic structure that provides a common mathematical environment for image-processing algorithm development, optimization, comparison, coding, and performance evaluation. The development of this structure proved highly successful, capable of fulfilling the tasks set forth by the government, and is now commonly known as image algebra. Because of the goals set by the government, the theory of image algebra provides for a language which, if properly implemented as a standard image processing environment, can greatly reduce research and development costs. Since the foundation of this language is purely mathematical and independent of any future computer architecture or language, the longevity of an image algebra standard is assured. Furthermore, savings due to commonality of language and increased productivity could dwarf any reasonable initial investment for adapting image algebra as a standard environment for image processing. Although commonality of language and cost savings are two major reasons for considering image algebra as a standard language for image processing, there exists a multitude of other reasons for desiring the broad acceptance of image algebra as a component of all image processing development systems. Premier among these is the. © 2001 by CRC Press LLC.

(56) 1. 1 Introduction. 3. predictable influence of an image algebra standard on future image processing technology. In this, it can be compared to the influence on scientific reasoning and the advancement of science due to the replacement of the myriad of different number systems (e.g., Roman, Syrian, Hebrew, Egyptian, Chinese, etc.) by the now common Indo-Arabic notation. Additional benefits provided by the use of image algebra are • The elemental image algebra operations are small in number, translucent, simple, and provide a method of transforming images that is easily learned and used; • Image algebra operations and operands provide the capability of expressing all image-to-image transformations; • Theorems governing image algebra make computer programs based on image algebra notation amenable to both machine dependent and machine independent optimization techniques; • The algebraic notation provides a deeper understanding of image manipulation operations due to conciseness and brevity of code and is capable of suggesting new techniques; • The notational adaptability to programming languages allows the substitution of extremely short and concise image algebra expressions for equivalent blocks of code, and therefore increases programmer productivity; • Image algebra provides a rich mathematical structure that can be exploited to relate image processing problems to other mathematical areas; • Without image algebra, a programmer will never benefit from the bridge that exists between an image algebra programming language and the multitude of mathematical structures, theorems, and identities that are related to image algebra; •. There is no competing notation that adequately provides all these benefits.. The role of image algebra in computer vision and image processing tasks and theory should not be confused with the government’s Ada programming language effort. The goal of the development of the Ada programming language was to provide a single highorder language in which to implement embedded systems. The special architectures being developed nowadays for image processing applications are not often capable of directly executing Ada language programs, often due to support of parallel processing models not accommodated by Ada’s tasking mechanism. Hence, most applications designed for such processors are still written in special assembly or microcode languages. Image algebra, on the other hand, provides a level of specification, directly derived from the underlying mathematics on which image processing is based and that is compatible with both sequential and parallel architectures. Enthusiasm for image algebra must be tempered by the knowledge that image algebra, like any other field of mathematics, will never be a finished product but remain a continuously evolving mathematical theory concerned with the unification of image processing and computer vision tasks. Much of the mathematics associated with image algebra and its implication to computer vision remains largely unchartered territory which awaits discovery. For example, very little work has been done in relating image algebra to computer vision techniques which employ tools from such diverse areas as knowledge representation, graph theory, and surface representation.. © 2001 by CRC Press LLC.

(57) 4. CHAPTER 1.. IMAGE ALGEBRA. Several image algebra programming languages have been developed. These include image algebra Fortran (IAF) [50], an image algebra Ada (IAA) translator [51], image algebra Connection Machine *Lisp [52, 53], an image algebra language (IAL) implementation on transputers [54, 55], and an image algebra C++ class library (iac++) [56, 57]. Unfortunately, there is often a tendency among engineers to confuse or equate these languages with image algebra. An image algebra programming language is not image algebra, which is a mathematical theory. An image algebra-based programming language typically implements a particular subalgebra of the full image algebra. In addition, simplistic implementations can result in poor computational performance. Restrictions and limitations in implementation are usually due to a combination of factors, the most pertinent being development costs and hardware and software environment constraints. They are not limitations of image algebra, and they should not be confused with the capability of image algebra as a mathematical tool for image manipulation. Image algebra is a heterogeneous or many-valued algebra in the sense of Birkhoff and Lipson [58, 1], with multiple sets of operands and operators. Manipulation of images for purposes of image enhancement, analysis, and understanding involves operations not only on images, but also on different types of values and quantities associated with these images. Thus, the basic operands of image algebra are images and the values and quantities associated with these images. Roughly speaking, an image consists of two things, a collection of points and a set of values associated with these points. Images are therefore endowed with two types of information, namely the spatial relationship of the points, and also some type of numeric or other descriptive information associated with these points. Consequently, the field of image algebra bridges two broad mathematical areas, the theory of point sets and the algebra of value sets, and investigates their interrelationship. In the sections that follow we discuss point and value sets as well as images, templates, and neighborhoods that characterize some of their interrelationships.. 1.2.. Point Sets. A point set is simply a topological space. Thus, a point set consists of two things, a collection of objects called points and a topology which provides for such notions as nearness of two points, the connectivity of a subset of the point set, the neighborhood of a point, boundary points, and curves and arcs. Point sets are typically denoted by capital bold letters from the end of the alphabet, i.e., W, X, Y, and Z.. RTS0UVS0WYX*Z R%X\[^] mQ_oniSfpfSjjkjeSfq b0r. Points (elements of point sets) are typically denoted by lower case bold letters . Note also that if , then x is of from the end of the alphabet, namely , where for each , denotes a real number form called the ith coordinate of x.. RM_a`cbedSfbhgiSjjkjeShb ]fl. [s]. q_KntS^pfS. The most common point sets occurring in image processing are discrete subsets of with or 3 together with the discrete topology. n–dimensional Euclidean space However, other topologies such as the von Neumann topology and the odd-even product topology are also commonly used topologies in computer vision [1].. [^]. used There is no restriction on the shape of the discrete subsets of in applications of image algebra to solve vision problems. Point sets can assume arbitrary shapes. In particular, shapes can be rectangular, circular, or snake-like. (here we view Some of the more pertinent point sets are the set of integer points ), the n–dimensional lattice (i.e., ) with , and or rectangular subsets of . Two of the most often encountered rectangular point sets are. u d uw v [ e u w ] v ^ [ ] e u x ] _  u @ y uzy|{k{{8y}u_ ~ RX*[^€

(58) HR*_"`7b d SjkjjSfb STb r X\u8‚eƒ„Hm3_>niS3jjkjeSfq† ‡ q ˆ _ p q_ˆ‰ ug ]l. © 2001 by CRC Press LLC.

(59) 1. 2 Point Sets. 5. Š. ‹"Œe}Ž*Œe‹4‘“’c”–•˜—f”e™›š5œ*Œ ™%Hž Ÿ ”–• Ÿ¢¡z£¤ — ž Ÿ e” ™ Ÿ¢¥¦£¤0§ — Š or Ÿ ¥ §© ‹

(60) Œ¨ Ž*Œ¨ ‹ ‘ ’”•—f”e™›š5œ*Œ ™% ¤&Ÿ ”• ŸC¡ — ¤IŸ ”e™ C Š We follow standard practice and represent these rectangular point sets by listing the points in matrix form. Figure 1.2.1 provides a graphical representation of the point set ‹

(61) Œ ¨ Ž,Œ ¨ . of form. 1. ­n. 2. 1. ... .... 2. ... ... .. . .. .. ¬m. .. . .. .. «y. .. . .. . ... .... ªx Figure 1.2.1. The rectangular point set. ®°¯|±³| ² ´ ±µ². .. Point Operations. ¶µ. As mentioned, some of the more pertinent point sets are discrete subsets of the . These point sets inherit the usual elementary vector space operations. vector space (or ) and Thus, for example, if , then the sum of the points x and y is defined as. ®. ®¸·

(62) ± µ. ®¸·

(63) ¶ µ. ¹¯Kºc»–¼˜½¾¾k¾e½h» µf¿ ½ÁÀ\¯KºcÂi¼½3¾¾k¾e½f µh¿ÄÃ. ¹ÅMÀ*¯Æºc»–¼ÅMÂi¼½¾¾k¾½f» µ ÅM µh¿ ½ while the multiplication and addition of a scalar Ç Ã ± (or Ç Ã ¶ Ǡț¹8¯>ºÇ È» ¼ ½3¾¾k¾e½fǐț» µ ¿. ) and a point x is given by. ÇÉÅʹ*¯"º7ÇHÅM» ¼ ½¾¾¾h½eÇÉÅÊ» µ ¿ ½. and. respectively. Point subtraction is also defined in the usual way. In addition to these standard vector space operations, image algebra also incorporates three basic types of point multiplication. These are the Hadamard product, the cross (or ), and the dot product which are defined by product (or vector product) for points in. ±eË ¶^Ë ¹*țÀ*¯>º» ¼ È ¼ ½†¾k¾¾h½f» µ Èk µ ¿ ½ ¹ ´ À*¯Æºc»eÌÈk ËÍ » Ë ÈkÂÌi½f» Ë Èk ¼ Í » ¼ È›Â Ë ½h» ¼ È ÂÌ Í »hÌ5È ¼ ¿ ½. and respectively.. © 2001 by CRC Press LLC. ¹3ÎÏÀ\¯

(64) »–¼TÈkÂi¼Å » Ì ÈkÂ Ì ÅÐÈkÈÈhÅ » µ È µ ½.

(65) 6. CHAPTER 1.. IMAGE ALGEBRA. Note that the sum of two points, the Hadamard product, and the cross product are binary operations that take as input two points and produce another point. Therefore, these whenever X is closed under these operations can be viewed as mappings operations. In contrast, the binary operation of dot product is a scalar and not another vector. , where denotes the appropriate field This provides an example of a mapping of scalars. Another such mapping, associated with metric spaces, is the distance function which assigns to each pair of points x and y the distance from x to y. The most common distance functions occurring in image processing are the Euclidean distance, the city block or diamond distance, and the chessboard distance which are defined by. Ñ Ò\шÔxÑ Ó ÑKÒHÑÕÔ°Ö. ÑÐÒѸԈ×. Ö. ØÁÙÛÚTÜÏÝÞ^ßáà ã â Ùcç äèMéä ÞëêÏìHîí Ü äå†æ ï ÙÚTÜÏÝÞ^ß ã â ç ä èMé ä Ü äå†æñð ð ò ÙÛÚTÜÏÝÞßCó8ôç–õ ç ä èMé ä Ü ð ð0öÁ÷QøCù¦ø¢ú†û. and. respectively. Distances can be conveniently computed in terms of the norm of a point. The norms three norms of interest here are derived from the standard. The. üý. æ þÚ þ Ó ß ÿãâ ç ý ý ý å†æ ð ð . ü. . . . norm is given by. þÚ þ ß â ç Ü å†æ–ð ð . . â æ ç ߈óYôç–õ ç æ Ü eÜ ç . Specifically, the Euclidean norm is given by å † ð ØÁð ÙÛÚTâ3ÜÏð Ý3û ÞQß þ Ú è Ý þ þ Ú þ ê ß ð ç êæ ð ç ê ð . Thus, city block distance ÙÚTÜ7Ý3ÞHß þ Ú ê .è Similarly, Ý þ æ and thethechessboard ï â ò Ù ÚTÜ7Ý3ސusing distance can be computed the formulation ß þÚ è Ý þ . by using that the p-norm of a point x is a unary operation, namely a function þ|þ шNote Ô × . Another assemblage of functions Ñ Ô × which play a major role in ý ö then ith projection on various applications functions. Given Ñ × Ùâ Ú3, ÞV ç denotes õ Ü are hÜ the, isprojection ßKç the, where denoted by and defined by X, where ÷ ú†û the ith coordinate of x. where.

(66). .   . . . . 

(67). . . Characteristic functions and neighborhood functions are two of the most frequently occurring unary operations in image processing. In order to define these operations, we need to recall the notion of a power set of a set. The power set of a set S is defined as the set of all subsets of S and is denoted by  . Thus, if Z is a point set, then    . Given !"# (i.e., $ ), then the characteristic function associated with %'& X is the function. ß õÑ Ñ ö Ñ û. Ñ. õ fÜ ö Ô ÷ û . © 2001 by CRC Press LLC. (.

(68) 1. 2 Point Sets. 7 .<;>=. )+*-,/.102436587:9. defined by. .A;> @ =4B. 7:9 ?. For a pair of point sets X and Z, a neighborhood system for X in Z, or equivalently, =GFIHJKB a neighborhood function from X to Z, is a function CE, D 0ONQP. ;M=. ,. C. 0. C. L L It follows that for each point L , . The set is called a neighborhood for x. =UFVH#WYX There are two neighborhood functions on subsets of RS which are of particular importance in image processing. These are the von Neumann neighborhood and the Moore CTD , 02[Z

(69) \ \62[,^]`_acbedf] 0gh-\i2j mr;sZ d d by neighborhood. The von Neumann neighborhood ,k]`_

(70) dl] anmo0pd isb#dqdefined 5ett C ,]_ dq] 2Q L. D 0u;>= N ,. where L. 02QZ \ RS. S v. L. S \i2[,^]. ? HeW X =wFI S. asb#dl]. dD. axmy0

(71) d b#dlmz;MZ v. , while the_ Moore neighborhood D. 5 tt. B. is defined by. ? S. Figure 1.2.2 provides a pictorial representation of these two neighborhood functions; the hashed center area represents the point x and the adjacent cells represent the adjacent points. The von Neumann and Moore neighborhoods are also called the four neighborhood and eight neighborhood, respectively. They are local neighborhoods since they only include the directly adjacent points of a given point.. {. N(x) =. M(x) =. Figure 1.2.2. The von Neumann neighborhood |M}/~+ and the Moore neighborhood €}/~+ of a point x. There are many other point operations that are useful in expressing computer vision algorithms in succinct algebraic form. For instance, in certain interpolation schemes it becomes necessary to switch from points with real-valued coordinates (floating point coordinates) to corresponding integer-valued coordinate points. One such method uses the induced floor operation ‚qƒ>„f +†>‡Vˆ† defined by ‚‰~lƒ<Š‹}‚‰Œ`:ƒqŽ‚/ŒfƒqŽ  qŽu‚‰Œ ƒy , where † ~>ŠQ}ŒŽlŒqeŽ+ 

(72) fŽlŒ ‘A '† and ‚‰Œo’“ƒK‘6ˆ denotes the largest integer less than or equal to † Œo’ (i.e., ‚:Œo’”ƒ–•4Œl’ and if —M‘˜ˆ with —c•[Œo’ , then —M•™‚‰Œo’“ƒ ).. Summary of Point Operations We summarize some of the more pertinent point operations. Some image algebra implementations such as iac++ provide many additional point operations [59].. © 2001 by CRC Press LLC.

(73) 8. CHAPTER 1.. Binary operations. ­. Let. ›®^¯   ¡f¯ ¢ ¡£

(74) £ £f¡q¯Y°±¥>«4¬. šœ›ž^Ÿ` 

(75) ¡qŸo¢#¡£ £

(76) £¡lŸo¤l¥ ¡y¦œ›§¨© ª¡l¨¢©¡+£ £ £q¡l¨ ¤q¥j«œ¬ °. addition subtraction multiplication division supremum infimum dot product cross product ^Á>› concatenation scalar operations. ¤. , and. .. š³²´¦n›‹^Ÿ   ²´¨   ¡ £

(77) £ £q¡lŸ ¤. ²n¨ ¤ ¥. š>µs¦n›‹^Ÿ   µs¨   ¡ £

(78) £ £q¡lŸ ¤. µc¨ ¤ ¥. šA¶ ¦˜›·^Ÿ   ¨   ¡+£ £

(79) £f¡lŸ ¤ ¨ ¤ ¥ š+¸¦n›·^Ÿ   ¸©¨   ¡£ £

(80) £f¡qŸ ¤ ¸#¨ ¤ ¥ ¹

(81) º©»/š¡¼¦+¥-›½^Ÿ  +¾. ¨   ¡£ £

(82) £¡lŸ ¤¿¾. ¨ ¤ ¥. À:ÁÂ`š¡¼¦+¥-›¼Ÿ  +Ã. ¨   ¡£ £

(83) £¡lŸ ¤¿Ã. ¨ ¤ ¥. š+ÄŦc›Ÿ   ¨   ²xŸ ¢ ¨ ¢ ²Æ¶

(84) ¶ ¶²˜Ÿ ¤ ¨ ¤ Ç¥. š³È¿¦A›[^Ÿ ¢ ¨ÉʵcŸoÉ

(85) ¨ ¢ ¡fŸlÉ ¨   µnŸ   ¨ Éy¡lŸ   ¨ ¢ µnŸ ¢ ¨   ¥ ­ šÌË ›‹Ÿ ¡£

(86) £ £f¡qŸo¤¡l¯e ¡£

(87) £ £¡l¯ ° ¥ ÍyÎlšn›·^ÍÏÎqŸ ¡+£ £ £q¡lÍyÎfŸl¤q¥Y¡. where Unary operations.. IMAGE ALGEBRA. In the following let. Îs«xЪ²K¡µ¿¡lÑl¡ ¾. ¡ ÃuÒ. šc›½kŸ   ¡lŸ ¢ ¡£ £ £q¡fŸ ¤ ¥O«n¬. ¤. .. µ-šn›wÅµÓŸ   ¡£

(88) £ £¡fµÓŸ ¤ ¥. negation ceiling floor rounding projection sum product maximum minimum Euclidean norm è   norm èê norm dimension neighborhood. ԓšlÕ>›wԉŸ   Õl¡£ £ £¡Ô:Ÿ ¤ Õ#¥ ֓šl×>›w։Ÿ   ×l¡£ £ £¡Ö:Ÿ ¤ ×#¥ Ø šfÙڛÛØ Ÿ   Ù¡£

(89) £ £¡Øܟ ¤ ÙÝ¥ »lޝš+¥ß›ŸlÞ àušc›‹Ÿ   ²áŸ ¢ ²â¶ ¶ ¶+²ãŸ ¤ ä-šx›wŸ   Ÿ ¢. ¶ ¶

(90) ¶yŸ ¤. ¾ šs›åŸ   ¾ à šs›åŸ`  à æۚæ ¢ æۚæ   æۚæ ê. ›ç. Ÿ ¢ ¾. ¶ ¶

(91) ¶ ¾. ›é Ÿ` eéY²4é Ÿf¢yép²Æ¶ ¶

(92) ¶²Æé Ÿo¤+é ›Gé Ÿ` ªé ¾. é Ÿf¢1é ¾. ëyÀ:ì6:š+¥¿›Á ¤ íM:š+¥ïîå¬. characteristic function. ð+ñu. Ÿ ¤. Ÿq¢ à ¶ ¶

References

Related documents

The purpose with this study is to find out if the investment strategies Magic Formula (MF) and Magic Formula combined with momentum (MFM) has had a higher risk-adjusted return

When I ask him if he thinks that the part covered by the news media reflects his bigger picture of the world he replies that “the story, the news story, tells you something about

Det reviderade antalet enkätfrågor ansågs därför vara nödvändiga för att få en övergripande förståelse av huruvida digital natives påvisade att särskilja sig från

När en grupp bildas där man vill bygga olika image för var och en i bandet men samtidigt ge en gemensam bild till sina lyssnare som till exempel Kiss är det viktigt att vara

The choice by Umaru’s family, as well as some 60 other Mbororo households, has been to follow their spiritual guide, Sheikh Ibrahim, a Tijaniyya teacher from the East Region who

Other industrial partners and end-users involved in the research will be defined later during the development of the detailed project proposal.. Current suggestions

Original text: RVEDV interobs CMR/3DEcho Corrected text: RVEDV

It does so by having the actual server uploading the computer worm connect to the target device through Tor, whilst gaining entry to the device is performed by the