For pointers to the teach files, follow this link, but please read the rest of this document first if you have not yet done so.
These computer vision "teach" files form part of the teaching material for undergraduate and postgraduate courses in Computer Vision in the School of Cognitive and Computing Sciences at the University of Sussex. The main author is David Young For information about vision research in the School, see our computer vision page.
The HTML versions of the files are made available to indicate the range and type of material that is taught in our courses. This is partly in response to a suggestion at a meeting of the British Machine Vision Association that more sharing of material amongst computer vision teachers would help the development of the subject.
Although these documents are an important part of our courses, they are used in the context of lectures, tutorials, textbooks and practical exercises. The lectures and tutorials go well beyond the material covered here, though usually less formally.
The topics covered vary considerably from year to year, and these files are a snapshot of the topics that were covered in 1995.
As explained next, these files are not really intended to be merely read (or browsed) at all.
The files are meant to be used interactively. The original versions contain a mixture of text and program code, but no images. Students use them by executing the chunks of code as they read through at a graphics terminal or workstation. The code carries out various kinds of processing and often displays images on the screen, but no output images or other results are precomputed. This allows students to explore, very easily, the effects of changing parameters, modifying algorithms, or using different input images, and encourages them to develop their own programs from the fragments they encounter in these files.
Inevitably the HTML form available here, in which the images are all included statically and the code cannot be executed, is inferior. It is deliberate that in the original versions the text and the programs are tightly intertwined, but in the HTML form this arrangement is less helpful.
The code in the teach files is in Pop-11, a language for Artificial Intelligence, which is very good as a general-purpose prototyping language and forms part of the Poplog programming environment. Some of the reasons for this choice are:
Poplog is now available free of charge with full system sources from here http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
If you already have Poplog but do not have popvision, a conveniently packaged version of popvision (for Sparc+Solaris, PC+Linux, Alpha+Linux) can be downloaded from here: http://www.cs.bham.ac.uk/research/poplog/popvision.tar.gz
Those unfamiliar with Pop-11 should still be able to make sense of the code in the files. Note that:
y = x
is written in Pop-11 as x -> y
.[ ... ]
indicate a singly-linked list;
curly brackets { ... }
indicate a vector (a 1-D array
indexed from 1); parentheses ( ... )
indicate array indexing
as well as procedure call.Enquiries about Popvision from those who already use Poplog may be made to the author - address below
Students following the course work through these files in order. Browsers, however, may find the later files of greater interest than the earlier ones. Many of them contain significant amounts of image data.
In the files, askerisks (*) mark cross-references to Poplog and Popvision documentation files, which can be followed as links inside Poplog. At present, these are not available as hypertext links under HTML-based browsers, but this facility might become available in the future.