Features
- The program will be able to upload/take photos for analysis.
- Create ML Model using CreateML
- IOS APP Integegration with ML Model
Requirements
- Upload/Take Photo for Analysis
- Get permission from apple device for camera access/library access.
- When the user presses the screen with one touch, use the camera for a photo
- When the user presses screen with two touches, access the photo library for upload
- Create ML Model using CreateML
- Download Data Set from Kaggle of gigabytes of photos for food
- Use CreateML
- Upload all photos and set specific augmentations (crop, rotation, blur, exposure, noise, flip)
- Train Model
- Analyze to check accuracy with specific test cases and retrain if needed
- Extract the ML Model
- Implement ML Model into our IOS Swift Application
- Implement ML Model
- Move ML Model Into Model’s Folder with name “imagetest.mlmodel”
- Implement ML MOdel into ImagePredidictor.swift
Software Documentation
App:
- Assets.xcassets/AppIcon.appiconset - visuals/dimensions for the app logo
- /Base.lproj - visual representation of the user interface of an iOS application
- AppDelegate.swift - Manages shared application data
- Info.plist - supply crucial information in dictionary form (key, value)
Configuration:
- SampleCode.xcconfig - allows for different build settings
Extensions:
- CGImagePropertyOrientation+UIImageOrientation.swift - Switch statement for managing image orientation
- VNClassificationObservation+confidenceString.swift - Function using a switch statement to output percentage confidence of ML
- imagetest.mlmodel - ML model
Image Predictor:
- ImagePredictor.swift - Class for interacting with the MLmodel to create a prediction
- Struct for storing prediction outcome
- Function for creating a request to coreML for a classification
- Function for making a prediction using ML
- Vision request handler function
Main View:
- MainViewController+CameraPicker.swift - utility to take a photo with camera
- MainViewController+PhotoPicker.swift - utility to use library
- MainViewController.swift - utility for single and double tap
- Base.lproj - visual representation of the user interface of an IOS
Models:
- LICENSE.txt - Legal documentation
- NOTICE.txt - Documentation for Authors, link, and license
TAMU FOOD CLASSIFIER.xcodeproj: .xcode file (on runtime)