Skip to content

yolk-pie-L/PhotoEditor

Repository files navigation

README

A photo editor. It can edit your images in a variety of ways, such as rotating, adjusting brightness, exposure, and changing warmth and tint and so on. In the image editing algorithms section of this project, I didn't use any established image processing libraries like OpenCV or Pillow. Instead, I created my own version of the implementations using NumPy. Pillow is used for read image and write image.

image-20250225122941203

Functionalities

  • adjust saturation

  • adjust contrast

  • adjust exposure

  • adjust brightness

  • adjust warmth

  • adjust tint

  • adjust vignette

  • black and white image mode

  • vignette

  • laplacian sharpening

    • Identifying edges in an image through a second-order derivative, then reinforcing these edges to make the image appear sharper. Check 8 surrounding neighbors.
    • lap_sharpen
  • unsharp masking sharpening

    • Frist, create a blurred version of the image. Second, subtract the blurred image from the original. Thrid, add the difference back to the original image
    • usm_sharpen
  • blurring

    • use gaussian filter
    • use multiprocessing to accelerate computation
    • blurred
  • rotate image (-45°<angle<45°)

    • Calculate the maximum inscribed matrix after rotation, maintaining the same aspect ratio. Use a rotation matrix to rotate the pixel matrix, then crop the result to obtain the result image.
    • rotate30
  • Rotate the image 90 degrees counterclockwise.

  • flip horizontally

  • flip vertically

  • show exposure histogram

    • ExposureHistogram

About

A simple photo editor. It can adjust contrast, saturation, exposure and so on.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors