tamura@cavax3.cis.canon.co.jp (Hideyuki Tamura) (06/14/91)
The following message is from Dr.T.Matsuyama, the chairperson of TC5 of IAPR. This is posted instead of him. Hideyuki Tamura Information Systems Research Center Canon Inc. $B!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!]!](J CALL FOR REPORTS ON IMAGE PROCESSING / COMPUTER VISION SOFTWARES ON WORKSTATIONS I am serving as the chairman of Technical Committee 5 of IAPR (International Association for Pattern Recognition). General topics of our TC are on benchmarking and software. Currently we are conduction a world-wide survey on "new-generation" image processing / computer vision software systems. Motivations behind this survey are as follows: [MOTIVATIONS OF THE SURVEY] In the 1980's, advances of computer hardware and software technologies produced so called engineering workstations to realized new flexible programming environments. They equip high resolution (color) bitmap displays with so-called multi-window systems, high speed network interfaces with standardized protocols, and fast CPU's and large memories with many powerful programming tools. Moreover, several new programming paradigms have been proved to be very useful in many application areas: functional languages like Lisp, logic programming languages like Prolog, and object-oriented languages like Smalltalk. These new featured hardwares and softwares enable us to develop new generation image processing / computer vision software systems. In fact, many research groups and some private companies are developing new image processing / computer vision softwares making full use of such new programming environments. Considering the current situations mentioned above, we believe that it is very useful for all members of IAPR to survey newly developed image processing / computer vision softwares on workstations. On behalf of TC5 of IAPR, I would like to ask you to report characteristics of the software systems that you and/or your research group have developed / are using. The format of the report is shown in the last part of this mail with an example description. I would appreciate it if you could send the report by e-mail to me BY THE END of JULY. We are sending this mail to researchers and research institutions around the world who have developed image processing / computer vision software systems on workstations. We plan to summarize the reports gathered and publish the survey as a technical paper or a article of the IAPR Newsletter. Since our survey is purely motivated by academic interests and its objective is to inform characteristics of new-generation image processing / computer vision softwares to all members of IAPR, your report and the survey will never be used for any commercial purposes. I would greatly appreciate it if you would help us by writing a report on the software systems used by your group. LASTLY, SINCE I CANNOT DIRECTLY ACCESS THIS NEWSGROUP, I ASKED CANON INC., WHO WROTE THE ATTACHED REPORT ON VIEW-STATION FOR OUR SURVEY, TO POST THIS ARTICLE TO THE NEWSGROUP, AND I WOULD LIKE YOU TO SEND YOUR REPORTS DIRECTLY TO ME AT THE FOLLOWING E-MAIL ADDRESS. Sincerely yours, Takashi Matsuyama Department of Information Technology Okayama University Okayama, Okayama 700 Japan TEL: +81-862-52-1111 ext.510 +81-862-53-9453 (direct) FAX: +81-862-55-9136 E-mail: tm@chino.it.okayama-u.ac.jp [EXAMPLE OF THE SURVEY FORMAT] (1)Name of Software System VIEW-Station (2) General Information (2-1)Developper: Canon Inc., Japan (2-2)Contact Address: H.Tamura Information Systems Research Center Canon Inc. 890-12 Kashimada, Saiwai-ku Kawasaki, Kanagawa 211 Japan TEL:+81-44-549-5111 FAX:+81-44-549-5434 E-Mail:tamura@canon.co.jp (2-3)Commercial vs Public Domain Semi-public domain; VIEW-Station is a free software but is not a public domain software. Users must sign a license agreement with Canon Inc. in Japan. (2-4)Documentation (a)VIEW-Station Software System: An Overview (b)VIEW-Windows Overview (c)microV-Sugar Users Manual (d)Reference Manuals of V-Server, V-Sugar, V-Sugarlib, VIEW- Windows and microV-Sugar (On-line Manual) (Languages)All manuals are written in both Japanese and English. (3)Objective/Goal VIEW-Station (Vision and Image Engineering WorkStation) is an image processing software system on workstations which is based on a combination of contemporary workstation and image processing hardwares. The aims of the system are research and development of image processing applications. Further aims of the system are to avoid unnecessary duplications of software developments in academia and industry, and to provide a common software platform to encourage healthy application development. With such common platform, we will be able to exchange and test programs developed at foreign organizations very easily. (4) Host Computer and Dedicated Image Processor Requirements The VIEW-Station software system runs on various systems consisting of UNIX workstations (e.g. SUN, HP, DEC), and memory mapped image processing hardware using the VMEbus (e.g. VICOM, Nexus). Library routines, which are to be used in developping application programs and application systems, are implemented to have hardware independent interfaces ( calling sequences ). Thus, the system is also usable with a standalone workstation without any image processing hardware. (5) OS Requirements The VIEW-Station software is implemented on such UNIX operating systems that supports the socket and system calls managing shared memory. Also, the system call mmap is used for combining a workstation with image processing hardwares. Note that some UNIX systems do not support the shared memory management. (6) Organization of the Software System The system software consists of the following three levels, (a) System Level (System Software) This level absorbs the differences between image processing systems (hardware). V-Server is a module to dynamically manage the resources of the image memory, which may be a part of the shared memory on a workstation or a frame buffer of an image processing hardware. V- Server also supports basic functions for users to design image processing languages and image processing programming systems. That is, it implements the OS (pseudo system call) level function extensions specific to image processing such as image memory allocation. (b) Programming Level (Programming Tools) This is the level for developing image processing application programs. V-Sugar is a framework (an image processing language) to implement image processing programs. This level also includes an image processing algorithm library V-SugarLib, an image file system library VSFilSys, and a window system library VIEW-Windows, which are used in developping various image processing programs. Moreover, SPIDER I and II, which include more than 500 image processing algorithms, can be used. (c) Command Level (End-User Interface) This level supports interactive and experimental image processing environments. MicroV-Sugar is designed as a simple command language, by which users can interactively execute various commands for standard image processing, display, and file management. It is planned to provide VS-Shell, another command language with more user friendly graphical interface, and VPL, a visual programming language which utilizes a high level graphical interface, as tools which sit on top of V-Sugar. (7) Image Processor Management Some image processing programs in V-SugarLib are implemented to use a special image processor, NEXUS6800, with which fast image processing is realized. (8) Display Management Window system: X window system(X11R4), X toolkit Irrespectively of a standalone workstation or a system which includes a workstation and an image processing hardware with a full color image display, it is possible to display black&white and color images by the same software interface onto the multi-window screen of the workstation and the image display. It is also possible to display black&white and color images by the same software interface on workstations with different types of bit-map frame buffers: 1 bit, 8 bits, and 24 bits planes. Note that a X-window system and VIEW-Windows on 24 bits color frame buffers (i.e. Sun cg8 and cg9 frame buffers) has been developed, with which full color image can be displayed on a multi-window screen of a workstation. Internal modules for displaying images, graphs, and 3D perspectives are realized as widgets, so that various user interfaces can be constructed by combining these widgets and the widgets such as Athena widgets becoming widely available. VIEW-Windows includes such utility functions for image display. (9) (Image) Memory Management In order to manage allocation, release etc. of the image memory, V- Server is provided in VIEW-Station. This is an independent image memory management program running as a process in UNIX, separate from the process which executes the image processing algorithm. The V-Server program processes the physical characteristics of the image memory (size, configuration, etc.) and general information such as the status of the usage. It serves as an image memory manager which virtualizes physical memories on a workstation and an image processing hardware. In writing a program using V-Sugar and its libraries, image data areas in the virtual image memory are automatically allocated by the variable declaration in the program. V-Sugar manages the number of references to each allocated image data area by reference counting, and releases the data area when it is not referenced to by any variables. Thus, the automatic image memory allocation/de-allocation facilities are supported in V-Sugar programming. (10) File Management As there are enormous varieties of image file systems, the file systems in VIEW-Station aim to achieve the following conditions: to be capable of dealing with multiple file formats to be able to register and deal with user-defined file formats The file system I/F of V-Sugar is designed to be an interface to image file systems with satisfy these conditions. (11) Network Management Nothing special other than network facilities in ordinary UNIX workstation environments is supported. (12) Program Development ( Programming Language ) Base Language: C++ (AT&T C++ Release 1.2, Sun C++ 2.0) V-Sugar is a programming tool for image processing which forms the core of the VIEW-Station software. It is designed on the basis of C++. That is, a user write image processing programs in C++ using V-SugarLib where various useful image processing/management tools are implemented. By inter-mixing the good points of object-oriented and functional notations, V-Sugar has improved the notation standards and re-usability of image processing programs. A major characteristic of V-Sugar is that it provides the necessary data types for image processing. Thus, the V- Sugar data types are provided as classes of C++ and are used as the input/output arguments of library functions. The data types in V-Sugar that an application programmer should know are 8 kinds as follows: grey image, binary image, line image, class image, label image, distance conversion image, orientation image and direction code image. (10) (End-) User Interface MicroV-Sugar is designed as a simple command language for easy interactive image processing experiments. As the name suggests, microV- Sugar inherits the features of V-Sugar: functional style notation and data type checking. It is planned to provide VS-Shell, another command language with more user friendly graphical interface, and VPL, a visual programming language which utilizes a high level graphical interface, as tools which sit on top of V-Sugar. The release of these user-friendly interfaces will be in one year.