The project is an Expert Neural Network that can be trained to identify the image of a single numerical digit: 0 or 1 or 2 or 3… 9. The NN shall be first trained to identify a single digit. The training files are an xml file named “[url removed, login to view]?. The digit to be trained is in cell “D2?? The training images are in a file named “timage?? The xml file lists the images and the desired output of the NN. The “timage?? file contains the images listed in the xml file. After the NN is trained the images from a file “images?? shall be used as inputs to the NN. The output of the NN for each image is a 1 or a 0. The output of the NN is a “1?? if the NN is trained to identify the digit image that is applied to the NN. For all other digit images the output of the NN shall be “0??. The output of the NN shall be saved in an xml file image.xml. The Perceptron output shall also be saved in the xml file. Record the threshold used to determine the final NN output. I have done some of the preprocessing such as; orienting the digits and extracted the images of the digits into a standard image size (140 X 220) pixels. The images in file “image?? are your raw input images. You can preprocess the image any way you want before you apply to the NN. You can change color, resize the image. You can likely eliminate some of the corner pixels. How you apply the image data to the NN is a very important part of this project. The NN program shall identify 100 images per minute. The error rate shall be 3% or less. Let me know if you need more images to train the NN.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
4) The Program shall provide a simple Windows GUI for training the NN using the timage file and [url removed, login to view] file.
5) The Programshall provide a simple Windows GUI for processing the unkown images in file "images" and xml file "[url removed, login to view]
6) Program shall be well documented and provide the NN architecure used, layer details, and the training algorithum.
The NN inputs are very important to this project. preprocessing the raw image is necessary to limit the NN inputs. Consider simpler features first. Use more complex features only if necessary.
Here are some suggestions:
-mean pixel value -"ink" pixel centroid (x, y) = mean (x, y) value of "ink" pixels
-std. deviation of (x, y) value of "ink" pixels
-decimate the glyph image (greatly reduce its resolution) and use those pixel values (which would not be binary) as recognizer inputs
-projection profiles (vertical and horizontal sums or means): this would reduce an 8x6 raster of 48 (= 8 * 6) variables to 14 (= 8 + 6).
One other possibility is to select individual pixels of the original image as model inputs. Ignore pixels which do not vary (most likely near the corners or edges of the raster) and select pixels which vary the most, from class to class.
PC running Windows XP or Vista.