Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Segmentation Code

6 views
Skip to first unread message

Ulrich Eisemann

unread,
Jun 6, 2000, 3:00:00 AM6/6/00
to
Hello

I惴 searching for Image Segmentation resources eighter in form of C- or
C++ Source Code or 32-bit Windows binaries. Furthermore, I悲 like to
know some segmentation related Web-sides or books which can serve as a
good introduction.

Thanks a lot
Uli


Tom Clune

unread,
Jun 6, 2000, 3:00:00 AM6/6/00
to
In article <393CF618...@ite.rwth-aachen.de>,
> ...

The problem with finding general resources on segmentation is that
segmentation is, by definition, an application-specific activity. What
you do in segmentation is break up an image into the regions that you
care about. What counts as such a region is dtermined solely by the
application.

With that as a warning, let me suggest a few good books. First is "An
Introduction to Morphological Image Processing" by Edward R. Dougherty
(SPIE Optical Engineering Press, 1992). This book discusses the most
common methods that are used to process images for purposes of
segmentation. It defines the "bag of tricks" that you should know in
order to be able to play the game. However, this is not a coding book.
It is not horrifyingly mathematical, but it does present the approaches
from a (gently) formal perspective.

Second, "Computer Vision and Image Processing, a Practical Approach
Using CVIPtools" by Scott E. Umbaugh (Prentice Hall PTR, 1998) has C
source for image processing, and builds up to a few applications that
involve segmentation (Automatic Skin Tumor Border Identification,
Chapter 7.2, and Image Segmentation Using a Deformable Template
Algorithm, Chapter 7.5 are specifically relevant).

Third, "The Image Processing Handbook, 3rd Edition" by John C. Russ
(CrC Press LLC, 1999)includs Segmentation and Thresholding, chapter 6,
which is directly relevant. This book does not come with C source,
although there is a relatviely expensive software package available for
trying out various techniques. If you want to learn to program up your
own stuff, you probably won't want to use the package, however.
Nonetheless, the book itself is a very good overview of image
processing techniques from a user's perspective. It will serve as a
good reference once you're developing your own applications for what
techniques may be worth trying on a given problem.

A book that I like a lot, with a similar utility to Prof. Russ'
is "MAchine Vision: Theory, Algorithms, PRacticalities, 2nd Edition" by
E.R. Davies (Academic Press, 1997). The entire book has detailed
disuccsion of approaches to many problems that are faced in
segmentation. It is not a coding book -- it discusses algorithms and
their strengths and weaknesses, not implementaton. Nonetheless, if you
start doing this stuff for a living, you'll spend a lot more time
applying different algorithms than coding them up. Thjis is a great
place to start you thinking about how to approach a given problem.

A real treasure of a book that includes C source and discusses aspects
of segmentation is "Algorithms for Image Processing and Computer
Vision" by J.R, Parker (John Wiley & Sons, 1997). This book includes
implemntations and sophisticated discussions of some important topics
you will face in segmentation. This book is kind of quirky -- it gives
tremendous coverage of some advanced topics, and no coverage of some
standard techniques. Nonetheless, this book is a must-have.

If you end up having to deal with neural networks, a very good book
with C++ source is "Signal and Image Processing with Neural Networks: A
C++ Sourcebook" by Timothy asters (John Wiley & Sons, 1994). I am
personally less than enthusiastic about neural nets, and view the need
to resort to them as basically a sign that a project is in deep
trouble. Nonetheless, this is a very good book. Its coverage of various
transforms (Fourier, Gabor, and wavelets) is worth getting the book
for, even if you never use them for the sordid purpose of neural
networking.

Finally, you need a good general book or two on image processing
(Pratt, Castleman, etc). Most any common text that is called something
like "Digital Image Processing" will do. Choose whichever suits your
style or pocketbook.

--Tom Clune, MediSpectra, Inc.


Sent via Deja.com http://www.deja.com/
Before you buy.

Raimund Ober

unread,
Jun 7, 2000, 3:00:00 AM6/7/00
to Tom Clune
Hello
Thanks a lot for this reply which is also very helpful to me. I have
a follow up question on the reference. Do any of these
reference (especially those that provide code) deal with 3D data sets?
Thanks,
Raimund

Tom Clune

unread,
Jun 7, 2000, 3:00:00 AM6/7/00
to
In article
<9482A7E7B481B4B6.AF13D3F4...@lp.airnews.net>,

Raimund Ober <ob...@airmail.net> wrote:
> Hello
> Thanks a lot for this reply which is also very helpful to me. I have
> a follow up question on the reference. Do any of these
> reference (especially those that provide code) deal with 3D data sets?
> ...

Unfortunately, none of the references with source include 3D data sets.
The only books in that list that have chapters on 3D data sets are
those of Professors Russ and Davies. I have never worked with 3D data
sets, so I cannot provide any guidance to the literature on that topic.
Sorry.

alex...@caramail.com

unread,
Jun 8, 2000, 3:00:00 AM6/8/00
to
I have some C++ code for segmentation at this adress :
www.ifrance.com/cvalex/vision.htm with links to good vision sites.
or this one :
www.ifrance.com/alexfournier/alld.htm (in Deutsch)


In article <8hj3qs$2tf$1...@nnrp1.deja.com>,

Paul

unread,
Sep 1, 2000, 8:00:08 AM9/1/00
to
> > The problem with finding general resources on segmentation is that
> > segmentation is, by definition, an application-specific activity. What
> > you do in segmentation is break up an image into the regions that you
> > care about. What counts as such a region is dtermined solely by the
> > application.

Hi,

I am an amateur with an interest in machine vision.

I agree with the indented statement in principle, but should WE prejudge
which regions constitute good segments ? If we assume that segmentation
feeds into another process, such as a recognition or motion tracking
algorithm, then isn't the best segmentation algorithm the one which gives
best results at the final stage ?

I think most algorithms would work well given segmentations that are
'consistent' (they vary little given similar images) and 'informative'
(differences between regions of an image cause different segments)

This yields a somewhat application independent criterion to optimise a video
segmentation algorithm against:
a) Maximise the number of segments
AND
b) Minimise the segmentation differences between consecutive frames.

a) and b) are opposing goals and the criterion would need to include a
'trade-off' weight between them.

Given a static picture, the optimiser would choose parameters that would
give noise tolerance (i.e. noise would not cause the segmentation to vary
much). The consecutive frame check can allow the optimisation to work even
with some motion in the image.

We would also need to ensure that the segmentation algorithm can only base
its segmentation decisions off the pixel values in a local neighbourhood
(otherwise a trivial, but useless optimal solution is to assign a distinct,
constant segment label at each x,y position in the image !)

Given that I am still learning about this field, the above opinions are
probably wrong, in which case I'd like to hear why, or old-hat, in which
case I'd appreciate pointers to some papers that have dealt with this.
Particularly anything on evolving better segmentation algorithms.

regards,

Paul


0 new messages