Skip to content

guilhermedom/kmeans-color-normalization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

K-Means Color Normalization

Using K-Means to normalize image colors and help in object segmentation tasks.


Problem Overview

Sometimes shadow and illumination can make it hard for machine learning algorithms to correctly find and segment objects in images. Shadow and illumination provide additional information in pixel colors that may confuse algorithms and make them recognize very bright pixels of an object as being part of another object.

Color normalization is one of the image processing techniques that can help image segmentation algorithms. With color normalization, it is possible to remove intensity-related information from pixels, eliminating shadows and illumination shifts from the image.

Analysis Introduction

K-Means, as well as other clustering algorithms, can normalize the colors of an image by fitting centers and clusterizing pixels. If we normalize each cluster of pixels according to the cluster center/centroid colors, we can eliminate intensity-related information from the image, simplifying its colors.

Below, we can see a flower image in its original form (top left) being normalized using less and less K-Means clusters (8, 4 and 2 clusters). The bottom right image is the one with the strongest normalization, where K-Means fits to the image pixels using only 2 clusters.

flower_normalized

About

Using K-Means to normalize image colors and help in object segmentation tasks.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published