Code Monkey home page Code Monkey logo

imageseg-kmeans's Introduction

Image Segmentation using k-means clustering

The program reads in an image, segments it using K-Means clustering and outputs the segmented image.

python imageSegmentation.py K inputImageFilename outputImageFilename iterations

example: python imageSegmentation.py 3 output/tshirt.ppm output/tshirt_segmented.ppm 10

It is worth playing with the number of iterations, low numbers will run quicker.

The result is an over-segmented image. With the correct parameters, it can be used to partition an image for further processing. Here is an example of that: Make3D

Output

Burma Burma

Duomo Duoma

tunnel tunnel

cv2 is used only to accept image file of types .ppm an .pgm which are not supported by Image.open(inputName), whereas Logic behind kmeans is written in python and no library has been used.

If you wish you can still use image = Image.open(inputName) instead of

image = cv2.imread(inputName)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
image = Image.fromarray(image)

if you are not using .ppm and .pgm and only using .jpg

imageseg-kmeans's People

Contributors

asselinpaul avatar rishabbahal9 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.