Mini-Photoshop

Introduction

This piece of work was done as the final project of my undergraduate course Computer Vision. I implemented a mini-Photoshop with C++ and Qt. The features are listed bellow:

  • Zoom in/out, cut/copy/paste, resize, rotate.
  • Undo.
  • Addition/Subtraction/Multiply operations on image.
  • Observation/Copy the RGB value of any point.
  • Mosaic.
  • Color Channel split, color toning in HSV,pseudo-color.
  • Transform RGB image into a Grayscale image.
  • Transform Grayscale image into a binary one(Otus Algorithm).
  • Make histogram and histogram equalization.
  • Image filter with given kernel(Box/Median/Gaussian) or self-defined kernel.
  • Edge detection(sobel/laplace/canny)
  • Hough Transform
  • Mophology operations:dilation, erosion, open, close, thinning, thickening, distance, skeleton, skeleton reconstruction.
  • Watershed algorithm.
    // The features listed above were implemented manually by C++ without using the OpenCV interface.

Illustrations

The Edit menu shows some of the features
An edge detection result

User Guide

The imageProcessor.h and imageProcessor.cpp I put in the folder contain all of the core algorithm, which I think can showcase my C++ coding ability.

To get more infomation and the release package, please view the project website:
https://github.com/rebas777/CV-final-project

Please note that Qt and OpenCV support are required to run the .exe file. So it's not guarenteed that it can run on any PC.

你可能感兴趣的:(Mini-Photoshop)