Skip to content

Implementation of the segmentation algorithm described in: Efficient Graph-Based Image Segmentation Pedro F. Felzenszwalb and Daniel P. Huttenlocher International Journal of Computer Vision, 59(2) September 2004.

Notifications You must be signed in to change notification settings

madan-ram/Image-segmentation-opencv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Implementation of the segmentation algorithm described in:

Efficient Graph-Based Image Segmentation Pedro F. Felzenszwalb and Daniel P. Huttenlocher International Journal of Computer Vision, 59(2) September 2004.

The program takes a color image and produces a segmentation with a random color assigned to each region and return bounded_box list "min_x, min_y, max_x, max_y".

  1. Type "make" to compile "segment".
    import cv2
	import segment
	img = cv2.imread('input/0.jpg')
	bd_l = segment.get_bounded_box(img, 0.5, 1000, 10)
	print bd_l
	>> [[130, 0, 176, 18], [166, 0, 178, 18], [89, 0, 137, 18] ....]

The parameters are: (see the paper for details)

sigma: Used to smooth the input image before segmenting it. k: Value for the threshold function. min: Minimum component size enforced by post-processing. input: Input image. output: Output image.

Typical parameters are sigma = 0.5, k = 500, min = 20. Larger values for k result in larger components in the result.

About

Implementation of the segmentation algorithm described in: Efficient Graph-Based Image Segmentation Pedro F. Felzenszwalb and Daniel P. Huttenlocher International Journal of Computer Vision, 59(2) September 2004.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published