A Visual Recognition Security System in Java
Keiron Skillett, MEng Project 2001

 

Evaluation

5.1 Successes

This project has met the specification set out in the revised project proposal and with a little more work could probably achieve all those set out in the original proposal. The code already written could quite easily be adapted to run as part of a much larger system.

The application is able to identify simple objects, such as silhouettes and letters of the alphabet. These objects can be moved around (But not altered in size or rotation).
 

5.2 Problems Encountered

Several problems were encountered throughout this project:
  • The subcontractors’ early departure from project.

This led to a rethink in the overall design and scope of the project (reflected in the updated project proposal), this demonstrated how exclusive the projects were from each other, the only part of the MEng project which changed was the design of a User Interface, which would have been required for some testing anyway.

  • The Java Advanced Imaging API.

The small amount of documentation that was available (mainly Sun’s own reference guide) made the API very difficult to code for. After some testing of code with the libraries, they appeared to be very slow and required the Advanced Imaging API to be installed on any machine that was going to run the application, an application that would run on any Virtual Machine was far more appropriate, at this stage the decision was taken not to use Advanced Imaging.

  • Storage of Images.

A lot of time was spent on working out the best way to store the images used by the application, during the early stages of coding a file location was stored in the database and the image was loaded from this. This method of image storage is completely inadequate for a security application, as the images should be stored in the database. When database storage was attempted intermittent errors occurred, this should be a future project.

  • Administration.

Not enough time was available to write any kind of administration tool, as such all administration should be done through Microsoft Access.

  • Errors.

The system ignores errors; it would be useful to include some kind of error handling routine.

  • Notification.

Currently the only form of confirmation of whether the image is identified is displayed in a DOS window, it would be useful to notify the user via a window.
 

5.3 Further Extensions

Further extensions to this project could include:
  • Rotation.
    Allowing the object to be rotated around any point and still be identified.
  • Scaling/Perspective.
    Allow the same object of different sizes to be identified, this would be especially useful considering the original objectives of the project – it cannot always be assumed that the object will be the same distance from the camera (and therefore the same size).
  • Encryption.
    As a security application it would be wise to include some kind of encryption when passing the data to and from the server.
  • Administration.
    A remote administration applet/application would be useful to allow administration to be done from another machine.

5.4 Project Management

During the first six weeks of the project several meetings occurred between the sub-contract, and myself. During this time the sub-contract was learning Java and getting to grips with both applets and applications. During week 6 the sub-contract temporarily withdrew from the course to pursue a business idea. This meant minor adjustments to the project; the proposal was updated. The new aims of the project were to design an image recognition tool, the only change to the MEng project being that the images would be pre-stored and a user interface needed to be designed.