SkillAgentSearch skills...

Segmentator

Basic image segmentation algorithms: Roberts, Sobel, Thresholding, etc

Install / Use

/learn @masyagin1998/Segmentator
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

segmentator

This is a simple library for image segmentation written in Golang. I need it for my CG synopsis (it is in synopsis folder), but hope it'll be usefull for You too :)

structure of the library

  1. Loading and Saving Images:

    • Load Image: func LoadImage(path, name string) (img Image, err error)
    • Save Image: func SaveImage(path, name string, img Image) (err error)
  2. Grayscale algorithms:

    • Averaging ("Quick and Dirty"): func GSAveraging(img Image)
    • Correcting the human eye ("Luma"): func GSLuma(img Image)
    • Desaturation: func GSDesaturation(img Image)
    • Decomposition (Maximal and Minimal): func GSDecomposition(img Image, do int) (err error)
    • Single Color Channel (Red, Green or Blue): func GSDecomposition(img Image, do int) (err error)
  3. First generation algorithms:

    • Based on Edge-Detection:
      • Roberts operator: func FGEDRoberts(img Image, do int) (err error)
      • Previtt operator: func FGEDPrevitt(img Image, do int) (err error)
      • Sobel operator: func FGEDSobel(img Image, do int) (err error)
      • Scharr operator: func FGEDScharr(img Image, do int) (err error)
      • Custom operator: func FGEDCustomOperators(img Image, GxOp, GyOp [][]int, do int) (err error)
    • Based on Pixel Classification:
      • Simple Iterative: func FGPCIterative(img Image) (threshold int)
      • Otsu: func FGPCOtsuThresholding2(img Image) (threshold int)
      • Custom: FGPCThreshold(img Image, thresholds []int, colors []Pixel) (err error)
  4. Helpers:

    • abs: func abs(value int) int
    • min: func min(values ...int) int
    • max: func max(values ...int) int

important notes

  1. Disputes on which coordinate system to use when processing images continues to the day. I prefer Gonsales-Woods varinant:

Coordinate System

Related Skills

View on GitHub
GitHub Stars4
CategoryDevelopment
Updated3y ago
Forks2

Languages

Go

Security Score

70/100

Audited on Dec 26, 2022

No findings