Skip to content

zspiler/k-means-image-compression

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Image compression using K-means clustering

OpenCL image compression alghoritm for a parallel computing college course.

Compile

  1. module load CUDA
  2. gcc -o gpu gpu.c -fopenmp -O2 -lm -lOpenCL -Wl,-rpath,./ -L./ -l:libfreeimage.so.3

Run

./gpu input_image.png

Program arguments

input_image [output_image] [-K clusters] [-I iterations] [-d device_index] [-s]

  • K - number of clusters used, number of colors in the output image (64 by default)
  • I - number of iterations (50 by default)
  • d - selected device (GPU) (0 by default)
  • s - show available devices

The input image should be in PNG format.

Examples

Example image - 64 colors

K = 64



Example image - 32 colors

K = 32



Example image - 16 colors

K = 16

About

OpenCL program for compressing images using K-means

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages