import { Image } from "../../Image"
/**
* Image
* @class gve.Algorithms.Image.Segmentation
* @since gve.Algorithms.Image
* @alias gve.Algorithms.Image.Segmentation
*/
export class Segmentation{
/**
* 为聚类选择种子像素
* @param {Number} [size] 种子大小
* @param {String} [gridType] 网格类型(square|hex)
* @returns Image
* @tutorial gve.Algorithms.Image.Segmentation
* @alias gve.Algorithms.Image.Segmentation.seedGrid
*/
static seedGrid(size?:number, gridType?:string){
return new Image();
}
/**
* 基于 SNIC(简单非迭代聚类)的超像素聚类
* @param {Image} image 聚类的影像
* @param {Number} [size] 种子的大小
* @param {Number} [compactness] 紧凑型因子
* @param {Number} [connectivity] 连接性
* @param {Number} [neighborhoodSize] 邻域大小
* @param {Image} [seeds] 用于连接性的影像
* @returns Image
* @tutorial gve.Algorithms.Image.Segmentation
* @alias gve.Algorithms.Image.Segmentation.SNIC
*/
static SNIC(image:Image, size?:number, compactness?:number, connectivity?:number, neighborhoodSize?:number, seeds?:Image){
return new Image();
}
/**
* 对输入图像进行 K-Means 聚类
* @param {Image} image 待聚类的影像
* @param {Number} [numClusters] 聚类的数目
* @param {Number} [numIterations] 迭代次数
* @param {Number} [neighborhoodSize] 邻域大小
* @param {Number} [gridSize] 网格单元大小
* @param {Boolean} [forceConvergence] 未达到收敛状态是否强制抛错
* @param {Boolean} [uniqueLabels] 是否分配唯一标签
* @returns Image
* @tutorial gve.Algorithms.Image.Segmentation
* @alias gve.Algorithms.Image.Segmentation.KMeans
*/
static KMeans(image:Image, numClusters?:number, numIterations?:number, neighborhoodSize?:number, gridSize?:number, forceConvergence?:boolean, uniqueLabels?:boolean){
return new Image();
}
}