{"id":15722832,"url":"https://github.com/bkbilly/ros-weedspray","last_synced_at":"2026-03-18T03:57:07.615Z","repository":{"id":115517017,"uuid":"223630624","full_name":"bkbilly/ROS-WeedSpray","owner":"bkbilly","description":"🤖 Robot Programming - CMP9767M Assessment","archived":false,"fork":false,"pushed_at":"2020-02-08T16:28:59.000Z","size":30591,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-02-13T10:52:22.507Z","etag":null,"topics":["agriculture","image-processing","ros-kinetic"],"latest_commit_sha":null,"homepage":"","language":"TeX","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/bkbilly.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":"2019-11-23T17:54:58.000Z","updated_at":"2023-09-05T13:37:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"eafd1bca-2769-4c59-bb61-029165ee3327","html_url":"https://github.com/bkbilly/ROS-WeedSpray","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/bkbilly/ROS-WeedSpray","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkbilly%2FROS-WeedSpray","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkbilly%2FROS-WeedSpray/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkbilly%2FROS-WeedSpray/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkbilly%2FROS-WeedSpray/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bkbilly","download_url":"https://codeload.github.com/bkbilly/ROS-WeedSpray/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bkbilly%2FROS-WeedSpray/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30646327,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-18T02:48:56.676Z","status":"ssl_error","status_checked_at":"2026-03-18T02:48:55.747Z","response_time":104,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["agriculture","image-processing","ros-kinetic"],"created_at":"2024-10-03T22:09:27.151Z","updated_at":"2026-03-18T03:57:07.601Z","avatar_url":"https://github.com/bkbilly.png","language":"TeX","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ROS Assignment\nThe objective of the project is to have a simulated robot called Throvald to run across the field of crops and find the bad weeds so that it can spray them. With image processing extracts the middle point of the recognized weed and all of the points are published as a pointCloud. Another node gets these points and desides if it needs to spray and publishes all the collected points so that it will be visualized on Rviz. The final result can be seen ![here](images/preview).\n\n## Image Processing\nIn order to collect the bad weeds from the images the background had to be removed and then find the weeds. The implementation works with color matching through HSV images, though I also tried with [convolutional neural network (CNN)](mask_rcnn/README.md).\n\n## Requerements\nThe project requires some dependencies that can be found on the LCAS Repository which can be installed like this:\n```bash\ncurl https://raw.githubusercontent.com/LCAS/rosdistro/master/lcas-rosdistro-setup.sh | bash -\nsudo apt install ros-kinetic-uol-cmp3103m ros-kinetic-uol-cmp9767m-base ros-kinetic-uol-cmp9767m-tutorial ros-kinetic-rqt-image-view\n```\n\n## How to run\nTo run the program there are some requirements. First of all the gazebo simulation must be running with the move_base. It can run everything with these commands:\n```bash\nmkdir -p catkin_ws/src\ncd catkin_ws\ngit clone https://github.com/bkbilly/weedspray.git src/weedspray\ncatkin_make\nsource devel/setup.bash\nrosdep install --from-paths . -i -y\nroslaunch weedspray rosweedspray.launch\n```\n\n\n## Articles that help\n * https://www.learnopencv.com/histogram-of-oriented-gradients/\n * https://towardsdatascience.com/image-classification-in-10-minutes-with-mnist-dataset-54c35b77a38d\n * https://www.analyticsvidhya.com/blog/2019/01/build-image-classification-model-10-minutes/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbkbilly%2Fros-weedspray","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbkbilly%2Fros-weedspray","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbkbilly%2Fros-weedspray/lists"}