Skip to content

jozef17/Image-Processing

Repository files navigation

Image Processing

Static library containing shared functionality

BitmapImage

  • Loads image data from bitmap (.bmp) file

CommandLineParser

  • Parses command line arguments
  • Creates key-value pairs of command line option and its argument list

Exception (and RuntimeException)

  • Exception for differentiating between project exceptions and standard exceptions

Demo

Image

  • Contains ability to get and set particular pixel
  • Contains image starting position information:
    • first Pixel being top left or
    • first Pixel being bottom left

Demo

Pixel

  • Represents pixel
  • Enables conversion to:
    • RGB
    • RGBA
    • YCbCr

Demo

Demo

RawImage

  • Loads image data from RAW image file

Window

  • Displaying images based on their starting position:
    • First Pixel being top left
    • First Pixel being bottom left
  • Keyboard and joystick / gamepad inouts are supported
  • Arrow keys, WASD and joystick for moving image
  • Zoom in and out:
    • + and RT (Right Trigger) to zoom in;
      • and LT (Left Trigger) to zoom out;
  • Simplified loosy jpeg compression algorithm (DCT - Discrete Cosine Transform method)
  • Parallelised using C++'s std::thread

3% Quality

Demo

10% Quality

Demo

95% Quality

Demo

  • Application for applying convolution filter on input image
  • Parallelised using:
  • Displays result in a winfow
  • Uses strategy pattern to handle commandline arguments

Sharpen

Demo

Sobel

Demo

  • Application for displaying raw, bmp and png images
  • Uses strategy pattern to handle commandline arguments

Demo