{"id":20017177,"url":"https://github.com/maulanakavaldo/fruits-classification","last_synced_at":"2025-03-02T03:15:33.462Z","repository":{"id":252010757,"uuid":"838864241","full_name":"maulanakavaldo/fruits-classification","owner":"maulanakavaldo","description":"Fruits Image Classification using Tensorflow","archived":false,"fork":false,"pushed_at":"2024-10-17T03:22:23.000Z","size":3281,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-12T15:45:54.867Z","etag":null,"topics":["dicoding","tensorflow"],"latest_commit_sha":null,"homepage":"https://maulanakavaldo.github.io/fruits-classification/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maulanakavaldo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-06T13:47:25.000Z","updated_at":"2024-10-17T03:22:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"8715af12-bf57-4184-8368-1c835c9a888d","html_url":"https://github.com/maulanakavaldo/fruits-classification","commit_stats":null,"previous_names":["maulanakavaldo/fruits-classification"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maulanakavaldo%2Ffruits-classification","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maulanakavaldo%2Ffruits-classification/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maulanakavaldo%2Ffruits-classification/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maulanakavaldo%2Ffruits-classification/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maulanakavaldo","download_url":"https://codeload.github.com/maulanakavaldo/fruits-classification/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241451677,"owners_count":19964901,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dicoding","tensorflow"],"created_at":"2024-11-13T08:14:51.219Z","updated_at":"2025-03-02T03:15:33.446Z","avatar_url":"https://github.com/maulanakavaldo.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"![created](https://img.shields.io/badge/created-28/07/2024-blue)\n[![Open Notebook](https://img.shields.io/badge/Open_Notebook!-blue?logo=jupyter)](https://maulanakavaldo.github.io/fruits-classification/notebook.html)\n\u003ca href=\"https://www.linkedin.com/in/maulana-kavaldo/\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/LinkedIn-blue?logo=linkedin\" alt=\"LinkedIn\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://www.dicoding.com/users/mkavaldo/academies\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Dicoding_Profile-blue?logo=browser\" alt=\"Dicoding Profile\"\u003e\n\u003c/a\u003e\n\n---\n\n# Fruits Image Classification\n\n![Fruits Image Classification](https://github.com/user-attachments/assets/02ceccd3-973d-4b0c-ab38-ff7d726288d5)\n\n## Latar Belakang:\nPengenalan gambar adalah salah satu topik penting dalam machine learning dan computer vision. Dengan kemajuan teknologi, klasifikasi gambar menjadi lebih mudah diakses dan dapat digunakan untuk berbagai aplikasi, mulai dari sistem keamanan hingga aplikasi kesehatan. Dalam proyek ini, fokus pada klasifikasi gambar buah untuk memahami bagaimana model deep learning dapat diimplementasikan untuk membedakan berbagai jenis buah.\n\n## Permasalahan Bisnis:\nDi sektor retail dan industri makanan, pengenalan buah dapat membantu dalam otomatisasi proses, seperti pengklasifikasian buah secara otomatis untuk penyimpanan, pengepakan, atau pemantauan kualitas. Dengan mengotomatisasi proses ini, bisnis dapat mengurangi kesalahan manusia, meningkatkan efisiensi operasional, dan mengurangi biaya tenaga kerja.\n\n## Tujuan Proyek:\n1. Mengembangkan model klasifikasi gambar yang mampu mengidentifikasi berbagai jenis buah dengan akurasi tinggi.\n2. Menyimpan model dalam berbagai format yang kompatibel dengan berbagai platform dan perangkat.\n3. Menerapkan deep learning untuk meningkatkan akurasi klasifikasi gambar.\n\n## Cakupan Proyek\n1. Mencari datatset\n2. Dataset Dibagi Menjadi 80% Train Set dan 20% Test Set\n3. Model Menggunakan Model Sequential, Conv2D, Pooling Layer\n4. Membuat Plot Terhadap Akurasi dan Loss Model\n5. Menyimpan Model ke Dalam Format SavedModel, TF-Lite dan TFJS\n6. Mengimplementasikan Callback\n7. Melakukan inference menggunakan salah satu model (TF-Lite, TFJS atau savedmodel dengan tf serving).\n\n## Dataset\nDataset diperoleh dari kaggle \u003ca href=\"https://www.kaggle.com/datasets/moltean/fruits\" target='_blank'\u003eFruits Dataset\u003c/a\u003e, yang berisi 2 folder:\n\n1. fruits-360_dataset_100x100\n2. fruits-360_dataset_original-size\n\nNamun pada proyek ini, hanya folder **fruits-360_dataset_original-size** yang digunakan. Karena untuk mendapatkan gambar dengan resolusi yang berbeda.\nPada dataset ini terdapat 24 kelas.\n\n## Setup environment:\n\n1. Direkomendasikan untuk dijalankan di Google Colab\n\n    - Upload file `notebook.ipynb` ke Google Colab \n    - Sesuaikan **BaseDir** dengan kode yang sudah ada atau sesuaikan dengan keinginanmu\n    - Lakukan **run all** pada project\n\n2. Jika dijalankan di local\n    - Pastikan terhubung ke internet untuk dapat melakukan install module (library) \n    - Buka cmd atau powershell as administrator\n\n    ```bash\n    pip install -r requirements.txt\n    ```\n    - Buka file `notebook.ipynb` ke Google Colab \n    - Sesuaikan **BaseDir** dengan kode yang sudah ada atau sesuaikan dengan keinginanmu\n    - Lakukan **run all** pada project\n\n ## Conclusion\n \n- Berdasarkan percobaan, dihasilkan untuk:\n    - Model              : Sequential\n    - Akurasi            : 100 %\n    - Validasi akurasi   : 100 %\n\n    - Model              : Sequential dengan pretrained MobileNetV2\n    - Akurasi            : 100 %\n    - Validasi akurasi   : 100 %\n\n   Sehingga model tersebut dapat digunakan untuk memprediksi gambar buah (_fruits_) dimasa mendatang.\n- Hasil model mampu memprediksi gambar buah (fruits) yang diinputkan melalui inference.\n\n## Saran\n- Melakukan eksperimen lebih lanjut dengan menggunakan pretrained model yang tidak digunakan pada project ini. (misal VGG, ResNet dan lainnya)\n- Menerapkan model ke dalam sebuah aplikasi\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaulanakavaldo%2Ffruits-classification","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaulanakavaldo%2Ffruits-classification","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaulanakavaldo%2Ffruits-classification/lists"}