A. Etemadi, ICSTM, 14-Feb-1992

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

WHAT IS RW_ChainPixels ?

	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.

HOW DO I USE RW_ChainPixels ?

	Get a square 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 
	(RW_ChainPixels) when run on an edge detected image, to 
	lists of line segments and circular arcs.

HOW DO I USE FEX ?

	1. Run the RW_ChainPixels (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 Doc 
	directory (see also the file EXAMPLE).

HOW DO I DISPLAY THE RESULTS OF FEX ?

	There are 2 programs

	1. ORTToImage 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 may 
	   also be used as input to this program.

	2. DisplayPEG, 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).

HOW DO I DISPLAY THE RESULTS OF LPEG ?

	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.

WHAT IS IPEG ?

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

HOW DO I USE IPEG ?

	Get a file containing groupings produced by LPEG 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.

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 Doc directory. 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:
	"Detecting Triplets, Corners and Polygons in Complex Scenes"
	This is a preliminary title.
	
WHERE CAN I GET POSTSCRIPT COPIES OF THE PAPERS ?

	LaTeX copies of the papers on FEX and LPEG are in the Doc
	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.

WHAT NEXT ?

	Watch this space for Ellipses + Polyhedrons

