{"id":20946378,"url":"https://github.com/npazosmendez/gpu-filters","last_synced_at":"2025-05-14T01:32:03.029Z","repository":{"id":38301132,"uuid":"119204312","full_name":"npazosmendez/gpu-filters","owner":"npazosmendez","description":"Image-processing filters implemented on GPU with OpenCL","archived":false,"fork":false,"pushed_at":"2022-06-07T16:40:22.000Z","size":42483,"stargazers_count":11,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-04-15T22:53:25.369Z","etag":null,"topics":["c","image-processing","opencl"],"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/npazosmendez.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-01-27T21:32:48.000Z","updated_at":"2024-01-16T08:47:34.000Z","dependencies_parsed_at":"2022-09-08T13:32:05.794Z","dependency_job_id":null,"html_url":"https://github.com/npazosmendez/gpu-filters","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npazosmendez%2Fgpu-filters","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npazosmendez%2Fgpu-filters/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npazosmendez%2Fgpu-filters/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npazosmendez%2Fgpu-filters/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npazosmendez","download_url":"https://codeload.github.com/npazosmendez/gpu-filters/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225269958,"owners_count":17447621,"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":["c","image-processing","opencl"],"created_at":"2024-11-18T23:52:57.257Z","updated_at":"2024-11-18T23:52:57.747Z","avatar_url":"https://github.com/npazosmendez.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GPU Filters\n\nFour image processing filters implemented in pure C and in OpenCL to compare their performances.\n\n**Edge Detection** with Canny's algorithm\n\nRaw                        |  Processed\n:-------------------------:|:-------------------------:\n![](readme/canny_raw.png)  |  ![](readme/canny.png)\n\n**Line Detection** with Hough's transform\n\nRaw                        |  Processed\n:-------------------------:|:-------------------------:\n![](readme/hough_raw.png)  |  ![](readme/hough.png)\n\n**Dense Optical Flow** with Lucas-Kanade\n\nRaw                        |  Processed\n:-------------------------:|:-------------------------:\n![](readme/kanade_raw.gif)  |  ![](readme/kanade.gif)\n\n**Region Filling** via exemplar-based image inpainting\n\nRaw                        |  Processed\n:-------------------------:|:-------------------------:\n![](readme/inpainting_raw.png)  |  ![](readme/inpainting.png)\n\n# Dependencies\n* ### OpenCL 1.2 with C++ bindings\n\n\u003cimg src=\"readme/opencl.png\" alt=\"drawing\" width=\"180\" align=\"right\"/\u003e\n\nFilters are implemented using OpenCL 1.2. To download needed headers and libraries (linux) for compilation run:\n\n\n```shell\nsudo apt install ocl-icd-libopencl1\nsudo apt install opencl-headers\nsudo apt install clinfo\n```\n\nWe've also used the C++ bindings, which are included in the repo.\n\nA device that supports OpenCL is needed to run the program. Drivers installation varies. These are some devices in which the program ran and how to install their drivers:\n\n**NVIDIA GeForce 940m**\n\n```shell\nsudo add-apt-repository ppa:graphics-drivers/ppa\nsudo apt-get update\nsudo apt-get install nvidia-355 nvidia-prime\nsudo reboot\n```\n\n\n* ### OpenCV 2\n\n\u003cimg src=\"readme/opencv.png\" alt=\"drawing\" width=\"80\" align=\"right\"/\u003e\n\nFor camera input only. **Central algorithms are not implemented using this library.**\n\nTo get eveything needed to compile run:\n\n```shell\nsudo apt-get install libopencv-dev\n```\n\u003cimg src=\"readme/qt.png\" alt=\"drawing\" width=\"80\" align=\"right\"/\u003e\n\n* ### Qt 4.8\nFor an advanced GUI only, not actually needed to run the bascis. More information at `gui/readme.md`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnpazosmendez%2Fgpu-filters","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnpazosmendez%2Fgpu-filters","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnpazosmendez%2Fgpu-filters/lists"}