Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ashwani-rathee/imagesgpu.jl
Image Processing on GPU in Julia
https://github.com/ashwani-rathee/imagesgpu.jl
cuda gpu image image-processing julia
Last synced: about 1 month ago
JSON representation
Image Processing on GPU in Julia
- Host: GitHub
- URL: https://github.com/ashwani-rathee/imagesgpu.jl
- Owner: ashwani-rathee
- Created: 2021-07-26T05:06:38.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-12-04T19:26:20.000Z (almost 2 years ago)
- Last Synced: 2024-10-12T23:28:58.717Z (about 1 month ago)
- Topics: cuda, gpu, image, image-processing, julia
- Language: Julia
- Homepage:
- Size: 10.7 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CuImages
This is basically a playground for developing the GPU algorithms and support differentiable
programming for image processing in Julia. The goal is to provide a set of GPU algorithms
for image processing in Julia. The algorithms are implemented using CUDA.jl,
CUDAKernels.jl and KernelAbstractions.jlWe want to currently focus on following topics:
- Augmentation
- Enchancement(adjust gamma, histogramequalisation, etc etc)
- Image Filtering### Installation:
```julia
julia> add https://github.com/ashwani-rathee/CuImages.jl.gitjulia> using CuImages
```### Usage:
Focus of this package currently is on following operations:
- Convert Image to CuArray
- Apply Algorithm on it
- Convert CuArray to ImagePoint of this current package is to learn:
- how to use CUDA.jl
- how to use CUDAKernels.jl
- how to use KernelAbstractions.jl
- Designing GPU algorithms, GPU kernels, CPU fallbacks and Parallel GPU computing
- Benchmark and learn what's fast
- Learn about the design choices that need to be made for GPU support and differentiable computer vision supportNow, how to convert AbstractArray to CuArray and vice versa:
```julia
julia> using CuImages, TestImagesjulia> img = testimage("cameraman");
julia> img_gpu = Cu(img);
julia> img_cpu = Ar(img_gpu);
```Now, how to apply algorithm on it:
```julia
julia> img_gpu = Cu(img);julia> img_res = scale(img_gpu, 0.5, 0.2);
julia> img_res_cpu = Ar(img_res);
```Using CuImages.jl, you can apply following algorithms on image.
For Augmentation, below mentioned algorithms are available:
- Scale Operation
- Rotate Operation
- Translate OperationFor Filtering, below mentioned algorithms are available:
- Gaussian Filter
- Sobel Filter
- Prewitt Filter
- Ando3 Filter
- Ando5 Filter
- Scharr Filter
- Bickley Filter### Contributions and Issues:
If you have questions about GIFImages.jl, feel free to get in touch via Slack or open an issue hearts