{"id":18644829,"url":"https://github.com/zuruoke/circle_detection_ml","last_synced_at":"2025-11-05T02:30:33.793Z","repository":{"id":210083256,"uuid":"725612799","full_name":"zuruoke/circle_detection_ml","owner":"zuruoke","description":"A Machine Learning task to find the location of a circle in an image with arbitrary noise","archived":false,"fork":false,"pushed_at":"2024-12-19T03:00:54.000Z","size":792,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-12-27T11:31:50.098Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/zuruoke.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":"2023-11-30T14:10:11.000Z","updated_at":"2024-12-19T03:00:58.000Z","dependencies_parsed_at":"2023-11-30T18:30:58.685Z","dependency_job_id":"6187bfbe-7bdb-48ba-9625-4efea5d25f37","html_url":"https://github.com/zuruoke/circle_detection_ml","commit_stats":null,"previous_names":["zuruoke/circle_detection_ml"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zuruoke%2Fcircle_detection_ml","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zuruoke%2Fcircle_detection_ml/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zuruoke%2Fcircle_detection_ml/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zuruoke%2Fcircle_detection_ml/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zuruoke","download_url":"https://codeload.github.com/zuruoke/circle_detection_ml/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239449545,"owners_count":19640532,"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":[],"created_at":"2024-11-07T06:13:44.904Z","updated_at":"2025-11-05T02:30:33.743Z","avatar_url":"https://github.com/zuruoke.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Circle Detection ML\n\nCircle Detection ML is a machine learning task designed to locate circles in images with arbitrary noise.\n\n## Preview\n\nThis project features two custom convolutional neural network (CNN) architectures, including a variant of:\n\n- Unet\n- Resnet\n\nAdditionally, testing and training scripts are provided for training with various configurations such as model type, image size, batch size, epochs, etc. Configuration parameters can be adjusted in the `args.py` file. Efficient data loaders have been implemented to load and create the dataset.\n\nThe main entry point for the project is `main.py`.\n\n## Installation / Setup\n\n1. Clone the repository and navigate to the project directory:\n\n   ```bash\n   git clone -q https://github.com/zuruoke/circle_detection_ml.git\n   cd circle_detection_ml\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n## Training\n\nTo train the model, use the following command:\n\n```bash\npython main.py --mode train --train_batchsize 4  --epochs 100 --train_dataset_size 1000 --img_shape 64 --noise_level 0.5 --loss mse --optimizer adam --model unet --dropout 0.5 --model_weight ./data/model_weights.pth\n```\n\n## Testing\n\nYou can train your own model and load the weights or get the pretrained model weights from the following link: [Pretrained Model Weights](https://drive.google.com/file/d/1Cp41ehAGLP-ZGN2pumWB6XfOiFd3LeGK/view?usp=sharing)\n\nPut the downloaded file in the root directory's `data` folder, which is created at the start of the project.\n\nTo test the model, use the following command:\n\n```bash\npython main.py --mode test --test_batchsize 1 --test_dataset_size 100 --img_shape 64 --noise_level 0.5 --loss mse --optimizer adam --model unet --dropout 0.5 --model_weight ./data/model_weights.pth\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzuruoke%2Fcircle_detection_ml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzuruoke%2Fcircle_detection_ml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzuruoke%2Fcircle_detection_ml/lists"}