A. Etemadi, ICSTM, 15-Feb-1993

*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
  ****  NOTE ALL PROGRAMS GIVE USAGE   INFO. WHEN RUN WITH -h SWITCH  ****
  ****                         VERSION INFO. WHEN RUN WITH -v SWITCH  ****
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

PUBLICATION LIST ?

LPEG:
 Low-level Grouping of Straight-Line Segments, A. Etemadi, J-P. Schmidt, 
 G.Matas, J.Illingworth, and J. Kittler. Processings of the British Machine 
 Vision Conference 1991, Edited by Peter Mowforth, and published by 
 Springer-Verlag.

FEX:
 Robust Segmentation of Edge Data. A.Etemadi,  Proceedings of the 4th 
 international conference on Image Processing and its applications, 7-9 April 
 1992. IEE conference publication number 354. 



WHAT IS chainpix ?

	This is a pixel chainning S/W contributed by West and Rosin.
	It converts the edge pixels in an image into ASCII lists of the
	connected pixels. The new version handles rectangular images.

HOW DO I USE chainpix ?

	Get an edge detected image in raw (ie byte array) or PGM format
	and use this as input. The edge detector is unimportant so long as 
	it produces an edge image with thin (single pixel width edges) and 
	zero background, and non-zero edge values. So use the Canny or 
	whatever you want (see also the file EXAMPLE).

WHAT IS fex ?

	It converts strings produced by the chainning program (chainpix) 
	when run on an edge detected image, to lists of line segments and 
	circular arcs. The new version handles rectangular images.

HOW DO I USE fex ?

	1. Run the chainpix (as described above) 

	2. Run fex and use the ASCII file of strings generated in 1. 
	above as input (see also the file EXAMPLE).

	A paper describing the segmentation technique is in the LaTeX 
	directory (this is a sub-directory of the directory containing
	this file).

HOW DO I DISPLAY THE RESULTS OF fex ?

	There are 2 programs

	1. ort2image which takes the file containing the fex
	   line segments and creates a raw or PGM image depending
          on which switches you use. The output of lpeg or ipeg 
	   (see below) may also be used as input to this program.
	   Then use any displayer which supports PGM format (eg xv
	   and xloadimage) to loook at the result.

	2. DisplayGrps, here you load the file produced by fex and the
	   line and arc segments are displayed under X11. 

WHAT IS lpeg ?

	It groups the line segments found by fex into:

		Parallel overlapping
		Parallel non-overlapping
		V/L junctions
		T/Lambda junctions

HOW DO I USE lpeg ?

	Get a file containing line segments generated by fex and use this
	as input. A paper describing the grouping technique is 	in 
	the Doc directory (see also the file EXAMPLE). This should
	clarify the options. The current version allows you to pipe 
	in the output of fex directly.

HOW DO I DISPLAY THE RESULTS OF lpeg ?

	Use the program DisplayGrps. If you don't have X11 then you're 
	best off writing your own displayer. Note the files Read*.c
	in the directory DisplayGrps/exe should be of help since they
	actually access the data in the files containing the results of
	grouping procedures.

WHAT IS ipeg ?

	It further groups the low-level groupings produced by ipeg
	into:
		Triplets (bar-ends, Z)
		Corners
		Closed Polygons

HOW DO I USE ipeg ?

	Get a file containing groupings produced by ipeg and use this
	as input. A paper describing the grouping technique is 
	forthcoming (see also the file EXAMPLE).

HOW DO I DISPLAY THE RESULTS OF IPEG ?

	Use the program DisplayPEG. If you don't have X11 then you're 
	best off writing your own displayer. Note the files Read*.c
	in the directory DisplayGrps/exe should be of help since they
	actually access the data in the files containing the results of
	grouping procedures. The current version allows you to pipe
       in the output of lpeg directly.

WHAT ARE THE DETAILS OF THE ALGORITHMS ?

	The fex and lpeg algorithms are explained in the associated
	papers, copies of which (LaTeX files, Images, xfigs, postscript
	images...) are supplied in the LaTeX sub-directory of ORT/Doc. 
	I think this is better than sending out the Postscript since it 
	didn't turn out to be very portable.

	fex:
	"Robust Segmentation of Edge Data"
	IEE, Image Processing Conference, Maastericht, 1992.

	lpeg:
	"Low-level Grouping of Straight-Line Segments"
	British Machine Vision Conference Proceedings, Glasgow, 1991.

	ipeg:
	TBD.
	
WHERE CAN I GET POSTSCRIPT COPIES OF THE PAPERS ?

	LaTeX copies of the papers on fex and lpeg are in the LaTeX
	directory. At the end of the file INSTALL there are instructions
	on howto create postscript copies of the papers.

IS THERE A MAILING LIST ?

	No, but a lot of people have picked up the S/W through the
	Vision-List so maybe post something there. Otherwise you can
	mail me directly if you have problems. Any new releases will
	be announced through the Vision-List.

WHAT ARE THE DATA FORMATS ?

	For fex  see the end of FEX/exe/FEX.c   and its self-explanatory.
	    lpeg see the end of LPEG/exe/LPEG.c and its self-explanatory.
	    ipeg see the end of IPEG/exe/IPEG.c and its self-explanatory.

HOW DO I USE THE LIBRARIES ?

	Look in the src directories under LPEG and FEX where you'll
	find some README's which tell you what things do. The include
	files in the Incs directory should help with formats and stuff.
	The output formats of LPEG and FEX are easy to figure out from
	the programs so I didn't say anything. If anyone really wants
	it spelled out, please let me know and I will oblige.
