Coder Social home page Coder Social logo

monly98 / images-processing-with-opencv Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 7.69 MB

A GitHub repository for image processing and segmentation algorithms, models, and datasets, enabling research, development, and practical applications in computer vision and medical imaging.

Home Page: https://github.com/monly98/Images-processing-with-OpenCV

Jupyter Notebook 100.00%
image-processing opencv python jupyter-notebook

images-processing-with-opencv's Introduction

Images-processing with OpenCV

This repository focuses on utilizing OpenCV, a popular open-source computer vision library, for various image processing tasks. OpenCV provides a wide range of functions and algorithms specifically designed for image processing, making it a powerful tool for developing image processing applications such as object detection, image smoothing image segmentation and more.

contents

1 Image processing for Edge detection 2 Image processing for Edge detection This technique segments the input image into different regions based on color, texture, or other visual characteristics.

Image processing for Edge detection

This technique detects and highlights objects of interest in the input image using diferent filters for example Laplacian, Sobel, Cany Filter and prewitt.

Before and after examples

Detection

Image processing with Smoothing filters

Image filters play a vital role in various image processing tasks, such as noise reduction, feature enhancement, and image restoration. The Smoothing_All_filters file provides efficient implementations of popular filters that can be easily integrated into your own projects.

Filters

Average Filter

The average filter is a simple and effective technique used in image processing to reduce noise and blur images. It works by replacing each pixel's value with the average of its neighboring pixels, typically within a square or rectangular window. The average filter is widely used because of its simplicity and ability to preserve the overall image structure while reducing high-frequency noise. It is especially useful for smoothing images and preparing them for further analysis or visualization.

sm1

Median Filter

The median filter is a nonlinear filter that replaces each pixel in an image with the median value of its neighboring pixels. It is effective in reducing impulse noise or salt-and-pepper noise, preserving edges, and preserving fine details. median

Minimum Filter

The minimum filter, also known as erosion, replaces each pixel in an image with the minimum value of its neighboring pixels. It can be used for noise reduction, edge detection, and morphological operations.

Maximum Filter

The maximum filter, also known as dilation, replaces each pixel in an image with the maximum value of its neighboring pixels. It can be used for noise reduction, edge detection, and morphological operations. minmax

Histogram Equalization

Histogram equalization is a technique used to enhance the contrast and improve the overall appearance of an image. It redistributes the pixel intensities in an image to achieve a more balanced histogram, resulting in improved visual quality. equ

Image processing with frequency domain filters

Image processing in the frequency domain involves transforming an image from the spatial domain to the frequency domain using techniques such as the Fast Fourier Transform (FFT). Frequency domain filters such as ideal filter, betterworth filter, and gaussian filters with high pass and low pass frequencies can then be applied to the transformed image to achieve desired effects such as noise removal, sharpening, or blurring.

The frequency_domain_filters file provides implementation of high pass and low pass filters, which are commonly used in frequency domain filtering. High pass filters allow for preserving and enhancing high-frequency components, while low pass filters enable smoothing and preserving low-frequency information in an image.

Ideal low pass filter

IFlp

Ideal high pass filter

ifhp

Betterworth low pass filter

Bwlp

Betterworth high pass filter

BWhp

Gussian low pass filter

GLp

Gussian high pass filter

ghp1 Ghpf2

Morphological image processing with opening-and-closing

Opening and closing operations are fundamental techniques in morphological image processing. They are used to improve image quality, remove noise, and modify the shape and connectivity of objects in an image.

Opening is a two-step operation that involves applying an erosion operation followed by a dilation operation. It is useful for removing small objects, thin lines, and noise from an image while preserving the larger structures.

Closing, on the other hand, is the reverse of opening. It consists of a dilation operation followed by an erosion operation. Closing is effective for filling small holes, joining broken structures, and smoothing the boundaries of objects.

The morphological_processing_with_opening_and_closing_task file provides implementation of opening and closing operations, allowing you to apply these morphological operations to your images.

Opening and closing

opening closing

Errosion and dilation

errosion dilation

Contour detection and extraction

contours-detection

contours-extraction

contours-extraction1 -a432e475fd5c) contours-extraction2

images-processing-with-opencv's People

Contributors

monly98 avatar

Stargazers

 avatar

Watchers

Kostas Georgiou avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.