{"id":31505666,"url":"https://github.com/umer-farooq-cs/canny-edge-detector","last_synced_at":"2026-04-18T00:07:47.896Z","repository":{"id":314456049,"uuid":"1055617219","full_name":"Umer-Farooq-CS/Canny-Edge-Detector","owner":"Umer-Farooq-CS","description":"High-performance Canny edge detector with CPU and CUDA implementations. Loads PGM images, performs Gaussian smoothing, gradients, non-max suppression, and hysteresis. Benchmarks both paths, outputs edge maps, and reports speedup. Simple Makefile, sample images included.","archived":false,"fork":false,"pushed_at":"2025-09-12T14:32:11.000Z","size":94,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-12T16:36:55.806Z","etag":null,"topics":["c","canny-edge-detection","computer-vision","cpp","cuda","gpu","high-performance-computing","image-processing","nvcc","pgm"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Umer-Farooq-CS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-12T14:31:08.000Z","updated_at":"2025-09-12T14:34:32.000Z","dependencies_parsed_at":"2025-09-12T16:37:01.832Z","dependency_job_id":"8227ef1c-9521-420c-a0c2-8bc11a812c57","html_url":"https://github.com/Umer-Farooq-CS/Canny-Edge-Detector","commit_stats":null,"previous_names":["umer-farooq-cs/canny-edge-detector"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Umer-Farooq-CS/Canny-Edge-Detector","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Umer-Farooq-CS%2FCanny-Edge-Detector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Umer-Farooq-CS%2FCanny-Edge-Detector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Umer-Farooq-CS%2FCanny-Edge-Detector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Umer-Farooq-CS%2FCanny-Edge-Detector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Umer-Farooq-CS","download_url":"https://codeload.github.com/Umer-Farooq-CS/Canny-Edge-Detector/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Umer-Farooq-CS%2FCanny-Edge-Detector/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278063119,"owners_count":25923594,"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","status":"online","status_checked_at":"2025-10-02T02:00:08.890Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["c","canny-edge-detection","computer-vision","cpp","cuda","gpu","high-performance-computing","image-processing","nvcc","pgm"],"created_at":"2025-10-02T20:10:00.470Z","updated_at":"2025-10-02T20:10:03.855Z","avatar_url":"https://github.com/Umer-Farooq-CS.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"### CudaCanny Edge Detector\n\nA high-performance implementation of the Canny edge detector with both CPU and CUDA GPU paths. It loads PGM images, runs Gaussian smoothing, gradient, non-maximum suppression, and hysteresis, then saves CPU and GPU edge maps while reporting timing and speedup.\n\n#### Features\n- CPU and CUDA implementations side-by-side\n- Benchmarking with timing and speedup\n- Simple Makefile build\n\n#### Requirements\n- CUDA Toolkit (nvcc)\n- GCC/Clang for C sources\n\n#### Build\n```bash\nmake\n```\nBinaries are placed in `bin/`.\n\n#### Run\n```bash\n./bin/canny canny/pics/pic_large.pgm 2.5 0.25 0.5\n```\nAdjust sigma, tlow, thigh as needed. Example images are in `canny/pics/`.\n\n#### Project Layout\n- `src/`: C/CUDA sources\n- `include/`: headers\n- `bin/`: compiled binary\n- `build/`: object files\n- `canny/pics/`: sample images (PGM)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumer-farooq-cs%2Fcanny-edge-detector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fumer-farooq-cs%2Fcanny-edge-detector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumer-farooq-cs%2Fcanny-edge-detector/lists"}