You will need to write a iPhone app that is capable of decoding various 2D barcodes. The app must decode in real time, take a picture of the ID from multiple angles, take a picture of an object or person (also from multiple angles). The application must connect via WIFI to a JAVA application you must build. As each barcode is scanned or picture is taken, it is stored on the phone and sent to the JAVA application via wifi.
Other features will include camera control options and adding 1-D barcode support, and entering information about a barcode.