A mobile application for detecting cancer using Machine Learning, developed as a submission for Dicoding. This app leverages TensorFlow Lite for real-time image classification and integrates additional features to enhance user experience and functionality.
-
Image Selection and Preview
- Users can upload images from their gallery, which are previewed within the app.
-
Cancer Detection with TensorFlow Lite
- Utilizes a pre-trained TensorFlow Lite model to predict whether an image indicates cancer.
- Provides a confidence score for the prediction.
-
Prediction Results
- Displays:
- Diagnosis: Indicates whether the image suggests cancer or not.
- Confidence Score: A numeric value representing the model's prediction accuracy.
- Handles errors gracefully with appropriate messages.
- Displays:
-
Health News Integration
- Fetches and displays relevant health news articles, including those about cancer, using the NewsAPI.
-
Enhanced Usability
- Features for cropping and rotating images (powered by uCrop) to ensure better results during analysis.
- Saves prediction history locally, including images, results, and confidence scores, for user reference.
- Android Studio
- A valid API key for NewsAPI
-
Clone the repository:
git clone https://github.com/whdhdyt21/Cancer-Detection.git
-
Configure the
local.properties
file in your project root to include the API base URL and your API key:BASE_URL=https://newsapi.org/ NEWS_API_KEY=[YOUR-API-KEY]
-
Open the project in Android Studio and build the app.
-
Run the app on your emulator or physical device.
- Programming Language: Kotlin
- Machine Learning: TensorFlow Lite
- API Integration: NewsAPI
- Local Database: Room/Realm
- Libraries:
- uCrop: For image cropping and rotation
- Retrofit: For API calls
- Glide: For image loading and display
This project is licensed under the MIT License. See the LICENSE file for details.
Thank you for exploring the Cancer Detection App! For any issues or suggestions, feel free to open an issue or submit a pull request.