Skip to content

BenyaminZojaji/image_processing

Repository files navigation

image_processing

Assignment 21

Checkered Board

  • Create a chess table using numpy and opencv.
  • view:

    result_1

Color Correction

  • Reverse black and white colors with opencv.
  • views:

    result_2_1 result_2_2

Rotate Image

  • Rotate an image with for loop in opencv(without cv2.rotate)
  • view:

    result_3

Color Separation

  • Separate object of black-whte image using opencv and threshold method.
  • view:

    result_4

Corner Line

  • Create a black line in top left corner.(without opencv built-in methods)
  • view:

    result_5

Gradient

  • Create an image with whito-black gradient using open-cv and numpy.
  • view:

    result_6

Letter B

  • Design letter B using numpy and open-cv.
  • view:

    result_7


Assignment 22

Find secret by subtract

  • find secret with subtracking 2 images.
  • view:

    result_1

Black hole noise reduction

  • noise reduction and stick images to create a complete black hole photo.
  • view:

    result_2

Find difference

  • flip an image find difference between another image.
  • view:

    result_3

Hide cars highway

  • add images to make highway looks empty!
  • view:

    result_4

Merge pics

  • Merging images in 4 stages.
  • view:

    result_5

Image to sketch

  • sketch Mona-Lisa.
  • view:

    result_6

Add noise

  • Add some image noises to Chess image.
  • view:

    result_7


Assignment 23

Face recognition

  • Real-time camera that can put stickers on face.
  • written in Python using opencv and numpy (and win10toast library for notifications).
  • features:
    • put sticker on face.
    • put stickers on lips and eyes.
    • censored face.
    • flip horizontal effect.
  • face recognition camera using haarcascade-frontal-face algorithm.
  • smile recognition camera using haarcascade-smile algorithm.
  • recognition camera using haarcascade-eye algorithm.
  • emoji:

    emoji

  • lips and eyes:

    lips and eyes

  • censored face:

    checkered

  • flip horizontal effect:

    flip_h


Assignment 24

Lips and Eyes filter

  • make target's lips and eyes bigger than real.

  • written in python using opencv, numpy, tensorflow.

    output
    zoom_effect.mp4

Lips and Eyes filter + scaling Mouth

  • Now can scale with your mouth aspect ratio.

  • save video frames as *mp4.

    output
    eyes_filter_and_scaling_mouth.MP4

Assignment 25

Blur Background

  • simply blur background of a flower manually using convolution technique.
  • result_1

Convolution

  • edge finding by convolution technique.
  • result_2

Edge Convolution

  • horizontal and vertical edge detector by convolution technique.
  • result_3_0
  • result_3_1

Convolution Filters

  • try some Convolution with different kernel size.
  • result_4_3x3
  • result_4_5x5
  • result_4_7x7
  • result_4_15x15

3 Shades Of Gray

  • Diagnosis black-white-gray color on gray frame.
    IMG_6408.MP4

Assignment 26

A-23 + Face Blur

  • Face recognition from assignment 23 + face blur option.

    output (click to show)
    IMG_6422.MP4

A-25 + High Contrast

  • Make target high contrast for better color detection(black - white - gray).

    output (click to show)
    IMG_6417.MP4

Increase Contrast Methods

  • 3 ways for contrast adjustment.

result_3_c0 result_3_c100

result_3-0_c0 result_3-0_c100

Sudoku Filled Square Detection

  • Find filled squares in sudoku.
    • 1- Find sudoku in image.
    • 2- Adjust contrast.
    • 3- Walk through squares and find digits!
    • 4- Save each square as an image.

result_4

Mnist Numbers

  • Split 5000 numbers one by one and save them in separate folders.

Snowfall Effect

  • Create a snow effect by opencv and make a gif out of it with imageio library.

    output (click to show)
    snowgif.MP4

Make S&P Noise and Noise Reduction + Face Align with Eyes

  • Make Salt and Peper Noise and reduce noises by getting median with specific kernel size.

inp1 inp2 inp3

  • Face align with eyes by taking the angle of rotation of the face with MTCNN.

inp4 inp5


Assignment 27

Find Contours Function

  • Implementating cv2.findContours(image, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE) function from scratch.
  • I have implemented it in two mode.
    • Original image:

      originalimage

    • Thresholded image:

      threshimage

    • RETR_EXTERNAL:

      externalmode

    • RETR_LIST:

      listmode

Dice Recognition

  • 6-sided Dice Recognition using opencv methodes(canny, threshold, close morphology, HoughCircles and etc).

originaldice0 closedice0 detecteddice0 completedetecteddice0



originaldice1 graydice1 cannydice1 detecteddice1 completedetecteddice1



originaldice2 graydice2 cannydice2 detecteddice2 completedetecteddice2



originaldice3 graydice3 closedice3 detecteddice3 completedetecteddice3


Assignment 28

Sudoku Detector

  • Detect sudoku and transform to flat image using imutils.perspective
usage: sudoku_detector.py [-h] [--input INPUT] [--output OUTPUT] [--kernel_size KERNEL_SIZE] [--color COLOR]

sudoku1 sudoku1-o

Live Sudoku Detector

  • Real-time Sudoku detector
usage: live_sudoku_detector.py [-h] [--input INPUT] [--output OUTPUT] [--kernel_size KERNEL_SIZE] [--color COLOR]

live-sudoku live-sudoku-o

Time Warp Scan

  • Time warp scan filter in Tik Tok written in python using opencv and numpy library.

    output (click to show)
    IMG_6811.MP4

Assignment 29

Color Picker

  • Simple RGB color picker written in python using pyside6.

1 2 3 4

Microsoft Logo

  • Microsoft logo design using opencv and Numpy library.

logo

Webcam Color Detection

  • Real-time webcam color detection using opencv, Numpy.
  • colors: white, black, gray, red, green, blue, cyan, magenta, yellow

white black blue

rubik

  • fix rubik's colors.

rubik fixedrubik

Green Carrot!

  • Make a Green Carrot!.

carrot greencarrot


Assignment 30

Blue Screen Technique

  • Blue screen technique is one of the most common types of scene setting used in filmmaking. It involves placing actors and foreground objects in front of a large blue screen while filming.
  • This code is written in python using opencv, numpy, matplotlib.

original res

Skin Detection

  • Skin detection is the process of finding skin-colored pixels and regions in an image or a video. This process is typically used as a preprocessing step to find regions that potentially have human faces and limbs in images.
  • This program is written in python-opencv using HSV & YCbCr color space.

test


Mini Project 3

Employee Management

  • GUI Employee Manager written in python using sqlite, opencv, PySide6, Numpy, hashlib.
  • Admin Login:
    • Secure Admin Login profile with sha-256 encoding.

login

  • Employee List:
    • Add, Edit or Delete Employees using GUI.

list

  • Add Employee:
    • Simply add employees with firstName LastName nationalCode and their birthday.

add add2

  • Camera:
    • Instantly take a picture for employee's avatar.

camera

  • Filter:
    • 9 filter for employee's avatar.

filter filter2

  • Edit Employee:
    • Edit employee profile with GUI.

edit